Merge branch 'hotfix/JAL-1521' into Release_2_8_2_Branch
authorJim Procter <jprocter@issues.jalview.org>
Thu, 23 Oct 2014 22:08:56 +0000 (23:08 +0100)
committerJim Procter <jprocter@issues.jalview.org>
Thu, 23 Oct 2014 22:08:56 +0000 (23:08 +0100)
Conflicts:
.classpath
RELEASE
src/castor.properties

969 files changed:
.classpath
.externalToolBuilders/Jalview Release 2.7 build.xml [Builder].launch [new file with mode: 0644]
.gitignore
.project
AUTHORS
RELEASE
THIRDPARTYLIBS
build.xml
doc/AddingGroovySupport.html
doc/AnnotationPostAnalysis.txt [new file with mode: 0644]
doc/JalviewRNASupport.html
doc/building.html
doc/developing.html
doc/index.html
doc/newdmobj.html
examples-jbake/assets/css/ie6.css
examples-jbake/assets/css/ie7.css
examples-jbake/assets/css/reset.css
examples-jbake/assets/css/style.css
examples-jbake/assets/exampleFeatures.txt
examples-jbake/assets/javascript/jalview.js
examples-jbake/templates/header.ftl
examples/2GIS.pdb [new file with mode: 0644]
examples/appletParameters.html
examples/applets.html
examples/css/ie6.css
examples/css/ie7.css
examples/css/reset.css
examples/css/style.css
examples/dna_interleaved.phy [new file with mode: 0644]
examples/dna_sequential.phy [new file with mode: 0644]
examples/embedded.html
examples/embeddedWJmol.html
examples/exampleFeatures.txt
examples/formComplete.html
examples/groovy/annotationForSelectedSequence.groovy [new file with mode: 0644]
examples/groovy/sitesForSelectedColumns.groovy [new file with mode: 0644]
examples/jalviewLiteJs.html
examples/javascript/jalview.js
examples/javascriptLaunch.html
examples/linkedapplets_ng.html
examples/u_applets.html
examples/u_embedded.html
examples/u_embeddedWJmol.html
examples/u_formComplete.html
examples/u_javascriptLaunch.html
examples/u_linkedapplets_ng.html
help/help.hs
help/help.jhm
help/helpTOC.xml
help/html/calculations/consensus.html
help/html/calculations/conservation.html
help/html/calculations/pairwise.html
help/html/calculations/pca.html
help/html/calculations/quality.html
help/html/calculations/recoverInputdata.html
help/html/calculations/redundancy.html
help/html/calculations/scorematrices.html
help/html/calculations/sorting.html
help/html/calculations/structureconsensus.html
help/html/calculations/tree.html
help/html/calculations/treeviewer.html
help/html/colourSchemes/abovePID.html
help/html/colourSchemes/annotationColouring.html
help/html/colourSchemes/blosum.html
help/html/colourSchemes/buried.html
help/html/colourSchemes/clustal.html
help/html/colourSchemes/conservation.html
help/html/colourSchemes/helix.html
help/html/colourSchemes/hydrophobic.html
help/html/colourSchemes/index.html
help/html/colourSchemes/nucleotide.html
help/html/colourSchemes/pid.html
help/html/colourSchemes/purinepyrimidine.html
help/html/colourSchemes/rnahelicesColouring.html
help/html/colourSchemes/strand.html
help/html/colourSchemes/taylor.html
help/html/colourSchemes/textcolour.html
help/html/colourSchemes/turn.html
help/html/colourSchemes/user.html
help/html/colourSchemes/userDefined_java6.gif [new file with mode: 0644]
help/html/colourSchemes/userDefined_java7.gif [new file with mode: 0644]
help/html/colourSchemes/zappo.html
help/html/editing/index.html
help/html/features/annotation.html
help/html/features/annotationsFormat.html
help/html/features/clarguments.html
help/html/features/codingfeatures.html
help/html/features/commandline.html
help/html/features/creatinFeatures.html
help/html/features/cursorMode.html
help/html/features/dasfeatures.html
help/html/features/dassettings.html
help/html/features/editingFeatures.html
help/html/features/featuresFormat.html
help/html/features/featureschemes.html
help/html/features/featuresettings.html
help/html/features/groovy.html
help/html/features/hiddenRegions.html
help/html/features/jalarchive.html
help/html/features/jmol.html
help/html/features/multipleViews.html
help/html/features/newkeystrokes.html
help/html/features/overview.html
help/html/features/pdbviewer.html
help/html/features/preferences.html
help/html/features/search.html
help/html/features/seqfeatures.html
help/html/features/seqfetch.html
help/html/features/seqmappings.html
help/html/features/varna.html
help/html/features/viewingpdbs.html
help/html/features/wrap.html
help/html/index.html
help/html/io/export.html
help/html/io/exportseqreport.html
help/html/io/fileformats.html
help/html/io/index.html
help/html/io/modellerpir.html
help/html/io/tcoffeescores.html
help/html/jalviewjnlp.html
help/html/keys.html
help/html/memory.html
help/html/menus/alignmentMenu.html
help/html/menus/alwannotations.html
help/html/menus/alwcalculate.html
help/html/menus/alwcolour.html
help/html/menus/alwedit.html
help/html/menus/alwfile.html
help/html/menus/alwformat.html
help/html/menus/alwselect.html
help/html/menus/alwview.html
help/html/menus/desktopMenu.html
help/html/menus/index.html
help/html/menus/popupMenu.html
help/html/menus/wsmenu.html
help/html/misc/aaproperties.html
help/html/misc/aminoAcids.html
help/html/misc/geneticCode.html
help/html/na/index.html
help/html/privacy.html
help/html/releases.html
help/html/vamsas/index.html
help/html/webServices/AACon.html
help/html/webServices/JABAWS.html
help/html/webServices/RNAalifold.html
help/html/webServices/dbreffetcher.html
help/html/webServices/index.html
help/html/webServices/jnet.html
help/html/webServices/msaclient.html
help/html/webServices/newsreader.html
help/html/webServices/proteinDisorder.html
help/html/webServices/shmr.html
help/html/webServices/urllinks.html
help/html/webServices/webServicesParams.html
help/html/webServices/webServicesPrefs.html
help/html/whatsNew.html
jalview-jalopy.xml
lib/VARNAv3-9-dev.jar [deleted file]
lib/VARNAv3-9.jar [new file with mode: 0644]
lib/json_simple-1.1.jar [new file with mode: 0644]
lib/log4j-1.2.8.jar [deleted file]
lib/log4j-to-slf4j-2.0-rc2.jar [new file with mode: 0644]
lib/slf4j-api-1.7.7.jar [new file with mode: 0644]
lib/slf4j-log4j12-1.7.7.jar [new file with mode: 0644]
nbbuild.xml
nbproject/project.properties
nbproject/project.xml
resources/authors.props
resources/embl_mapping.xml
resources/lang/Messages.properties
resources/lang/Messages_es.properties
resources/uniprot_mapping.xml
schemas/JalviewWsParamSet.xsd
schemas/castor-mapping.xsd
schemas/jalview.nodesc.properties
schemas/jalview.properties
schemas/jalview.xsd
schemas/jalviewJvV1.xsd
schemas/vamsas.xsd
schemas/vamsasJvV1.xsd
src/MCview/AppletPDBCanvas.java
src/MCview/AppletPDBViewer.java
src/MCview/Atom.java
src/MCview/Bond.java
src/MCview/MCMatrix.java
src/MCview/PDBCanvas.java
src/MCview/PDBChain.java
src/MCview/PDBViewer.java
src/MCview/PDBfile.java
src/MCview/Residue.java
src/MCview/Zsort.java
src/castor.properties
src/com/stevesoft/pat/Pattern.java
src/com/stevesoft/pat/Regex.java
src/com/stevesoft/pat/Replacer.java
src/com/stevesoft/pat/Transformer.java
src/com/stevesoft/pat/wrap/RandomAccessFileWrap.java
src/ext/edu/ucsf/rbvi/strucviz2/ChimUtils.java [new file with mode: 0644]
src/ext/edu/ucsf/rbvi/strucviz2/ChimeraChain.java [new file with mode: 0644]
src/ext/edu/ucsf/rbvi/strucviz2/ChimeraManager.java [new file with mode: 0644]
src/ext/edu/ucsf/rbvi/strucviz2/ChimeraModel.java [new file with mode: 0644]
src/ext/edu/ucsf/rbvi/strucviz2/ChimeraResidue.java [new file with mode: 0644]
src/ext/edu/ucsf/rbvi/strucviz2/ChimeraStructuralObject.java [new file with mode: 0644]
src/ext/edu/ucsf/rbvi/strucviz2/ChimeraTreeModel.java [new file with mode: 0644]
src/ext/edu/ucsf/rbvi/strucviz2/StructureManager.java [new file with mode: 0644]
src/ext/edu/ucsf/rbvi/strucviz2/StructureSettings.java [new file with mode: 0644]
src/ext/edu/ucsf/rbvi/strucviz2/port/ListenerThreads.java [new file with mode: 0644]
src/ext/vamsas/IRegistry.java
src/ext/vamsas/IRegistryService.java
src/ext/vamsas/IRegistryServiceLocator.java
src/ext/vamsas/Jpred.java
src/ext/vamsas/JpredService.java
src/ext/vamsas/JpredServiceLocator.java
src/ext/vamsas/JpredSoapBindingStub.java
src/ext/vamsas/MuscleWS.java
src/ext/vamsas/MuscleWSService.java
src/ext/vamsas/MuscleWSServiceLocator.java
src/ext/vamsas/MuscleWSSoapBindingStub.java
src/ext/vamsas/RegistryServiceSoapBindingStub.java
src/ext/vamsas/SeqSearchI.java
src/ext/vamsas/SeqSearchServiceLocator.java
src/ext/vamsas/SeqSearchServiceService.java
src/ext/vamsas/SeqSearchServiceSoapBindingStub.java
src/ext/vamsas/ServiceHandle.java
src/ext/vamsas/ServiceHandles.java
src/jalview/analysis/AAFrequency.java
src/jalview/analysis/AlignSeq.java
src/jalview/analysis/AlignmentSorter.java
src/jalview/analysis/AlignmentUtils.java
src/jalview/analysis/Conservation.java
src/jalview/analysis/CrossRef.java
src/jalview/analysis/Dna.java
src/jalview/analysis/Finder.java
src/jalview/analysis/Grouping.java
src/jalview/analysis/NJTree.java
src/jalview/analysis/PCA.java
src/jalview/analysis/ParseProperties.java
src/jalview/analysis/Rna.java
src/jalview/analysis/SecStrConsensus.java [new file with mode: 0644]
src/jalview/analysis/SeqsetUtils.java
src/jalview/analysis/SequenceIdMatcher.java
src/jalview/analysis/StructureFrequency.java
src/jalview/analysis/WUSSParseException.java
src/jalview/analysis/scoremodels/PIDScoreModel.java
src/jalview/analysis/scoremodels/PairwiseSeqScoreModel.java
src/jalview/analysis/scoremodels/SWScoreModel.java
src/jalview/api/AlignCalcManagerI.java
src/jalview/api/AlignCalcWorkerI.java
src/jalview/api/AlignViewControllerGuiI.java
src/jalview/api/AlignViewControllerI.java
src/jalview/api/AlignViewportI.java
src/jalview/api/AlignmentViewPanel.java
src/jalview/api/FeatureRenderer.java
src/jalview/api/OOMHandlerI.java
src/jalview/api/RotatableCanvasI.java
src/jalview/api/SequenceRenderer.java
src/jalview/api/SequenceStructureBinding.java
src/jalview/api/StructureSelectionManagerProvider.java
src/jalview/api/analysis/ScoreModelI.java
src/jalview/api/structures/JalviewStructureDisplayI.java [new file with mode: 0644]
src/jalview/appletgui/APopupMenu.java
src/jalview/appletgui/AlignFrame.java
src/jalview/appletgui/AlignViewport.java
src/jalview/appletgui/AlignmentPanel.java
src/jalview/appletgui/AnnotationColourChooser.java
src/jalview/appletgui/AnnotationLabels.java
src/jalview/appletgui/AnnotationPanel.java
src/jalview/appletgui/AppletJmol.java
src/jalview/appletgui/AppletJmolBinding.java
src/jalview/appletgui/CutAndPasteTransfer.java
src/jalview/appletgui/EditNameDialog.java
src/jalview/appletgui/EmbmenuFrame.java
src/jalview/appletgui/ExtJmol.java
src/jalview/appletgui/FeatureColourChooser.java
src/jalview/appletgui/FeatureRenderer.java
src/jalview/appletgui/FeatureSettings.java
src/jalview/appletgui/Finder.java
src/jalview/appletgui/FontChooser.java
src/jalview/appletgui/IdCanvas.java
src/jalview/appletgui/IdPanel.java
src/jalview/appletgui/IdwidthAdjuster.java
src/jalview/appletgui/JVDialog.java
src/jalview/appletgui/OverviewPanel.java
src/jalview/appletgui/PCAPanel.java
src/jalview/appletgui/PaintRefresher.java
src/jalview/appletgui/PairwiseAlignPanel.java
src/jalview/appletgui/RedundancyPanel.java
src/jalview/appletgui/RotatableCanvas.java
src/jalview/appletgui/ScalePanel.java
src/jalview/appletgui/SeqCanvas.java
src/jalview/appletgui/SeqPanel.java
src/jalview/appletgui/SequenceRenderer.java
src/jalview/appletgui/SliderPanel.java
src/jalview/appletgui/Tooltip.java
src/jalview/appletgui/TreeCanvas.java
src/jalview/appletgui/TreePanel.java
src/jalview/appletgui/UserDefinedColours.java
src/jalview/bin/Cache.java
src/jalview/bin/Jalview.java
src/jalview/bin/JalviewLite.java
src/jalview/bin/JalviewLiteURLRetrieve.java
src/jalview/binding/Alignment.java
src/jalview/binding/Annotation.java
src/jalview/binding/AnnotationElement.java
src/jalview/binding/Colour.java
src/jalview/binding/Feature.java
src/jalview/binding/FeatureSettings.java
src/jalview/binding/Features.java
src/jalview/binding/JGroup.java
src/jalview/binding/JSeq.java
src/jalview/binding/JalviewModel.java
src/jalview/binding/JalviewModelSequence.java
src/jalview/binding/JalviewUserColours.java
src/jalview/binding/Pdbentry.java
src/jalview/binding/PdbentryItem.java
src/jalview/binding/Pdbids.java
src/jalview/binding/Property.java
src/jalview/binding/Sequence.java
src/jalview/binding/SequenceSet.java
src/jalview/binding/SequenceType.java
src/jalview/binding/Setting.java
src/jalview/binding/Tree.java
src/jalview/binding/UserColourScheme.java
src/jalview/binding/UserColours.java
src/jalview/binding/VAMSAS.java
src/jalview/binding/VamsasModel.java
src/jalview/binding/Viewport.java
src/jalview/commands/ChangeCaseCommand.java
src/jalview/commands/CommandI.java
src/jalview/commands/EditCommand.java
src/jalview/commands/OrderCommand.java
src/jalview/commands/RemoveGapColCommand.java
src/jalview/commands/RemoveGapsCommand.java
src/jalview/commands/SlideSequencesCommand.java
src/jalview/commands/TrimRegionCommand.java
src/jalview/controller/AlignViewController.java
src/jalview/datamodel/AlignedCodonFrame.java
src/jalview/datamodel/Alignment.java
src/jalview/datamodel/AlignmentAnnotation.java
src/jalview/datamodel/AlignmentI.java
src/jalview/datamodel/AlignmentOrder.java
src/jalview/datamodel/AlignmentView.java
src/jalview/datamodel/AnnotatedCollectionI.java
src/jalview/datamodel/Annotation.java
src/jalview/datamodel/BinaryNode.java
src/jalview/datamodel/BinarySequence.java
src/jalview/datamodel/CigarArray.java
src/jalview/datamodel/CigarBase.java
src/jalview/datamodel/CigarCigar.java
src/jalview/datamodel/CigarSimple.java
src/jalview/datamodel/ColumnSelection.java
src/jalview/datamodel/DBRefEntry.java
src/jalview/datamodel/DBRefSource.java
src/jalview/datamodel/FeatureProperties.java
src/jalview/datamodel/GraphLine.java
src/jalview/datamodel/HiddenSequences.java
src/jalview/datamodel/Mapping.java
src/jalview/datamodel/NodeTransformI.java
src/jalview/datamodel/PDBEntry.java
src/jalview/datamodel/Provenance.java
src/jalview/datamodel/ProvenanceEntry.java
src/jalview/datamodel/SearchResults.java
src/jalview/datamodel/SecondaryStructureAnnotation.java [new file with mode: 0644]
src/jalview/datamodel/SeqCigar.java
src/jalview/datamodel/Sequence.java
src/jalview/datamodel/SequenceCollectionI.java
src/jalview/datamodel/SequenceFeature.java
src/jalview/datamodel/SequenceGroup.java
src/jalview/datamodel/SequenceI.java
src/jalview/datamodel/SequenceNode.java
src/jalview/datamodel/SequencePoint.java
src/jalview/datamodel/UniprotEntry.java
src/jalview/datamodel/UniprotFile.java
src/jalview/datamodel/UniprotProteinName.java
src/jalview/datamodel/UniprotSequence.java
src/jalview/datamodel/xdb/embl/BasePosition.java
src/jalview/datamodel/xdb/embl/EmblEntry.java
src/jalview/datamodel/xdb/embl/EmblError.java
src/jalview/datamodel/xdb/embl/EmblFeature.java
src/jalview/datamodel/xdb/embl/EmblFeatureLocElement.java
src/jalview/datamodel/xdb/embl/EmblFeatureLocations.java
src/jalview/datamodel/xdb/embl/EmblFile.java
src/jalview/datamodel/xdb/embl/EmblSequence.java
src/jalview/datamodel/xdb/embl/Qualifier.java
src/jalview/ext/jmol/JalviewJmolBinding.java
src/jalview/ext/jmol/JmolCommands.java
src/jalview/ext/jmol/PDBFileWithJmol.java [new file with mode: 0644]
src/jalview/ext/paradise/Annotate3D.java [new file with mode: 0644]
src/jalview/ext/rbvi/chimera/ChimeraCommands.java [new file with mode: 0644]
src/jalview/ext/rbvi/chimera/JalviewChimeraBinding.java [new file with mode: 0644]
src/jalview/ext/varna/JalviewVarnaBinding.java
src/jalview/ext/varna/VarnaCommands.java
src/jalview/gui/AlignFrame.java
src/jalview/gui/AlignViewport.java
src/jalview/gui/AlignmentPanel.java
src/jalview/gui/AnnotationColourChooser.java
src/jalview/gui/AnnotationExporter.java
src/jalview/gui/AnnotationLabels.java
src/jalview/gui/AnnotationPanel.java
src/jalview/gui/AppJmol.java
src/jalview/gui/AppJmolBinding.java
src/jalview/gui/AppVarna.java
src/jalview/gui/AppVarnaBinding.java
src/jalview/gui/AssociatePdbFileWithSeq.java
src/jalview/gui/BlogReader.java
src/jalview/gui/ChimeraViewFrame.java [new file with mode: 0644]
src/jalview/gui/Console.java
src/jalview/gui/CutAndPasteHtmlTransfer.java
src/jalview/gui/CutAndPasteTransfer.java
src/jalview/gui/DasSourceBrowser.java
src/jalview/gui/Desktop.java
src/jalview/gui/EPSOptions.java
src/jalview/gui/EditNameDialog.java
src/jalview/gui/FeatureColourChooser.java
src/jalview/gui/FeatureRenderer.java
src/jalview/gui/FeatureSettings.java
src/jalview/gui/Finder.java
src/jalview/gui/FontChooser.java
src/jalview/gui/IProgressIndicator.java
src/jalview/gui/IProgressIndicatorHandler.java
src/jalview/gui/IdCanvas.java
src/jalview/gui/IdPanel.java
src/jalview/gui/IdwidthAdjuster.java
src/jalview/gui/JDatabaseTree.java
src/jalview/gui/Jalview2XML.java
src/jalview/gui/Jalview2XML_V1.java
src/jalview/gui/JalviewAppender.java
src/jalview/gui/JalviewChangeSupport.java
src/jalview/gui/JalviewChimeraBindingModel.java [new file with mode: 0644]
src/jalview/gui/JalviewDialog.java
src/jalview/gui/JvSwingUtils.java
src/jalview/gui/MenuChooser.java [new file with mode: 0644]
src/jalview/gui/OOMWarning.java
src/jalview/gui/OptsAndParamsPage.java
src/jalview/gui/OptsParametersContainerI.java
src/jalview/gui/OverviewPanel.java
src/jalview/gui/PCAPanel.java
src/jalview/gui/PaintRefresher.java
src/jalview/gui/PairwiseAlignPanel.java
src/jalview/gui/PopupMenu.java
src/jalview/gui/Preferences.java
src/jalview/gui/PromptUserConfig.java
src/jalview/gui/RedundancyPanel.java
src/jalview/gui/RestInputParamEditDialog.java
src/jalview/gui/RestServiceEditorPane.java
src/jalview/gui/RotatableCanvas.java
src/jalview/gui/ScalePanel.java
src/jalview/gui/ScriptWindow.java
src/jalview/gui/SeqCanvas.java
src/jalview/gui/SeqPanel.java
src/jalview/gui/SequenceFetcher.java
src/jalview/gui/SequenceRenderer.java
src/jalview/gui/SliderPanel.java
src/jalview/gui/SplashScreen.java
src/jalview/gui/StructureViewer.java [new file with mode: 0644]
src/jalview/gui/TextColourChooser.java
src/jalview/gui/TreeCanvas.java
src/jalview/gui/TreePanel.java
src/jalview/gui/UserDefinedColours.java
src/jalview/gui/UserQuestionnaireCheck.java
src/jalview/gui/VamsasApplication.java
src/jalview/gui/ViewSelectionMenu.java
src/jalview/gui/WebserviceInfo.java
src/jalview/gui/WsJobParameters.java
src/jalview/gui/WsParamSetManager.java
src/jalview/gui/WsPreferences.java
src/jalview/io/AMSAFile.java
src/jalview/io/AlignFile.java
src/jalview/io/AlignmentProperties.java
src/jalview/io/AnnotationFile.java
src/jalview/io/AppletFormatAdapter.java
src/jalview/io/BLCFile.java
src/jalview/io/ClansFile.java
src/jalview/io/ClustalFile.java
src/jalview/io/DBRefFile.java
src/jalview/io/FastaFile.java
src/jalview/io/FeaturesFile.java
src/jalview/io/FileLoader.java
src/jalview/io/FileParse.java
src/jalview/io/FormatAdapter.java
src/jalview/io/HTMLOutput.java
src/jalview/io/IdentifyFile.java
src/jalview/io/InputStreamParser.java [new file with mode: 0644]
src/jalview/io/JPredFile.java
src/jalview/io/JalviewFileChooser.java
src/jalview/io/JalviewFileFilter.java
src/jalview/io/JalviewFileView.java
src/jalview/io/JnetAnnotationMaker.java
src/jalview/io/MSFfile.java
src/jalview/io/MatrixFile.java
src/jalview/io/ModellerDescription.java
src/jalview/io/NewickFile.java
src/jalview/io/PIRFile.java
src/jalview/io/PfamFile.java
src/jalview/io/PhylipFile.java [new file with mode: 0644]
src/jalview/io/PileUpfile.java
src/jalview/io/RnamlFile.java [new file with mode: 0644]
src/jalview/io/SequenceAnnotationReport.java
src/jalview/io/SimpleBlastFile.java
src/jalview/io/StockholmFile.java
src/jalview/io/TCoffeeScoreFile.java
src/jalview/io/VamsasAppDatastore.java
src/jalview/io/WSWUBlastClient.java
src/jalview/io/packed/DataProvider.java
src/jalview/io/packed/JalviewDataset.java
src/jalview/io/packed/ParsePackedSet.java
src/jalview/io/packed/SimpleDataProvider.java
src/jalview/io/vamsas/Datasetsequence.java
src/jalview/io/vamsas/DatastoreItem.java
src/jalview/io/vamsas/DatastoreRegistry.java
src/jalview/io/vamsas/Dbref.java
src/jalview/io/vamsas/LocalDocSyncObject.java
src/jalview/io/vamsas/Rangetype.java
src/jalview/io/vamsas/Sequencefeature.java
src/jalview/io/vamsas/Sequencemapping.java
src/jalview/io/vamsas/Tree.java
src/jalview/javascript/JSFunctionExec.java
src/jalview/javascript/JalviewLiteJsApi.java
src/jalview/javascript/JsCallBack.java
src/jalview/javascript/JsSelectionSender.java
src/jalview/javascript/MouseOverListener.java
src/jalview/javascript/MouseOverStructureListener.java
src/jalview/jbgui/GAlignFrame.java
src/jalview/jbgui/GAlignmentPanel.java
src/jalview/jbgui/GCutAndPasteHtmlTransfer.java
src/jalview/jbgui/GCutAndPasteTransfer.java
src/jalview/jbgui/GDasSourceBrowser.java
src/jalview/jbgui/GDesktop.java
src/jalview/jbgui/GFinder.java
src/jalview/jbgui/GFontChooser.java
src/jalview/jbgui/GPCAPanel.java
src/jalview/jbgui/GPairwiseAlignPanel.java
src/jalview/jbgui/GPreferences.java
src/jalview/jbgui/GRestInputParamEditDialog.java
src/jalview/jbgui/GRestServiceEditorPane.java
src/jalview/jbgui/GRnaStructureViewer.java
src/jalview/jbgui/GSequenceLink.java
src/jalview/jbgui/GSliderPanel.java
src/jalview/jbgui/GStructureViewer.java
src/jalview/jbgui/GTreePanel.java
src/jalview/jbgui/GUserDefinedColours.java
src/jalview/jbgui/GWebserviceInfo.java
src/jalview/jbgui/GWsPreferences.java
src/jalview/math/Matrix.java
src/jalview/math/RotatableMatrix.java
src/jalview/renderer/AnnotationRenderer.java
src/jalview/renderer/AwtRenderPanelI.java
src/jalview/schemabinding/version2/AlcodMap.java
src/jalview/schemabinding/version2/Alcodon.java
src/jalview/schemabinding/version2/AlcodonFrame.java
src/jalview/schemabinding/version2/Annotation.java
src/jalview/schemabinding/version2/AnnotationColourScheme.java
src/jalview/schemabinding/version2/AnnotationColours.java
src/jalview/schemabinding/version2/AnnotationElement.java
src/jalview/schemabinding/version2/CalcIdParam.java
src/jalview/schemabinding/version2/Colour.java
src/jalview/schemabinding/version2/DBRef.java
src/jalview/schemabinding/version2/Feature.java
src/jalview/schemabinding/version2/FeatureSettings.java
src/jalview/schemabinding/version2/Features.java
src/jalview/schemabinding/version2/Group.java
src/jalview/schemabinding/version2/HiddenColumns.java
src/jalview/schemabinding/version2/JGroup.java
src/jalview/schemabinding/version2/JSeq.java
src/jalview/schemabinding/version2/JalviewModel.java
src/jalview/schemabinding/version2/JalviewModelSequence.java
src/jalview/schemabinding/version2/JalviewUserColours.java
src/jalview/schemabinding/version2/MapListFrom.java
src/jalview/schemabinding/version2/MapListTo.java
src/jalview/schemabinding/version2/MapListType.java
src/jalview/schemabinding/version2/Mapping.java
src/jalview/schemabinding/version2/MappingChoice.java
src/jalview/schemabinding/version2/OtherData.java
src/jalview/schemabinding/version2/Pdbentry.java
src/jalview/schemabinding/version2/PdbentryItem.java
src/jalview/schemabinding/version2/Pdbids.java
src/jalview/schemabinding/version2/Property.java
src/jalview/schemabinding/version2/Sequence.java
src/jalview/schemabinding/version2/SequenceSet.java
src/jalview/schemabinding/version2/SequenceSetProperties.java
src/jalview/schemabinding/version2/SequenceType.java
src/jalview/schemabinding/version2/Setting.java
src/jalview/schemabinding/version2/StructureState.java
src/jalview/schemabinding/version2/ThresholdLine.java
src/jalview/schemabinding/version2/Tree.java
src/jalview/schemabinding/version2/UserColourScheme.java
src/jalview/schemabinding/version2/UserColours.java
src/jalview/schemabinding/version2/VAMSAS.java
src/jalview/schemabinding/version2/VamsasModel.java
src/jalview/schemabinding/version2/Viewport.java
src/jalview/schemabinding/version2/WebServiceParameterSet.java
src/jalview/schemabinding/version2/descriptors/AlcodMapDescriptor.java
src/jalview/schemabinding/version2/descriptors/AlcodonDescriptor.java
src/jalview/schemabinding/version2/descriptors/AlcodonFrameDescriptor.java
src/jalview/schemabinding/version2/descriptors/AnnotationColourSchemeDescriptor.java
src/jalview/schemabinding/version2/descriptors/AnnotationColoursDescriptor.java
src/jalview/schemabinding/version2/descriptors/AnnotationDescriptor.java
src/jalview/schemabinding/version2/descriptors/AnnotationElementDescriptor.java
src/jalview/schemabinding/version2/descriptors/CalcIdParamDescriptor.java
src/jalview/schemabinding/version2/descriptors/ColourDescriptor.java
src/jalview/schemabinding/version2/descriptors/DBRefDescriptor.java
src/jalview/schemabinding/version2/descriptors/FeatureDescriptor.java
src/jalview/schemabinding/version2/descriptors/FeatureSettingsDescriptor.java
src/jalview/schemabinding/version2/descriptors/FeaturesDescriptor.java
src/jalview/schemabinding/version2/descriptors/GroupDescriptor.java
src/jalview/schemabinding/version2/descriptors/HiddenColumnsDescriptor.java
src/jalview/schemabinding/version2/descriptors/JGroupDescriptor.java
src/jalview/schemabinding/version2/descriptors/JSeqDescriptor.java
src/jalview/schemabinding/version2/descriptors/JalviewModelDescriptor.java
src/jalview/schemabinding/version2/descriptors/JalviewModelSequenceDescriptor.java
src/jalview/schemabinding/version2/descriptors/JalviewUserColoursDescriptor.java
src/jalview/schemabinding/version2/descriptors/MapListFromDescriptor.java
src/jalview/schemabinding/version2/descriptors/MapListToDescriptor.java
src/jalview/schemabinding/version2/descriptors/MapListTypeDescriptor.java
src/jalview/schemabinding/version2/descriptors/MappingChoiceDescriptor.java
src/jalview/schemabinding/version2/descriptors/MappingDescriptor.java
src/jalview/schemabinding/version2/descriptors/OtherDataDescriptor.java
src/jalview/schemabinding/version2/descriptors/PdbentryDescriptor.java
src/jalview/schemabinding/version2/descriptors/PdbentryItemDescriptor.java
src/jalview/schemabinding/version2/descriptors/PdbidsDescriptor.java
src/jalview/schemabinding/version2/descriptors/PropertyDescriptor.java
src/jalview/schemabinding/version2/descriptors/SequenceDescriptor.java
src/jalview/schemabinding/version2/descriptors/SequenceSetDescriptor.java
src/jalview/schemabinding/version2/descriptors/SequenceSetPropertiesDescriptor.java
src/jalview/schemabinding/version2/descriptors/SequenceTypeDescriptor.java
src/jalview/schemabinding/version2/descriptors/SettingDescriptor.java
src/jalview/schemabinding/version2/descriptors/StructureStateDescriptor.java
src/jalview/schemabinding/version2/descriptors/ThresholdLineDescriptor.java
src/jalview/schemabinding/version2/descriptors/TreeDescriptor.java
src/jalview/schemabinding/version2/descriptors/UserColourSchemeDescriptor.java
src/jalview/schemabinding/version2/descriptors/UserColoursDescriptor.java
src/jalview/schemabinding/version2/descriptors/VAMSASDescriptor.java
src/jalview/schemabinding/version2/descriptors/VamsasModelDescriptor.java
src/jalview/schemabinding/version2/descriptors/ViewportDescriptor.java
src/jalview/schemabinding/version2/descriptors/WebServiceParameterSetDescriptor.java
src/jalview/schemes/AnnotationColourGradient.java
src/jalview/schemes/Blosum62ColourScheme.java
src/jalview/schemes/BuriedColourScheme.java
src/jalview/schemes/ClustalxColourScheme.java
src/jalview/schemes/ColourSchemeI.java
src/jalview/schemes/ColourSchemeProperty.java
src/jalview/schemes/Consensus.java
src/jalview/schemes/CovariationColourScheme.java
src/jalview/schemes/FollowerColourScheme.java
src/jalview/schemes/GraduatedColor.java
src/jalview/schemes/HelixColourScheme.java
src/jalview/schemes/HydrophobicColourScheme.java
src/jalview/schemes/NucleotideColourScheme.java
src/jalview/schemes/PIDColourScheme.java
src/jalview/schemes/PurinePyrimidineColourScheme.java
src/jalview/schemes/RNAHelicesColour.java
src/jalview/schemes/RNAHelicesColourChooser.java
src/jalview/schemes/RNAInteractionColourScheme.java [new file with mode: 0644]
src/jalview/schemes/ResidueColourScheme.java
src/jalview/schemes/ResidueProperties.java
src/jalview/schemes/ScoreColourScheme.java
src/jalview/schemes/ScoreMatrix.java
src/jalview/schemes/StrandColourScheme.java
src/jalview/schemes/TCoffeeColourScheme.java
src/jalview/schemes/TaylorColourScheme.java
src/jalview/schemes/TurnColourScheme.java
src/jalview/schemes/UserColourScheme.java
src/jalview/schemes/ZappoColourScheme.java
src/jalview/structure/AlignmentViewPanelListener.java
src/jalview/structure/SecondaryStructureListener.java
src/jalview/structure/SelectionListener.java
src/jalview/structure/SelectionSource.java
src/jalview/structure/SequenceListener.java
src/jalview/structure/StructureListener.java
src/jalview/structure/StructureMapping.java
src/jalview/structure/StructureMappingcommandSet.java
src/jalview/structure/StructureSelectionManager.java
src/jalview/structure/VamsasListener.java
src/jalview/structure/VamsasSource.java
src/jalview/structures/models/SequenceStructureBindingModel.java [new file with mode: 0644]
src/jalview/util/AWTConsole.java
src/jalview/util/BrowserLauncher.java
src/jalview/util/ColorUtils.java
src/jalview/util/Comparison.java
src/jalview/util/DBRefUtils.java
src/jalview/util/Format.java
src/jalview/util/GroupUrlLink.java
src/jalview/util/ImageMaker.java
src/jalview/util/MapList.java
src/jalview/util/MessageManager.java
src/jalview/util/ParseHtmlBodyAndLinks.java
src/jalview/util/Platform.java
src/jalview/util/QuickSort.java
src/jalview/util/ShiftList.java
src/jalview/util/TableSorter.java
src/jalview/util/UrlLink.java
src/jalview/util/jarInputStreamProvider.java
src/jalview/viewmodel/AlignmentViewport.java
src/jalview/viewmodel/PCAModel.java
src/jalview/workers/AlignCalcManager.java
src/jalview/workers/AlignCalcWorker.java
src/jalview/workers/ConsensusThread.java
src/jalview/workers/ConservationThread.java
src/jalview/workers/StrucConsensusThread.java
src/jalview/ws/AWSThread.java
src/jalview/ws/AWsJob.java
src/jalview/ws/DBRefFetcher.java
src/jalview/ws/DasSequenceFeatureFetcher.java
src/jalview/ws/EnfinEnvision2OneWay.java
src/jalview/ws/HttpClientUtils.java [new file with mode: 0644]
src/jalview/ws/JobStateSummary.java
src/jalview/ws/SequenceFetcher.java
src/jalview/ws/WSClient.java
src/jalview/ws/WSClientI.java
src/jalview/ws/WSMenuEntryProviderI.java
src/jalview/ws/dbsources/EbiFileRetrievedProxy.java
src/jalview/ws/dbsources/EmblCdsSouce.java
src/jalview/ws/dbsources/EmblSource.java
src/jalview/ws/dbsources/EmblXmlSource.java
src/jalview/ws/dbsources/GeneDbSource.java
src/jalview/ws/dbsources/Pdb.java
src/jalview/ws/dbsources/Pfam.java
src/jalview/ws/dbsources/PfamFull.java
src/jalview/ws/dbsources/PfamSeed.java
src/jalview/ws/dbsources/Rfam.java
src/jalview/ws/dbsources/RfamFull.java
src/jalview/ws/dbsources/RfamSeed.java
src/jalview/ws/dbsources/Uniprot.java
src/jalview/ws/dbsources/UnprotName.java
src/jalview/ws/dbsources/Xfam.java
src/jalview/ws/dbsources/das/api/DasSourceRegistryI.java
src/jalview/ws/dbsources/das/api/jalviewSourceI.java
src/jalview/ws/dbsources/das/datamodel/DasSequenceSource.java
src/jalview/ws/dbsources/das/datamodel/DasSourceRegistry.java
src/jalview/ws/dbsources/das/datamodel/JalviewSource.java
src/jalview/ws/ebi/EBIFetchClient.java
src/jalview/ws/io/mime/HttpContentHandler.java
src/jalview/ws/io/mime/JalviewMimeContentHandler.java
src/jalview/ws/io/mime/MimeTypes.java
src/jalview/ws/jws1/Annotate3D.java [new file with mode: 0644]
src/jalview/ws/jws1/Discoverer.java
src/jalview/ws/jws1/JPredClient.java
src/jalview/ws/jws1/JPredThread.java
src/jalview/ws/jws1/JWS1Thread.java
src/jalview/ws/jws1/MsaWSClient.java
src/jalview/ws/jws1/MsaWSThread.java
src/jalview/ws/jws1/SeqSearchWSClient.java
src/jalview/ws/jws1/SeqSearchWSThread.java
src/jalview/ws/jws1/WS1Client.java
src/jalview/ws/jws1/WSJob.java
src/jalview/ws/jws2/AAConClient.java
src/jalview/ws/jws2/AADisorderClient.java
src/jalview/ws/jws2/AWS2Thread.java
src/jalview/ws/jws2/AbstractJabaCalcWorker.java [new file with mode: 0644]
src/jalview/ws/jws2/JPred301Client.java [new file with mode: 0644]
src/jalview/ws/jws2/JWs2Job.java
src/jalview/ws/jws2/JabaParamStore.java
src/jalview/ws/jws2/JabaPreset.java
src/jalview/ws/jws2/JabaWsServerQuery.java
src/jalview/ws/jws2/JabawsAlignCalcWorker.java [deleted file]
src/jalview/ws/jws2/JabawsCalcWorker.java
src/jalview/ws/jws2/JabawsMsaInterfaceAlignCalcWorker.java [new file with mode: 0644]
src/jalview/ws/jws2/Jws2Client.java
src/jalview/ws/jws2/Jws2Discoverer.java
src/jalview/ws/jws2/MsaWSClient.java
src/jalview/ws/jws2/MsaWSThread.java
src/jalview/ws/jws2/ParameterUtils.java
src/jalview/ws/jws2/RNAalifoldClient.java
src/jalview/ws/jws2/SequenceAnnotationWSClient.java
src/jalview/ws/jws2/dm/AAConSettings.java
src/jalview/ws/jws2/dm/JabaOption.java
src/jalview/ws/jws2/dm/JabaParameter.java
src/jalview/ws/jws2/dm/JabaValueConstrain.java
src/jalview/ws/jws2/dm/JabaWsParamSet.java
src/jalview/ws/jws2/jabaws2/Jws2Instance.java
src/jalview/ws/jws2/jabaws2/Jws2InstanceFactory.java
src/jalview/ws/params/ArgumentI.java
src/jalview/ws/params/AutoCalcSetting.java
src/jalview/ws/params/InvalidArgumentException.java
src/jalview/ws/params/OptionI.java
src/jalview/ws/params/ParamDatastoreI.java
src/jalview/ws/params/ParamManager.java
src/jalview/ws/params/ParameterI.java
src/jalview/ws/params/ValueConstrainI.java
src/jalview/ws/params/WsParamSetI.java
src/jalview/ws/params/simple/BooleanOption.java
src/jalview/ws/params/simple/IntegerParameter.java
src/jalview/ws/params/simple/Option.java
src/jalview/ws/params/simple/Parameter.java
src/jalview/ws/params/simple/StringChoiceParameter.java
src/jalview/ws/rest/AlignmentProcessor.java
src/jalview/ws/rest/HttpResultSet.java
src/jalview/ws/rest/InputType.java
src/jalview/ws/rest/NoValidInputDataException.java
src/jalview/ws/rest/RestClient.java
src/jalview/ws/rest/RestJob.java
src/jalview/ws/rest/RestJobThread.java
src/jalview/ws/rest/RestServiceDescription.java
src/jalview/ws/rest/params/Alignment.java
src/jalview/ws/rest/params/AnnotationFile.java
src/jalview/ws/rest/params/JobConstant.java
src/jalview/ws/rest/params/SeqGroupIndexVector.java
src/jalview/ws/rest/params/SeqIdVector.java
src/jalview/ws/rest/params/SeqVector.java
src/jalview/ws/rest/params/Tree.java
src/jalview/ws/seqfetcher/ASequenceFetcher.java
src/jalview/ws/seqfetcher/DbSourceProxy.java
src/jalview/ws/seqfetcher/DbSourceProxyImpl.java
src/jalview/ws/uimodel/AlignAnalysisUIText.java
src/org/jibble/epsgraphics/EpsDocument.java
src/org/jibble/epsgraphics/EpsException.java
src/org/jibble/epsgraphics/EpsGraphics2D.java
src/uk/ac/ebi/picr/model/CrossReference.java
src/uk/ac/ebi/picr/model/CrossReference_Helper.java
src/uk/ac/ebi/picr/model/UPEntry.java
src/uk/ac/ebi/picr/model/UPEntry_Helper.java
src/uk/ac/ebi/www/Data.java
src/uk/ac/ebi/www/InputParams.java
src/uk/ac/ebi/www/WSFile.java
src/uk/ac/ebi/www/WSWUBlast.java
src/uk/ac/ebi/www/WSWUBlastService.java
src/uk/ac/ebi/www/WSWUBlastServiceLocator.java
src/uk/ac/ebi/www/WSWUBlastSoapBindingStub.java
src/uk/ac/ebi/www/picr/AccessionMappingService/AccessionMapperBindingStub.java
src/uk/ac/ebi/www/picr/AccessionMappingService/AccessionMapperInterface.java
src/uk/ac/ebi/www/picr/AccessionMappingService/AccessionMapperService.java
src/uk/ac/ebi/www/picr/AccessionMappingService/AccessionMapperServiceLocator.java
src/vamsas/IMsaWS.java
src/vamsas/objects/simple/Alignment.java
src/vamsas/objects/simple/Alignment_Helper.java
src/vamsas/objects/simple/JpredResult.java
src/vamsas/objects/simple/JpredResult_Helper.java
src/vamsas/objects/simple/MsaResult.java
src/vamsas/objects/simple/MsaResult_Helper.java
src/vamsas/objects/simple/Msfalignment.java
src/vamsas/objects/simple/Msfalignment_Helper.java
src/vamsas/objects/simple/Object.java
src/vamsas/objects/simple/Object_Helper.java
src/vamsas/objects/simple/Result.java
src/vamsas/objects/simple/Result_Helper.java
src/vamsas/objects/simple/Secstructpred.java
src/vamsas/objects/simple/Secstructpred_Helper.java
src/vamsas/objects/simple/SeqSearchResult.java
src/vamsas/objects/simple/SeqSearchResult_Helper.java
src/vamsas/objects/simple/Sequence.java
src/vamsas/objects/simple/SequenceSet.java
src/vamsas/objects/simple/SequenceSet_Helper.java
src/vamsas/objects/simple/Sequence_Helper.java
src/vamsas/objects/simple/WsJobId.java
src/vamsas/objects/simple/WsJobId_Helper.java
test/jalview/analysis/AlignmentUtilsTests.java
test/jalview/analysis/DnaTranslation.java
test/jalview/analysis/TestAlignSeq.java [new file with mode: 0644]
test/jalview/bin/CommandLineOperations.java
test/jalview/ext/jmol/PDBFileWithJmolTest.java [new file with mode: 0644]
test/jalview/ext/paradise/TestAnnotate3D.java [new file with mode: 0644]
test/jalview/ext/rbvi/chimera/AllTests.java [new file with mode: 0644]
test/jalview/ext/rbvi/chimera/ChimeraConnect.java [new file with mode: 0644]
test/jalview/ext/rbvi/chimera/JalviewChimeraView.java [new file with mode: 0644]
test/jalview/ext/rbvi/chimera/testProps.jvprops [new file with mode: 0644]
test/jalview/gui/JAL1353bugdemo.java
test/jalview/io/AnnotationFileIOTest.java
test/jalview/io/FileIOTester.java
test/jalview/io/Jalview2xmlTests.java
test/jalview/io/NewickFileTests.java
test/jalview/io/PhylipFileTests.java [new file with mode: 0644]
test/jalview/io/RNAMLfileTest.java [new file with mode: 0644]
test/jalview/io/StockholmFileTest.java
test/jalview/io/TCoffeeScoreFileTest.java
test/jalview/io/test_gz_fasta_notgz.gz [new file with mode: 0644]
test/jalview/schemes/DnaCodonTests.java
test/jalview/schemes/ScoreMatrixPrinter.java
test/jalview/util/ColorUtilsTest.java [new file with mode: 0644]
test/jalview/ws/PDBSequenceFetcherTest.java [new file with mode: 0644]
test/jalview/ws/gui/Jws2ParamView.java
test/jalview/ws/jabaws/DisorderAnnotExportImport.java
test/jalview/ws/jabaws/JalviewJabawsTestUtils.java
test/jalview/ws/jabaws/JpredJabaStructExportImport.java [new file with mode: 0644]
test/jalview/ws/jabaws/MinJabawsClientTests.java [new file with mode: 0644]
test/jalview/ws/jabaws/RNAStructExportImport.java
test/jalview/ws/rest/ShmmrRSBSService.java
test/jalview/ws/seqfetcher/DbRefFetcherTest.java
utils/InstallAnywhere/Jalview.iap_xml
utils/InstallAnywhere/jalview_buildinstaller.xml
utils/eclipse/JalviewCodeStyle.xml
utils/getJavaVersion.java
utils/gff2annot.pl
utils/help2Website.java
utils/jalopy/bin/lcp.bat [deleted file]
utils/jalopy/bin/preferences.bat [deleted file]
utils/jalopy/bin/preferences.sh [deleted file]
utils/jalopy/docs/acknowledge.html [deleted file]
utils/jalopy/docs/bi01.html [deleted file]
utils/jalopy/docs/build.html [deleted file]
utils/jalopy/docs/comments.html [deleted file]
utils/jalopy/docs/contact.html [deleted file]
utils/jalopy/docs/contributors.html [deleted file]
utils/jalopy/docs/dedication.html [deleted file]
utils/jalopy/docs/dependencies.html [deleted file]
utils/jalopy/docs/docs.html [deleted file]
utils/jalopy/docs/download.html [deleted file]
utils/jalopy/docs/environment.html [deleted file]
utils/jalopy/docs/faq.html [deleted file]
utils/jalopy/docs/features.html [deleted file]
utils/jalopy/docs/footer.html [deleted file]
utils/jalopy/docs/header.html [deleted file]
utils/jalopy/docs/history.html [deleted file]
utils/jalopy/docs/imports.html [deleted file]
utils/jalopy/docs/indentation.html [deleted file]
utils/jalopy/docs/index.html [deleted file]
utils/jalopy/docs/inspector-naming.html [deleted file]
utils/jalopy/docs/inspector.html [deleted file]
utils/jalopy/docs/installation.html [deleted file]
utils/jalopy/docs/introduction.html [deleted file]
utils/jalopy/docs/ix01.html [deleted file]
utils/jalopy/docs/javadoc.html [deleted file]
utils/jalopy/docs/license-antlr.html [deleted file]
utils/jalopy/docs/license-apache.html [deleted file]
utils/jalopy/docs/license-bsd.html [deleted file]
utils/jalopy/docs/license-common-public.html [deleted file]
utils/jalopy/docs/license-gnu-doc.html [deleted file]
utils/jalopy/docs/license-gnu.html [deleted file]
utils/jalopy/docs/license-sun-public.html [deleted file]
utils/jalopy/docs/links.html [deleted file]
utils/jalopy/docs/manual.html [deleted file]
utils/jalopy/docs/messages.html [deleted file]
utils/jalopy/docs/misc.html [deleted file]
utils/jalopy/docs/part-core.html [deleted file]
utils/jalopy/docs/part-plugins.html [deleted file]
utils/jalopy/docs/plugin-ant-config.html [deleted file]
utils/jalopy/docs/plugin-ant-license.html [deleted file]
utils/jalopy/docs/plugin-ant-usage.html [deleted file]
utils/jalopy/docs/plugin-ant.html [deleted file]
utils/jalopy/docs/plugin-console-license.html [deleted file]
utils/jalopy/docs/plugin-console-usage.html [deleted file]
utils/jalopy/docs/plugin-console.html [deleted file]
utils/jalopy/docs/plugin-eclipse-integration.html [deleted file]
utils/jalopy/docs/plugin-eclipse-license.html [deleted file]
utils/jalopy/docs/plugin-eclipse.html [deleted file]
utils/jalopy/docs/plugin-jbuilder-integration.html [deleted file]
utils/jalopy/docs/plugin-jbuilder-license.html [deleted file]
utils/jalopy/docs/plugin-jbuilder.html [deleted file]
utils/jalopy/docs/plugin-jdev-integration.html [deleted file]
utils/jalopy/docs/plugin-jdev-license.html [deleted file]
utils/jalopy/docs/plugin-jdev.html [deleted file]
utils/jalopy/docs/plugin-jedit-integration.html [deleted file]
utils/jalopy/docs/plugin-jedit-license.html [deleted file]
utils/jalopy/docs/plugin-jedit.html [deleted file]
utils/jalopy/docs/plugin-netbeans-integration.html [deleted file]
utils/jalopy/docs/plugin-netbeans-license.html [deleted file]
utils/jalopy/docs/plugin-netbeans.html [deleted file]
utils/jalopy/docs/plugins.html [deleted file]
utils/jalopy/docs/printer.html [deleted file]
utils/jalopy/docs/project.html [deleted file]
utils/jalopy/docs/separation.html [deleted file]
utils/jalopy/docs/settings.html [deleted file]
utils/jalopy/docs/site.css [deleted file]
utils/jalopy/docs/sorting.html [deleted file]
utils/jalopy/docs/usage.html [deleted file]
utils/jalopy/docs/whitespace.html [deleted file]
utils/jalopy/docs/wrapping.html [deleted file]
utils/jalopy/lib/aelfred-1.2.jar [deleted file]
utils/jalopy/lib/jalopy-1.0b11.jar [deleted file]
utils/jalopy/lib/jalopy-ant-0.6.2.jar [deleted file]
utils/jalopy/lib/jaxp-1.2.jar [deleted file]
utils/jalopy/lib/jdom-1.0b8.jar [deleted file]
utils/jalopy/lib/log4j-1.2.6.jar [deleted file]
utils/jalopy/lib/oro-2.0.6.jar [deleted file]
utils/jalopy/lib/sax-2.0.1.jar [deleted file]
utils/jalopy/readme.html [deleted file]
utils/jarunsigner.pl
utils/patchGt.pl
utils/splitstockholm.pl

index 21bbab7..bd96609 100644 (file)
@@ -9,7 +9,6 @@
        <classpathentry kind="lib" path="lib/commons-discovery.jar"/>
        <classpathentry kind="lib" path="lib/jaxrpc.jar"/>
        <classpathentry kind="lib" path="lib/jhall.jar"/>
-       <classpathentry kind="lib" path="lib/log4j-1.2.8.jar"/>
        <classpathentry kind="lib" path="lib/mail.jar"/>
        <classpathentry kind="lib" path="lib/regex.jar"/>
        <classpathentry kind="lib" path="lib/saaj.jar"/>
        <classpathentry kind="lib" path="lib/miglayout-4.0-swing.jar"/>
        <classpathentry kind="lib" path="lib/jswingreader-0.3.jar" sourcepath="/jswingreader"/>
        <classpathentry kind="lib" path="lib/commons-codec-1.3.jar"/>
-       <classpathentry kind="lib" path="lib/Jmol-12.2.4.jar"/>
+       <classpathentry kind="lib" path="lib/Jmol-12.2.4.jar" sourcepath="/Users/jimp/Documents/e6-workspace-new/Jmol/src"/>
        <classpathentry kind="lib" path="appletlib/JmolApplet-12.2.4.jar"/>
        <classpathentry kind="lib" path="lib/jdas-1.0.4.jar"/>
        <classpathentry kind="lib" path="lib/spring-core-3.0.5.RELEASE.jar"/>
        <classpathentry kind="lib" path="lib/spring-web-3.0.5.RELEASE.jar"/>
-       <classpathentry kind="lib" path="lib/VARNAv3-9-dev.jar"/>
        <classpathentry kind="lib" path="lib/groovy-all-1.8.2.jar"/>
        <classpathentry kind="lib" path="lib/min-jabaws-client-2.1.0.jar" sourcepath="/clustengine"/>
-       <classpathentry kind="lib" path="lib/resolver.jar"/>
-       <classpathentry kind="lib" path="lib/serializer.jar"/>
+       <classpathentry kind="lib" path="lib/json_simple-1.1.jar" sourcepath="/Users/jimp/Downloads/json_simple-1.1-all.zip"/>
+       <classpathentry kind="lib" path="lib/slf4j-api-1.7.7.jar"/>
+       <classpathentry kind="lib" path="lib/log4j-to-slf4j-2.0-rc2.jar"/>
+       <classpathentry kind="lib" path="lib/slf4j-log4j12-1.7.7.jar"/>
+       <classpathentry kind="con" path="org.eclipse.jdt.USER_LIBRARY/plugin.jar"/>
        <classpathentry kind="lib" path="lib/xml-apis.jar"/>
        <classpathentry kind="con" path="org.eclipse.jdt.USER_LIBRARY/plugin17"/>
        <classpathentry kind="con" path="org.eclipse.jdt.junit.JUNIT_CONTAINER/4"/>
diff --git a/.externalToolBuilders/Jalview Release 2.7 build.xml [Builder].launch b/.externalToolBuilders/Jalview Release 2.7 build.xml [Builder].launch
new file mode 100644 (file)
index 0000000..b280175
--- /dev/null
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<launchConfiguration type="org.eclipse.ant.AntBuilderLaunchConfigurationType">
+<booleanAttribute key="editedByExternalToolsMainTab" value="true"/>
+<booleanAttribute key="org.eclipse.ant.ui.DEFAULT_VM_INSTALL" value="true"/>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
+<listEntry value="/Jalview Release 2.7/build.xml"/>
+</listAttribute>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
+<listEntry value="1"/>
+</listAttribute>
+<booleanAttribute key="org.eclipse.debug.ui.ATTR_LAUNCH_IN_BACKGROUND" value="false"/>
+<listAttribute key="org.eclipse.jdt.launching.CLASSPATH">
+<listEntry value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#10;&lt;runtimeClasspathEntry containerPath=&quot;org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/java-6-openjdk-i386&quot; path=&quot;1&quot; type=&quot;4&quot;/&gt;&#10;"/>
+<listEntry value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#10;&lt;runtimeClasspathEntry internalArchive=&quot;/Jalview Release 2.7/lib&quot; path=&quot;3&quot; type=&quot;2&quot;/&gt;&#10;"/>
+<listEntry value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#10;&lt;runtimeClasspathEntry internalArchive=&quot;/Jalview Release 2.7/utils&quot; path=&quot;3&quot; type=&quot;2&quot;/&gt;&#10;"/>
+<listEntry value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#10;&lt;runtimeClasspathEntry id=&quot;org.eclipse.ant.ui.classpathentry.antHome&quot;&gt;&#10;&lt;memento default=&quot;true&quot;/&gt;&#10;&lt;/runtimeClasspathEntry&gt;&#10;"/>
+<listEntry value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#10;&lt;runtimeClasspathEntry id=&quot;org.eclipse.ant.ui.classpathentry.extraClasspathEntries&quot;&gt;&#10;&lt;memento/&gt;&#10;&lt;/runtimeClasspathEntry&gt;&#10;"/>
+</listAttribute>
+<stringAttribute key="org.eclipse.jdt.launching.CLASSPATH_PROVIDER" value="org.eclipse.ant.ui.AntClasspathProvider"/>
+<booleanAttribute key="org.eclipse.jdt.launching.DEFAULT_CLASSPATH" value="false"/>
+<stringAttribute key="org.eclipse.jdt.launching.JRE_CONTAINER" value="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/java-6-openjdk-i386"/>
+<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="org.eclipse.ant.internal.launching.remote.InternalAntRunner"/>
+<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="Jalview Release 2.7"/>
+<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.ant.ui.AntClasspathProvider"/>
+<stringAttribute key="org.eclipse.ui.externaltools.ATTR_ANT_TARGETS" value="buildindices,"/>
+<stringAttribute key="org.eclipse.ui.externaltools.ATTR_LAUNCH_CONFIGURATION_BUILD_SCOPE" value="${none}"/>
+<stringAttribute key="org.eclipse.ui.externaltools.ATTR_LOCATION" value="${workspace_loc:/Jalview Release 2.7/build.xml}"/>
+<booleanAttribute key="org.eclipse.ui.externaltools.ATTR_TRIGGERS_CONFIGURED" value="true"/>
+<stringAttribute key="process_factory_id" value="org.eclipse.ant.ui.remoteAntProcessFactory"/>
+</launchConfiguration>
index 3407192..9841761 100644 (file)
@@ -2,3 +2,5 @@
 /dist
 /classes
 .externalToolBuilders/Jalview Release indices [Builder].launch
+/.DS_Store
+/.com.apple.timemachine.supported
index aa7e6f2..d0dfc7e 100644 (file)
--- a/.project
+++ b/.project
@@ -6,12 +6,12 @@
        </projects>
        <buildSpec>
                <buildCommand>
-                       <name>org.eclipse.wst.common.project.facet.core.builder</name>
+                       <name>org.eclipse.jdt.core.javabuilder</name>
                        <arguments>
                        </arguments>
                </buildCommand>
                <buildCommand>
-                       <name>org.eclipse.jdt.core.javabuilder</name>
+                       <name>org.eclipse.wst.common.project.facet.core.builder</name>
                        <arguments>
                        </arguments>
                </buildCommand>
diff --git a/AUTHORS b/AUTHORS
index ab81d5e..1bca12a 100644 (file)
--- a/AUTHORS
+++ b/AUTHORS
@@ -16,6 +16,7 @@ Jim Procter
 Andrew Waterhouse
 Jan Engelhardt
 Lauren Lui
+Anne Menard
 Natasha Sherstnev
 Daniel Barton
 David Roldan-Martinez
diff --git a/RELEASE b/RELEASE
index 2b1603c..11598ab 100644 (file)
--- a/RELEASE
+++ b/RELEASE
@@ -1,2 +1,2 @@
-jalview.release=Release_2_8_1_Branch\r
-jalview.version=2.8.1b1\r
+jalview.release=Release_2_8_2_Branch
+jalview.version=2.8.2
index f7f3529..386541e 100644 (file)
@@ -2,6 +2,11 @@ The Jalview Desktop relies on a number of third-party libraries.
 These can be found in the lib directory, with additional compile
 time dependencies in the utils directory.
 
+A number of sources have also been adapted for incorporation into Jalview's source tree
+
+ext.edu.ucsf.rbvi.strucviz2 includes sources originally developed by Scooter Morris and Nadezhda Doncheva for the Cytoscape StructureViz2 plugin. It is released under the Berkley license and we hereby acknowledge its original copyright is held by the UCSF Computer Graphics Laboratory
+ and the software was developed with support by the NIH National Center for Research Resources, grant P41-RR01081. 
+
 Licencing information for each library is given below:
 
 JGoogleAnalytics_0.3.jar       APL 2.0 License - http://code.google.com/p/jgoogleanalytics/
@@ -33,6 +38,7 @@ vamsas-client.jar
 wsdl4j.jar
 xercesImpl.jar
 xml-apis.jar
+json_simple-1.1.jar : Apache 2.0 license : downloaded from https://code.google.com/p/json-simple/downloads/list (will move to 1.1.1 version when jalview is mavenised and osgi-ised)
 
 Additional dependencies
 
index 1ac7afc..681804d 100755 (executable)
--- a/build.xml
+++ b/build.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0"?>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
 -->
 <project name="jalviewX" default="usage" basedir=".">
-  <!-- we use jalopy to format our sources -->
-  <taskdef name="jalopy" classname="de.hunsicker.jalopy.plugin.ant.AntPlugin">
-    <classpath>
-      <fileset dir="utils/jalopy/lib">
-        <include name="*.jar" />
-      </fileset>
-    </classpath>
-  </taskdef>
-
   <target name="help" depends="usage" />
   <target name="usage">
     <echo message="~~~Jalview Ant build.xml Usage~~~~" />
     <!-- Key Password -->
     <property name="jalview.key.pass" value="alignmentisfun" />
 
-
-
     <!-- Don't change anything below here unless you know what you are doing! -->
     <!-- Url path for WebStart in JNLP file -->
     <property name="WebStartLocation" value="http://www.jalview.org/webstart" />
     <!-- Webstart Image - looked for in resources/images -->
     <property name="WebStartImage" value="JalviewLogo_big.png"/>
     <!-- J2SE version needed for webstart launch -->
-    <property name="j2sev" value="1.6+"/>
+    <!-- Anne's version needs 1.7 - should rebuild VARNA to java 1.6 for release -->
+    <property name="j2sev" value="1.7+"/>
 
     <!-- Permissions for running Java applets and applications. -->
     <!-- Defaults are those suitable for deploying jalview webstart www.jalview.org -->
     <property name="outputJar" value="jalview.jar" />
     <!-- Jalview Applet JMol Jar Dependency -->
     <property name="jmolJar" value="JmolApplet-12.2.4.jar" />
+    <property name="varnaJar" value="VARNAv3-9.jar" />
     <property name="jalviewLiteJar" value="jalviewApplet.jar" />
     <!-- switch to indicate if we should obfuscate jalviewLite -->
     <!-- <property name="donotobfuscate" value="true"/> -->
         <!-- the JmolApplet includes the JmolApplet console and the application javac seems to always try and build all packages 
                                -->
         <include name="${jmolJar}" />
+        <include name="${varnaJar}" />
       </fileset>
 
     </path>
     <property name="source.dist.name" value="${basedir}/jalview-src.tar.gz" />
     <!-- The Location of the java 1.1.8 jdk -->
-    <!--<property name="java118.home" value="C:\Sun\jdk1.1.8" />
-               -->
+    <!--<property name="java118.home" value="C:\Sun\jdk1.1.8" /> -->
     <property name="java118.home" value="${java.home}" />
-    <!--<property name="applet.jre.tools" value="${java118.home}/lib/classes.zip" />
+    <!-- <property name="applet.jre.tools" value="${java118.home}/lib/classes.zip" />
                -->
     <!-- jre for 1.4 version -->
     <property name="applet.jre.tools" value="${java.home}/lib/rt.jar"/>
         <include name="plugin.jar"/>
       </fileset>
       <pathelement location="appletlib/${jmolJar}" />
+      <pathelement location="lib/${varnaJar}" />
     </path>
     <!-- default location for outputting javadoc -->
     <property name="javadocDir" value="${packageDir}/javadoc"/>
     </presetdef>
 
     <jnlpf toFile="${jnlpFile}"/>
-  
+
   </target>
-  
+
   <target name="-dofakejnlpfileassoc" depends="-generatejnlpf" if="nojnlpfileassocs">
     <echo message="Not adding JNLP File Associations"/>
   </target>
-  
+
   <target name="-dojnlpfileassoc" depends="-generatejnlpf" unless="nojnlpfileassocs">
     <replace file="${jnlpFile}">
       <replacetoken>
         <association mime-type="application-x/ext-file" extensions="stk"/>
         <association mime-type="application-x/ext-file" extensions="jvp"/>
       </information>]]></replacevalue>
-    </replace>
-    <echo message="Added file associations to JNLP file"/>
-    </target>
+  </replace>
+  <echo message="Added file associations to JNLP file"/>
+</target>
 <target name="writejnlpf" depends="-dojnlpfileassoc,-dofakejnlpfileassoc">
 </target>
 
   <mkdir dir="${outputDir}" />
   <javac source="1.5" target="1.5" srcdir="${sourceDir}" destdir="${outputDir}" debug="${javac.debug}" 
                        classpathref="jalviewlite.deps" includes="jalview/appletgui/**"
-                       excludes="ext/**,MCview/**,org/**,vamsas/**" />
+                       excludes="ext/**,MCview/**,org/**,vamsas/**,jalview/ext/paradise/**" />
 </target>
 
 <target name="packageApplet" depends="compileApplet, buildPropertiesFile">
index 5556629..0cb58c6 100644 (file)
@@ -1,6 +1,6 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
diff --git a/doc/AnnotationPostAnalysis.txt b/doc/AnnotationPostAnalysis.txt
new file mode 100644 (file)
index 0000000..f53533f
--- /dev/null
@@ -0,0 +1,39 @@
+Init.
+optimise rendering - use same model as alignment but with vertical binary sweep to select range of annotation to render:
+Vertical interval list
+. run length compress the sizes -> n_i * v_height_i -> label each node - total and accumulated total vertical pos (under current visibility settings ?)
+--> ins/delete/hide/show of one or more contiguous individual rows causes local -> global update of position sums.
+--
+. 
+indexOf(VPosition in annotation display window),
+VPositionOf(AnnotationI)
+
+0.
+i. Hide/show by whole annotation set id
+ii. move to top/bottom
+iii. 
+
+1. Summarising annotation
+{ Annotation Class ID 
+|_ { Type string } }
+-> 
+
+Simple modal : 
+- Proportion of sequences with most frequent symbol
+- symbol logo
+[ option to drill down and subselect based on particular symbol or subdivide by all symbols ]
+
+3. Clustering based on annotation
+A few routes:
+use built in PCA calculation to do scalar product based analysis of one or many annotation vectors.
+Sliding window over alignment doing pca at each point. Analyse trajectories through PCA ?  (see maximum/minimum and stretches of local similarity)
+
+
+* ''' ACCESS ALL MENUS '''
+-> allow context popup to show all window submenus
+{ local relevant }
+{ Parent window -> file,edit,etc }
+{ Desktop -> File, Tools, ... }
+{ other areas more distant - e.g. sequence/annotation ID popup from middle of alignment/annotation area }
\ No newline at end of file
index e068f3b..23124f4 100644 (file)
@@ -1,6 +1,6 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
index 04639d5..59f4dc3 100755 (executable)
@@ -1,6 +1,6 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
index 330a156..0e73294 100644 (file)
@@ -1,6 +1,6 @@
 <!DOCTYPE html SYSTEM "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
index 7d3a278..c551491 100644 (file)
@@ -1,6 +1,6 @@
 <!DOCTYPE html SYSTEM "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
index e564371..d77fc97 100644 (file)
@@ -1,6 +1,6 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
index f333ebc..11c7f65 100644 (file)
@@ -1,5 +1,5 @@
 /**
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
index 159d07e..27a3f0d 100644 (file)
@@ -1,5 +1,5 @@
 /**
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
index 17a8f7b..71df1ed 100644 (file)
@@ -1,5 +1,5 @@
 /**
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
index 344182b..61a39e9 100644 (file)
@@ -1,5 +1,5 @@
 /**
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
index c16c3d8..85fd06f 100755 (executable)
@@ -1,5 +1,5 @@
 #-------------------------------------------------------------------------------
-# Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+# Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
 # Copyright (C) 2014 The Jalview Authors
 # 
 # This file is part of Jalview.
index c9e5d1e..7890854 100644 (file)
@@ -1,5 +1,5 @@
 /**
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
index d42b314..b0daf29 100644 (file)
@@ -1,6 +1,6 @@
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
diff --git a/examples/2GIS.pdb b/examples/2GIS.pdb
new file mode 100644 (file)
index 0000000..7a51ef1
--- /dev/null
@@ -0,0 +1,2693 @@
+HEADER    RNA                                     29-MAR-06   2GIS              
+TITLE     STRUCTURE OF THE S-ADENOSYLMETHIONINE RIBOSWITCH MRNA                 
+TITLE    2 REGULATORY ELEMENT                                                   
+COMPND    MOL_ID: 1;                                                            
+COMPND   2 MOLECULE: SAM-I RIBOSWITCH;                                          
+COMPND   3 CHAIN: A;                                                            
+COMPND   4 ENGINEERED: YES                                                      
+SOURCE    MOL_ID: 1;                                                            
+SOURCE   2 SYNTHETIC: YES;                                                      
+SOURCE   3 OTHER_DETAILS: THIS SEQUENCE WAS ENGINEERED BASED ON THE             
+SOURCE   4 SAM-I RIBOSWITCH FROM THE METF-METH OPERON IN                        
+SOURCE   5 THERMOANAEROBACTER TENGCONGENSIS                                     
+KEYWDS    MRNA, RIBOSWITCH, S-ADENOSYLMETHIONINE, SAM, RNA-LIGAND               
+KEYWDS   2 COMPLEX                                                              
+EXPDTA    X-RAY DIFFRACTION                                                     
+AUTHOR    R.K.MONTANGE,R.T.BATEY                                                
+REVDAT   2   24-FEB-09 2GIS    1       VERSN                                    
+REVDAT   1   04-JUL-06 2GIS    0                                                
+JRNL        AUTH   R.K.MONTANGE,R.T.BATEY                                       
+JRNL        TITL   STRUCTURE OF THE S-ADENOSYLMETHIONINE RIBOSWITCH             
+JRNL        TITL 2 REGULATORY MRNA ELEMENT.                                     
+JRNL        REF    NATURE                        V. 441  1172 2006              
+JRNL        REFN                   ISSN 0028-0836                               
+JRNL        PMID   16810258                                                     
+JRNL        DOI    10.1038/NATURE04819                                          
+REMARK   1                                                                      
+REMARK   2                                                                      
+REMARK   2 RESOLUTION.    2.90 ANGSTROMS.                                       
+REMARK   3                                                                      
+REMARK   3 REFINEMENT.                                                          
+REMARK   3   PROGRAM     : CNS 1.1                                              
+REMARK   3   AUTHORS     : BRUNGER,ADAMS,CLORE,DELANO,GROS,GROSSE-              
+REMARK   3               : KUNSTLEVE,JIANG,KUSZEWSKI,NILGES, PANNU,             
+REMARK   3               : READ,RICE,SIMONSON,WARREN                            
+REMARK   3                                                                      
+REMARK   3  REFINEMENT TARGET : ENGH & HUBER                                    
+REMARK   3                                                                      
+REMARK   3  DATA USED IN REFINEMENT.                                            
+REMARK   3   RESOLUTION RANGE HIGH (ANGSTROMS) : 2.90                           
+REMARK   3   RESOLUTION RANGE LOW  (ANGSTROMS) : 49.32                          
+REMARK   3   DATA CUTOFF            (SIGMA(F)) : 0.000                          
+REMARK   3   DATA CUTOFF HIGH         (ABS(F)) : 441185.100                     
+REMARK   3   DATA CUTOFF LOW          (ABS(F)) : 0.0000                         
+REMARK   3   COMPLETENESS (WORKING+TEST)   (%) : 99.3                           
+REMARK   3   NUMBER OF REFLECTIONS             : 13415                          
+REMARK   3                                                                      
+REMARK   3  FIT TO DATA USED IN REFINEMENT.                                     
+REMARK   3   CROSS-VALIDATION METHOD          : THROUGHOUT                      
+REMARK   3   FREE R VALUE TEST SET SELECTION  : RANDOM                          
+REMARK   3   R VALUE            (WORKING SET) : 0.266                           
+REMARK   3   FREE R VALUE                     : 0.289                           
+REMARK   3   FREE R VALUE TEST SET SIZE   (%) : 7.400                           
+REMARK   3   FREE R VALUE TEST SET COUNT      : 999                             
+REMARK   3   ESTIMATED ERROR OF FREE R VALUE  : 0.009                           
+REMARK   3                                                                      
+REMARK   3  FIT IN THE HIGHEST RESOLUTION BIN.                                  
+REMARK   3   TOTAL NUMBER OF BINS USED           : 6                            
+REMARK   3   BIN RESOLUTION RANGE HIGH       (A) : 2.90                         
+REMARK   3   BIN RESOLUTION RANGE LOW        (A) : 3.08                         
+REMARK   3   BIN COMPLETENESS (WORKING+TEST) (%) : 98.90                        
+REMARK   3   REFLECTIONS IN BIN    (WORKING SET) : 2056                         
+REMARK   3   BIN R VALUE           (WORKING SET) : 0.4270                       
+REMARK   3   BIN FREE R VALUE                    : 0.4160                       
+REMARK   3   BIN FREE R VALUE TEST SET SIZE  (%) : 7.30                         
+REMARK   3   BIN FREE R VALUE TEST SET COUNT     : 162                          
+REMARK   3   ESTIMATED ERROR OF BIN FREE R VALUE : 0.033                        
+REMARK   3                                                                      
+REMARK   3  NUMBER OF NON-HYDROGEN ATOMS USED IN REFINEMENT.                    
+REMARK   3   PROTEIN ATOMS            : 0                                       
+REMARK   3   NUCLEIC ACID ATOMS       : 2029                                    
+REMARK   3   HETEROGEN ATOMS          : 57                                      
+REMARK   3   SOLVENT ATOMS            : 88                                      
+REMARK   3                                                                      
+REMARK   3  B VALUES.                                                           
+REMARK   3   FROM WILSON PLOT           (A**2) : 139.30                         
+REMARK   3   MEAN B VALUE      (OVERALL, A**2) : 69.60                          
+REMARK   3   OVERALL ANISOTROPIC B VALUE.                                       
+REMARK   3    B11 (A**2) : 11.87000                                             
+REMARK   3    B22 (A**2) : 11.87000                                             
+REMARK   3    B33 (A**2) : -23.74000                                            
+REMARK   3    B12 (A**2) : 0.00000                                              
+REMARK   3    B13 (A**2) : 0.00000                                              
+REMARK   3    B23 (A**2) : 0.00000                                              
+REMARK   3                                                                      
+REMARK   3  ESTIMATED COORDINATE ERROR.                                         
+REMARK   3   ESD FROM LUZZATI PLOT        (A) : 0.39                            
+REMARK   3   ESD FROM SIGMAA              (A) : 0.39                            
+REMARK   3   LOW RESOLUTION CUTOFF        (A) : 5.00                            
+REMARK   3                                                                      
+REMARK   3  CROSS-VALIDATED ESTIMATED COORDINATE ERROR.                         
+REMARK   3   ESD FROM C-V LUZZATI PLOT    (A) : 0.48                            
+REMARK   3   ESD FROM C-V SIGMAA          (A) : 0.35                            
+REMARK   3                                                                      
+REMARK   3  RMS DEVIATIONS FROM IDEAL VALUES.                                   
+REMARK   3   BOND LENGTHS                 (A) : 0.010                           
+REMARK   3   BOND ANGLES            (DEGREES) : 1.60                            
+REMARK   3   DIHEDRAL ANGLES        (DEGREES) : 17.30                           
+REMARK   3   IMPROPER ANGLES        (DEGREES) : 2.31                            
+REMARK   3                                                                      
+REMARK   3  ISOTROPIC THERMAL MODEL : RESTRAINED                                
+REMARK   3                                                                      
+REMARK   3  ISOTROPIC THERMAL FACTOR RESTRAINTS.    RMS    SIGMA                
+REMARK   3   MAIN-CHAIN BOND              (A**2) : 1.380 ; 1.500                
+REMARK   3   MAIN-CHAIN ANGLE             (A**2) : 2.560 ; 2.000                
+REMARK   3   SIDE-CHAIN BOND              (A**2) : 1.630 ; 2.000                
+REMARK   3   SIDE-CHAIN ANGLE             (A**2) : 2.610 ; 2.500                
+REMARK   3                                                                      
+REMARK   3  BULK SOLVENT MODELING.                                              
+REMARK   3   METHOD USED : FLAT MODEL                                           
+REMARK   3   KSOL        : 0.88                                                 
+REMARK   3   BSOL        : 300.00                                               
+REMARK   3                                                                      
+REMARK   3  NCS MODEL : NULL                                                    
+REMARK   3                                                                      
+REMARK   3  NCS RESTRAINTS.                         RMS   SIGMA/WEIGHT          
+REMARK   3   GROUP  1  POSITIONAL            (A) : NULL  ; NULL                 
+REMARK   3   GROUP  1  B-FACTOR           (A**2) : NULL  ; NULL                 
+REMARK   3                                                                      
+REMARK   3  PARAMETER FILE  1  : DNA-RNA_REP.PARAM                              
+REMARK   3  PARAMETER FILE  2  : ION2.PARAM                                     
+REMARK   3  PARAMETER FILE  3  : SAM3.PARAM                                     
+REMARK   3  PARAMETER FILE  4  : WATER_REP.PARAM                                
+REMARK   3  PARAMETER FILE  5  : NULL                                           
+REMARK   3  TOPOLOGY FILE  1   : DNA-RNA_REP.TOP                                
+REMARK   3  TOPOLOGY FILE  2   : ION2.TOP                                       
+REMARK   3  TOPOLOGY FILE  3   : SAM3.TOP                                       
+REMARK   3  TOPOLOGY FILE  4   : WATER_REP.TOP                                  
+REMARK   3  TOPOLOGY FILE  5   : NULL                                           
+REMARK   3                                                                      
+REMARK   3  OTHER REFINEMENT REMARKS: NULL                                      
+REMARK   4                                                                      
+REMARK   4 2GIS COMPLIES WITH FORMAT V. 3.15, 01-DEC-08                         
+REMARK 100                                                                      
+REMARK 100 THIS ENTRY HAS BEEN PROCESSED BY RCSB ON 14-APR-06.                  
+REMARK 100 THE RCSB ID CODE IS RCSB037170.                                      
+REMARK 200                                                                      
+REMARK 200 EXPERIMENTAL DETAILS                                                 
+REMARK 200  EXPERIMENT TYPE                : X-RAY DIFFRACTION                  
+REMARK 200  DATE OF DATA COLLECTION        : 11-NOV-05                          
+REMARK 200  TEMPERATURE           (KELVIN) : 100                                
+REMARK 200  PH                             : NULL                               
+REMARK 200  NUMBER OF CRYSTALS USED        : 1                                  
+REMARK 200                                                                      
+REMARK 200  SYNCHROTRON              (Y/N) : Y                                  
+REMARK 200  RADIATION SOURCE               : ALS                                
+REMARK 200  BEAMLINE                       : 8.2.1                              
+REMARK 200  X-RAY GENERATOR MODEL          : NULL                               
+REMARK 200  MONOCHROMATIC OR LAUE    (M/L) : M                                  
+REMARK 200  WAVELENGTH OR RANGE        (A) : 1.10532, 1.10573                   
+REMARK 200  MONOCHROMATOR                  : NULL                               
+REMARK 200  OPTICS                         : NULL                               
+REMARK 200                                                                      
+REMARK 200  DETECTOR TYPE                  : CCD                                
+REMARK 200  DETECTOR MANUFACTURER          : ADSC QUANTUM 315                   
+REMARK 200  INTENSITY-INTEGRATION SOFTWARE : BOS                                
+REMARK 200  DATA SCALING SOFTWARE          : D*TREK                             
+REMARK 200                                                                      
+REMARK 200  NUMBER OF UNIQUE REFLECTIONS   : 14940                              
+REMARK 200  RESOLUTION RANGE HIGH      (A) : 2.900                              
+REMARK 200  RESOLUTION RANGE LOW       (A) : 49.320                             
+REMARK 200  REJECTION CRITERIA  (SIGMA(I)) : 3.000                              
+REMARK 200                                                                      
+REMARK 200 OVERALL.                                                             
+REMARK 200  COMPLETENESS FOR RANGE     (%) : 99.6                               
+REMARK 200  DATA REDUNDANCY                : 14.640                             
+REMARK 200  R MERGE                    (I) : 0.07200                            
+REMARK 200  R SYM                      (I) : NULL                               
+REMARK 200  <I/SIGMA(I)> FOR THE DATA SET  : 17.9000                            
+REMARK 200                                                                      
+REMARK 200 IN THE HIGHEST RESOLUTION SHELL.                                     
+REMARK 200  HIGHEST RESOLUTION SHELL, RANGE HIGH (A) : 2.90                     
+REMARK 200  HIGHEST RESOLUTION SHELL, RANGE LOW  (A) : 3.08                     
+REMARK 200  COMPLETENESS FOR SHELL     (%) : 99.9                               
+REMARK 200  DATA REDUNDANCY IN SHELL       : 11.74                              
+REMARK 200  R MERGE FOR SHELL          (I) : 0.42600                            
+REMARK 200  R SYM FOR SHELL            (I) : NULL                               
+REMARK 200  <I/SIGMA(I)> FOR SHELL         : 4.400                              
+REMARK 200                                                                      
+REMARK 200 DIFFRACTION PROTOCOL: MAD                                            
+REMARK 200 METHOD USED TO DETERMINE THE STRUCTURE: MAD                          
+REMARK 200 SOFTWARE USED: CNS                                                   
+REMARK 200 STARTING MODEL: NULL                                                 
+REMARK 200                                                                      
+REMARK 200 REMARK: NULL                                                         
+REMARK 280                                                                      
+REMARK 280 CRYSTAL                                                              
+REMARK 280 SOLVENT CONTENT, VS   (%): 52.20                                     
+REMARK 280 MATTHEWS COEFFICIENT, VM (ANGSTROMS**3/DA): 2.57                     
+REMARK 280                                                                      
+REMARK 280 CRYSTALLIZATION CONDITIONS: NULL                                     
+REMARK 290                                                                      
+REMARK 290 CRYSTALLOGRAPHIC SYMMETRY                                            
+REMARK 290 SYMMETRY OPERATORS FOR SPACE GROUP: P 43 21 2                        
+REMARK 290                                                                      
+REMARK 290      SYMOP   SYMMETRY                                                
+REMARK 290     NNNMMM   OPERATOR                                                
+REMARK 290       1555   X,Y,Z                                                   
+REMARK 290       2555   -X,-Y,Z+1/2                                             
+REMARK 290       3555   -Y+1/2,X+1/2,Z+3/4                                      
+REMARK 290       4555   Y+1/2,-X+1/2,Z+1/4                                      
+REMARK 290       5555   -X+1/2,Y+1/2,-Z+3/4                                     
+REMARK 290       6555   X+1/2,-Y+1/2,-Z+1/4                                     
+REMARK 290       7555   Y,X,-Z                                                  
+REMARK 290       8555   -Y,-X,-Z+1/2                                            
+REMARK 290                                                                      
+REMARK 290     WHERE NNN -> OPERATOR NUMBER                                     
+REMARK 290           MMM -> TRANSLATION VECTOR                                  
+REMARK 290                                                                      
+REMARK 290 CRYSTALLOGRAPHIC SYMMETRY TRANSFORMATIONS                            
+REMARK 290 THE FOLLOWING TRANSFORMATIONS OPERATE ON THE ATOM/HETATM             
+REMARK 290 RECORDS IN THIS ENTRY TO PRODUCE CRYSTALLOGRAPHICALLY                
+REMARK 290 RELATED MOLECULES.                                                   
+REMARK 290   SMTRY1   1  1.000000  0.000000  0.000000        0.00000            
+REMARK 290   SMTRY2   1  0.000000  1.000000  0.000000        0.00000            
+REMARK 290   SMTRY3   1  0.000000  0.000000  1.000000        0.00000            
+REMARK 290   SMTRY1   2 -1.000000  0.000000  0.000000        0.00000            
+REMARK 290   SMTRY2   2  0.000000 -1.000000  0.000000        0.00000            
+REMARK 290   SMTRY3   2  0.000000  0.000000  1.000000       79.48350            
+REMARK 290   SMTRY1   3  0.000000 -1.000000  0.000000       31.45050            
+REMARK 290   SMTRY2   3  1.000000  0.000000  0.000000       31.45050            
+REMARK 290   SMTRY3   3  0.000000  0.000000  1.000000      119.22525            
+REMARK 290   SMTRY1   4  0.000000  1.000000  0.000000       31.45050            
+REMARK 290   SMTRY2   4 -1.000000  0.000000  0.000000       31.45050            
+REMARK 290   SMTRY3   4  0.000000  0.000000  1.000000       39.74175            
+REMARK 290   SMTRY1   5 -1.000000  0.000000  0.000000       31.45050            
+REMARK 290   SMTRY2   5  0.000000  1.000000  0.000000       31.45050            
+REMARK 290   SMTRY3   5  0.000000  0.000000 -1.000000      119.22525            
+REMARK 290   SMTRY1   6  1.000000  0.000000  0.000000       31.45050            
+REMARK 290   SMTRY2   6  0.000000 -1.000000  0.000000       31.45050            
+REMARK 290   SMTRY3   6  0.000000  0.000000 -1.000000       39.74175            
+REMARK 290   SMTRY1   7  0.000000  1.000000  0.000000        0.00000            
+REMARK 290   SMTRY2   7  1.000000  0.000000  0.000000        0.00000            
+REMARK 290   SMTRY3   7  0.000000  0.000000 -1.000000        0.00000            
+REMARK 290   SMTRY1   8  0.000000 -1.000000  0.000000        0.00000            
+REMARK 290   SMTRY2   8 -1.000000  0.000000  0.000000        0.00000            
+REMARK 290   SMTRY3   8  0.000000  0.000000 -1.000000       79.48350            
+REMARK 290                                                                      
+REMARK 290 REMARK: NULL                                                         
+REMARK 300                                                                      
+REMARK 300 BIOMOLECULE: 1                                                       
+REMARK 300 SEE REMARK 350 FOR THE AUTHOR PROVIDED AND/OR PROGRAM                
+REMARK 300 GENERATED ASSEMBLY INFORMATION FOR THE STRUCTURE IN                  
+REMARK 300 THIS ENTRY. THE REMARK MAY ALSO PROVIDE INFORMATION ON               
+REMARK 300 BURIED SURFACE AREA.                                                 
+REMARK 350                                                                      
+REMARK 350 COORDINATES FOR A COMPLETE MULTIMER REPRESENTING THE KNOWN           
+REMARK 350 BIOLOGICALLY SIGNIFICANT OLIGOMERIZATION STATE OF THE                
+REMARK 350 MOLECULE CAN BE GENERATED BY APPLYING BIOMT TRANSFORMATIONS          
+REMARK 350 GIVEN BELOW.  BOTH NON-CRYSTALLOGRAPHIC AND                          
+REMARK 350 CRYSTALLOGRAPHIC OPERATIONS ARE GIVEN.                               
+REMARK 350                                                                      
+REMARK 350 BIOMOLECULE: 1                                                       
+REMARK 350 AUTHOR DETERMINED BIOLOGICAL UNIT: MONOMERIC                         
+REMARK 350 APPLY THE FOLLOWING TO CHAINS: A                                     
+REMARK 350   BIOMT1   1  1.000000  0.000000  0.000000        0.00000            
+REMARK 350   BIOMT2   1  0.000000  1.000000  0.000000        0.00000            
+REMARK 350   BIOMT3   1  0.000000  0.000000  1.000000        0.00000            
+REMARK 500                                                                      
+REMARK 500 GEOMETRY AND STEREOCHEMISTRY                                         
+REMARK 500 SUBTOPIC: CLOSE CONTACTS IN SAME ASYMMETRIC UNIT                     
+REMARK 500                                                                      
+REMARK 500 THE FOLLOWING ATOMS ARE IN CLOSE CONTACT.                            
+REMARK 500                                                                      
+REMARK 500  ATM1  RES C  SSEQI   ATM2  RES C  SSEQI           DISTANCE          
+REMARK 500   O2'  A   A    20     O4'  G   A    21              2.13            
+REMARK 500   O2'  A   A    20     OP2  G   A    21              2.18            
+REMARK 500                                                                      
+REMARK 500 REMARK: NULL                                                         
+REMARK 500                                                                      
+REMARK 500 GEOMETRY AND STEREOCHEMISTRY                                         
+REMARK 500 SUBTOPIC: CLOSE CONTACTS                                             
+REMARK 500                                                                      
+REMARK 500 THE FOLLOWING ATOMS THAT ARE RELATED BY CRYSTALLOGRAPHIC             
+REMARK 500 SYMMETRY ARE IN CLOSE CONTACT.  AN ATOM LOCATED WITHIN 0.15          
+REMARK 500 ANGSTROMS OF A SYMMETRY RELATED ATOM IS ASSUMED TO BE ON A           
+REMARK 500 SPECIAL POSITION AND IS, THEREFORE, LISTED IN REMARK 375             
+REMARK 500 INSTEAD OF REMARK 500.  ATOMS WITH NON-BLANK ALTERNATE               
+REMARK 500 LOCATION INDICATORS ARE NOT INCLUDED IN THE CALCULATIONS.            
+REMARK 500                                                                      
+REMARK 500 DISTANCE CUTOFF:                                                     
+REMARK 500 2.2 ANGSTROMS FOR CONTACTS NOT INVOLVING HYDROGEN ATOMS              
+REMARK 500 1.6 ANGSTROMS FOR CONTACTS INVOLVING HYDROGEN ATOMS                  
+REMARK 500                                                                      
+REMARK 500  ATM1  RES C  SSEQI   ATM2  RES C  SSEQI  SSYMOP   DISTANCE          
+REMARK 500   N3   IRI A   201     N3   IRI A   201     7555     1.02            
+REMARK 500  IR    IRI A   201     N3   IRI A   201     7555     2.10            
+REMARK 500                                                                      
+REMARK 500 REMARK: NULL                                                         
+REMARK 500                                                                      
+REMARK 500 GEOMETRY AND STEREOCHEMISTRY                                         
+REMARK 500 SUBTOPIC: COVALENT BOND LENGTHS                                      
+REMARK 500                                                                      
+REMARK 500 THE STEREOCHEMICAL PARAMETERS OF THE FOLLOWING RESIDUES              
+REMARK 500 HAVE VALUES WHICH DEVIATE FROM EXPECTED VALUES BY MORE               
+REMARK 500 THAN 6*RMSD (M=MODEL NUMBER; RES=RESIDUE NAME; C=CHAIN               
+REMARK 500 IDENTIFIER; SSEQ=SEQUENCE NUMBER; I=INSERTION CODE).                 
+REMARK 500                                                                      
+REMARK 500 STANDARD TABLE:                                                      
+REMARK 500 FORMAT: (10X,I3,1X,2(A3,1X,A1,I4,A1,1X,A4,3X),1X,F6.3)               
+REMARK 500                                                                      
+REMARK 500 EXPECTED VALUES PROTEIN: ENGH AND HUBER, 1999                        
+REMARK 500 EXPECTED VALUES NUCLEIC ACID: CLOWNEY ET AL 1996                     
+REMARK 500                                                                      
+REMARK 500  M RES CSSEQI ATM1   RES CSSEQI ATM2   DEVIATION                     
+REMARK 500      G A   1   P       G A   1   OP3    -0.078                       
+REMARK 500                                                                      
+REMARK 500 REMARK: NULL                                                         
+REMARK 500                                                                      
+REMARK 500 GEOMETRY AND STEREOCHEMISTRY                                         
+REMARK 500 SUBTOPIC: COVALENT BOND ANGLES                                       
+REMARK 500                                                                      
+REMARK 500 THE STEREOCHEMICAL PARAMETERS OF THE FOLLOWING RESIDUES              
+REMARK 500 HAVE VALUES WHICH DEVIATE FROM EXPECTED VALUES BY MORE               
+REMARK 500 THAN 6*RMSD (M=MODEL NUMBER; RES=RESIDUE NAME; C=CHAIN               
+REMARK 500 IDENTIFIER; SSEQ=SEQUENCE NUMBER; I=INSERTION CODE).                 
+REMARK 500                                                                      
+REMARK 500 STANDARD TABLE:                                                      
+REMARK 500 FORMAT: (10X,I3,1X,A3,1X,A1,I4,A1,3(1X,A4,2X),12X,F5.1)              
+REMARK 500                                                                      
+REMARK 500 EXPECTED VALUES PROTEIN: ENGH AND HUBER, 1999                        
+REMARK 500 EXPECTED VALUES NUCLEIC ACID: CLOWNEY ET AL 1996                     
+REMARK 500                                                                      
+REMARK 500  M RES CSSEQI ATM1   ATM2   ATM3                                     
+REMARK 500      A A   9   C2' -  C3' -  O3' ANGL. DEV. =  12.3 DEGREES          
+REMARK 500      A A  33   C2' -  C3' -  O3' ANGL. DEV. =  12.6 DEGREES          
+REMARK 500      G A  50   C4' -  C3' -  O3' ANGL. DEV. =  13.7 DEGREES          
+REMARK 500      G A  50   C2' -  C3' -  O3' ANGL. DEV. =  10.0 DEGREES          
+REMARK 500      G A  50   N9  -  C1' -  C2' ANGL. DEV. =  -8.2 DEGREES          
+REMARK 500      U A  63   C2' -  C3' -  O3' ANGL. DEV. =  15.3 DEGREES          
+REMARK 500      G A  74   C4' -  C3' -  O3' ANGL. DEV. =  12.7 DEGREES          
+REMARK 500      G A  74   C2' -  C3' -  O3' ANGL. DEV. =  11.3 DEGREES          
+REMARK 500      G A  74   N9  -  C1' -  C2' ANGL. DEV. =  -7.3 DEGREES          
+REMARK 500                                                                      
+REMARK 500 REMARK: NULL                                                         
+REMARK 500                                                                      
+REMARK 500 GEOMETRY AND STEREOCHEMISTRY                                         
+REMARK 500 SUBTOPIC: PLANAR GROUPS                                              
+REMARK 500                                                                      
+REMARK 500 PLANAR GROUPS IN THE FOLLOWING RESIDUES HAVE A TOTAL                 
+REMARK 500 RMS DISTANCE OF ALL ATOMS FROM THE BEST-FIT PLANE                    
+REMARK 500 BY MORE THAN AN EXPECTED VALUE OF 6*RMSD, WITH AN                    
+REMARK 500 RMSD 0.02 ANGSTROMS, OR AT LEAST ONE ATOM HAS                        
+REMARK 500 AN RMSD GREATER THAN THIS VALUE                                      
+REMARK 500 (M=MODEL NUMBER; RES=RESIDUE NAME; C=CHAIN IDENTIFIER;               
+REMARK 500 SSEQ=SEQUENCE NUMBER; I=INSERTION CODE).                             
+REMARK 500                                                                      
+REMARK 500  M RES CSSEQI        RMS     TYPE                                    
+REMARK 500      G A  19         0.05    SIDE_CHAIN                              
+REMARK 500      G A  35         0.06    SIDE_CHAIN                              
+REMARK 500      G A  50         0.07    SIDE_CHAIN                              
+REMARK 500      U A  67         0.08    SIDE_CHAIN                              
+REMARK 500      G A  74         0.08    SIDE_CHAIN                              
+REMARK 500                                                                      
+REMARK 500 REMARK: NULL                                                         
+REMARK 620                                                                      
+REMARK 620 METAL COORDINATION                                                   
+REMARK 620  (M=MODEL NUMBER; RES=RESIDUE NAME; C=CHAIN IDENTIFIER;              
+REMARK 620  SSEQ=SEQUENCE NUMBER; I=INSERTION CODE):                            
+REMARK 620                                                                      
+REMARK 620 COORDINATION ANGLES FOR:  M RES CSSEQI METAL                         
+REMARK 620                              MG A 205  MG                            
+REMARK 620 N RES CSSEQI ATOM                                                    
+REMARK 620 1   A A  10   OP2                                                    
+REMARK 620 2   U A  63   O3'  95.0                                              
+REMARK 620 3   U A  64   OP2 133.2  53.2                                        
+REMARK 620 N                    1     2                                         
+REMARK 620                                                                      
+REMARK 620 COORDINATION ANGLES FOR:  M RES CSSEQI METAL                         
+REMARK 620                              MG A 206  MG                            
+REMARK 620 N RES CSSEQI ATOM                                                    
+REMARK 620 1   A A  84   O5'                                                    
+REMARK 620 2   A A  84   O3' 115.5                                              
+REMARK 620 3   A A  85   OP2 130.4  63.5                                        
+REMARK 620 4   A A  84   OP1  62.8 164.4 130.5                                  
+REMARK 620 N                    1     2     3                                   
+REMARK 800                                                                      
+REMARK 800 SITE                                                                 
+REMARK 800 SITE_IDENTIFIER: AC1                                                 
+REMARK 800 EVIDENCE_CODE: SOFTWARE                                              
+REMARK 800 SITE_DESCRIPTION: BINDING SITE FOR RESIDUE MG A 205                  
+REMARK 800 SITE_IDENTIFIER: AC2                                                 
+REMARK 800 EVIDENCE_CODE: SOFTWARE                                              
+REMARK 800 SITE_DESCRIPTION: BINDING SITE FOR RESIDUE MG A 206                  
+REMARK 800 SITE_IDENTIFIER: AC3                                                 
+REMARK 800 EVIDENCE_CODE: SOFTWARE                                              
+REMARK 800 SITE_DESCRIPTION: BINDING SITE FOR RESIDUE IRI A 201                 
+REMARK 800 SITE_IDENTIFIER: AC4                                                 
+REMARK 800 EVIDENCE_CODE: SOFTWARE                                              
+REMARK 800 SITE_DESCRIPTION: BINDING SITE FOR RESIDUE IRI A 202                 
+REMARK 800 SITE_IDENTIFIER: AC5                                                 
+REMARK 800 EVIDENCE_CODE: SOFTWARE                                              
+REMARK 800 SITE_DESCRIPTION: BINDING SITE FOR RESIDUE IRI A 203                 
+REMARK 800 SITE_IDENTIFIER: AC6                                                 
+REMARK 800 EVIDENCE_CODE: SOFTWARE                                              
+REMARK 800 SITE_DESCRIPTION: BINDING SITE FOR RESIDUE IRI A 204                 
+REMARK 800 SITE_IDENTIFIER: AC7                                                 
+REMARK 800 EVIDENCE_CODE: SOFTWARE                                              
+REMARK 800 SITE_DESCRIPTION: BINDING SITE FOR RESIDUE SAM A 301                 
+DBREF  2GIS A    1    94  PDB    2GIS     2GIS             1     94             
+SEQRES   1 A   94    G   G   C   U   U   A   U   C   A   A   G   A   G          
+SEQRES   2 A   94    A   G   G   U   G   G   A   G   G   G   A   C   U          
+SEQRES   3 A   94    G   G   C   C   C   G   A   U   G   A   A   A   C          
+SEQRES   4 A   94    C   C   G   G   C   A   A   C   C   A   G   A   A          
+SEQRES   5 A   94    A   U   G   G   U   G   C   C   A   A   U   U   C          
+SEQRES   6 A   94    C   U   G   C   A   G   C   G   G   A   A   A   C          
+SEQRES   7 A   94    G   U   U   G   A   A   A   G   A   U   G   A   G          
+SEQRES   8 A   94    C   C   A                                                  
+HET     MG  A 205       1                                                       
+HET     MG  A 206       1                                                       
+HET    IRI  A 201       7                                                       
+HET    IRI  A 202       7                                                       
+HET    IRI  A 203       7                                                       
+HET    IRI  A 204       7                                                       
+HET    SAM  A 301      27                                                       
+HETNAM      MG MAGNESIUM ION                                                    
+HETNAM     IRI IRIDIUM HEXAMMINE ION                                            
+HETNAM     SAM S-ADENOSYLMETHIONINE                                             
+FORMUL   2   MG    2(MG 2+)                                                     
+FORMUL   4  IRI    4(H18 IR N6 3+)                                              
+FORMUL   8  SAM    C15 H22 N6 O5 S                                              
+FORMUL   9  HOH   *88(H2 O)                                                     
+LINK        MG    MG A 205                 OP2   A A  10     1555   1555  2.88  
+LINK        MG    MG A 205                 O3'   U A  63     1555   1555  2.88  
+LINK        MG    MG A 205                 OP2   U A  64     1555   1555  2.42  
+LINK        MG    MG A 206                 O5'   A A  84     1555   1555  1.93  
+LINK        MG    MG A 206                 O3'   A A  84     1555   1555  2.35  
+LINK        MG    MG A 206                 OP2   A A  85     1555   1555  2.46  
+LINK        MG    MG A 206                 OP1   A A  84     1555   1555  2.71  
+SITE     1 AC1  4   A A   9    A A  10    U A  63    U A  64                    
+SITE     1 AC2  2   A A  84    A A  85                                          
+SITE     1 AC3  5   C A  31    G A  32    A A  33    U A  34                    
+SITE     2 AC3  5 HOH A 448                                                     
+SITE     1 AC4  6   G A  15    G A  16    U A  17    G A  18                    
+SITE     2 AC4  6   A A  36    A A  38                                          
+SITE     1 AC5  6   G A  23    C A  25    U A  26    G A  27                    
+SITE     2 AC5  6   G A  28    C A  29                                          
+SITE     1 AC6  6   U A   4    U A   5    A A   6    U A  88                    
+SITE     2 AC6  6   G A  89  HOH A 475                                          
+SITE     1 AC7 11   U A   7    G A  11    A A  45    A A  46                    
+SITE     2 AC7 11   C A  47    U A  57    G A  58    C A  59                    
+SITE     3 AC7 11   U A  88    G A  89  HOH A 437                               
+CRYST1   62.901   62.901  158.967  90.00  90.00  90.00 P 43 21 2     8          
+ORIGX1      1.000000  0.000000  0.000000        0.00000                         
+ORIGX2      0.000000  1.000000  0.000000        0.00000                         
+ORIGX3      0.000000  0.000000  1.000000        0.00000                         
+SCALE1      0.015898  0.000000  0.000000        0.00000                         
+SCALE2      0.000000  0.015898  0.000000        0.00000                         
+SCALE3      0.000000  0.000000  0.006291        0.00000                         
+ATOM      1  OP3   G A   1      66.836  54.358  31.023  1.00 83.72           O  
+ATOM      2  P     G A   1      66.932  54.717  32.506  1.00 83.64           P  
+ATOM      3  OP1   G A   1      68.009  55.754  32.789  1.00 83.61           O  
+ATOM      4  OP2   G A   1      65.585  55.074  33.126  1.00 82.16           O  
+ATOM      5  O5'   G A   1      67.440  53.379  33.287  1.00 79.65           O  
+ATOM      6  C5'   G A   1      68.672  52.742  32.913  1.00 73.57           C  
+ATOM      7  C4'   G A   1      69.247  51.962  34.076  1.00 70.37           C  
+ATOM      8  O4'   G A   1      69.770  52.884  35.073  1.00 66.83           O  
+ATOM      9  C3'   G A   1      68.269  51.092  34.851  1.00 68.85           C  
+ATOM     10  O3'   G A   1      68.072  49.836  34.215  1.00 68.87           O  
+ATOM     11  C2'   G A   1      68.974  50.952  36.194  1.00 66.89           C  
+ATOM     12  O2'   G A   1      70.032  50.011  36.151  1.00 66.32           O  
+ATOM     13  C1'   G A   1      69.560  52.353  36.371  1.00 64.13           C  
+ATOM     14  N9    G A   1      68.630  53.226  37.076  1.00 60.62           N  
+ATOM     15  C8    G A   1      67.918  54.269  36.547  1.00 60.07           C  
+ATOM     16  N7    G A   1      67.123  54.838  37.412  1.00 59.30           N  
+ATOM     17  C5    G A   1      67.331  54.130  38.585  1.00 57.00           C  
+ATOM     18  C6    G A   1      66.738  54.282  39.860  1.00 55.77           C  
+ATOM     19  O6    G A   1      65.881  55.106  40.221  1.00 56.93           O  
+ATOM     20  N1    G A   1      67.233  53.352  40.767  1.00 54.01           N  
+ATOM     21  C2    G A   1      68.178  52.396  40.480  1.00 55.22           C  
+ATOM     22  N2    G A   1      68.526  51.581  41.489  1.00 54.38           N  
+ATOM     23  N3    G A   1      68.740  52.247  39.288  1.00 56.29           N  
+ATOM     24  C4    G A   1      68.270  53.140  38.397  1.00 57.86           C  
+ATOM     25  P     G A   2      66.612  49.156  34.222  1.00 69.18           P  
+ATOM     26  OP1   G A   2      66.706  47.977  33.323  1.00 70.02           O  
+ATOM     27  OP2   G A   2      65.566  50.194  33.985  1.00 68.86           O  
+ATOM     28  O5'   G A   2      66.442  48.597  35.701  1.00 66.97           O  
+ATOM     29  C5'   G A   2      67.276  47.544  36.152  1.00 62.30           C  
+ATOM     30  C4'   G A   2      67.252  47.457  37.651  1.00 59.60           C  
+ATOM     31  O4'   G A   2      67.506  48.784  38.198  1.00 56.42           O  
+ATOM     32  C3'   G A   2      65.898  47.105  38.233  1.00 59.17           C  
+ATOM     33  O3'   G A   2      65.645  45.711  38.175  1.00 60.55           O  
+ATOM     34  C2'   G A   2      66.007  47.655  39.650  1.00 56.90           C  
+ATOM     35  O2'   G A   2      66.780  46.829  40.499  1.00 57.29           O  
+ATOM     36  C1'   G A   2      66.787  48.946  39.405  1.00 54.02           C  
+ATOM     37  N9    G A   2      65.942  50.127  39.299  1.00 50.64           N  
+ATOM     38  C8    G A   2      65.753  50.932  38.206  1.00 50.83           C  
+ATOM     39  N7    G A   2      64.944  51.936  38.442  1.00 50.61           N  
+ATOM     40  C5    G A   2      64.573  51.774  39.768  1.00 48.72           C  
+ATOM     41  C6    G A   2      63.723  52.556  40.584  1.00 48.85           C  
+ATOM     42  O6    G A   2      63.108  53.584  40.289  1.00 50.52           O  
+ATOM     43  N1    G A   2      63.627  52.034  41.866  1.00 48.14           N  
+ATOM     44  C2    G A   2      64.268  50.902  42.311  1.00 47.93           C  
+ATOM     45  N2    G A   2      64.035  50.543  43.580  1.00 47.56           N  
+ATOM     46  N3    G A   2      65.071  50.172  41.568  1.00 48.14           N  
+ATOM     47  C4    G A   2      65.177  50.661  40.312  1.00 49.83           C  
+ATOM     48  P     C A   3      64.129  45.193  38.109  1.00 60.96           P  
+ATOM     49  OP1   C A   3      64.118  43.738  37.817  1.00 60.20           O  
+ATOM     50  OP2   C A   3      63.355  46.126  37.249  1.00 61.70           O  
+ATOM     51  O5'   C A   3      63.587  45.427  39.585  1.00 60.54           O  
+ATOM     52  C5'   C A   3      63.884  44.512  40.626  1.00 55.75           C  
+ATOM     53  C4'   C A   3      63.184  44.934  41.889  1.00 53.73           C  
+ATOM     54  O4'   C A   3      63.549  46.312  42.172  1.00 52.44           O  
+ATOM     55  C3'   C A   3      61.674  45.025  41.777  1.00 53.43           C  
+ATOM     56  O3'   C A   3      61.022  43.789  41.941  1.00 55.57           O  
+ATOM     57  C2'   C A   3      61.321  45.978  42.898  1.00 51.46           C  
+ATOM     58  O2'   C A   3      61.402  45.337  44.151  1.00 52.96           O  
+ATOM     59  C1'   C A   3      62.458  46.978  42.787  1.00 49.83           C  
+ATOM     60  N1    C A   3      62.072  48.135  41.979  1.00 46.39           N  
+ATOM     61  C2    C A   3      61.207  49.065  42.547  1.00 45.76           C  
+ATOM     62  O2    C A   3      60.800  48.861  43.692  1.00 47.45           O  
+ATOM     63  N3    C A   3      60.831  50.152  41.837  1.00 43.39           N  
+ATOM     64  C4    C A   3      61.290  50.323  40.602  1.00 44.39           C  
+ATOM     65  N4    C A   3      60.911  51.413  39.948  1.00 44.48           N  
+ATOM     66  C5    C A   3      62.168  49.382  39.986  1.00 45.55           C  
+ATOM     67  C6    C A   3      62.534  48.309  40.707  1.00 46.04           C  
+ATOM     68  P     U A   4      59.622  43.553  41.204  1.00 57.98           P  
+ATOM     69  OP1   U A   4      59.364  42.082  41.244  1.00 57.52           O  
+ATOM     70  OP2   U A   4      59.681  44.265  39.900  1.00 59.29           O  
+ATOM     71  O5'   U A   4      58.561  44.348  42.088  1.00 53.55           O  
+ATOM     72  C5'   U A   4      58.363  44.011  43.446  1.00 53.36           C  
+ATOM     73  C4'   U A   4      57.410  44.981  44.081  1.00 55.02           C  
+ATOM     74  O4'   U A   4      57.989  46.313  44.050  1.00 55.96           O  
+ATOM     75  C3'   U A   4      56.097  45.142  43.346  1.00 57.18           C  
+ATOM     76  O3'   U A   4      55.179  44.108  43.677  1.00 60.33           O  
+ATOM     77  C2'   U A   4      55.642  46.516  43.814  1.00 54.53           C  
+ATOM     78  O2'   U A   4      55.165  46.437  45.140  1.00 55.14           O  
+ATOM     79  C1'   U A   4      56.967  47.272  43.829  1.00 52.98           C  
+ATOM     80  N1    U A   4      57.269  47.986  42.580  1.00 49.42           N  
+ATOM     81  C2    U A   4      56.614  49.174  42.350  1.00 47.24           C  
+ATOM     82  O2    U A   4      55.771  49.612  43.103  1.00 45.38           O  
+ATOM     83  N3    U A   4      56.978  49.829  41.207  1.00 46.59           N  
+ATOM     84  C4    U A   4      57.903  49.416  40.282  1.00 48.90           C  
+ATOM     85  O4    U A   4      58.117  50.111  39.282  1.00 50.34           O  
+ATOM     86  C5    U A   4      58.523  48.162  40.580  1.00 48.98           C  
+ATOM     87  C6    U A   4      58.187  47.505  41.691  1.00 49.39           C  
+ATOM     88  P     U A   5      54.205  43.531  42.537  1.00 60.31           P  
+ATOM     89  OP1   U A   5      53.567  42.301  43.067  1.00 60.80           O  
+ATOM     90  OP2   U A   5      54.982  43.466  41.269  1.00 61.31           O  
+ATOM     91  O5'   U A   5      53.102  44.672  42.382  1.00 57.62           O  
+ATOM     92  C5'   U A   5      52.176  44.937  43.427  1.00 56.18           C  
+ATOM     93  C4'   U A   5      51.450  46.221  43.143  1.00 55.97           C  
+ATOM     94  O4'   U A   5      52.432  47.275  43.039  1.00 55.58           O  
+ATOM     95  C3'   U A   5      50.695  46.272  41.826  1.00 56.58           C  
+ATOM     96  O3'   U A   5      49.393  45.733  41.981  1.00 58.63           O  
+ATOM     97  C2'   U A   5      50.663  47.767  41.536  1.00 55.50           C  
+ATOM     98  O2'   U A   5      49.696  48.452  42.301  1.00 56.71           O  
+ATOM     99  C1'   U A   5      52.048  48.188  42.023  1.00 54.24           C  
+ATOM    100  N1    U A   5      53.071  48.125  40.974  1.00 50.31           N  
+ATOM    101  C2    U A   5      53.197  49.208  40.124  1.00 48.81           C  
+ATOM    102  O2    U A   5      52.488  50.194  40.204  1.00 48.14           O  
+ATOM    103  N3    U A   5      54.188  49.091  39.181  1.00 47.64           N  
+ATOM    104  C4    U A   5      55.044  48.019  39.011  1.00 49.86           C  
+ATOM    105  O4    U A   5      55.897  48.060  38.122  1.00 53.10           O  
+ATOM    106  C5    U A   5      54.843  46.933  39.930  1.00 49.29           C  
+ATOM    107  C6    U A   5      53.886  47.020  40.854  1.00 48.98           C  
+ATOM    108  P     A A   6      48.651  45.080  40.719  1.00 60.24           P  
+ATOM    109  OP1   A A   6      47.527  44.256  41.233  1.00 60.47           O  
+ATOM    110  OP2   A A   6      49.696  44.440  39.882  1.00 58.91           O  
+ATOM    111  O5'   A A   6      48.047  46.341  39.956  1.00 56.95           O  
+ATOM    112  C5'   A A   6      47.050  47.139  40.571  1.00 55.21           C  
+ATOM    113  C4'   A A   6      46.808  48.385  39.760  1.00 56.41           C  
+ATOM    114  O4'   A A   6      47.992  49.219  39.787  1.00 56.16           O  
+ATOM    115  C3'   A A   6      46.574  48.148  38.285  1.00 57.58           C  
+ATOM    116  O3'   A A   6      45.232  47.755  38.032  1.00 59.85           O  
+ATOM    117  C2'   A A   6      46.960  49.491  37.679  1.00 55.59           C  
+ATOM    118  O2'   A A   6      45.980  50.474  37.905  1.00 56.04           O  
+ATOM    119  C1'   A A   6      48.163  49.859  38.536  1.00 53.99           C  
+ATOM    120  N9    A A   6      49.425  49.404  37.958  1.00 52.37           N  
+ATOM    121  C8    A A   6      50.091  48.223  38.172  1.00 52.73           C  
+ATOM    122  N7    A A   6      51.212  48.119  37.495  1.00 50.40           N  
+ATOM    123  C5    A A   6      51.282  49.309  36.791  1.00 48.95           C  
+ATOM    124  C6    A A   6      52.220  49.810  35.895  1.00 49.10           C  
+ATOM    125  N6    A A   6      53.319  49.157  35.543  1.00 49.07           N  
+ATOM    126  N1    A A   6      51.991  51.030  35.360  1.00 49.55           N  
+ATOM    127  C2    A A   6      50.892  51.689  35.721  1.00 49.92           C  
+ATOM    128  N3    A A   6      49.936  51.324  36.564  1.00 51.13           N  
+ATOM    129  C4    A A   6      50.192  50.108  37.068  1.00 50.04           C  
+ATOM    130  P     U A   7      44.942  46.678  36.880  1.00 60.77           P  
+ATOM    131  OP1   U A   7      43.556  46.166  37.041  1.00 62.34           O  
+ATOM    132  OP2   U A   7      46.083  45.727  36.862  1.00 60.86           O  
+ATOM    133  O5'   U A   7      45.014  47.576  35.575  1.00 58.27           O  
+ATOM    134  C5'   U A   7      44.309  48.807  35.537  1.00 56.31           C  
+ATOM    135  C4'   U A   7      44.796  49.660  34.396  1.00 55.63           C  
+ATOM    136  O4'   U A   7      46.124  50.175  34.690  1.00 53.71           O  
+ATOM    137  C3'   U A   7      44.989  48.897  33.106  1.00 55.41           C  
+ATOM    138  O3'   U A   7      43.761  48.723  32.432  1.00 57.39           O  
+ATOM    139  C2'   U A   7      45.975  49.781  32.356  1.00 54.03           C  
+ATOM    140  O2'   U A   7      45.344  50.895  31.752  1.00 54.05           O  
+ATOM    141  C1'   U A   7      46.877  50.253  33.497  1.00 51.60           C  
+ATOM    142  N1    U A   7      48.069  49.414  33.644  1.00 48.98           N  
+ATOM    143  C2    U A   7      49.147  49.744  32.880  1.00 47.41           C  
+ATOM    144  O2    U A   7      49.125  50.684  32.101  1.00 50.13           O  
+ATOM    145  N3    U A   7      50.245  48.941  33.048  1.00 44.70           N  
+ATOM    146  C4    U A   7      50.360  47.854  33.884  1.00 44.88           C  
+ATOM    147  O4    U A   7      51.421  47.226  33.925  1.00 43.14           O  
+ATOM    148  C5    U A   7      49.192  47.568  34.642  1.00 45.41           C  
+ATOM    149  C6    U A   7      48.109  48.343  34.502  1.00 48.51           C  
+ATOM    150  P     C A   8      43.662  47.638  31.261  1.00 59.85           P  
+ATOM    151  OP1   C A   8      42.278  47.710  30.723  1.00 61.02           O  
+ATOM    152  OP2   C A   8      44.188  46.346  31.770  1.00 59.29           O  
+ATOM    153  O5'   C A   8      44.678  48.182  30.158  1.00 58.48           O  
+ATOM    154  C5'   C A   8      44.351  49.334  29.392  1.00 56.82           C  
+ATOM    155  C4'   C A   8      45.288  49.473  28.222  1.00 58.23           C  
+ATOM    156  O4'   C A   8      46.602  49.835  28.707  1.00 57.92           O  
+ATOM    157  C3'   C A   8      45.519  48.211  27.410  1.00 58.66           C  
+ATOM    158  O3'   C A   8      44.512  48.077  26.413  1.00 61.50           O  
+ATOM    159  C2'   C A   8      46.870  48.491  26.771  1.00 57.69           C  
+ATOM    160  O2'   C A   8      46.744  49.342  25.647  1.00 56.83           O  
+ATOM    161  C1'   C A   8      47.593  49.232  27.896  1.00 56.12           C  
+ATOM    162  N1    C A   8      48.418  48.363  28.744  1.00 53.94           N  
+ATOM    163  C2    C A   8      49.783  48.292  28.489  1.00 52.97           C  
+ATOM    164  O2    C A   8      50.251  48.967  27.565  1.00 54.92           O  
+ATOM    165  N3    C A   8      50.560  47.493  29.251  1.00 50.44           N  
+ATOM    166  C4    C A   8      50.013  46.784  30.242  1.00 49.28           C  
+ATOM    167  N4    C A   8      50.812  46.013  30.966  1.00 47.57           N  
+ATOM    168  C5    C A   8      48.619  46.840  30.530  1.00 50.26           C  
+ATOM    169  C6    C A   8      47.865  47.635  29.762  1.00 52.95           C  
+ATOM    170  P     A A   9      44.220  46.636  25.756  1.00 62.39           P  
+ATOM    171  OP1   A A   9      43.364  45.868  26.691  1.00 62.54           O  
+ATOM    172  OP2   A A   9      45.505  46.055  25.302  1.00 62.79           O  
+ATOM    173  O5'   A A   9      43.321  46.991  24.492  1.00 64.20           O  
+ATOM    174  C5'   A A   9      43.849  46.942  23.173  1.00 69.12           C  
+ATOM    175  C4'   A A   9      42.837  47.488  22.188  1.00 71.94           C  
+ATOM    176  O4'   A A   9      41.791  46.511  21.961  1.00 74.83           O  
+ATOM    177  C3'   A A   9      42.121  48.739  22.656  1.00 71.21           C  
+ATOM    178  O3'   A A   9      42.375  49.964  21.965  1.00 68.03           O  
+ATOM    179  C2'   A A   9      40.779  48.297  23.235  1.00 73.66           C  
+ATOM    180  O2'   A A   9      39.714  49.146  22.861  1.00 73.60           O  
+ATOM    181  C1'   A A   9      40.588  46.912  22.594  1.00 77.57           C  
+ATOM    182  N9    A A   9      40.229  45.843  23.530  1.00 83.33           N  
+ATOM    183  C8    A A   9      40.530  45.749  24.869  1.00 84.98           C  
+ATOM    184  N7    A A   9      40.113  44.636  25.429  1.00 87.16           N  
+ATOM    185  C5    A A   9      39.485  43.954  24.394  1.00 88.00           C  
+ATOM    186  C6    A A   9      38.840  42.694  24.335  1.00 89.06           C  
+ATOM    187  N6    A A   9      38.726  41.864  25.379  1.00 88.96           N  
+ATOM    188  N1    A A   9      38.314  42.312  23.147  1.00 89.43           N  
+ATOM    189  C2    A A   9      38.439  43.138  22.097  1.00 89.45           C  
+ATOM    190  N3    A A   9      39.028  44.337  22.025  1.00 88.20           N  
+ATOM    191  C4    A A   9      39.536  44.692  23.221  1.00 86.70           C  
+ATOM    192  P     A A  10      41.514  50.352  20.666  1.00 61.47           P  
+ATOM    193  OP1   A A  10      40.725  49.160  20.325  1.00 65.15           O  
+ATOM    194  OP2   A A  10      42.447  50.920  19.669  1.00 65.52           O  
+ATOM    195  O5'   A A  10      40.538  51.510  21.159  1.00 61.29           O  
+ATOM    196  C5'   A A  10      39.126  51.356  21.085  1.00 61.12           C  
+ATOM    197  C4'   A A  10      38.435  52.547  21.702  1.00 61.27           C  
+ATOM    198  O4'   A A  10      38.545  52.487  23.140  1.00 61.33           O  
+ATOM    199  C3'   A A  10      39.017  53.894  21.326  1.00 60.56           C  
+ATOM    200  O3'   A A  10      38.418  54.348  20.136  1.00 62.31           O  
+ATOM    201  C2'   A A  10      38.590  54.770  22.486  1.00 60.01           C  
+ATOM    202  O2'   A A  10      37.262  55.220  22.354  1.00 61.63           O  
+ATOM    203  C1'   A A  10      38.702  53.795  23.654  1.00 60.36           C  
+ATOM    204  N9    A A  10      39.993  53.847  24.327  1.00 60.66           N  
+ATOM    205  C8    A A  10      40.916  52.837  24.411  1.00 60.47           C  
+ATOM    206  N7    A A  10      41.969  53.145  25.124  1.00 62.84           N  
+ATOM    207  C5    A A  10      41.727  54.453  25.533  1.00 62.66           C  
+ATOM    208  C6    A A  10      42.457  55.346  26.339  1.00 62.24           C  
+ATOM    209  N6    A A  10      43.621  55.042  26.911  1.00 63.38           N  
+ATOM    210  N1    A A  10      41.939  56.573  26.545  1.00 62.82           N  
+ATOM    211  C2    A A  10      40.765  56.873  25.983  1.00 62.56           C  
+ATOM    212  N3    A A  10      39.981  56.121  25.217  1.00 62.85           N  
+ATOM    213  C4    A A  10      40.523  54.905  25.030  1.00 62.24           C  
+ATOM    214  P     G A  11      39.283  55.186  19.092  1.00 64.09           P  
+ATOM    215  OP1   G A  11      38.517  55.279  17.830  1.00 67.46           O  
+ATOM    216  OP2   G A  11      40.632  54.579  19.093  1.00 65.72           O  
+ATOM    217  O5'   G A  11      39.385  56.634  19.737  1.00 64.27           O  
+ATOM    218  C5'   G A  11      38.238  57.286  20.263  1.00 65.57           C  
+ATOM    219  C4'   G A  11      38.672  58.430  21.142  1.00 66.04           C  
+ATOM    220  O4'   G A  11      39.266  57.913  22.356  1.00 66.05           O  
+ATOM    221  C3'   G A  11      39.753  59.293  20.527  1.00 66.30           C  
+ATOM    222  O3'   G A  11      39.131  60.294  19.737  1.00 68.41           O  
+ATOM    223  C2'   G A  11      40.417  59.895  21.755  1.00 65.85           C  
+ATOM    224  O2'   G A  11      39.667  60.970  22.273  1.00 68.84           O  
+ATOM    225  C1'   G A  11      40.345  58.737  22.749  1.00 65.15           C  
+ATOM    226  N9    G A  11      41.537  57.901  22.820  1.00 64.75           N  
+ATOM    227  C8    G A  11      41.777  56.766  22.093  1.00 63.49           C  
+ATOM    228  N7    G A  11      42.910  56.195  22.394  1.00 64.89           N  
+ATOM    229  C5    G A  11      43.455  57.007  23.378  1.00 64.88           C  
+ATOM    230  C6    G A  11      44.666  56.884  24.103  1.00 64.13           C  
+ATOM    231  O6    G A  11      45.526  55.999  24.029  1.00 64.41           O  
+ATOM    232  N1    G A  11      44.830  57.926  25.000  1.00 64.36           N  
+ATOM    233  C2    G A  11      43.947  58.946  25.189  1.00 65.00           C  
+ATOM    234  N2    G A  11      44.297  59.851  26.098  1.00 68.08           N  
+ATOM    235  N3    G A  11      42.807  59.069  24.535  1.00 65.84           N  
+ATOM    236  C4    G A  11      42.627  58.071  23.645  1.00 65.62           C  
+ATOM    237  P     A A  12      39.589  60.508  18.216  1.00 72.17           P  
+ATOM    238  OP1   A A  12      38.441  61.088  17.469  1.00 72.28           O  
+ATOM    239  OP2   A A  12      40.202  59.237  17.756  1.00 71.67           O  
+ATOM    240  O5'   A A  12      40.736  61.612  18.310  1.00 73.09           O  
+ATOM    241  C5'   A A  12      40.436  62.931  18.755  1.00 74.99           C  
+ATOM    242  C4'   A A  12      41.689  63.630  19.220  1.00 76.06           C  
+ATOM    243  O4'   A A  12      42.252  62.910  20.347  1.00 75.60           O  
+ATOM    244  C3'   A A  12      42.811  63.640  18.200  1.00 77.69           C  
+ATOM    245  O3'   A A  12      42.666  64.736  17.314  1.00 84.06           O  
+ATOM    246  C2'   A A  12      44.049  63.806  19.063  1.00 76.03           C  
+ATOM    247  O2'   A A  12      44.266  65.155  19.407  1.00 74.27           O  
+ATOM    248  C1'   A A  12      43.669  62.990  20.300  1.00 75.72           C  
+ATOM    249  N9    A A  12      44.223  61.636  20.328  1.00 75.30           N  
+ATOM    250  C8    A A  12      44.108  60.649  19.388  1.00 74.14           C  
+ATOM    251  N7    A A  12      44.736  59.544  19.705  1.00 74.09           N  
+ATOM    252  C5    A A  12      45.300  59.823  20.941  1.00 74.63           C  
+ATOM    253  C6    A A  12      46.096  59.060  21.819  1.00 74.42           C  
+ATOM    254  N6    A A  12      46.478  57.808  21.578  1.00 72.95           N  
+ATOM    255  N1    A A  12      46.490  59.638  22.971  1.00 74.65           N  
+ATOM    256  C2    A A  12      46.104  60.888  23.220  1.00 74.97           C  
+ATOM    257  N3    A A  12      45.361  61.704  22.480  1.00 75.87           N  
+ATOM    258  C4    A A  12      44.989  61.105  21.338  1.00 75.00           C  
+ATOM    259  P     G A  13      42.588  64.456  15.747  1.00 89.08           P  
+ATOM    260  OP1   G A  13      41.214  63.997  15.432  1.00 89.24           O  
+ATOM    261  OP2   G A  13      43.757  63.599  15.410  1.00 88.56           O  
+ATOM    262  O5'   G A  13      42.840  65.858  15.051  1.00 92.85           O  
+ATOM    263  C5'   G A  13      43.609  65.918  13.855  1.00 99.27           C  
+ATOM    264  C4'   G A  13      44.119  67.311  13.644  1.00103.14           C  
+ATOM    265  O4'   G A  13      44.653  67.791  14.898  1.00103.90           O  
+ATOM    266  C3'   G A  13      45.283  67.411  12.672  1.00105.04           C  
+ATOM    267  O3'   G A  13      44.800  67.565  11.345  1.00108.37           O  
+ATOM    268  C2'   G A  13      45.964  68.692  13.125  1.00105.26           C  
+ATOM    269  O2'   G A  13      45.315  69.841  12.618  1.00104.89           O  
+ATOM    270  C1'   G A  13      45.756  68.625  14.639  1.00104.73           C  
+ATOM    271  N9    G A  13      46.891  68.187  15.441  1.00104.87           N  
+ATOM    272  C8    G A  13      47.268  66.915  15.809  1.00104.80           C  
+ATOM    273  N7    G A  13      48.320  66.902  16.586  1.00104.77           N  
+ATOM    274  C5    G A  13      48.654  68.244  16.726  1.00104.42           C  
+ATOM    275  C6    G A  13      49.696  68.877  17.464  1.00103.88           C  
+ATOM    276  O6    G A  13      50.565  68.363  18.184  1.00102.76           O  
+ATOM    277  N1    G A  13      49.657  70.262  17.305  1.00104.10           N  
+ATOM    278  C2    G A  13      48.734  70.949  16.541  1.00104.31           C  
+ATOM    279  N2    G A  13      48.843  72.280  16.483  1.00103.88           N  
+ATOM    280  N3    G A  13      47.769  70.373  15.873  1.00104.42           N  
+ATOM    281  C4    G A  13      47.787  69.036  16.008  1.00104.66           C  
+ATOM    282  P     A A  14      44.891  66.334  10.322  1.00111.53           P  
+ATOM    283  OP1   A A  14      43.610  65.588  10.429  1.00111.71           O  
+ATOM    284  OP2   A A  14      46.174  65.631  10.568  1.00111.96           O  
+ATOM    285  O5'   A A  14      44.952  67.015   8.880  1.00113.37           O  
+ATOM    286  C5'   A A  14      46.163  67.595   8.388  1.00115.63           C  
+ATOM    287  C4'   A A  14      45.863  68.602   7.295  1.00117.25           C  
+ATOM    288  O4'   A A  14      45.362  67.887   6.140  1.00118.63           O  
+ATOM    289  C3'   A A  14      44.811  69.629   7.703  1.00117.39           C  
+ATOM    290  O3'   A A  14      45.367  70.922   7.924  1.00115.58           O  
+ATOM    291  C2'   A A  14      43.702  69.579   6.645  1.00118.52           C  
+ATOM    292  O2'   A A  14      43.661  70.767   5.878  1.00117.82           O  
+ATOM    293  C1'   A A  14      44.122  68.423   5.730  1.00119.51           C  
+ATOM    294  N9    A A  14      43.165  67.322   5.573  1.00120.87           N  
+ATOM    295  C8    A A  14      43.339  66.006   5.934  1.00121.79           C  
+ATOM    296  N7    A A  14      42.327  65.231   5.622  1.00122.72           N  
+ATOM    297  C5    A A  14      41.418  66.095   5.023  1.00122.75           C  
+ATOM    298  C6    A A  14      40.141  65.887   4.464  1.00122.97           C  
+ATOM    299  N6    A A  14      39.545  64.692   4.404  1.00123.09           N  
+ATOM    300  N1    A A  14      39.493  66.962   3.957  1.00122.70           N  
+ATOM    301  C2    A A  14      40.097  68.157   4.010  1.00122.76           C  
+ATOM    302  N3    A A  14      41.296  68.477   4.503  1.00122.66           N  
+ATOM    303  C4    A A  14      41.914  67.389   4.999  1.00122.06           C  
+ATOM    304  P     G A  15      46.313  71.178   9.199  1.00114.09           P  
+ATOM    305  OP1   G A  15      47.669  70.679   8.842  1.00113.11           O  
+ATOM    306  OP2   G A  15      45.634  70.652  10.411  1.00113.63           O  
+ATOM    307  O5'   G A  15      46.392  72.765   9.299  1.00110.78           O  
+ATOM    308  C5'   G A  15      47.622  73.436   9.083  1.00106.55           C  
+ATOM    309  C4'   G A  15      47.841  74.474  10.147  1.00104.29           C  
+ATOM    310  O4'   G A  15      47.457  73.923  11.434  1.00103.66           O  
+ATOM    311  C3'   G A  15      49.285  74.901  10.335  1.00103.12           C  
+ATOM    312  O3'   G A  15      49.677  75.893   9.400  1.00102.02           O  
+ATOM    313  C2'   G A  15      49.282  75.408  11.769  1.00102.62           C  
+ATOM    314  O2'   G A  15      48.760  76.718  11.867  1.00102.61           O  
+ATOM    315  C1'   G A  15      48.341  74.398  12.438  1.00102.79           C  
+ATOM    316  N9    G A  15      49.064  73.248  12.975  1.00102.03           N  
+ATOM    317  C8    G A  15      48.919  71.930  12.610  1.00101.72           C  
+ATOM    318  N7    G A  15      49.732  71.131  13.246  1.00101.59           N  
+ATOM    319  C5    G A  15      50.453  71.971  14.085  1.00101.16           C  
+ATOM    320  C6    G A  15      51.487  71.679  15.022  1.00101.10           C  
+ATOM    321  O6    G A  15      51.994  70.575  15.304  1.00101.15           O  
+ATOM    322  N1    G A  15      51.932  72.833  15.662  1.00100.41           N  
+ATOM    323  C2    G A  15      51.449  74.098  15.432  1.00 99.93           C  
+ATOM    324  N2    G A  15      51.999  75.086  16.142  1.00 99.94           N  
+ATOM    325  N3    G A  15      50.493  74.377  14.567  1.00100.17           N  
+ATOM    326  C4    G A  15      50.045  73.278  13.935  1.00100.88           C  
+ATOM    327  P     G A  16      51.026  75.682   8.551  1.00101.42           P  
+ATOM    328  OP1   G A  16      50.682  75.731   7.109  1.00102.83           O  
+ATOM    329  OP2   G A  16      51.725  74.492   9.095  1.00101.20           O  
+ATOM    330  O5'   G A  16      51.919  76.949   8.908  1.00100.66           O  
+ATOM    331  C5'   G A  16      53.321  76.916   8.702  1.00100.34           C  
+ATOM    332  C4'   G A  16      54.036  77.485   9.896  1.00100.56           C  
+ATOM    333  O4'   G A  16      53.436  76.981  11.111  1.00 99.81           O  
+ATOM    334  C3'   G A  16      55.491  77.080   9.985  1.00101.38           C  
+ATOM    335  O3'   G A  16      56.265  77.979   9.201  1.00103.43           O  
+ATOM    336  C2'   G A  16      55.778  77.206  11.477  1.00100.28           C  
+ATOM    337  O2'   G A  16      56.066  78.524  11.885  1.00101.05           O  
+ATOM    338  C1'   G A  16      54.443  76.770  12.086  1.00 99.62           C  
+ATOM    339  N9    G A  16      54.369  75.375  12.509  1.00 98.45           N  
+ATOM    340  C8    G A  16      53.508  74.423  12.025  1.00 97.73           C  
+ATOM    341  N7    G A  16      53.644  73.266  12.608  1.00 96.93           N  
+ATOM    342  C5    G A  16      54.659  73.463  13.530  1.00 96.67           C  
+ATOM    343  C6    G A  16      55.243  72.561  14.451  1.00 96.34           C  
+ATOM    344  O6    G A  16      54.965  71.373  14.646  1.00 96.14           O  
+ATOM    345  N1    G A  16      56.247  73.169  15.195  1.00 96.64           N  
+ATOM    346  C2    G A  16      56.637  74.479  15.071  1.00 97.14           C  
+ATOM    347  N2    G A  16      57.623  74.875  15.890  1.00 96.62           N  
+ATOM    348  N3    G A  16      56.099  75.334  14.211  1.00 97.69           N  
+ATOM    349  C4    G A  16      55.123  74.760  13.478  1.00 97.40           C  
+ATOM    350  P     U A  17      57.613  77.465   8.504  1.00105.06           P  
+ATOM    351  OP1   U A  17      58.306  78.633   7.898  1.00106.21           O  
+ATOM    352  OP2   U A  17      57.264  76.299   7.656  1.00105.45           O  
+ATOM    353  O5'   U A  17      58.481  76.978   9.742  1.00104.29           O  
+ATOM    354  C5'   U A  17      59.030  77.934  10.631  1.00105.27           C  
+ATOM    355  C4'   U A  17      60.024  77.281  11.542  1.00106.09           C  
+ATOM    356  O4'   U A  17      59.313  76.526  12.556  1.00106.80           O  
+ATOM    357  C3'   U A  17      60.896  76.236  10.865  1.00106.38           C  
+ATOM    358  O3'   U A  17      61.999  76.794  10.166  1.00105.97           O  
+ATOM    359  C2'   U A  17      61.333  75.377  12.039  1.00107.09           C  
+ATOM    360  O2'   U A  17      62.390  75.956  12.777  1.00107.37           O  
+ATOM    361  C1'   U A  17      60.062  75.368  12.886  1.00107.53           C  
+ATOM    362  N1    U A  17      59.249  74.171  12.641  1.00108.23           N  
+ATOM    363  C2    U A  17      59.727  72.987  13.165  1.00108.78           C  
+ATOM    364  O2    U A  17      60.774  72.918  13.788  1.00108.71           O  
+ATOM    365  N3    U A  17      58.941  71.889  12.933  1.00109.36           N  
+ATOM    366  C4    U A  17      57.756  71.849  12.242  1.00109.57           C  
+ATOM    367  O4    U A  17      57.161  70.773  12.132  1.00109.52           O  
+ATOM    368  C5    U A  17      57.327  73.116  11.719  1.00109.14           C  
+ATOM    369  C6    U A  17      58.072  74.209  11.933  1.00108.45           C  
+ATOM    370  P     G A  18      62.500  76.096   8.807  1.00105.66           P  
+ATOM    371  OP1   G A  18      63.661  76.851   8.267  1.00106.51           O  
+ATOM    372  OP2   G A  18      61.283  75.919   7.968  1.00105.50           O  
+ATOM    373  O5'   G A  18      63.018  74.668   9.285  1.00103.99           O  
+ATOM    374  C5'   G A  18      64.021  74.559  10.291  1.00102.43           C  
+ATOM    375  C4'   G A  18      64.199  73.117  10.695  1.00101.12           C  
+ATOM    376  O4'   G A  18      62.949  72.618  11.238  1.00100.63           O  
+ATOM    377  C3'   G A  18      64.527  72.165   9.556  1.00100.12           C  
+ATOM    378  O3'   G A  18      65.928  72.132   9.335  1.00 99.74           O  
+ATOM    379  C2'   G A  18      64.031  70.830  10.098  1.00 99.32           C  
+ATOM    380  O2'   G A  18      64.952  70.220  10.976  1.00 98.70           O  
+ATOM    381  C1'   G A  18      62.774  71.261  10.858  1.00 99.21           C  
+ATOM    382  N9    G A  18      61.557  71.174  10.058  1.00 97.34           N  
+ATOM    383  C8    G A  18      61.041  72.135   9.221  1.00 96.69           C  
+ATOM    384  N7    G A  18      59.926  71.773   8.650  1.00 96.07           N  
+ATOM    385  C5    G A  18      59.693  70.496   9.136  1.00 95.84           C  
+ATOM    386  C6    G A  18      58.632  69.595   8.875  1.00 95.53           C  
+ATOM    387  O6    G A  18      57.654  69.753   8.139  1.00 94.90           O  
+ATOM    388  N1    G A  18      58.790  68.401   9.575  1.00 95.75           N  
+ATOM    389  C2    G A  18      59.837  68.113  10.420  1.00 95.59           C  
+ATOM    390  N2    G A  18      59.815  66.907  10.994  1.00 95.41           N  
+ATOM    391  N3    G A  18      60.830  68.947  10.676  1.00 95.69           N  
+ATOM    392  C4    G A  18      60.695  70.110  10.004  1.00 96.38           C  
+ATOM    393  P     G A  19      66.529  72.627   7.927  1.00100.83           P  
+ATOM    394  OP1   G A  19      67.023  74.021   8.096  1.00101.74           O  
+ATOM    395  OP2   G A  19      65.531  72.332   6.866  1.00 99.87           O  
+ATOM    396  O5'   G A  19      67.784  71.666   7.719  1.00 98.72           O  
+ATOM    397  C5'   G A  19      67.715  70.548   6.836  1.00 95.36           C  
+ATOM    398  C4'   G A  19      67.006  69.387   7.504  1.00 92.73           C  
+ATOM    399  O4'   G A  19      65.677  69.803   7.898  1.00 92.37           O  
+ATOM    400  C3'   G A  19      66.784  68.160   6.634  1.00 90.61           C  
+ATOM    401  O3'   G A  19      67.898  67.278   6.715  1.00 88.58           O  
+ATOM    402  C2'   G A  19      65.571  67.513   7.282  1.00 90.73           C  
+ATOM    403  O2'   G A  19      65.939  66.784   8.435  1.00 91.75           O  
+ATOM    404  C1'   G A  19      64.761  68.740   7.698  1.00 90.64           C  
+ATOM    405  N9    G A  19      63.754  69.219   6.755  1.00 88.83           N  
+ATOM    406  C8    G A  19      63.909  70.246   5.855  1.00 87.97           C  
+ATOM    407  N7    G A  19      62.804  70.558   5.236  1.00 87.34           N  
+ATOM    408  C5    G A  19      61.865  69.664   5.732  1.00 87.12           C  
+ATOM    409  C6    G A  19      60.486  69.532   5.442  1.00 86.28           C  
+ATOM    410  O6    G A  19      59.791  70.206   4.678  1.00 85.66           O  
+ATOM    411  N1    G A  19      59.914  68.489   6.154  1.00 86.49           N  
+ATOM    412  C2    G A  19      60.577  67.680   7.038  1.00 87.60           C  
+ATOM    413  N2    G A  19      59.838  66.725   7.615  1.00 88.67           N  
+ATOM    414  N3    G A  19      61.863  67.797   7.332  1.00 87.70           N  
+ATOM    415  C4    G A  19      62.442  68.805   6.647  1.00 87.88           C  
+ATOM    416  P     A A  20      67.943  65.983   5.777  1.00 86.58           P  
+ATOM    417  OP1   A A  20      69.331  65.483   5.704  1.00 86.40           O  
+ATOM    418  OP2   A A  20      67.232  66.383   4.539  1.00 86.39           O  
+ATOM    419  O5'   A A  20      67.063  64.896   6.537  1.00 85.63           O  
+ATOM    420  C5'   A A  20      67.650  63.993   7.479  1.00 83.85           C  
+ATOM    421  C4'   A A  20      66.922  62.667   7.448  1.00 82.33           C  
+ATOM    422  O4'   A A  20      65.507  62.890   7.680  1.00 81.16           O  
+ATOM    423  C3'   A A  20      66.983  61.952   6.114  1.00 81.89           C  
+ATOM    424  O3'   A A  20      68.221  61.231   6.041  1.00 83.05           O  
+ATOM    425  C2'   A A  20      65.712  61.108   6.103  1.00 81.15           C  
+ATOM    426  O2'   A A  20      65.786  59.824   6.656  1.00 83.37           O  
+ATOM    427  C1'   A A  20      64.744  61.986   6.902  1.00 80.09           C  
+ATOM    428  N9    A A  20      63.779  62.755   6.122  1.00 77.26           N  
+ATOM    429  C8    A A  20      63.909  64.014   5.592  1.00 76.84           C  
+ATOM    430  N7    A A  20      62.844  64.431   4.955  1.00 76.08           N  
+ATOM    431  C5    A A  20      61.958  63.373   5.068  1.00 75.98           C  
+ATOM    432  C6    A A  20      60.651  63.184   4.598  1.00 75.86           C  
+ATOM    433  N6    A A  20      59.982  64.094   3.882  1.00 76.10           N  
+ATOM    434  N1    A A  20      60.045  62.012   4.888  1.00 75.42           N  
+ATOM    435  C2    A A  20      60.720  61.100   5.602  1.00 76.18           C  
+ATOM    436  N3    A A  20      61.952  61.161   6.096  1.00 76.33           N  
+ATOM    437  C4    A A  20      62.522  62.336   5.786  1.00 76.27           C  
+ATOM    438  P     G A  21      68.416  59.835   6.842  1.00 83.99           P  
+ATOM    439  OP1   G A  21      69.871  59.617   7.084  1.00 82.93           O  
+ATOM    440  OP2   G A  21      67.632  58.787   6.129  1.00 85.06           O  
+ATOM    441  O5'   G A  21      67.758  60.103   8.267  1.00 81.30           O  
+ATOM    442  C5'   G A  21      67.378  59.027   9.123  1.00 78.72           C  
+ATOM    443  C4'   G A  21      66.027  59.321   9.725  1.00 78.10           C  
+ATOM    444  O4'   G A  21      65.080  59.521   8.640  1.00 78.26           O  
+ATOM    445  C3'   G A  21      65.380  58.242  10.572  1.00 76.75           C  
+ATOM    446  O3'   G A  21      65.797  58.230  11.918  1.00 75.15           O  
+ATOM    447  C2'   G A  21      63.914  58.615  10.469  1.00 77.51           C  
+ATOM    448  O2'   G A  21      63.635  59.759  11.250  1.00 78.02           O  
+ATOM    449  C1'   G A  21      63.821  58.986   8.994  1.00 78.22           C  
+ATOM    450  N9    G A  21      63.595  57.775   8.211  1.00 78.46           N  
+ATOM    451  C8    G A  21      64.527  57.004   7.558  1.00 78.61           C  
+ATOM    452  N7    G A  21      64.008  55.947   6.988  1.00 79.65           N  
+ATOM    453  C5    G A  21      62.651  56.035   7.272  1.00 79.52           C  
+ATOM    454  C6    G A  21      61.569  55.176   6.920  1.00 79.20           C  
+ATOM    455  O6    G A  21      61.593  54.121   6.262  1.00 77.93           O  
+ATOM    456  N1    G A  21      60.362  55.653   7.420  1.00 79.94           N  
+ATOM    457  C2    G A  21      60.211  56.801   8.162  1.00 80.08           C  
+ATOM    458  N2    G A  21      58.978  57.110   8.559  1.00 80.92           N  
+ATOM    459  N3    G A  21      61.202  57.597   8.494  1.00 79.71           N  
+ATOM    460  C4    G A  21      62.383  57.161   8.020  1.00 79.25           C  
+ATOM    461  P     G A  22      65.553  56.907  12.788  1.00 75.22           P  
+ATOM    462  OP1   G A  22      66.079  57.154  14.161  1.00 76.23           O  
+ATOM    463  OP2   G A  22      66.048  55.739  12.002  1.00 74.26           O  
+ATOM    464  O5'   G A  22      63.966  56.780  12.860  1.00 74.14           O  
+ATOM    465  C5'   G A  22      63.189  57.768  13.513  1.00 71.88           C  
+ATOM    466  C4'   G A  22      61.736  57.364  13.541  1.00 70.11           C  
+ATOM    467  O4'   G A  22      61.245  57.258  12.173  1.00 69.75           O  
+ATOM    468  C3'   G A  22      61.479  55.972  14.091  1.00 69.37           C  
+ATOM    469  O3'   G A  22      61.441  55.892  15.497  1.00 68.01           O  
+ATOM    470  C2'   G A  22      60.128  55.634  13.493  1.00 69.71           C  
+ATOM    471  O2'   G A  22      59.080  56.284  14.172  1.00 69.55           O  
+ATOM    472  C1'   G A  22      60.269  56.226  12.097  1.00 70.83           C  
+ATOM    473  N9    G A  22      60.698  55.184  11.167  1.00 71.65           N  
+ATOM    474  C8    G A  22      61.942  54.973  10.631  1.00 71.65           C  
+ATOM    475  N7    G A  22      61.995  53.916   9.865  1.00 72.21           N  
+ATOM    476  C5    G A  22      60.704  53.408   9.890  1.00 71.92           C  
+ATOM    477  C6    G A  22      60.149  52.278   9.247  1.00 71.25           C  
+ATOM    478  O6    G A  22      60.704  51.471   8.496  1.00 71.85           O  
+ATOM    479  N1    G A  22      58.797  52.130   9.550  1.00 71.46           N  
+ATOM    480  C2    G A  22      58.071  52.964  10.362  1.00 71.45           C  
+ATOM    481  N2    G A  22      56.779  52.662  10.534  1.00 71.19           N  
+ATOM    482  N3    G A  22      58.578  54.021  10.962  1.00 72.00           N  
+ATOM    483  C4    G A  22      59.891  54.181  10.684  1.00 72.15           C  
+ATOM    484  P     G A  23      61.563  54.455  16.191  1.00 67.32           P  
+ATOM    485  OP1   G A  23      61.633  54.663  17.661  1.00 67.78           O  
+ATOM    486  OP2   G A  23      62.665  53.751  15.493  1.00 67.92           O  
+ATOM    487  O5'   G A  23      60.178  53.745  15.842  1.00 66.55           O  
+ATOM    488  C5'   G A  23      58.959  54.370  16.209  1.00 66.95           C  
+ATOM    489  C4'   G A  23      57.770  53.491  15.901  1.00 66.33           C  
+ATOM    490  O4'   G A  23      57.553  53.426  14.460  1.00 66.90           O  
+ATOM    491  C3'   G A  23      57.922  52.034  16.291  1.00 66.34           C  
+ATOM    492  O3'   G A  23      57.682  51.787  17.656  1.00 69.23           O  
+ATOM    493  C2'   G A  23      56.884  51.359  15.412  1.00 64.38           C  
+ATOM    494  O2'   G A  23      55.584  51.547  15.920  1.00 61.23           O  
+ATOM    495  C1'   G A  23      57.037  52.146  14.114  1.00 64.35           C  
+ATOM    496  N9    G A  23      57.967  51.457  13.227  1.00 63.89           N  
+ATOM    497  C8    G A  23      59.306  51.697  13.043  1.00 63.75           C  
+ATOM    498  N7    G A  23      59.868  50.849  12.223  1.00 64.11           N  
+ATOM    499  C5    G A  23      58.831  50.010  11.833  1.00 62.97           C  
+ATOM    500  C6    G A  23      58.825  48.887  10.958  1.00 62.43           C  
+ATOM    501  O6    G A  23      59.769  48.388  10.326  1.00 63.41           O  
+ATOM    502  N1    G A  23      57.556  48.332  10.852  1.00 61.36           N  
+ATOM    503  C2    G A  23      56.437  48.785  11.502  1.00 60.60           C  
+ATOM    504  N2    G A  23      55.296  48.112  11.268  1.00 60.05           N  
+ATOM    505  N3    G A  23      56.431  49.822  12.322  1.00 61.58           N  
+ATOM    506  C4    G A  23      57.652  50.383  12.437  1.00 62.69           C  
+ATOM    507  P     A A  24      58.081  50.365  18.262  1.00 70.89           P  
+ATOM    508  OP1   A A  24      58.882  49.647  17.244  1.00 73.17           O  
+ATOM    509  OP2   A A  24      56.848  49.740  18.787  1.00 72.21           O  
+ATOM    510  O5'   A A  24      59.039  50.727  19.478  1.00 71.11           O  
+ATOM    511  C5'   A A  24      60.110  51.657  19.320  1.00 70.21           C  
+ATOM    512  C4'   A A  24      61.356  51.123  19.985  1.00 68.55           C  
+ATOM    513  O4'   A A  24      61.028  50.722  21.337  1.00 67.16           O  
+ATOM    514  C3'   A A  24      61.944  49.873  19.358  1.00 69.42           C  
+ATOM    515  O3'   A A  24      62.824  50.253  18.304  1.00 71.85           O  
+ATOM    516  C2'   A A  24      62.695  49.249  20.531  1.00 67.92           C  
+ATOM    517  O2'   A A  24      63.935  49.871  20.803  1.00 69.68           O  
+ATOM    518  C1'   A A  24      61.752  49.558  21.688  1.00 64.41           C  
+ATOM    519  N9    A A  24      60.780  48.506  21.963  1.00 60.75           N  
+ATOM    520  C8    A A  24      59.468  48.471  21.572  1.00 59.22           C  
+ATOM    521  N7    A A  24      58.812  47.425  22.015  1.00 59.13           N  
+ATOM    522  C5    A A  24      59.761  46.720  22.737  1.00 58.33           C  
+ATOM    523  C6    A A  24      59.689  45.530  23.474  1.00 58.17           C  
+ATOM    524  N6    A A  24      58.567  44.818  23.625  1.00 58.76           N  
+ATOM    525  N1    A A  24      60.816  45.090  24.067  1.00 58.32           N  
+ATOM    526  C2    A A  24      61.931  45.814  23.930  1.00 60.28           C  
+ATOM    527  N3    A A  24      62.122  46.959  23.277  1.00 61.00           N  
+ATOM    528  C4    A A  24      60.983  47.364  22.697  1.00 60.30           C  
+ATOM    529  P     C A  25      63.295  49.164  17.228  1.00 72.52           P  
+ATOM    530  OP1   C A  25      64.442  49.734  16.487  1.00 70.92           O  
+ATOM    531  OP2   C A  25      62.101  48.674  16.477  1.00 74.42           O  
+ATOM    532  O5'   C A  25      63.825  47.968  18.134  1.00 71.83           O  
+ATOM    533  C5'   C A  25      65.165  47.952  18.598  1.00 72.62           C  
+ATOM    534  C4'   C A  25      65.485  46.606  19.185  1.00 74.39           C  
+ATOM    535  O4'   C A  25      64.558  46.356  20.273  1.00 73.10           O  
+ATOM    536  C3'   C A  25      65.263  45.426  18.250  1.00 76.56           C  
+ATOM    537  O3'   C A  25      66.392  45.192  17.419  1.00 81.10           O  
+ATOM    538  C2'   C A  25      65.043  44.274  19.223  1.00 74.88           C  
+ATOM    539  O2'   C A  25      66.249  43.738  19.735  1.00 75.19           O  
+ATOM    540  C1'   C A  25      64.261  44.972  20.335  1.00 72.77           C  
+ATOM    541  N1    C A  25      62.813  44.801  20.227  1.00 71.71           N  
+ATOM    542  C2    C A  25      62.260  43.662  20.760  1.00 71.83           C  
+ATOM    543  O2    C A  25      63.013  42.827  21.270  1.00 73.95           O  
+ATOM    544  N3    C A  25      60.927  43.481  20.711  1.00 70.88           N  
+ATOM    545  C4    C A  25      60.155  44.391  20.139  1.00 69.84           C  
+ATOM    546  N4    C A  25      58.841  44.155  20.123  1.00 70.13           N  
+ATOM    547  C5    C A  25      60.695  45.576  19.562  1.00 69.41           C  
+ATOM    548  C6    C A  25      62.022  45.740  19.626  1.00 70.68           C  
+ATOM    549  P     U A  26      66.238  44.250  16.126  1.00 85.16           P  
+ATOM    550  OP1   U A  26      67.594  43.929  15.605  1.00 84.53           O  
+ATOM    551  OP2   U A  26      65.243  44.884  15.235  1.00 85.22           O  
+ATOM    552  O5'   U A  26      65.582  42.908  16.686  1.00 83.10           O  
+ATOM    553  C5'   U A  26      66.404  41.853  17.168  1.00 83.06           C  
+ATOM    554  C4'   U A  26      65.751  40.520  16.911  1.00 82.90           C  
+ATOM    555  O4'   U A  26      64.618  40.350  17.795  1.00 83.33           O  
+ATOM    556  C3'   U A  26      65.164  40.371  15.525  1.00 82.05           C  
+ATOM    557  O3'   U A  26      66.184  39.990  14.616  1.00 81.59           O  
+ATOM    558  C2'   U A  26      64.113  39.289  15.737  1.00 82.83           C  
+ATOM    559  O2'   U A  26      64.643  37.983  15.780  1.00 83.21           O  
+ATOM    560  C1'   U A  26      63.594  39.639  17.129  1.00 83.33           C  
+ATOM    561  N1    U A  26      62.387  40.475  17.115  1.00 84.07           N  
+ATOM    562  C2    U A  26      61.168  39.833  17.084  1.00 84.45           C  
+ATOM    563  O2    U A  26      61.060  38.619  17.070  1.00 84.31           O  
+ATOM    564  N3    U A  26      60.076  40.662  17.073  1.00 84.96           N  
+ATOM    565  C4    U A  26      60.082  42.039  17.090  1.00 85.37           C  
+ATOM    566  O4    U A  26      59.012  42.648  17.081  1.00 85.84           O  
+ATOM    567  C5    U A  26      61.383  42.627  17.120  1.00 84.60           C  
+ATOM    568  C6    U A  26      62.465  41.842  17.132  1.00 84.27           C  
+ATOM    569  P     G A  27      66.132  40.515  13.104  1.00 81.65           P  
+ATOM    570  OP1   G A  27      67.350  40.038  12.413  1.00 83.23           O  
+ATOM    571  OP2   G A  27      65.837  41.963  13.132  1.00 82.55           O  
+ATOM    572  O5'   G A  27      64.885  39.731  12.503  1.00 80.51           O  
+ATOM    573  C5'   G A  27      64.935  38.317  12.376  1.00 78.28           C  
+ATOM    574  C4'   G A  27      63.552  37.741  12.178  1.00 77.67           C  
+ATOM    575  O4'   G A  27      62.747  38.009  13.362  1.00 77.49           O  
+ATOM    576  C3'   G A  27      62.728  38.306  11.023  1.00 76.44           C  
+ATOM    577  O3'   G A  27      63.058  37.664   9.795  1.00 75.91           O  
+ATOM    578  C2'   G A  27      61.311  37.972  11.470  1.00 76.07           C  
+ATOM    579  O2'   G A  27      61.007  36.613  11.242  1.00 74.28           O  
+ATOM    580  C1'   G A  27      61.397  38.227  12.979  1.00 76.21           C  
+ATOM    581  N9    G A  27      61.016  39.598  13.319  1.00 74.43           N  
+ATOM    582  C8    G A  27      61.838  40.697  13.410  1.00 74.12           C  
+ATOM    583  N7    G A  27      61.190  41.800  13.682  1.00 73.38           N  
+ATOM    584  C5    G A  27      59.863  41.404  13.788  1.00 72.40           C  
+ATOM    585  C6    G A  27      58.695  42.162  14.067  1.00 71.55           C  
+ATOM    586  O6    G A  27      58.592  43.386  14.280  1.00 70.85           O  
+ATOM    587  N1    G A  27      57.559  41.356  14.086  1.00 70.35           N  
+ATOM    588  C2    G A  27      57.544  40.002  13.863  1.00 70.15           C  
+ATOM    589  N2    G A  27      56.350  39.400  13.926  1.00 68.30           N  
+ATOM    590  N3    G A  27      58.623  39.288  13.598  1.00 71.70           N  
+ATOM    591  C4    G A  27      59.740  40.047  13.577  1.00 72.98           C  
+ATOM    592  P     G A  28      62.365  38.133   8.409  1.00 76.89           P  
+ATOM    593  OP1   G A  28      62.160  36.878   7.623  1.00 77.47           O  
+ATOM    594  OP2   G A  28      63.124  39.269   7.796  1.00 75.40           O  
+ATOM    595  O5'   G A  28      60.924  38.672   8.823  1.00 76.26           O  
+ATOM    596  C5'   G A  28      60.164  39.487   7.926  1.00 73.92           C  
+ATOM    597  C4'   G A  28      58.705  39.462   8.314  1.00 71.92           C  
+ATOM    598  O4'   G A  28      58.573  39.835   9.714  1.00 71.54           O  
+ATOM    599  C3'   G A  28      57.811  40.439   7.565  1.00 70.88           C  
+ATOM    600  O3'   G A  28      57.367  39.868   6.331  1.00 69.61           O  
+ATOM    601  C2'   G A  28      56.656  40.616   8.546  1.00 70.99           C  
+ATOM    602  O2'   G A  28      55.717  39.557   8.480  1.00 71.07           O  
+ATOM    603  C1'   G A  28      57.387  40.587   9.894  1.00 71.11           C  
+ATOM    604  N9    G A  28      57.746  41.916  10.380  1.00 70.31           N  
+ATOM    605  C8    G A  28      58.962  42.543  10.281  1.00 70.75           C  
+ATOM    606  N7    G A  28      58.958  43.747  10.782  1.00 70.48           N  
+ATOM    607  C5    G A  28      57.663  43.920  11.251  1.00 69.56           C  
+ATOM    608  C6    G A  28      57.055  45.027  11.906  1.00 69.08           C  
+ATOM    609  O6    G A  28      57.557  46.119  12.224  1.00 68.50           O  
+ATOM    610  N1    G A  28      55.724  44.771  12.202  1.00 69.21           N  
+ATOM    611  C2    G A  28      55.060  43.608  11.915  1.00 69.07           C  
+ATOM    612  N2    G A  28      53.767  43.555  12.280  1.00 68.80           N  
+ATOM    613  N3    G A  28      55.616  42.572  11.315  1.00 69.71           N  
+ATOM    614  C4    G A  28      56.906  42.797  11.014  1.00 69.55           C  
+ATOM    615  P     C A  29      57.271  40.780   5.008  1.00 67.90           P  
+ATOM    616  OP1   C A  29      56.896  39.914   3.864  1.00 70.57           O  
+ATOM    617  OP2   C A  29      58.508  41.596   4.940  1.00 69.03           O  
+ATOM    618  O5'   C A  29      56.055  41.759   5.299  1.00 66.35           O  
+ATOM    619  C5'   C A  29      54.758  41.248   5.567  1.00 62.83           C  
+ATOM    620  C4'   C A  29      53.946  42.279   6.308  1.00 62.09           C  
+ATOM    621  O4'   C A  29      54.537  42.496   7.619  1.00 59.41           O  
+ATOM    622  C3'   C A  29      53.949  43.661   5.684  1.00 62.50           C  
+ATOM    623  O3'   C A  29      53.018  43.803   4.618  1.00 64.25           O  
+ATOM    624  C2'   C A  29      53.618  44.546   6.876  1.00 61.37           C  
+ATOM    625  O2'   C A  29      52.234  44.525   7.187  1.00 61.74           O  
+ATOM    626  C1'   C A  29      54.421  43.860   7.981  1.00 59.52           C  
+ATOM    627  N1    C A  29      55.777  44.424   8.092  1.00 59.57           N  
+ATOM    628  C2    C A  29      55.950  45.631   8.772  1.00 59.50           C  
+ATOM    629  O2    C A  29      54.973  46.175   9.280  1.00 60.54           O  
+ATOM    630  N3    C A  29      57.180  46.174   8.858  1.00 59.71           N  
+ATOM    631  C4    C A  29      58.225  45.562   8.299  1.00 59.10           C  
+ATOM    632  N4    C A  29      59.412  46.152   8.405  1.00 56.50           N  
+ATOM    633  C5    C A  29      58.091  44.321   7.607  1.00 59.16           C  
+ATOM    634  C6    C A  29      56.856  43.790   7.529  1.00 59.74           C  
+ATOM    635  P     C A  30      53.015  45.164   3.761  1.00 65.71           P  
+ATOM    636  OP1   C A  30      51.995  45.078   2.682  1.00 66.48           O  
+ATOM    637  OP2   C A  30      54.428  45.487   3.422  1.00 64.15           O  
+ATOM    638  O5'   C A  30      52.539  46.252   4.817  1.00 66.68           O  
+ATOM    639  C5'   C A  30      52.834  47.619   4.624  1.00 66.07           C  
+ATOM    640  C4'   C A  30      52.552  48.383   5.883  1.00 64.24           C  
+ATOM    641  O4'   C A  30      53.379  47.875   6.961  1.00 63.99           O  
+ATOM    642  C3'   C A  30      52.853  49.863   5.817  1.00 63.38           C  
+ATOM    643  O3'   C A  30      51.704  50.500   5.285  1.00 63.48           O  
+ATOM    644  C2'   C A  30      53.060  50.195   7.287  1.00 63.64           C  
+ATOM    645  O2'   C A  30      51.818  50.289   7.955  1.00 63.72           O  
+ATOM    646  C1'   C A  30      53.793  48.945   7.782  1.00 63.35           C  
+ATOM    647  N1    C A  30      55.243  49.051   7.628  1.00 63.96           N  
+ATOM    648  C2    C A  30      55.945  49.948   8.418  1.00 64.30           C  
+ATOM    649  O2    C A  30      55.330  50.610   9.257  1.00 66.15           O  
+ATOM    650  N3    C A  30      57.280  50.073   8.250  1.00 64.07           N  
+ATOM    651  C4    C A  30      57.909  49.334   7.339  1.00 63.26           C  
+ATOM    652  N4    C A  30      59.218  49.497   7.206  1.00 63.72           N  
+ATOM    653  C5    C A  30      57.220  48.395   6.526  1.00 63.27           C  
+ATOM    654  C6    C A  30      55.897  48.284   6.704  1.00 64.28           C  
+ATOM    655  P     C A  31      51.870  51.754   4.306  1.00 64.41           P  
+ATOM    656  OP1   C A  31      50.528  52.130   3.784  1.00 63.20           O  
+ATOM    657  OP2   C A  31      52.983  51.484   3.365  1.00 63.17           O  
+ATOM    658  O5'   C A  31      52.369  52.895   5.282  1.00 63.89           O  
+ATOM    659  C5'   C A  31      51.578  53.280   6.382  1.00 63.36           C  
+ATOM    660  C4'   C A  31      52.287  54.339   7.160  1.00 63.12           C  
+ATOM    661  O4'   C A  31      53.352  53.730   7.927  1.00 63.91           O  
+ATOM    662  C3'   C A  31      53.003  55.344   6.284  1.00 61.70           C  
+ATOM    663  O3'   C A  31      52.113  56.345   5.844  1.00 61.08           O  
+ATOM    664  C2'   C A  31      54.052  55.885   7.231  1.00 62.18           C  
+ATOM    665  O2'   C A  31      53.483  56.788   8.145  1.00 62.99           O  
+ATOM    666  C1'   C A  31      54.443  54.622   7.990  1.00 63.19           C  
+ATOM    667  N1    C A  31      55.620  53.977   7.410  1.00 63.84           N  
+ATOM    668  C2    C A  31      56.831  54.589   7.597  1.00 63.43           C  
+ATOM    669  O2    C A  31      56.855  55.634   8.245  1.00 64.84           O  
+ATOM    670  N3    C A  31      57.946  54.041   7.081  1.00 63.21           N  
+ATOM    671  C4    C A  31      57.872  52.902   6.402  1.00 64.27           C  
+ATOM    672  N4    C A  31      59.010  52.390   5.922  1.00 64.98           N  
+ATOM    673  C5    C A  31      56.633  52.238   6.190  1.00 65.15           C  
+ATOM    674  C6    C A  31      55.535  52.809   6.707  1.00 64.47           C  
+ATOM    675  P     G A  32      52.458  57.185   4.523  1.00 62.37           P  
+ATOM    676  OP1   G A  32      51.396  58.213   4.397  1.00 60.41           O  
+ATOM    677  OP2   G A  32      52.715  56.238   3.403  1.00 60.94           O  
+ATOM    678  O5'   G A  32      53.835  57.910   4.866  1.00 63.18           O  
+ATOM    679  C5'   G A  32      53.847  59.093   5.641  1.00 62.39           C  
+ATOM    680  C4'   G A  32      55.228  59.676   5.680  1.00 63.39           C  
+ATOM    681  O4'   G A  32      56.105  58.751   6.367  1.00 64.76           O  
+ATOM    682  C3'   G A  32      55.889  59.815   4.326  1.00 64.49           C  
+ATOM    683  O3'   G A  32      55.509  60.970   3.617  1.00 65.91           O  
+ATOM    684  C2'   G A  32      57.362  59.837   4.675  1.00 65.04           C  
+ATOM    685  O2'   G A  32      57.780  61.102   5.143  1.00 64.75           O  
+ATOM    686  C1'   G A  32      57.404  58.811   5.800  1.00 64.89           C  
+ATOM    687  N9    G A  32      57.744  57.503   5.264  1.00 66.38           N  
+ATOM    688  C8    G A  32      56.907  56.435   5.060  1.00 68.11           C  
+ATOM    689  N7    G A  32      57.510  55.412   4.521  1.00 69.20           N  
+ATOM    690  C5    G A  32      58.823  55.836   4.361  1.00 68.47           C  
+ATOM    691  C6    G A  32      59.932  55.175   3.806  1.00 69.12           C  
+ATOM    692  O6    G A  32      59.980  54.056   3.304  1.00 71.60           O  
+ATOM    693  N1    G A  32      61.076  55.961   3.856  1.00 69.48           N  
+ATOM    694  C2    G A  32      61.139  57.234   4.358  1.00 69.13           C  
+ATOM    695  N2    G A  32      62.336  57.831   4.314  1.00 68.48           N  
+ATOM    696  N3    G A  32      60.103  57.870   4.863  1.00 68.83           N  
+ATOM    697  C4    G A  32      58.984  57.116   4.833  1.00 67.70           C  
+ATOM    698  P     A A  33      55.228  60.837   2.054  1.00 67.60           P  
+ATOM    699  OP1   A A  33      53.763  60.625   1.905  1.00 65.92           O  
+ATOM    700  OP2   A A  33      56.180  59.801   1.567  1.00 67.33           O  
+ATOM    701  O5'   A A  33      55.593  62.258   1.434  1.00 67.76           O  
+ATOM    702  C5'   A A  33      56.865  62.878   1.641  1.00 69.76           C  
+ATOM    703  C4'   A A  33      56.994  64.038   0.684  1.00 71.33           C  
+ATOM    704  O4'   A A  33      58.204  64.805   0.937  1.00 71.47           O  
+ATOM    705  C3'   A A  33      57.125  63.544  -0.740  1.00 72.06           C  
+ATOM    706  O3'   A A  33      56.034  63.736  -1.619  1.00 74.07           O  
+ATOM    707  C2'   A A  33      58.602  63.589  -1.112  1.00 71.79           C  
+ATOM    708  O2'   A A  33      58.810  64.058  -2.429  1.00 71.97           O  
+ATOM    709  C1'   A A  33      59.144  64.615  -0.110  1.00 70.81           C  
+ATOM    710  N9    A A  33      60.441  64.313   0.492  1.00 69.50           N  
+ATOM    711  C8    A A  33      61.506  65.166   0.616  1.00 69.12           C  
+ATOM    712  N7    A A  33      62.547  64.634   1.211  1.00 68.67           N  
+ATOM    713  C5    A A  33      62.140  63.340   1.497  1.00 68.66           C  
+ATOM    714  C6    A A  33      62.789  62.260   2.126  1.00 67.48           C  
+ATOM    715  N6    A A  33      64.024  62.321   2.622  1.00 67.34           N  
+ATOM    716  N1    A A  33      62.112  61.104   2.236  1.00 66.36           N  
+ATOM    717  C2    A A  33      60.863  61.047   1.756  1.00 68.99           C  
+ATOM    718  N3    A A  33      60.140  61.993   1.155  1.00 68.41           N  
+ATOM    719  C4    A A  33      60.845  63.127   1.054  1.00 69.05           C  
+ATOM    720  P     U A  34      55.824  65.152  -2.328  1.00 74.88           P  
+ATOM    721  OP1   U A  34      55.020  64.908  -3.544  1.00 76.95           O  
+ATOM    722  OP2   U A  34      57.139  65.818  -2.430  1.00 77.84           O  
+ATOM    723  O5'   U A  34      54.926  65.989  -1.318  1.00 78.42           O  
+ATOM    724  C5'   U A  34      54.185  65.351  -0.295  1.00 81.29           C  
+ATOM    725  C4'   U A  34      52.728  65.677  -0.440  1.00 83.18           C  
+ATOM    726  O4'   U A  34      52.277  65.244  -1.744  1.00 85.09           O  
+ATOM    727  C3'   U A  34      51.830  64.944   0.538  1.00 84.70           C  
+ATOM    728  O3'   U A  34      51.739  65.734   1.721  1.00 86.22           O  
+ATOM    729  C2'   U A  34      50.492  64.920  -0.195  1.00 85.34           C  
+ATOM    730  O2'   U A  34      49.750  66.116  -0.048  1.00 86.46           O  
+ATOM    731  C1'   U A  34      50.941  64.780  -1.652  1.00 85.85           C  
+ATOM    732  N1    U A  34      50.856  63.449  -2.274  1.00 86.02           N  
+ATOM    733  C2    U A  34      49.694  62.731  -2.110  1.00 86.35           C  
+ATOM    734  O2    U A  34      48.760  63.134  -1.441  1.00 86.70           O  
+ATOM    735  N3    U A  34      49.663  61.521  -2.759  1.00 86.83           N  
+ATOM    736  C4    U A  34      50.662  60.967  -3.534  1.00 86.45           C  
+ATOM    737  O4    U A  34      50.500  59.849  -4.031  1.00 85.04           O  
+ATOM    738  C5    U A  34      51.837  61.771  -3.643  1.00 86.54           C  
+ATOM    739  C6    U A  34      51.894  62.951  -3.021  1.00 85.75           C  
+ATOM    740  P     G A  35      52.152  65.101   3.133  1.00 86.03           P  
+ATOM    741  OP1   G A  35      53.057  63.962   2.842  1.00 87.58           O  
+ATOM    742  OP2   G A  35      50.900  64.870   3.900  1.00 86.93           O  
+ATOM    743  O5'   G A  35      52.992  66.243   3.851  1.00 82.44           O  
+ATOM    744  C5'   G A  35      53.697  65.970   5.055  1.00 82.21           C  
+ATOM    745  C4'   G A  35      54.954  65.202   4.743  1.00 80.34           C  
+ATOM    746  O4'   G A  35      55.443  65.620   3.455  1.00 81.24           O  
+ATOM    747  C3'   G A  35      56.105  65.432   5.709  1.00 80.16           C  
+ATOM    748  O3'   G A  35      56.017  64.446   6.733  1.00 78.85           O  
+ATOM    749  C2'   G A  35      57.326  65.138   4.843  1.00 81.09           C  
+ATOM    750  O2'   G A  35      57.613  63.762   4.756  1.00 84.00           O  
+ATOM    751  C1'   G A  35      56.852  65.607   3.468  1.00 81.14           C  
+ATOM    752  N9    G A  35      57.345  66.850   2.883  1.00 80.09           N  
+ATOM    753  C8    G A  35      56.599  67.774   2.191  1.00 79.74           C  
+ATOM    754  N7    G A  35      57.324  68.703   1.637  1.00 79.94           N  
+ATOM    755  C5    G A  35      58.624  68.394   2.016  1.00 78.91           C  
+ATOM    756  C6    G A  35      59.843  69.026   1.693  1.00 78.16           C  
+ATOM    757  O6    G A  35      60.033  70.005   0.961  1.00 79.05           O  
+ATOM    758  N1    G A  35      60.919  68.399   2.305  1.00 76.96           N  
+ATOM    759  C2    G A  35      60.834  67.298   3.114  1.00 77.37           C  
+ATOM    760  N2    G A  35      61.990  66.850   3.623  1.00 76.36           N  
+ATOM    761  N3    G A  35      59.702  66.685   3.407  1.00 78.05           N  
+ATOM    762  C4    G A  35      58.645  67.280   2.825  1.00 78.58           C  
+ATOM    763  P     A A  36      56.302  64.840   8.264  1.00 76.30           P  
+ATOM    764  OP1   A A  36      54.975  64.874   8.942  1.00 75.67           O  
+ATOM    765  OP2   A A  36      57.180  66.045   8.282  1.00 77.08           O  
+ATOM    766  O5'   A A  36      57.155  63.624   8.842  1.00 72.20           O  
+ATOM    767  C5'   A A  36      56.630  62.304   8.880  1.00 69.65           C  
+ATOM    768  C4'   A A  36      57.735  61.338   9.196  1.00 67.97           C  
+ATOM    769  O4'   A A  36      58.775  61.499   8.202  1.00 68.85           O  
+ATOM    770  C3'   A A  36      58.432  61.569  10.525  1.00 67.41           C  
+ATOM    771  O3'   A A  36      57.747  60.830  11.524  1.00 67.02           O  
+ATOM    772  C2'   A A  36      59.815  60.974  10.276  1.00 67.37           C  
+ATOM    773  O2'   A A  36      59.886  59.573  10.441  1.00 66.90           O  
+ATOM    774  C1'   A A  36      60.045  61.341   8.808  1.00 67.53           C  
+ATOM    775  N9    A A  36      60.752  62.600   8.641  1.00 66.76           N  
+ATOM    776  C8    A A  36      60.375  63.652   7.852  1.00 67.45           C  
+ATOM    777  N7    A A  36      61.191  64.671   7.908  1.00 66.96           N  
+ATOM    778  C5    A A  36      62.172  64.259   8.794  1.00 66.08           C  
+ATOM    779  C6    A A  36      63.311  64.889   9.276  1.00 66.19           C  
+ATOM    780  N6    A A  36      63.665  66.125   8.928  1.00 67.40           N  
+ATOM    781  N1    A A  36      64.087  64.205  10.142  1.00 66.85           N  
+ATOM    782  C2    A A  36      63.716  62.966  10.495  1.00 66.08           C  
+ATOM    783  N3    A A  36      62.657  62.268  10.111  1.00 65.19           N  
+ATOM    784  C4    A A  36      61.917  62.982   9.248  1.00 65.98           C  
+ATOM    785  P     A A  37      57.509  61.470  12.975  1.00 68.44           P  
+ATOM    786  OP1   A A  37      56.864  60.414  13.806  1.00 68.71           O  
+ATOM    787  OP2   A A  37      56.818  62.771  12.773  1.00 66.15           O  
+ATOM    788  O5'   A A  37      58.982  61.698  13.553  1.00 69.51           O  
+ATOM    789  C5'   A A  37      59.702  60.597  14.106  1.00 72.39           C  
+ATOM    790  C4'   A A  37      61.083  61.004  14.590  1.00 73.88           C  
+ATOM    791  O4'   A A  37      61.842  61.585  13.493  1.00 74.64           O  
+ATOM    792  C3'   A A  37      61.133  62.080  15.665  1.00 75.34           C  
+ATOM    793  O3'   A A  37      60.948  61.522  16.963  1.00 77.76           O  
+ATOM    794  C2'   A A  37      62.544  62.635  15.506  1.00 74.93           C  
+ATOM    795  O2'   A A  37      63.525  61.813  16.108  1.00 73.93           O  
+ATOM    796  C1'   A A  37      62.730  62.569  13.995  1.00 75.06           C  
+ATOM    797  N9    A A  37      62.515  63.833  13.299  1.00 76.44           N  
+ATOM    798  C8    A A  37      61.475  64.214  12.492  1.00 77.47           C  
+ATOM    799  N7    A A  37      61.604  65.421  12.002  1.00 77.88           N  
+ATOM    800  C5    A A  37      62.808  65.868  12.528  1.00 78.70           C  
+ATOM    801  C6    A A  37      63.516  67.076  12.386  1.00 79.68           C  
+ATOM    802  N6    A A  37      63.093  68.103  11.641  1.00 80.75           N  
+ATOM    803  N1    A A  37      64.689  67.195  13.045  1.00 80.31           N  
+ATOM    804  C2    A A  37      65.112  66.167  13.792  1.00 80.01           C  
+ATOM    805  N3    A A  37      64.538  64.987  14.002  1.00 79.09           N  
+ATOM    806  C4    A A  37      63.376  64.900  13.332  1.00 78.07           C  
+ATOM    807  P     A A  38      60.393  62.448  18.155  1.00 79.26           P  
+ATOM    808  OP1   A A  38      60.704  61.769  19.430  1.00 80.61           O  
+ATOM    809  OP2   A A  38      58.991  62.817  17.844  1.00 79.34           O  
+ATOM    810  O5'   A A  38      61.291  63.760  18.070  1.00 79.38           O  
+ATOM    811  C5'   A A  38      62.553  63.820  18.730  1.00 81.15           C  
+ATOM    812  C4'   A A  38      63.073  65.228  18.704  1.00 81.79           C  
+ATOM    813  O4'   A A  38      63.352  65.593  17.331  1.00 81.63           O  
+ATOM    814  C3'   A A  38      62.094  66.283  19.177  1.00 82.49           C  
+ATOM    815  O3'   A A  38      62.076  66.412  20.583  1.00 84.40           O  
+ATOM    816  C2'   A A  38      62.616  67.524  18.479  1.00 82.22           C  
+ATOM    817  O2'   A A  38      63.767  68.030  19.123  1.00 83.01           O  
+ATOM    818  C1'   A A  38      62.993  66.945  17.115  1.00 80.98           C  
+ATOM    819  N9    A A  38      61.822  66.947  16.243  1.00 78.84           N  
+ATOM    820  C8    A A  38      60.905  65.942  16.088  1.00 78.39           C  
+ATOM    821  N7    A A  38      59.915  66.249  15.289  1.00 77.70           N  
+ATOM    822  C5    A A  38      60.210  67.540  14.875  1.00 77.24           C  
+ATOM    823  C6    A A  38      59.546  68.437  14.018  1.00 77.01           C  
+ATOM    824  N6    A A  38      58.390  68.170  13.407  1.00 76.37           N  
+ATOM    825  N1    A A  38      60.117  69.640  13.812  1.00 77.26           N  
+ATOM    826  C2    A A  38      61.268  69.918  14.433  1.00 77.25           C  
+ATOM    827  N3    A A  38      61.981  69.165  15.263  1.00 77.22           N  
+ATOM    828  C4    A A  38      61.391  67.974  15.444  1.00 77.56           C  
+ATOM    829  P     C A  39      60.743  66.942  21.298  1.00 86.61           P  
+ATOM    830  OP1   C A  39      60.919  66.819  22.766  1.00 87.75           O  
+ATOM    831  OP2   C A  39      59.580  66.302  20.641  1.00 86.54           O  
+ATOM    832  O5'   C A  39      60.712  68.487  20.936  1.00 86.18           O  
+ATOM    833  C5'   C A  39      61.720  69.347  21.428  1.00 85.71           C  
+ATOM    834  C4'   C A  39      61.518  70.740  20.903  1.00 86.21           C  
+ATOM    835  O4'   C A  39      61.657  70.721  19.457  1.00 85.21           O  
+ATOM    836  C3'   C A  39      60.124  71.312  21.113  1.00 86.52           C  
+ATOM    837  O3'   C A  39      59.927  71.874  22.399  1.00 87.69           O  
+ATOM    838  C2'   C A  39      60.063  72.379  20.039  1.00 86.39           C  
+ATOM    839  O2'   C A  39      60.788  73.527  20.422  1.00 87.59           O  
+ATOM    840  C1'   C A  39      60.782  71.680  18.888  1.00 85.69           C  
+ATOM    841  N1    C A  39      59.790  71.009  18.040  1.00 85.17           N  
+ATOM    842  C2    C A  39      59.112  71.781  17.103  1.00 85.98           C  
+ATOM    843  O2    C A  39      59.424  72.977  16.983  1.00 88.51           O  
+ATOM    844  N3    C A  39      58.140  71.218  16.353  1.00 85.49           N  
+ATOM    845  C4    C A  39      57.847  69.928  16.510  1.00 84.91           C  
+ATOM    846  N4    C A  39      56.868  69.416  15.759  1.00 84.63           N  
+ATOM    847  C5    C A  39      58.543  69.105  17.445  1.00 84.88           C  
+ATOM    848  C6    C A  39      59.503  69.681  18.179  1.00 84.74           C  
+ATOM    849  P     C A  40      58.440  71.960  23.004  1.00 87.52           P  
+ATOM    850  OP1   C A  40      58.530  72.443  24.403  1.00 87.13           O  
+ATOM    851  OP2   C A  40      57.789  70.663  22.722  1.00 88.65           O  
+ATOM    852  O5'   C A  40      57.724  73.076  22.125  1.00 87.10           O  
+ATOM    853  C5'   C A  40      58.160  74.423  22.184  1.00 87.69           C  
+ATOM    854  C4'   C A  40      57.305  75.294  21.301  1.00 88.35           C  
+ATOM    855  O4'   C A  40      57.424  74.836  19.927  1.00 88.43           O  
+ATOM    856  C3'   C A  40      55.811  75.229  21.578  1.00 89.15           C  
+ATOM    857  O3'   C A  40      55.427  76.080  22.652  1.00 89.80           O  
+ATOM    858  C2'   C A  40      55.221  75.672  20.247  1.00 89.22           C  
+ATOM    859  O2'   C A  40      55.242  77.071  20.063  1.00 90.74           O  
+ATOM    860  C1'   C A  40      56.184  75.016  19.259  1.00 89.11           C  
+ATOM    861  N1    C A  40      55.680  73.714  18.791  1.00 89.08           N  
+ATOM    862  C2    C A  40      54.720  73.712  17.784  1.00 88.89           C  
+ATOM    863  O2    C A  40      54.357  74.800  17.312  1.00 88.07           O  
+ATOM    864  N3    C A  40      54.214  72.537  17.349  1.00 88.17           N  
+ATOM    865  C4    C A  40      54.640  71.394  17.881  1.00 87.25           C  
+ATOM    866  N4    C A  40      54.111  70.259  17.420  1.00 86.84           N  
+ATOM    867  C5    C A  40      55.627  71.365  18.910  1.00 87.49           C  
+ATOM    868  C6    C A  40      56.118  72.537  19.329  1.00 88.37           C  
+ATOM    869  P     C A  41      54.296  75.590  23.687  1.00 91.70           P  
+ATOM    870  OP1   C A  41      54.317  76.506  24.848  1.00 92.23           O  
+ATOM    871  OP2   C A  41      54.484  74.132  23.905  1.00 92.16           O  
+ATOM    872  O5'   C A  41      52.921  75.809  22.911  1.00 89.93           O  
+ATOM    873  C5'   C A  41      52.470  77.118  22.601  1.00 89.57           C  
+ATOM    874  C4'   C A  41      51.643  77.101  21.344  1.00 89.19           C  
+ATOM    875  O4'   C A  41      52.410  76.440  20.301  1.00 89.84           O  
+ATOM    876  C3'   C A  41      50.360  76.288  21.406  1.00 88.65           C  
+ATOM    877  O3'   C A  41      49.269  76.984  21.992  1.00 87.24           O  
+ATOM    878  C2'   C A  41      50.117  75.978  19.940  1.00 89.20           C  
+ATOM    879  O2'   C A  41      49.606  77.084  19.234  1.00 90.10           O  
+ATOM    880  C1'   C A  41      51.538  75.698  19.463  1.00 89.86           C  
+ATOM    881  N1    C A  41      51.817  74.263  19.619  1.00 90.67           N  
+ATOM    882  C2    C A  41      51.094  73.376  18.829  1.00 90.46           C  
+ATOM    883  O2    C A  41      50.292  73.835  18.017  1.00 90.97           O  
+ATOM    884  N3    C A  41      51.280  72.049  18.972  1.00 90.17           N  
+ATOM    885  C4    C A  41      52.155  71.592  19.865  1.00 91.13           C  
+ATOM    886  N4    C A  41      52.292  70.264  19.975  1.00 91.98           N  
+ATOM    887  C5    C A  41      52.927  72.476  20.683  1.00 91.06           C  
+ATOM    888  C6    C A  41      52.730  73.795  20.523  1.00 90.74           C  
+ATOM    889  P     G A  42      48.270  76.196  22.975  1.00 87.44           P  
+ATOM    890  OP1   G A  42      47.291  77.141  23.567  1.00 89.10           O  
+ATOM    891  OP2   G A  42      49.134  75.380  23.871  1.00 88.78           O  
+ATOM    892  O5'   G A  42      47.474  75.205  22.013  1.00 86.64           O  
+ATOM    893  C5'   G A  42      46.541  75.702  21.061  1.00 83.77           C  
+ATOM    894  C4'   G A  42      45.922  74.562  20.279  1.00 82.63           C  
+ATOM    895  O4'   G A  42      46.960  73.869  19.533  1.00 81.47           O  
+ATOM    896  C3'   G A  42      45.236  73.476  21.096  1.00 81.18           C  
+ATOM    897  O3'   G A  42      43.883  73.838  21.383  1.00 79.00           O  
+ATOM    898  C2'   G A  42      45.304  72.282  20.150  1.00 81.50           C  
+ATOM    899  O2'   G A  42      44.294  72.313  19.164  1.00 82.78           O  
+ATOM    900  C1'   G A  42      46.671  72.484  19.489  1.00 81.61           C  
+ATOM    901  N9    G A  42      47.741  71.774  20.181  1.00 81.64           N  
+ATOM    902  C8    G A  42      48.763  72.326  20.911  1.00 81.07           C  
+ATOM    903  N7    G A  42      49.539  71.435  21.463  1.00 81.18           N  
+ATOM    904  C5    G A  42      49.003  70.221  21.061  1.00 81.25           C  
+ATOM    905  C6    G A  42      49.410  68.898  21.358  1.00 81.50           C  
+ATOM    906  O6    G A  42      50.354  68.526  22.067  1.00 81.74           O  
+ATOM    907  N1    G A  42      48.589  67.959  20.740  1.00 81.55           N  
+ATOM    908  C2    G A  42      47.512  68.257  19.943  1.00 81.83           C  
+ATOM    909  N2    G A  42      46.847  67.214  19.438  1.00 82.10           N  
+ATOM    910  N3    G A  42      47.119  69.488  19.664  1.00 81.24           N  
+ATOM    911  C4    G A  42      47.904  70.414  20.254  1.00 81.41           C  
+ATOM    912  P     G A  43      43.122  73.181  22.637  1.00 79.16           P  
+ATOM    913  OP1   G A  43      41.728  73.681  22.656  1.00 80.54           O  
+ATOM    914  OP2   G A  43      43.981  73.361  23.831  1.00 80.58           O  
+ATOM    915  O5'   G A  43      43.054  71.627  22.294  1.00 78.89           O  
+ATOM    916  C5'   G A  43      42.267  71.158  21.205  1.00 76.22           C  
+ATOM    917  C4'   G A  43      42.432  69.665  21.035  1.00 73.95           C  
+ATOM    918  O4'   G A  43      43.825  69.361  20.731  1.00 73.16           O  
+ATOM    919  C3'   G A  43      42.147  68.845  22.284  1.00 72.25           C  
+ATOM    920  O3'   G A  43      40.760  68.556  22.410  1.00 70.37           O  
+ATOM    921  C2'   G A  43      42.934  67.568  22.021  1.00 72.79           C  
+ATOM    922  O2'   G A  43      42.252  66.676  21.167  1.00 72.66           O  
+ATOM    923  C1'   G A  43      44.169  68.108  21.301  1.00 73.72           C  
+ATOM    924  N9    G A  43      45.326  68.263  22.176  1.00 74.90           N  
+ATOM    925  C8    G A  43      45.959  69.425  22.531  1.00 75.68           C  
+ATOM    926  N7    G A  43      46.978  69.231  23.326  1.00 76.53           N  
+ATOM    927  C5    G A  43      47.014  67.856  23.511  1.00 76.40           C  
+ATOM    928  C6    G A  43      47.904  67.046  24.278  1.00 77.11           C  
+ATOM    929  O6    G A  43      48.872  67.395  24.964  1.00 77.75           O  
+ATOM    930  N1    G A  43      47.576  65.697  24.188  1.00 77.74           N  
+ATOM    931  C2    G A  43      46.535  65.187  23.456  1.00 77.07           C  
+ATOM    932  N2    G A  43      46.377  63.863  23.507  1.00 75.92           N  
+ATOM    933  N3    G A  43      45.705  65.927  22.731  1.00 77.52           N  
+ATOM    934  C4    G A  43      46.002  67.244  22.807  1.00 76.21           C  
+ATOM    935  P     C A  44      40.195  67.977  23.797  1.00 69.28           P  
+ATOM    936  OP1   C A  44      38.714  67.902  23.774  1.00 70.40           O  
+ATOM    937  OP2   C A  44      40.874  68.768  24.857  1.00 71.31           O  
+ATOM    938  O5'   C A  44      40.754  66.488  23.872  1.00 68.86           O  
+ATOM    939  C5'   C A  44      40.391  65.506  22.905  1.00 66.43           C  
+ATOM    940  C4'   C A  44      41.060  64.188  23.236  1.00 63.86           C  
+ATOM    941  O4'   C A  44      42.501  64.360  23.212  1.00 61.55           O  
+ATOM    942  C3'   C A  44      40.764  63.664  24.631  1.00 62.52           C  
+ATOM    943  O3'   C A  44      39.610  62.844  24.610  1.00 63.93           O  
+ATOM    944  C2'   C A  44      41.970  62.790  24.921  1.00 61.24           C  
+ATOM    945  O2'   C A  44      41.822  61.512  24.348  1.00 60.87           O  
+ATOM    946  C1'   C A  44      43.089  63.572  24.232  1.00 60.02           C  
+ATOM    947  N1    C A  44      43.846  64.470  25.117  1.00 57.66           N  
+ATOM    948  C2    C A  44      44.654  63.921  26.119  1.00 56.64           C  
+ATOM    949  O2    C A  44      44.654  62.698  26.294  1.00 55.06           O  
+ATOM    950  N3    C A  44      45.410  64.740  26.872  1.00 56.82           N  
+ATOM    951  C4    C A  44      45.372  66.056  26.665  1.00 57.91           C  
+ATOM    952  N4    C A  44      46.153  66.830  27.420  1.00 58.97           N  
+ATOM    953  C5    C A  44      44.533  66.641  25.676  1.00 57.75           C  
+ATOM    954  C6    C A  44      43.788  65.821  24.938  1.00 57.21           C  
+ATOM    955  P     A A  45      38.915  62.435  25.990  1.00 67.24           P  
+ATOM    956  OP1   A A  45      37.920  61.357  25.739  1.00 66.87           O  
+ATOM    957  OP2   A A  45      38.473  63.720  26.574  1.00 68.09           O  
+ATOM    958  O5'   A A  45      40.101  61.855  26.886  1.00 64.88           O  
+ATOM    959  C5'   A A  45      40.493  60.486  26.806  1.00 61.73           C  
+ATOM    960  C4'   A A  45      41.533  60.188  27.856  1.00 60.43           C  
+ATOM    961  O4'   A A  45      42.672  61.053  27.651  1.00 58.62           O  
+ATOM    962  C3'   A A  45      41.106  60.425  29.294  1.00 60.22           C  
+ATOM    963  O3'   A A  45      40.583  59.206  29.787  1.00 62.36           O  
+ATOM    964  C2'   A A  45      42.432  60.692  29.984  1.00 58.55           C  
+ATOM    965  O2'   A A  45      43.085  59.476  30.257  1.00 60.38           O  
+ATOM    966  C1'   A A  45      43.194  61.456  28.902  1.00 57.88           C  
+ATOM    967  N9    A A  45      43.076  62.911  28.943  1.00 57.39           N  
+ATOM    968  C8    A A  45      42.160  63.673  28.261  1.00 56.72           C  
+ATOM    969  N7    A A  45      42.351  64.962  28.378  1.00 55.38           N  
+ATOM    970  C5    A A  45      43.445  65.058  29.218  1.00 55.87           C  
+ATOM    971  C6    A A  45      44.141  66.154  29.716  1.00 56.96           C  
+ATOM    972  N6    A A  45      43.820  67.421  29.438  1.00 57.41           N  
+ATOM    973  N1    A A  45      45.196  65.909  30.525  1.00 57.38           N  
+ATOM    974  C2    A A  45      45.510  64.636  30.807  1.00 56.39           C  
+ATOM    975  N3    A A  45      44.925  63.522  30.402  1.00 56.23           N  
+ATOM    976  C4    A A  45      43.888  63.803  29.596  1.00 56.50           C  
+ATOM    977  P     A A  46      39.689  59.199  31.111  1.00 66.16           P  
+ATOM    978  OP1   A A  46      39.133  57.830  31.270  1.00 64.50           O  
+ATOM    979  OP2   A A  46      38.779  60.365  30.994  1.00 65.42           O  
+ATOM    980  O5'   A A  46      40.701  59.506  32.306  1.00 67.24           O  
+ATOM    981  C5'   A A  46      41.462  58.484  32.965  1.00 66.66           C  
+ATOM    982  C4'   A A  46      42.341  59.140  34.004  1.00 66.99           C  
+ATOM    983  O4'   A A  46      43.028  60.224  33.349  1.00 67.35           O  
+ATOM    984  C3'   A A  46      41.625  59.765  35.195  1.00 67.72           C  
+ATOM    985  O3'   A A  46      41.669  58.959  36.376  1.00 68.21           O  
+ATOM    986  C2'   A A  46      42.564  60.890  35.577  1.00 69.03           C  
+ATOM    987  O2'   A A  46      43.607  60.394  36.401  1.00 72.13           O  
+ATOM    988  C1'   A A  46      43.082  61.336  34.209  1.00 66.39           C  
+ATOM    989  N9    A A  46      42.276  62.348  33.564  1.00 62.89           N  
+ATOM    990  C8    A A  46      41.084  62.169  32.918  1.00 62.52           C  
+ATOM    991  N7    A A  46      40.653  63.243  32.308  1.00 62.67           N  
+ATOM    992  C5    A A  46      41.614  64.200  32.605  1.00 62.01           C  
+ATOM    993  C6    A A  46      41.747  65.544  32.251  1.00 61.96           C  
+ATOM    994  N6    A A  46      40.877  66.192  31.482  1.00 64.57           N  
+ATOM    995  N1    A A  46      42.823  66.214  32.714  1.00 62.07           N  
+ATOM    996  C2    A A  46      43.697  65.565  33.480  1.00 62.26           C  
+ATOM    997  N3    A A  46      43.684  64.298  33.881  1.00 63.14           N  
+ATOM    998  C4    A A  46      42.603  63.665  33.400  1.00 62.84           C  
+ATOM    999  P     C A  47      42.413  57.528  36.388  1.00 67.72           P  
+ATOM   1000  OP1   C A  47      42.629  56.988  35.028  1.00 70.69           O  
+ATOM   1001  OP2   C A  47      41.663  56.714  37.372  1.00 70.77           O  
+ATOM   1002  O5'   C A  47      43.856  57.748  37.034  1.00 64.73           O  
+ATOM   1003  C5'   C A  47      44.558  56.596  37.540  1.00 62.38           C  
+ATOM   1004  C4'   C A  47      46.022  56.881  37.836  1.00 60.75           C  
+ATOM   1005  O4'   C A  47      46.726  57.283  36.632  1.00 57.34           O  
+ATOM   1006  C3'   C A  47      46.301  58.002  38.819  1.00 61.65           C  
+ATOM   1007  O3'   C A  47      46.215  57.517  40.147  1.00 66.33           O  
+ATOM   1008  C2'   C A  47      47.730  58.398  38.472  1.00 58.98           C  
+ATOM   1009  O2'   C A  47      48.710  57.539  39.015  1.00 59.79           O  
+ATOM   1010  C1'   C A  47      47.729  58.226  36.961  1.00 56.15           C  
+ATOM   1011  N1    C A  47      47.460  59.483  36.270  1.00 52.42           N  
+ATOM   1012  C2    C A  47      48.401  60.504  36.371  1.00 52.13           C  
+ATOM   1013  O2    C A  47      49.423  60.304  37.044  1.00 51.95           O  
+ATOM   1014  N3    C A  47      48.179  61.672  35.738  1.00 50.89           N  
+ATOM   1015  C4    C A  47      47.062  61.832  35.031  1.00 51.44           C  
+ATOM   1016  N4    C A  47      46.861  62.994  34.431  1.00 52.10           N  
+ATOM   1017  C5    C A  47      46.091  60.804  34.911  1.00 51.28           C  
+ATOM   1018  C6    C A  47      46.326  59.658  35.541  1.00 51.11           C  
+ATOM   1019  P     C A  48      45.766  58.513  41.317  1.00 69.35           P  
+ATOM   1020  OP1   C A  48      45.485  57.695  42.529  1.00 67.22           O  
+ATOM   1021  OP2   C A  48      44.703  59.395  40.751  1.00 67.82           O  
+ATOM   1022  O5'   C A  48      47.058  59.411  41.569  1.00 67.80           O  
+ATOM   1023  C5'   C A  48      48.244  58.859  42.135  1.00 66.18           C  
+ATOM   1024  C4'   C A  48      49.242  59.962  42.373  1.00 65.53           C  
+ATOM   1025  O4'   C A  48      49.635  60.527  41.099  1.00 62.77           O  
+ATOM   1026  C3'   C A  48      48.679  61.145  43.136  1.00 66.13           C  
+ATOM   1027  O3'   C A  48      48.741  60.923  44.527  1.00 71.49           O  
+ATOM   1028  C2'   C A  48      49.582  62.286  42.698  1.00 63.22           C  
+ATOM   1029  O2'   C A  48      50.818  62.332  43.383  1.00 63.14           O  
+ATOM   1030  C1'   C A  48      49.807  61.927  41.231  1.00 60.44           C  
+ATOM   1031  N1    C A  48      48.843  62.587  40.347  1.00 55.14           N  
+ATOM   1032  C2    C A  48      49.088  63.893  39.966  1.00 54.49           C  
+ATOM   1033  O2    C A  48      50.090  64.465  40.414  1.00 55.34           O  
+ATOM   1034  N3    C A  48      48.233  64.509  39.125  1.00 52.59           N  
+ATOM   1035  C4    C A  48      47.161  63.865  38.679  1.00 51.17           C  
+ATOM   1036  N4    C A  48      46.362  64.510  37.843  1.00 50.44           N  
+ATOM   1037  C5    C A  48      46.871  62.531  39.070  1.00 52.11           C  
+ATOM   1038  C6    C A  48      47.732  61.933  39.898  1.00 54.08           C  
+ATOM   1039  P     A A  49      47.654  61.613  45.471  1.00 74.04           P  
+ATOM   1040  OP1   A A  49      47.893  61.129  46.859  1.00 75.80           O  
+ATOM   1041  OP2   A A  49      46.338  61.389  44.821  1.00 75.26           O  
+ATOM   1042  O5'   A A  49      48.017  63.156  45.395  1.00 72.61           O  
+ATOM   1043  C5'   A A  49      49.222  63.621  45.964  1.00 73.43           C  
+ATOM   1044  C4'   A A  49      49.383  65.087  45.696  1.00 74.37           C  
+ATOM   1045  O4'   A A  49      49.425  65.301  44.263  1.00 73.83           O  
+ATOM   1046  C3'   A A  49      48.229  65.975  46.115  1.00 76.55           C  
+ATOM   1047  O3'   A A  49      48.233  66.240  47.513  1.00 80.22           O  
+ATOM   1048  C2'   A A  49      48.525  67.223  45.299  1.00 75.25           C  
+ATOM   1049  O2'   A A  49      49.601  67.966  45.824  1.00 76.33           O  
+ATOM   1050  C1'   A A  49      48.953  66.608  43.969  1.00 73.01           C  
+ATOM   1051  N9    A A  49      47.835  66.511  43.031  1.00 71.22           N  
+ATOM   1052  C8    A A  49      47.031  65.426  42.781  1.00 71.73           C  
+ATOM   1053  N7    A A  49      46.081  65.663  41.907  1.00 70.51           N  
+ATOM   1054  C5    A A  49      46.280  66.989  41.550  1.00 69.33           C  
+ATOM   1055  C6    A A  49      45.599  67.839  40.664  1.00 69.09           C  
+ATOM   1056  N6    A A  49      44.545  67.453  39.944  1.00 69.34           N  
+ATOM   1057  N1    A A  49      46.044  69.110  40.540  1.00 69.39           N  
+ATOM   1058  C2    A A  49      47.106  69.484  41.260  1.00 70.23           C  
+ATOM   1059  N3    A A  49      47.833  68.775  42.123  1.00 70.98           N  
+ATOM   1060  C4    A A  49      47.360  67.522  42.226  1.00 69.91           C  
+ATOM   1061  P     G A  50      46.846  66.209  48.339  1.00 82.72           P  
+ATOM   1062  OP1   G A  50      47.164  66.087  49.785  1.00 82.86           O  
+ATOM   1063  OP2   G A  50      45.964  65.198  47.703  1.00 81.94           O  
+ATOM   1064  O5'   G A  50      46.219  67.654  48.091  1.00 81.41           O  
+ATOM   1065  C5'   G A  50      45.935  68.105  46.777  1.00 84.37           C  
+ATOM   1066  C4'   G A  50      45.652  69.584  46.784  1.00 86.37           C  
+ATOM   1067  O4'   G A  50      45.672  70.042  45.399  1.00 85.92           O  
+ATOM   1068  C3'   G A  50      44.276  69.971  47.302  1.00 88.18           C  
+ATOM   1069  O3'   G A  50      43.942  70.325  48.632  1.00 92.03           O  
+ATOM   1070  C2'   G A  50      43.367  70.206  46.117  1.00 86.73           C  
+ATOM   1071  O2'   G A  50      42.687  71.428  46.274  1.00 86.89           O  
+ATOM   1072  C1'   G A  50      44.351  70.323  44.948  1.00 84.88           C  
+ATOM   1073  N9    G A  50      43.925  69.272  44.029  1.00 81.15           N  
+ATOM   1074  C8    G A  50      44.114  67.917  44.173  1.00 79.88           C  
+ATOM   1075  N7    G A  50      43.441  67.213  43.306  1.00 79.00           N  
+ATOM   1076  C5    G A  50      42.810  68.160  42.516  1.00 78.27           C  
+ATOM   1077  C6    G A  50      41.925  67.995  41.442  1.00 78.52           C  
+ATOM   1078  O6    G A  50      41.491  66.941  40.959  1.00 78.22           O  
+ATOM   1079  N1    G A  50      41.521  69.220  40.921  1.00 78.77           N  
+ATOM   1080  C2    G A  50      41.922  70.445  41.387  1.00 78.84           C  
+ATOM   1081  N2    G A  50      41.425  71.512  40.756  1.00 79.59           N  
+ATOM   1082  N3    G A  50      42.748  70.610  42.398  1.00 78.54           N  
+ATOM   1083  C4    G A  50      43.143  69.435  42.917  1.00 78.68           C  
+ATOM   1084  P     A A  51      42.880  69.415  49.453  1.00 96.02           P  
+ATOM   1085  OP1   A A  51      42.446  70.195  50.660  1.00 95.76           O  
+ATOM   1086  OP2   A A  51      43.467  68.046  49.625  1.00 96.17           O  
+ATOM   1087  O5'   A A  51      41.609  69.253  48.500  1.00 94.71           O  
+ATOM   1088  C5'   A A  51      40.743  68.118  48.626  1.00 93.44           C  
+ATOM   1089  C4'   A A  51      39.313  68.526  48.358  1.00 92.36           C  
+ATOM   1090  O4'   A A  51      38.931  69.502  49.358  1.00 90.16           O  
+ATOM   1091  C3'   A A  51      39.090  69.216  47.018  1.00 92.54           C  
+ATOM   1092  O3'   A A  51      38.742  68.280  46.002  1.00 96.31           O  
+ATOM   1093  C2'   A A  51      37.939  70.159  47.316  1.00 90.20           C  
+ATOM   1094  O2'   A A  51      36.698  69.487  47.304  1.00 89.63           O  
+ATOM   1095  C1'   A A  51      38.293  70.602  48.737  1.00 86.88           C  
+ATOM   1096  N9    A A  51      39.245  71.707  48.758  1.00 82.36           N  
+ATOM   1097  C8    A A  51      40.528  71.680  49.247  1.00 80.40           C  
+ATOM   1098  N7    A A  51      41.164  72.817  49.124  1.00 78.33           N  
+ATOM   1099  C5    A A  51      40.236  73.652  48.517  1.00 77.49           C  
+ATOM   1100  C6    A A  51      40.296  74.995  48.117  1.00 75.83           C  
+ATOM   1101  N6    A A  51      41.375  75.764  48.279  1.00 75.08           N  
+ATOM   1102  N1    A A  51      39.199  75.530  47.539  1.00 76.02           N  
+ATOM   1103  C2    A A  51      38.118  74.757  47.382  1.00 77.71           C  
+ATOM   1104  N3    A A  51      37.939  73.479  47.718  1.00 78.31           N  
+ATOM   1105  C4    A A  51      39.049  72.981  48.287  1.00 79.42           C  
+ATOM   1106  P     A A  52      39.515  68.317  44.596  1.00 97.90           P  
+ATOM   1107  OP1   A A  52      39.960  66.929  44.294  1.00 98.51           O  
+ATOM   1108  OP2   A A  52      40.520  69.410  44.687  1.00 97.41           O  
+ATOM   1109  O5'   A A  52      38.395  68.749  43.546  1.00 98.75           O  
+ATOM   1110  C5'   A A  52      38.737  69.495  42.378  1.00100.86           C  
+ATOM   1111  C4'   A A  52      37.985  70.804  42.367  1.00101.84           C  
+ATOM   1112  O4'   A A  52      38.002  71.359  43.705  1.00100.72           O  
+ATOM   1113  C3'   A A  52      38.535  71.905  41.465  1.00102.80           C  
+ATOM   1114  O3'   A A  52      37.991  71.808  40.147  1.00105.83           O  
+ATOM   1115  C2'   A A  52      38.020  73.163  42.155  1.00101.22           C  
+ATOM   1116  O2'   A A  52      36.680  73.455  41.831  1.00102.17           O  
+ATOM   1117  C1'   A A  52      38.111  72.767  43.631  1.00 99.83           C  
+ATOM   1118  N9    A A  52      39.367  73.140  44.269  1.00 97.90           N  
+ATOM   1119  C8    A A  52      40.197  72.318  44.981  1.00 96.81           C  
+ATOM   1120  N7    A A  52      41.251  72.923  45.460  1.00 96.75           N  
+ATOM   1121  C5    A A  52      41.110  74.232  45.031  1.00 96.25           C  
+ATOM   1122  C6    A A  52      41.900  75.370  45.216  1.00 95.31           C  
+ATOM   1123  N6    A A  52      43.037  75.365  45.910  1.00 94.72           N  
+ATOM   1124  N1    A A  52      41.481  76.527  44.657  1.00 95.37           N  
+ATOM   1125  C2    A A  52      40.338  76.521  43.962  1.00 96.12           C  
+ATOM   1126  N3    A A  52      39.505  75.511  43.719  1.00 96.85           N  
+ATOM   1127  C4    A A  52      39.955  74.381  44.291  1.00 97.01           C  
+ATOM   1128  P     A A  53      38.666  72.624  38.930  1.00108.87           P  
+ATOM   1129  OP1   A A  53      37.810  72.491  37.721  1.00108.36           O  
+ATOM   1130  OP2   A A  53      40.093  72.223  38.866  1.00109.37           O  
+ATOM   1131  O5'   A A  53      38.606  74.150  39.369  1.00107.46           O  
+ATOM   1132  C5'   A A  53      38.058  75.137  38.499  1.00107.85           C  
+ATOM   1133  C4'   A A  53      38.929  76.365  38.509  1.00108.27           C  
+ATOM   1134  O4'   A A  53      39.209  76.699  39.891  1.00108.81           O  
+ATOM   1135  C3'   A A  53      40.298  76.243  37.854  1.00108.40           C  
+ATOM   1136  O3'   A A  53      40.239  76.517  36.456  1.00107.76           O  
+ATOM   1137  C2'   A A  53      41.086  77.317  38.590  1.00108.67           C  
+ATOM   1138  O2'   A A  53      40.806  78.618  38.112  1.00108.67           O  
+ATOM   1139  C1'   A A  53      40.542  77.152  40.011  1.00109.27           C  
+ATOM   1140  N9    A A  53      41.277  76.108  40.718  1.00109.89           N  
+ATOM   1141  C8    A A  53      41.033  74.758  40.673  1.00110.42           C  
+ATOM   1142  N7    A A  53      41.870  74.045  41.382  1.00110.63           N  
+ATOM   1143  C5    A A  53      42.720  74.990  41.938  1.00110.94           C  
+ATOM   1144  C6    A A  53      43.826  74.875  42.795  1.00111.51           C  
+ATOM   1145  N6    A A  53      44.285  73.710  43.257  1.00112.10           N  
+ATOM   1146  N1    A A  53      44.452  76.014  43.167  1.00111.76           N  
+ATOM   1147  C2    A A  53      43.988  77.184  42.703  1.00111.34           C  
+ATOM   1148  N3    A A  53      42.958  77.419  41.892  1.00110.90           N  
+ATOM   1149  C4    A A  53      42.361  76.266  41.542  1.00110.47           C  
+ATOM   1150  P     U A  54      40.720  75.399  35.403  1.00107.30           P  
+ATOM   1151  OP1   U A  54      40.655  75.985  34.040  1.00107.24           O  
+ATOM   1152  OP2   U A  54      39.952  74.165  35.708  1.00107.10           O  
+ATOM   1153  O5'   U A  54      42.250  75.138  35.772  1.00104.79           O  
+ATOM   1154  C5'   U A  54      43.228  76.148  35.560  1.00101.43           C  
+ATOM   1155  C4'   U A  54      44.377  75.983  36.522  1.00 99.06           C  
+ATOM   1156  O4'   U A  54      43.865  75.376  37.739  1.00 98.18           O  
+ATOM   1157  C3'   U A  54      45.481  75.031  36.092  1.00 98.11           C  
+ATOM   1158  O3'   U A  54      46.453  75.676  35.281  1.00 97.57           O  
+ATOM   1159  C2'   U A  54      46.093  74.631  37.424  1.00 97.54           C  
+ATOM   1160  O2'   U A  54      46.934  75.633  37.945  1.00 98.55           O  
+ATOM   1161  C1'   U A  54      44.850  74.523  38.300  1.00 96.75           C  
+ATOM   1162  N1    U A  54      44.348  73.146  38.309  1.00 95.04           N  
+ATOM   1163  C2    U A  54      44.996  72.251  39.131  1.00 93.99           C  
+ATOM   1164  O2    U A  54      45.921  72.575  39.851  1.00 94.77           O  
+ATOM   1165  N3    U A  54      44.524  70.966  39.077  1.00 92.33           N  
+ATOM   1166  C4    U A  54      43.489  70.502  38.302  1.00 92.24           C  
+ATOM   1167  O4    U A  54      43.181  69.316  38.357  1.00 90.91           O  
+ATOM   1168  C5    U A  54      42.859  71.495  37.488  1.00 93.43           C  
+ATOM   1169  C6    U A  54      43.298  72.754  37.521  1.00 94.21           C  
+ATOM   1170  P     G A  55      47.525  74.791  34.471  1.00 97.86           P  
+ATOM   1171  OP1   G A  55      48.367  75.702  33.647  1.00 97.40           O  
+ATOM   1172  OP2   G A  55      46.754  73.696  33.816  1.00 97.86           O  
+ATOM   1173  O5'   G A  55      48.459  74.154  35.595  1.00 93.42           O  
+ATOM   1174  C5'   G A  55      49.390  74.964  36.297  1.00 88.24           C  
+ATOM   1175  C4'   G A  55      50.177  74.134  37.278  1.00 84.14           C  
+ATOM   1176  O4'   G A  55      49.264  73.510  38.217  1.00 83.46           O  
+ATOM   1177  C3'   G A  55      50.899  72.957  36.664  1.00 82.28           C  
+ATOM   1178  O3'   G A  55      52.132  73.333  36.107  1.00 79.65           O  
+ATOM   1179  C2'   G A  55      51.068  72.020  37.846  1.00 82.45           C  
+ATOM   1180  O2'   G A  55      52.130  72.351  38.713  1.00 84.02           O  
+ATOM   1181  C1'   G A  55      49.743  72.224  38.567  1.00 82.65           C  
+ATOM   1182  N9    G A  55      48.800  71.227  38.088  1.00 81.63           N  
+ATOM   1183  C8    G A  55      47.779  71.396  37.188  1.00 81.42           C  
+ATOM   1184  N7    G A  55      47.143  70.286  36.929  1.00 81.40           N  
+ATOM   1185  C5    G A  55      47.781  69.334  37.714  1.00 79.68           C  
+ATOM   1186  C6    G A  55      47.541  67.944  37.855  1.00 79.26           C  
+ATOM   1187  O6    G A  55      46.695  67.247  37.288  1.00 77.42           O  
+ATOM   1188  N1    G A  55      48.419  67.366  38.763  1.00 79.31           N  
+ATOM   1189  C2    G A  55      49.404  68.036  39.442  1.00 79.67           C  
+ATOM   1190  N2    G A  55      50.148  67.311  40.283  1.00 79.56           N  
+ATOM   1191  N3    G A  55      49.642  69.324  39.310  1.00 79.52           N  
+ATOM   1192  C4    G A  55      48.797  69.905  38.440  1.00 80.03           C  
+ATOM   1193  P     G A  56      52.789  72.392  35.004  1.00 78.55           P  
+ATOM   1194  OP1   G A  56      54.080  72.967  34.550  1.00 77.49           O  
+ATOM   1195  OP2   G A  56      51.707  72.125  34.021  1.00 80.25           O  
+ATOM   1196  O5'   G A  56      53.090  71.050  35.801  1.00 75.12           O  
+ATOM   1197  C5'   G A  56      54.067  71.039  36.829  1.00 69.26           C  
+ATOM   1198  C4'   G A  56      54.371  69.628  37.263  1.00 65.32           C  
+ATOM   1199  O4'   G A  56      53.188  69.046  37.881  1.00 62.82           O  
+ATOM   1200  C3'   G A  56      54.686  68.665  36.136  1.00 63.79           C  
+ATOM   1201  O3'   G A  56      56.038  68.731  35.713  1.00 65.54           O  
+ATOM   1202  C2'   G A  56      54.375  67.320  36.769  1.00 62.66           C  
+ATOM   1203  O2'   G A  56      55.428  66.873  37.601  1.00 62.67           O  
+ATOM   1204  C1'   G A  56      53.141  67.657  37.609  1.00 60.08           C  
+ATOM   1205  N9    G A  56      51.901  67.352  36.905  1.00 55.37           N  
+ATOM   1206  C8    G A  56      51.122  68.217  36.174  1.00 55.74           C  
+ATOM   1207  N7    G A  56      50.106  67.629  35.599  1.00 52.72           N  
+ATOM   1208  C5    G A  56      50.214  66.302  35.990  1.00 50.91           C  
+ATOM   1209  C6    G A  56      49.406  65.204  35.675  1.00 49.97           C  
+ATOM   1210  O6    G A  56      48.416  65.180  34.958  1.00 50.77           O  
+ATOM   1211  N1    G A  56      49.854  64.038  36.284  1.00 48.77           N  
+ATOM   1212  C2    G A  56      50.958  63.951  37.093  1.00 50.36           C  
+ATOM   1213  N2    G A  56      51.234  62.732  37.591  1.00 48.97           N  
+ATOM   1214  N3    G A  56      51.734  64.983  37.392  1.00 51.51           N  
+ATOM   1215  C4    G A  56      51.304  66.118  36.809  1.00 51.89           C  
+ATOM   1216  P     U A  57      56.393  68.380  34.188  1.00 68.18           P  
+ATOM   1217  OP1   U A  57      57.633  67.563  34.126  1.00 68.19           O  
+ATOM   1218  OP2   U A  57      56.289  69.634  33.385  1.00 68.11           O  
+ATOM   1219  O5'   U A  57      55.175  67.458  33.751  1.00 66.24           O  
+ATOM   1220  C5'   U A  57      55.324  66.486  32.736  1.00 62.03           C  
+ATOM   1221  C4'   U A  57      55.340  65.129  33.360  1.00 59.74           C  
+ATOM   1222  O4'   U A  57      54.232  65.038  34.289  1.00 57.88           O  
+ATOM   1223  C3'   U A  57      55.156  63.959  32.420  1.00 58.61           C  
+ATOM   1224  O3'   U A  57      56.382  63.599  31.803  1.00 58.26           O  
+ATOM   1225  C2'   U A  57      54.620  62.895  33.370  1.00 58.38           C  
+ATOM   1226  O2'   U A  57      55.622  62.306  34.173  1.00 58.99           O  
+ATOM   1227  C1'   U A  57      53.699  63.732  34.261  1.00 56.63           C  
+ATOM   1228  N1    U A  57      52.361  63.811  33.672  1.00 55.20           N  
+ATOM   1229  C2    U A  57      51.624  62.655  33.644  1.00 55.04           C  
+ATOM   1230  O2    U A  57      52.044  61.605  34.100  1.00 55.79           O  
+ATOM   1231  N3    U A  57      50.387  62.767  33.057  1.00 53.93           N  
+ATOM   1232  C4    U A  57      49.831  63.906  32.503  1.00 53.12           C  
+ATOM   1233  O4    U A  57      48.707  63.850  32.010  1.00 53.57           O  
+ATOM   1234  C5    U A  57      50.660  65.073  32.575  1.00 52.60           C  
+ATOM   1235  C6    U A  57      51.868  64.988  33.148  1.00 54.55           C  
+ATOM   1236  P     G A  58      56.449  63.448  30.205  1.00 60.26           P  
+ATOM   1237  OP1   G A  58      57.754  62.807  29.877  1.00 60.58           O  
+ATOM   1238  OP2   G A  58      56.111  64.754  29.597  1.00 58.54           O  
+ATOM   1239  O5'   G A  58      55.268  62.426  29.875  1.00 57.10           O  
+ATOM   1240  C5'   G A  58      55.312  61.107  30.387  1.00 55.69           C  
+ATOM   1241  C4'   G A  58      54.029  60.369  30.093  1.00 55.43           C  
+ATOM   1242  O4'   G A  58      52.921  61.007  30.791  1.00 55.24           O  
+ATOM   1243  C3'   G A  58      53.589  60.368  28.636  1.00 54.18           C  
+ATOM   1244  O3'   G A  58      54.246  59.338  27.923  1.00 53.96           O  
+ATOM   1245  C2'   G A  58      52.097  60.092  28.757  1.00 54.41           C  
+ATOM   1246  O2'   G A  58      51.846  58.731  29.012  1.00 57.23           O  
+ATOM   1247  C1'   G A  58      51.737  60.887  30.012  1.00 53.85           C  
+ATOM   1248  N9    G A  58      51.267  62.217  29.656  1.00 53.03           N  
+ATOM   1249  C8    G A  58      51.950  63.400  29.767  1.00 52.08           C  
+ATOM   1250  N7    G A  58      51.278  64.419  29.308  1.00 51.44           N  
+ATOM   1251  C5    G A  58      50.074  63.877  28.879  1.00 50.05           C  
+ATOM   1252  C6    G A  58      48.951  64.496  28.292  1.00 50.75           C  
+ATOM   1253  O6    G A  58      48.794  65.685  28.008  1.00 53.29           O  
+ATOM   1254  N1    G A  58      47.939  63.583  28.022  1.00 50.16           N  
+ATOM   1255  C2    G A  58      48.003  62.239  28.270  1.00 51.00           C  
+ATOM   1256  N2    G A  58      46.914  61.522  27.924  1.00 50.63           N  
+ATOM   1257  N3    G A  58      49.053  61.641  28.814  1.00 52.48           N  
+ATOM   1258  C4    G A  58      50.045  62.521  29.095  1.00 51.88           C  
+ATOM   1259  P     C A  59      54.759  59.607  26.431  1.00 53.17           P  
+ATOM   1260  OP1   C A  59      55.673  58.491  26.089  1.00 55.70           O  
+ATOM   1261  OP2   C A  59      55.228  61.001  26.296  1.00 53.99           O  
+ATOM   1262  O5'   C A  59      53.445  59.435  25.560  1.00 54.08           O  
+ATOM   1263  C5'   C A  59      52.793  58.183  25.522  1.00 52.32           C  
+ATOM   1264  C4'   C A  59      51.386  58.359  25.064  1.00 52.96           C  
+ATOM   1265  O4'   C A  59      50.695  59.217  26.007  1.00 53.34           O  
+ATOM   1266  C3'   C A  59      51.248  59.093  23.746  1.00 54.55           C  
+ATOM   1267  O3'   C A  59      51.430  58.198  22.670  1.00 56.10           O  
+ATOM   1268  C2'   C A  59      49.826  59.625  23.841  1.00 54.97           C  
+ATOM   1269  O2'   C A  59      48.860  58.610  23.649  1.00 56.71           O  
+ATOM   1270  C1'   C A  59      49.766  60.033  25.310  1.00 55.15           C  
+ATOM   1271  N1    C A  59      50.164  61.434  25.444  1.00 55.90           N  
+ATOM   1272  C2    C A  59      49.218  62.407  25.156  1.00 56.55           C  
+ATOM   1273  O2    C A  59      48.077  62.055  24.858  1.00 59.12           O  
+ATOM   1274  N3    C A  59      49.563  63.702  25.209  1.00 56.90           N  
+ATOM   1275  C4    C A  59      50.800  64.045  25.557  1.00 56.99           C  
+ATOM   1276  N4    C A  59      51.083  65.348  25.606  1.00 57.32           N  
+ATOM   1277  C5    C A  59      51.793  63.071  25.874  1.00 56.89           C  
+ATOM   1278  C6    C A  59      51.433  61.787  25.809  1.00 56.91           C  
+ATOM   1279  P     C A  60      52.117  58.708  21.315  1.00 58.55           P  
+ATOM   1280  OP1   C A  60      52.566  57.477  20.623  1.00 60.10           O  
+ATOM   1281  OP2   C A  60      53.091  59.805  21.572  1.00 59.59           O  
+ATOM   1282  O5'   C A  60      50.930  59.382  20.504  1.00 58.02           O  
+ATOM   1283  C5'   C A  60      49.699  58.712  20.311  1.00 58.31           C  
+ATOM   1284  C4'   C A  60      48.692  59.668  19.729  1.00 60.59           C  
+ATOM   1285  O4'   C A  60      48.367  60.687  20.711  1.00 61.17           O  
+ATOM   1286  C3'   C A  60      49.215  60.451  18.536  1.00 61.75           C  
+ATOM   1287  O3'   C A  60      48.977  59.710  17.353  1.00 62.05           O  
+ATOM   1288  C2'   C A  60      48.336  61.689  18.549  1.00 62.65           C  
+ATOM   1289  O2'   C A  60      47.085  61.451  17.947  1.00 65.68           O  
+ATOM   1290  C1'   C A  60      48.151  61.920  20.050  1.00 62.43           C  
+ATOM   1291  N1    C A  60      49.075  62.919  20.594  1.00 63.39           N  
+ATOM   1292  C2    C A  60      48.741  64.252  20.458  1.00 63.93           C  
+ATOM   1293  O2    C A  60      47.699  64.537  19.859  1.00 66.02           O  
+ATOM   1294  N3    C A  60      49.552  65.196  20.975  1.00 64.43           N  
+ATOM   1295  C4    C A  60      50.669  64.837  21.602  1.00 64.08           C  
+ATOM   1296  N4    C A  60      51.437  65.800  22.106  1.00 64.35           N  
+ATOM   1297  C5    C A  60      51.045  63.476  21.743  1.00 63.45           C  
+ATOM   1298  C6    C A  60      50.228  62.556  21.229  1.00 63.91           C  
+ATOM   1299  P     A A  61      50.069  59.698  16.181  1.00 61.03           P  
+ATOM   1300  OP1   A A  61      51.287  59.065  16.739  1.00 62.45           O  
+ATOM   1301  OP2   A A  61      50.159  61.053  15.587  1.00 61.91           O  
+ATOM   1302  O5'   A A  61      49.427  58.698  15.124  1.00 60.51           O  
+ATOM   1303  C5'   A A  61      49.093  57.375  15.519  1.00 59.15           C  
+ATOM   1304  C4'   A A  61      48.325  56.663  14.432  1.00 57.25           C  
+ATOM   1305  O4'   A A  61      49.094  56.675  13.204  1.00 57.46           O  
+ATOM   1306  C3'   A A  61      48.113  55.187  14.715  1.00 56.35           C  
+ATOM   1307  O3'   A A  61      46.952  54.985  15.510  1.00 54.37           O  
+ATOM   1308  C2'   A A  61      47.924  54.610  13.325  1.00 56.77           C  
+ATOM   1309  O2'   A A  61      46.606  54.782  12.860  1.00 58.82           O  
+ATOM   1310  C1'   A A  61      48.893  55.462  12.506  1.00 56.45           C  
+ATOM   1311  N9    A A  61      50.194  54.840  12.299  1.00 55.64           N  
+ATOM   1312  C8    A A  61      51.375  55.127  12.934  1.00 56.06           C  
+ATOM   1313  N7    A A  61      52.390  54.419  12.503  1.00 56.16           N  
+ATOM   1314  C5    A A  61      51.836  53.608  11.524  1.00 55.20           C  
+ATOM   1315  C6    A A  61      52.389  52.642  10.683  1.00 53.69           C  
+ATOM   1316  N6    A A  61      53.685  52.311  10.692  1.00 53.61           N  
+ATOM   1317  N1    A A  61      51.563  52.015   9.819  1.00 52.98           N  
+ATOM   1318  C2    A A  61      50.275  52.347   9.811  1.00 52.85           C  
+ATOM   1319  N3    A A  61      49.634  53.243  10.552  1.00 53.34           N  
+ATOM   1320  C4    A A  61      50.484  53.847  11.397  1.00 55.08           C  
+ATOM   1321  P     A A  62      46.873  53.710  16.473  1.00 53.92           P  
+ATOM   1322  OP1   A A  62      45.603  53.723  17.227  1.00 56.55           O  
+ATOM   1323  OP2   A A  62      48.168  53.615  17.202  1.00 53.63           O  
+ATOM   1324  O5'   A A  62      46.816  52.489  15.470  1.00 54.86           O  
+ATOM   1325  C5'   A A  62      45.702  52.292  14.626  1.00 53.89           C  
+ATOM   1326  C4'   A A  62      45.976  51.126  13.735  1.00 54.46           C  
+ATOM   1327  O4'   A A  62      47.097  51.468  12.878  1.00 54.59           O  
+ATOM   1328  C3'   A A  62      46.438  49.885  14.479  1.00 53.52           C  
+ATOM   1329  O3'   A A  62      45.316  49.126  14.908  1.00 51.33           O  
+ATOM   1330  C2'   A A  62      47.214  49.158  13.396  1.00 54.74           C  
+ATOM   1331  O2'   A A  62      46.297  48.519  12.537  1.00 56.57           O  
+ATOM   1332  C1'   A A  62      47.893  50.323  12.664  1.00 54.85           C  
+ATOM   1333  N9    A A  62      49.247  50.628  13.130  1.00 55.09           N  
+ATOM   1334  C8    A A  62      49.610  51.419  14.192  1.00 55.06           C  
+ATOM   1335  N7    A A  62      50.908  51.497  14.377  1.00 55.94           N  
+ATOM   1336  C5    A A  62      51.434  50.706  13.369  1.00 54.99           C  
+ATOM   1337  C6    A A  62      52.743  50.373  13.029  1.00 53.85           C  
+ATOM   1338  N6    A A  62      53.812  50.830  13.683  1.00 52.77           N  
+ATOM   1339  N1    A A  62      52.928  49.550  11.980  1.00 53.74           N  
+ATOM   1340  C2    A A  62      51.858  49.111  11.318  1.00 54.27           C  
+ATOM   1341  N3    A A  62      50.576  49.358  11.532  1.00 53.66           N  
+ATOM   1342  C4    A A  62      50.426  50.169  12.589  1.00 55.03           C  
+ATOM   1343  P     U A  63      45.533  47.735  15.702  1.00 53.62           P  
+ATOM   1344  OP1   U A  63      46.808  47.065  15.295  1.00 52.97           O  
+ATOM   1345  OP2   U A  63      44.239  46.994  15.593  1.00 51.06           O  
+ATOM   1346  O5'   U A  63      45.691  48.165  17.223  1.00 51.23           O  
+ATOM   1347  C5'   U A  63      44.669  48.915  17.849  1.00 53.41           C  
+ATOM   1348  C4'   U A  63      44.630  48.623  19.322  1.00 54.01           C  
+ATOM   1349  O4'   U A  63      44.185  47.260  19.517  1.00 55.92           O  
+ATOM   1350  C3'   U A  63      46.012  48.682  19.940  1.00 54.73           C  
+ATOM   1351  O3'   U A  63      46.420  49.839  20.679  1.00 51.79           O  
+ATOM   1352  C2'   U A  63      46.533  47.253  20.033  1.00 54.94           C  
+ATOM   1353  O2'   U A  63      47.210  46.942  21.223  1.00 56.33           O  
+ATOM   1354  C1'   U A  63      45.234  46.451  20.007  1.00 57.13           C  
+ATOM   1355  N1    U A  63      45.287  45.226  19.207  1.00 60.34           N  
+ATOM   1356  C2    U A  63      45.138  44.028  19.869  1.00 61.56           C  
+ATOM   1357  O2    U A  63      44.930  43.959  21.059  1.00 61.71           O  
+ATOM   1358  N3    U A  63      45.231  42.914  19.079  1.00 64.02           N  
+ATOM   1359  C4    U A  63      45.442  42.883  17.712  1.00 64.85           C  
+ATOM   1360  O4    U A  63      45.492  41.795  17.125  1.00 65.14           O  
+ATOM   1361  C5    U A  63      45.570  44.173  17.102  1.00 64.42           C  
+ATOM   1362  C6    U A  63      45.489  45.272  17.855  1.00 62.18           C  
+ATOM   1363  P     U A  64      46.459  49.804  22.269  1.00 47.09           P  
+ATOM   1364  OP1   U A  64      45.474  48.814  22.740  1.00 49.72           O  
+ATOM   1365  OP2   U A  64      46.277  51.213  22.644  1.00 53.47           O  
+ATOM   1366  O5'   U A  64      47.944  49.291  22.621  1.00 48.05           O  
+ATOM   1367  C5'   U A  64      49.095  50.077  22.297  1.00 47.89           C  
+ATOM   1368  C4'   U A  64      50.371  49.234  22.232  1.00 47.96           C  
+ATOM   1369  O4'   U A  64      50.790  48.792  23.553  1.00 49.48           O  
+ATOM   1370  C3'   U A  64      50.175  47.926  21.478  1.00 49.78           C  
+ATOM   1371  O3'   U A  64      50.580  48.044  20.115  1.00 52.62           O  
+ATOM   1372  C2'   U A  64      51.262  47.014  22.015  1.00 48.66           C  
+ATOM   1373  O2'   U A  64      52.403  47.113  21.200  1.00 52.21           O  
+ATOM   1374  C1'   U A  64      51.487  47.568  23.418  1.00 47.24           C  
+ATOM   1375  N1    U A  64      51.309  46.702  24.587  1.00 44.75           N  
+ATOM   1376  C2    U A  64      52.389  45.900  24.918  1.00 43.26           C  
+ATOM   1377  O2    U A  64      53.425  45.886  24.269  1.00 39.02           O  
+ATOM   1378  N3    U A  64      52.214  45.120  26.034  1.00 42.01           N  
+ATOM   1379  C4    U A  64      51.096  45.064  26.839  1.00 44.23           C  
+ATOM   1380  O4    U A  64      51.140  44.403  27.873  1.00 46.83           O  
+ATOM   1381  C5    U A  64      50.012  45.904  26.423  1.00 44.86           C  
+ATOM   1382  C6    U A  64      50.152  46.679  25.333  1.00 46.40           C  
+ATOM   1383  P     C A  65      51.326  49.377  19.562  1.00 51.71           P  
+ATOM   1384  OP1   C A  65      52.793  49.248  19.702  1.00 52.59           O  
+ATOM   1385  OP2   C A  65      50.663  50.616  20.021  1.00 54.65           O  
+ATOM   1386  O5'   C A  65      50.956  49.256  18.023  1.00 51.76           O  
+ATOM   1387  C5'   C A  65      49.594  49.033  17.666  1.00 51.17           C  
+ATOM   1388  C4'   C A  65      49.473  47.942  16.630  1.00 50.61           C  
+ATOM   1389  O4'   C A  65      50.228  48.336  15.457  1.00 51.33           O  
+ATOM   1390  C3'   C A  65      50.034  46.584  17.008  1.00 50.04           C  
+ATOM   1391  O3'   C A  65      49.065  45.811  17.703  1.00 50.23           O  
+ATOM   1392  C2'   C A  65      50.312  45.974  15.645  1.00 50.59           C  
+ATOM   1393  O2'   C A  65      49.128  45.495  15.051  1.00 52.19           O  
+ATOM   1394  C1'   C A  65      50.793  47.192  14.856  1.00 50.72           C  
+ATOM   1395  N1    C A  65      52.250  47.341  14.829  1.00 49.53           N  
+ATOM   1396  C2    C A  65      52.951  46.590  13.916  1.00 49.03           C  
+ATOM   1397  O2    C A  65      52.317  45.825  13.179  1.00 48.88           O  
+ATOM   1398  N3    C A  65      54.296  46.704  13.849  1.00 49.20           N  
+ATOM   1399  C4    C A  65      54.933  47.538  14.661  1.00 49.64           C  
+ATOM   1400  N4    C A  65      56.250  47.644  14.526  1.00 48.30           N  
+ATOM   1401  C5    C A  65      54.241  48.311  15.632  1.00 50.78           C  
+ATOM   1402  C6    C A  65      52.905  48.188  15.676  1.00 49.60           C  
+ATOM   1403  P     C A  66      49.544  44.611  18.663  1.00 48.93           P  
+ATOM   1404  OP1   C A  66      48.423  44.178  19.537  1.00 48.42           O  
+ATOM   1405  OP2   C A  66      50.819  45.058  19.272  1.00 50.19           O  
+ATOM   1406  O5'   C A  66      49.908  43.433  17.666  1.00 49.16           O  
+ATOM   1407  C5'   C A  66      48.903  42.780  16.909  1.00 49.92           C  
+ATOM   1408  C4'   C A  66      49.538  41.774  15.989  1.00 50.54           C  
+ATOM   1409  O4'   C A  66      50.440  42.461  15.091  1.00 50.00           O  
+ATOM   1410  C3'   C A  66      50.440  40.788  16.695  1.00 51.95           C  
+ATOM   1411  O3'   C A  66      49.688  39.704  17.173  1.00 55.18           O  
+ATOM   1412  C2'   C A  66      51.380  40.343  15.597  1.00 51.22           C  
+ATOM   1413  O2'   C A  66      50.802  39.365  14.770  1.00 54.36           O  
+ATOM   1414  C1'   C A  66      51.558  41.640  14.822  1.00 49.83           C  
+ATOM   1415  N1    C A  66      52.765  42.358  15.216  1.00 49.69           N  
+ATOM   1416  C2    C A  66      53.962  41.892  14.740  1.00 49.58           C  
+ATOM   1417  O2    C A  66      53.950  40.868  14.055  1.00 52.02           O  
+ATOM   1418  N3    C A  66      55.105  42.549  15.034  1.00 48.70           N  
+ATOM   1419  C4    C A  66      55.067  43.641  15.795  1.00 49.07           C  
+ATOM   1420  N4    C A  66      56.224  44.276  16.032  1.00 50.40           N  
+ATOM   1421  C5    C A  66      53.843  44.135  16.335  1.00 50.89           C  
+ATOM   1422  C6    C A  66      52.720  43.464  16.021  1.00 49.92           C  
+ATOM   1423  P     U A  67      50.160  38.971  18.505  1.00 60.57           P  
+ATOM   1424  OP1   U A  67      49.141  37.934  18.832  1.00 59.64           O  
+ATOM   1425  OP2   U A  67      50.501  40.029  19.500  1.00 60.62           O  
+ATOM   1426  O5'   U A  67      51.540  38.286  18.096  1.00 58.02           O  
+ATOM   1427  C5'   U A  67      51.590  37.228  17.156  1.00 57.98           C  
+ATOM   1428  C4'   U A  67      53.024  36.859  16.894  1.00 60.31           C  
+ATOM   1429  O4'   U A  67      53.725  38.007  16.350  1.00 60.03           O  
+ATOM   1430  C3'   U A  67      53.814  36.475  18.130  1.00 62.18           C  
+ATOM   1431  O3'   U A  67      53.645  35.077  18.330  1.00 67.36           O  
+ATOM   1432  C2'   U A  67      55.243  36.786  17.716  1.00 60.43           C  
+ATOM   1433  O2'   U A  67      55.790  35.730  16.969  1.00 60.29           O  
+ATOM   1434  C1'   U A  67      55.052  38.027  16.836  1.00 59.24           C  
+ATOM   1435  N1    U A  67      55.230  39.310  17.518  1.00 58.88           N  
+ATOM   1436  C2    U A  67      56.440  39.956  17.379  1.00 58.64           C  
+ATOM   1437  O2    U A  67      57.395  39.461  16.803  1.00 60.38           O  
+ATOM   1438  N3    U A  67      56.493  41.205  17.945  1.00 57.00           N  
+ATOM   1439  C4    U A  67      55.490  41.839  18.634  1.00 56.08           C  
+ATOM   1440  O4    U A  67      55.624  43.017  18.919  1.00 57.14           O  
+ATOM   1441  C5    U A  67      54.299  41.077  18.794  1.00 56.32           C  
+ATOM   1442  C6    U A  67      54.210  39.869  18.243  1.00 58.50           C  
+ATOM   1443  P     G A  68      54.230  34.371  19.646  1.00 71.64           P  
+ATOM   1444  OP1   G A  68      53.897  32.933  19.519  1.00 71.19           O  
+ATOM   1445  OP2   G A  68      53.751  35.126  20.834  1.00 71.67           O  
+ATOM   1446  O5'   G A  68      55.806  34.568  19.513  1.00 71.77           O  
+ATOM   1447  C5'   G A  68      56.659  33.491  19.142  1.00 75.69           C  
+ATOM   1448  C4'   G A  68      58.091  33.830  19.491  1.00 79.27           C  
+ATOM   1449  O4'   G A  68      58.380  35.132  18.918  1.00 79.57           O  
+ATOM   1450  C3'   G A  68      58.385  34.004  20.980  1.00 81.28           C  
+ATOM   1451  O3'   G A  68      58.787  32.812  21.679  1.00 83.11           O  
+ATOM   1452  C2'   G A  68      59.584  34.943  20.956  1.00 82.22           C  
+ATOM   1453  O2'   G A  68      60.802  34.283  20.671  1.00 84.89           O  
+ATOM   1454  C1'   G A  68      59.236  35.853  19.782  1.00 81.50           C  
+ATOM   1455  N9    G A  68      58.575  37.093  20.173  1.00 81.29           N  
+ATOM   1456  C8    G A  68      57.250  37.289  20.478  1.00 81.20           C  
+ATOM   1457  N7    G A  68      56.970  38.535  20.755  1.00 80.75           N  
+ATOM   1458  C5    G A  68      58.186  39.194  20.627  1.00 80.02           C  
+ATOM   1459  C6    G A  68      58.516  40.567  20.783  1.00 80.22           C  
+ATOM   1460  O6    G A  68      57.767  41.520  21.044  1.00 80.59           O  
+ATOM   1461  N1    G A  68      59.875  40.791  20.584  1.00 80.75           N  
+ATOM   1462  C2    G A  68      60.798  39.828  20.258  1.00 80.78           C  
+ATOM   1463  N2    G A  68      62.075  40.236  20.108  1.00 79.89           N  
+ATOM   1464  N3    G A  68      60.496  38.555  20.089  1.00 80.70           N  
+ATOM   1465  C4    G A  68      59.185  38.312  20.288  1.00 80.39           C  
+ATOM   1466  P     C A  69      59.229  31.475  20.876  1.00 84.26           P  
+ATOM   1467  OP1   C A  69      60.580  31.681  20.282  1.00 80.96           O  
+ATOM   1468  OP2   C A  69      58.112  30.992  20.017  1.00 83.67           O  
+ATOM   1469  O5'   C A  69      59.373  30.393  22.036  1.00 81.95           O  
+ATOM   1470  C5'   C A  69      60.304  30.567  23.099  1.00 78.18           C  
+ATOM   1471  C4'   C A  69      59.612  30.374  24.428  1.00 76.05           C  
+ATOM   1472  O4'   C A  69      58.981  31.619  24.844  1.00 74.44           O  
+ATOM   1473  C3'   C A  69      58.468  29.372  24.406  1.00 75.69           C  
+ATOM   1474  O3'   C A  69      58.908  28.028  24.532  1.00 76.59           O  
+ATOM   1475  C2'   C A  69      57.624  29.805  25.597  1.00 74.75           C  
+ATOM   1476  O2'   C A  69      58.123  29.297  26.823  1.00 74.80           O  
+ATOM   1477  C1'   C A  69      57.768  31.329  25.529  1.00 73.22           C  
+ATOM   1478  N1    C A  69      56.654  31.993  24.829  1.00 70.35           N  
+ATOM   1479  C2    C A  69      55.423  32.067  25.471  1.00 69.49           C  
+ATOM   1480  O2    C A  69      55.308  31.549  26.584  1.00 69.27           O  
+ATOM   1481  N3    C A  69      54.392  32.698  24.862  1.00 67.72           N  
+ATOM   1482  C4    C A  69      54.563  33.232  23.651  1.00 68.13           C  
+ATOM   1483  N4    C A  69      53.526  33.851  23.091  1.00 69.40           N  
+ATOM   1484  C5    C A  69      55.807  33.158  22.964  1.00 66.89           C  
+ATOM   1485  C6    C A  69      56.816  32.536  23.584  1.00 68.40           C  
+ATOM   1486  P     A A  70      57.971  26.841  23.990  1.00 76.83           P  
+ATOM   1487  OP1   A A  70      58.699  25.566  24.172  1.00 76.97           O  
+ATOM   1488  OP2   A A  70      57.496  27.236  22.638  1.00 78.32           O  
+ATOM   1489  O5'   A A  70      56.735  26.838  24.986  1.00 73.56           O  
+ATOM   1490  C5'   A A  70      56.921  26.420  26.317  1.00 71.88           C  
+ATOM   1491  C4'   A A  70      55.660  26.599  27.107  1.00 70.52           C  
+ATOM   1492  O4'   A A  70      55.305  28.006  27.120  1.00 70.13           O  
+ATOM   1493  C3'   A A  70      54.435  25.933  26.512  1.00 70.69           C  
+ATOM   1494  O3'   A A  70      54.363  24.549  26.820  1.00 72.81           O  
+ATOM   1495  C2'   A A  70      53.305  26.731  27.143  1.00 69.29           C  
+ATOM   1496  O2'   A A  70      53.075  26.359  28.482  1.00 69.16           O  
+ATOM   1497  C1'   A A  70      53.893  28.138  27.128  1.00 68.11           C  
+ATOM   1498  N9    A A  70      53.470  28.894  25.952  1.00 64.00           N  
+ATOM   1499  C8    A A  70      54.178  29.247  24.834  1.00 62.02           C  
+ATOM   1500  N7    A A  70      53.474  29.925  23.959  1.00 60.61           N  
+ATOM   1501  C5    A A  70      52.220  30.021  24.544  1.00 60.84           C  
+ATOM   1502  C6    A A  70      51.013  30.616  24.123  1.00 60.96           C  
+ATOM   1503  N6    A A  70      50.866  31.271  22.968  1.00 61.70           N  
+ATOM   1504  N1    A A  70      49.944  30.517  24.947  1.00 58.65           N  
+ATOM   1505  C2    A A  70      50.089  29.880  26.111  1.00 58.26           C  
+ATOM   1506  N3    A A  70      51.171  29.287  26.616  1.00 60.01           N  
+ATOM   1507  C4    A A  70      52.208  29.393  25.770  1.00 61.17           C  
+ATOM   1508  P     G A  71      53.262  23.639  26.088  1.00 73.21           P  
+ATOM   1509  OP1   G A  71      53.410  22.249  26.575  1.00 75.65           O  
+ATOM   1510  OP2   G A  71      53.327  23.913  24.628  1.00 74.68           O  
+ATOM   1511  O5'   G A  71      51.889  24.194  26.658  1.00 73.13           O  
+ATOM   1512  C5'   G A  71      51.545  23.948  28.006  1.00 73.66           C  
+ATOM   1513  C4'   G A  71      50.085  24.200  28.222  1.00 74.68           C  
+ATOM   1514  O4'   G A  71      49.834  25.619  28.061  1.00 74.96           O  
+ATOM   1515  C3'   G A  71      49.168  23.560  27.196  1.00 74.87           C  
+ATOM   1516  O3'   G A  71      48.900  22.193  27.431  1.00 77.06           O  
+ATOM   1517  C2'   G A  71      47.926  24.423  27.302  1.00 74.74           C  
+ATOM   1518  O2'   G A  71      47.160  24.095  28.450  1.00 73.45           O  
+ATOM   1519  C1'   G A  71      48.557  25.807  27.466  1.00 74.47           C  
+ATOM   1520  N9    G A  71      48.732  26.500  26.190  1.00 73.18           N  
+ATOM   1521  C8    G A  71      49.893  26.651  25.465  1.00 72.22           C  
+ATOM   1522  N7    G A  71      49.730  27.362  24.379  1.00 71.34           N  
+ATOM   1523  C5    G A  71      48.381  27.690  24.382  1.00 70.99           C  
+ATOM   1524  C6    G A  71      47.614  28.457  23.459  1.00 70.89           C  
+ATOM   1525  O6    G A  71      47.990  29.025  22.425  1.00 70.62           O  
+ATOM   1526  N1    G A  71      46.279  28.535  23.845  1.00 70.13           N  
+ATOM   1527  C2    G A  71      45.746  27.955  24.973  1.00 71.44           C  
+ATOM   1528  N2    G A  71      44.437  28.147  25.177  1.00 71.27           N  
+ATOM   1529  N3    G A  71      46.448  27.240  25.840  1.00 70.99           N  
+ATOM   1530  C4    G A  71      47.749  27.153  25.486  1.00 71.48           C  
+ATOM   1531  P     C A  72      48.570  21.242  26.182  1.00 78.06           P  
+ATOM   1532  OP1   C A  72      48.427  19.843  26.654  1.00 79.10           O  
+ATOM   1533  OP2   C A  72      49.597  21.571  25.154  1.00 77.70           O  
+ATOM   1534  O5'   C A  72      47.129  21.735  25.716  1.00 76.34           O  
+ATOM   1535  C5'   C A  72      46.020  21.583  26.588  1.00 74.73           C  
+ATOM   1536  C4'   C A  72      44.789  22.243  26.020  1.00 74.94           C  
+ATOM   1537  O4'   C A  72      44.999  23.681  25.940  1.00 74.18           O  
+ATOM   1538  C3'   C A  72      44.435  21.873  24.594  1.00 74.74           C  
+ATOM   1539  O3'   C A  72      43.818  20.614  24.463  1.00 77.63           O  
+ATOM   1540  C2'   C A  72      43.573  23.046  24.163  1.00 72.71           C  
+ATOM   1541  O2'   C A  72      42.275  23.012  24.727  1.00 72.93           O  
+ATOM   1542  C1'   C A  72      44.345  24.199  24.789  1.00 70.56           C  
+ATOM   1543  N1    C A  72      45.366  24.656  23.839  1.00 65.60           N  
+ATOM   1544  C2    C A  72      44.983  25.549  22.825  1.00 62.36           C  
+ATOM   1545  O2    C A  72      43.796  25.935  22.781  1.00 60.28           O  
+ATOM   1546  N3    C A  72      45.908  25.962  21.926  1.00 58.47           N  
+ATOM   1547  C4    C A  72      47.160  25.518  22.012  1.00 58.31           C  
+ATOM   1548  N4    C A  72      48.035  25.941  21.095  1.00 57.64           N  
+ATOM   1549  C5    C A  72      47.575  24.616  23.042  1.00 58.81           C  
+ATOM   1550  C6    C A  72      46.656  24.215  23.923  1.00 61.58           C  
+ATOM   1551  P     G A  73      44.246  19.681  23.238  1.00 79.51           P  
+ATOM   1552  OP1   G A  73      43.644  18.340  23.446  1.00 79.13           O  
+ATOM   1553  OP2   G A  73      45.725  19.817  23.084  1.00 78.76           O  
+ATOM   1554  O5'   G A  73      43.539  20.372  21.992  1.00 77.35           O  
+ATOM   1555  C5'   G A  73      42.142  20.629  22.020  1.00 74.33           C  
+ATOM   1556  C4'   G A  73      41.738  21.509  20.863  1.00 72.37           C  
+ATOM   1557  O4'   G A  73      42.458  22.769  20.932  1.00 70.30           O  
+ATOM   1558  C3'   G A  73      42.087  21.020  19.470  1.00 72.08           C  
+ATOM   1559  O3'   G A  73      41.194  20.013  19.012  1.00 72.84           O  
+ATOM   1560  C2'   G A  73      41.929  22.305  18.670  1.00 70.65           C  
+ATOM   1561  O2'   G A  73      40.567  22.611  18.440  1.00 71.39           O  
+ATOM   1562  C1'   G A  73      42.536  23.329  19.632  1.00 67.90           C  
+ATOM   1563  N9    G A  73      43.929  23.628  19.311  1.00 64.50           N  
+ATOM   1564  C8    G A  73      45.070  23.161  19.922  1.00 62.79           C  
+ATOM   1565  N7    G A  73      46.169  23.599  19.359  1.00 61.48           N  
+ATOM   1566  C5    G A  73      45.722  24.411  18.322  1.00 61.69           C  
+ATOM   1567  C6    G A  73      46.448  25.169  17.342  1.00 59.71           C  
+ATOM   1568  O6    G A  73      47.679  25.276  17.188  1.00 57.76           O  
+ATOM   1569  N1    G A  73      45.588  25.842  16.485  1.00 59.01           N  
+ATOM   1570  C2    G A  73      44.216  25.798  16.549  1.00 61.75           C  
+ATOM   1571  N2    G A  73      43.552  26.506  15.635  1.00 62.68           N  
+ATOM   1572  N3    G A  73      43.537  25.106  17.443  1.00 62.36           N  
+ATOM   1573  C4    G A  73      44.344  24.442  18.288  1.00 62.76           C  
+ATOM   1574  P     G A  74      41.787  18.637  18.416  1.00 74.17           P  
+ATOM   1575  OP1   G A  74      40.716  17.600  18.506  1.00 74.30           O  
+ATOM   1576  OP2   G A  74      43.117  18.392  19.042  1.00 71.62           O  
+ATOM   1577  O5'   G A  74      42.045  18.934  16.875  1.00 72.80           O  
+ATOM   1578  C5'   G A  74      42.905  19.983  16.477  1.00 71.35           C  
+ATOM   1579  C4'   G A  74      42.600  20.383  15.067  1.00 68.80           C  
+ATOM   1580  O4'   G A  74      43.028  21.760  14.917  1.00 69.15           O  
+ATOM   1581  C3'   G A  74      43.339  19.614  13.992  1.00 68.58           C  
+ATOM   1582  O3'   G A  74      42.846  18.468  13.299  1.00 71.01           O  
+ATOM   1583  C2'   G A  74      44.522  20.455  13.553  1.00 67.98           C  
+ATOM   1584  O2'   G A  74      44.576  20.558  12.143  1.00 68.13           O  
+ATOM   1585  C1'   G A  74      44.203  21.839  14.136  1.00 66.63           C  
+ATOM   1586  N9    G A  74      45.323  22.134  15.022  1.00 63.24           N  
+ATOM   1587  C8    G A  74      45.492  21.692  16.311  1.00 60.66           C  
+ATOM   1588  N7    G A  74      46.701  21.882  16.760  1.00 60.19           N  
+ATOM   1589  C5    G A  74      47.349  22.547  15.729  1.00 60.81           C  
+ATOM   1590  C6    G A  74      48.677  23.004  15.635  1.00 61.76           C  
+ATOM   1591  O6    G A  74      49.584  22.902  16.473  1.00 65.71           O  
+ATOM   1592  N1    G A  74      48.918  23.642  14.418  1.00 60.45           N  
+ATOM   1593  C2    G A  74      47.989  23.822  13.425  1.00 58.92           C  
+ATOM   1594  N2    G A  74      48.406  24.479  12.330  1.00 58.54           N  
+ATOM   1595  N3    G A  74      46.741  23.391  13.503  1.00 58.36           N  
+ATOM   1596  C4    G A  74      46.494  22.764  14.674  1.00 60.52           C  
+ATOM   1597  P     A A  75      43.733  17.113  13.257  1.00 71.98           P  
+ATOM   1598  OP1   A A  75      43.102  16.200  12.276  1.00 73.52           O  
+ATOM   1599  OP2   A A  75      43.955  16.648  14.649  1.00 72.26           O  
+ATOM   1600  O5'   A A  75      45.151  17.547  12.672  1.00 68.58           O  
+ATOM   1601  C5'   A A  75      46.255  16.653  12.710  1.00 65.94           C  
+ATOM   1602  C4'   A A  75      47.133  16.874  11.504  1.00 65.49           C  
+ATOM   1603  O4'   A A  75      46.434  16.429  10.319  1.00 66.68           O  
+ATOM   1604  C3'   A A  75      47.472  18.333  11.260  1.00 65.46           C  
+ATOM   1605  O3'   A A  75      48.720  18.628  11.864  1.00 64.21           O  
+ATOM   1606  C2'   A A  75      47.592  18.420   9.750  1.00 64.16           C  
+ATOM   1607  O2'   A A  75      48.875  18.031   9.336  1.00 65.40           O  
+ATOM   1608  C1'   A A  75      46.555  17.396   9.295  1.00 64.67           C  
+ATOM   1609  N9    A A  75      45.227  17.950   9.094  1.00 64.06           N  
+ATOM   1610  C8    A A  75      44.138  17.744   9.898  1.00 64.00           C  
+ATOM   1611  N7    A A  75      43.056  18.349   9.486  1.00 66.17           N  
+ATOM   1612  C5    A A  75      43.463  19.001   8.332  1.00 65.71           C  
+ATOM   1613  C6    A A  75      42.781  19.821   7.424  1.00 65.96           C  
+ATOM   1614  N6    A A  75      41.490  20.141   7.546  1.00 67.52           N  
+ATOM   1615  N1    A A  75      43.476  20.311   6.375  1.00 66.21           N  
+ATOM   1616  C2    A A  75      44.770  19.991   6.260  1.00 66.15           C  
+ATOM   1617  N3    A A  75      45.520  19.231   7.050  1.00 66.38           N  
+ATOM   1618  C4    A A  75      44.799  18.763   8.080  1.00 64.69           C  
+ATOM   1619  P     A A  76      48.870  19.950  12.740  1.00 62.82           P  
+ATOM   1620  OP1   A A  76      50.069  19.832  13.600  1.00 63.15           O  
+ATOM   1621  OP2   A A  76      47.539  20.165  13.362  1.00 59.79           O  
+ATOM   1622  O5'   A A  76      49.159  21.073  11.650  1.00 60.99           O  
+ATOM   1623  C5'   A A  76      50.435  21.172  11.023  1.00 58.74           C  
+ATOM   1624  C4'   A A  76      50.317  21.995   9.775  1.00 57.81           C  
+ATOM   1625  O4'   A A  76      49.237  21.437   8.991  1.00 57.97           O  
+ATOM   1626  C3'   A A  76      49.940  23.455   9.967  1.00 56.91           C  
+ATOM   1627  O3'   A A  76      51.121  24.238  10.118  1.00 57.19           O  
+ATOM   1628  C2'   A A  76      49.263  23.779   8.643  1.00 56.44           C  
+ATOM   1629  O2'   A A  76      50.201  24.001   7.608  1.00 54.76           O  
+ATOM   1630  C1'   A A  76      48.515  22.475   8.363  1.00 55.29           C  
+ATOM   1631  N9    A A  76      47.162  22.417   8.897  1.00 53.64           N  
+ATOM   1632  C8    A A  76      46.775  21.938  10.128  1.00 53.02           C  
+ATOM   1633  N7    A A  76      45.476  21.937  10.309  1.00 53.29           N  
+ATOM   1634  C5    A A  76      44.974  22.466   9.127  1.00 53.22           C  
+ATOM   1635  C6    A A  76      43.668  22.715   8.684  1.00 53.02           C  
+ATOM   1636  N6    A A  76      42.582  22.451   9.400  1.00 52.94           N  
+ATOM   1637  N1    A A  76      43.513  23.251   7.456  1.00 54.02           N  
+ATOM   1638  C2    A A  76      44.606  23.509   6.723  1.00 53.06           C  
+ATOM   1639  N3    A A  76      45.885  23.312   7.024  1.00 53.73           N  
+ATOM   1640  C4    A A  76      46.004  22.782   8.255  1.00 54.00           C  
+ATOM   1641  P     A A  77      51.041  25.690  10.808  1.00 57.22           P  
+ATOM   1642  OP1   A A  77      52.362  26.338  10.668  1.00 56.31           O  
+ATOM   1643  OP2   A A  77      50.451  25.502  12.167  1.00 57.57           O  
+ATOM   1644  O5'   A A  77      50.023  26.495   9.880  1.00 57.05           O  
+ATOM   1645  C5'   A A  77      50.484  27.150   8.697  1.00 55.43           C  
+ATOM   1646  C4'   A A  77      49.318  27.660   7.869  1.00 55.21           C  
+ATOM   1647  O4'   A A  77      48.395  26.566   7.621  1.00 55.90           O  
+ATOM   1648  C3'   A A  77      48.457  28.764   8.470  1.00 54.93           C  
+ATOM   1649  O3'   A A  77      48.994  30.044   8.166  1.00 55.04           O  
+ATOM   1650  C2'   A A  77      47.149  28.572   7.719  1.00 55.16           C  
+ATOM   1651  O2'   A A  77      47.237  29.094   6.409  1.00 54.30           O  
+ATOM   1652  C1'   A A  77      47.068  27.048   7.639  1.00 54.33           C  
+ATOM   1653  N9    A A  77      46.406  26.464   8.801  1.00 53.13           N  
+ATOM   1654  C8    A A  77      46.987  26.001   9.955  1.00 52.87           C  
+ATOM   1655  N7    A A  77      46.127  25.506  10.817  1.00 53.79           N  
+ATOM   1656  C5    A A  77      44.899  25.658  10.187  1.00 52.32           C  
+ATOM   1657  C6    A A  77      43.586  25.329  10.578  1.00 52.60           C  
+ATOM   1658  N6    A A  77      43.286  24.748  11.739  1.00 55.40           N  
+ATOM   1659  N1    A A  77      42.580  25.618   9.722  1.00 52.52           N  
+ATOM   1660  C2    A A  77      42.887  26.202   8.552  1.00 52.91           C  
+ATOM   1661  N3    A A  77      44.085  26.561   8.072  1.00 52.18           N  
+ATOM   1662  C4    A A  77      45.056  26.256   8.949  1.00 52.16           C  
+ATOM   1663  P     C A  78      49.484  31.004   9.354  1.00 55.69           P  
+ATOM   1664  OP1   C A  78      49.843  32.325   8.764  1.00 54.67           O  
+ATOM   1665  OP2   C A  78      50.489  30.262  10.161  1.00 56.60           O  
+ATOM   1666  O5'   C A  78      48.186  31.175  10.259  1.00 54.42           O  
+ATOM   1667  C5'   C A  78      47.035  31.822   9.746  1.00 53.71           C  
+ATOM   1668  C4'   C A  78      45.790  31.247  10.370  1.00 53.69           C  
+ATOM   1669  O4'   C A  78      45.943  29.803  10.457  1.00 54.25           O  
+ATOM   1670  C3'   C A  78      45.529  31.646  11.808  1.00 53.72           C  
+ATOM   1671  O3'   C A  78      44.893  32.906  11.911  1.00 53.94           O  
+ATOM   1672  C2'   C A  78      44.636  30.518  12.292  1.00 53.88           C  
+ATOM   1673  O2'   C A  78      43.308  30.647  11.805  1.00 54.27           O  
+ATOM   1674  C1'   C A  78      45.305  29.325  11.623  1.00 52.32           C  
+ATOM   1675  N1    C A  78      46.318  28.721  12.494  1.00 50.20           N  
+ATOM   1676  C2    C A  78      45.883  27.995  13.596  1.00 48.56           C  
+ATOM   1677  O2    C A  78      44.666  27.900  13.787  1.00 47.16           O  
+ATOM   1678  N3    C A  78      46.789  27.419  14.418  1.00 48.57           N  
+ATOM   1679  C4    C A  78      48.092  27.546  14.162  1.00 50.34           C  
+ATOM   1680  N4    C A  78      48.958  26.946  14.992  1.00 49.92           N  
+ATOM   1681  C5    C A  78      48.571  28.290  13.040  1.00 51.43           C  
+ATOM   1682  C6    C A  78      47.654  28.859  12.238  1.00 49.99           C  
+ATOM   1683  P     G A  79      45.068  33.757  13.257  1.00 52.92           P  
+ATOM   1684  OP1   G A  79      44.602  35.126  12.971  1.00 55.12           O  
+ATOM   1685  OP2   G A  79      46.464  33.538  13.738  1.00 54.61           O  
+ATOM   1686  O5'   G A  79      44.053  33.066  14.268  1.00 52.03           O  
+ATOM   1687  C5'   G A  79      42.681  32.970  13.939  1.00 52.92           C  
+ATOM   1688  C4'   G A  79      41.965  32.101  14.936  1.00 53.20           C  
+ATOM   1689  O4'   G A  79      42.600  30.794  14.948  1.00 54.24           O  
+ATOM   1690  C3'   G A  79      42.120  32.560  16.371  1.00 54.77           C  
+ATOM   1691  O3'   G A  79      41.208  33.586  16.721  1.00 56.81           O  
+ATOM   1692  C2'   G A  79      41.863  31.284  17.147  1.00 54.49           C  
+ATOM   1693  O2'   G A  79      40.484  31.015  17.176  1.00 56.96           O  
+ATOM   1694  C1'   G A  79      42.546  30.252  16.255  1.00 53.50           C  
+ATOM   1695  N9    G A  79      43.889  29.889  16.704  1.00 51.11           N  
+ATOM   1696  C8    G A  79      45.106  30.274  16.195  1.00 50.11           C  
+ATOM   1697  N7    G A  79      46.120  29.761  16.851  1.00 48.60           N  
+ATOM   1698  C5    G A  79      45.529  28.995  17.849  1.00 47.30           C  
+ATOM   1699  C6    G A  79      46.111  28.202  18.879  1.00 46.07           C  
+ATOM   1700  O6    G A  79      47.321  28.008  19.130  1.00 45.96           O  
+ATOM   1701  N1    G A  79      45.139  27.600  19.665  1.00 43.73           N  
+ATOM   1702  C2    G A  79      43.785  27.738  19.492  1.00 48.40           C  
+ATOM   1703  N2    G A  79      42.983  27.078  20.352  1.00 51.24           N  
+ATOM   1704  N3    G A  79      43.236  28.469  18.544  1.00 49.81           N  
+ATOM   1705  C4    G A  79      44.158  29.064  17.767  1.00 49.45           C  
+ATOM   1706  P     U A  80      41.696  34.744  17.718  1.00 57.91           P  
+ATOM   1707  OP1   U A  80      40.668  35.811  17.699  1.00 58.33           O  
+ATOM   1708  OP2   U A  80      43.105  35.066  17.387  1.00 55.86           O  
+ATOM   1709  O5'   U A  80      41.666  34.031  19.139  1.00 59.76           O  
+ATOM   1710  C5'   U A  80      40.441  33.510  19.646  1.00 60.84           C  
+ATOM   1711  C4'   U A  80      40.693  32.611  20.834  1.00 61.61           C  
+ATOM   1712  O4'   U A  80      41.480  31.465  20.405  1.00 61.05           O  
+ATOM   1713  C3'   U A  80      41.535  33.217  21.943  1.00 62.84           C  
+ATOM   1714  O3'   U A  80      40.767  34.025  22.818  1.00 67.34           O  
+ATOM   1715  C2'   U A  80      42.082  31.983  22.640  1.00 61.11           C  
+ATOM   1716  O2'   U A  80      41.107  31.381  23.464  1.00 61.83           O  
+ATOM   1717  C1'   U A  80      42.354  31.067  21.450  1.00 58.89           C  
+ATOM   1718  N1    U A  80      43.737  31.189  20.978  1.00 55.50           N  
+ATOM   1719  C2    U A  80      44.688  30.431  21.622  1.00 53.56           C  
+ATOM   1720  O2    U A  80      44.415  29.688  22.539  1.00 54.05           O  
+ATOM   1721  N3    U A  80      45.971  30.581  21.159  1.00 50.66           N  
+ATOM   1722  C4    U A  80      46.386  31.399  20.140  1.00 50.72           C  
+ATOM   1723  O4    U A  80      47.579  31.424  19.832  1.00 49.30           O  
+ATOM   1724  C5    U A  80      45.339  32.157  19.520  1.00 52.21           C  
+ATOM   1725  C6    U A  80      44.078  32.027  19.950  1.00 54.00           C  
+ATOM   1726  P     U A  81      41.512  35.096  23.759  1.00 69.99           P  
+ATOM   1727  OP1   U A  81      40.440  35.890  24.422  1.00 70.01           O  
+ATOM   1728  OP2   U A  81      42.570  35.792  22.973  1.00 68.74           O  
+ATOM   1729  O5'   U A  81      42.243  34.197  24.853  1.00 69.66           O  
+ATOM   1730  C5'   U A  81      41.492  33.546  25.869  1.00 69.69           C  
+ATOM   1731  C4'   U A  81      42.411  32.874  26.858  1.00 70.12           C  
+ATOM   1732  O4'   U A  81      43.154  31.827  26.185  1.00 70.30           O  
+ATOM   1733  C3'   U A  81      43.492  33.765  27.442  1.00 71.48           C  
+ATOM   1734  O3'   U A  81      43.008  34.521  28.543  1.00 73.23           O  
+ATOM   1735  C2'   U A  81      44.548  32.755  27.868  1.00 71.16           C  
+ATOM   1736  O2'   U A  81      44.243  32.119  29.088  1.00 72.71           O  
+ATOM   1737  C1'   U A  81      44.455  31.733  26.740  1.00 69.65           C  
+ATOM   1738  N1    U A  81      45.445  32.005  25.694  1.00 67.60           N  
+ATOM   1739  C2    U A  81      46.694  31.456  25.857  1.00 67.36           C  
+ATOM   1740  O2    U A  81      46.984  30.751  26.806  1.00 69.28           O  
+ATOM   1741  N3    U A  81      47.595  31.762  24.873  1.00 65.88           N  
+ATOM   1742  C4    U A  81      47.377  32.543  23.770  1.00 64.36           C  
+ATOM   1743  O4    U A  81      48.298  32.741  22.977  1.00 63.94           O  
+ATOM   1744  C5    U A  81      46.053  33.070  23.668  1.00 66.08           C  
+ATOM   1745  C6    U A  81      45.152  32.786  24.610  1.00 67.30           C  
+ATOM   1746  P     G A  82      43.833  35.803  29.047  1.00 74.81           P  
+ATOM   1747  OP1   G A  82      43.043  36.432  30.132  1.00 76.99           O  
+ATOM   1748  OP2   G A  82      44.213  36.612  27.861  1.00 76.87           O  
+ATOM   1749  O5'   G A  82      45.157  35.176  29.671  1.00 72.53           O  
+ATOM   1750  C5'   G A  82      45.067  34.297  30.782  1.00 72.61           C  
+ATOM   1751  C4'   G A  82      46.398  33.635  31.056  1.00 73.05           C  
+ATOM   1752  O4'   G A  82      46.808  32.836  29.908  1.00 72.32           O  
+ATOM   1753  C3'   G A  82      47.550  34.606  31.244  1.00 73.03           C  
+ATOM   1754  O3'   G A  82      47.600  35.046  32.591  1.00 73.81           O  
+ATOM   1755  C2'   G A  82      48.762  33.750  30.917  1.00 71.15           C  
+ATOM   1756  O2'   G A  82      49.183  32.982  32.016  1.00 71.55           O  
+ATOM   1757  C1'   G A  82      48.219  32.851  29.809  1.00 70.45           C  
+ATOM   1758  N9    G A  82      48.606  33.304  28.483  1.00 69.22           N  
+ATOM   1759  C8    G A  82      47.862  34.024  27.586  1.00 68.93           C  
+ATOM   1760  N7    G A  82      48.523  34.307  26.494  1.00 68.74           N  
+ATOM   1761  C5    G A  82      49.772  33.732  26.686  1.00 66.17           C  
+ATOM   1762  C6    G A  82      50.914  33.717  25.853  1.00 65.71           C  
+ATOM   1763  O6    G A  82      51.064  34.234  24.737  1.00 67.39           O  
+ATOM   1764  N1    G A  82      51.960  33.015  26.437  1.00 65.06           N  
+ATOM   1765  C2    G A  82      51.910  32.409  27.667  1.00 65.49           C  
+ATOM   1766  N2    G A  82      53.019  31.776  28.066  1.00 66.07           N  
+ATOM   1767  N3    G A  82      50.854  32.422  28.450  1.00 65.40           N  
+ATOM   1768  C4    G A  82      49.832  33.098  27.902  1.00 67.06           C  
+ATOM   1769  P     A A  83      48.714  36.110  33.037  1.00 75.74           P  
+ATOM   1770  OP1   A A  83      48.454  36.457  34.461  1.00 76.19           O  
+ATOM   1771  OP2   A A  83      48.787  37.192  32.017  1.00 75.92           O  
+ATOM   1772  O5'   A A  83      50.084  35.306  32.950  1.00 73.07           O  
+ATOM   1773  C5'   A A  83      51.311  35.996  32.798  1.00 71.48           C  
+ATOM   1774  C4'   A A  83      52.389  35.042  32.352  1.00 72.32           C  
+ATOM   1775  O4'   A A  83      52.006  34.431  31.092  1.00 71.90           O  
+ATOM   1776  C3'   A A  83      53.717  35.706  32.044  1.00 72.39           C  
+ATOM   1777  O3'   A A  83      54.479  35.854  33.223  1.00 73.75           O  
+ATOM   1778  C2'   A A  83      54.367  34.722  31.088  1.00 71.88           C  
+ATOM   1779  O2'   A A  83      55.011  33.652  31.742  1.00 73.47           O  
+ATOM   1780  C1'   A A  83      53.158  34.234  30.289  1.00 70.66           C  
+ATOM   1781  N9    A A  83      52.993  34.981  29.046  1.00 68.56           N  
+ATOM   1782  C8    A A  83      51.908  35.688  28.594  1.00 67.12           C  
+ATOM   1783  N7    A A  83      52.100  36.253  27.425  1.00 66.12           N  
+ATOM   1784  C5    A A  83      53.397  35.888  27.088  1.00 66.03           C  
+ATOM   1785  C6    A A  83      54.198  36.164  25.971  1.00 66.42           C  
+ATOM   1786  N6    A A  83      53.795  36.897  24.937  1.00 66.62           N  
+ATOM   1787  N1    A A  83      55.448  35.651  25.951  1.00 66.47           N  
+ATOM   1788  C2    A A  83      55.854  34.913  26.993  1.00 65.81           C  
+ATOM   1789  N3    A A  83      55.194  34.582  28.094  1.00 66.02           N  
+ATOM   1790  C4    A A  83      53.956  35.106  28.078  1.00 66.63           C  
+ATOM   1791  P     A A  84      55.352  37.173  33.429  1.00 74.69           P  
+ATOM   1792  OP1   A A  84      56.069  37.043  34.725  1.00 74.75           O  
+ATOM   1793  OP2   A A  84      54.440  38.322  33.207  1.00 72.53           O  
+ATOM   1794  O5'   A A  84      56.405  37.108  32.237  1.00 72.08           O  
+ATOM   1795  C5'   A A  84      57.422  36.109  32.201  1.00 70.69           C  
+ATOM   1796  C4'   A A  84      58.311  36.343  31.007  1.00 69.31           C  
+ATOM   1797  O4'   A A  84      57.606  35.966  29.799  1.00 68.54           O  
+ATOM   1798  C3'   A A  84      58.703  37.790  30.786  1.00 69.05           C  
+ATOM   1799  O3'   A A  84      59.818  38.159  31.581  1.00 71.70           O  
+ATOM   1800  C2'   A A  84      58.992  37.827  29.289  1.00 67.78           C  
+ATOM   1801  O2'   A A  84      60.283  37.385  28.923  1.00 68.74           O  
+ATOM   1802  C1'   A A  84      57.912  36.881  28.759  1.00 66.10           C  
+ATOM   1803  N9    A A  84      56.685  37.615  28.467  1.00 62.63           N  
+ATOM   1804  C8    A A  84      55.570  37.709  29.260  1.00 60.97           C  
+ATOM   1805  N7    A A  84      54.624  38.454  28.752  1.00 60.47           N  
+ATOM   1806  C5    A A  84      55.149  38.877  27.539  1.00 58.77           C  
+ATOM   1807  C6    A A  84      54.633  39.693  26.524  1.00 57.48           C  
+ATOM   1808  N6    A A  84      53.422  40.254  26.573  1.00 58.08           N  
+ATOM   1809  N1    A A  84      55.411  39.919  25.444  1.00 57.00           N  
+ATOM   1810  C2    A A  84      56.628  39.354  25.400  1.00 57.46           C  
+ATOM   1811  N3    A A  84      57.223  38.568  26.295  1.00 58.36           N  
+ATOM   1812  C4    A A  84      56.419  38.367  27.352  1.00 59.63           C  
+ATOM   1813  P     A A  85      60.045  39.705  31.960  1.00 72.98           P  
+ATOM   1814  OP1   A A  85      61.385  39.797  32.591  1.00 74.48           O  
+ATOM   1815  OP2   A A  85      58.855  40.226  32.685  1.00 72.40           O  
+ATOM   1816  O5'   A A  85      60.110  40.435  30.548  1.00 70.44           O  
+ATOM   1817  C5'   A A  85      61.253  40.307  29.714  1.00 66.23           C  
+ATOM   1818  C4'   A A  85      61.044  41.084  28.441  1.00 64.90           C  
+ATOM   1819  O4'   A A  85      59.882  40.545  27.748  1.00 62.64           O  
+ATOM   1820  C3'   A A  85      60.699  42.549  28.626  1.00 62.94           C  
+ATOM   1821  O3'   A A  85      61.844  43.363  28.835  1.00 63.23           O  
+ATOM   1822  C2'   A A  85      59.984  42.868  27.322  1.00 61.52           C  
+ATOM   1823  O2'   A A  85      60.881  43.020  26.246  1.00 61.55           O  
+ATOM   1824  C1'   A A  85      59.174  41.592  27.113  1.00 58.58           C  
+ATOM   1825  N9    A A  85      57.869  41.712  27.755  1.00 55.06           N  
+ATOM   1826  C8    A A  85      57.468  41.210  28.962  1.00 53.46           C  
+ATOM   1827  N7    A A  85      56.235  41.526  29.280  1.00 53.24           N  
+ATOM   1828  C5    A A  85      55.794  42.281  28.202  1.00 51.20           C  
+ATOM   1829  C6    A A  85      54.571  42.927  27.926  1.00 51.15           C  
+ATOM   1830  N6    A A  85      53.514  42.908  28.743  1.00 50.33           N  
+ATOM   1831  N1    A A  85      54.469  43.605  26.763  1.00 51.08           N  
+ATOM   1832  C2    A A  85      55.521  43.623  25.939  1.00 49.66           C  
+ATOM   1833  N3    A A  85      56.712  43.057  26.085  1.00 51.02           N  
+ATOM   1834  C4    A A  85      56.787  42.396  27.253  1.00 52.63           C  
+ATOM   1835  P     G A  86      61.717  44.687  29.747  1.00 63.01           P  
+ATOM   1836  OP1   G A  86      63.080  45.233  29.962  1.00 63.49           O  
+ATOM   1837  OP2   G A  86      60.860  44.331  30.912  1.00 62.23           O  
+ATOM   1838  O5'   G A  86      60.926  45.717  28.830  1.00 60.62           O  
+ATOM   1839  C5'   G A  86      61.397  46.003  27.524  1.00 57.16           C  
+ATOM   1840  C4'   G A  86      60.338  46.713  26.717  1.00 54.53           C  
+ATOM   1841  O4'   G A  86      59.166  45.857  26.587  1.00 53.07           O  
+ATOM   1842  C3'   G A  86      59.774  47.960  27.371  1.00 53.14           C  
+ATOM   1843  O3'   G A  86      60.618  49.084  27.216  1.00 51.63           O  
+ATOM   1844  C2'   G A  86      58.432  48.112  26.672  1.00 52.73           C  
+ATOM   1845  O2'   G A  86      58.570  48.629  25.368  1.00 50.58           O  
+ATOM   1846  C1'   G A  86      57.994  46.657  26.559  1.00 51.72           C  
+ATOM   1847  N9    G A  86      57.100  46.230  27.628  1.00 50.07           N  
+ATOM   1848  C8    G A  86      57.353  45.289  28.594  1.00 50.13           C  
+ATOM   1849  N7    G A  86      56.333  45.083  29.386  1.00 49.23           N  
+ATOM   1850  C5    G A  86      55.355  45.948  28.923  1.00 48.44           C  
+ATOM   1851  C6    G A  86      54.036  46.158  29.377  1.00 50.00           C  
+ATOM   1852  O6    G A  86      53.447  45.603  30.304  1.00 52.45           O  
+ATOM   1853  N1    G A  86      53.379  47.127  28.628  1.00 49.28           N  
+ATOM   1854  C2    G A  86      53.924  47.806  27.575  1.00 48.05           C  
+ATOM   1855  N2    G A  86      53.121  48.698  27.001  1.00 46.91           N  
+ATOM   1856  N3    G A  86      55.161  47.618  27.128  1.00 47.93           N  
+ATOM   1857  C4    G A  86      55.814  46.677  27.847  1.00 48.84           C  
+ATOM   1858  P     A A  87      60.528  50.278  28.276  1.00 48.22           P  
+ATOM   1859  OP1   A A  87      61.493  51.324  27.903  1.00 50.47           O  
+ATOM   1860  OP2   A A  87      60.599  49.663  29.612  1.00 48.71           O  
+ATOM   1861  O5'   A A  87      59.072  50.870  28.036  1.00 47.96           O  
+ATOM   1862  C5'   A A  87      58.810  51.665  26.888  1.00 45.52           C  
+ATOM   1863  C4'   A A  87      57.420  52.245  26.944  1.00 45.17           C  
+ATOM   1864  O4'   A A  87      56.474  51.163  27.023  1.00 44.86           O  
+ATOM   1865  C3'   A A  87      57.104  53.065  28.183  1.00 47.55           C  
+ATOM   1866  O3'   A A  87      57.553  54.398  28.043  1.00 48.74           O  
+ATOM   1867  C2'   A A  87      55.590  52.985  28.257  1.00 45.69           C  
+ATOM   1868  O2'   A A  87      54.966  53.829  27.315  1.00 46.31           O  
+ATOM   1869  C1'   A A  87      55.363  51.547  27.819  1.00 43.13           C  
+ATOM   1870  N9    A A  87      55.242  50.601  28.918  1.00 40.51           N  
+ATOM   1871  C8    A A  87      56.174  49.711  29.374  1.00 40.58           C  
+ATOM   1872  N7    A A  87      55.738  48.948  30.344  1.00 41.86           N  
+ATOM   1873  C5    A A  87      54.439  49.376  30.546  1.00 38.70           C  
+ATOM   1874  C6    A A  87      53.436  48.953  31.422  1.00 38.67           C  
+ATOM   1875  N6    A A  87      53.591  47.957  32.293  1.00 38.56           N  
+ATOM   1876  N1    A A  87      52.246  49.589  31.368  1.00 40.88           N  
+ATOM   1877  C2    A A  87      52.088  50.575  30.477  1.00 41.68           C  
+ATOM   1878  N3    A A  87      52.958  51.054  29.589  1.00 40.58           N  
+ATOM   1879  C4    A A  87      54.126  50.402  29.681  1.00 39.79           C  
+ATOM   1880  P     U A  88      58.198  55.136  29.302  1.00 48.29           P  
+ATOM   1881  OP1   U A  88      58.993  56.266  28.738  1.00 47.03           O  
+ATOM   1882  OP2   U A  88      58.870  54.083  30.122  1.00 47.21           O  
+ATOM   1883  O5'   U A  88      56.917  55.689  30.075  1.00 47.92           O  
+ATOM   1884  C5'   U A  88      56.127  56.707  29.482  1.00 47.38           C  
+ATOM   1885  C4'   U A  88      54.808  56.850  30.197  1.00 47.01           C  
+ATOM   1886  O4'   U A  88      54.078  55.598  30.095  1.00 47.37           O  
+ATOM   1887  C3'   U A  88      54.903  57.067  31.692  1.00 47.34           C  
+ATOM   1888  O3'   U A  88      55.161  58.407  32.052  1.00 47.14           O  
+ATOM   1889  C2'   U A  88      53.536  56.615  32.152  1.00 46.01           C  
+ATOM   1890  O2'   U A  88      52.617  57.604  31.753  1.00 46.16           O  
+ATOM   1891  C1'   U A  88      53.334  55.384  31.278  1.00 44.84           C  
+ATOM   1892  N1    U A  88      53.835  54.171  31.938  1.00 43.85           N  
+ATOM   1893  C2    U A  88      53.089  53.677  32.974  1.00 44.35           C  
+ATOM   1894  O2    U A  88      52.073  54.213  33.349  1.00 47.48           O  
+ATOM   1895  N3    U A  88      53.572  52.538  33.563  1.00 42.79           N  
+ATOM   1896  C4    U A  88      54.705  51.864  33.226  1.00 43.22           C  
+ATOM   1897  O4    U A  88      55.018  50.851  33.858  1.00 44.99           O  
+ATOM   1898  C5    U A  88      55.436  52.443  32.140  1.00 43.46           C  
+ATOM   1899  C6    U A  88      54.985  53.554  31.549  1.00 43.73           C  
+ATOM   1900  P     G A  89      56.009  58.702  33.383  1.00 46.16           P  
+ATOM   1901  OP1   G A  89      56.494  60.099  33.290  1.00 45.41           O  
+ATOM   1902  OP2   G A  89      56.980  57.592  33.512  1.00 42.04           O  
+ATOM   1903  O5'   G A  89      54.938  58.588  34.557  1.00 45.55           O  
+ATOM   1904  C5'   G A  89      53.772  59.397  34.546  1.00 45.93           C  
+ATOM   1905  C4'   G A  89      52.792  58.945  35.610  1.00 47.23           C  
+ATOM   1906  O4'   G A  89      52.385  57.568  35.369  1.00 48.15           O  
+ATOM   1907  C3'   G A  89      53.329  58.926  37.034  1.00 47.10           C  
+ATOM   1908  O3'   G A  89      53.245  60.232  37.593  1.00 48.88           O  
+ATOM   1909  C2'   G A  89      52.396  57.933  37.723  1.00 46.50           C  
+ATOM   1910  O2'   G A  89      51.145  58.503  38.102  1.00 44.07           O  
+ATOM   1911  C1'   G A  89      52.178  56.906  36.608  1.00 45.89           C  
+ATOM   1912  N9    G A  89      53.064  55.750  36.658  1.00 43.74           N  
+ATOM   1913  C8    G A  89      54.217  55.571  35.944  1.00 43.64           C  
+ATOM   1914  N7    G A  89      54.781  54.412  36.166  1.00 43.02           N  
+ATOM   1915  C5    G A  89      53.952  53.797  37.091  1.00 41.41           C  
+ATOM   1916  C6    G A  89      54.056  52.525  37.720  1.00 41.45           C  
+ATOM   1917  O6    G A  89      54.923  51.659  37.572  1.00 42.99           O  
+ATOM   1918  N1    G A  89      53.011  52.301  38.601  1.00 40.30           N  
+ATOM   1919  C2    G A  89      51.997  53.182  38.846  1.00 43.16           C  
+ATOM   1920  N2    G A  89      51.077  52.782  39.723  1.00 44.32           N  
+ATOM   1921  N3    G A  89      51.887  54.375  38.271  1.00 43.05           N  
+ATOM   1922  C4    G A  89      52.893  54.612  37.411  1.00 41.85           C  
+ATOM   1923  P     A A  90      54.261  60.673  38.754  1.00 49.33           P  
+ATOM   1924  OP1   A A  90      53.796  62.025  39.132  1.00 50.89           O  
+ATOM   1925  OP2   A A  90      55.663  60.483  38.318  1.00 50.02           O  
+ATOM   1926  O5'   A A  90      53.920  59.654  39.935  1.00 48.11           O  
+ATOM   1927  C5'   A A  90      52.697  59.783  40.661  1.00 46.82           C  
+ATOM   1928  C4'   A A  90      52.547  58.662  41.657  1.00 46.54           C  
+ATOM   1929  O4'   A A  90      52.472  57.405  40.938  1.00 46.05           O  
+ATOM   1930  C3'   A A  90      53.729  58.460  42.584  1.00 48.87           C  
+ATOM   1931  O3'   A A  90      53.706  59.332  43.695  1.00 53.87           O  
+ATOM   1932  C2'   A A  90      53.565  57.013  43.002  1.00 47.31           C  
+ATOM   1933  O2'   A A  90      52.561  56.871  43.985  1.00 50.65           O  
+ATOM   1934  C1'   A A  90      53.097  56.384  41.694  1.00 43.08           C  
+ATOM   1935  N9    A A  90      54.200  55.832  40.911  1.00 39.20           N  
+ATOM   1936  C8    A A  90      54.964  56.432  39.942  1.00 37.90           C  
+ATOM   1937  N7    A A  90      55.882  55.642  39.432  1.00 35.96           N  
+ATOM   1938  C5    A A  90      55.706  54.448  40.111  1.00 34.77           C  
+ATOM   1939  C6    A A  90      56.367  53.206  40.038  1.00 37.49           C  
+ATOM   1940  N6    A A  90      57.370  52.939  39.203  1.00 40.40           N  
+ATOM   1941  N1    A A  90      55.950  52.227  40.865  1.00 37.63           N  
+ATOM   1942  C2    A A  90      54.933  52.484  41.695  1.00 37.37           C  
+ATOM   1943  N3    A A  90      54.233  53.606  41.850  1.00 35.09           N  
+ATOM   1944  C4    A A  90      54.677  54.554  41.023  1.00 35.63           C  
+ATOM   1945  P     G A  91      55.092  59.795  44.359  1.00 56.70           P  
+ATOM   1946  OP1   G A  91      54.771  60.922  45.270  1.00 57.70           O  
+ATOM   1947  OP2   G A  91      56.117  59.995  43.298  1.00 55.05           O  
+ATOM   1948  O5'   G A  91      55.497  58.514  45.213  1.00 54.40           O  
+ATOM   1949  C5'   G A  91      54.652  58.066  46.257  1.00 55.05           C  
+ATOM   1950  C4'   G A  91      55.146  56.755  46.819  1.00 57.40           C  
+ATOM   1951  O4'   G A  91      54.959  55.689  45.845  1.00 57.63           O  
+ATOM   1952  C3'   G A  91      56.630  56.703  47.121  1.00 58.60           C  
+ATOM   1953  O3'   G A  91      56.928  57.302  48.366  1.00 62.00           O  
+ATOM   1954  C2'   G A  91      56.905  55.208  47.110  1.00 57.65           C  
+ATOM   1955  O2'   G A  91      56.449  54.586  48.296  1.00 61.81           O  
+ATOM   1956  C1'   G A  91      56.021  54.752  45.950  1.00 56.16           C  
+ATOM   1957  N9    G A  91      56.782  54.738  44.704  1.00 51.72           N  
+ATOM   1958  C8    G A  91      56.926  55.756  43.791  1.00 49.57           C  
+ATOM   1959  N7    G A  91      57.738  55.451  42.813  1.00 47.94           N  
+ATOM   1960  C5    G A  91      58.138  54.151  43.090  1.00 47.47           C  
+ATOM   1961  C6    G A  91      59.021  53.291  42.388  1.00 48.13           C  
+ATOM   1962  O6    G A  91      59.639  53.516  41.342  1.00 49.59           O  
+ATOM   1963  N1    G A  91      59.152  52.056  43.022  1.00 46.53           N  
+ATOM   1964  C2    G A  91      58.509  51.695  44.184  1.00 45.93           C  
+ATOM   1965  N2    G A  91      58.759  50.457  44.657  1.00 43.94           N  
+ATOM   1966  N3    G A  91      57.678  52.491  44.842  1.00 46.16           N  
+ATOM   1967  C4    G A  91      57.544  53.693  44.244  1.00 48.37           C  
+ATOM   1968  P     C A  92      58.460  57.535  48.781  1.00 65.24           P  
+ATOM   1969  OP1   C A  92      58.483  58.295  50.060  1.00 65.63           O  
+ATOM   1970  OP2   C A  92      59.219  58.050  47.604  1.00 65.80           O  
+ATOM   1971  O5'   C A  92      58.959  56.063  49.081  1.00 61.36           O  
+ATOM   1972  C5'   C A  92      60.332  55.789  49.189  1.00 58.00           C  
+ATOM   1973  C4'   C A  92      60.583  54.344  48.883  1.00 54.97           C  
+ATOM   1974  O4'   C A  92      59.894  53.989  47.667  1.00 54.29           O  
+ATOM   1975  C3'   C A  92      62.029  54.026  48.617  1.00 55.01           C  
+ATOM   1976  O3'   C A  92      62.681  53.819  49.854  1.00 55.30           O  
+ATOM   1977  C2'   C A  92      61.934  52.781  47.754  1.00 53.19           C  
+ATOM   1978  O2'   C A  92      61.752  51.585  48.477  1.00 54.48           O  
+ATOM   1979  C1'   C A  92      60.689  53.090  46.926  1.00 52.53           C  
+ATOM   1980  N1    C A  92      61.028  53.742  45.664  1.00 49.85           N  
+ATOM   1981  C2    C A  92      61.710  53.010  44.726  1.00 49.42           C  
+ATOM   1982  O2    C A  92      61.987  51.826  44.989  1.00 51.77           O  
+ATOM   1983  N3    C A  92      62.054  53.592  43.561  1.00 49.14           N  
+ATOM   1984  C4    C A  92      61.722  54.858  43.328  1.00 49.22           C  
+ATOM   1985  N4    C A  92      62.086  55.389  42.166  1.00 49.50           N  
+ATOM   1986  C5    C A  92      61.004  55.632  44.276  1.00 49.21           C  
+ATOM   1987  C6    C A  92      60.683  55.041  45.421  1.00 49.19           C  
+ATOM   1988  P     C A  93      64.095  54.516  50.109  1.00 55.71           P  
+ATOM   1989  OP1   C A  93      64.369  54.474  51.568  1.00 57.76           O  
+ATOM   1990  OP2   C A  93      64.088  55.822  49.397  1.00 55.38           O  
+ATOM   1991  O5'   C A  93      65.104  53.533  49.376  1.00 55.30           O  
+ATOM   1992  C5'   C A  93      65.215  52.186  49.814  1.00 55.96           C  
+ATOM   1993  C4'   C A  93      66.119  51.421  48.893  1.00 57.33           C  
+ATOM   1994  O4'   C A  93      65.506  51.340  47.586  1.00 56.23           O  
+ATOM   1995  C3'   C A  93      67.453  52.093  48.646  1.00 58.35           C  
+ATOM   1996  O3'   C A  93      68.358  51.720  49.676  1.00 60.91           O  
+ATOM   1997  C2'   C A  93      67.859  51.519  47.295  1.00 56.28           C  
+ATOM   1998  O2'   C A  93      68.444  50.245  47.419  1.00 56.69           O  
+ATOM   1999  C1'   C A  93      66.505  51.408  46.587  1.00 53.87           C  
+ATOM   2000  N1    C A  93      66.164  52.519  45.689  1.00 50.29           N  
+ATOM   2001  C2    C A  93      66.553  52.449  44.357  1.00 48.90           C  
+ATOM   2002  O2    C A  93      67.196  51.459  43.974  1.00 49.47           O  
+ATOM   2003  N3    C A  93      66.219  53.459  43.516  1.00 47.11           N  
+ATOM   2004  C4    C A  93      65.528  54.508  43.973  1.00 45.79           C  
+ATOM   2005  N4    C A  93      65.205  55.474  43.112  1.00 47.26           N  
+ATOM   2006  C5    C A  93      65.134  54.610  45.330  1.00 45.95           C  
+ATOM   2007  C6    C A  93      65.467  53.599  46.149  1.00 48.81           C  
+ATOM   2008  P     A A  94      69.700  52.565  49.893  1.00 63.26           P  
+ATOM   2009  OP1   A A  94      70.472  51.929  51.000  1.00 63.03           O  
+ATOM   2010  OP2   A A  94      69.311  54.001  49.989  1.00 63.37           O  
+ATOM   2011  O5'   A A  94      70.490  52.381  48.519  1.00 61.77           O  
+ATOM   2012  C5'   A A  94      71.326  51.253  48.283  1.00 61.29           C  
+ATOM   2013  C4'   A A  94      72.146  51.475  47.027  1.00 62.44           C  
+ATOM   2014  O4'   A A  94      71.241  51.538  45.895  1.00 61.92           O  
+ATOM   2015  C3'   A A  94      72.937  52.778  46.954  1.00 63.29           C  
+ATOM   2016  O3'   A A  94      74.230  52.643  47.539  1.00 63.03           O  
+ATOM   2017  C2'   A A  94      73.070  52.992  45.454  1.00 63.82           C  
+ATOM   2018  O2'   A A  94      74.136  52.237  44.902  1.00 65.97           O  
+ATOM   2019  C1'   A A  94      71.721  52.471  44.948  1.00 62.06           C  
+ATOM   2020  N9    A A  94      70.717  53.521  44.818  1.00 60.30           N  
+ATOM   2021  C8    A A  94      69.962  54.073  45.821  1.00 60.55           C  
+ATOM   2022  N7    A A  94      69.162  55.030  45.415  1.00 59.61           N  
+ATOM   2023  C5    A A  94      69.401  55.106  44.053  1.00 59.00           C  
+ATOM   2024  C6    A A  94      68.872  55.924  43.063  1.00 58.81           C  
+ATOM   2025  N6    A A  94      67.974  56.874  43.310  1.00 59.79           N  
+ATOM   2026  N1    A A  94      69.307  55.745  41.796  1.00 58.99           N  
+ATOM   2027  C2    A A  94      70.230  54.798  41.564  1.00 59.88           C  
+ATOM   2028  N3    A A  94      70.812  53.965  42.421  1.00 59.48           N  
+ATOM   2029  C4    A A  94      70.348  54.174  43.666  1.00 59.71           C  
+TER    2030        A A  94                                                      
+HETATM 2031 MG    MG A 205      44.673  52.089  21.066  1.00 52.79          MG  
+HETATM 2032 MG    MG A 206      57.959  37.961  33.008  1.00 75.51          MG  
+HETATM 2033 IR   IRI A 201      53.885  56.740  -0.635  1.00 98.98          IR  
+HETATM 2034  N1  IRI A 201      52.485  58.054  -1.822  1.00 97.67           N  
+HETATM 2035  N2  IRI A 201      54.266  58.382   0.816  1.00 98.55           N  
+HETATM 2036  N3  IRI A 201      55.233  55.348   0.506  1.00 98.59           N  
+HETATM 2037  N4  IRI A 201      53.497  55.076  -2.135  1.00 99.01           N  
+HETATM 2038  N5  IRI A 201      52.127  56.049   0.598  1.00 98.22           N  
+HETATM 2039  N6  IRI A 201      55.669  57.413  -1.820  1.00 99.00           N  
+HETATM 2040 IR   IRI A 202      53.580  69.128  10.808  1.00 85.21          IR  
+HETATM 2041  N1  IRI A 202      51.863  70.294   9.931  1.00 85.46           N  
+HETATM 2042  N2  IRI A 202      53.979  70.743  12.294  1.00 85.76           N  
+HETATM 2043  N3  IRI A 202      55.263  67.867  11.657  1.00 84.55           N  
+HETATM 2044  N4  IRI A 202      53.191  67.483   9.307  1.00 85.84           N  
+HETATM 2045  N5  IRI A 202      52.135  68.142  12.244  1.00 85.61           N  
+HETATM 2046  N6  IRI A 202      55.040  70.069   9.391  1.00 85.28           N  
+HETATM 2047 IR   IRI A 203      61.715  45.974  13.576  1.00 89.54          IR  
+HETATM 2048  N1  IRI A 203      60.528  47.751  14.317  1.00 90.96           N  
+HETATM 2049  N2  IRI A 203      60.570  44.590  14.901  1.00 90.31           N  
+HETATM 2050  N3  IRI A 203      62.943  44.257  12.747  1.00 91.15           N  
+HETATM 2051  N4  IRI A 203      62.898  47.359  12.224  1.00 90.58           N  
+HETATM 2052  N5  IRI A 203      60.217  45.694  11.915  1.00 90.65           N  
+HETATM 2053  N6  IRI A 203      63.229  46.280  15.197  1.00 90.26           N  
+HETATM 2054 IR   IRI A 204      58.679  49.493  35.312  1.00 49.00          IR  
+HETATM 2055  N1  IRI A 204      57.796  50.488  33.496  1.00 51.75           N  
+HETATM 2056  N2  IRI A 204      56.792  49.834  36.443  1.00 50.76           N  
+HETATM 2057  N3  IRI A 204      59.668  48.489  37.085  1.00 53.82           N  
+HETATM 2058  N4  IRI A 204      60.576  49.136  34.184  1.00 51.33           N  
+HETATM 2059  N5  IRI A 204      57.947  47.503  34.598  1.00 53.62           N  
+HETATM 2060  N6  IRI A 204      59.488  51.435  36.079  1.00 53.26           N  
+HETATM 2061  N   SAM A 301      48.661  58.442  29.234  1.00 71.76           N  
+HETATM 2062  CA  SAM A 301      48.892  57.767  27.953  1.00 71.83           C  
+HETATM 2063  C   SAM A 301      47.728  58.043  27.018  1.00 73.09           C  
+HETATM 2064  O   SAM A 301      47.747  57.608  25.870  1.00 74.98           O  
+HETATM 2065  OXT SAM A 301      46.793  58.755  27.385  1.00 73.14           O  
+HETATM 2066  CB  SAM A 301      49.051  56.247  28.156  1.00 70.42           C  
+HETATM 2067  CG  SAM A 301      49.924  55.993  29.384  1.00 68.18           C  
+HETATM 2068  SD  SAM A 301      50.180  54.222  29.811  1.00 68.57           S  
+HETATM 2069  CE  SAM A 301      49.547  53.321  28.362  1.00 68.16           C  
+HETATM 2070  C5' SAM A 301      48.781  54.097  30.945  1.00 63.51           C  
+HETATM 2071  C4' SAM A 301      49.142  54.393  32.411  1.00 61.14           C  
+HETATM 2072  O4' SAM A 301      49.826  55.679  32.483  1.00 59.00           O  
+HETATM 2073  C3' SAM A 301      47.793  54.604  33.049  1.00 59.63           C  
+HETATM 2074  O3' SAM A 301      47.357  53.395  33.671  1.00 61.69           O  
+HETATM 2075  C2' SAM A 301      48.045  55.680  34.098  1.00 58.07           C  
+HETATM 2076  O2' SAM A 301      48.258  55.128  35.392  1.00 60.89           O  
+HETATM 2077  C1' SAM A 301      49.315  56.473  33.618  1.00 56.29           C  
+HETATM 2078  N9  SAM A 301      49.019  57.807  33.055  1.00 52.35           N  
+HETATM 2079  C8  SAM A 301      49.941  58.804  32.897  1.00 49.96           C  
+HETATM 2080  N7  SAM A 301      49.391  59.863  32.379  1.00 49.17           N  
+HETATM 2081  C5  SAM A 301      48.084  59.618  32.158  1.00 49.87           C  
+HETATM 2082  C6  SAM A 301      47.000  60.356  31.619  1.00 49.12           C  
+HETATM 2083  N6  SAM A 301      47.179  61.649  31.181  1.00 49.12           N  
+HETATM 2084  N1  SAM A 301      45.794  59.770  31.541  1.00 48.62           N  
+HETATM 2085  C2  SAM A 301      45.596  58.512  31.950  1.00 48.26           C  
+HETATM 2086  N3  SAM A 301      46.578  57.797  32.476  1.00 48.84           N  
+HETATM 2087  C4  SAM A 301      47.821  58.293  32.591  1.00 50.12           C  
+HETATM 2088  O   HOH A 401      57.434  67.701   5.730  1.00 62.83           O  
+HETATM 2089  O   HOH A 402      66.189  60.895   3.390  1.00102.86           O  
+HETATM 2090  O   HOH A 403      41.692  28.822  12.775  1.00 79.78           O  
+HETATM 2091  O   HOH A 404      58.520  32.372  29.001  1.00 87.70           O  
+HETATM 2092  O   HOH A 405      41.683  78.187  34.648  1.00 90.77           O  
+HETATM 2093  O   HOH A 406      39.116  52.800  26.854  1.00 47.35           O  
+HETATM 2094  O   HOH A 407      60.473  27.307  22.789  1.00 55.76           O  
+HETATM 2095  O   HOH A 408      66.992  61.289  13.604  1.00 74.35           O  
+HETATM 2096  O   HOH A 409      54.344  44.338  21.904  1.00 44.49           O  
+HETATM 2097  O   HOH A 410      44.691  72.338  12.049  1.00 50.99           O  
+HETATM 2098  O   HOH A 411      40.751  63.603  43.590  1.00 89.83           O  
+HETATM 2099  O   HOH A 412      53.645  41.356   9.844  1.00 90.63           O  
+HETATM 2100  O   HOH A 413      59.949  37.796  24.955  1.00 70.80           O  
+HETATM 2101  O   HOH A 415      51.339  54.431  20.373  1.00 76.96           O  
+HETATM 2102  O   HOH A 416      37.653  77.331  42.105  1.00104.47           O  
+HETATM 2103  O   HOH A 417      52.864  38.162  12.617  1.00 80.23           O  
+HETATM 2104  O   HOH A 418      70.042  75.630   9.251  1.00 96.14           O  
+HETATM 2105  O   HOH A 419      57.849  36.827  16.245  1.00 55.25           O  
+HETATM 2106  O   HOH A 420      51.199  53.647  16.824  1.00 68.61           O  
+HETATM 2107  O   HOH A 421      46.270  42.361  39.422  1.00 86.08           O  
+HETATM 2108  O   HOH A 422      39.748  46.501  33.723  1.00 90.52           O  
+HETATM 2109  O   HOH A 423      55.402  30.310  22.335  1.00153.77           O  
+HETATM 2110  O   HOH A 424      62.850  37.633  36.622  1.00 93.90           O  
+HETATM 2111  O   HOH A 425      52.620  28.934  10.172  1.00 66.53           O  
+HETATM 2112  O   HOH A 426      46.043  72.059  15.009  1.00 81.11           O  
+HETATM 2113  O   HOH A 427      44.504  24.559  13.975  1.00 95.67           O  
+HETATM 2114  O   HOH A 428      64.390  51.541   8.357  1.00 96.89           O  
+HETATM 2115  O   HOH A 429      62.387  43.098  34.217  1.00 62.96           O  
+HETATM 2116  O   HOH A 430      40.781  42.498  19.177  1.00 95.04           O  
+HETATM 2117  O   HOH A 431      51.714  28.135  30.983  1.00 99.10           O  
+HETATM 2118  O   HOH A 432      56.277  41.684  42.172  1.00 76.07           O  
+HETATM 2119  O   HOH A 433      71.383  70.114   4.691  1.00115.24           O  
+HETATM 2120  O   HOH A 434      43.954  36.036  19.243  1.00 60.36           O  
+HETATM 2121  O   HOH A 435      42.927  80.090  37.718  1.00 93.62           O  
+HETATM 2122  O   HOH A 436      57.157  36.207  23.849  1.00 66.99           O  
+HETATM 2123  O   HOH A 437      50.487  54.395  35.797  1.00115.03           O  
+HETATM 2124  O   HOH A 438      42.557  37.639  16.483  1.00104.97           O  
+HETATM 2125  O   HOH A 439      52.517  25.349   8.099  1.00 83.24           O  
+HETATM 2126  O   HOH A 440      43.812  69.893  17.618  1.00 74.07           O  
+HETATM 2127  O   HOH A 441      42.386  49.215  25.612  1.00 87.62           O  
+HETATM 2128  O   HOH A 442      43.738  47.793  12.611  1.00 97.20           O  
+HETATM 2129  O   HOH A 443      56.851  56.881  11.453  1.00 65.45           O  
+HETATM 2130  O   HOH A 444      41.494  28.883  24.574  1.00 68.68           O  
+HETATM 2131  O   HOH A 445      66.299  67.845  11.185  1.00119.36           O  
+HETATM 2132  O   HOH A 446      44.327  43.962  37.114  1.00 59.00           O  
+HETATM 2133  O   HOH A 447      55.964  29.615  20.081  1.00 95.39           O  
+HETATM 2134  O   HOH A 448      57.973  59.050  -2.009  1.00109.16           O  
+HETATM 2135  O   HOH A 449      59.402  59.312  31.449  1.00 68.84           O  
+HETATM 2136  O   HOH A 450      43.007  16.103  21.017  1.00106.73           O  
+HETATM 2137  O   HOH A 451      42.422  49.150  15.212  1.00 78.44           O  
+HETATM 2138  O   HOH A 452      70.835  47.923  38.230  1.00 80.61           O  
+HETATM 2139  O   HOH A 453      61.705  64.436  22.275  1.00 84.32           O  
+HETATM 2140  O   HOH A 454      46.943  51.613  25.671  1.00 73.11           O  
+HETATM 2141  O   HOH A 455      54.648  46.163  19.618  1.00 62.24           O  
+HETATM 2142  O   HOH A 456      38.484  46.751  20.701  1.00 56.54           O  
+HETATM 2143  O   HOH A 457      60.794  35.462  31.358  1.00109.99           O  
+HETATM 2144  O   HOH A 458      44.895  54.912  35.019  1.00 81.53           O  
+HETATM 2145  O   HOH A 459      60.469  54.509  19.865  1.00 78.35           O  
+HETATM 2146  O   HOH A 460      40.557  49.152  31.709  1.00 94.98           O  
+HETATM 2147  O   HOH A 461      49.564  72.961   7.126  1.00127.46           O  
+HETATM 2148  O   HOH A 462      38.911  32.924  24.206  1.00 94.52           O  
+HETATM 2149  O   HOH A 463      44.840  67.115  17.805  1.00 64.28           O  
+HETATM 2150  O   HOH A 464      59.959  60.408  29.152  1.00 87.28           O  
+HETATM 2151  O   HOH A 465      47.480  63.127  48.379  1.00106.79           O  
+HETATM 2152  O   HOH A 466      41.379  47.530  27.555  1.00 63.18           O  
+HETATM 2153  O   HOH A 467      55.256  41.519  33.323  1.00 88.02           O  
+HETATM 2154  O   HOH A 468      46.278  35.257  34.883  1.00103.21           O  
+HETATM 2155  O   HOH A 469      50.168  44.685  11.400  1.00 84.54           O  
+HETATM 2156  O   HOH A 470      55.140  23.817   9.150  1.00 80.25           O  
+HETATM 2157  O   HOH A 471      59.853  74.716   4.618  1.00 98.69           O  
+HETATM 2158  O   HOH A 472      50.122  40.345  41.076  1.00 96.48           O  
+HETATM 2159  O   HOH A 473      65.972  41.974  36.431  1.00117.24           O  
+HETATM 2160  O   HOH A 474      55.172  63.267  37.006  1.00103.99           O  
+HETATM 2161  O   HOH A 475      57.260  52.484  35.826  1.00 36.48           O  
+HETATM 2162  O   HOH A 476      47.778  19.952   7.533  1.00 98.79           O  
+HETATM 2163  O   HOH A 477      61.467  73.402   3.421  1.00 91.53           O  
+HETATM 2164  O   HOH A 478      58.411  68.300  -1.259  1.00 79.23           O  
+HETATM 2165  O   HOH A 479      41.220  45.034  19.654  1.00104.86           O  
+HETATM 2166  O   HOH A 480      55.599  58.758  22.542  1.00 99.09           O  
+HETATM 2167  O   HOH A 481      53.744  43.835  45.686  1.00120.41           O  
+HETATM 2168  O   HOH A 482      59.195  65.528  18.099  1.00 79.51           O  
+HETATM 2169  O   HOH A 483      61.286  41.409  39.993  1.00 90.87           O  
+HETATM 2170  O   HOH A 484      49.047  34.291  16.948  1.00101.95           O  
+HETATM 2171  O   HOH A 485      51.730  71.388  25.674  1.00 52.14           O  
+HETATM 2172  O   HOH A 486      49.629  29.507  20.165  1.00 58.18           O  
+HETATM 2173  O   HOH A 487      39.919  50.462  26.232  1.00 67.53           O  
+HETATM 2174  O   HOH A 488      64.965  67.977   4.650  1.00 80.20           O  
+HETATM 2175  O   HOH A 489      48.890  37.269  24.529  1.00 49.39           O  
+CONECT  194 2031                                                                
+CONECT 1351 2031                                                                
+CONECT 1365 2031                                                                
+CONECT 1792 2032                                                                
+CONECT 1794 2032                                                                
+CONECT 1799 2032                                                                
+CONECT 1815 2032                                                                
+CONECT 2031  194 1351 1365                                                      
+CONECT 2032 1792 1794 1799 1815                                                 
+CONECT 2033 2034 2035 2036 2037                                                 
+CONECT 2033 2038 2039                                                           
+CONECT 2034 2033                                                                
+CONECT 2035 2033                                                                
+CONECT 2036 2033                                                                
+CONECT 2037 2033                                                                
+CONECT 2038 2033                                                                
+CONECT 2039 2033                                                                
+CONECT 2040 2041 2042 2043 2044                                                 
+CONECT 2040 2045 2046                                                           
+CONECT 2041 2040                                                                
+CONECT 2042 2040                                                                
+CONECT 2043 2040                                                                
+CONECT 2044 2040                                                                
+CONECT 2045 2040                                                                
+CONECT 2046 2040                                                                
+CONECT 2047 2048 2049 2050 2051                                                 
+CONECT 2047 2052 2053                                                           
+CONECT 2048 2047                                                                
+CONECT 2049 2047                                                                
+CONECT 2050 2047                                                                
+CONECT 2051 2047                                                                
+CONECT 2052 2047                                                                
+CONECT 2053 2047                                                                
+CONECT 2054 2055 2056 2057 2058                                                 
+CONECT 2054 2059 2060                                                           
+CONECT 2055 2054                                                                
+CONECT 2056 2054                                                                
+CONECT 2057 2054                                                                
+CONECT 2058 2054                                                                
+CONECT 2059 2054                                                                
+CONECT 2060 2054                                                                
+CONECT 2061 2062                                                                
+CONECT 2062 2061 2063 2066                                                      
+CONECT 2063 2062 2064 2065                                                      
+CONECT 2064 2063                                                                
+CONECT 2065 2063                                                                
+CONECT 2066 2062 2067                                                           
+CONECT 2067 2066 2068                                                           
+CONECT 2068 2067 2069 2070                                                      
+CONECT 2069 2068                                                                
+CONECT 2070 2068 2071                                                           
+CONECT 2071 2070 2072 2073                                                      
+CONECT 2072 2071 2077                                                           
+CONECT 2073 2071 2074 2075                                                      
+CONECT 2074 2073                                                                
+CONECT 2075 2073 2076 2077                                                      
+CONECT 2076 2075                                                                
+CONECT 2077 2072 2075 2078                                                      
+CONECT 2078 2077 2079 2087                                                      
+CONECT 2079 2078 2080                                                           
+CONECT 2080 2079 2081                                                           
+CONECT 2081 2080 2082 2087                                                      
+CONECT 2082 2081 2083 2084                                                      
+CONECT 2083 2082                                                                
+CONECT 2084 2082 2085                                                           
+CONECT 2085 2084 2086                                                           
+CONECT 2086 2085 2087                                                           
+CONECT 2087 2078 2081 2086                                                      
+MASTER      373    0    7    0    0    0   13    6 2174    1   68    8          
+END                                                                             
index 7eaf9f7..2f34c46 100644 (file)
@@ -1,6 +1,6 @@
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
index d715a4d..cc85e86 100755 (executable)
@@ -1,6 +1,6 @@
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
index f333ebc..11c7f65 100644 (file)
@@ -1,5 +1,5 @@
 /**
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
index 159d07e..27a3f0d 100644 (file)
@@ -1,5 +1,5 @@
 /**
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
index 17a8f7b..71df1ed 100644 (file)
@@ -1,5 +1,5 @@
 /**
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
index 344182b..61a39e9 100644 (file)
@@ -1,5 +1,5 @@
 /**
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
diff --git a/examples/dna_interleaved.phy b/examples/dna_interleaved.phy
new file mode 100644 (file)
index 0000000..745f399
--- /dev/null
@@ -0,0 +1,132 @@
+10 705
+Cow       ATGGCATATCCCATACAACTAGGATTCCAAGATGCAACATCACCAATCATAGAAGAACTA
+Carp      ATGGCACACCCAACGCAACTAGGTTTCAAGGACGCGGCCATACCCGTTATAGAGGAACTT
+Chicken   ATGGCCAACCACTCCCAACTAGGCTTTCAAGACGCCTCATCCCCCATCATAGAAGAGCTC
+Human     ATGGCACATGCAGCGCAAGTAGGTCTACAAGACGCTACTTCCCCTATCATAGAAGAGCTT
+Loach     ATGGCACATCCCACACAATTAGGATTCCAAGACGCGGCCTCACCCGTAATAGAAGAACTT
+Mouse     ATGGCCTACCCATTCCAACTTGGTCTACAAGACGCCACATCCCCTATTATAGAAGAGCTA
+Rat       ATGGCTTACCCATTTCAACTTGGCTTACAAGACGCTACATCACCTATCATAGAAGAACTT
+Seal      ATGGCATACCCCCTACAAATAGGCCTACAAGATGCAACCTCTCCCATTATAGAGGAGTTA
+Whale     ATGGCATATCCATTCCAACTAGGTTTCCAAGATGCAGCATCACCCATCATAGAAGAGCTC
+Frog      ATGGCACACCCATCACAATTAGGTTTTCAAGACGCAGCCTCTCCAATTATAGAAGAATTA
+
+CTTCACTTTCATGACCACACGCTAATAATTGTCTTCTTAATTAGCTCATTAGTACTTTAC
+CTTCACTTCCACGACCACGCATTAATAATTGTGCTCCTAATTAGCACTTTAGTTTTATAT
+GTTGAATTCCACGACCACGCCCTGATAGTCGCACTAGCAATTTGCAGCTTAGTACTCTAC
+ATCACCTTTCATGATCACGCCCTCATAATCATTTTCCTTATCTGCTTCCTAGTCCTGTAT
+CTTCACTTCCATGACCATGCCCTAATAATTGTATTTTTGATTAGCGCCCTAGTACTTTAT
+ATAAATTTCCATGATCACACACTAATAATTGTTTTCCTAATTAGCTCCTTAGTCCTCTAT
+ACAAACTTTCATGACCACACCCTAATAATTGTATTCCTCATCAGCTCCCTAGTACTTTAT
+CTACACTTCCATGACCACACATTAATAATTGTGTTCCTAATTAGCTCATTAGTACTCTAC
+CTACACTTTCACGATCATACACTAATAATCGTTTTTCTAATTAGCTCTTTAGTTCTCTAC
+CTTCACTTCCACGACCATACCCTCATAGCCGTTTTTCTTATTAGTACGCTAGTTCTTTAC
+
+ATTATTTCACTAATACTAACGACAAAGCTGACCCATACAAGCACGATAGATGCACAAGAA
+ATTATTACTGCAATGGTATCAACTAAACTTACTAATAAATATATTCTAGACTCCCAAGAA
+CTTCTAACTCTTATACTTATAGAAAAACTATCA---TCAAACACCGTAGATGCCCAAGAA
+GCCCTTTTCCTAACACTCACAACAAAACTAACTAATACTAACATCTCAGACGCTCAGGAA
+GTTATTATTACAACCGTCTCAACAAAACTCACTAACATATATATTTTGGACTCACAAGAA
+ATCATCTCGCTAATATTAACAACAAAACTAACACATACAAGCACAATAGATGCACAAGAA
+ATTATTTCACTAATACTAACAACAAAACTAACACACACAAGCACAATAGACGCCCAAGAA
+ATTATCTCACTTATACTAACCACGAAACTCACCCACACAAGTACAATAGACGCACAAGAA
+ATTATTACCCTAATGCTTACAACCAAATTAACACATACTAGTACAATAGACGCCCAAGAA
+ATTATTACTATTATAATAACTACTAAACTAACTAATACAAACCTAATGGACGCACAAGAG
+
+GTAGAGACAATCTGAACCATTCTGCCCGCCATCATCTTAATTCTAATTGCTCTTCCTTCT
+ATCGAAATCGTATGAACCATTCTACCAGCCGTCATTTTAGTACTAATCGCCCTGCCCTCC
+GTTGAACTAATCTGAACCATCCTACCCGCTATTGTCCTAGTCCTGCTTGCCCTCCCCTCC
+ATAGAAACCGTCTGAACTATCCTGCCCGCCATCATCCTAGTCCTCATCGCCCTCCCATCC
+ATTGAAATCGTATGAACTGTGCTCCCTGCCCTAATCCTCATTTTAATCGCCCTCCCCTCA
+GTTGAAACCATTTGAACTATTCTACCAGCTGTAATCCTTATCATAATTGCTCTCCCCTCT
+GTAGAAACAATTTGAACAATTCTCCCAGCTGTCATTCTTATTCTAATTGCCCTTCCCTCC
+GTGGAAACGGTGTGAACGATCCTACCCGCTATCATTTTAATTCTCATTGCCCTACCATCA
+GTAGAAACTGTCTGAACTATCCTCCCAGCCATTATCTTAATTTTAATTGCCTTGCCTTCA
+ATCGAAATAGTGTGAACTATTATACCAGCTATTAGCCTCATCATAATTGCCCTTCCATCC
+
+TTACGAATTCTATACATAATAGATGAAATCAATAACCCATCTCTTACAGTAAAAACCATA
+CTACGCATCCTGTACCTTATAGACGAAATTAACGACCCTCACCTGACAATTAAAGCAATA
+CTCCAAATCCTCTACATAATAGACGAAATCGACGAACCTGATCTCACCCTAAAAGCCATC
+CTACGCATCCTTTACATAACAGACGAGGTCAACGATCCCTCCCTTACCATCAAATCAATT
+CTACGAATTCTATATCTTATAGACGAGATTAATGACCCCCACCTAACAATTAAGGCCATG
+CTACGCATTCTATATATAATAGACGAAATCAACAACCCCGTATTAACCGTTAAAACCATA
+CTACGAATTCTATACATAATAGACGAGATTAATAACCCAGTTCTAACAGTAAAAACTATA
+TTACGAATCCTCTACATAATGGACGAGATCAATAACCCTTCCTTGACCGTAAAAACTATA
+TTACGGATCCTTTACATAATAGACGAAGTCAATAACCCCTCCCTCACTGTAAAAACAATA
+CTTCGTATCCTATATTTAATAGATGAAGTTAATGATCCACACTTAACAATTAAAGCAATC
+
+GGACATCAGTGATACTGAAGCTATGAGTATACAGATTATGAGGACTTAAGCTTCGACTCC
+GGACACCAATGATACTGAAGTTACGAGTATACAGACTATGAAAATCTAGGATTCGACTCC
+GGACACCAATGATACTGAACCTATGAATACACAGACTTCAAGGACCTCTCATTTGACTCC
+GGCCACCAATGGTACTGAACCTACGAGTACACCGACTACGGCGGACTAATCTTCAACTCC
+GGGCACCAATGATACTGAAGCTACGAGTATACTGATTATGAAAACTTAAGTTTTGACTCC
+GGGCACCAATGATACTGAAGCTACGAATATACTGACTATGAAGACCTATGCTTTGATTCA
+GGACACCAATGATACTGAAGCTATGAATATACTGACTATGAAGACCTATGCTTTGACTCC
+GGACATCAGTGATACTGAAGCTATGAGTACACAGACTACGAAGACCTGAACTTTGACTCA
+GGTCACCAATGATATTGAAGCTATGAGTATACCGACTACGAAGACCTAAGCTTCGACTCC
+GGCCACCAATGATACTGAAGCTACGAATATACTAACTATGAGGATCTCTCATTTGACTCT
+
+TACATAATTCCAACATCAGAATTAAAGCCAGGGGAGCTACGACTATTAGAAGTCGATAAT
+TATATAGTACCAACCCAAGACCTTGCCCCCGGACAATTCCGACTTCTGGAAACAGACCAC
+TACATAACCCCAACAACAGACCTCCCCCTAGGCCACTTCCGCCTACTAGAAGTCGACCAT
+TACATACTTCCCCCATTATTCCTAGAACCAGGCGACCTGCGACTCCTTGACGTTGACAAT
+TACATAATCCCCACCCAGGACCTAACCCCTGGACAATTCCGGCTACTAGAGACAGACCAC
+TATATAATCCCAACAAACGACCTAAAACCTGGTGAACTACGACTGCTAGAAGTTGATAAC
+TACATAATCCCAACCAATGACCTAAAACCAGGTGAACTTCGTCTATTAGAAGTTGATAAT
+TATATGATCCCCACACAAGAACTAAAGCCCGGAGAACTACGACTGCTAGAAGTAGACAAT
+TATATAATCCCAACATCAGACCTAAAGCCAGGAGAACTACGATTATTAGAAGTAGATAAC
+TATATAATTCCAACTAATGACCTTACCCCTGGACAATTCCGGCTGCTAGAAGTTGATAAT
+
+CGAGTTGTACTACCAATAGAAATAACAATCCGAATGTTAGTCTCCTCTGAAGACGTATTA
+CGAATAGTTGTTCCAATAGAATCCCCAGTCCGTGTCCTAGTATCTGCTGAAGACGTGCTA
+CGCATTGTAATCCCCATAGAATCCCCCATTCGAGTAATCATCACCGCTGATGACGTCCTC
+CGAGTAGTACTCCCGATTGAAGCCCCCATTCGTATAATAATTACATCACAAGACGTCTTG
+CGAATGGTTGTTCCCATAGAATCCCCTATTCGCATTCTTGTTTCCGCCGAAGATGTACTA
+CGAGTCGTTCTGCCAATAGAACTTCCAATCCGTATATTAATTTCATCTGAAGACGTCCTC
+CGGGTAGTCTTACCAATAGAACTTCCAATTCGTATACTAATCTCATCCGAAGACGTCCTG
+CGAGTAGTCCTCCCAATAGAAATAACAATCCGCATACTAATCTCATCAGAAGATGTACTC
+CGAGTTGTCTTACCTATAGAAATAACAATCCGAATATTAGTCTCATCAGAAGACGTACTC
+CGAATAGTAGTCCCAATAGAATCTCCAACCCGACTTTTAGTTACAGCCGAAGACGTCCTC
+
+CACTCATGAGCTGTGCCCTCTCTAGGACTAAAAACAGACGCAATCCCAGGCCGTCTAAAC
+CATTCTTGAGCTGTTCCATCCCTTGGCGTAAAAATGGACGCAGTCCCAGGACGACTAAAT
+CACTCATGAGCCGTACCCGCCCTCGGGGTAAAAACAGACGCAATCCCTGGACGACTAAAT
+CACTCATGAGCTGTCCCCACATTAGGCTTAAAAACAGATGCAATTCCCGGACGTCTAAAC
+CACTCCTGGGCCCTTCCAGCCATGGGGGTAAAGATAGACGCGGTCCCAGGACGCCTTAAC
+CACTCATGAGCAGTCCCCTCCCTAGGACTTAAAACTGATGCCATCCCAGGCCGACTAAAT
+CACTCATGAGCCATCCCTTCACTAGGGTTAAAAACCGACGCAATCCCCGGCCGCCTAAAC
+CACTCATGAGCCGTACCGTCCCTAGGACTAAAAACTGATGCTATCCCAGGACGACTAAAC
+CACTCATGGGCCGTACCCTCCTTGGGCCTAAAAACAGATGCAATCCCAGGACGCCTAAAC
+CACTCGTGAGCTGTACCCTCCTTGGGTGTCAAAACAGATGCAATCCCAGGACGACTTCAT
+
+CAAACAACCCTTATATCGTCCCGTCCAGGCTTATATTACGGTCAATGCTCAGAAATTTGC
+CAAGCCGCCTTTATTGCCTCACGCCCAGGGGTCTTTTACGGACAATGCTCTGAAATTTGT
+CAAACCTCCTTCATCACCACTCGACCAGGAGTGTTTTACGGACAATGCTCAGAAATCTGC
+CAAACCACTTTCACCGCTACACGACCGGGGGTATACTACGGTCAATGCTCTGAAATCTGT
+CAAACCGCCTTTATTGCCTCCCGCCCCGGGGTATTCTATGGGCAATGCTCAGAAATCTGT
+CAAGCAACAGTAACATCAAACCGACCAGGGTTATTCTATGGCCAATGCTCTGAAATTTGT
+CAAGCTACAGTCACATCAAACCGACCAGGTCTATTCTATGGCCAATGCTCTGAAATTTGC
+CAAACAACCCTAATAACCATACGACCAGGACTGTACTACGGTCAATGCTCAGAAATCTGT
+CAAACAACCTTAATATCAACACGACCAGGCCTATTTTATGGACAATGCTCAGAGATCTGC
+CAAACATCATTTATTGCTACTCGTCCGGGAGTATTTTACGGACAATGTTCAGAAATTTGC
+
+GGGTCAAACCACAGTTTCATACCCATTGTCCTTGAGTTAGTCCCACTAAAGTACTTTGAA
+GGAGCTAATCACAGCTTTATACCAATTGTAGTTGAAGCAGTACCTCTCGAACACTTCGAA
+GGAGCTAACCACAGCTACATACCCATTGTAGTAGAGTCTACCCCCCTAAAACACTTTGAA
+GGAGCAAACCACAGTTTCATGCCCATCGTCCTAGAATTAATTCCCCTAAAAATCTTTGAA
+GGAGCAAACCACAGCTTTATACCCATCGTAGTAGAAGCGGTCCCACTATCTCACTTCGAA
+GGATCTAACCATAGCTTTATGCCCATTGTCCTAGAAATGGTTCCACTAAAATATTTCGAA
+GGCTCAAATCACAGCTTCATACCCATTGTACTAGAAATAGTGCCTCTAAAATATTTCGAA
+GGTTCAAACCACAGCTTCATACCTATTGTCCTCGAATTGGTCCCACTATCCCACTTCGAG
+GGCTCAAACCACAGTTTCATACCAATTGTCCTAGAACTAGTACCCCTAGAAGTCTTTGAA
+GGAGCAAACCACAGCTTTATACCAATTGTAGTTGAAGCAGTACCGCTAACCGACTTTGAA
+
+AAATGATCTGCGTCAATATTA---------------------TAA
+AACTGATCCTCATTAATACTAGAAGACGCCTCGCTAGGAAGCTAA
+GCCTGATCCTCACTA------------------CTGTCATCTTAA
+ATA---------------------GGGCCCGTATTTACCCTATAG
+AACTGGTCCACCCTTATACTAAAAGACGCCTCACTAGGAAGCTAA
+AACTGATCTGCTTCAATAATT---------------------TAA
+AACTGATCAGCTTCTATAATT---------------------TAA
+AAATGATCTACCTCAATGCTT---------------------TAA
+AAATGATCTGTATCAATACTA---------------------TAA
+AACTGATCTTCATCAATACTA---GAAGCATCACTA------AGA
diff --git a/examples/dna_sequential.phy b/examples/dna_sequential.phy
new file mode 100644 (file)
index 0000000..99dd34c
--- /dev/null
@@ -0,0 +1,11 @@
+10 705
+Cow       ATGGCATATCCCATACAACTAGGATTCCAAGATGCAACATCACCAATCATAGAAGAACTACTTCACTTTCATGACCACACGCTAATAATTGTCTTCTTAATTAGCTCATTAGTACTTTACATTATTTCACTAATACTAACGACAAAGCTGACCCATACAAGCACGATAGATGCACAAGAAGTAGAGACAATCTGAACCATTCTGCCCGCCATCATCTTAATTCTAATTGCTCTTCCTTCTTTACGAATTCTATACATAATAGATGAAATCAATAACCCATCTCTTACAGTAAAAACCATAGGACATCAGTGATACTGAAGCTATGAGTATACAGATTATGAGGACTTAAGCTTCGACTCCTACATAATTCCAACATCAGAATTAAAGCCAGGGGAGCTACGACTATTAGAAGTCGATAATCGAGTTGTACTACCAATAGAAATAACAATCCGAATGTTAGTCTCCTCTGAAGACGTATTACACTCATGAGCTGTGCCCTCTCTAGGACTAAAAACAGACGCAATCCCAGGCCGTCTAAACCAAACAACCCTTATATCGTCCCGTCCAGGCTTATATTACGGTCAATGCTCAGAAATTTGCGGGTCAAACCACAGTTTCATACCCATTGTCCTTGAGTTAGTCCCACTAAAGTACTTTGAAAAATGATCTGCGTCAATATTA---------------------TAA
+Carp      ATGGCACACCCAACGCAACTAGGTTTCAAGGACGCGGCCATACCCGTTATAGAGGAACTTCTTCACTTCCACGACCACGCATTAATAATTGTGCTCCTAATTAGCACTTTAGTTTTATATATTATTACTGCAATGGTATCAACTAAACTTACTAATAAATATATTCTAGACTCCCAAGAAATCGAAATCGTATGAACCATTCTACCAGCCGTCATTTTAGTACTAATCGCCCTGCCCTCCCTACGCATCCTGTACCTTATAGACGAAATTAACGACCCTCACCTGACAATTAAAGCAATAGGACACCAATGATACTGAAGTTACGAGTATACAGACTATGAAAATCTAGGATTCGACTCCTATATAGTACCAACCCAAGACCTTGCCCCCGGACAATTCCGACTTCTGGAAACAGACCACCGAATAGTTGTTCCAATAGAATCCCCAGTCCGTGTCCTAGTATCTGCTGAAGACGTGCTACATTCTTGAGCTGTTCCATCCCTTGGCGTAAAAATGGACGCAGTCCCAGGACGACTAAATCAAGCCGCCTTTATTGCCTCACGCCCAGGGGTCTTTTACGGACAATGCTCTGAAATTTGTGGAGCTAATCACAGCTTTATACCAATTGTAGTTGAAGCAGTACCTCTCGAACACTTCGAAAACTGATCCTCATTAATACTAGAAGACGCCTCGCTAGGAAGCTAA
+Chicken   ATGGCCAACCACTCCCAACTAGGCTTTCAAGACGCCTCATCCCCCATCATAGAAGAGCTCGTTGAATTCCACGACCACGCCCTGATAGTCGCACTAGCAATTTGCAGCTTAGTACTCTACCTTCTAACTCTTATACTTATAGAAAAACTATCA---TCAAACACCGTAGATGCCCAAGAAGTTGAACTAATCTGAACCATCCTACCCGCTATTGTCCTAGTCCTGCTTGCCCTCCCCTCCCTCCAAATCCTCTACATAATAGACGAAATCGACGAACCTGATCTCACCCTAAAAGCCATCGGACACCAATGATACTGAACCTATGAATACACAGACTTCAAGGACCTCTCATTTGACTCCTACATAACCCCAACAACAGACCTCCCCCTAGGCCACTTCCGCCTACTAGAAGTCGACCATCGCATTGTAATCCCCATAGAATCCCCCATTCGAGTAATCATCACCGCTGATGACGTCCTCCACTCATGAGCCGTACCCGCCCTCGGGGTAAAAACAGACGCAATCCCTGGACGACTAAATCAAACCTCCTTCATCACCACTCGACCAGGAGTGTTTTACGGACAATGCTCAGAAATCTGCGGAGCTAACCACAGCTACATACCCATTGTAGTAGAGTCTACCCCCCTAAAACACTTTGAAGCCTGATCCTCACTA------------------CTGTCATCTTAA
+Human     ATGGCACATGCAGCGCAAGTAGGTCTACAAGACGCTACTTCCCCTATCATAGAAGAGCTTATCACCTTTCATGATCACGCCCTCATAATCATTTTCCTTATCTGCTTCCTAGTCCTGTATGCCCTTTTCCTAACACTCACAACAAAACTAACTAATACTAACATCTCAGACGCTCAGGAAATAGAAACCGTCTGAACTATCCTGCCCGCCATCATCCTAGTCCTCATCGCCCTCCCATCCCTACGCATCCTTTACATAACAGACGAGGTCAACGATCCCTCCCTTACCATCAAATCAATTGGCCACCAATGGTACTGAACCTACGAGTACACCGACTACGGCGGACTAATCTTCAACTCCTACATACTTCCCCCATTATTCCTAGAACCAGGCGACCTGCGACTCCTTGACGTTGACAATCGAGTAGTACTCCCGATTGAAGCCCCCATTCGTATAATAATTACATCACAAGACGTCTTGCACTCATGAGCTGTCCCCACATTAGGCTTAAAAACAGATGCAATTCCCGGACGTCTAAACCAAACCACTTTCACCGCTACACGACCGGGGGTATACTACGGTCAATGCTCTGAAATCTGTGGAGCAAACCACAGTTTCATGCCCATCGTCCTAGAATTAATTCCCCTAAAAATCTTTGAAATA---------------------GGGCCCGTATTTACCCTATAG
+Loach     ATGGCACATCCCACACAATTAGGATTCCAAGACGCGGCCTCACCCGTAATAGAAGAACTTCTTCACTTCCATGACCATGCCCTAATAATTGTATTTTTGATTAGCGCCCTAGTACTTTATGTTATTATTACAACCGTCTCAACAAAACTCACTAACATATATATTTTGGACTCACAAGAAATTGAAATCGTATGAACTGTGCTCCCTGCCCTAATCCTCATTTTAATCGCCCTCCCCTCACTACGAATTCTATATCTTATAGACGAGATTAATGACCCCCACCTAACAATTAAGGCCATGGGGCACCAATGATACTGAAGCTACGAGTATACTGATTATGAAAACTTAAGTTTTGACTCCTACATAATCCCCACCCAGGACCTAACCCCTGGACAATTCCGGCTACTAGAGACAGACCACCGAATGGTTGTTCCCATAGAATCCCCTATTCGCATTCTTGTTTCCGCCGAAGATGTACTACACTCCTGGGCCCTTCCAGCCATGGGGGTAAAGATAGACGCGGTCCCAGGACGCCTTAACCAAACCGCCTTTATTGCCTCCCGCCCCGGGGTATTCTATGGGCAATGCTCAGAAATCTGTGGAGCAAACCACAGCTTTATACCCATCGTAGTAGAAGCGGTCCCACTATCTCACTTCGAAAACTGGTCCACCCTTATACTAAAAGACGCCTCACTAGGAAGCTAA
+Mouse     ATGGCCTACCCATTCCAACTTGGTCTACAAGACGCCACATCCCCTATTATAGAAGAGCTAATAAATTTCCATGATCACACACTAATAATTGTTTTCCTAATTAGCTCCTTAGTCCTCTATATCATCTCGCTAATATTAACAACAAAACTAACACATACAAGCACAATAGATGCACAAGAAGTTGAAACCATTTGAACTATTCTACCAGCTGTAATCCTTATCATAATTGCTCTCCCCTCTCTACGCATTCTATATATAATAGACGAAATCAACAACCCCGTATTAACCGTTAAAACCATAGGGCACCAATGATACTGAAGCTACGAATATACTGACTATGAAGACCTATGCTTTGATTCATATATAATCCCAACAAACGACCTAAAACCTGGTGAACTACGACTGCTAGAAGTTGATAACCGAGTCGTTCTGCCAATAGAACTTCCAATCCGTATATTAATTTCATCTGAAGACGTCCTCCACTCATGAGCAGTCCCCTCCCTAGGACTTAAAACTGATGCCATCCCAGGCCGACTAAATCAAGCAACAGTAACATCAAACCGACCAGGGTTATTCTATGGCCAATGCTCTGAAATTTGTGGATCTAACCATAGCTTTATGCCCATTGTCCTAGAAATGGTTCCACTAAAATATTTCGAAAACTGATCTGCTTCAATAATT---------------------TAA
+Rat       ATGGCTTACCCATTTCAACTTGGCTTACAAGACGCTACATCACCTATCATAGAAGAACTTACAAACTTTCATGACCACACCCTAATAATTGTATTCCTCATCAGCTCCCTAGTACTTTATATTATTTCACTAATACTAACAACAAAACTAACACACACAAGCACAATAGACGCCCAAGAAGTAGAAACAATTTGAACAATTCTCCCAGCTGTCATTCTTATTCTAATTGCCCTTCCCTCCCTACGAATTCTATACATAATAGACGAGATTAATAACCCAGTTCTAACAGTAAAAACTATAGGACACCAATGATACTGAAGCTATGAATATACTGACTATGAAGACCTATGCTTTGACTCCTACATAATCCCAACCAATGACCTAAAACCAGGTGAACTTCGTCTATTAGAAGTTGATAATCGGGTAGTCTTACCAATAGAACTTCCAATTCGTATACTAATCTCATCCGAAGACGTCCTGCACTCATGAGCCATCCCTTCACTAGGGTTAAAAACCGACGCAATCCCCGGCCGCCTAAACCAAGCTACAGTCACATCAAACCGACCAGGTCTATTCTATGGCCAATGCTCTGAAATTTGCGGCTCAAATCACAGCTTCATACCCATTGTACTAGAAATAGTGCCTCTAAAATATTTCGAAAACTGATCAGCTTCTATAATT---------------------TAA
+Seal      ATGGCATACCCCCTACAAATAGGCCTACAAGATGCAACCTCTCCCATTATAGAGGAGTTACTACACTTCCATGACCACACATTAATAATTGTGTTCCTAATTAGCTCATTAGTACTCTACATTATCTCACTTATACTAACCACGAAACTCACCCACACAAGTACAATAGACGCACAAGAAGTGGAAACGGTGTGAACGATCCTACCCGCTATCATTTTAATTCTCATTGCCCTACCATCATTACGAATCCTCTACATAATGGACGAGATCAATAACCCTTCCTTGACCGTAAAAACTATAGGACATCAGTGATACTGAAGCTATGAGTACACAGACTACGAAGACCTGAACTTTGACTCATATATGATCCCCACACAAGAACTAAAGCCCGGAGAACTACGACTGCTAGAAGTAGACAATCGAGTAGTCCTCCCAATAGAAATAACAATCCGCATACTAATCTCATCAGAAGATGTACTCCACTCATGAGCCGTACCGTCCCTAGGACTAAAAACTGATGCTATCCCAGGACGACTAAACCAAACAACCCTAATAACCATACGACCAGGACTGTACTACGGTCAATGCTCAGAAATCTGTGGTTCAAACCACAGCTTCATACCTATTGTCCTCGAATTGGTCCCACTATCCCACTTCGAGAAATGATCTACCTCAATGCTT---------------------TAA
+Whale     ATGGCATATCCATTCCAACTAGGTTTCCAAGATGCAGCATCACCCATCATAGAAGAGCTCCTACACTTTCACGATCATACACTAATAATCGTTTTTCTAATTAGCTCTTTAGTTCTCTACATTATTACCCTAATGCTTACAACCAAATTAACACATACTAGTACAATAGACGCCCAAGAAGTAGAAACTGTCTGAACTATCCTCCCAGCCATTATCTTAATTTTAATTGCCTTGCCTTCATTACGGATCCTTTACATAATAGACGAAGTCAATAACCCCTCCCTCACTGTAAAAACAATAGGTCACCAATGATATTGAAGCTATGAGTATACCGACTACGAAGACCTAAGCTTCGACTCCTATATAATCCCAACATCAGACCTAAAGCCAGGAGAACTACGATTATTAGAAGTAGATAACCGAGTTGTCTTACCTATAGAAATAACAATCCGAATATTAGTCTCATCAGAAGACGTACTCCACTCATGGGCCGTACCCTCCTTGGGCCTAAAAACAGATGCAATCCCAGGACGCCTAAACCAAACAACCTTAATATCAACACGACCAGGCCTATTTTATGGACAATGCTCAGAGATCTGCGGCTCAAACCACAGTTTCATACCAATTGTCCTAGAACTAGTACCCCTAGAAGTCTTTGAAAAATGATCTGTATCAATACTA---------------------TAA
+Frog      ATGGCACACCCATCACAATTAGGTTTTCAAGACGCAGCCTCTCCAATTATAGAAGAATTACTTCACTTCCACGACCATACCCTCATAGCCGTTTTTCTTATTAGTACGCTAGTTCTTTACATTATTACTATTATAATAACTACTAAACTAACTAATACAAACCTAATGGACGCACAAGAGATCGAAATAGTGTGAACTATTATACCAGCTATTAGCCTCATCATAATTGCCCTTCCATCCCTTCGTATCCTATATTTAATAGATGAAGTTAATGATCCACACTTAACAATTAAAGCAATCGGCCACCAATGATACTGAAGCTACGAATATACTAACTATGAGGATCTCTCATTTGACTCTTATATAATTCCAACTAATGACCTTACCCCTGGACAATTCCGGCTGCTAGAAGTTGATAATCGAATAGTAGTCCCAATAGAATCTCCAACCCGACTTTTAGTTACAGCCGAAGACGTCCTCCACTCGTGAGCTGTACCCTCCTTGGGTGTCAAAACAGATGCAATCCCAGGACGACTTCATCAAACATCATTTATTGCTACTCGTCCGGGAGTATTTTACGGACAATGTTCAGAAATTTGCGGAGCAAACCACAGCTTTATACCAATTGTAGTTGAAGCAGTACCGCTAACCGACTTTGAAAACTGATCTTCATCAATACTA---GAAGCATCACTA------AGA
index 6072294..a14dd75 100644 (file)
@@ -1,6 +1,6 @@
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
index 77ac6e7..f482ebe 100644 (file)
@@ -1,6 +1,6 @@
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
index c16c3d8..85fd06f 100755 (executable)
@@ -1,5 +1,5 @@
 #-------------------------------------------------------------------------------
-# Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+# Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
 # Copyright (C) 2014 The Jalview Authors
 # 
 # This file is part of Jalview.
index f4833a6..b37c65e 100644 (file)
@@ -1,6 +1,6 @@
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
diff --git a/examples/groovy/annotationForSelectedSequence.groovy b/examples/groovy/annotationForSelectedSequence.groovy
new file mode 100644 (file)
index 0000000..f071beb
--- /dev/null
@@ -0,0 +1,55 @@
+// Requested by David M Garcia (v3)
+// very messy script to output the scores in annotation rows
+// for the first sequence in a selection on the topmost alignment
+
+// thanks to this thread for cut'n'paste code
+// http://comments.gmane.org/gmane.comp.lang.groovy.user/53010
+
+// Jalview issue at http://issues.jalview.org/browse/JAL-1516
+
+import java.awt.datatransfer.StringSelection
+import static java.awt.Toolkit.*
+
+
+def curviewport = Jalview.getAlignframes()[Jalview.getAlignframes().length-1].getViewport();
+
+// TSV output by default.
+// change "\t" to "," to output CSV file
+def sep = "\t"; 
+
+if (curviewport.getSelectionGroup()) {
+  // gets selection for topmost alignment
+  def selreg = curviewport.getSelectionGroup();
+  // get aligned positions of first sequence selected
+  def gaps = selreg.getSequenceAt(0).gapMap(); 
+  String csvfile="";
+  String sseq=""
+
+  curviewport.getAlignment().getAlignmentAnnotation().eachWithIndex{ aa, apos -> 
+    def count=1
+    String csv=""
+    gaps.eachWithIndex{col,spos -> if (col>=selreg.getStartRes() && col<=selreg.getEndRes()) { 
+      // add sequence for debugging
+      if (count>sseq.length()) { 
+          sseq+=sep+selreg.getSequenceAt(0).getCharAt(col); count=sseq.length()+1;
+      };
+      // output height of histogram
+      csv+=sep;
+      def annot = aa.annotations[col];
+      if (annot != null) {
+          csv+=aa.annotations[col].value; 
+      }
+      // Uncomment to output string shown in tooltip
+      // csv+=sep+aa.annotations[col].description; 
+    }}
+    if (csv.length()>0) {
+        csvfile+=aa.label+csv+"\n"
+    }
+  }
+  defaultToolkit.systemClipboard.setContents(new StringSelection(selreg.getSequenceAt(0).getName()+sseq+"\n"+csvfile), null)
+  print "Sequence"+sseq+"\n";
+  print csvfile;
+  print "\nAlignment Annotation for first selected sequence copied to the clipboard.\n"
+} else {
+    "Select a region in the alignment window.";
+}
diff --git a/examples/groovy/sitesForSelectedColumns.groovy b/examples/groovy/sitesForSelectedColumns.groovy
new file mode 100644 (file)
index 0000000..f84bc93
--- /dev/null
@@ -0,0 +1,70 @@
+// Requested by Hari Jayaram 
+// script to output residue positions and values for selected region
+
+// thanks to this thread for cut'n'paste code
+// http://comments.gmane.org/gmane.comp.lang.groovy.user/53010
+
+// Jalview issue at http://issues.jalview.org/browse/JAL-1542
+
+import java.awt.datatransfer.StringSelection
+import static java.awt.Toolkit.*
+
+def curviewport = Jalview.getAlignframes()[Jalview.getAlignframes().length-1].getViewport()
+
+def debug = false
+
+// TSV output by default.
+// change "\t" to "," to output CSV file
+def sep = "\t"
+def gapChar = "-"
+
+if (curviewport.getSelectionGroup()) {
+  // gets selection for topmost alignment
+  def selreg = curviewport.getSelectionGroup()
+  def groupStartCol = selreg.getStartRes()
+  def groupEndCol = selreg.getEndRes()
+
+    if (debug) {println "groupStartCol: " + groupStartCol + ", groupEndCol: " + groupEndCol}
+      
+  def csv=new StringBuilder(512)
+
+  // for each sequence in the current selection
+  selreg.getSequences().eachWithIndex{ seq, seqNo ->
+    csv.append(seq.getDisplayId(false).padRight(20,' '))
+    // get map of sequence sites to alignment positions 
+    def gaps = seq.gapMap()
+    if (debug) {println "gaps: " + gaps}
+
+    // initialise loop variable to 'not quite shown first column'    
+    def lastColShown = groupStartCol-1
+    
+    for (mapPos=0 ; ; mapPos++) {
+        def nextResiduePos = gaps[mapPos]
+        // skip over sites that precede selected columns
+        if (nextResiduePos < groupStartCol) {
+            continue;
+        }
+
+        if (debug) {println "mapPos: " + mapPos + ", lastColShown: " + lastColShown + ", nextResiduePos: " + nextResiduePos + ", csv: " + csv}
+
+        // fill in any gaps
+        while (lastColShown < groupEndCol && lastColShown+1 < nextResiduePos) {
+            csv.append(sep+gapChar)
+            lastColShown++
+        }
+        if (lastColShown >= groupEndCol) {
+            break
+        }
+        lastColShown = nextResiduePos
+        def residue = seq.getDatasetSequence().getCharAt(mapPos)
+        csv.append(sep+(mapPos+1) + " (" + residue + ")")    // user output is base 1
+    }
+    csv.append("\n")      
+  }
+  def result = csv.toString()
+  defaultToolkit.systemClipboard.setContents(new StringSelection(result), null)
+  print result
+  println "Sites for selected region copied to the clipboard"
+} else {
+    "Select a region in the alignment window."
+}
index 2b8a29d..891e46e 100644 (file)
@@ -1,6 +1,6 @@
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
index c9e5d1e..7890854 100644 (file)
@@ -1,5 +1,5 @@
 /**
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
index e7e7232..4a9abfe 100644 (file)
@@ -1,6 +1,6 @@
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
index 66af563..9c88710 100644 (file)
@@ -1,6 +1,6 @@
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
index 378a895..9402c43 100644 (file)
@@ -1,6 +1,6 @@
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
index 6ec04e5..8821474 100644 (file)
@@ -1,6 +1,6 @@
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
index 02a4f10..1d2e03b 100644 (file)
@@ -1,6 +1,6 @@
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
index 15c473e..005e29a 100644 (file)
@@ -1,6 +1,6 @@
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
index b34e195..1ed627b 100644 (file)
@@ -1,6 +1,6 @@
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
index e605c1a..78a1366 100644 (file)
@@ -1,6 +1,6 @@
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
index c56ee9f..064d6bc 100755 (executable)
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="ISO-8859-1" ?>\r
 <!--\r
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)\r
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)\r
  * Copyright (C) 2014 The Jalview Authors\r
  * \r
  * This file is part of Jalview.\r
index 20f3c88..b199dbf 100755 (executable)
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="ISO-8859-1" ?>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
index 626a244..48a2b2a 100755 (executable)
@@ -1,20 +1,22 @@
 <?xml version="1.0" encoding="ISO-8859-1"  ?>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
 -->
 <!DOCTYPE toc PUBLIC "-//Sun Microsystems Inc.//DTD JavaHelp TOC Version 1.0//EN" "http://java.sun.com/products/javahelp/toc_1_0.dtd">
index aa619e6..bc42278 100644 (file)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head><title>Alignment Consensus Annotation</title></head>
 <body>
 <p><strong>Alignment Consensus Annotation</strong></p>
@@ -35,7 +37,7 @@ clipboard.
 <p><strong>Sequence logo</strong></p>
        By clicking on the label you can also activate the sequence logo. It
        indicates the relative amount of residues per column which can be
-       estimated by it's size in the logo. The tooltip of a column gives the
+       estimated by its size in the logo. The tooltip of a column gives the
        exact numbers for all occuring residues.
        <br />If columns of the alignment are very diverse, then it can
        sometimes be difficult to see the sequence logo - in this case, right
index e67c1fa..d38924a 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head><title>Alignment Conservation Annotation</title></head>
 <body><p><strong>Alignment Conservation Annotation</strong></p>
 <p>This is an automatically calculated quantitative alignment
index 52afe7c..2891f1e 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head><title>Pairwise Alignment</title></head>
 <body>
 <p><strong>Pairwise alignment (Proteins only)</strong></p>
index ba9dc30..8d6f329 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>Principal Component Analysis</title>
 </head>
index dc27e97..cab1ea8 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head><title>Alignment Quality Annotation</title></head>
 <body>
 <p><strong>Alignment Quality Annotation</strong></p>
index 7a40a44..28d40c9 100644 (file)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head><title>Viewing Input Data to PCA and Tree calculations</title></head>
 <body>
 
index 2dcc475..ccc8457 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>Removing Redundancy</title>
 </head>
index 57f3afe..5c4a498 100644 (file)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>Substitution matrices in Jalview</title>
 </head>
index bf60b88..d12a518 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>Sorting Sequences</title>
 </head>
index af316ed..6e797b1 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head><title>Alignment RNA Structure Consensus Annotation</title></head>
 <body><p><strong>Alignment RNA Structure Consensus Annotation</strong></p>
 
@@ -38,7 +40,7 @@ similar to a sequence logo but counts the numbers of base pairs. There
 are two residues per column, the actual column and the interacting
 base. The opening bracket is always the one on the left side.<br>
 Like sequence logos the relative amount of a specific base pair can be
-estimated by it's size in the logo. The tool tip of a column gives the
+estimated by its size in the logo. The tool tip of a column gives the
 exact numbers for all occurring valid base pairs.
 </p>
 </body>
index 11b79ae..a01c7be 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head><title>Tree Calculation</title></head>
 <body>
 <p><strong>Calculation of trees from alignments</strong></p>
index 2f03d65..0205ddd 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>The Tree Viewing Window</title>
 </head>
index 30b9846..74dd665 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head><title>Above PID Colours</title>
 <style type="text/css">
 <!--
@@ -28,7 +30,7 @@ td {
 </head>
 
 <body>
-<p> <em>Colouring above a percentage identity threshold</em></p>
+<p> <strong>Colouring above a percentage identity threshold</strong></p>
 <p> Selecting this option causes the colour scheme to be applied to only those
   residues that occur in that column more than a certain percentage of the time.
   For instance selecting the threshold to be 100 will only colour those columns
index ba9cbdd..75d9f55 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>Annotation Colouring</title>
 </head>
index fdc3f19..338ca55 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head><title>Blosum Colour Scheme</title>
 <style type="text/css">
 <!--
@@ -29,7 +31,7 @@ td {
 
 <body>
 
-<p><em>Blosum62</a></em> </p>
+<p><strong>Blosum62</a></strong> </p>
 <p>Gaps are coloured white. If a residue matches the consensus sequence residue
   at that position it is coloured dark blue. If it does not match the consensus
   residue but the 2 residues have a positive Blosum62 score, it is coloured light
index 640b753..5943d36 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head><title>Buried Colour Scheme</title>
 <style type="text/css">
 <!--
@@ -28,7 +30,7 @@ td {
 </head>
 
 <body>
-<p><em>Buried index</em></p>
+<p><strong>Buried index</strong></p>
 <div align="center">
   <table width="400" border="1">
     <tr>
index 1737280..33455dc 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head><title>Clustal Colour Scheme</title>
 <style type="text/css">
 <!--
@@ -28,7 +30,7 @@ td {
 </head>
 
 <body>
-<p><em>Clustal X Colour Scheme</em></p>
+<p><strong>Clustal X Colour Scheme</strong></p>
   <p>This is an emulation of the default colourscheme used for alignments in 
   Clustal X, a graphical interface for the ClustalW multiple sequence alignment
     program. Each residue in the alignment is assigned a colour if the 
index 1b3d93a..5ceba85 100755 (executable)
@@ -1,25 +1,27 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head><title>Colouring by Conservation</title></head>
 <body>
-<p><em>Colouring by Conservation</em></p>
+<p><strong>Colouring by Conservation</strong></p>
 <p>This is an approach to alignment colouring which highlights
   regions of an alignment where physicochemical properties are
   conserved. It is based on the one used in
index 1f1e1b8..8c698c0 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head><title>Helix Colour Scheme</title>
 <style type="text/css">
 <!--
@@ -28,7 +30,7 @@ td {
 </head>
 
 <body>
-<p><em>Helix Propensity</em> </p>
+<p><strong>Helix Propensity</strong> </p>
 <div align="center">
   <table width="400" border="1">
     <tr>
index dd5a334..6b4cf2d 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head><title>Hydrophobic Colour Scheme</title>
 <style type="text/css">
 <!--
@@ -28,7 +30,7 @@ td {
 </head>
 
 <body>
-<p><em>Hydrophobicity</em></p>
+<p><strong>Hydrophobicity</strong></p>
 <p>According to the hydrophobicity table of Kyte, J., and Doolittle, R.F., J.
   Mol. Biol. 1157, 105-132, 1982. The most hydrophobic residues according to this
   table are coloured red and the most hydrophilic ones are coloured blue.</p>
index b344330..450e1aa 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>Colour Schemes</title>
 <style type="text/css">
index 90e40ef..065c818 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head><title>Nucleotide Colour Scheme</title>
 <style type="text/css">
 <!--
@@ -28,7 +30,7 @@ td {
 </head>
 
 <body>
-<p><em>Nucleotide Colours</em></p>
+<p><strong>Nucleotide Colours</strong></p>
 <div align="center">
   <table width="200" border="1">
     <tr>
index 0839749..47b992a 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head><title>Percentage Identity Colour Scheme</title>
 <style type="text/css">
 <!--
@@ -28,7 +30,7 @@ td {
 </head>
 
 <body>
-<p><em>PID Colours</em><br>
+<p><strong>PID Colours</strong><br>
   <br>
   The PID option colours the residues (boxes and/or text) according to the percentage
   of the residues in each column that agree with the consensus sequence. Only
index 2438416..4337d48 100644 (file)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head><title>Purine/Pyrimidine Colour Scheme</title>
 <style type="text/css">
 <!--
@@ -28,7 +30,7 @@ td {
 </head>
 
 <body>
-<p><em>Purine/Pyrimidine Colours</em></p>
+<p><strong>Purine/Pyrimidine Colours</strong></p>
 <div align="center">
   <table width="200" border="1">
     <tr>
index daca474..d9f6be3 100644 (file)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head><title>RNA Helices Colouring</title></head>
 
 <body>
index 58f242e..fe7c469 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head><title>Strand Colour Scheme</title>
 <style type="text/css">
 <!--
@@ -28,7 +30,7 @@ td {
 </head>
 
 <body>
-<p><em>Strand propensity</em></p>
+<p><strong>Strand propensity</strong></p>
 <div align="center">
   <table width="400" border="1">
     <tr>
index 6ff5c7f..a5c4f05 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head><title>Taylor Colour Scheme</title>
 <style type="text/css">
 <!--
@@ -28,7 +30,7 @@ td {
 </head>
 
 <body>
-<p><em><a name="taylor">Taylor</a></em></p>
+<p><strong><a name="taylor">Taylor</a></strong></p>
 <p>These colours were invented by Willie Taylor and an entertaining description
   of their birth can be found in Protein Engineering, Vol 10 , 743-746 (1997)</p>
 <div align="center">
index 597f618..a983e14 100644 (file)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 Background Dependent Text Colour
 </head>
index 2860bc8..87dbe37 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head><title>Turn Colour Scheme</title>
 <style type="text/css">
 <!--
@@ -28,7 +30,7 @@ td {
 </head>
 
 <body>
-<p><em>Turn propensity</em></p>
+<p><strong>Turn propensity</strong></p>
 <div align="center">
   <table width="400" border="1">
     <tr>
index 015fbe5..5eacca9 100755 (executable)
@@ -1,40 +1,51 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head><title>User Defined Colours</title></head>
 <body>
-<p><em>User Defined Colours</em></p>
-<p><img src="userDefined.gif" width="719" height="368"> </p>
+<p><strong>User Defined Colours</strong></p>
+<p><img src="userDefined_java6.gif" width="815" height="402"> </p>
 <p>You may define any number of new colour schemes, each with a unique name. <br>
   <br>
-  Each of the residues in a new colour scheme may be assigned a new user defined 
-  colour. <br>
-  <br>
-  Click &quot;Apply&quot; or &quot;OK&quot; to set your new colours on the active 
-  alignment window. </p>
-<p>Click &quot;Cancel&quot; to undo your changes if you pressed the &quot;Apply&quot; 
-  button. <br>
-  <br>
-  If you save your colour scheme with a unique name the colour scheme name will 
-  be added to the &quot;Colour&quot; menu on each new alignment window.<br>
+  Each of the residues in a colour scheme may be assigned any chosen colour. <br>
+  Select one or more residues, then select the desired colour.<br/>
+  Use Ctrl-click to select multiple residues, or click then Shift-click to select a block.<br/>
+  Note that the currently selected buttons are highlighted by a lighter text colour.
+  <p>
+  The <strong>Case Sensitive</strong> option allows you to choose distinct colours for upper and
+  lower case residue codes.
+  <p>
+  Click <strong>Apply</strong> or <strong>OK</strong> to set your new colours on the active 
+  alignment window.<br/>
+   Click <strong>Cancel</strong> to undo your changes if you pressed the <strong>Apply</strong> 
+  button.
+  </p>
+  If you save your colour scheme with a unique name, the colour scheme name will 
+  be added to the <strong>Colour</strong> menu on each new alignment window.<br>
   <br>
   Any saved colour schemes will be automatically loaded the next time you use 
-  Jalview.</p>
+  Jalview.
+  <br><br>
+  <em>Note: the screenshot shows the appearance when running Java version 6. For Java 7 (from Jalview 2.8.2) only the Swatches colour chooser is
+  currently supported (for reasons of available screen space).</em>
+  <p/>
 </body>
 </html>
diff --git a/help/html/colourSchemes/userDefined_java6.gif b/help/html/colourSchemes/userDefined_java6.gif
new file mode 100644 (file)
index 0000000..d737e80
Binary files /dev/null and b/help/html/colourSchemes/userDefined_java6.gif differ
diff --git a/help/html/colourSchemes/userDefined_java7.gif b/help/html/colourSchemes/userDefined_java7.gif
new file mode 100644 (file)
index 0000000..f0ced11
Binary files /dev/null and b/help/html/colourSchemes/userDefined_java7.gif differ
index 362d98c..db025c0 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head><title>Zappo Colour Scheme</title>
 <style type="text/css">
 <!--
@@ -28,7 +30,7 @@ td {
 </head>
 
 <body>
-<p><em>Zappo Colours</em><br>
+<p><strong>Zappo Colours</strong><br>
   <br>
   The residues are coloured according to their physicochemical properties as
   follows: </p>
index eddea18..ac07168 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head><title>Editing</title></head>
 <body>
 <p><strong>Editing</strong></p>
index 0da3a88..8e9bcdf 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head><title>Alignment Annotation</title></head>
 <body>
 <p><strong>Alignment Annotation</strong></p>
index a0a6dae..41d2b69 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>The Alignment Annotations File</title>
 </head>
index ac44c46..b9ef30d 100644 (file)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <title>Jalview Command Line Arguments
 </title>
 <body>
index 7b15ef6..a436780 100644 (file)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>DNA Sequence Coding Region Definition</title>
 </head>
index da47ca5..6d24c0c 100644 (file)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head><title>Running Jalview from the command line</title></head>
 <body>
  <p><strong>Running Jalview from the command line</strong></p>
index ad9cdc2..e7e8a8e 100644 (file)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>Creating Sequence Features</title>
 </head>
index 34fe0e1..936016f 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>Cursor Mode</title>
 </head>
index 7e2e7e2..0690111 100644 (file)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>DAS Features</title>
 </head>
index 45d150e..9676ed7 100644 (file)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>DAS Settings</title>
 </head>
index 2856e70..6f229df 100644 (file)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>Amending or Deleting Sequence Features</title>
 </head>
index d1337eb..8665e66 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <meta name="generator" content="HTML Tidy, see www.w3.org">
 <title>Sequence Features File</title>
index 64a4c53..6b14021 100644 (file)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>Sequence feature colour schemes</title>
 </head>
index 4e16c1b..63217ee 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>Sequence Feature Settings Dialog Box</title>
 </head>
index d4b9f7f..6559fd1 100644 (file)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>Groovy Shell</title>
 </head>
@@ -42,7 +44,7 @@
                The jars are obtained from the <em>embedded</em> directory within the
                <a href="http://dist.codehaus.org/groovy/distributions">groovy
                        distribution</a>. The easiest way of adding them to the Jalview classpath
-               is to download and build jalview from it's source distribution, and
+               is to download and build jalview from its source distribution, and
                then add the groovy-all-*.jar to the lib directory whose path is given
                in the java.ext.dirs property.
        </p>
index 540a961..9b85cf9 100644 (file)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>Hidden Regions</title>
 </head>
index f820523..472114a 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>Jalview Archives</title>
 </head>
index 21241d3..5102679 100644 (file)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>The Jmol PDB Viewer</title>
 </head>
index f726507..209aba4 100644 (file)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>Multiple Alignment Views</title>
 </head>
index f17c278..d4c532e 100644 (file)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <title>New Key Strokes and Menus</title>
 <body>
 <strong>New Key Strokes and Menus</strong>
index 7d05848..50d45f2 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head><title>Overview Window</title></head>
 <body>
 <p><strong>View&#8594;Overview window</strong></p>
index bfed174..8deebae 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>PDB Viewer</title>
 </head>
index 259b0f4..e57289f 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>Preferences</title>
 </head>
index 6845be9..47c0a3b 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head><title>Search</title>
 <style type="text/css">
 <!--
index 0b14348..842c93a 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>Sequence Features</title>
 </head>
index 212605e..6f4363b 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>Sequence Fetcher</title>
 </head>
index 157a591..3731ad1 100644 (file)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>Mapping Between Different Sequences</title>
 </head>
index 5b7fed1..ffc582b 100644 (file)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>The VARNA RNA Viewer</title>
 </head>
index c2143a3..1f49498 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>PDB Viewing</title>
 </head>
index 4835317..883a024 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head><title>Wrap Alignment</title></head>
 
 <body>
index ae12479..3a45fc8 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head><title>Jalview Documentation</title></head>
 
 <body>
index a452615..b08fff7 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>Exporting alignments as artwork</title>
 </head>
index 837164b..b1afc3b 100644 (file)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>Viewing and exporting sequence annotation reports</title>
 </head>
index 6138203..35fe675 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>Alignment Fileformats</title>
 <style type="text/css">
index d803fb0..0a4c7fa 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>Input/Output</title>
 </head>
index 56d0cfc..3e00831 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>Modeller PIR Format IO</title>
 </head>
index 9a507c8..23a167c 100644 (file)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>T-COFFEE Annotation Scores</title>
 </head>
index 191f6b1..8f32a2b 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>Jalview local Jnlp File</title>
 </head>
index 9bc7095..545f08d 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head><title>Key Strokes</title></head>
 <body>
 <p><strong>Key Strokes</strong></p>
index eec75d3..3ef4d77 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head><title>Memory Settings</title></head>
 <body>
 <h2>
index fdaa023..f219269 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>Alignment Window Menus</title>
 </head>
index 3a1afc3..4b89049 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>Annotation Panel Menus</title>
 </head>
index 93652af..1f0474a 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>Alignment Window Menus</title>
 </head>
index 3e93057..2ad79d5 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head><title>Alignment Window Menus</title></head>
 
 <body>
index e5ae321..e44f3ac 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>Alignment Window Menus</title>
 </head>
index bc6c9b1..563d716 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>Alignment Window Menus</title>
 </head>
index 0bdbe91..d0a46a0 100644 (file)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <p><strong>Alignment Window Format Menu</strong></p>
 <ul>
index 9738e47..c40cf09 100644 (file)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head><body>
 <p><strong>Alignment Window Select Menu</strong></p>
 <ul>
index 4248f9a..3d2d3be 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>Alignment Window Menus</title>
 </head>
index 59b521a..153a79a 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>Desktop Menus</title>
 </head>
index ce4825d..2b51b18 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>Jalview's Menus</title>
 </head>
index 2be6000..e28c7e1 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>Popup Menu</title>
 </head>
index 0e050b1..9b8d66c 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head><title>Web Service Menu</title></head>
 
 <body>
index e6a2199..d65ca4d 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head><title>Amino Acid Properties</title>
 </head>
 <body><div align="center">
index 14650eb..5d93f95 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head><title>Amino Acids</title>
 <style type="text/css">
 <!--
index 1ca1026..5695dc4 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head><title>Genetic Code</title>
 <style type="text/css">
 <!--
index 366e357..f3c4a56 100644 (file)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>Nucleic Acid Support</title>
 <style type="text/css">
index f86b6a6..be5cf56 100644 (file)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>Jalview Privacy Statement</title>
 </head>
index 69b009e..6b92a2c 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>Release History</title>
 </head>
index f2794b6..b34289c 100644 (file)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>VAMSAS Interoperation</title>
 </head>
index 8652e0f..9653e2c 100644 (file)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>AACon Web Service</title>
 </head>
index 467f8d7..a27a0d5 100644 (file)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>The JABAWS system</title>
 </head>
index 9428dc3..55fe70c 100644 (file)
@@ -1,3 +1,23 @@
+<!--
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ -->
 <!DOCTYPE html>
 <html>
 <head>
@@ -63,4 +83,4 @@
        </div>
        <p>
 </body>
-</html>
\ No newline at end of file
+</html>
index 90bd87d..ad42153 100644 (file)
@@ -1,21 +1,23 @@
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <!DOCTYPE html SYSTEM "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
@@ -43,7 +45,7 @@ of ID queries from the ID string of each sequence in the alignment. It
 then tries to query a subset of all the databases it can access in order to match
 the alignment sequence to any records retrieved from the database. If a
 match is found, then the sequence is annotated with that database's
-reference, and any cross-references that it's records contain.</p>
+reference, and any cross-references that its records contain.</p>
 <p><strong>The Sequence Identification Process</strong><br>
 The method of accession id discovery is derived from the method which
 earlier Jalview versions used for Uniprot sequence feature retrieval,
index efbe3b1..29c74a9 100755 (executable)
@@ -1,21 +1,23 @@
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <html>
 <head>
 <title>Web Services</title>
index 70c57ea..9a7acd9 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>JNet Secondary Structure Prediction</title>
 </head>
index 775eec8..d1bedcb 100644 (file)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>Multiple Sequence Alignment Web Service</title>
 </head>
index 953e121..79709fd 100644 (file)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>Jalview Desktop RSS News Reader
 </head>
 <body>
index 254dd5a..c267269 100644 (file)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>JABAWS Protein Disorder Prediction Services</title>
 </head>
index ad12579..5d67f8a 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>Multi-Group Sequence Harmony and Multi-Relief</title>
 </head>
index ef77c7e..c9d9832 100644 (file)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 Opening URLs from Jalview
 </head>
index 690fb0f..ba4a161 100644 (file)
@@ -1,21 +1,23 @@
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <html>
 <head>
 <title>Web Service Job Parameter Dialog Box</title>
index 8ef6e5d..c00b7f0 100644 (file)
@@ -1,21 +1,23 @@
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <html>
 <head>
 <title>The Web Services Preferences Dialog Box</title>
index 3ee8534..dd536b1 100755 (executable)
@@ -1,22 +1,24 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
+ -->
 <head>
 <title>What's new ?</title>
 </head>
index e9c493c..6260057 100755 (executable)
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
diff --git a/lib/VARNAv3-9-dev.jar b/lib/VARNAv3-9-dev.jar
deleted file mode 100644 (file)
index 6ae57bf..0000000
Binary files a/lib/VARNAv3-9-dev.jar and /dev/null differ
diff --git a/lib/VARNAv3-9.jar b/lib/VARNAv3-9.jar
new file mode 100644 (file)
index 0000000..86ac411
Binary files /dev/null and b/lib/VARNAv3-9.jar differ
diff --git a/lib/json_simple-1.1.jar b/lib/json_simple-1.1.jar
new file mode 100644 (file)
index 0000000..f395f41
Binary files /dev/null and b/lib/json_simple-1.1.jar differ
diff --git a/lib/log4j-1.2.8.jar b/lib/log4j-1.2.8.jar
deleted file mode 100755 (executable)
index 05f8702..0000000
Binary files a/lib/log4j-1.2.8.jar and /dev/null differ
diff --git a/lib/log4j-to-slf4j-2.0-rc2.jar b/lib/log4j-to-slf4j-2.0-rc2.jar
new file mode 100644 (file)
index 0000000..4bbf54a
Binary files /dev/null and b/lib/log4j-to-slf4j-2.0-rc2.jar differ
diff --git a/lib/slf4j-api-1.7.7.jar b/lib/slf4j-api-1.7.7.jar
new file mode 100644 (file)
index 0000000..b28e220
Binary files /dev/null and b/lib/slf4j-api-1.7.7.jar differ
diff --git a/lib/slf4j-log4j12-1.7.7.jar b/lib/slf4j-log4j12-1.7.7.jar
new file mode 100644 (file)
index 0000000..12c804e
Binary files /dev/null and b/lib/slf4j-log4j12-1.7.7.jar differ
index 95674ff..1fbf3c9 100644 (file)
@@ -1,5 +1,5 @@
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
index 8bee743..b505d62 100644 (file)
@@ -71,7 +71,7 @@ file.reference.wsdl4j.jar=lib/wsdl4j.jar
 file.reference.xercesImpl.jar=lib/xercesImpl.jar
 file.reference.xml-apis.jar=lib/xml-apis.jar
 file.reference.miglayout-4.0-swing.jar=lib/miglayout-4.0-swing.jar
-file.reference.varna-3.9-dev.jar=lib/VARNAv3.9-dev.jar
+file.reference.varna-3.9-dev.jar=lib/VARNAv3.9.jar
 includes=**
 jar.compress=false
 javac.classpath=\
index ac09730..6c49988 100644 (file)
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
index 9582239..e57ce3e 100644 (file)
@@ -1,4 +1,4 @@
 YEAR=2014
-AUTHORS=J Procter, AM Waterhouse, J Engelhardt, LM Lui, D Barton, N Sherstnev, D Roldan-Martinez, M Clamp, S Searle, G Barton
-AUTHORFNAMES=Jim Procter, Andrew Waterhouse, Jan Engelhardt, Lauren Lui, Daniel Barton, Natasha Sherstnev, David Roldan-Martinez, Michele Clamp, James Cuff, Steve Searle, David Martin & Geoff Barton
+AUTHORS=J Procter, AM Waterhouse, J Engelhardt, LM Lui, A Menard, D Barton, N Sherstnev, D Roldan-Martinez, M Clamp, S Searle, G Barton
+AUTHORFNAMES=Jim Procter, Andrew Waterhouse, Jan Engelhardt, Lauren Lui, Anne Menard, Daniel Barton, Natasha Sherstnev, David Roldan-Martinez, Michele Clamp, James Cuff, Steve Searle, David Martin & Geoff Barton
  
\ No newline at end of file
index 1b38efb..b6aae2c 100644 (file)
@@ -1,6 +1,6 @@
 <?xml version="1.0"?>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
index 6736791..0a7a0d7 100644 (file)
@@ -58,7 +58,7 @@ action.by_id = by Id
 action.by_length = by Length\r
 action.by_group = by Group\r
 action.remove = Remove\r
-action.remove_redundancy = Remove Redundancy...\r
+action.remove_redundancy = Remove Redundancy\r
 action.pairwise_alignment = Pairwise Alignments...\r
 action.by_rna_helixes = by RNA Helices\r
 action.user_defined = User Defined...\r
@@ -128,11 +128,10 @@ action.deselect_all = Deselect all
 action.invert_selection = Invert selection\r
 action.using_jmol = Using Jmol\r
 action.link = Link\r
-action.group_link = Group Links\r
+action.group_link = Group Link\r
 action.show_chain = Show Chain\r
 action.show_group = Show Group\r
 action.fetch_db_references = Fetch DB References\r
-action.edit = Edit\r
 action.view_flanking_regions = Show flanking regions\r
 label.view_flanking_regions = Show sequence data either side of the subsequences involved in this alignment\r
 label.str = Str:\r
@@ -309,7 +308,7 @@ label.to_file = to File
 label.to_textbox = to Textbox\r
 label.jalview = Jalview\r
 label.csv_spreadsheet = CSV (Spreadsheet)\r
-label.status =  [Status]\r
+label.status = Status\r
 label.channels = Channels\r
 label.channel_title_item_count = {0} ({1})\r
 label.blog_item_published_on_date = {0} {1} \r
@@ -366,7 +365,7 @@ label.enter_label = Enter label
 label.enter_label_for_the_structure = Enter a label for the structure?\r
 label.pdb_entry_is_already_displayed = {0} is already displayed.\nDo you want to re-use this viewer ?\r
 label.map_sequences_to_visible_window = Map Sequences to Visible Window: {0}\r
-label.add_pdbentry_to_view = Do you want to add {0} to the view called\n'{1}'\n\r
+label.add_pdbentry_to_view = Do you want to add {0} to the view called\n{1}\n\r
 label.align_to_existing_structure_view = Align to existing structure view\r
 label.pdb_entries_couldnt_be_retrieved = The following pdb entries could not be retrieved from the PDB\:\n{0}\nPlease try downloading them manually.\r
 label.couldnt_load_file = Couldn't load file\r
@@ -379,7 +378,7 @@ label.you_can_only_edit_or_remove_local_das_sources = You can only edit or remov
 label.public_das_source = Public DAS source - not editable\r
 label.input_alignment_from_url = Input Alignment From URL\r
 label.input_alignment = Input Alignment\r
-label.couldnt_import_as_vamsas_session = Couldn't import '{0}' as a new vamsas session.\r
+label.couldnt_import_as_vamsas_session = Couldn't import {0} as a new vamsas session.\r
 label.vamsas_document_import_failed = Vamsas Document Import Failed\r
 label.couldnt_locate = Couldn't locate {0}\r
 label.url_not_found = URL not found\r
@@ -456,8 +455,8 @@ label.settings_for_type = Settings for {0}
 label.view_full_application = View in Full Application\r
 label.load_associated_tree = Load Associated Tree ...\r
 label.load_features_annotations = Load Features/Annotations ...\r
-label.export_features = Export Features ...\r
-label.export_annotations = Export Annotations ...\r
+label.export_features = Export Features\r
+label.export_annotations = Export Annotations\r
 label.jalview_copy = Copy (Jalview Only)\r
 label.jalview_cut = Cut (Jalview Only)\r
 label.to_upper_case = To Upper Case\r
@@ -496,7 +495,7 @@ label.select_colour_maximum_value = Select Colour for Maximum Value
 label.open_new_jmol_view_with_all_structures_associated_current_selection_superimpose_using_alignment = Open a new Jmol view with all structures associated with the current selection and superimpose them using the alignment.\r
 label.open_url_param = Open URL {0}\r
 label.open_url_seqs_param = Open URL ({0}..) ({1} seqs)\r
-label.load_pdb_file_associate_with_sequence = Load a PDB file and associate it with sequence '{0}'\r
+label.load_pdb_file_associate_with_sequence = Load a PDB file and associate it with sequence {0}\r
 label.reveal_hidden_columns = Reveal Hidden Columns with Right Mouse Button\r
 label.dark_colour = Dark Colour\r
 label.light_colour = Light Colour\r
@@ -532,6 +531,7 @@ label.collect_garbage = Collect Garbage
 label.show_memory_usage = Show Memory Usage\r
 label.show_java_console = Show Java Console\r
 label.show_jalview_news = Show Jalview News\r
+label.take_snapshot = Take snapshot\r
 label.monospaced_fonts_faster_to_render = Monospaced fonts are faster to render\r
 label.anti_alias_fonts = Anti-alias Fonts (Slower to render)\r
 label.monospaced_font= Monospaced\r
@@ -728,13 +728,408 @@ label.invalid_font = Invalid Font
 label.separate_multiple_accession_ids = Separate multiple accession ids with semi colon ";"\r
 label.replace_commas_semicolons = Replace commas with semi-colons\r
 label.parsing_failed_syntax_errors_shown_below_param = Parsing failed. Syntax errors shown below {0}\r
-label.parsing_failed_unrecoverable_exception_thrown_param = \nParsing failed. An unrecoverable exception was thrown:\n {0}\r
+label.parsing_failed_unrecoverable_exception_thrown_param = \nParsing failed. An unrecoverable exception was thrown\:\n {0}\r
 label.example_query_param = Example query: {0}\r
 label.enter_value_increase_conservation_visibility = Enter value to increase conservation visibility\r
 label.enter_percentage_identity_above_which_colour_residues = Enter % identity above which to colour residues\r
-label.wswublast_client_credits = To display sequence features an exact Uniprot id with 100% sequence identity match must be entered.\nIn order to display these features, try changing the names of your sequences to the ids suggested below.\n\nRunning WSWUBlast at EBI.\nPlease quote Pillai S., Silventoinen V., Kallio K., Senger M., Sobhany S., Tate J., Velankar S., Golovin A., Henrick K., Rice P., Stoehr P., Lopez R.\nSOAP-based services provided by the European Bioinformatics Institute.\nNucleic Acids Res. 33(1):W25-W28 (2005));\r
+label.wswublast_client_credits = To display sequence features an exact Uniprot id with 100% sequence identity match must be entered.\nIn order to display these features, try changing the names of your sequences to the ids suggested below.\n\nRunning WSWUBlast at EBI.\nPlease quote Pillai S., Silventoinen V., Kallio K., Senger M., Sobhany S., Tate J., Velankar S., Golovin A., Henrick K., Rice P., Stoehr P., Lopez R.\nSOAP-based services provided by the European Bioinformatics Institute.\nNucleic Acids Res. 33(1)\:W25-W28 (2005));\r
 label.blasting_for_unidentified_sequence = BLASTing for unidentified sequences
 label.select_columns_containing = Select columns containing\r
 label.select_columns_not_containing = Select columns that do not contain\r
 option.trim_retrieved_seqs = Trim retrieved sequences\r
 label.trim_retrieved_sequences = When the reference sequence is longer than the sequence that you are working with, only keep the relevant subsequences.\r
+label.use_sequence_id_1 = Use $SEQUENCE_ID$ or $SEQUENCE_ID=/<regex>/=$\r
+label.use_sequence_id_2 = \nto embed sequence id in URL\r
+label.ws_parameters_for = Parameters for {0}\r
+label.switch_server = Switch server\r
+label.open_jabaws_web_page = Opens the JABAWS server's homepage in web browser\r
+label.choose_jabaws_server = Choose a server for running this service\r
+label.services_at = Services at {0}\r
+label.rest_client_submit = {0} using {1}\r
+label.fetch_retrieve_from =Retrieve from {0}</html>\r
+label.fetch_retrieve_from_all_sources = Retrieve from all {0} sources in {1}<br>First is :{2}<html> \r
+label.feature_settings_click_drag = <html>Click/drag feature types up or down to change render order.<br/>Double click to select columns containing feature in alignment/current selection<br/>Pressing Alt will select columns outside features rather than inside<br/>Pressing Shift to modify current selection (rather than clear current selection)<br/>Press CTRL or Command/Meta to toggle columns in/outside features<br/></html>\r
+label.opt_and_params_further_details = see further details by right-clicking\r
+label.opt_and_params_show_brief_desc_image_link = <html>Click to show brief description<br><img src="{0}"/> Right click for further information.</html> \r
+label.opt_and_params_show_brief_desc = <html>Click to show brief description<br></html>\r
+label.adjusts_width_generated_eps_png = <html>Adjusts the width of the generated EPS or PNG file to ensure even the longest sequence ID or annotation label is displayed</html>\r
+label.manually_specify_width_left_column = <html>Manually specify the width of the left hand column where sequence IDs and annotation labels will be rendered in exported alignment figures. This setting will be ignored if 'Automatically set ID width' is set</html>\r
+label.job_created_when_checked = <html>When checked, a job is created for every sequence in the current selection.</html>\r
+label.when_checked_job_visible_region_and_results = <html>When checked, a single job is created for the visible region and results mapped back onto their location in the alignment. Otherwise, a job would be created for every contiguous region visible in the alignment or current selection (e.g. a multiple alignment).</html>\r
+label.flat_file_representation = <html>Flat file representation of this rest service using the Really Simple Bioinformatics Service formalism</html>\r
+label.result_of_parsing_rsbs = <html>Results of parsing the RSBS representation</html>\r
+label.user_preset = User Preset\r
+label.service_preset = Service Preset\r
+label.run_with_preset = Run {0} with preset\r
+label.view_service_doc_url = <html>View <a href="{0}">{1}</a></html>\r
+label.submit_sequence = <html>Submit {0} {1} {2} {3} to<br/>{4}</html>\r
+action.by_title_param = by {0}\r
+label.alignment = Alignment\r
+label.secondary_structure_prediction = Secondary Structure Prediction\r
+label.sequence_database_search = Sequence Database Search\r
+label.analysis = Analysis\r
+label.protein_disorder = Protein Disorder \r
+label.source_from_db_source = Sources from {0}\r
+label.from_msname = from {0}\r
+label.superpose_with = Superpose with ...\r
+action.do = Do\r
+label.scale_label_to_column = Scale Label to Column\r
+label.add_new_row = Add New Row\r
+label.edit_label_description = Edit Label/Description\r
+label.hide_row = Hide This Row\r
+label.delete_row = Delete This Row\r
+label.show_all_hidden_rows = Show All Hidden Rows\r
+label.export_annotation = Export Annotation\r
+label.copy_consensus_sequence = Copy Consensus Sequence\r
+label.helix = Helix\r
+label.sheet = Sheet\r
+label.rna_helix = RNA Helix\r
+label.remove_annotation = Remove Annotation\r
+label.colour_by = Colour by...\r
+label.muscle_multiple_protein_sequence_alignment = Muscle Multiple Protein Sequence Alignment\r
+label.mafft_multiple_sequence_alignment = MAFFT Multiple Sequence Alignment\r
+label.clustalw_multiple_sequence_alignment = ClustalW Multiple Sequence Alignment\r
+label.jnet_secondary_structure_prediction = JNet Secondary Structure Prediction\r
+label.multiharmony = Multi-Harmony\r
+label.unable_start_web_service_analysis = Unable to start web service analysis\r
+label.job_couldnt_be_started_check_input = The Job couldn't be started. Please check your input, and the Jalview console for any warning messages.\r
+label.prompt_each_time = Prompt each time\r
+label.use_source = Use Source\r
+label.couldnt_save_project = Couldn't save project\r
+label.error_whilst_saving_current_state_to = Error whilst saving current state to {0}\r
+label.error_whilst_loading_project_from = Error whilst loading project from {0}\r
+label.couldnt_load_project = Couldn't load project\r
+label.pca_sequences_not_aligned = The sequences must be aligned before calculating PCA.\nTry using the Pad function in the edit menu,\nor one of the multiple sequence alignment web services.\r
+label.invalid_name_preset_exists = Invalid name - preset already exists.\r
+label.invalid_name = Invalid name\r
+label.set_proxy_settings = Please set up your proxy settings in the 'Connections' tab of the Preferences window\r
+label.proxy_authorization_failed = Proxy Authorization Failed\r
+label.internal_jalview_error = Internal Jalview Error\r
+label.secondary_structure_prediction_service_couldnt_be_located = The Secondary Structure Prediction Service named {0} at {1} couldn't be located.\r
+label.service_called_is_not_msa_service = The Service called \n{0}\nis not a \nMultiple Sequence Alignment Service\!\r
+label.msa_service_is_unknown = The Multiple Sequence Alignment Service named {0} is unknown\r
+label.service_called_is_not_seq_search_service = The Service called \n{0}\nis not a \nSequence Search Service\!\r
+label.seq_search_service_is_unknown = The Sequence Search Service named {0} is unknown\r
+label.feature_type = Feature Type\r
+label.display = Display\r
+label.service_url = Service URL\r
+label.copied_sequences = Copied sequences\r
+label.cut_sequences = Cut Sequences\r
+label.conservation_colour_increment = Conservation Colour Increment ({0})\r
+label.percentage_identity_thereshold = Percentage Identity Thereshold ({0})\r
+label.error_unsupported_owwner_user_colour_scheme = Unsupported owner for User Colour scheme dialog\r
+label.save_alignment_to_file = Save Alignment to file\r
+label.save_features_to_file = Save Features to File\r
+label.save_annotation_to_file = Save Annotation to File\r
+label.no_features_on_alignment = No features found on alignment\r
+label.save_pdb_file = Save PDB File\r
+label.save_text_to_file = Save Text to File\r
+label.save_state = Save State\r
+label.restore_state = Restore State\r
+label.saving_jalview_project = Saving jalview project {0}\r
+label.loading_jalview_project = Loading jalview project {0}\r
+label.save_vamsas_document_archive = Save Vamsas Document Archive\r
+label.saving_vamsas_doc = Saving VAMSAS Document to {0}\r
+label.load_feature_colours = Load Feature Colours\r
+label.save_feature_colours = Save Feature Colour Scheme\r
+label.dataset_for = {0} Dataset for {1}\r
+label.select_startup_file = Select startup file\r
+label.select_default_browser = Select default web browser\r
+label.save_tree_as_newick = Save tree as newick file\r
+label.create_eps_from_tree = Create EPS file from tree\r
+label.create_png_from_tree = Create PNG image from tree\r
+label.save_colour_scheme = Save colour scheme\r
+label.edit_params_for = Edit parameters for {0}\r
+label.choose_filename_for_param_file = Choose a filename for this parameter file\r
+label.save_as_html = Save as HTML\r
+label.recently_opened = Recently Opened\r
+label.blasting_for_unidentified_sequence_jobs_running = BLASTing for unidentified sequences - {0}  jobs running.\r
+label.tree_from = Tree from {0}\r
+label.webservice_job_title = {0} using {1}\r
+label.select_visible_region_of = selected {0} region of {1}\r
+label.visible = Visible\r
+label.select_unselect_visible_regions_from = select and unselected {0} regions from {1}\r
+label.visible_region_of = visible region of\r
+label.webservice_job_title_on = {0} using {1} on {2}\r
+label.updating_vamsas_session = Updating vamsas session\r
+label.loading_file = Loading File: {0}\r
+label.edit_params = Edit {0}\r
+error.not_implemented = Not implemented\r
+error.no_such_method_as_clone1_for = No such method as clone1 for {0}\r
+error.null_from_clone1 = Null from clone1!\r
+error.implementation_error_sortbyfeature = Implementation Error - sortByFeature method must be one of FEATURE_SCORE, FEATURE_LABEL or FEATURE_DENSITY.\r
+error.not_yet_implemented = Not yet implemented\r
+error.unknown_type_dna_or_pep = Unknown Type {0} - dna or pep are the only allowed values.\r
+error.implementation_error_dont_know_thereshold_annotationcolourgradient = Implementation error: don't know about threshold setting for current AnnotationColourGradient.\r
+error.implementation_error_embeddedpopup_not_null = Implementation error - embeddedPopup must be non-null\r
+error.invalid_colour_for_mycheckbox = Invalid color for MyCheckBox\r
+error.implementation_error_unrecognised_render_object_for_features_type = Implementation Error: Unrecognised render object {0} for features of type {1}\r
+error.implementation_error_unsupported_feature_colour_object = Implementation error: Unsupported feature colour object.\r
+error.invalid_separator_parameter = Invalid separator parameter - must be non-zero length\r
+error.alignment_cigararray_not_implemented = Alignment(CigarArray) not yet implemented\r
+error.weak_sequencei_equivalence_not_yet_implemented = Weak sequenceI equivalence not yet implemented.\r
+error.implementation_error_can_only_make_alignmnet_from_cigararray = Implementation Error - can only make an alignment view from a CigarArray of sequences.\r
+error.empty_view_cannot_be_updated = empty view cannot be updated.\r
+error.mismatch_between_number_of_sequences_in_block = Mismatch between number of sequences in block {0} ({1}) and the original view ({2})\r
+error.padding_not_yet_implemented = Padding not yet implemented\r
+error.mismatch_between_visible_blocks_to_update_and_number_of_contigs_in_view = Mismatch between visible blocks to update and number of contigs in view (contigs=0,blocks={0})\r
+error.unknown_seq_cigar_operation = Unknown SeqCigar operation {0}\r
+error.implementation_bug_parse_cigar_string = Implementation bug in parseCigarString\r
+error.implementation_error_invalid_operation_string = Implementation error. Invalid operation string.\r
+error.invalid_range_string = Invalid range string (must be zero or positive number)\r
+error.implementation_error_delete_range_out_of_bounds = Implementation Error: deleteRange out of bounds: start must be non-negative and less than end.\r
+error.implementation_error = Implementation error\r
+error.implementation_error_unknown_operation = Implementation Error! Unknown operation {0}\r
+error.implementation_error_unexpected_null_from_get_sequence_and_deletions = Implementation Error - unexpected null from getSequenceAndDeletions\r
+error.implementation_error_set_seq_null = Implementation Error - _setSeq(null,...)\r
+error.implementation_error_s = Implementation Error: _s= {0}\r
+error.implementation_error_seqcigar_possible = SeqCigar: Possible implementation error: sequence is longer than dataset sequence\r
+error.implmentation_bug_seq_null = Implementation Bug. Null seq\r
+error.implementation_bug_cigar_operation_list_range_list = Implementation Bug. Cigar Operation list!= range list\r
+error.not_yet_implemented_cigar_object_from_cigar_string = NOT YET Implemented: Constructing a Cigar object from a cigar string and a gapped sequence.\r
+error.implementation_bug_cigar_operation = Implementation Bug. Cigar Operation {0} {1} not one of {2}, {3}, or {4}.\r
+error.implementation_error_for_new_cigar = Implementation error for new Cigar(SequenceI)\r
+error.implementation_error_cigar_seq_no_operations = Implementation error: {0}th sequence Cigar has no operations.\r
+error.implementation_error_jmol_getting_data = Implementation error - Jmol seems to be still working on getting its data - report at http://issues.jalview.org/browse/JAL-1016\r
+error.implementation_error_no_pdbentry_from_index = Implementation error - no corresponding pdbentry (for index {0}) to add sequences mappings to\r
+error.jmol_version_not_compatible_with_jalview_version = Jmol version {0} is not compatible with this version of Jalview. Report this problem at issues.jalview.org\r
+error.not_implemented_remove = Remove: Not implemented\r
+error.not_implemented_clone = Clone: Not implemented\r
+error.implementation_error_chimera_getting_data = Implementation error - Chimera seems to be still working on getting its data - report at http://issues.jalview.org/browse/JAL-1016\r
+error.call_setprogressbar_before_registering_handler = call setProgressBar before registering the progress bar's handler.\r
+label.cancelled_params = Cancelled {0}\r
+error.implementation_error_cannot_show_view_alignment_frame = Implementation error: cannot show a view from another alignment in an AlignFrame.\r
+error.implementation_error_dont_know_about_thereshold_setting = Implementation error: don't know about threshold setting for current AnnotationColourGradient.\r
+error.eps_generation_not_implemented = EPS Generation not yet implemented\r
+error.png_generation_not_implemented = PNG Generation not yet implemented\r
+error.try_join_vamsas_session_another = Trying to join a vamsas session when another is already connected\r
+error.invalid_vamsas_session_id = Invalid vamsas session id\r
+error.implementation_error_cannot_create_groovyshell = Implementation Error. Cannot create groovyShell without Groovy on the classpath!\r
+label.groovy_support_failed = Jalview Groovy Support Failed\r
+label.couldnt_create_groovy_shell = Couldn't create the groovy Shell. Check the error log for the details of what went wrong.\r
+error.unsupported_version_calcIdparam = Unsupported Version for calcIdparam {0}\r
+error.implementation_error_cant_reorder_tree = Implementation Error: Can't reorder this tree. Not DefaultMutableTreeNode.\r
+error.invalid_value_for_option = Invalid value {0} for option {1}\r
+error.implementation_error_cannot_import_vamsas_doc = Implementation Error - cannot import existing vamsas document into an existing session, Yet!\r
+label.vamsas_doc_couldnt_be_opened_as_new_session = VAMSAS Document could not be opened as a new session - please choose another\r
+error.implementation_error_vamsas_operation_not_init = Impementation error! Vamsas Operations when client not initialised and connected\r
+error.jalview_no_connected_vamsas_session = Jalview not connected to Vamsas session\r
+error.implementation_error_cannot_recover_vamsas_object_mappings = IMPLEMENTATION ERROR: Cannot recover vamsas object mappings - no backup was made\r
+error.setstatus_called_non_existent_job_pane = setStatus called for non-existent job pane {0}\r
+error.implementation_error_cannot_find_marshaller_for_param_set =Implementation error: Can't find a marshaller for the parameter set\r
+error.implementation_error_old_jalview_object_not_bound =IMPLEMENTATION ERROR: old jalview object is not bound ! ({0})\r
+error.implementation_error_vamsas_doc_class_should_bind_to_type = Implementation Error: Vamsas Document Class {0} should bind to a {1} (found a {2})\r
+error.implementation_error_jalview_class_should_bind_to_type = Implementation Error: Jalview Class {0} should bind to a {1} (found a {2})\r
+error.invalid_vamsas_rangetype_cannot_resolve_lists = Invalid vamsas RangeType - cannot resolve both lists of Pos and Seg from choice!\r
+error.implementation_error_maplist_is_null = Implementation error. MapList is null for initMapType.\r
+error.implementation_error_cannot_have_null_alignment = Implementation error: Cannot have null alignment property key\r
+error.implementation_error_null_fileparse = Implementation error. Null FileParse in copy constructor\r
+error.implementation_error_cannot_map_alignment_sequences = IMPLEMENTATION ERROR: Cannot map an alignment of sequences from different datasets into a single alignment in the vamsas document.\r
+error.implementation_error_cannot_duplicate_colour_scheme = Serious implementation error: cannot duplicate colourscheme {0}\r
+error.implementation_error_structure_selection_manager_null = Implementation error. Structure selection manager's context is 'null'\r
+exception.ssm_context_is_null = SSM context is null\r
+error.idstring_seqstrings_only_one_per_sequence = idstrings and seqstrings contain one string each per sequence\r
+error.cannot_have_mixed_length_replacement_vectors = Cannot have mixed length replacement vectors. Replacement vector for {0} is {1} strings long, and have already seen a {2} length vector.\r
+error.cannot_have_zero_length_vector_replacement_strings = Cannot have zero length vector of replacement strings - either 1 value or n values.\r
+error.implementation_error_multiple_single_sequence_prediction_jobs_not_supported = Implementation Error! Multiple single sequence prediction jobs are not yet supported\r
+error.implementation_error_invalid_msa_index_for_job =Implementation Error! Invalid msaIndex for JPredJob on parent MSA input object!\r
+error.implementation_error_startjob_called = Implementation error - StartJob(JpredJob) called on {0}\r
+error.multiple_jnet_subjob_merge_not_implemented = Multiple JNet subjob merging not yet implemented\r
+label.job_never_ran = Job never ran - input returned to user.\r
+error.implementation_error_minlen_must_be_greater_zero = Implementation error: minlen must be zero or more\r
+error.implementation_error_msawbjob_called = Implementation error - StartJob(MsaWSJob) called on a WSJobInstance {0}\r
+error.implementation_error_cannot_attach_ws_menu_entry = IMPLEMENTATION ERROR: cannot attach WS Menu Entry without service handle reference!\r
+error.parameter_migration_not_implemented_yet = Parameter migration not implemented yet\r
+error.implementation_error_cannot_set_jaba_option = Implementation error: cannot set Jaba Option to a value outside its allowed value range!\r
+error.implementation_error_valuetype_doesnt_support_jabaws_type = IMPLEMENTATION ERROR: jalview.ws.params.ValueConstrainI.ValueType does not support the JABAWS type : {0}\r
+error.cannot_create_jabaws_param_set = Cannot create a JabaWSParamSet from non-JabaWS parameters\r
+error.cannot_set_arguments_to_jabaws_param_set = Cannot set arguments to a JabaWSParamSet that are not JabaWS arguments\r
+error.implementation_error_runner_config_not_available = Implementation Error: Runner Config not available for a JABAWS service of type {0} ({1})\r
+error.implementation_error_cannot_handle_jaba_param = Implementation Error: Cannot handle Jaba parameter object {0}\r
+error.implementation_error_attempt_to_delete_service_preset = Implementation error: Attempt to delete a service preset!\r
+error.implementation_error_cannot_locate_oldname_presetname = Implementation error: Can't locate either oldname ({0}) or presetName ({1}in the datastore!"\r
+error.implementation_error_jabaws_param_set_only_handled_by = Implementation error: JabaWsParamSets can only be handled by JabaParamStore\r
+error.cannot_set_source_file_for = Cannot set source file for {0}\r
+error.mismatch_service_instance_preset = Probable mismatch between service instance and preset!\r
+error.cannot_set_params_for_ws_preset = Cannot set Parameters for a Jaba Web service's preset\r
+error.implementation_error_can_only_instantiate_jaba_param_sets = Implementation error: Can only instantiate Jaba parameter sets\r
+error.no_aacon_service_found = No AACon service found\r
+error.implementation_error_couldnt_copy_value_constraint = Implementation error: could not copy ValueConstrain!\r
+error.couldnt_encode_as_utf8 = Couldn't encode {0} as UTF-8.\r
+error.tree_inputtype_not_yet_implemented = Tree InputType not yet implemented\r
+error.implementation_error_need_to_have_httpresponse = Implementation Error: need to have an HttpResponse to process\r
+error.dbrefsource_implementation_exception =DBRefSource Implementation Exception\r
+error.implementation_error_dbinstance_must_implement_interface = Implmentation Error - getDbInstances must be given a class that implements jalview.ws.seqfetcher.DbSourceProxy (was given{0})\r
+error.implementation_error_must_init_dbsources =Implementation error. Must initialise dbSources\r
+label.view_controller_toggled_marked = {0} {1} columns {2} containing features of type {3}  across {4} sequence(s)\r
+label.toggled = Toggled\r
+label.marked = Marked\r
+label.not = not\r
+label.no_feature_of_type_found = No features of type {0} found.\r
+label.submission_params = Submission {0}\r
+label.empty_alignment_job = Empty Alignment Job\r
+label.add_new_sbrs_service = Add a new Simple Bioinformatics Rest Service\r
+label.edit_sbrs_entry = Edit Simple Bioinformatics Rest Service entry\r
+label.pca_recalculating = Recalculating PCA\r
+label.pca_calculating = Calculating PCA\r
+label.select_foreground_colour = Choose foreground colour\r
+label.select_colour_for_text = Select Colour for Text\r
+label.adjunst_foreground_text_colour_thereshold = Adjust Foreground Text Colour Threshold\r
+label.select_subtree_colour = Select Sub-Tree Colour\r
+label.create_new_sequence_features = Create New Sequence Feature(s)\r
+label.amend_delete_features = Amend/Delete Features for {0}\r
+exception.out_of_bounds_for_file = Out of bounds for file: i={0}, Final Buffer: i0={1} iend={2}\r
+exception.null_string_given_to_regex_search = Null String Given to Regex.search\r
+exception.null_string_like_given_to_regex_search = Null StringLike Given to Regex.search\r
+exception.null_string_given_to_regex_reverse_search = Null String Given to Regex.reverseSearch\r
+exception.null_string_like_given_to_regex_reverse_search = Null StringLike Given to Regex.reverseSearch\r
+exception.null_string_like_given_to_regex_search_from = Null String Given to Regex.searchFrom\r
+exception.null_string_like_given_to_regex_search_region = Null String Given to Regex.searchRegion\r
+exception.replace_null_regex_pointer = Replacer has null Regex pointer\r
+exception.bad_pattern_to_regex_perl_code = bad pattern to Regex.perlCode: {0}\r
+exception.no_stub_implementation_for_interface = There is no stub implementation for the interface: {0}\r
+exception.cannot_set_endpoint_address_unknown_port = Cannot set Endpoint Address for Unknown Port {0}\r
+exception.querying_matching_opening_parenthesis_for_non_closing_parenthesis = Querying matching opening parenthesis for non-closing parenthesis character {0}\r
+exception.mismatched_unseen_closing_char = Mismatched (unseen) closing character {0}\r
+exception.mismatched_closing_char = Mismatched closing character {0}\r
+exception.mismatched_opening_char = Mismatched opening character {0} at {1}\r
+exception.invalid_datasource_couldnt_obtain_reader = Invalid datasource. Could not obtain Reader\r
+exception.index_value_not_in_range = {0}: Index value {1} not in range [0..{2}]\r
+exception.unterminated_cigar_string = Unterminated cigar string\r
+exception.unexpected_operation_cigar_string_pos = Unexpected operation {0} in cigar string (position {1} in {2}\r
+exception.couldnt_parse_responde_from_annotated3d_server = Couldn't parse response from Annotate3d server\r
+exception.application_test_npe = Application test: throwing an NullPointerException It should arrive at the console\r
+exception.overwriting_vamsas_id_binding = Overwriting vamsas id binding\r
+exception.overwriting_jalview_id_binding = Overwriting jalview id binding\r
+error.implementation_error_unknown_file_format_string = Implementation error: Unknown file format string\r
+exception.failed_to_resolve_gzip_stream = Failed to resolve GZIP stream\r
+exception.problem_opening_file_also_tried = Problem opening {0} (also tried {1}) : {2}\r
+exception.problem_opening_file = Problem opening {0} : {1}\r
+exception.failed_to_read_data_from_source = Failed to read data from source: {0}\r
+exception.no_init_source_stream = Unitialised Source Stream\r
+exception.invalid_source_stream = Invalid Source Stream: {0}\r
+error.implementation_error_reset_called_for_invalid_source = Implementation Error: Reset called for invalid source.\r
+exception.number_of_residues_in_query_sequence_differ_from_prediction = Number of residues in {0} supposed query sequence ({1}\n{2})\ndiffer from number of prediction sites in prediction ({3})\r
+label.mapped = mapped\r
+exception.jpredconcide_entry_has_unexpected_number_of_columns = JPredConcise: Entry ({0}) has an unexpected number of columns\r
+exception.couldnt_parse_concise_annotation_for_prediction = Couldn't parse concise annotation for prediction profile.\n{0}\r
+exception.newfile = NewickFile\: {0}\n\r
+label.no_tree_read_in = No Tree read in\r
+exception.rnaml_couldnt_access_datasource = Couldn't access datasource ({0})\r
+exception.ranml_couldnt_process_data = Couldn't process data as RNAML file ({0})\r
+exception.ranml_invalid_file = Invalid RNAML file ({0})\r
+exception.ranml_problem_parsing_data = Problem parsing data as RNAML ({0})\r
+exception.pfam_no_sequences_found = No sequences found (PFAM input)\r
+exception.stockholm_invalid_format = This file is not in valid STOCKHOLM format: First line does not contain '# STOCKHOLM'\r
+exception.couldnt_parse_sequence_line = Could not parse sequence line: {0}\r
+exception.error_parsing_line = Error parsing {0}\r
+exception.unknown_annotation_detected = Unknown annotation detected: {0} {1}\r
+exception.couldnt_store_sequence_mappings = Couldn't store sequence mappings for {0}\r
+exception.matrix_too_many_iteration = Too many iterations in {0} (max is {1})\r
+exception.browser_not_found = Exception in finding browser: {0}\r
+exception.browser_unable_to_locate = Unable to locate browser: {0}\r
+exception.invocation_target_exception_creating_aedesc = InvocationTargetException while creating AEDesc: {0}\r
+exception.illegal_access_building_apple_evt= IllegalAccessException while building AppleEvent: {0}\r
+exception.instantiation_creating_aedesc = InstantiationException while creating AEDesc: {0}\r
+exception.unable_to_launch_url = Unable to launch URL: {0}\r
+exception.unable_to_create_internet_config = Unable to create an Internet Config instance: {0}\r
+exception.invocation_target_calling_url = InvocationTargetException while calling openURL: {0}\r
+exception.illegal_access_calling_url = IllegalAccessException while calling openURL: {0}\r
+exception.interrupted_launching_browser = InterruptedException while launching browser: {0}\r
+exception.das_source_doesnt_support_sequence_command = Source {0} does not support the sequence command.\r
+exception.invalid_das_source = Invalid das source: {0}\r
+exception.ebiembl_retrieval_failed_on = EBI EMBL XML retrieval failed on {0}:{1}\r
+label.no_embl_record_found = # No EMBL record retrieved for {0}:{1}\r
+label.embl_successfully_parsed = # Successfully parsed the {0} queries into an Alignment\r
+exception.no_pdb_records_for_chain = No PDB Records for {0} chain {1}\r
+exception.unexpected_handling_rnaml_translation_for_pdb = Unexpected exception when handling RNAML translation of PDB data\r
+exception.couldnt_recover_sequence_properties_for_alignment = Couldn't recover sequence properties for alignment\r
+exception.unknown_format_for_file = Unknown format {0} for file \: \n{1}\r
+label.remove_gaps = Remove Gaps\r
+exception.couldnt_recover_sequence_props_for_jnet_query = Couldn't recover sequence properties for JNet Query sequence!\r
+exception.server_timeout_try_later = Server timed out - try again later\n\r
+exception.web_service_returned_null_try_later= Server at {0} returned null object, it probably cannot be contacted. Try again later.\r
+exception.cannot_contact_service_endpoint_at = Cannot contact service endpoint at {0}\r
+error.implementation_error_cannot_find_service_url_in_given_set = Implementation error: Cannot find service url in the given url set!\r
+error.implementation_error_cannot_find_service_url_in_given_set_param_store = Implementation error: Cannot find service url in the given url set for this service parameter store ({0}}\r
+exception.jobsubmission_invalid_params_set = Invalid parameter set. Check Jalview implementation\r
+exception.notvaliddata_group_contains_less_than_min_seqs = Group contains less than {0} sequences.\r
+exception.outofmemory_loading_pdb_file = Out of memory loading PDB File\r
+exception.eps_coudnt_write_output_file = Could not write to the output file: {0}\r
+exception.eps_method_not_supported = Method not currently supported by EpsGraphics2D version {0}\r
+exception.eps_unable_to_get_inverse_matrix = Unable to get inverse of matrix: {0}\r
+warn.job_cannot_be_cancelled_close_window = This job cannot be cancelled.\nJust close the window.\r
+warn.service_not_supported = Service not supported!\r
+warn.input_is_too_big = Input is too big!\r
+warn.invalid_job_param_set = Invalid job parameter set!\r
+info.job_couldnt_be_run_server_doesnt_support_program = Job could not be run because the server doesn't support this program.\n{0}\r
+info.job_couldnt_be_run_exceeded_hard_limit = Job could not be run because it exceeded a hard limit on the server.\n{0}\r
+info.job_couldnt_be_run_incorrect_param_setting = Job could not be run because some of the parameter settings are not supported by the server.\n{0}\nPlease check to make sure you have used the correct parameter set for this service\!\n\r
+info.no_jobs_ran = No jobs ran\r
+info.failed_to_submit_prediction = Failed to submit the prediction\:\n{0} {1}\r
+info.invalid_jnet_job_result_data ={0}\n{1}\nInvalid JNet job result data\!\n{2}\r
+info.failed_to_submit_sequences_for_alignment = Failed to submit sequences for alignment.\nIt is most likely that there is a problem with the server.\nJust close the window\n\r
+info.alignment_object_method_notes = \nAlignment Object Method Notes\n\r
+info.server_exception = \n{0} Server exception\!\n{1}\r
+status.processing_commandline_args = Processing commandline arguments...\r
+status.das_features_being_retrived = DAS features being retrieved...\r
+status.searching_for_sequences_from = Searching for sequences from {0}\r
+status.finished_searching_for_sequences_from = Finished searching for sequences from {0}\r
+label.eps_file = EPS file\r
+label.png_image = PNG image\r
+status.saving_file = Saving {0}\r
+status.export_complete = Export complete.\r
+status.fetching_pdb = Fetching PDB {0}\r
+status.refreshing_news = Refreshing news\r
+status.importing_vamsas_session_from = Importing VAMSAS session from {0}\r
+status.opening_params = Opening {0}\r
+status.waiting_sequence_database_fetchers_init = Waiting for Sequence Database Fetchers to initialise\r
+status.init_sequence_database_fetchers = Initialising Sequence Database Fetchers\r
+status.fetching_sequence_queries_from = Fetching {0} sequence queries from {1}\r
+status.finshed_querying = Finished querying\r
+status.parsing_results = Parsing results.\r
+status.processing = Processing...\r
+status.refreshing_web_service_menus = Refreshing Web Service Menus\r
+status.collecting_job_results = Collecting job results.\r
+status.fetching_das_sequence_features = Fetching DAS Sequence Features\r
+status.no_das_sources_active = No DAS Sources Active\r
+status.das_feature_fetching_cancelled = DAS Feature Fetching Cancelled\r
+status.das_feature_fetching_complete = DAS Feature Fetching Complete\r
+status.fetching_db_refs = Fetching db refs\r
+label.font_doesnt_have_letters_defined = Font doesn't have letters defined\nso cannot be used\nwith alignment data\r
+label.error_loading_file_params = Error loading file {0}\r
+label.error_loading_jalview_file = Error loading Jalview file\r
+warn.out_of_memory_when_action = Out of memory when {0}\!\!\nSee help files for increasing Java Virtual Machine memory.\r
+warn.out_of_memory_loading_file = Out of memory loading file {0}\!\!\nSee help files for increasing Java Virtual Machine memory.\r
+label.out_of_memory = Out of memory\r
+label.invalid_id_column_width = Invalid ID Column width\r
+warn.user_defined_width_requirements = The user defined width for the\nannotation and sequence ID columns\nin exported figures must be\nat least 12 pixels wide.\r
+label.couldnt_create_sequence_fetcher = Couldn't create SequenceFetcher\r
+warn.couldnt_create_sequence_fetcher_client = Could not create the sequence fetcher client. Check error logs for details.\r
+warn.server_didnt_pass_validation = Service did not pass validation.\nCheck the Jalview Console for more details.\r
+warn.url_must_contain = Sequence URL must contain $SEQUENCE_ID$ or a regex $SEQUENCE_ID=/<regex>/=$\r
+info.validate_jabaws_server = Validate JabaWS Server ?\n(Look in console output for results)\r
+label.test_server = Test Server?\r
+info.you_want_jalview_to_find_uniprot_accessions = Do you want Jalview to find\nUniprot Accession ids for given sequence names?\r
+label.find_uniprot_accession_ids = Find Uniprot Accession Ids\r
+label.new_sequence_fetcher = New Sequence Fetcher\r
+label.additional_sequence_fetcher = Additional Sequence Fetcher\r
+label.select_database_retrieval_source = Select Database Retrieval Source\r
+label.overwrite_existing_file = Overwrite existing file?\r
+label.file_already_exists = File exists\r
+label.edit_jabaws_url = Edit JABAWS URL\r
+label.add_jabaws_url = Add new JABAWS URL\r
+label.news_from_jalview = News from http://www.jalview.org\r
+label.cut_paste_alignmen_file = Cut & Paste Alignment File\r
+label.enter_redundancy_thereshold = Enter the redundancy thereshold\r
+label.select_dark_light_set_thereshold = <html><i>Select a dark and light text colour, then set the threshold to<br>switch between colours, based on background colour</i></html>\r
+label.select_feature_colour = Select Feature Colour\r
+label.ignore_gaps_consensus = Ignore Gaps In Consensus\r
+label.show_group_histogram = Show Group Histogram\r
+label.show_group_logo = Show Group Logo\r
+label.normalise_group_logo = Normalise Group Logo\r
+label.show_histogram = Show Histogram\r
+label.show_logo = Show Logo\r
+label.normalise_logo = Normalise Logo\r
+label.no_colour_selection_in_scheme = Please, make a colour selection before to apply colour scheme\r
+label.no_colour_selection_warn = Error saving colour scheme
\ No newline at end of file
index c1fb406..ac60810 100644 (file)
+action.refresh_services = Refrescar servicios\r
+action.reset_services = Reiniciar servicios\r
+action.merge_results = Unificar resultados\r
+action.load_scheme = Cargar esquema\r
+action.save_scheme = Guardar esquema\r
+action.save_image = Guardar imagen\r
+action.paste = Pegar\r
+action.show_html_source = Mostrar código HTML\r
+action.print = Imprimir\r
+action.web_service = Servicio web\r
+action.cancel_job = Cancelar trabajo\r
+action.start_job = Arrancar trabajo\r
+action.revert = Deshacer\r
+action.move_down = Mover hacia abajo\r
+action.move_up = Mover hacia arriba\r
+action.remove_return_datatype = Borrar tipo de datos de retorno\r
+action.add_return_datatype = Añadir tipo de datos de retorno\r
+action.remove_input_parameter = Borrar el parámetro de entrada seleccionado\r
+action.add_input_parameter = Añadir parámetro de entrada seleccionado\r
+action.edit = Editar\r
+action.new = Nuevo\r
+action.open_file = Abrir fichero\r
+action.show_unconserved = Mostrar regiones no conservadas\r
+action.open_new_aligmnent = Abrir nuevo alineamiento\r
+action.raise_associated_windows = Destacar ventanas asociadas\r
+action.minimize_associated_windows = Minimizar ventanas asociadas\r
+action.close_all = Cerrar todo\r
+action.load_project = Cargar proyecto\r
+action.save_project = Guardar proyecto\r
+action.quit = Salir\r
+action.expand_views = Expandir vistas\r
+action.gather_views = Capturar vistas\r
+action.page_setup = Configuración de la página\r
+action.reload = Recargar\r
+action.load = Cargar\r
+action.open = Abrir\r
 action.cancel = Cancelar\r
 action.create = Crear\r
 action.update = Actualizar\r
 action.delete = Borrar\r
-action.snapshot = Captura\r
+action.snapshot = Imagen\r
 action.clear = Limpiar\r
 action.accept = Aceptar\r
+action.select_ddbb = --- Seleccionar base de datos ---\r
+action.undo = Deshacer\r
+action.redo = Rehacer\r
+action.reset = Reiniciar\r
+action.remove_left = Eliminar parte izquierda\r
+action.remove_right = Eliminar parte derecha\r
+action.remove_empty_columns = Eliminar las columnas vacías\r
+action.remove_all_gaps = Eliminar todos los huecos\r
+action.left_justify_alignment = Ajustar el alineamiento a la izquierda\r
+action.right_justify_alignment = Ajustar el alineamiento a la derecha\r
+action.boxes = Casillas\r
+action.text = Texto\r
+action.by_pairwise_id = Identificar por parejas\r
+action.by_id = Por identificador\r
+action.by_length = Por longitud\r
+action.by_group = Por grupo\r
+action.remove = Eliminar\r
+action.remove_redundancy = Eliminar redundancia...\r
+action.pairwise_alignment = Alineamiento de pares...\r
+action.by_rna_helixes = Por hélices de RNA\r
+action.user_defined = Definido por el usuario...\r
+action.by_conservation = Por conservación\r
+action.wrap = Envolver\r
+action.show_gaps = Mostrar huecos\r
+action.show_hidden_markers = Mostrar marcadores ocultos\r
+action.find = Buscar\r
+action.undefine_groups = Grupos sin definir\r
+action.create_groups = Crear grupos\r
+action.make_groups_selection = Hacer grupos para seleccionar\r
+action.copy = Copiar\r
+action.cut = Cortar\r
+action.font = Fuente...\r
+action.scale_above = Escala superior\r
+action.scale_left = Escala izquierda\r
+action.scale_right = Escala derecha\r
+action.by_tree_order = Por orden del árbol\r
+action.sort = Ordenar\r
+action.calculate_tree = Calcular árbol\r
+action.help = Ayuda\r
+action.by_annotation = Por anotación...\r
+action.invert_sequence_selection = Invertir selección de secuencias\r
+action.invert_column_selection = Invertir selección de columnas\r
+action.show = Mostrar\r
+action.hide = Ocultar\r
+action.ok = OK\r
+action.set_defaults = Defecto\r
+action.create_group = Crear grupo\r
+action.remove_group = Eliminar grupo\r
+action.edit_group = Editar grupo\r
+action.border_colour = Color del borde\r
+action.edit_new_group = Editar nuevo grupo\r
+action.hide_sequences = Ocultar secuencias\r
+action.sequences = Secuencias\r
+action.ids = IDS\r
+action.ids_sequences = IDS y secuencias\r
+action.reveal_all = Revelar todo\r
+action.reveal_sequences = Revelar secuencias\r
+action.find_all = Buscar todo\r
+action.find_next = Buscar siguiente\r
+action.file = Archivo\r
+action.view = Ver \r
+action.change_params = Cambiar parámetros\r
+action.apply = Aplicar\r
+action.apply_threshold_all_groups = Aplicar umbral a todos los grupos\r
+action.apply_all_groups = Aplicar a todos los grupos\r
+action.by_chain = Por cadena\r
+action.by_sequence = Por secuencia\r
+action.paste_annotations = Pegar anotaciones\r
+action.format = Formato\r
+action.select = Seleccionar\r
+action.new_view = Nueva vista\r
+action.close = Cerrar\r
+action.add = Añadir\r
+action.save_as_default = Guardar como por defecto\r
+action.save_as = Guardar como\r
+action.save = Guardar\r
+action.cancel_fetch = Cancelar búsqueda\r
+action.save_omit_hidden_columns = Guardar / Omitir las columnas ocultas\r
+action.change_font = Cambiar Fuente\r
+action.change_font_tree_panel = Cambiar fuente (panel del árbol)\r
+action.colour = Color\r
+action.calculate = Calcular\r
+action.select_all = Seleccionar Todo\r
+action.deselect_all = Deseleccionar Todo\r
+action.invert_selection = Invertir selección\r
+action.using_jmol = Usar Jmol\r
+action.link = Enlazar\r
+action.group_link = Enlazar grupo\r
+action.show_chain = Mostrar cadena\r
+action.show_group = Mostrar grupo\r
+action.fetch_db_references = Recuperar referencias a base de datos\r
+action.view_flanking_regions = Mostrar flancos\r
+label.view_flanking_regions = Mostrar los datos de la secuencia a ambos lados de las subsecuencias implicadas en este alineamiento\r
+label.str = Str: \r
+label.seq = Seq: \r
+label.structures_manager = Administrar estructuras\r
+label.nickname = Sobrenombre:\r
+label.url = URL: \r
+label.input_file_url = Introducir URL en el fichero de entrada\r
+label.select_feature = Seleccionar función:\r
+label.name = Nombre:\r
+label.name_param = Nombre: {0}\r
+label.group = Grupo:\r
+label.group_name = Nombre del grupo\r
+label.group_description = Descripción del grupo\r
+label.edit_group_name_description = Editar nombre/descripción del grupo\r
+label.colour = Color:\r
+label.description = Descripción:\r
+label.start = Comenzar:\r
+label.end = Terminar:\r
+label.current_parameter_set_name = Nombre actual del conjunto de parámetros:\r
+label.service_action = Acción de servicio:\r
+label.post_url = POST URL: \r
+label.url_suffix = URL Sufijo\r
+label.sequence_source = Fuente de la secuencia\r
+label.per_seq = por secuencia\r
+label.result_vertically_separable = Los resultados son separables verticalmente\r
+label.amend = Modificar\r
+label.undo_command = Deshacer {0}\r
+label.redo_command = Rehacer {0}\r
+label.principal_component_analysis = Análisis del Componente Principal\r
+label.average_distance_identity = Distancia Media Usando % de Identidad\r
+label.neighbour_joining_identity = Unir vecinos utilizando % de Identidad\r
+label.treecalc_title = {0} utilizando {1}\r
+label.tree_calc_av = Distancia media\r
+label.tree_calc_nj = Unir vecinos\r
+label.select_score_model = Selecciones modelo de puntuación\r
+label.score_model_pid = % Identidad\r
+label.score_model_blosum62 = BLOSUM62\r
+label.score_model_pam250 = PAM 250\r
+label.score_model_conservation = Conservación de las propiedades físico-químicas\r
+label.score_model_enhconservation = Conservación de las propiedades físico-químicas\r
+label.status_bar = Barra de estado\r
+label.out_to_textbox = Generar cuadro de texto\r
+label.clustalx = Clustalx\r
+label.clustal = Clustal\r
+label.zappo = Zappo\r
+label.taylor = Taylor\r
+label.blc = BLC\r
+label.fasta = Fasta\r
+label.msf = MSF\r
+label.pfam = PFAM\r
+label.pileup = Pileup\r
+label.pir = PIR\r
+label.hydrophobicity = Hidrofobicidad\r
+label.helix_propensity = Tendencia de la hélice\r
+label.strand_propensity = Tendencia de la hebra\r
+label.turn_propensity = Tendencia de giro\r
+label.buried_index = Índice de encubrimiento\r
+label.purine_pyrimidine = Purina/Pirimidina\r
+label.percentage_identity = Porcentaje de identidad\r
+label.blosum62 = BLOSUM62\r
+label.blosum62_score = Puntuación del BLOSUM62 \r
+label.tcoffee_scores = Puntuación del T-Coffee\r
+label.average_distance_bloslum62 = Distancia Media Usando BLOSUM62\r
+label.neighbour_blosum62 = Neighbour Joining usando BLOSUM62\r
+label.show_annotations = Mostrar anotaciones\r
+label.colour_text = Color del texto\r
+label.show_non_conversed = Mostrar no conservadas\r
+label.overview_window = Ventana resumen\r
+label.none = Ninguno\r
+label.above_identity_threshold = Por encima del umbral de identidad\r
+label.show_sequence_features = Mostrar las características de las secuencias\r
+label.nucleotide = Nucleótido\r
+label.to_new_alignment = A nuevo alineamiento\r
+label.to_this_alignment = Añadir a este alineamiento\r
+label.apply_colour_to_all_groups = Aplicar color a todos los grupos\r
+label.modify_identity_thereshold = Modificar el umbral de identidad...\r
+label.modify_conservation_thereshold = Modificar el umbral de conservación...\r
+label.input_from_textbox = Introducir desde el cuadro de texto\r
+label.centre_column_labels = Centrar las etiquetas de las columnas\r
+label.automatic_scrolling = Desplazamiento automático\r
+label.documentation = Documentación\r
+label.about = Acerca de...\r
+label.show_sequence_limits = Mostrar los límites de la secuencia\r
+label.feature_settings = Ajustar funciones...\r
+label.sequence_features = Funciones de la secuencia\r
+label.all_columns = Todas las columnas\r
+label.all_sequences = Todas las secuencias\r
+label.selected_columns = Columnas seleccionadas\r
+label.selected_sequences = Secuencias seleccionadas\r
+label.all_but_selected_region = Todo menos la región seleccionada (Shift+Ctrl+H)\r
+label.selected_region = Región seleccionada\r
+label.all_sequences_columns = Todas las secuencias y columnas\r
+label.group_consensus = Consenso de grupo\r
+label.group_conservation = Conservación de grupo\r
+label.show_consensus_histogram = Mostrar el histograma de consenso\r
+label.show_consensus_logo = Mostrar el logo de consenso\r
+label.norm_consensus_logo = Normalizar el logo de consenso\r
+label.apply_all_groups = Aplicar a todos los grupos\r
+label.autocalculated_annotation = Anotación autocalculada\r
+label.min_colour = Color mínimo\r
+label.max_colour = Color máximo\r
+label.use_original_colours = Usar colores originales\r
+label.threshold_minmax = El umbral es mín/máx\r
+label.represent_group_with = Representar al grupo con\r
+label.selection = Seleccionar\r
+label.group_colour = Color del grupo\r
+label.sequence = Secuencia\r
+label.view_pdb_structure = Ver estructura PDB\r
+label.min = Mín:\r
+label.max = Máx:\r
+label.colour_by_label = Color por etiquetas\r
+label.new_feature = Nueva función\r
+label.match_case = Hacer corresponder mayúsculas y minúsculas\r
+label.view_alignment_editor = Ver en el editor de alineamientos\r
+label.labels = Etiquetas\r
+label.output_values = Valores de salida...\r
+label.output_points = Puntos de salida...\r
+label.output_transformed_points = Puntos de salida transformados\r
+label.input_data = Datos de entrada...\r
+label.nucleotide_matrix = Matriz nucleotídica\r
+label.protein_matrix = Matriz proteica\r
+label.show_bootstrap_values = Mostrar valores de Bootstrap\r
+label.show_distances = Mostrar distancias\r
+label.mark_unassociated_leaves = Marcar hojas no asociadas\r
+label.fit_to_window = Ajustar a la ventana\r
+label.newick_format = Formato Newick\r
+label.select_newick_like_tree_file = Seleccione un fichero de árbol tipo Newick\r
+label.colours = Colores\r
+label.view_mapping = Ver mapeado\r
+label.wireframe = Estructura metálica\r
+label.depthcue = Clave de profundidad\r
+label.z_buffering = Tamponamiento Z\r
+label.charge_cysteine = Carga & Cisteína\r
+label.all_chains_visible = Todas las cadenas visibles\r
+label.successfully_added_features_alignment = Funciones añadidas exitosamente al alineamiento\r
+label.keyboard_editing_mode = El modo de editar teclado es {0}\r
+label.paste_features_annotations_Tcoffee_here = Pegar tus funciones / anotaciones / puntuación del fichero T-coffee aquí.\r
+label.removed_columns = {0} columnas eliminadas.\r
+label.removed_empty_columns = {0} columnas vacías eliminadas.\r
+label.paste_newick_tree_file = Pegar su fichero árbol Newick aquí. \r
+label.order_by_params = Ordenar por {0}\r
+label.html_content = <html>{0}</html>\r
+label.paste_pdb_file= Pegar tu fichero PDB aquí.\r
+label.paste_pdb_file_for_sequence = Pegar fichero PDB para la secuencia {0}\r
+label.could_not_parse_newick_file  = No se pudo analizar el fichero Newick\\\!\\n {0}\r
+label.successfully_pasted_tcoffee_scores_to_alignment= Pegada exitosamente la puntuación T-Coffee al alineamiento.\r
+label.failed_add_tcoffee_scores = Fallo al añadir las puntuaciones T-Coffee: \r
+label.successfully_pasted_annotation_to_alignment = Anotación pegada exitosamente al alineamiento.\r
+label.couldnt_parse_pasted_text_as_valid_annotation_feature_GFF_tcoffee_file = No es posible parsear el texto pegado como una anotación características, GFF, o fichero T-Coffee válidos\r
+label.successfully_pasted_alignment_file = Fichero de alineamiento pegado exitosamente\r
+label.paste_your_alignment_file = Pegar su fichero de alineamiento aquí\r
+label.paste_your = Pegar su\r
+label.finished_searching = Búsqueda finalizada\r
+label.search_results= Buscar Resultados {0} : {1}\r
+label.found_match_for = Buscar coincidencia para {0}\r
+label.font = Fuente:\r
+label.size = Talla:\r
+label.style = Estilo:\r
+label.enter_redundancy_threshold = Introducir el umbral de redundancia\r
+label.calculating = Calculando....\r
+label.modify_conservation_visibility = Modificar la visibilidad de conservación\r
+label.colour_residues_above_occurence = Residuos de color por encima del % de aparición \r
+label.set_this_label_text = fijar como etiqueta \r
+label.sequences_from = Secuencias de {0}\r
+label.successfully_loaded_file  = Fichero cargado exitosamente {0}\r
+label.successfully_saved_to_file_in_format = Guardado exitosamente en el fichero: {0} en formato {1}.\r
+label.copied_sequences_to_clipboard = Copiadas {0} secuencias en el portapapeles.\r
+label.check_file_matches_sequence_ids_alignment = Comprobar que el fichero coincide con el ID de la secuencia en el alineamiento.\r
+label.problem_reading_tcoffee_score_file = Problema de lectura del fichero de puntuaciones T-COFFEE\r
+label.source_to_target = {0} a {1}\r
+label.per_sequence_only= Sólo por secuencia\r
+label.to_file = a fichero\r
+label.to_textbox = a cuadro de texto\r
+label.jalview = Jalview\r
+label.csv_spreadsheet = CSV (Hoja de cálculo)\r
+label.status =  [Estado]\r
+label.channels = Canales\r
+label.channel_title_item_count = {0} ({1})\r
+label.blog_item_published_on_date = {0} {1} \r
+label.select_das_service_from_table = Seleccionar servicio DAS de la tabla para leer una descripción completa aquí.</font></html>\r
+label.session_update = Actualizar sesión\r
+label.new_vamsas_session = Nueva sesión Vamsas\r
+label.load_vamsas_session = Cargar sesión Vamsas\r
+label.save_vamsas_session = Guardar sesión Vamsas\r
+label.select_vamsas_session_opened_as_new_vamsas_session= Selecciones una sesión vamsas para abrirla como una nueva sesión.\r
+label.open_saved_vamsas_session = Abrir una sesión VAMSAS guardada\r
+label.groovy_console = Consola Groovy \r
+label.lineart = lineart\r
+label.dont_ask_me_again = No volver a preguntar\r
+label.select_eps_character_rendering_style = Seleccionar el carácter EPS como estilo de visualización \r
+label.invert_selection = Invertir selección\r
+label.optimise_order = Optimizar orden\r
+label.seq_sort_by_score = Ordenar las secuencias por puntuación\r
+label.load_colours = Cargar colores\r
+label.save_colours = Guardar colores\r
+label.fetch_das_features = Recuperar funciones DAS\r
+label.selected_database_to_fetch_from = Seleccionada {0} Base de datos {1} para buscar de {2} \r
+label.database_param = Base de datos: {0}\r
+label.example = Ejemplo\r
+label.example_param = Ejemplo: {0}\r
+label.select_file_format_before_saving = Debe seleccionar un formato de fichero antes de guardar!\r
+label.file_format_not_specified = Formato de fichero no especificado\r
+label.alignment_contains_hidden_columns = El alineamiento contiene columnas ocultas.\\nQuieres guardar s\u00F3lo el alineamiento visible?\r
+label.couldnt_save_file = No se pudo guardar el fichero: {0}\r
+label.error_saving_file = Error guardando el fichero\r
+label.remove_from_default_list = eliminar de la lista de defectuosos?\r
+label.remove_user_defined_colour = Eliminar el color definido por el usuario\r
+label.you_must_select_least_two_sequences = Debes seleccionar al menos 2 secuencias.\r
+label.invalid_selection = Selección inválida\r
+label.principal_component_analysis_must_take_least_four_input_sequences = El an\u00E1lisis de la componente principal debe tomar\\nal menos 4 secuencias de entrada.\r
+label.sequence_selection_insufficient = Selección de secuencias insuficiente\r
+label.you_need_more_two_sequences_selected_build_tree = necesitas seleccionar más de dos secuencias para construir un árbol!\r
+label.not_enough_sequences = No suficientes secuencias\r
+label.selected_region_to_tree_may_only_contain_residues_or_gaps = La regi\u00F3n seleccionada para construir un \u00E1rbol puede\\ncontener s\u00F3lo residuos o espacios.\\nPrueba usando la funci\u00F3n Pad en el men\u00FA de edici\u00F3n,\\n o uno de los m\u00FAltiples servicios web de alineamiento de secuencias.\r
+label.sequences_selection_not_aligned = Las secuencias seleccionadas no están alineadas\r
+label.sequences_must_be_aligned_before_creating_tree = Las secuencias deben estar alineadas antes de crear el \u00E1rbol.\\nPrueba usando la funci\u00F3n Pad en el men\u00FA de editar,\\n o uno de los m\u00FAltiples servicios web de alineamiento de secuencias.\r
+label.sequences_not_aligned = Secuencias no alineadas\r
+label.problem_reading_tree_file =  Problema al leer el fichero del árbol\r
+label.possible_problem_with_tree_file = Posible problema con el fichero del árbol\r
+label.select_at_least_three_bases_in_at_least_one_sequence_to_cDNA_translation = Por favor seleccionar al menos tres bases de al menos una secuencia para poder realizar la traducción de cDNA.\r
+label.translation_failed = Translation Failed\r
+label.error_when_translating_sequences_submit_bug_report = Desafortunadamente, algo fue mal a la hora de traducir tus secuencias.\\nPor favor, revisa la consola Jalview java \\ny presenta un informe de error que incluya el seguimiento.\r
+label.implementation_error  = Error de implementación:\r
+label.automatically_associate_pdb_files_with_sequences_same_name = Quieres asociar automáticamente los {0} ficheros PDB con las secuencias del alineamiento que tengan el mismo nombre?\r
+label.automatically_associate_pdb_files_by_name = Asociar los ficheros PDB por nombre automáticamente\r
+label.ignore_unmatched_dropped_files_info = <html>Quieres <em>ignorar</em> los {0} ficheros cuyos nombres no coincidan con ningún IDs de las secuencias ?</html>\r
+label.ignore_unmatched_dropped_files = Ignorar los ficheros sin coincidencias?\r
+label.enter_view_name = Introducir nombre visible (¿?)\r
+label.enter_label = Introducir etiqueta\r
+label.enter_label_for_the_structure = Introducir una etiqueta para la estructura?\r
+label.pdb_entry_is_already_displayed = {0} Ya est\u00E1 mostrado.\\nQuieres volver a usar este visor?\r
+label.map_sequences_to_visible_window = Mapa de secuencias en ventana visible: {0}\r
+label.add_pdbentry_to_view = Quieres a\u00F1adir {0} a la vista llamada\\n{1}\\n\r
+label.align_to_existing_structure_view = Alinear a una estructura ya existente\r
+label.pdb_entries_couldnt_be_retrieved = Las siguientes entradas pdb no pueden ser extra\u00EDdas del PDB\\\:\\n{0}\\nPor favor, prueba descarg\u00E1ndolas manualmente.\r
+label.couldnt_load_file = No se pudo cargar el fichero\r
+label.couldnt_find_pdb_id_in_file = No se pudo encontrar un Id PDB en el fichero suministrado. Por favor, introduzca un Id para identificar esta estructura.\r
+label.no_pdb_id_in_file = No hay un Id PDB en el fichero\r
+label.couldnt_read_pasted_text = No se pudo leer el texto pegado {0}\r
+label.error_parsing_text = Error analizando el texto\r
+label.enter_local_das_source = Intruduzca el Nickname & URL de la fuente DAS local\r
+label.you_can_only_edit_or_remove_local_das_sources = Sólo puedes editar o eliminar fuentes DAS locales!\r
+label.public_das_source = Fuente pública DAS - no editable\r
+label.input_alignment_from_url = Alineamiento de entrada desde URL\r
+label.input_alignment = Alineamiento de entrada\r
+label.couldnt_import_as_vamsas_session = No se pudo importar {0} como una nueva sesión Vamsas.\r
+label.vamsas_document_import_failed =  Fallo en la importación del documento Vamsas\r
+label.couldnt_locate = No se pudo localizar {0}\r
+label.url_not_found = URL no encontrada\r
+label.no_link_selected = Enlace no seleccionado\r
+label.new_sequence_url_link = Enlace a una nueva secuencia URL\r
+label.cannot_edit_annotations_in_wrapped_view = No se pueden editar anotaciones en vista envolvente\r
+label.wrapped_view_no_edit = Vista envolvente - no editar\r
+label.error_retrieving_data = Error en la recuperación de datos\r
+label.user_colour_scheme_must_have_name = El esquema de colores del usuario debe tener un nombre\r
+label.no_name_colour_scheme = No hay nombre para el esquema de colores \r
+label.invalid_url = URL Invalido!\r
+label.error_loading_file = Error al cargar el fichero\r
+label.problems_opening_file = Encontrados problemas al abrir el fichero {0}!!\r
+label.file_open_error = Error al abrir el fichero\r
+label.no_das_sources_selected_warn = No han sido seleccionadas fuentes DAS.\\nPor favor, seleccione algunas fuentes y\\npruebe de nuevo.\r
+label.no_das_sources_selected_title = No han sido seleccionadas fuentes DAS\r
+label.colour_scheme_exists_overwrite = El esquema de colores {0} ya existe.\\nContinuar guardando el esquema de colores como {1}?"\r
+label.duplicate_scheme_name = Duplicar nombre de esquema\r
+label.jalview_new_questionnaire = Hay un nuevo cuestionario disponible. Querr\u00EDa completarlo ahora ?\\n\r
+label.jalview_user_survey = Encuesta de usuario Jalview \r
+label.alignment_properties = Propiedades del alineamiento: {0}\r
+label.alignment_props = Propiedades del alineamiento\r
+label.input_cut_paste = Cortar y pegar la entrada\r
+label.input_cut_paste_params = Cortar y pegar la entrada - {0}\r
+label.alignment_output_command = Alineamiento de salida - {0}\r
+label.annotations = Anotaciones\r
+label.features = Funciones\r
+label.overview_params = Visión general {0}\r
+label.paste_newick_file = Pegar nuevo fichero Newick\r
+label.load_tree_from_file = desde fichero - \r
+label.colour_by_annotation = Color por anotación\r
+label.selection_output_command = Seleccionar salida - {0}\r
+label.annotation_for_displayid = <p><h2>Anotación para {0} </h2></p><p>\r
+label.pdb_sequence_mapping = PDB - Mapeado de secuencia\r
+label.pca_details = detalles de la PCA\r
+label.redundancy_threshold_selection = Selección del umbral de redundancia\r
+label.user_defined_colours = Colores definidos del usuario\r
+label.jalviewLite_release = JalviewLite - versión {0}\r
+label.jaview_build_date = Fecha de creación: {0}\r
+label.jalview_authors_1 = Authors:  Jim Procter, Andrew Waterhouse, Jan Engelhardt, Lauren Lui,\r
+label.jalview_authors_2 = Michele Clamp, James Cuff, Steve Searle, David Martin & Geoff Barton.\r
+label.jalview_dev_managers = Desarrollo gestionado por The Barton Group, University of Dundee, Scotland, UK.\r
+label.jalview_distribution_lists = Para ayuda, ver el FAQ at www.jalview.org y/o adjuntar la lista de envío jalview-discuss@jalview.org\r
+label.jalview_please_cite = Si usa Jalview incluya la siguiente cita, por favor:\r
+label.jalview_cite_1_authors = Waterhouse, A.M., Procter, J.B., Martin, D.M.A, Clamp, M. and Barton, G. J. (2009)\r
+label.jalview_cite_1_title = Jalview Version 2 - un editor de alineamiento múltiple de secuencias y banco de trabajo de análisis\r
+label.jalview_cite_1_ref =  Bioinformaticos doi: 10.1093/bioinformatics/btp033\r
+label.right_click = clic en el botón derecho\r
+label.to_add_annotation = para añadir anotación\r
+label.alignment_has_no_annotations = El alineamiento no tiene anotaciones\r
+label.retrieving_pdb_data = Recuperación de datos PDB...\r
+label.label = Etiqueta\r
+label.no_features_added_to_this_alignment = No hay funciones asociadas a este alineamiento!!\r
+label.features_can_be_added_from_searches_1 = (Las funciones pueden ser añadidas de búsquedas o\r
+label.features_can_be_added_from_searches_2 = de ficheros de funciones Jalview / GFF)\r
+label.calculating_pca= Calculando PCA\r
+label.reveal_columns = Mostrar Columnas\r
+label.jalview_cannot_open_file = Jalview no puede abrir el fichero\r
+label.jalview_applet = Aplicación Jalview  \r
+label.loading_data = Cargando datos\r
+label.memory_stats = Memoria libre total: {0} MB; Memoria máxima: {1} MB; {2} %\r
+label.calculating_tree = Calculando árbol\r
+label.state_queueing = En cola \r
+label.state_running = Procesando\r
+label.state_complete = Completar\r
+label.state_completed = Finalizado\r
+label.state_job_cancelled = ¡Trabajo cancelado!\r
+label.state_job_error = Error del trabajo!\r
+label.server_error_try_later = ¡Error del servidor! (Intentar más tarde)\r
+label.error_loading_pdb_data = ¡Error cargando los datos PDB!\r
+label.fetching_pdb_data = Buscando los datos PDB...\r
+label.structure_type = Estructura_tipo\r
+label.settings_for_type = Ajustes para {0}\r
+label.view_full_application = Ver en la aplicación completa \r
+label.load_associated_tree = Cargar árbol asociado ...\r
+label.load_features_annotations = Cargar características/anotaciones ...\r
+label.export_features = Exportar características...\r
+label.export_annotations = Exportar anotaciones ...\r
+label.jalview_copy = Copiar (sólo Jalview)\r
+label.jalview_cut = Cortar (sólo Jalview)\r
+label.to_upper_case = Pasar a mayúsculas\r
+label.to_lower_case = Pasar a minúsculas\r
+label.toggle_case = Alternar mayúsculas y minúsculas\r
+label.edit_name_description = Editar nombre/descripción\r
+label.create_sequence_feature = Crear función de secuencia\r
+label.edit_sequence = Editar secuencia\r
+label.edit_sequences = Editar secuencias\r
+label.sequence_details = Detalles de la secuencia\r
+label.jmol_help = Ayuda de Jmol \r
+label.all = Todo\r
+label.sort_by = Ordenar por\r
+label.sort_by_score = Ordenar por puntuación\r
+label.sort_by_density = Ordenar por densidad\r
+label.sequence_sort_by_density = Ordenar las secuencias por densidad\r
+label.reveal = Revelar\r
+label.hide_columns = Ocultar columnas\r
+label.load_jalview_annotations = Cargar un fichero de anotación de Jalivew o un fichero de características\r
+label.load_tree_file = Cargar un fichero de árbol\r
+label.retrieve_parse_sequence_database_records_alignment_or_selected_sequences = Recuperar y parsear un registro de secuencia de base de datos para el alineamiento o secuencias actualmente seleccionados\r
+label.standard_databases = Bases de datos estándar\r
+label.fetch_embl_uniprot = Recuperar de EMBL/EMBLCDS o Uniprot/PDB y de cualquier fuente DAS seleccionada\r
+label.reset_min_max_colours_to_defaults = Reiniciar los colores min y max colours a los valores por defecto establecidos en las preferencias de usuario\r
+label.align_structures_using_linked_alignment_views = Alinear las estructuras utlizando las {0} vistas de alineamiento enlazadas\r
+label.connect_to_session = Conectar a la sesión {0}\r
+label.threshold_feature_display_by_score = Filtrar la característica mostrada por puntuación.\r
+label.threshold_feature_no_thereshold = Sin umbral\r
+label.threshold_feature_above_thereshold = Por encima del umbral\r
+label.threshold_feature_below_thereshold = Por debajo del umbral\r
+label.adjust_thereshold = Ajustar umbral\r
+label.toggle_absolute_relative_display_threshold = Cambiar entre mostrar el umbral absoluto y el relativo.\r
+label.display_features_same_type_different_label_using_different_colour = Mostrar las características del mismo tipo con una etiqueta diferente y empleando un color distinto (p.e. características del dominio)\r
+label.select_colour_minimum_value = Seleccionar el color para el valor mínimo\r
+label.select_colour_maximum_value = Seleccionar el color para el valor máximo\r
+label.open_new_jmol_view_with_all_structures_associated_current_selection_superimpose_using_alignment = Abrir una nueva vista Jmol con todas las estructuras asociadas con la selección acxtual y superponer las utilizando el alineamiento.\r
+label.open_url_param = Abrir URL {0}\r
+label.open_url_seqs_param = Abrir URL ({0}..) ({1} secuencias)\r
+label.load_pdb_file_associate_with_sequence = Cargar un fichero PDB y asociarlo con la secuencia {0}\r
+label.reveal_hidden_columns = Revelar las columnas ocultas con el botón derecho del ratón\r
+label.dark_colour = Oscurecer color\r
+label.light_colour = Aclarar color\r
+label.highlightnode = Pulse el botón izquierdo para seleccionar las hojas.<br>Haga doble clic para invertir las hojas.<br>Pulse el botón derecho para cambiar el color.\r
+label.load_colour_scheme = Cargar esquema cromático\r
+label.toggle_enabled_views = Cuando está habilitado, permite que se seleccionen varias vistas.\r
+label.edit_notes_parameter_set = Haga clic para editar las notas de este conjunto de parámetros.\r
+label.open_local_file = Abrir fichero local\r
+label.enable_automatically_sort_alignment_when_open_new_tree = Habilite esta opción para ordenar automáticamente<br>el alineamiento cuando abra<br> un nuevo árbol.\r
+label.listen_for_selections = Atención a las selecciones\r
+label.selections_mirror_selections_made_same_sequences_other_views = Cuando está habilitado, las selecciones de esta vista serán un reflejo<br>de las selecciones realizadas en las mismas secuencias de otras vistas.\r
+label.toggle_sequence_visibility = Shift+H cambia la visibilidad de la secuencia\r
+label.toggle_columns_visibility = Ctrl+H cambia la visibilidad de la columna\r
+label.toggles_visibility_hidden_selected_regions = H cambiar la visibilidad de las regiones ocultas o seleccionadas\r
+label.rename_tab_eXpand_reGroup=  Haga clic en el botón derecho para renombrar la pestaña<br>Presione X para expandir las tablas y G para reagrupar.\r
+label.right_align_sequence_id = Alinear a la derecha el ID de la secuencia\r
+label.sequence_id_tooltip = Ayuda del ID de la secuencia\r
+label.no_services = <Sin Servicios>\r
+label.select_copy_raw_html = Seleccione esta opción si desea copiar el html en bruto\r
+label.share_data_vamsas_applications = Compartir datos con otras aplicaciones vamsas\r
+label.connect_to = Conectar a\r
+label.join_existing_vamsas_session = Unirse a una sesión vamsas existente\r
+label.from_url = desde una URL\r
+label.any_trees_calculated_or_loaded_alignment_automatically_sort = Cuando está habilitado, cualquier árbol calculado o cargado en el alineamiento lo ordenará\r
+label.sort_with_new_tree = Ordenar con el nuevo árbol\r
+label.from_textbox = desde un área de texto\r
+label.window = Ventana\r
+label.preferences = Preferencias\r
+label.tools = Herramientas\r
+label.fetch_sequences = Recuperar secuencia(s)\r
+label.stop_vamsas_session = Parar sesión vamsas\r
+label.collect_garbage = Recolector de basura\r
+label.show_memory_usage = Mostrar uso de memoria\r
+label.show_java_console = Mostrar consola de Java\r
+label.show_jalview_news = Mostrar las noticias de Jalview\r
+label.take_snapshot = Tomar captura\r
+label.monospaced_fonts_faster_to_render = Las fuentes monoespaciadas son más rápidas de pintar\r
+label.anti_alias_fonts = Fuentes anti-alias (más lentas de pintar)\r
+label.monospaced_font= Monoespaciadas\r
+label.quality = Calidad\r
+label.maximize_window = Maximizar ventana\r
+label.conservation = Conservación\r
+label.consensus = Consenso\r
+label.histogram = Histograma\r
+label.logo = Logo\r
+label.non_positional_features = Características no posicionales\r
+label.database_references = Referencias a base de datos\r
+label.share_selection_across_views = Compartir la selección en todas las vistas\r
+label.scroll_highlighted_regions = Desplazarse hasta las regiones resaltadas\r
+label.gap_symbol = Símbolo del hueco\r
+label.alignment_colour = Color del alineamiento\r
+label.address = Dirección\r
+label.port = Puerto\r
+label.default_browser_unix = Navegador por defecto (Unix)\r
+label.send_usage_statistics = Enviar estadísticas de uso\r
+label.check_for_questionnaires = Comprobar los cuestionarios\r
+label.check_for_latest_version = Comprobar la última versión\r
+label.url_linkfrom_sequence_id = URL del enlace del ID de la secuencia\r
+label.use_proxy_server = Utilizar un servidor proxy\r
+label.eps_rendering_style = Estilo de visualización EPS\r
+label.append_start_end = Añadir /inicio-fin (/15-380)\r
+label.full_sequence_id = ID de la secuencia completo\r
+label.smooth_font = Fuente alargada\r
+label.autocalculate_consensus = Autocalcular consenso\r
+label.pad_gaps = Rellenar huecos\r
+label.pad_gaps_when_editing = Rellenar huecos al editar\r
+label.automatically_set_id_width = Establecer automáticamente al anchura del ID\r
+label.figure_id_column_width = Anchura de la columna del ID de la Figura\r
+label.use_modeller_output = Utilizar la salidad del Modeller\r
+label.wrap_alignment = Envolver alineamiento\r
+label.right_align_ids = Alinear IDs a la derecha\r
+label.sequence_name_italics = Nombre de la secuencia en cursiva\r
+label.open_overview = Abrir resumen\r
+label.default_colour_scheme_for_alignment = Esquema cromático por defecto para el alineamiento\r
+label.annotation_shading_default = Sombreado por defecto de la anotación\r
+label.default_minimum_colour_annotation_shading = Por mínimo por defecto para el sombreado de la anotación\r
+label.default_maximum_colour_annotation_shading = Por máximo por defecto para el sombreado de la anotación\r
+label.visual = Visual\r
+label.connections = Conexiones\r
+label.output = Salida\r
+label.editing = Edición\r
+label.das_settings = Configuración DAS\r
+label.web_services = Servicios web\r
+label.right_click_to_edit_currently_selected_parameter = Haga clic en el botón derecho para editar el parámetro seleccionado actualmente.\r
+label.let_jmol_manage_structure_colours = Permitir que Jmol gestione la estructuras cromáticas\r
+label.marks_leaves_tree_not_associated_with_sequence = Marcar las hojas del árbol que no están asociadas a una secuencia\r
+label.index_web_services_menu_by_host_site = Indizar los servicios web en el menú por el host que los aloja\r
+label.option_want_informed_web_service_URL_cannot_be_accessed_jalview_when_starts_up = Marque esta opción si desea ser informado<br>cuando no se pueda acceder a la URL de un servicio web<br>al arrancar Jalview.\r
+label.new_service_url = Nueva URL del servicio\r
+label.edit_service_url = Editar la URL del servicio\r
+label.delete_service_url = Borrar la URL del servicio\r
+label.details = Detalles\r
+label.options = Opciones\r
+label.parameters = Paramétros\r
+label.available_das_sources = Fuentes DAS disponibles\r
+label.full_details = Detalles completos\r
+label.authority = Autoridad\r
+label.type = Tipo\r
+label.proxy_server = Servidor proxy\r
+label.file_output = Fichero de salida\r
+label.select_input_type = Seleccionar el tipo de entrada\r
+label.set_options_for_type = Establecer opciones para el tipo\r
+label.data_input_parameters = Datos de los parámetros de entrada\r
+label.data_returned_by_service = Datos devueltos por el servicio\r
+label.rsbs_encoded_service = Servicio RSBS codificado\r
+label.parsing_errors = Errores de parseo\r
+label.simple_bioinformatics_rest_services = Simple Bioinformatics Rest Services\r
+label.web_service_discovery_urls = URL de descubrimiento de servicios web\r
+label.input_parameter_name = Nombre del parámetro de entrada\r
+label.short_descriptive_name_for_service = Nombre corto descriptivo del servicio\r
+label.function_service_performs = Tipo de función que realiza el servicio (p.e. alineamiento, análisis, búsqueda, etc).\r
+label.brief_description_service = Descripción breve del servicio\r
+label.url_post_data_service = URL a la que enviar los datos del servicio. Incluya cualquier parámetro especial que se necesite aquí\r
+label.optional_suffix = Sufijo opcional añadido a la URL al recuperar los resultados del servicio\r
+label.preferred_gap_character = ¿Qué caracter para el hueco prefiere el servicio?\r
+label.gap_character = Carácter para hueco\r
+label.move_return_type_up_order= Mover el tipo de returno hacia arriba en el orden\r
+label.move_return_type_down_order= Mover el tipo de returno hacia abajo en el orden\r
+label.update_user_parameter_set = Actualizar el conjunto de parámetros de usuario existente\r
+label.delete_user_parameter_set = Borrar el conjunto de parámetros de usuario existente\r
+label.create_user_parameter_set = Crear un nuevo conjunto de parámetro con la configuración actual.\r
+label.revert_changes_user_parameter_set = Deshacer todos los cambios en el conjunto de parámetros actual\r
+label.start_job_current_settings = Arrancar trabajo con la configuración actual\r
+label.cancel_job_close_dialog = Cerrar este diálogo y cancelar el trabajo\r
+label.input_output = Entrada/Salida\r
+label.cut_paste = Cortar y pegar\r
+label.adjusting_parameters_for_calculation = Ajustar los parámetros para el cálculo existente\r
+label.2d_rna_structure_line = 2D RNA {0}\r
+label.2d_rna_sequence_name = 2D RNA - {0}\r
+label.edit_name_and_description_current_group = Editar el nombre y la descripción del grupo actual.\r
+label.view_structure_for = Visualizar la estructura para {0}\r
+label.view_all_structures = Visualizar todas las {0} estructuras.\r
+label.view_all_representative_structures = Visualizar todas las {0} estructuras representativas.\r
+label.open_new_jmol_view_with_all_representative_structures_associated_current_selection_superimpose_using_alignment = Abrir una nueva vista de Jmol con todas las estructuras representativas\nasociadas con la selecci\u00F3n actual\nsuperpuesta con el alineamiento actual.\r
+label.associate_structure_with_sequence = Asociar estructura con la secuencia\r
+label.from_file = desde fichero\r
+label.enter_pdb_id = Introducir PDB Id\r
+label.discover_pdb_ids = Buscar PDB ids\r
+label.text_colour = Color del texto\r
+label.structure = Estructura\r
+label.view_structure = Visualizar estructura\r
+label.clustalx_colours = Colores de Clustalx\r
+label.above_identity_percentage = Sobre % identidad\r
+label.create_sequence_details_report_annotation_for = Anotación para {0}\r
+label.sequece_details_for = Detalles de la secuencia para {0}\r
+label.sequence_name = Nombre de la secuencia\r
+label.sequence_description = Descripción de la secuencia\r
+label.edit_sequence_name_description = Editar el nombre/descripción de la secuencia\r
+label.spaces_converted_to_backslashes = Los espacios se han convertido en _\r
+label.no_spaces_allowed_sequence_name = No se permiten espacios en el nombre de la secuencia\r
+label.select_outline_colour = Seleccionar el color del límite\r
+label.web_browser_not_found_unix = Unixers\: No es posible encontrar el navegador web por defecto.\nA\u00F1ada la ruta completa de su navegador en la pesta\u00F1a de Preferencias.\r
+label.web_browser_not_found = No se encuentra el navegador web\r
+label.select_pdb_file_for = Seleccione un fichero PDB para {0}\r
+label.html = HTML\r
+label.wrap = Envolver\r
+label.show_database_refs = Mostrar las referencias en base de datos\r
+label.show_non_positional_features = Mostrar las características no posicionales\r
+label.save_png_image = Guardar como imagen PNG\r
+label.load_tree_for_sequence_set = Cargar un árbol para este conjunto de secuencias\r
+label.export_image = Exportar imagen\r
+label.vamsas_store = Almacén VAMSAS\r
+label.translate_cDNA = Traducir cDNA\r
+label.extract_scores = Extraer puntuaciones\r
+label.get_cross_refs = Obtener referencias cruzadas\r
+label.sort_alignment_new_tree = Alinear el alineamiento con el nuevo árbol\r
+label.add_sequences = Añadir secuencias\r
+label.new_window = Nueva ventana\r
+label.refresh_available_sources = Refrescar las fuentes disponibles\r
+label.use_registry = Utilizar el registro\r
+label.add_local_source = Añadir fuente local\r
+label.set_as_default = Establecer por defecto\r
+label.show_labels = Mostrar etiquetas\r
+label.background_colour = Color de fondo\r
+label.associate_nodes_with = Asociar nodos con\r
+label.jalview_pca_calculation = Cálculo del PCA por Jalview\r
+label.link_name = Nombre del enalce\r
+label.pdb_file = Fichero PDB\r
+label.colour_with_jmol = Colorear con Jmol\r
+label.align_structures = Alinear estructuras\r
+label.jmol = Jmol\r
+label.sort_alignment_by_tree = Ordenar alineamiento por árbol\r
+label.mark_unlinked_leaves = Marcar las hojas como no enlazadas\r
+label.associate_leaves_with = Asociar hojas con\r
+label.save_colour_scheme_with_unique_name_added_to_colour_menu = Guarde el esquema cromáticos con un nombre único y se añadirá al menú de colores\r
+label.case_sensitive = Sensible a mayúsculas\r
+label.lower_case_colour = Color para las minúsculas\r
+label.index_by_host = Indizar por host\r
+label.index_by_type = Indizar por tipo\r
+label.enable_jabaws_services = Habilitar servicios JABAWS\r
+label.display_warnings = Mostrar advertencias\r
+label.move_url_up = Mover la URL hacia arriba\r
+label.move_url_down = Mover la URL hacia abajo\r
+label.add_sbrs_definition = Añadir una definición SBRS \r
+label.edit_sbrs_definition = Editar una definición SBRS \r
+label.delete_sbrs_definition = Borrar una definición SBRS \r
+label.your_sequences_have_been_verified = Sus secuencias has sido verificadas en una base de datos de secuencias conocidas. Algunos de sus ID se han alterado y\n, probablemente, el residuo de inicio/fin se haya actualizado.\nGuarde su alineamiento para mantener el ID actualizado.\n\n \r
+label.sequence_names_updated = Nombres de secuencia actualizados\r
+label.dbref_search_completed = Búsqueda de DBRef terminada\r
+label.show_all_chains = Mostrar todas las cadenas\r
+label.fetch_all_param = Recuperar todas {0}\r
+label.paste_new_window = Pegar en una nueva ventana\r
+label.settings_for_param = Configuración para {0}\r
+label.view_params = Visualizar {0}\r
+label.select_all_views = Seleccionar todas las vistas\r
+label.align_sequences_to_existing_alignment = Alinear las secuencias con el alineamiento existente\r
+label.realign_with_params = Realinear con {0}\r
+label.calcname_with_default_settings = {0} por defecto\r
+label.action_with_default_settings = {0} con la configuración por defecto\r
+label.edit_settings_and_run = Editar la configuración y ejecutar...\r
+label.view_and_change_parameters_before_alignment = Ver y cambiar los parámetros antes del alineamiento\r
+label.run_with_preset_params = Ejecutar {0} con preconfiguración\r
+label.view_and_change_parameters_before_running_calculation = Ver y cambiar los parámetros antes de lanzar el cálculo\r
+label.view_documentation = Ver documentación\r
+label.select_return_type = Seleccionar el tipo de retorno\r
+label.translation_of_params = Traducción de {0}\r
+label.features_for_params = Características de - {0}\r
+label.annotations_for_params = Anotaciones de - {0}\r
+label.generating_features_for_params = Generando características de - {0}\r
+label.generating_annotations_for_params = Generando anotaciones de - {0}\r
+label.varna_params = VARNA - {0}\r
+label.sequence_feature_settings = Configuración de las características de la secuencia\r
+label.pairwise_aligned_sequences = Secuencias alineadas a pares\r
+label.original_data_for_params = Datos originales de {0}\r
+label.points_for_params = Puntos de {0}\r
+label.transformed_points_for_params = Puntos transformados de {0}\r
+label.graduated_color_for_params = Color graduado para la característica de {0}\r
+label.select_backgroud_colour = Seleccionar color de fondo\r
+label.invalid_font = Fuente no válida\r
+label.separate_multiple_accession_ids = Separar los accession id con un punto y coma ";"\r
+label.replace_commas_semicolons = Cambiar comas por puntos y comas\r
+label.parsing_failed_syntax_errors_shown_below_param = Parseo erróneo. A continuación, se muestras los errores de sintaxis {0}\r
+label.parsing_failed_unrecoverable_exception_thrown_param = \nParseo err\u00F3neo. Se ha lanzado una excepci\u00F3n fatal\:\n {0}\r
+label.example_query_param = Consulta de ejemplo: {0}\r
+label.enter_value_increase_conservation_visibility = Introduzca un valor para incrementar la visibilidad de la conservación\r
+label.enter_percentage_identity_above_which_colour_residues = Introduza un % de identidad por encima del cual se colorearán los residuos\r
+label.wswublast_client_credits = Para mostrar las caracter\u00EDsticas de una secuencia, debe indicarse un id de Uniprot cuya secuencia se corresponda al 100 % con la introducida.\nPara mostrar estas caracter\u00EDsticas, prueba a cambar los nombre de sus secuencia con los ID que se sugieren a continuaci\u00F3n.\n\nRunning WSWUBlast at EBI.\nPlease quote Pillai S., Silventoinen V., Kallio K., Senger M., Sobhany S., Tate J., Velankar S., Golovin A., Henrick K., Rice P., Stoehr P., Lopez R.\nSOAP-based services provided by the European Bioinformatics Institute.\nNucleic Acids Res. 33(1)\:W25-W28 (2005));\r
+label.blasting_for_unidentified_sequence = Ejecutar BLAST para la secuencias sin identificar\r
+label.select_columns_containing = Seleccione las columnas que contengan\r
+label.select_columns_not_containing = Seleccione las columnas que no contengan\r
+option.trim_retrieved_seqs = Ajustar las secuencias recuperadas\r
+label.trim_retrieved_sequences = Cuando la secuencia de referencia es más larga que la secuencia con la que está trabajando, sólo se mantienen las subsecuencias relevantes.\r
+label.use_sequence_id_1 = Utilice $SEQUENCE_ID$ o $SEQUENCE_ID=/<regex>/=$\r
+label.use_sequence_id_2 = \nto para embeber el id de la secuencia en una URL\r
+label.ws_parameters_for = Parámetros para {0}\r
+label.switch_server = Cambiar servidor\r
+label.open_jabaws_web_page = Abra el página principal del servidor JABAWS en un navegador web\r
+label.choose_jabaws_server = Escoja un servidor para ejecutar este servicio\r
+label.services_at = Servicios en {0}\r
+label.rest_client_submit = {0} utilizando {1}\r
+label.fetch_retrieve_from =Recuperar de {0}</html>\r
+label.fetch_retrieve_from_all_sources = Recuperar de todas las fuentes {0} en {1}<br>La primera es :{2}<html> \r
+label.feature_settings_click_drag = <html>Haga clic o arrastre los tipos de las características hacia arriba o hacia abajo para cambiar el orden de visualización.<br/>Haga doble clic para seleccionar las columnas que contienen las características del alineamiento/selección actual.<br/>Presionando Alt seleccionará las columnas exteriores a las características en lugar de las interiores<br/>Presione Shift para modificar la selección actual (en lugar de borrarla)<br/>Presione CTRL o Command/Meta para cambiar las columans externas o internas a las características<br/></html>\r
+label.opt_and_params_further_details = ver los detalles adicionales haciendo clic en el botón derecho\r
+label.opt_and_params_show_brief_desc_image_link = <html>Haga clic para ver una descripción breve<br><img src="{0}"/>Haga clic en el botón derecho para obtener información adicional.</html> \r
+label.opt_and_params_show_brief_desc = <html>Haga clic para ver una descripción breve<br></html>\r
+label.adjusts_width_generated_eps_png = <html>Ajusta la anchura del fichero EPS o PNG generado para asegurar incluso que el ID de la secuencia más larga o las etiquetas de anotación se muestran</html>\r
+label.manually_specify_width_left_column = <html>Especificar manualmente la anchura de la columna izquierda en las etiquetas de los ID de la secuencia y las anotaciones se mostrar en las figuras del alineamiento exportado.Esta configuraicón se ignorará si está marcada la opción 'Establecer automáticamente al anchura del ID'</html>\r
+label.job_created_when_checked = <html>Cuando está habilitado, se crea un trabajo para cada secuencia de la selección actual</html>\r
+label.when_checked_job_visible_region_and_results = <html>Cuando está habilitado, se crea un único trabajo para la región visible y los resultados de mapean en su ubicación dentro del alineamiento. En caso contrario, se creará un trabajo para cada región visible y contigua en el alineamiento o selección actual (p.e. un alineamiento múlitple).</html>\r
+label.flat_file_representation = <html>La representación del fichero plano de este servicio utilizando el formalismo Really Simple Bioinformatics Service</html>\r
+label.result_of_parsing_rsbs = <html>Resultados de parsear la representación RSBS</html>\r
+label.user_preset = Preselección de usuario\r
+label.service_preset = Preselección del servicio\r
+label.run_with_preset = Ejecutar {0} con preselección\r
+label.view_service_doc_url = <html>Visualizar <a href="{0}">{1}</a></html>\r
+label.submit_sequence = <html>Enviar {0} {1} {2} {3} a<br/>{4}</html>\r
+action.by_title_param = por {0}\r
+label.alignment = Alineamiento\r
+label.secondary_structure_prediction = Predicción de la estructura secundaria\r
+label.sequence_database_search = Búsqueda en base de datos de secuencias\r
+label.analysis = Análisis\r
+label.protein_disorder = Desorden en la proteína \r
+label.source_from_db_source = Fuentes de {0}\r
+label.from_msname = de {0}\r
+label.superpose_with = Superponer con...\r
+action.do = Hacer\r
+label.scale_label_to_column = Ajustar la etiqueta a la columna\r
+label.add_new_row = Añadir nuevo fila\r
+label.edit_label_description = Editar etiqueta/descripción\r
+label.hide_row = Ocultar esta fila\r
+label.delete_row = Borrar esta fila\r
+label.show_all_hidden_rows = Mostrar todas las filas ocultas\r
+label.export_annotation = Exportar anotación\r
+label.copy_consensus_sequence = Copiar secuencia de consenso\r
+label.helix = Hélice\r
+label.sheet = Hoja\r
+label.rna_helix = Hélice de ARN\r
+label.remove_annotation = Borrar anotación\r
+label.colour_by = Colorear por...\r
+label.muscle_multiple_protein_sequence_alignment = Alineamiento múltiple de secuencias de proteínas con Muscle\r
+label.mafft_multiple_sequence_alignment = Alineamiento múltiple de secuencias con MAFFT\r
+label.clustalw_multiple_sequence_alignment = Alineamiento múltiple de secuencias con ClustalW\r
+label.jnet_secondary_structure_prediction = Predicción de la estructura secundaria con JNet\r
+label.multiharmony = Multi-Harmony\r
+label.unable_start_web_service_analysis = No es posible iniciar el servicio web de análisis\r
+label.job_couldnt_be_started_check_input = El trabajo no puede arrancarse. Por favor, compruebe los parámetros de entrada y los mensajes de advertencia de la consola de Jalview.\r
+label.prompt_each_time = Preguntar siempre\r
+label.use_source = Fuente\r
+label.couldnt_save_project = No es posible guardar el proyecto\r
+label.error_whilst_saving_current_state_to = Error mientras se guardaba el estado a {0}\r
+label.error_whilst_loading_project_from = Error cargando el proyecto desde  {0}\r
+label.couldnt_load_project = No es posible cargar el proyecto\r
+label.pca_sequences_not_aligned = Las secuencias deben estar alineadas antes de calcular el PCA.\nPruebe a utilizar la funci\u00F3n de rellenar huecos en el men\u00FA Editar,\no cualquiera de los servicios web de alineamiento m\u00FAltiple.\r
+label.invalid_name_preset_exists = Nombre no válido - esta preconfiguración ya existe.\r
+label.invalid_name = Nombre no válido\r
+label.set_proxy_settings = Por favor, configure su proxy en la pestaña 'Conexiones' de la ventana de Preferencia\r
+label.proxy_authorization_failed = Autorización del proxy fallida\r
+label.internal_jalview_error = Error interno de Jalview\r
+label.secondary_structure_prediction_service_couldnt_be_located = No se ha podido encontrar el Servicio de Predicciónd de la Estructura Secudaria {0} en {1}.\r
+label.service_called_is_not_msa_service = El Servicio llamado \n{0}\nno es un \nServicio de Alineamiento M\u00FAltiple de Secuencias\!\r
+label.msa_service_is_unknown = El Servicio de Alineamiento Múltiple llamado {0} es desconocido\r
+label.service_called_is_not_seq_search_service = El Servicio llamando \n{0}\nno es un \nServicio de B\u00FAsqueda de Secuencias\!\r
+label.seq_search_service_is_unknown = El Servicio de Búsqueda de Sencuencias llamado {0} es desconocido\r
+label.feature_type = Tipo de característisca\r
+label.display = Representación\r
+label.service_url = URL del servicio\r
+label.copied_sequences = Secuencias copiadas\r
+label.cut_sequences = Cortar secuencias\r
+label.conservation_colour_increment = Incremento de Conservación del Color ({0})\r
+label.percentage_identity_thereshold = Umbral del Porcentaje de Identidad ({0})\r
+label.error_unsupported_owwner_user_colour_scheme = Propietario no soportado para el diálogo del Esquema Cromático del Usuario\r
+label.save_alignment_to_file = Guardar Alineamiento en fichero\r
+label.save_features_to_file = Guardar Características en un fichero\r
+label.save_annotation_to_file = Guardar Anotación en un fichero\r
+label.no_features_on_alignment = No se han encontrado características en el alineamiento\r
+label.save_pdb_file = Guardar fichero PDB \r
+label.save_text_to_file = Guardar Texto en un fichero\r
+label.save_state = Guardar estado\r
+label.restore_state = Restaurar estado\r
+label.saving_jalview_project = Guardando el proyecto de Jalview {0}\r
+label.loading_jalview_project = Cargando el proyecto de Jalview {0}\r
+label.save_vamsas_document_archive = Guardar el archivo de documento Vamsas\r
+label.saving_vamsas_doc = Guardando el documento VAMSAS en {0}\r
+label.load_feature_colours = Cargar colores de características\r
+label.save_feature_colours = Guardar esquema cromático de características\r
+label.dataset_for = {0} conjunto de datos para {1}\r
+label.select_startup_file = Seleccionar fichero de arranque\r
+label.select_default_browser = Seleccionar navegador web por defecto\r
+label.save_tree_as_newick = Guardar árbol como fichero newick\r
+label.create_eps_from_tree = Crear un fichero EPS a partir de un árbol\r
+label.create_png_from_tree = Crear una imagen PNG a partir de un árbol\r
+label.save_colour_scheme = Guardar esquema cromático\r
+label.edit_params_for = Editar los parámetros de {0}\r
+label.choose_filename_for_param_file = Escoja un nombre de fichero para este fichero de parámetros\r
+label.save_as_html = Guardar como HTML\r
+label.recently_opened = Abiertos recientemente\r
+label.blasting_for_unidentified_sequence_jobs_running = Ejecutando BLAST de las secuencias no indentificadas - {0}  trabajos en marcha.\r
+label.tree_from = Árbol de {0}\r
+label.webservice_job_title = {0} usando {1}\r
+label.select_visible_region_of = seleccionada {0} región de {1}\r
+label.visible = Visible\r
+label.select_unselect_visible_regions_from = seleccionada y deseleccionadas {0} regiones de {1}\r
+label.visible_region_of = región visible de\r
+label.webservice_job_title_on = {0} usando {1} de {2}\r
+label.updating_vamsas_session = Actualizando sesión VAMSAS\r
+label.loading_file = Cargando fichero: {0}\r
+label.edit_params = Editar {0}\r
+error.not_implemented = No implementado\r
+error.no_such_method_as_clone1_for = No existe ese método como un clone1 de {0}\r
+error.null_from_clone1 = Nulo de clone1!\r
+error.implementation_error_sortbyfeature = Error de implementación - sortByFeature debe ser uno de FEATURE_SCORE, FEATURE_LABEL o FEATURE_DENSITY.\r
+error.not_yet_implemented = No se ha implementado todavía\r
+error.unknown_type_dna_or_pep = Tipo desconocido {0} - dna o pep son los únicos valores permitidos\r
+error.implementation_error_dont_know_thereshold_annotationcolourgradient = Error de implementación: no se conoce el valor umbral para el AnnotationColourGradient actual.\r
+error.implementation_error_embeddedpopup_not_null = Error de implementación - embeddedPopup debe ser no nulo.\r
+error.invalid_colour_for_mycheckbox = Color no válido para MyCheckBox\r
+error.implementation_error_unrecognised_render_object_for_features_type = Error de implementación: no se reconoce el objeto de representación {0} para las características de tipo {1}\r
+error.implementation_error_unsupported_feature_colour_object = Error de implementación: objeto de color de características no soportado.\r
+error.invalid_separator_parameter = Separador de parámetros no válido - debe tener longitud mayor que cero\r
+error.alignment_cigararray_not_implemented = Alignment(CigarArray) no se ha implementado todavía\r
+error.weak_sequencei_equivalence_not_yet_implemented = Equivalencia débil sequenceI no se ha implementado todavía.\r
+error.implementation_error_can_only_make_alignmnet_from_cigararray = Error de implementación - sólo se puede construir un vista de alineamiento a partir de una CigarArray de secuencias.\r
+error.empty_view_cannot_be_updated = una vista vacía no se puede actualizar.\r
+error.mismatch_between_number_of_sequences_in_block = No hay coincidencia entre el número de secuencias en el bloque {0} ({1}) y la vista original ({2})\r
+error.padding_not_yet_implemented = El relleno no se ha implementado todavía\r
+error.mismatch_between_visible_blocks_to_update_and_number_of_contigs_in_view = No hay coincidencia entre los bloques visibles para actualizar y el número de contigs en la vista (contigs=0,blocks={0})\r
+error.unknown_seq_cigar_operation = Operación SeqCigar {0} desconocida\r
+error.implementation_bug_parse_cigar_string = Bug de implementación en parseCigarString\r
+error.implementation_error_invalid_operation_string = Error de implementación. Cadena de operación no válida.\r
+error.invalid_range_string = Rango de la cadena no válido (debe ser cero o un número positivo)\r
+error.implementation_error_delete_range_out_of_bounds = Error de implementación: deleteRange fuera de rango: el comienzo debe ser cero o positivo y menor que el final.\r
+error.implementation_error = Error de implementación\r
+error.implementation_error_unknown_operation = ¡Error de implementación! Operación desconocida {0}\r
+error.implementation_error_unexpected_null_from_get_sequence_and_deletions = Error de implementación - valor nulo no esperado en getSequenceAndDeletions\r
+error.implementation_error_set_seq_null = Error de implementación - _setSeq(null,...)\r
+error.implementation_error_s = Error de implementación: _s= {0}\r
+error.implementation_error_seqcigar_possible = SeqCigar: posible error de implementación: la secuencia es más larga de el conjunto de datos de la secuencia\r
+error.implmentation_bug_seq_null = Bug de implementación. Seq nula\r
+error.implementation_bug_cigar_operation_list_range_list = Bug de implementación: Cigar Operation list!= range list\r
+error.not_yet_implemented_cigar_object_from_cigar_string = No implementado todavía: construcción de un objeto Cigar desde una cadena y una secuencia con huecos.\r
+error.implementation_bug_cigar_operation = Bug de implementación. La operación Cigar {0} {1} no es ni {2}, ni {3} ni {4}.\r
+error.implementation_error_for_new_cigar = Error de implementación en new Cigar(SequenceI)\r
+error.implementation_error_cigar_seq_no_operations = Error de implementación: la {0}a secuencia Cigar no tiene operaciones.\r
+error.implementation_error_jmol_getting_data = Error de implementación - Jmol parece estar todavía intentando recuperar sus datos - informe de ello en http://issues.jalview.org/browse/JAL-1016\r
+error.implementation_error_no_pdbentry_from_index = Error de implementación - no existe la correspondiente entrada pdb (para el índice {0}) para añadir el mapeo de secuencias a\r
+error.jmol_version_not_compatible_with_jalview_version = La versión {0} de Jmol no es compatible con esta versión de Jalview. Informe de este problema en http://issues.jalview.org\r
+error.not_implemented_remove = Borrar: no implementado\r
+error.not_implemented_clone = Clonar: no implementado\r
+error.implementation_error_chimera_getting_data = Error de implementación - Chimera parece estar todavía intentando recuperar sus datos - informe de ello en http://issues.jalview.org/browse/JAL-1016\r
+error.call_setprogressbar_before_registering_handler = llamada a setProgressBar antes de registrar el manejador de la barra de estado\r
+label.cancelled_params = {0} cancelado\r
+error.implementation_error_cannot_show_view_alignment_frame = Error de implementación: no es posible mostrar una vista de otro alineamiento en un AlignFrame.\r
+error.implementation_error_dont_know_about_thereshold_setting = Error de implementación: no se conoce la configuración del umbral para el AnnotationColourGradient actual.\r
+error.eps_generation_not_implemented = La generación de EPS no se ha implementado todavía\r
+error.png_generation_not_implemented = La generación de PNG no se ha implementado todavía\r
+error.try_join_vamsas_session_another = Tratando de establecer una sesión VAMSAS cuando ya había otra conectada\r
+error.invalid_vamsas_session_id = Identificador de sesión VAMSAS no válido\r
+error.implementation_error_cannot_create_groovyshell = Error de implementación:no se puede crear groovyShell sin Groovy en el classpath\r
+label.groovy_support_failed = El soporte Groovy de Jalview ha fallado\r
+label.couldnt_create_groovy_shell = No es posible crear el shell de Groovy. Compruebe el fichero de log para conocer los detalles.\r
+error.unsupported_version_calcIdparam = Versión no soportada de {0}\r
+error.implementation_error_cant_reorder_tree = Error de implementación: no es posible reordenar este árbol. No DefaultMutableTreeNode.\r
+error.invalid_value_for_option = Valor no válido de {0} para la opción {1}\r
+error.implementation_error_cannot_import_vamsas_doc = Error de implementación - todavía no es posible importar el documento VAMSAS existente en una sesión existente.\r
+label.vamsas_doc_couldnt_be_opened_as_new_session = El documento VAMSAS no ha podido abrirse como una nueva sesión. Por favor, escoja otra.\r
+error.implementation_error_vamsas_operation_not_init = ¡Error de implementación! Operaciones VAMSAS cuando el cliente no estaba inicializado ni conectado\r
+error.jalview_no_connected_vamsas_session = Jalview está conectado a una sesión VAMSAS\r
+error.implementation_error_cannot_recover_vamsas_object_mappings = Error de implementación: no es posible recuperar los mapeos del objeto VAMSAS - no se ha hecho ningún backup \r
+error.setstatus_called_non_existent_job_pane = se lllamado a setStatus para el panel de trabajo {0} no existente\r
+error.implementation_error_cannot_find_marshaller_for_param_set =Error de implementación: no puede encontrar un marshaller para el conjunto de parámetros\r
+error.implementation_error_old_jalview_object_not_bound =Error de implementación: ¡el objeto Jalview antiguo no está enlazado! ({0})\r
+error.implementation_error_vamsas_doc_class_should_bind_to_type = Error de implementación: la clase de documento VAMSAS {0} debe enlazar a {1} (pero se ha encontrado que lo está a {2})\r
+error.implementation_error_jalview_class_should_bind_to_type = Error de implementación: la clase Jalview {0} debe enlazar a {1} (pero se ha encontrado que lo está a {2})\r
+error.invalid_vamsas_rangetype_cannot_resolve_lists = RangeType VAMSAS no válido - ¡no es posible resolver ambas listas de Pos y Seg con los valores elegidos!\r
+error.implementation_error_maplist_is_null = Error de implementación. MapList es nulo en initMapType.\r
+error.implementation_error_cannot_have_null_alignment = Error de implementación: no es posible tener una clave nula en el alineamiento\r
+error.implementation_error_null_fileparse = Error de implementación. FileParse nulo en el construictor de copia\r
+error.implementation_error_cannot_map_alignment_sequences = Error de implementación: no es posible maper un alineamiento de secuencias desde distintos conjuntos de datos en un único alineamiento en el documento VAMSAS.\r
+error.implementation_error_cannot_duplicate_colour_scheme = Error grave de implementación: no es posible duplicar el esquema cromático {0}\r
+error.implementation_error_structure_selection_manager_null = Error de implementación. El contexto structure selection manager's es nulo\r
+exception.ssm_context_is_null = El contexto SSM es nulo\r
+error.idstring_seqstrings_only_one_per_sequence = idstrings y seqstrings contienen una cadena por cada secuencia\r
+error.cannot_have_mixed_length_replacement_vectors = No es posible tener vectores de reemplazo de distinta longitud. El vector de reemplazo para {0} es de {1} cadenas de largo, pero se ha considerado ya como un vector de longitud {2}.\r
+error.cannot_have_zero_length_vector_replacement_strings = No es posible tener un vector de cadenas de reemplazo de longitud cero - debe ser uno o n.\r
+error.implementation_error_multiple_single_sequence_prediction_jobs_not_supported = ¡Error de implementación! Todavía no se soportan varios trabajos de predicción asociados a una única secuencia.\r
+error.implementation_error_invalid_msa_index_for_job = ¡Error de implementación! Valor msaIndex no válido para JPredJob en el objeto de entrada MSA padre!\r
+error.implementation_error_startjob_called = Error de implementación - StartJob(JpredJob) invocado en {0}\r
+error.multiple_jnet_subjob_merge_not_implemented = Todavía no se han implementado varios subtrabajos JNet conjuntos.\r
+label.job_never_ran = El trabajo nunca se ejecutó - entrada devuelta al usuario.\r
+error.implementation_error_minlen_must_be_greater_zero = Error de implementación: minlen debe ser cero o más\r
+error.implementation_error_msawbjob_called = Error de implementación - StartJob(MsaWSJob) invocado en un WSJobInstance {0}\r
+error.implementation_error_cannot_attach_ws_menu_entry = Error de implementación: ¡no es posible adjunto una WS Menu Entry sin una referencia a un manejador del servicio!\r
+error.parameter_migration_not_implemented_yet = La migración de parámetros no se ha implementado todavía\r
+error.implementation_error_cannot_set_jaba_option = Error de implementación: no es posible establecer el valor de Jaba Option a un valor fuera de su rango permitido\r
+error.implementation_error_valuetype_doesnt_support_jabaws_type = Error de implementación: jalview.ws.params.ValueConstrainI.ValueType no soporta el tipo JABAWS: {0}\r
+error.cannot_create_jabaws_param_set = No es posible crear un JabaWSParamSet con parámetros no JabaWS\r
+error.cannot_set_arguments_to_jabaws_param_set = No es posible establecer argumentos en JabaWSParamSet que no sean argumentos JabaWS \r
+error.implementation_error_runner_config_not_available = Error de implementación: Runner Config no está disponible para un servicio JABAWS de tipo  {0} ({1})\r
+error.implementation_error_cannot_handle_jaba_param = Error de implementación: no es posible manejar el objeto del parámetro Jaba {0}\r
+error.implementation_error_attempt_to_delete_service_preset = Error de implementación: intento de borrar un servicio preestablecido\r
+error.implementation_error_cannot_locate_oldname_presetname = Error de implementación: no es posible localizar ni el nombre antiguo ({0}) ni el presetName ({1} en el almacén de datos.\r
+error.implementation_error_jabaws_param_set_only_handled_by = Error de implementación: JabaWsParamSets sólo puede ser manejado por JabaParamStore\r
+error.cannot_set_source_file_for = No es posible establecer el fichero fuente para {0}\r
+error.mismatch_service_instance_preset = Posible desajuste entre la instancia del servicio y la prestablecida\r
+error.cannot_set_params_for_ws_preset = No es posible establecer los parámetros para el servicio web JABA presestablecido\r
+error.implementation_error_can_only_instantiate_jaba_param_sets = Error de implementación: sólo se puede instanciar conjuntos de parámetros Jaba\r
+error.no_aacon_service_found = No se ha encontrado ningún servicio AACon \r
+error.implementation_error_couldnt_copy_value_constraint = Error de implementación: ¡no se puede copiar ValueConstrain!\r
+error.couldnt_encode_as_utf8 = No se ha podido codificar {0} como UTF-8.\r
+error.tree_inputtype_not_yet_implemented = No se ha implementado todavía el árbol como InputType\r
+error.implementation_error_need_to_have_httpresponse = Error de implementación: se necesita tener un HttpResponse que procesar\r
+error.dbrefsource_implementation_exception = Excepción de implementación DBRefSource\r
+error.implementation_error_dbinstance_must_implement_interface = Error de Implementación- getDbInstances debe recibir una clase que implemente jalview.ws.seqfetcher.DbSourceProxy (recibió {0})\r
+error.implementation_error_must_init_dbsources =Error de implementación. Debe inicializar dbSources\r
+label.view_controller_toggled_marked = {0} {1} columnas {2} conteniendo características del tipo  {3} en {4} secuencia(s)\r
+label.toggled = Invertida\r
+label.marked = Marcada\r
+label.not = no\r
+label.no_feature_of_type_found = No se han encontrado características del tipo {0}.\r
+label.submission_params = Envío {0}\r
+label.empty_alignment_job = Trabajo de alineamiento vacío\r
+label.add_new_sbrs_service = Añadir un nuevo SBRS\r
+label.edit_sbrs_entry = Editar entrada SBRS\r
+label.pca_recalculating = Recalculando PCA\r
+label.pca_calculating = Calculando PCA\r
+label.select_foreground_colour = Escoger color del primer plano\r
+label.select_colour_for_text = Seleccione el color del texto\r
+label.adjunst_foreground_text_colour_thereshold = Ajustar el umbral del color del texto en primer plano\r
+label.select_subtree_colour = Seleccioanr el color del sub-árbol\r
+label.create_new_sequence_features = Crear nueva(s) característica(s) de secuencia\r
+label.amend_delete_features = Arrelgar/Borrar características de {0}\r
+exception.out_of_bounds_for_file = Fuera de rango para el fichero: i={0}, Buffer final: i0={1} iend={2}\r
+exception.null_string_given_to_regex_search = Cadena nula enviada a Regex.search\r
+exception.null_string_like_given_to_regex_search = StringLike nula enviada a Regex.search\r
+exception.null_string_given_to_regex_reverse_search = Cadena nula enviada a Regex.reverseSearch\r
+exception.null_string_like_given_to_regex_reverse_search = StringLike nula enviada a Regex.reverseSearch\r
+exception.null_string_like_given_to_regex_search_from = Cadena nula enviada a Regex.searchFrom\r
+exception.null_string_like_given_to_regex_search_region = Cadena nula enviada a  Regex.searchRegion\r
+exception.replace_null_regex_pointer = Reemplazador tiene un puntero Regex nulo\r
+exception.bad_pattern_to_regex_perl_code = patrón erróneo en Regex.perlCode: {0}\r
+exception.no_stub_implementation_for_interface = No existe una implementación del stub para la interfaz: {0}\r
+exception.cannot_set_endpoint_address_unknown_port = No es posible estabelcer la dirección de punto final para el puerto desconocido {0}\r
+exception.querying_matching_opening_parenthesis_for_non_closing_parenthesis = Consultando la coincidencia de apertura de paréntesis para paréntesis sin cerrar (?)\r
+exception.mismatched_unseen_closing_char = Discordancia (no vista) en el carácter de cierre {0}\r
+exception.mismatched_closing_char = Carácter de cierre discordante {0}\r
+exception.mismatched_opening_char = Carácter de apertura discordante {0} en {1}\r
+exception.invalid_datasource_couldnt_obtain_reader = Fuente de datos no válida. No es posible obtener el Reader\r
+exception.index_value_not_in_range = {0}: el valor del índice {1} en se encuentra en el rango [0..{2}]\r
+exception.unterminated_cigar_string = Cadena cigar sin terminar\r
+exception.unexpected_operation_cigar_string_pos = Operación no esperada {0} en una cadena cigar (posición {1} en {2})\r
+exception.couldnt_parse_responde_from_annotated3d_server = No es posible parsear la respuesta procedente del servidor Annotate3d \r
+exception.application_test_npe = Prueba de aplicación: lanzando un NullPointerException que debe aparecer en la consola\r
+exception.overwriting_vamsas_id_binding = Sobreescribiendo la asociación al VAMSAS id\r
+exception.overwriting_jalview_id_binding = Sobreescribiendo la asociación al Jalview id\r
+error.implementation_error_unknown_file_format_string = Error de implementación: cadena de formato de fichero desconocido\r
+exception.failed_to_resolve_gzip_stream = Fallo al resolver el flujo GZIP \r
+exception.problem_opening_file_also_tried = Problema abriendo {0} (también se intentó {1}) : {2}\r
+exception.problem_opening_file = Problema abriendo {0} : {1}\r
+exception.failed_to_read_data_from_source = Error al leer datos de la fuente: {0}\r
+exception.no_init_source_stream = Flujo de fuente sin inicializar\r
+exception.invalid_source_stream = Flujo de fuente no válida: {0}\r
+error.implementation_error_reset_called_for_invalid_source = Error de implementación: se ha invocado un Reset en una fuente no válida.\r
+exception.number_of_residues_in_query_sequence_differ_from_prediction = El n\u00FAmero de residuos en la supuesta secuencia consultada {0} ({1}\n{2})\ndifiere del n\u00FAmero de sitios de predicci\u00F3n en la predicci\u00F3n ({3})\r
+label.mapped = mapeado\r
+exception.jpredconcide_entry_has_unexpected_number_of_columns = JPredConcise: La entrada ({0}) tiene un número inesperado de columnas\r
+exception.couldnt_parse_concise_annotation_for_prediction = No es posible parsear la anotaci\u00F3n concisa para el perfil de predicci\u00F3n.\n{0}\r
+exception.newfile = Fichero Newick\: {0}\n\r
+label.no_tree_read_in = No hay lectura de árbol en\r
+exception.rnaml_couldnt_access_datasource = No ha sido posible acceder la fuente de datos ({0})\r
+exception.ranml_couldnt_process_data = No ha sido posible procesar los datos como un fichero RNAML ({0})\r
+exception.ranml_invalid_file = Fichero RNAML no válido ({0})\r
+exception.ranml_problem_parsing_data = Problema parseando los datos como RNAML ({0})\r
+exception.pfam_no_sequences_found = No se han encontrado secuencias (entrada PFAM)\r
+exception.stockholm_invalid_format = Este fichero no es tiene un formato STOCKHOLM válido: la primera línea no contiene '# STOCKHOLM'\r
+exception.couldnt_parse_sequence_line = No es posible parse la línea de secuencia: {0}\r
+exception.error_parsing_line = Error parseando {0}\r
+exception.unknown_annotation_detected = Anotación desconocida detectada: {0} {1}\r
+exception.couldnt_store_sequence_mappings = No es posible almacenar los mapeos de secuencia para {0}\r
+exception.matrix_too_many_iteration = Demasiadas iteraciones en {0} (el máximo es {1})\r
+exception.browser_not_found = Excepción al buscar el navegador: {0}\r
+exception.browser_unable_to_locate = Imposible encontrar el navegador: {0}\r
+exception.invocation_target_exception_creating_aedesc = InvocationTargetException mientras se creaba AEDesc: {0}\r
+exception.illegal_access_building_apple_evt= IllegalAccessException mientras se construía AppleEvent: {0}\r
+exception.instantiation_creating_aedesc = InstantiationException mientras se creaba AEDesc: {0}\r
+exception.unable_to_launch_url = Imposible lanzar la URL: {0}\r
+exception.unable_to_create_internet_config = Imposible crear una instancia de configuración de Internet: {0}\r
+exception.invocation_target_calling_url = InvocationTargetException mientras se invocaba openURL: {0}\r
+exception.illegal_access_calling_url = IllegalAccessException mientras se invocaba openURL: {0}\r
+exception.interrupted_launching_browser = InterruptedException mientras se lanzaba el navegador: {0}\r
+exception.das_source_doesnt_support_sequence_command = La fuente {0} no soporta el comando sequence.\r
+exception.invalid_das_source = Fuente DAS no válida: {0}\r
+exception.ebiembl_retrieval_failed_on = La recuperación de datos EBI EMBL XML ha fallado en {0}:{1}\r
+label.no_embl_record_found = # No se ha recuperado ningún registro EMBL de {0}:{1}\r
+label.embl_successfully_parsed = # Se han parseado con éxito las consultas {0} en un alineamiento\r
+exception.no_pdb_records_for_chain = No se han encontrado registros {0} para la cadena {1}\r
+exception.unexpected_handling_rnaml_translation_for_pdb = Excepcion inesperada cuando se traducían a RNAML los datos PDB\r
+exception.couldnt_recover_sequence_properties_for_alignment = No es posible recuperar las propiedades de la secuencia para el alineamiento\r
+exception.unknown_format_for_file = Formato desconocido {0} para el fichero \: \n{1}\r
+label.remove_gaps = Eliminar huecos\r
+exception.couldnt_recover_sequence_props_for_jnet_query = No ha sido posible recuperar las propiedades de la secuencia para la secuencia JNet Query!\r
+exception.server_timeout_try_later = Tiempo de conexi\u00F3n ha expirado - int\u00E9ntelo de nuevo m\u00E1s tarde\n\r
+exception.web_service_returned_null_try_later= El servidor {0} ha devuelto un objeto nulo, por lo que probablemente no se haya podido contactar con él. Inténtelo de nuevo más tarde.\r
+exception.cannot_contact_service_endpoint_at = No es posible contactar por el punto de acceso al servicio en {0}\r
+error.implementation_error_cannot_find_service_url_in_given_set = Error de implementación: no es posible encontrar la URL del servicio en el conjunto de URL proporcionado\r
+error.implementation_error_cannot_find_service_url_in_given_set_param_store = Error de implementación: la URL del servicio en el conjunto de URL  para este almacén de parámetros del servicio({0})\r
+exception.jobsubmission_invalid_params_set = Conjunto de parámetros no válido. Comprueba la implementación de Jalview\r
+exception.notvaliddata_group_contains_less_than_min_seqs = El grupo contiene menos de {0} secuencias.\r
+exception.outofmemory_loading_pdb_file = Sin menoria al cargar el fichero PDB\r
+exception.eps_coudnt_write_output_file = No es posible escribir el fichero de salida: {0}\r
+exception.eps_method_not_supported = Método actualmente no suportado por la versión {0} de EpsGraphics2D\r
+exception.eps_unable_to_get_inverse_matrix = Imposible obtener la inversa de la matrix: {0}\r
+warn.job_cannot_be_cancelled_close_window = Este trabajo no se puede cancelar.\nSimplemente, cierre la ventana.\r
+warn.service_not_supported = ¡Servicio no soportado!\r
+warn.input_is_too_big = ¡El tamaño de la entrada es demasiado grande!\r
+warn.invalid_job_param_set = ¡Conjunto de parámetros del trabajo no válido!\r
+info.job_couldnt_be_run_server_doesnt_support_program = No es posible ejecutar el trabajo porque el servidor no soporta este programa.\n{0}\r
+info.job_couldnt_be_run_exceeded_hard_limit = No es posible ejecutar el trabajo porque excede los l\u00EDmites del servidor.\n{0}\r
+info.job_couldnt_be_run_incorrect_param_setting = No es posible ejecutar el trabjao porque el servidor no soporta algunos de los par\u00E1metros.\n{0}\nPor favor, aseg\u00FArese de que ha usado los par\u00E1metros adecuados para este servicio\n\r
+info.no_jobs_ran = No se ha ejecutado ningún trabajo\r
+info.failed_to_submit_prediction = Error al enviar la predicci\u00F3n\:\n{0} {1}\r
+info.invalid_jnet_job_result_data ={0}\n{1}\nResultados del trabajo JNet no v\u00E1lidos\!\n{2}\r
+info.failed_to_submit_sequences_for_alignment = Error al enviar la secuencias para el alineamiento.\nLo m\u00E1s probable es que haya un problema en el servidor.\nSimplemente, cierre la ventana\n\r
+info.alignment_object_method_notes = \nNotas sobre los m\u00E9todos del objeto alineamiento\n\r
+info.server_exception = \n{0} Excepci\u00F3n del servidor\!\n{1}\r
+status.processing_commandline_args = Procesando los argumentos de la línea de comandos...\r
+status.das_features_being_retrived = Recuperando características DAS...\r
+status.searching_for_sequences_from = Buscando secuencias en {0}\r
+status.finished_searching_for_sequences_from = Finalizada la búsqueda de secuencias en {0}\r
+label.eps_file = Fichero EPS\r
+label.png_image = Imagen PNG\r
+status.saving_file = Guardando {0}\r
+status.export_complete = Exportación completada.\r
+status.fetching_pdb = Recuperando PDB {0}\r
+status.refreshing_news = Refrescando noticias\r
+status.importing_vamsas_session_from = Importando sesión VAMSAS de {0}\r
+status.opening_params = Abriendo {0}\r
+status.waiting_sequence_database_fetchers_init = Esperando la inicialización de los recuperadores de bases de datos de secuencias\r
+status.init_sequence_database_fetchers = Inicializando recuperadores de bases de datos de secuencias\r
+status.fetching_sequence_queries_from = Recuperando {0} consultas de secuencias de {1}\r
+status.finshed_querying = Consulta finalizada\r
+status.parsing_results = Parseando resultados.\r
+status.processing = Procesando...\r
+status.refreshing_web_service_menus = Refrescando los menús de servicios web\r
+status.collecting_job_results = Recolectando los resultados de los trabajos.\r
+status.fetching_das_sequence_features = Recuperando las características DAS de las secuencias\r
+status.no_das_sources_active = No existe ninguna fuente DAS activa\r
+status.das_feature_fetching_cancelled = Recuperación de características DAS cancelada\r
+status.das_feature_fetching_complete = Recuperación de características DAS completada\r
+status.fetching_db_refs = Recuperando db refs\r
+label.font_doesnt_have_letters_defined = La fuente no tiene letras definidas\npor lo que no puede emplease\ncon datos de alineamientos\r
+label.error_loading_file_params = Error cargando el fichero {0}\r
+label.error_loading_jalview_file = Error cargando el fichero Jalview \r
+warn.out_of_memory_when_action = Sin memoria al {0}\!\!\nConsulte los ficheros de ayuda para ajustar la memoria de la m\u00E1quina virtual de Java.\r
+warn.out_of_memory_loading_file = Sin memoria al cargar el fichero {0}\!\!\nConsulte los ficheros de ayuda para ajustar la memoria de la m\u00E1quina virtual de Java.\r
+label.out_of_memory = Sin memoria\r
+label.invalid_id_column_width = Identificador de anchura de columna no válido\r
+warn.user_defined_width_requirements = La anchura definida por el usuario para la \nlas columnas de anotaci\u00F3n e identificador de secuencias\nen figuras exportadas debe ser\na, al menos, de 12 p\u00EDxels\r
+label.couldnt_create_sequence_fetcher = No es posible crear SequenceFetcher\r
+warn.couldnt_create_sequence_fetcher_client = No es posible crear el cliente de recuperador de secuencias. Comprueba el fichero de log para más detalles.\r
+warn.server_didnt_pass_validation = El servicio no ha pasado la validaci\u00F3n.\nCompruebe la consola de Jalview para m\u00E1s detalles.\r
+warn.url_must_contain = La URL de la secuencia debe contener $SEQUENCE_ID$ o un regex $SEQUENCE_ID=/<regex>/=$\r
+info.validate_jabaws_server = \u00BFValidar el servidor JabaWS?\n(Consulte la consola de salida para obtener los resultados)\r
+label.test_server = ¿Probar servidor?\r
+info.you_want_jalview_to_find_uniprot_accessions = \u00BFDesea que Jalview encuentre\nUniprot Accession ids para los nombres de secuencias dados?\r
+label.find_uniprot_accession_ids = Buscar Uniprot Accession Ids\r
+label.new_sequence_fetcher = Añadir recuperador de secuencias\r
+label.additional_sequence_fetcher = Recuperador de secuencia adicional\r
+label.select_database_retrieval_source = Seleccionar fuente de recuperación de bases de datos\r
+label.overwrite_existing_file = ¿Sobreescribir el fichero existente?\r
+label.file_already_exists = El fichero existe\r
+label.edit_jabaws_url = Editar JABAWS URL\r
+label.add_jabaws_url = Añadir nueva JABAWS URL\r
+label.news_from_jalview = Noticias de http://www.jalview.org\r
+label.cut_paste_alignmen_file = Cortar & Pegar fichero de alineamiento\r
+label.enter_redundancy_thereshold = Introducir el umbral de redundancia\r
+label.select_dark_light_set_thereshold = <html><i>Seleccionar un color oscuro y un color claro para el texto y establecer el umbral en que<br>cambiar entre colores, basándose en el color de fondo</i></html>\r
+label.select_feature_colour = Seleccionar color de las características\r
+label.ignore_gaps_consensus = Ignorar huecos en el consenso\r
+label.show_group_histogram = Mostrar histograma de grupo\r
+label.show_group_logo = Mostrar logo de grupo\r
+label.normalise_group_logo = Normalizar el logo de grupo\r
+label.show_histogram = Mostrar histograma\r
+label.show_logo = Mostrar logo\r
+label.normalise_logo = Normalizar logo\r
+label.no_colour_selection_in_scheme = Por favor, seleccione un color antes de aplicar el esquema cromático\r
+label.no_colour_selection_warn = Error guardando el esquema cromático
\ No newline at end of file
index 3392d54..092a3c7 100755 (executable)
@@ -1,6 +1,6 @@
 <?xml version="1.0"?>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
index 32696df..0e06413 100644 (file)
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
index 2f30f89..edfc92d 100644 (file)
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
index 8f0dd45..3ecf2a4 100644 (file)
@@ -1,5 +1,5 @@
 ##
-# Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+# Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
 # Copyright (C) 2014 The Jalview Authors
 # 
 # This file is part of Jalview.
index 2016960..625c06d 100644 (file)
@@ -1,5 +1,5 @@
 ##
-# Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+# Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
 # Copyright (C) 2014 The Jalview Authors
 # 
 # This file is part of Jalview.
index 3fdf20c..27f952d 100755 (executable)
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
index f222379..92218ff 100644 (file)
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
index 9f6ebea..e56a6c8 100755 (executable)
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
index bd6b196..b6d79fa 100644 (file)
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
index e5d8487..a1bb272 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package MCview;
@@ -470,7 +472,9 @@ public class AppletPDBCanvas extends Panel implements MouseListener,
       g.fillRect(0, 0, getSize().width, getSize().height);
       g.setColor(Color.black);
       g.setFont(new Font("Verdana", Font.BOLD, 14));
-      g.drawString(MessageManager.getString("label.error_loading_pdb_data"), 50, getSize().height / 2);
+      g.drawString(
+              MessageManager.getString("label.error_loading_pdb_data"), 50,
+              getSize().height / 2);
       return;
     }
 
@@ -478,7 +482,8 @@ public class AppletPDBCanvas extends Panel implements MouseListener,
     {
       g.setColor(Color.black);
       g.setFont(new Font("Verdana", Font.BOLD, 14));
-      g.drawString(MessageManager.getString("label.fetching_pdb_data"), 50, getSize().height / 2);
+      g.drawString(MessageManager.getString("label.fetching_pdb_data"), 50,
+              getSize().height / 2);
       return;
     }
 
index 8a1c430..b55dde5 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package MCview;
@@ -62,8 +64,9 @@ public class AppletPDBViewer extends EmbmenuFrame implements
               false, null);
       Frame frame = new Frame();
       frame.add(cap);
-      jalview.bin.JalviewLite.addFrame(frame, MessageManager.getString("label.pdb_sequence_mapping"),
-              500, 600);
+      jalview.bin.JalviewLite.addFrame(frame,
+              MessageManager.getString("label.pdb_sequence_mapping"), 500,
+              600);
       cap.setText(pdbcanvas.mappingDetails.toString());
 
     }
@@ -168,7 +171,8 @@ public class AppletPDBViewer extends EmbmenuFrame implements
     chain.addActionListener(this);
     seqButton.setLabel(MessageManager.getString("action.by_sequence"));
     seqButton.addActionListener(this);
-    allchains.setLabel(MessageManager.getString("label.all_chains_visible"));
+    allchains
+            .setLabel(MessageManager.getString("label.all_chains_visible"));
     allchains.addItemListener(this);
     viewMenu.setLabel(MessageManager.getString("action.view"));
     zappo.setLabel(MessageManager.getString("label.zappo"));
index 6140ed0..9254fd8 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package MCview;
index fdfb3d0..f76cbc2 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package MCview;
index d409312..352e926 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package MCview;
index 8c16aad..dc0f718 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package MCview;
index 823e02c..c9301e8 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package MCview;
index dc53855..b4cb80c 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package MCview;
@@ -52,7 +54,6 @@ public class PDBViewer extends JInternalFrame implements Runnable
 
   public PDBViewer(PDBEntry pdbentry, SequenceI[] seq, String[] chains,
           AlignmentPanel ap, String protocol)
-
   {
     this.pdbentry = pdbentry;
     this.seq = seq;
@@ -294,7 +295,8 @@ public class PDBViewer extends JInternalFrame implements Runnable
       }
     });
     viewMenu.setText(MessageManager.getString("action.view"));
-    background.setText(MessageManager.getString("label.background_colour") + "...");
+    background.setText(MessageManager.getString("label.background_colour")
+            + "...");
     background.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -364,8 +366,10 @@ public class PDBViewer extends JInternalFrame implements Runnable
 
               int option = JOptionPane.showInternalConfirmDialog(
                       jalview.gui.Desktop.desktop,
-                      MessageManager.getString("label.remove_from_default_list"),
-                      MessageManager.getString("label.remove_user_defined_colour"),
+                      MessageManager
+                              .getString("label.remove_from_default_list"),
+                      MessageManager
+                              .getString("label.remove_user_defined_colour"),
                       JOptionPane.YES_NO_OPTION);
               if (option == JOptionPane.YES_OPTION)
               {
@@ -566,7 +570,9 @@ public class PDBViewer extends JInternalFrame implements Runnable
     try
     {
       cap.setText(pdbcanvas.mappingDetails.toString());
-      Desktop.addInternalFrame(cap, MessageManager.getString("label.pdb_sequence_mapping"), 550, 600);
+      Desktop.addInternalFrame(cap,
+              MessageManager.getString("label.pdb_sequence_mapping"), 550,
+              600);
     } catch (OutOfMemoryError oom)
     {
       new OOMWarning("Opening sequence to structure mapping report", oom);
@@ -629,7 +635,8 @@ public class PDBViewer extends JInternalFrame implements Runnable
 
   public void user_actionPerformed(ActionEvent e)
   {
-    if (e.getActionCommand().equals(MessageManager.getString("action.user_defined")))
+    if (e.getActionCommand().equals(
+            MessageManager.getString("action.user_defined")))
     {
       // new UserDefinedColours(pdbcanvas, null);
     }
@@ -647,7 +654,8 @@ public class PDBViewer extends JInternalFrame implements Runnable
   public void background_actionPerformed(ActionEvent e)
   {
     java.awt.Color col = JColorChooser.showDialog(this,
-            MessageManager.getString("label.select_backgroud_colour"), pdbcanvas.backgroundColour);
+            MessageManager.getString("label.select_backgroud_colour"),
+            pdbcanvas.backgroundColour);
 
     if (col != null)
     {
@@ -663,7 +671,7 @@ public class PDBViewer extends JInternalFrame implements Runnable
             jalview.bin.Cache.getProperty("LAST_DIRECTORY"));
 
     chooser.setFileView(new JalviewFileView());
-    chooser.setDialogTitle("Save PDB File");
+    chooser.setDialogTitle(MessageManager.getString("label.save_pdb_file"));
     chooser.setToolTipText(MessageManager.getString("action.save"));
 
     int value = chooser.showSaveDialog(this);
index aab4081..7f5c427 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package MCview;
@@ -23,8 +25,10 @@ import java.util.*;
 
 import java.awt.*;
 
+import jalview.analysis.AlignSeq;
 import jalview.datamodel.*;
 import jalview.io.FileParse;
+import jalview.util.MessageManager;
 
 public class PDBfile extends jalview.io.AlignFile
 {
@@ -58,7 +62,7 @@ public class PDBfile extends jalview.io.AlignFile
     id = safeName(getDataName());
 
     chains = new Vector();
-
+    ArrayList<SequenceI> rna = new ArrayList<SequenceI>(), prot = new ArrayList<SequenceI>();
     PDBChain tmpchain;
     String line = null;
     boolean modelFlag = false;
@@ -157,6 +161,12 @@ public class PDBfile extends jalview.io.AlignFile
         dataset.setName(id + "|" + dataset.getName());
         PDBEntry entry = new PDBEntry();
         entry.setId(id);
+        entry.setProperty(new Hashtable());
+        if (((PDBChain) chains.elementAt(i)).id != null)
+        {
+          entry.getProperty().put("CHAIN",
+                  ((PDBChain) chains.elementAt(i)).id);
+        }
         if (inFile != null)
         {
           entry.setFile(inFile.getAbsolutePath());
@@ -171,20 +181,69 @@ public class PDBfile extends jalview.io.AlignFile
         // maintain reference to
         // dataset
         seqs.addElement(chainseq);
+        if (isRNA(chainseq) == true)
+        {
+          rna.add(chainseq);
+        }
+        else
+        {
+          prot.add(chainseq);
+        }
+
         AlignmentAnnotation[] chainannot = chainseq.getAnnotation();
+
         if (chainannot != null)
         {
           for (int ai = 0; ai < chainannot.length; ai++)
           {
+
             chainannot[ai].visible = VisibleChainAnnotation;
             annotations.addElement(chainannot[ai]);
           }
         }
       }
+      if (rna.size() > 0)
+        try
+        {
+          processPdbFileWithAnnotate3d(rna);
+        } catch (Exception x)
+        {
+          System.err
+                  .println("Exceptions when dealing with RNA in pdb file");
+          x.printStackTrace();
+
+        }
+      ;
+      if (prot.size() > 0)
+        try
+        {
+          processPdbFileWithJmol(prot);
+        } catch (Exception x)
+        {
+          System.err
+                  .println("Exceptions when dealing with RNA in pdb file");
+          x.printStackTrace();
+
+        }
+      ;
+      if (prot.size() > 0)
+        try
+        {
+          processPdbFileWithJmol(prot);
+        } catch (Exception x)
+        {
+          System.err
+                  .println("Exceptions when dealing with RNA in pdb file");
+          x.printStackTrace();
+
+        }
+      ;
     } catch (OutOfMemoryError er)
     {
       System.out.println("OUT OF MEMORY LOADING PDB FILE");
-      throw new IOException("Out of memory loading PDB File");
+      throw new IOException(
+              MessageManager
+                      .getString("exception.outofmemory_loading_pdb_file"));
     } catch (NumberFormatException ex)
     {
       if (line != null)
@@ -195,6 +254,132 @@ public class PDBfile extends jalview.io.AlignFile
     }
   }
 
+  private void processPdbFileWithJmol(ArrayList<SequenceI> prot)
+          throws Exception
+  {
+    try
+    {
+      Class cl = Class.forName("jalview.ext.jmol.PDBFileWithJmol");
+      if (cl != null)
+      {
+        Object jmf = cl.getConstructor(new Class[]
+        { FileParse.class }).newInstance(new Object[]
+        { new FileParse(getDataName(), type) });
+        Alignment al = new Alignment((SequenceI[]) cl.getMethod(
+                "getSeqsAsArray", new Class[]
+                {}).invoke(jmf));
+        cl.getMethod("addAnnotations", new Class[]
+        { Alignment.class }).invoke(jmf, al);
+        replaceMatchingSeqsWith(prot, al, AlignSeq.PEP);
+      }
+    } catch (ClassNotFoundException q)
+    {
+    }
+  }
+
+  private void processPdbFileWithAnnotate3d(ArrayList<SequenceI> rna)
+          throws Exception
+  {
+    // System.out.println("this is a PDB format and RNA sequence");
+    // note: we use reflection here so that the applet can compile and run
+    // without the HTTPClient bits and pieces needed for accessing Annotate3D
+    // web service
+    try
+    {
+      Class cl = Class.forName("jalview.ws.jws1.Annotate3D");
+      if (cl != null)
+      {
+        // TODO: use the PDB ID of the structure if one is available, to save
+        // bandwidth and avoid uploading the whole structure to the service
+        Object annotate3d = cl.getConstructor(new Class[]
+        {}).newInstance(new Object[]
+        {});
+        AlignmentI al = ((AlignmentI) cl.getMethod("getRNAMLFor",
+                new Class[]
+                { FileParse.class }).invoke(annotate3d, new Object[]
+        { new FileParse(getDataName(), type) }));
+        replaceMatchingSeqsWith(rna, al, AlignSeq.DNA);
+      }
+    } catch (ClassNotFoundException x)
+    {
+      // ignore classnotfounds - occurs in applet
+    }
+    ;
+  }
+
+  /**
+   * matches ochains against al and populates seqs with the best match between
+   * each ochain and the set in al
+   * 
+   * @param ochains
+   * @param al
+   * @param dnaOrProtein
+   */
+  private void replaceMatchingSeqsWith(ArrayList<SequenceI> ochains,
+          AlignmentI al, String dnaOrProtein)
+  {
+    if (al != null && al.getHeight() > 0)
+    {
+      ArrayList<SequenceI> matches = new ArrayList<SequenceI>();
+      ArrayList<AlignSeq> aligns = new ArrayList<AlignSeq>();
+
+      for (SequenceI sq : ochains)
+      {
+        SequenceI bestm = null;
+        AlignSeq bestaseq = null;
+        int bestscore = 0;
+        for (SequenceI msq : al.getSequences())
+        {
+          AlignSeq aseq = AlignSeq.doGlobalNWAlignment(msq, sq,
+                  dnaOrProtein);
+          if (bestm == null || aseq.getMaxScore() > bestscore)
+          {
+            bestscore = aseq.getMaxScore();
+            bestaseq = aseq;
+            bestm = msq;
+          }
+        }
+        System.out.println("Best Score for " + (matches.size() + 1) + " :"
+                + bestscore);
+        matches.add(bestm);
+        aligns.add(bestaseq);
+        al.deleteSequence(bestm);
+      }
+      for (int p = 0, pSize = seqs.size(); p < pSize; p++)
+      {
+        SequenceI sq, sp = seqs.get(p);
+        int q;
+        if ((q = ochains.indexOf(sp)) > -1)
+        {
+          seqs.set(p, sq = matches.get(q));
+          sq.setName(sp.getName());
+          sq.setDescription(sp.getDescription());
+          sq.transferAnnotation(sp, aligns.get(q).getMappingFromS1(false));
+          int inspos = -1;
+          for (int ap = 0; ap < annotations.size();)
+          {
+            if (((AlignmentAnnotation) annotations.get(ap)).sequenceRef == sp)
+            {
+              if (inspos == -1)
+              {
+                inspos = ap;
+              }
+              annotations.remove(ap);
+            }
+            else
+            {
+              ap++;
+            }
+          }
+          if (sq.getAnnotation() != null)
+          {
+            annotations.addAll(inspos, Arrays.asList(sq.getAnnotation()));
+          }
+        }
+      }
+    }
+  }
+
   /**
    * make a friendly ID string.
    * 
@@ -264,4 +449,19 @@ public class PDBfile extends jalview.io.AlignFile
               1.0f / (float) i, .4f, 1.0f));
     }
   }
+
+  public boolean isRNA(SequenceI seqs)
+  {
+    for (int i = 0; i < seqs.getLength(); i++)
+    {
+      if ((seqs.getCharAt(i) != 'A') && (seqs.getCharAt(i) != 'C')
+              && (seqs.getCharAt(i) != 'G') && (seqs.getCharAt(i) != 'U'))
+      {
+        return false;
+      }
+    }
+
+    return true;
+
+  }
 }
index 2efbefe..6789fe1 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package MCview;
index 72e28b9..16731ef 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package MCview;
index ad1eba2..c691302 100644 (file)
@@ -1,5 +1,5 @@
 ###############################################################################
-# Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+# Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
 # Copyright (C) 2014 The Jalview Authors
 # 
 # This file is part of Jalview.
index 543391e..3a3462c 100755 (executable)
@@ -7,6 +7,8 @@
 //
 package com.stevesoft.pat;
 
+import jalview.util.MessageManager;
+
 import java.util.*;
 
 /**
@@ -259,7 +261,7 @@ public abstract class Pattern
    */
   Pattern clone1(Hashtable h)
   {
-    throw new Error("No such method as clone1 for " + getClass().getName());
+    throw new Error(MessageManager.formatMessage("error.no_such_method_as_clone1_for", new String[]{getClass().getName()}));
   }
 
   Pattern clone(Hashtable h)
@@ -272,7 +274,7 @@ public abstract class Pattern
     p = clone1(h);
     if (p == null)
     {
-      throw new Error("Null from clone1!");
+      throw new Error(MessageManager.getString("error.null_from_clone1"));
     }
     h.put(this, p);
     h.put(p, p);
index 04bb0da..861c33b 100755 (executable)
@@ -7,6 +7,8 @@
 //
 package com.stevesoft.pat;
 
+import jalview.util.MessageManager;
+
 import java.io.*;
 import java.util.*;
 
@@ -775,7 +777,7 @@ public class Regex extends RegRes implements FilenameFilter
   {
     if (s == null)
     {
-      throw new NullPointerException("Null String Given to Regex.search");
+      throw new NullPointerException(MessageManager.getString("exception.null_string_given_to_regex_search"));
     }
     return _search(s, 0, s.length());
   }
@@ -784,8 +786,7 @@ public class Regex extends RegRes implements FilenameFilter
   {
     if (sl == null)
     {
-      throw new NullPointerException(
-              "Null StringLike Given to Regex.search");
+      throw new NullPointerException(MessageManager.getString("exception.null_string_like_given_to_regex_search"));
     }
     return _search(sl, 0, sl.length());
   }
@@ -794,8 +795,7 @@ public class Regex extends RegRes implements FilenameFilter
   {
     if (s == null)
     {
-      throw new NullPointerException(
-              "Null String Given to Regex.reverseSearch");
+      throw new NullPointerException(MessageManager.getString("exception.null_string_given_to_regex_reverse_search"));
     }
     return _reverseSearch(s, 0, s.length());
   }
@@ -804,8 +804,7 @@ public class Regex extends RegRes implements FilenameFilter
   {
     if (sl == null)
     {
-      throw new NullPointerException(
-              "Null StringLike Given to Regex.reverseSearch");
+      throw new NullPointerException(MessageManager.getString("exception.null_string_like_given_to_regex_reverse_search"));
     }
     return _reverseSearch(sl, 0, sl.length());
   }
@@ -822,8 +821,7 @@ public class Regex extends RegRes implements FilenameFilter
   {
     if (s == null)
     {
-      throw new NullPointerException(
-              "Null String Given to Regex.searchFrom");
+      throw new NullPointerException(MessageManager.getString("exception.null_string_like_given_to_regex_search_from"));
     }
     return _search(s, start, s.length());
   }
@@ -832,8 +830,7 @@ public class Regex extends RegRes implements FilenameFilter
   {
     if (s == null)
     {
-      throw new NullPointerException(
-              "Null String Given to Regex.searchFrom");
+        throw new NullPointerException(MessageManager.getString("exception.null_string_like_given_to_regex_search_from"));
     }
     return _search(s, start, s.length());
   }
@@ -845,8 +842,7 @@ public class Regex extends RegRes implements FilenameFilter
   {
     if (s == null)
     {
-      throw new NullPointerException(
-              "Null String Given to Regex.searchRegion");
+      throw new NullPointerException(MessageManager.getString("exception.null_string_like_given_to_regex_search_region"));
     }
     return _search(s, start, end);
   }
index 062a548..b886f6a 100755 (executable)
@@ -7,6 +7,8 @@
 //
 package com.stevesoft.pat;
 
+import jalview.util.MessageManager;
+
 import com.stevesoft.pat.wrap.*;
 
 /** Internally used class. */
@@ -178,7 +180,7 @@ public class Replacer
     lastMatchedTo = 0;
     if (rh.me == null)
     {
-      throw new NullPointerException("Replacer has null Regex pointer");
+      throw new NullPointerException(MessageManager.getString("exception.replace_null_regex_pointer"));
     }
     if (rh.me._search(s, start, end))
     {
index d770f08..84a3a46 100755 (executable)
@@ -7,6 +7,8 @@
 //
 package com.stevesoft.pat;
 
+import jalview.util.MessageManager;
+
 import com.stevesoft.pat.wrap.*;
 
 /**
@@ -149,7 +151,7 @@ public class Transformer
     Regex r = Regex.perlCode(rs);
     if (r == null)
     {
-      throw new NullPointerException("bad pattern to Regex.perlCode: " + rs);
+      throw new NullPointerException(MessageManager.formatMessage("exception.bad_pattern_to_regex_perl_code", new String[]{rs}));
     }
     add(r);
   }
index b4d38dc..f5b61ab 100755 (executable)
@@ -7,6 +7,8 @@
 //
 package com.stevesoft.pat.wrap;
 
+import jalview.util.MessageManager;
+
 import java.io.*;
 
 import com.stevesoft.pat.*;
@@ -84,13 +86,16 @@ public class RandomAccessFileWrap implements StringLike
     {
     }
 
-    throw new ArrayIndexOutOfBoundsException("Out of bounds for file:"
-            + " i=" + i + ", Final Buffer: i0=" + i0 + " iend=" + iend);
+    throw new ArrayIndexOutOfBoundsException(MessageManager.formatMessage("exception.out_of_bounds_for_file", new String[]{
+               Integer.valueOf(i).toString(),
+               Integer.valueOf(i0).toString(),
+               Integer.valueOf(iend).toString()
+    }));
   }
 
   public String toString()
   {
-    throw new Error("Not implemented");
+    throw new Error(MessageManager.getString("error.not_implemented"));
   }
 
   public int length()
diff --git a/src/ext/edu/ucsf/rbvi/strucviz2/ChimUtils.java b/src/ext/edu/ucsf/rbvi/strucviz2/ChimUtils.java
new file mode 100644 (file)
index 0000000..aedf657
--- /dev/null
@@ -0,0 +1,755 @@
+package ext.edu.ucsf.rbvi.strucviz2;
+
+import java.awt.Color;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import ext.edu.ucsf.rbvi.strucviz2.StructureManager.ModelType;
+
+
+public abstract class ChimUtils {
+
+       private static Logger logger = LoggerFactory
+                       .getLogger(ChimUtils.class);
+
+       static int MAX_SUB_MODELS = 1000;
+
+       public static final HashMap<String, String> aaNames;
+
+       public static String RESIDUE_ATTR = "ChimeraResidue";
+       public static String RINALYZER_ATTR = "RINalyzerResidue";
+       public static String DEFAULT_STRUCTURE_KEY = "pdbFileName";
+
+       /**
+        * Parse the model number returned by Chimera and return the int value
+        */
+       // invoked by the ChimeraModel constructor
+       // line = model id #0 type Molecule name 1ert
+       public static int[] parseModelNumber(String inputLine) {
+               int hash = inputLine.indexOf('#');
+               int space = inputLine.indexOf(' ', hash);
+               int decimal = inputLine.substring(hash + 1, space).indexOf('.');
+               // model number is between hash+1 and space
+               int modelNumber = -1;
+               int subModelNumber = 0;
+               try {
+                       if (decimal > 0) {
+                               subModelNumber = Integer.parseInt(inputLine.substring(decimal + hash + 2, space));
+                               space = decimal + hash + 1;
+                       }
+                       modelNumber = Integer.parseInt(inputLine.substring(hash + 1, space));
+               } catch (Exception e) {
+                       logger.warn("Unexpected return from Chimera: " + inputLine, e);
+               }
+               return new int[] { modelNumber, subModelNumber };
+       }
+
+       /**
+        * Parse the model number returned by Chimera and return the int value
+        */
+       // invoked by openModel in ChimeraManager
+       // line: #1, chain A: hiv-1 protease
+       public static int[] parseOpenedModelNumber(String inputLine) {
+               int hash = inputLine.indexOf('#');
+               int space = inputLine.indexOf(',', hash);
+               int decimal = inputLine.substring(hash + 1, space).indexOf('.');
+               // model number is between hash+1 and space
+               int modelNumber = -1;
+               int subModelNumber = 0;
+               try {
+                       if (decimal > 0) {
+                               subModelNumber = Integer.parseInt(inputLine.substring(decimal + hash + 2, space));
+                               space = decimal + hash + 1;
+                       }
+                       modelNumber = Integer.parseInt(inputLine.substring(hash + 1, space));
+               } catch (Exception e) {
+                       logger.warn("Unexpected return from Chimera: " + inputLine, e);
+               }
+               return new int[] { modelNumber, subModelNumber };
+       }
+
+       /**
+        * Parse the model identifier returned by Chimera and return the String value
+        */
+       // invoked by the ChimeraModel constructor
+       // line = model id #0 type Molecule name 1ert
+       public static String parseModelName(String inputLine) {
+               int start = inputLine.indexOf("name ");
+               if (start < 0)
+                       return null;
+               // Might get a quoted string (don't understand why, but there you have it)
+               if (inputLine.startsWith("\"", start + 5)) {
+                       start += 6; // Skip over the first quote
+                       int end = inputLine.lastIndexOf('"');
+                       if (end >= 1) {
+                               return inputLine.substring(start, end);
+                       } else
+                               return inputLine.substring(start);
+               } else {
+                       return inputLine.substring(start + 5);
+               }
+       }
+
+       public static Color parseModelColor(String inputLine) {
+               try {
+                       int colorStart = inputLine.indexOf("color ");
+                       String colorString = inputLine.substring(colorStart + 6);
+                       String[] rgbStrings = colorString.split(",");
+                       float[] rgbValues = new float[4];
+                       for (int i = 0; i < rgbStrings.length; i++) {
+                               Float f = new Float(rgbStrings[i]);
+                               rgbValues[i] = f.floatValue();
+                       }
+                       if (rgbStrings.length == 4) {
+                               return new Color(rgbValues[0], rgbValues[1], rgbValues[2], rgbValues[3]);
+                       } else {
+                               return new Color(rgbValues[0], rgbValues[1], rgbValues[2]);
+                       }
+               } catch (Exception ex) {
+                       logger.warn("Unexpected return from Chimera: " + inputLine, ex);
+               }
+               return Color.white;
+       }
+
+       /**
+        * Create the key to use for forming the model/submodel key into the modelHash
+        * 
+        * @param model
+        *            the model number
+        * @param subModel
+        *            the submodel number
+        * @return the model key as an Integer
+        */
+       public static Integer makeModelKey(int model, int subModel) {
+               return new Integer(model * MAX_SUB_MODELS + subModel);
+       }
+
+       // invoked by the getResdiue (parseConnectivityReplies in CreateStructureNetworkTask)
+       // atomSpec = #0:1.A or #1:96.B@N
+       public static ChimeraModel getModel(String atomSpec, ChimeraManager chimeraManager) {
+               // System.out.println("getting model for "+atomSpec);
+               String[] split = atomSpec.split(":");
+               // No model specified....
+               if (split[0].length() == 0) {
+                       logger.info("Unexpected return from Chimera: " + atomSpec);
+                       return null;
+               }
+               // System.out.println("model = "+split[0].substring(1));
+               int model = 0;
+               int submodel = 0;
+               try {
+                       String[] subSplit = split[0].substring(1).split("\\.");
+                       if (subSplit.length > 0)
+                               model = Integer.parseInt(subSplit[0]);
+                       else
+                               model = Integer.parseInt(split[0].substring(1));
+
+                       if (subSplit.length > 1)
+                               submodel = Integer.parseInt(subSplit[1]);
+               } catch (Exception e) {
+                       // ignore
+                       logger.warn("Unexpected return from Chimera: " + atomSpec, e);
+               }
+               return chimeraManager.getChimeraModel(model, submodel);
+       }
+
+       // invoked by the parseConnectivityReplies in CreateStructureNetworkTask
+       // atomSpec = #0:1.A or #1:96.B@N
+       public static ChimeraResidue getResidue(String atomSpec, ChimeraManager chimeraManager) {
+               // System.out.println("Getting residue from: "+atomSpec);
+               ChimeraModel model = getModel(atomSpec, chimeraManager); // Get the model
+               if (model == null) {
+                       model = chimeraManager.getChimeraModel();
+               }
+               return getResidue(atomSpec, model);
+       }
+
+       // invoked by the getResdiue (parseConnectivityReplies in CreateStructureNetworkTask)
+       // atomSpec = #0:1.A or #1:96.B@N
+       public static ChimeraResidue getResidue(String atomSpec, ChimeraModel model) {
+               // System.out.println("Getting residue from: "+atomSpec);
+               String[] split = atomSpec.split(":|@");
+
+               // Split into residue and chain
+               String[] residueChain = split[1].split("\\.");
+
+               if (residueChain[0].length() == 0) {
+                       logger.info("Unexpected return from Chimera: " + atomSpec);
+                       return null;
+               }
+
+               if (residueChain.length == 2 && residueChain[1].length() > 0) {
+                       ChimeraChain chain = model.getChain(residueChain[1]);
+                       return chain.getResidue(residueChain[0]);
+               }
+               return model.getResidue("_", residueChain[0]);
+       }
+
+       public static ChimeraChain getChain(String atomSpec, ChimeraModel model) {
+               String[] split = atomSpec.split(":|@");
+
+               // Split into residue and chain
+               String[] residueChain = split[1].split("\\.");
+               if (residueChain.length == 1) {
+                       logger.info("Unexpected return from Chimera: " + atomSpec);
+                       return null;
+               }
+               return model.getChain(residueChain[1]);
+       }
+
+       public static String getAtomName(String atomSpec) {
+               String[] split = atomSpec.split("@");
+               if (split.length > 1) {
+                       return split[1];
+               }
+               return atomSpec;
+       }
+
+       public static boolean isBackbone(String atom) {
+               if (atom.equals("C") || atom.equals("CA") || atom.equals("N") || atom.equals("O")
+                               || atom.equals("H"))
+                       return true;
+               return false;
+       }
+
+       public static String getIntSubtype(String node, String atom) {
+               String[] split = node.split("#| ");
+               String resType = "";
+               if (split.length == 2) {
+                       resType = split[0].trim().toUpperCase();
+               } else if (split.length == 3) {
+                       resType = split[1].trim().toUpperCase();
+               }
+               if (resType.equalsIgnoreCase("HOH") || resType.equalsIgnoreCase("WAT")) {
+                       return "water";
+               } else if (aaNames.containsKey(resType)) {
+                       if (atom.equals("C") || atom.equals("CA") || atom.equals("N") || atom.equals("O")
+                                       || atom.equals("H")) {
+                               return "mc";
+                       } else {
+                               return "sc";
+                       }
+               } else {
+                       return "other";
+               }
+       }
+
+
+       public static String[] getResKeyParts(String resKey) {
+               // [pdbID[.modelNo]#][residueID][.chainID]
+               // pdbID := 4-character code | "URL" | "path"
+               String[] resKeyParts = new String[4];
+               String[] split = resKey.split("#");
+               String resChain = null;
+               // if no "#" then it is either only a pdb id or a residue or a chain
+               if (split.length == 1) {
+                       // pdb id without model
+                       if (resKey.length() == 4 && resKey.indexOf("\\.") < 0) {
+                               parseModelID(resKey, resKeyParts);
+                       }
+                       // pdb link or file
+                       else if (resKey.startsWith("\"")) {
+                               parseModelID(resKey, resKeyParts);
+                       }
+                       // chain and residue or model and number
+                       else {
+                               String[] splitSplit = resKey.split("\\.");
+                               if (splitSplit.length == 1) {
+                                       // only a chain or a residue
+                                       resChain = resKey;
+                               } else {
+                                       try {
+                                               // pdb with a model
+                                               Integer.parseInt(splitSplit[1]);
+                                               parseModelID(resKey, resKeyParts);
+                                       } catch (NumberFormatException ex) {
+                                               // residue and chain
+                                               resChain = resKey;
+                                       }
+                               }
+                       }
+               } else if (split.length == 2) {
+                       // model and residue+chain
+                       parseModelID(split[0], resKeyParts);
+                       resChain = split[1];
+               } else {
+                       // model string with "#"
+                       // TODO: [Optional] Are there more possibilities?
+                       parseModelID(resKey.substring(0, resKey.lastIndexOf("#")), resKeyParts);
+                       resChain = resKey.substring(resKey.lastIndexOf("#") + 1, resKey.length());
+               }
+               if (resChain != null) {
+                       //System.out.println(resChain);
+                       String[] resChainSplit = resChain.split("\\.");
+                       if (resChainSplit.length == 1) {
+                               // TODO: [Optional] Find a better way to distinguish between chain and residue
+                               // if only one character and not an int, probably a chain
+                               if (resChainSplit[0].length() == 1) {
+                                       try {
+                                               Integer.parseInt(resChainSplit[0]);
+                                               resKeyParts[3] = resChainSplit[0];
+                                       } catch (NumberFormatException ex) {
+                                               resKeyParts[2] = resChainSplit[0];
+                                       }
+                               } else {
+                                       resKeyParts[3] = resChainSplit[0];
+                               }
+                       } else if (resChainSplit.length == 2) {
+                               resKeyParts[2] = resChainSplit[0];
+                               resKeyParts[3] = resChainSplit[1];
+                       } else {
+                               // too many dots?
+                               logger.info("Could not parse residue identifier: " + resKey);
+                       }
+               }
+               // String print = "";
+               // for (int i = 0; i < resKeyParts.length; i++) {
+               // if (resKeyParts[i] == null) {
+               // print += i + ": null\t";
+               // } else {
+               // print += i + ": " + resKeyParts[i] + ";";
+               // }
+               // }
+               // System.out.println(print);
+               return resKeyParts;
+       }
+
+       public static void parseModelID(String modelID, String[] resKeyParts) {
+               if (modelID.startsWith("\"")) {
+                       if (modelID.endsWith("\"")) {
+                               resKeyParts[0] = modelID.substring(1, modelID.length() - 1);
+                               return;
+                       } else {
+                               try {
+                                       Integer.parseInt(modelID.substring(modelID.lastIndexOf("\"") + 2,
+                                                       modelID.length()));
+                                       resKeyParts[0] = modelID.substring(0, modelID.lastIndexOf("\"") - 1);
+                                       resKeyParts[1] = modelID.substring(modelID.lastIndexOf("\"") + 2,
+                                                       modelID.length());
+                               } catch (NumberFormatException ex) {
+                                       resKeyParts[0] = modelID.substring(1);
+                               }
+                       }
+               } else {
+                       String[] modelIDNo = modelID.split("\\.");
+                       if (modelIDNo.length == 1) {
+                               resKeyParts[0] = modelIDNo[0];
+                       } else if (modelIDNo.length == 2) {
+                               try {
+                                       Integer.parseInt(modelIDNo[1]);
+                                       resKeyParts[0] = modelIDNo[0];
+                                       resKeyParts[1] = modelIDNo[1];
+                               } catch (NumberFormatException ex) {
+                                       resKeyParts[0] = modelID;
+                               }
+                       } else {
+                               logger.info("Could not parse model identifier: " + modelID);
+                       }
+               }
+       }
+
+       /**
+        * This method takes a Cytoscape attribute specification ([structure#][residue][.chainID]) and
+        * returns the lowest-level object referenced by the spec. For example, if the spec is "1tkk",
+        * this method will return a ChimeraModel. If the spec is ".A", it will return a ChimeraChain,
+        * etc.
+        * 
+        * @param attrSpec
+        *            the specification string
+        * @param chimeraManager
+        *            the Chimera object we're currently using
+        * @return a ChimeraStructuralObject of the lowest type
+        */
+       public static ChimeraStructuralObject fromAttributeOld(String attrSpec,
+                       ChimeraManager chimeraManager) {
+               if (attrSpec == null || attrSpec.indexOf(',') > 0 || attrSpec.indexOf('-') > 0) {
+                       // No support for either lists or ranges
+                       logger.warn("No support for identifier: " + attrSpec);
+                       return null;
+               }
+
+               String residue = null;
+               String model = null;
+               String chain = null;
+
+               ChimeraModel chimeraModel = null;
+               ChimeraChain chimeraChain = null;
+               ChimeraResidue chimeraResidue = null;
+
+               // System.out.println("Getting object from attribute: "+attrSpec);
+               try {
+                       String[] split = attrSpec.split("#");
+                       String resChain = null;
+                       if (split.length == 1) {
+                               // no model
+                               resChain = split[0];
+                       } else if (split.length == 2) {
+                               // model and rest
+                               model = split[0];
+                               resChain = split[1];
+                       } else {
+                               // model string with "#"
+                               model = attrSpec.substring(0, attrSpec.lastIndexOf("#"));
+                               resChain = attrSpec.substring(attrSpec.lastIndexOf("#") + 1, attrSpec.length());
+                       }
+                       if (resChain != null) {
+                               String[] resChainSplit = resChain.split("\\.");
+                               if (resChainSplit.length == 1) {
+                                       residue = resChainSplit[0];
+                               } else if (resChainSplit.length == 2) {
+                                       residue = resChainSplit[0];
+                                       chain = resChainSplit[1];
+                               } else {
+                                       // too many dots?
+                                       logger.warn("No support for identifier: " + attrSpec);
+                               }
+                       }
+
+                       // if (split.length == 1) {
+                       // // No model
+                       // residue = split[0];
+                       // } else if (split.length == 3) {
+                       // // We have all three
+                       // model = split[0];
+                       // residue = split[1];
+                       // chain = split[2];
+                       // } else if (split.length == 2 && attrSpec.indexOf('#') > 0) {
+                       // // Model and Residue
+                       // model = split[0];
+                       // residue = split[1];
+                       // } else {
+                       // // Residue and Chain
+                       // residue = split[0];
+                       // chain = split[1];
+                       // }
+
+                       // System.out.println("model = " + model + " chain = " + chain + " residue = " +
+                       // residue);
+                       if (model != null) {
+                               List<ChimeraModel> models = chimeraManager.getChimeraModels(model,
+                                               ModelType.PDB_MODEL);
+                               if (models.size() == 1) {
+                                       chimeraModel = models.get(0);
+                               } else {
+                                       try {
+                                               chimeraModel = chimeraManager.getChimeraModel(Integer.valueOf(model), 0);
+                                       } catch (NumberFormatException ex) {
+                                               // ignore
+                                       }
+                               }
+                       }
+                       if (chimeraModel == null) {
+                               chimeraModel = chimeraManager.getChimeraModel();
+                       }
+                       // System.out.println("ChimeraModel = " + chimeraModel);
+
+                       if (chain != null) {
+                               chimeraChain = chimeraModel.getChain(chain);
+                               // System.out.println("ChimeraChain = " + chimeraChain);
+                       }
+                       if (residue != null) {
+                               if (chimeraChain != null) {
+                                       chimeraResidue = chimeraChain.getResidue(residue);
+                               } else {
+                                       chimeraResidue = chimeraModel.getResidue("_", residue);
+                               }
+                               // System.out.println("ChimeraResidue = " + chimeraResidue);
+                       }
+
+                       if (chimeraResidue != null)
+                               return chimeraResidue;
+
+                       if (chimeraChain != null)
+                               return chimeraChain;
+
+                       if (chimeraModel != null)
+                               return chimeraModel;
+
+               } catch (Exception ex) {
+                       logger.warn("Could not parse residue identifier: " + attrSpec, ex);
+               }
+               return null;
+       }
+
+       public static ChimeraStructuralObject fromAttribute(String attrSpec,
+                       ChimeraManager chimeraManager) {
+               // TODO: Make sure it is OK to remove this: || attrSpec.indexOf('-') > 0
+               if (attrSpec == null || attrSpec.indexOf(',') > 0) {
+                       // No support for either lists or ranges
+                       // System.out.println("No support for identifier: " + attrSpec);
+                       logger.warn("No support for identifier: " + attrSpec);
+                       return null;
+               }
+               String[] modelIDNoResChain = getResKeyParts(attrSpec);
+
+               ChimeraModel chimeraModel = null;
+               ChimeraChain chimeraChain = null;
+               ChimeraResidue chimeraResidue = null;
+
+               // System.out.println("Getting object from attribute: "+attrSpec);
+               try {
+                       if (modelIDNoResChain[0] != null) {
+                               String modelID = modelIDNoResChain[0];
+                               List<ChimeraModel> models = chimeraManager.getChimeraModels(modelID,
+                                               ModelType.PDB_MODEL);
+                               if (models.size() == 1) { // usual case with only one model
+                                       chimeraModel = models.get(0);
+                               } else if (models.size() > 1 && modelIDNoResChain[1] != null) {
+                                       // there are several submodels
+                                       try {
+                                               int modelNo = Integer.valueOf(modelIDNoResChain[1]);
+                                               for (ChimeraModel model : models) {
+                                                       if (model.getSubModelNumber() == modelNo) {
+                                                               chimeraModel = model;
+                                                               break;
+                                                       }
+                                               }
+                                       } catch (NumberFormatException ex) {
+                                               // ignore
+                                       }
+                               } else {
+                                       // TODO: [Optional] What is this doing?
+                                       try {
+                                               chimeraModel = chimeraManager.getChimeraModel(Integer.valueOf(modelID), 0);
+                                       } catch (NumberFormatException ex) {
+                                               // ignore
+                                       }
+                               }
+                       }
+                       if (chimeraModel == null) {
+                               // TODO: [Optional] Find a better way to handle this case
+                               // If no model can be matched, continue
+                               // System.out.println("No matching model could be find for " + attrSpec);
+                               return null;
+                               // chimeraModel = chimeraManager.getChimeraModel();
+                               // logger.warn("No matching model could be find for " + attrSpec + ". Trying with "
+                               // + chimeraModel.toSpec());
+                       }
+                       // System.out.println("ChimeraModel = " + chimeraModel);
+
+                       if (modelIDNoResChain[3] != null) {
+                               chimeraChain = chimeraModel.getChain(modelIDNoResChain[3]);
+                               // System.out.println("ChimeraChain = " + chimeraChain);
+                       }
+                       if (modelIDNoResChain[2] != null) {
+                               String residue = modelIDNoResChain[2];
+                               if (chimeraChain != null) {
+                                       chimeraResidue = chimeraChain.getResidue(residue);
+                               } else if (chimeraModel.getChain("_") != null) {
+                                       chimeraResidue = chimeraModel.getResidue("_", residue);
+                               } else if (chimeraModel.getChainCount() == 1) {
+                                       chimeraResidue = chimeraModel.getResidue(chimeraModel.getChainNames()
+                                                       .iterator().next(), residue);
+                               }
+                               // System.out.println("ChimeraResidue = " + chimeraResidue);
+                       }
+
+                       if (chimeraResidue != null)
+                               return chimeraResidue;
+
+                       if (chimeraChain != null)
+                               return chimeraChain;
+
+                       if (chimeraModel != null)
+                               return chimeraModel;
+
+               } catch (Exception ex) {
+                       // System.out.println("Could not parse chimera identifier: " +
+                       // attrSpec+"("+ex.getMessage()+")");
+                       logger.warn("Could not parse chimera identifier: " + attrSpec, ex);
+               }
+               return null;
+       }
+
+       /**
+        * Search for structure references in the residue list
+        * 
+        * @param residueList
+        *            the list of residues
+        * @return a concatenated list of structures encoded in the list
+        */
+       public static String findStructures(String residueList) {
+               if (residueList == null)
+                       return null;
+               String[] residues = residueList.split(",");
+               Map<String, String> structureNameMap = new HashMap<String, String>();
+               for (int i = 0; i < residues.length; i++) {
+                       String[] components = residues[i].split("#");
+                       if (components.length > 1) {
+                               structureNameMap.put(components[0], components[1]);
+                       }
+               }
+               if (structureNameMap.isEmpty())
+                       return null;
+
+               String structure = null;
+               for (String struct : structureNameMap.keySet()) {
+                       if (structure == null)
+                               structure = new String();
+                       else
+                               structure = structure.concat(",");
+                       structure = structure.concat(struct);
+               }
+               return structure;
+       }
+
+       // invoked by openStructures in StructureManager
+       public static List<String> parseFuncRes(List<String> residueNames, String modelName) {
+               List<String> resRanges = new ArrayList<String>();
+               for (int i = 0; i < residueNames.size(); i++) {
+                       String residue = residueNames.get(i);
+                       // Parse out the structure, if there is one
+                       String[] components = residue.split("#");
+                       if (components.length > 1 && !modelName.equals(components[0])) {
+                               continue;
+                       } else if (components.length > 1) {
+                               residue = components[1];
+                       } else if (components.length == 1) {
+                               residue = components[0];
+                       }
+                       // Check to see if we have a range-spec
+                       String resRange = "";
+                       if (residue == null || residue.equals("") || residue.length() == 0) {
+                               continue;
+                       }
+                       String[] range = residue.split("-", 2);
+                       String chain = null;
+                       for (int res = 0; res < range.length; res++) {
+                               if (res == 1) {
+                                       resRange = resRange.concat("-");
+                                       if (chain != null && range[res].indexOf('.') == -1)
+                                               range[res] = range[res].concat("." + chain);
+                               }
+
+                               if (res == 0 && range.length >= 2 && range[res].indexOf('.') > 0) {
+                                       // This is a range spec with the leading residue containing a chain spec
+                                       String[] resChain = range[res].split("\\.");
+                                       chain = resChain[1];
+                                       range[res] = resChain[0];
+                               }
+                               // Fix weird SFLD syntax...
+                               if (range[res].indexOf('|') > 0 && Character.isDigit(range[res].charAt(0))) {
+                                       int offset = range[res].indexOf('|');
+                                       String str = range[res].substring(offset + 1) + range[res].substring(0, offset);
+                                       range[res] = str;
+                               }
+
+                               // Convert to legal atom-spec
+                               if (Character.isDigit(range[res].charAt(0))) {
+                                       resRange = resRange.concat(range[res]);
+                               } else if (Character.isDigit(range[res].charAt(1))) {
+                                       resRange = resRange.concat(range[res].substring(1));
+                               } else if (range[res].charAt(0) == '.') {
+                                       // Do we have a chain spec?
+                                       resRange = resRange.concat(range[res]);
+                               } else {
+                                       resRange = resRange.concat(range[res].substring(3));
+                               }
+                       }
+                       if (!resRanges.contains(resRange)) {
+                               resRanges.add(resRange);
+                       }
+               }
+               return resRanges;
+       }
+
+       static {
+               aaNames = new HashMap<String, String>();
+               aaNames.put("ALA", "A Ala Alanine N[C@@H](C)C(O)=O");
+               aaNames.put("ARG", "R Arg Arginine N[C@@H](CCCNC(N)=N)C(O)=O");
+               aaNames.put("ASN", "N Asn Asparagine N[C@@H](CC(N)=O)C(O)=O");
+               aaNames.put("ASP", "D Asp Aspartic_acid N[C@@H](CC(O)=O)C(O)=O");
+               aaNames.put("CYS", "C Cys Cysteine N[C@@H](CS)C(O)=O");
+               aaNames.put("GLN", "Q Gln Glutamine N[C@H](C(O)=O)CCC(N)=O");
+               aaNames.put("GLU", "E Glu Glumatic_acid N[C@H](C(O)=O)CCC(O)=O");
+               aaNames.put("GLY", "G Gly Glycine NCC(O)=O");
+               aaNames.put("HIS", "H His Histidine N[C@@H](CC1=CN=CN1)C(O)=O");
+               aaNames.put("ILE", "I Ile Isoleucine N[C@]([C@H](C)CC)([H])C(O)=O");
+               aaNames.put("LEU", "L Leu Leucine N[C@](CC(C)C)([H])C(O)=O");
+               aaNames.put("LYS", "K Lys Lysine N[C@](CCCCN)([H])C(O)=O");
+               aaNames.put("DLY", "K Dly D-Lysine NCCCC[C@@H](N)C(O)=O");
+               aaNames.put("MET", "M Met Methionine N[C@](CCSC)([H])C(O)=O");
+               aaNames.put("PHE", "F Phe Phenylalanine N[C@](CC1=CC=CC=C1)([H])C(O)=O");
+               aaNames.put("PRO", "P Pro Proline OC([C@@]1([H])NCCC1)=O");
+               aaNames.put("SER", "S Ser Serine OC[C@](C(O)=O)([H])N");
+               aaNames.put("THR", "T Thr Threonine O[C@H](C)[C@](C(O)=O)([H])N");
+               aaNames.put("TRP", "W Trp Tryptophan N[C@@]([H])(CC1=CN([H])C2=C1C=CC=C2)C(O)=O");
+               aaNames.put("TYR", "Y Tyr Tyrosine N[C@@](C(O)=O)([H])CC1=CC=C(O)C=C1");
+               aaNames.put("VAL", "V Val Valine N[C@@](C(O)=O)([H])C(C)C");
+               aaNames.put("ASX", "B Asx Aspartic_acid_or_Asparagine");
+               aaNames.put("GLX", "Z Glx Glutamine_or_Glutamic_acid");
+               aaNames.put("XAA", "X Xaa Any_or_unknown_amino_acid");
+               aaNames.put("HOH", "HOH HOH Water [H]O[H]");
+       }
+
+       /**
+        * Convert the amino acid type to a full name
+        * 
+        * @param aaType
+        *            the residue type to convert
+        * @return the full name of the residue
+        */
+       public static String toFullName(String aaType) {
+               if (!aaNames.containsKey(aaType))
+                       return aaType;
+               String[] ids = ((String) aaNames.get(aaType)).split(" ");
+               return ids[2].replace('_', ' ');
+       }
+
+       /**
+        * Convert the amino acid type to a single letter
+        * 
+        * @param aaType
+        *            the residue type to convert
+        * @return the single letter representation of the residue
+        */
+       public static String toSingleLetter(String aaType) {
+               if (!aaNames.containsKey(aaType))
+                       return aaType;
+               String[] ids = ((String) aaNames.get(aaType)).split(" ");
+               return ids[0];
+       }
+
+       /**
+        * Convert the amino acid type to three letters
+        * 
+        * @param aaType
+        *            the residue type to convert
+        * @return the three letter representation of the residue
+        */
+       public static String toThreeLetter(String aaType) {
+               if (!aaNames.containsKey(aaType))
+                       return aaType;
+               String[] ids = ((String) aaNames.get(aaType)).split(" ");
+               return ids[1];
+       }
+
+       /**
+        * Convert the amino acid type to its SMILES string
+        * 
+        * @param aaType
+        *            the residue type to convert
+        * @return the SMILES representation of the residue
+        */
+       public static String toSMILES(String aaType) {
+               if (!aaNames.containsKey(aaType))
+                       return null;
+               String[] ids = ((String) aaNames.get(aaType)).split(" ");
+               if (ids.length < 4)
+                       return null;
+               return ids[3];
+       }
+
+       public static String getAlignName(ChimeraStructuralObject chimObj) {
+               String name = chimObj.getChimeraModel().toString();
+               if (chimObj instanceof ChimeraChain) {
+                       name = ((ChimeraChain) chimObj).toString() + " [" + name + "]";
+               }
+               return name;
+       }
+}
diff --git a/src/ext/edu/ucsf/rbvi/strucviz2/ChimeraChain.java b/src/ext/edu/ucsf/rbvi/strucviz2/ChimeraChain.java
new file mode 100644 (file)
index 0000000..92193f2
--- /dev/null
@@ -0,0 +1,330 @@
+/* vim: set ts=2: */
+/**
+ * Copyright (c) 2006 The Regents of the University of California.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *   1. Redistributions of source code must retain the above copyright
+ *      notice, this list of conditions, and the following disclaimer.
+ *   2. Redistributions in binary form must reproduce the above
+ *      copyright notice, this list of conditions, and the following
+ *      disclaimer in the documentation and/or other materials provided
+ *      with the distribution.
+ *   3. Redistributions must acknowledge that this software was
+ *      originally developed by the UCSF Computer Graphics Laboratory
+ *      under support by the NIH National Center for Research Resources,
+ *      grant P41-RR01081.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER "AS IS" AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
+ * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
+ * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+ * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
+ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+package ext.edu.ucsf.rbvi.strucviz2;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+import java.util.TreeMap;
+
+/**
+ * This class provides the implementation for the ChimeraChain object
+ * 
+ * @author scooter
+ * 
+ */
+// TODO: [Optional] Implement toAttr() method
+public class ChimeraChain implements ChimeraStructuralObject {
+
+       /**
+        * The model/subModel number this chain is a part of
+        */
+       private int modelNumber;
+       private int subModelNumber;
+
+       /**
+        * A pointer to the model this chain is a part of
+        */
+       private ChimeraModel chimeraModel;
+
+       /**
+        * The chainID (from the PDB record)
+        */
+       private String chainId;
+
+       /**
+        * The residues that are part of this chain
+        */
+       private TreeMap<String, ChimeraResidue> residueMap;
+
+       /**
+        * userData to associate with this chain
+        */
+       private Object userData;
+
+       /**
+        * Flag to indicate the selection state
+        */
+       private boolean selected = false;
+
+       /**
+        * Constructor to create a new ChimeraChain
+        * 
+        * @param model
+        *          the model number this chain is part of
+        * @param subModel
+        *          the subModel number this chain is part of
+        * @param chainId
+        *          the chain ID for this chain
+        */
+       public ChimeraChain(int model, int subModel, String chainId) {
+               this.modelNumber = model;
+               this.subModelNumber = subModel;
+               this.chainId = chainId;
+               residueMap = new TreeMap<String, ChimeraResidue>();
+       }
+
+       /**
+        * set the selected state of this chain
+        * 
+        * @param selected
+        *          a boolean to set the selected state to
+        */
+       public void setSelected(boolean selected) {
+               this.selected = selected;
+       }
+
+       /**
+        * return the selected state of this chain
+        * 
+        * @return the selected state
+        */
+       public boolean isSelected() {
+               return selected;
+       }
+
+       public boolean hasSelectedChildren() {
+               if (selected) {
+                       return true;
+               } else {
+                       for (ChimeraResidue residue : getResidues()) {
+                               if (residue.isSelected())
+                                       return true;
+                       }
+               }
+               return false;
+       }
+
+       /**
+        * Return the list of selected residues
+        * 
+        * @return all selected residues
+        */
+       public List<ChimeraResidue> getSelectedResidues() {
+               List<ChimeraResidue> residueList = new ArrayList<ChimeraResidue>();
+               if (selected) {
+                       residueList.addAll(getResidues());
+               } else {
+                       for (ChimeraResidue residue : getResidues()) {
+                               if (residue.isSelected())
+                                       residueList.add(residue);
+                       }
+               }
+               return residueList;
+       }
+
+       /**
+        * Add a residue to the chain.
+        * 
+        * @param residue
+        *          the ChimeraResidue to add to the chain.
+        */
+       public void addResidue(ChimeraResidue residue) {
+               String index = residue.getIndex();
+               // Put it in our map so that we can return it in order
+               residueMap.put(index, residue);
+       }
+
+       /**
+        * Return the list of residues in this chain in pdb residue order
+        * 
+        * @return a Collection of residues in residue order
+        */
+       public Collection<ChimeraResidue> getResidues() {
+               return residueMap.values();
+       }
+
+       /**
+        * Return the list of residues in this chain as a list
+        * 
+        * @return List of residues
+        */
+       public List<ChimeraStructuralObject> getChildren() {
+               return new ArrayList<ChimeraStructuralObject>(residueMap.values());
+       }
+
+       /**
+        * Get a specific residue
+        * 
+        * @param residueIndex
+        *          String representation of the residue index
+        * @return the ChimeraResidue represented by the residueIndex
+        */
+       public ChimeraResidue getResidue(String index) {
+               // Integer index = new Integer(residueIndex);
+               if (residueMap.containsKey(index))
+                       return residueMap.get(index);
+               return null;
+       }
+
+       /**
+        * Get a list of residues as a residue range
+        * 
+        * @param residueRange
+        *          String representation of the residue range
+        * @return the List of ChimeraResidues represented by the range
+        */
+       public List<ChimeraResidue> getResidueRange(String residueRange) {
+               String[] range = residueRange.split("-", 2);
+               if (range[1] == null || range[1].length() == 0) {
+                       range[1] = range[0];
+               }
+               List<ChimeraResidue> resultRange = new ArrayList<ChimeraResidue>();
+               int start = Integer.parseInt(range[0]);
+               int end = Integer.parseInt(range[1]);
+               for (int i = start; i <= end; i++) {
+                       String index = String.valueOf(i);
+                       if (residueMap.containsKey(index))
+                               resultRange.add(residueMap.get(index));
+               }
+               return resultRange;
+       }
+
+       /**
+        * Get the ID for this chain
+        * 
+        * @return String value of the chainId
+        */
+       public String getChainId() {
+               return chainId;
+       }
+
+       /**
+        * Get the model number for this chain
+        * 
+        * @return the model number
+        */
+       public int getModelNumber() {
+               return modelNumber;
+       }
+
+       /**
+        * Get the sub-model number for this chain
+        * 
+        * @return the sub-model number
+        */
+       public int getSubModelNumber() {
+               return subModelNumber;
+       }
+
+       /**
+        * Return a string representation of this chain as follows: Chain <i>chainId</i>
+        * (<i>residue_count</i> residues)
+        * 
+        * @return String representation of chain
+        */
+       public String displayName() {
+               if (chainId.equals("_")) {
+                       return ("Chain (no ID) (" + getResidueCount() + " residues)");
+               } else {
+                       return ("Chain " + chainId + " (" + getResidueCount() + " residues)");
+               }
+       }
+
+       /**
+        * Return a string representation of this chain as follows: Node xxx [Model yyyy Chain
+        * <i>chainId</i>]
+        * 
+        * @return String representation of chain
+        */
+       public String toString() {
+               String displayName = chimeraModel.getModelName();
+               if (displayName.length() > 14)
+                       displayName = displayName.substring(0, 13) + "...";
+               if (chainId.equals("_")) {
+                       return (displayName + " Chain (no ID) (" + getResidueCount() + " residues)");
+               } else {
+                       return (displayName + " Chain " + chainId + " (" + getResidueCount() + " residues)");
+               }
+       }
+
+       /**
+        * Return the Chimera specification for this chain
+        * 
+        * @return Chimera specification
+        */
+       public String toSpec() {
+               if (chainId.equals("_")) {
+                       return ("#" + modelNumber + "." + subModelNumber + ":.");
+               } else {
+                       return ("#" + modelNumber + "." + subModelNumber + ":." + chainId);
+               }
+       }
+
+       /**
+        * Return the number of residues in this chain
+        * 
+        * @return integer number of residues
+        */
+       public int getResidueCount() {
+               return residueMap.size();
+       }
+
+       /**
+        * Set the ChimeraModel for this chain
+        * 
+        * @param model
+        *          ChimeraModel to associate with this chain
+        */
+       public void setChimeraModel(ChimeraModel model) {
+               this.chimeraModel = model;
+       }
+
+       /**
+        * Get the ChimeraModel for this chain
+        * 
+        * @return ChimeraModel associated with this chain
+        */
+       public ChimeraModel getChimeraModel() {
+               return chimeraModel;
+       }
+
+       /**
+        * Get the user data for this Chain
+        * 
+        * @return user data
+        */
+       public Object getUserData() {
+               return userData;
+       }
+
+       /**
+        * Set the user data for this Chain
+        * 
+        * @param data
+        *          the user data to associate with this chain
+        */
+       public void setUserData(Object data) {
+               this.userData = data;
+       }
+}
diff --git a/src/ext/edu/ucsf/rbvi/strucviz2/ChimeraManager.java b/src/ext/edu/ucsf/rbvi/strucviz2/ChimeraManager.java
new file mode 100644 (file)
index 0000000..c0b3a39
--- /dev/null
@@ -0,0 +1,699 @@
+package ext.edu.ucsf.rbvi.strucviz2;
+
+import java.awt.Color;
+import java.io.File;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import ext.edu.ucsf.rbvi.strucviz2.StructureManager.ModelType;
+import ext.edu.ucsf.rbvi.strucviz2.port.ListenerThreads;
+
+/**
+ * This object maintains the Chimera communication information.
+ */
+public class ChimeraManager
+{
+
+  private Process chimera;
+
+  private ListenerThreads chimeraListenerThreads;
+
+  private Map<Integer, ChimeraModel> currentModelsMap;
+
+  private Logger logger = LoggerFactory
+          .getLogger(ext.edu.ucsf.rbvi.strucviz2.ChimeraManager.class);
+
+  private StructureManager structureManager;
+
+  public ChimeraManager(StructureManager structureManager)
+  {
+    this.structureManager = structureManager;
+    chimera = null;
+    chimeraListenerThreads = null;
+    currentModelsMap = new HashMap<Integer, ChimeraModel>();
+
+  }
+
+  public List<ChimeraModel> getChimeraModels(String modelName)
+  {
+    List<ChimeraModel> models = getChimeraModels(modelName,
+            ModelType.PDB_MODEL);
+    models.addAll(getChimeraModels(modelName, ModelType.SMILES));
+    return models;
+  }
+
+  public List<ChimeraModel> getChimeraModels(String modelName,
+          ModelType modelType)
+  {
+    List<ChimeraModel> models = new ArrayList<ChimeraModel>();
+    for (ChimeraModel model : currentModelsMap.values())
+    {
+      if (modelName.equals(model.getModelName())
+              && modelType.equals(model.getModelType()))
+      {
+        models.add(model);
+      }
+    }
+    return models;
+  }
+
+  public Map<String, List<ChimeraModel>> getChimeraModelsMap()
+  {
+    Map<String, List<ChimeraModel>> models = new HashMap<String, List<ChimeraModel>>();
+    for (ChimeraModel model : currentModelsMap.values())
+    {
+      String modelName = model.getModelName();
+      if (!models.containsKey(modelName))
+      {
+        models.put(modelName, new ArrayList<ChimeraModel>());
+      }
+      if (!models.get(modelName).contains(model))
+      {
+        models.get(modelName).add(model);
+      }
+    }
+    return models;
+  }
+
+  public ChimeraModel getChimeraModel(Integer modelNumber,
+          Integer subModelNumber)
+  {
+    Integer key = ChimUtils.makeModelKey(modelNumber, subModelNumber);
+    if (currentModelsMap.containsKey(key))
+    {
+      return currentModelsMap.get(key);
+    }
+    return null;
+  }
+
+  public ChimeraModel getChimeraModel()
+  {
+    return currentModelsMap.values().iterator().next();
+  }
+
+  public Collection<ChimeraModel> getChimeraModels()
+  {
+    // this method is invoked by the model navigator dialog
+    return currentModelsMap.values();
+  }
+
+  public int getChimeraModelsCount(boolean smiles)
+  {
+    // this method is invokes by the model navigator dialog
+    int counter = currentModelsMap.size();
+    if (smiles)
+    {
+      return counter;
+    }
+
+    for (ChimeraModel model : currentModelsMap.values())
+    {
+      if (model.getModelType() == ModelType.SMILES)
+      {
+        counter--;
+      }
+    }
+    return counter;
+  }
+
+  public boolean hasChimeraModel(Integer modelNubmer)
+  {
+    return hasChimeraModel(modelNubmer, 0);
+  }
+
+  public boolean hasChimeraModel(Integer modelNubmer, Integer subModelNumber)
+  {
+    return currentModelsMap.containsKey(ChimUtils.makeModelKey(modelNubmer,
+            subModelNumber));
+  }
+
+  public void addChimeraModel(Integer modelNumber, Integer subModelNumber,
+          ChimeraModel model)
+  {
+    currentModelsMap.put(
+            ChimUtils.makeModelKey(modelNumber, subModelNumber), model);
+  }
+
+  public void removeChimeraModel(Integer modelNumber, Integer subModelNumber)
+  {
+    int modelKey = ChimUtils.makeModelKey(modelNumber, subModelNumber);
+    if (currentModelsMap.containsKey(modelKey))
+    {
+      currentModelsMap.remove(modelKey);
+    }
+  }
+
+  public List<ChimeraModel> openModel(String modelPath, ModelType type)
+  {
+    logger.info("chimera open " + modelPath);
+    stopListening();
+    List<String> response = null;
+    // TODO: [Optional] Handle modbase models
+    if (type == ModelType.MODBASE_MODEL)
+    {
+      response = sendChimeraCommand("open modbase:" + modelPath, true);
+      // } else if (type == ModelType.SMILES) {
+      // response = sendChimeraCommand("open smiles:" + modelName, true);
+      // modelName = "smiles:" + modelName;
+    }
+    else
+    {
+      response = sendChimeraCommand("open " + modelPath, true);
+    }
+    if (response == null)
+    {
+      // something went wrong
+      logger.warn("Could not open " + modelPath);
+      return null;
+    }
+    List<ChimeraModel> models = new ArrayList<ChimeraModel>();
+    int[] modelNumbers = null;
+    if (type == ModelType.PDB_MODEL)
+    {
+      for (String line : response)
+      {
+        if (line.startsWith("#"))
+        {
+          modelNumbers = ChimUtils.parseOpenedModelNumber(line);
+          if (modelNumbers != null)
+          {
+            int modelNumber = ChimUtils.makeModelKey(modelNumbers[0],
+                    modelNumbers[1]);
+            if (currentModelsMap.containsKey(modelNumber))
+            {
+              continue;
+            }
+            String modelName = modelPath;
+            // TODO: [Optional] Convert path to name in a better way
+            if (modelPath.lastIndexOf(File.separator) > 0)
+            {
+              modelName = modelPath.substring(modelPath
+                      .lastIndexOf(File.separator) + 1);
+            }
+            else if (modelPath.lastIndexOf("/") > 0)
+            {
+              modelName = modelPath
+                      .substring(modelPath.lastIndexOf("/") + 1);
+            }
+            ChimeraModel newModel = new ChimeraModel(modelName, type,
+                    modelNumbers[0], modelNumbers[1]);
+            currentModelsMap.put(modelNumber, newModel);
+            models.add(newModel);
+            modelNumbers = null;
+          }
+        }
+      }
+    }
+    else
+    {
+      // TODO: [Optional] Open smiles from file would fail. Do we need it?
+      // If parsing fails, iterate over all open models to get the right one
+      List<ChimeraModel> openModels = getModelList();
+      for (ChimeraModel openModel : openModels)
+      {
+        String openModelName = openModel.getModelName();
+        if (openModelName.endsWith("..."))
+        {
+          openModelName = openModelName.substring(0,
+                  openModelName.length() - 3);
+        }
+        if (modelPath.startsWith(openModelName))
+        {
+          openModel.setModelName(modelPath);
+          int modelNumber = ChimUtils
+                  .makeModelKey(openModel.getModelNumber(),
+                          openModel.getSubModelNumber());
+          if (!currentModelsMap.containsKey(modelNumber))
+          {
+            currentModelsMap.put(modelNumber, openModel);
+            models.add(openModel);
+          }
+        }
+      }
+    }
+
+    // assign color and residues to open models
+    for (ChimeraModel newModel : models)
+    {
+      // get model color
+      Color modelColor = getModelColor(newModel);
+      if (modelColor != null)
+      {
+        newModel.setModelColor(modelColor);
+      }
+
+      // Get our properties (default color scheme, etc.)
+      // Make the molecule look decent
+      // chimeraSend("repr stick "+newModel.toSpec());
+
+      // Create the information we need for the navigator
+      if (type != ModelType.SMILES)
+      {
+        addResidues(newModel);
+      }
+    }
+
+    sendChimeraCommand("focus", false);
+    startListening();
+    return models;
+  }
+
+  public void closeModel(ChimeraModel model)
+  {
+    // int model = structure.modelNumber();
+    // int subModel = structure.subModelNumber();
+    // Integer modelKey = makeModelKey(model, subModel);
+    stopListening();
+    logger.info("chimera close model " + model.getModelName());
+    if (currentModelsMap.containsKey(ChimUtils.makeModelKey(
+            model.getModelNumber(), model.getSubModelNumber())))
+    {
+      sendChimeraCommand("close " + model.toSpec(), false);
+      // currentModelNamesMap.remove(model.getModelName());
+      currentModelsMap.remove(ChimUtils.makeModelKey(
+              model.getModelNumber(), model.getSubModelNumber()));
+      // selectionList.remove(chimeraModel);
+    }
+    else
+    {
+      logger.warn("Could not find model " + model.getModelName()
+              + " to close.");
+    }
+    startListening();
+  }
+
+  public void startListening()
+  {
+    sendChimeraCommand("listen start models; listen start select", false);
+  }
+
+  public void stopListening()
+  {
+    sendChimeraCommand("listen stop models; listen stop select", false);
+  }
+
+  /**
+   * Select something in Chimera
+   * 
+   * @param command
+   *          the selection command to pass to Chimera
+   */
+  public void select(String command)
+  {
+    sendChimeraCommand("listen stop select; " + command
+            + "; listen start select", false);
+  }
+
+  public void focus()
+  {
+    sendChimeraCommand("focus", false);
+  }
+
+  public void clearOnChimeraExit()
+  {
+    chimera = null;
+    currentModelsMap.clear();
+    chimeraListenerThreads = null;
+    structureManager.clearOnChimeraExit();
+  }
+
+  public void exitChimera()
+  {
+    if (isChimeraLaunched() && chimera != null)
+    {
+      sendChimeraCommand("stop really", false);
+      try
+      {
+        chimera.destroy();
+      } catch (Exception ex)
+      {
+        // ignore
+      }
+    }
+    clearOnChimeraExit();
+  }
+
+  public Map<Integer, ChimeraModel> getSelectedModels()
+  {
+    Map<Integer, ChimeraModel> selectedModelsMap = new HashMap<Integer, ChimeraModel>();
+    List<String> chimeraReply = sendChimeraCommand(
+            "list selection level molecule", true);
+    if (chimeraReply != null)
+    {
+      for (String modelLine : chimeraReply)
+      {
+        ChimeraModel chimeraModel = new ChimeraModel(modelLine);
+        Integer modelKey = ChimUtils.makeModelKey(
+                chimeraModel.getModelNumber(),
+                chimeraModel.getSubModelNumber());
+        selectedModelsMap.put(modelKey, chimeraModel);
+      }
+    }
+    return selectedModelsMap;
+  }
+
+  public List<String> getSelectedResidueSpecs()
+  {
+    List<String> selectedResidues = new ArrayList<String>();
+    List<String> chimeraReply = sendChimeraCommand(
+            "list selection level residue", true);
+    if (chimeraReply != null)
+    {
+      for (String inputLine : chimeraReply)
+      {
+        String[] inputLineParts = inputLine.split("\\s+");
+        if (inputLineParts.length == 5)
+        {
+          selectedResidues.add(inputLineParts[2]);
+        }
+      }
+    }
+    return selectedResidues;
+  }
+
+  public void getSelectedResidues(
+          Map<Integer, ChimeraModel> selectedModelsMap)
+  {
+    List<String> chimeraReply = sendChimeraCommand(
+            "list selection level residue", true);
+    if (chimeraReply != null)
+    {
+      for (String inputLine : chimeraReply)
+      {
+        ChimeraResidue r = new ChimeraResidue(inputLine);
+        Integer modelKey = ChimUtils.makeModelKey(r.getModelNumber(),
+                r.getSubModelNumber());
+        if (selectedModelsMap.containsKey(modelKey))
+        {
+          ChimeraModel model = selectedModelsMap.get(modelKey);
+          model.addResidue(r);
+        }
+      }
+    }
+  }
+
+  /**
+   * Return the list of ChimeraModels currently open. Warning: if smiles model
+   * name too long, only part of it with "..." is printed.
+   * 
+   * 
+   * @return List of ChimeraModel's
+   */
+  // TODO: [Optional] Handle smiles names in a better way in Chimera?
+  public List<ChimeraModel> getModelList()
+  {
+    List<ChimeraModel> modelList = new ArrayList<ChimeraModel>();
+    List<String> list = sendChimeraCommand("list models type molecule",
+            true);
+    if (list != null)
+    {
+      for (String modelLine : list)
+      {
+        ChimeraModel chimeraModel = new ChimeraModel(modelLine);
+        modelList.add(chimeraModel);
+      }
+    }
+    return modelList;
+  }
+
+  /**
+   * Return the list of depiction presets available from within Chimera. Chimera
+   * will return the list as a series of lines with the format: Preset type
+   * number "description"
+   * 
+   * @return list of presets
+   */
+  public List<String> getPresets()
+  {
+    ArrayList<String> presetList = new ArrayList<String>();
+    List<String> output = sendChimeraCommand("preset list", true);
+    if (output != null)
+    {
+      for (String preset : output)
+      {
+        preset = preset.substring(7); // Skip over the "Preset"
+        preset = preset.replaceFirst("\"", "(");
+        preset = preset.replaceFirst("\"", ")");
+        // string now looks like: type number (description)
+        presetList.add(preset);
+      }
+    }
+    return presetList;
+  }
+
+  public boolean isChimeraLaunched()
+  {
+    // TODO: [Optional] What is the best way to test if chimera is launched?
+
+    // sendChimeraCommand("test", true) !=null
+    if (chimera != null)
+    {
+      return true;
+    }
+    return false;
+  }
+
+  public boolean launchChimera(List<String> chimeraPaths)
+  {
+    // Do nothing if Chimera is already launched
+    if (isChimeraLaunched())
+    {
+      return true;
+    }
+
+    // Try to launch Chimera (eventually using one of the possible paths)
+    String error = "Error message: ";
+    String workingPath = "";
+    // iterate over possible paths for starting Chimera
+    for (String chimeraPath : chimeraPaths)
+    {
+      File path = new File(chimeraPath);
+      if (!path.canExecute())
+      {
+        error += "File '" + path + "' does not exist.\n";
+        continue;
+      }
+      try
+      {
+        List<String> args = new ArrayList<String>();
+        args.add(chimeraPath);
+        args.add("--start");
+        args.add("ReadStdin");
+        ProcessBuilder pb = new ProcessBuilder(args);
+        chimera = pb.start();
+        error = "";
+        workingPath = chimeraPath;
+        logger.info("Strarting " + chimeraPath);
+        break;
+      } catch (Exception e)
+      {
+        // Chimera could not be started
+        error += e.getMessage();
+      }
+    }
+    // If no error, then Chimera was launched successfully
+    if (error.length() == 0)
+    {
+      // Initialize the listener threads
+      chimeraListenerThreads = new ListenerThreads(chimera,
+              structureManager);
+      chimeraListenerThreads.start();
+      // structureManager.initChimTable();
+      structureManager.setChimeraPathProperty(workingPath);
+      // TODO: [Optional] Check Chimera version and show a warning if below 1.8
+      // Ask Chimera to give us updates
+      startListening();
+      return true;
+    }
+
+    // Tell the user that Chimera could not be started because of an error
+    logger.warn(error);
+    return false;
+  }
+
+  /**
+   * Determine the color that Chimera is using for this model.
+   * 
+   * @param model
+   *          the ChimeraModel we want to get the Color for
+   * @return the default model Color for this model in Chimera
+   */
+  public Color getModelColor(ChimeraModel model)
+  {
+    List<String> colorLines = sendChimeraCommand(
+            "list model spec " + model.toSpec() + " attribute color", true);
+    if (colorLines == null || colorLines.size() == 0)
+    {
+      return null;
+    }
+    return ChimUtils.parseModelColor((String) colorLines.get(0));
+  }
+
+  /**
+   * 
+   * Get information about the residues associated with a model. This uses the
+   * Chimera listr command. We don't return the resulting residues, but we add
+   * the residues to the model.
+   * 
+   * @param model
+   *          the ChimeraModel to get residue information for
+   * 
+   */
+  public void addResidues(ChimeraModel model)
+  {
+    int modelNumber = model.getModelNumber();
+    int subModelNumber = model.getSubModelNumber();
+    // Get the list -- it will be in the reply log
+    List<String> reply = sendChimeraCommand(
+            "list residues spec " + model.toSpec(), true);
+    if (reply == null)
+    {
+      return;
+    }
+    for (String inputLine : reply)
+    {
+      ChimeraResidue r = new ChimeraResidue(inputLine);
+      if (r.getModelNumber() == modelNumber
+              || r.getSubModelNumber() == subModelNumber)
+      {
+        model.addResidue(r);
+      }
+    }
+  }
+
+  public List<String> getAttrList()
+  {
+    List<String> attributes = new ArrayList<String>();
+    final List<String> reply = sendChimeraCommand("list resattr", true);
+    if (reply != null)
+    {
+      for (String inputLine : reply)
+      {
+        String[] lineParts = inputLine.split("\\s");
+        if (lineParts.length == 2 && lineParts[0].equals("resattr"))
+        {
+          attributes.add(lineParts[1]);
+        }
+      }
+    }
+    return attributes;
+  }
+
+  public Map<ChimeraResidue, Object> getAttrValues(String aCommand,
+          ChimeraModel model)
+  {
+    Map<ChimeraResidue, Object> values = new HashMap<ChimeraResidue, Object>();
+    final List<String> reply = sendChimeraCommand("list residue spec "
+            + model.toSpec() + " attribute " + aCommand, true);
+    if (reply != null)
+    {
+      for (String inputLine : reply)
+      {
+        String[] lineParts = inputLine.split("\\s");
+        if (lineParts.length == 5)
+        {
+          ChimeraResidue residue = ChimUtils
+                  .getResidue(lineParts[2], model);
+          String value = lineParts[4];
+          if (residue != null)
+          {
+            if (value.equals("None"))
+            {
+              continue;
+            }
+            if (value.equals("True") || value.equals("False"))
+            {
+              values.put(residue, Boolean.valueOf(value));
+              continue;
+            }
+            try
+            {
+              Double doubleValue = Double.valueOf(value);
+              values.put(residue, doubleValue);
+            } catch (NumberFormatException ex)
+            {
+              values.put(residue, value);
+            }
+          }
+        }
+      }
+    }
+    return values;
+  }
+
+  private volatile boolean busy = false;
+
+  /**
+   * Send a command to Chimera.
+   * 
+   * @param command
+   *          Command string to be send.
+   * @param reply
+   *          Flag indicating whether the method should return the reply from
+   *          Chimera or not.
+   * @return List of Strings corresponding to the lines in the Chimera reply or
+   *         <code>null</code>.
+   */
+  public List<String> sendChimeraCommand(String command, boolean reply)
+  {
+    if (!isChimeraLaunched())
+    {
+      return null;
+    }
+    while (busy)
+    {
+      try
+      {
+        Thread.sleep(25);
+      } catch (InterruptedException q)
+      {
+      }
+      ;
+    }
+    busy = true;
+    chimeraListenerThreads.clearResponse(command);
+    String text = command.concat("\n");
+    // System.out.println("send command to chimera: " + text);
+    try
+    {
+      // send the command
+      chimera.getOutputStream().write(text.getBytes());
+      chimera.getOutputStream().flush();
+    } catch (IOException e)
+    {
+      // logger.info("Unable to execute command: " + text);
+      // logger.info("Exiting...");
+      logger.warn("Unable to execute command: " + text);
+      logger.warn("Exiting...");
+      clearOnChimeraExit();
+      busy = false;
+      return null;
+    }
+    if (!reply)
+    {
+      busy = false;
+      return null;
+    }
+    List<String> rsp = chimeraListenerThreads.getResponse(command);
+    busy = false;
+    return rsp;
+  }
+
+  public StructureManager getStructureManager()
+  {
+    return structureManager;
+  }
+
+  public boolean isBusy()
+  {
+    return busy;
+  }
+
+}
diff --git a/src/ext/edu/ucsf/rbvi/strucviz2/ChimeraModel.java b/src/ext/edu/ucsf/rbvi/strucviz2/ChimeraModel.java
new file mode 100644 (file)
index 0000000..432c6fb
--- /dev/null
@@ -0,0 +1,466 @@
+package ext.edu.ucsf.rbvi.strucviz2;
+
+import java.awt.Color;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.TreeMap;
+
+import ext.edu.ucsf.rbvi.strucviz2.StructureManager.ModelType;
+
+/**
+ * This class provides the implementation for the ChimeraModel, ChimeraChain, and ChimeraResidue
+ * objects
+ * 
+ * @author scooter
+ * 
+ */
+public class ChimeraModel implements ChimeraStructuralObject {
+
+       private String name; // The name of this model
+       private ModelType type; // The type of the model
+       private int modelNumber; // The model number
+       private int subModelNumber; // The sub-model number
+
+       private Color modelColor = null; // The color of this model (from Chimera)
+       private Object userData = null; // User data associated with this model
+       private boolean selected = false; // The selected state of this model
+
+       private TreeMap<String, ChimeraChain> chainMap; // The list of chains
+       // private TreeMap<String, ChimeraResidue> residueMap; // The list of residues
+       private HashSet<ChimeraResidue> funcResidues; // List of functional residues
+
+       /**
+        * Constructor to create a model
+        * 
+        * @param name
+        *            the name of this model
+        * @param color
+        *            the model Color
+        * @param modelNumber
+        *            the model number
+        * @param subModelNumber
+        *            the sub-model number
+        */
+       public ChimeraModel(String name, ModelType type, int modelNumber, int subModelNumber) {
+               this.name = name;
+               this.type = type;
+               this.modelNumber = modelNumber;
+               this.subModelNumber = subModelNumber;
+
+               this.chainMap = new TreeMap<String, ChimeraChain>();
+               this.funcResidues = new HashSet<ChimeraResidue>();
+       }
+
+       /**
+        * Constructor to create a model from the Chimera input line
+        * 
+        * @param inputLine
+        *            Chimera input line from which to construct this model
+        */
+       // TODO: [Optional] How to distinguish between PDB and MODBASE?
+       // invoked when listing models: listm type molecule; lists level molecule
+       // line = model id #0 type Molecule name 1ert
+       public ChimeraModel(String inputLine) {
+               this.name = ChimUtils.parseModelName(inputLine);
+               // TODO: [Optional] Write a separate method to get model type
+               if (name.startsWith("smiles")) {
+                       this.type = ModelType.SMILES;
+               } else {
+                       this.type = ModelType.PDB_MODEL;
+               }
+               this.modelNumber = ChimUtils.parseModelNumber(inputLine)[0];
+               this.subModelNumber = ChimUtils.parseModelNumber(inputLine)[1];
+
+               this.chainMap = new TreeMap<String, ChimeraChain>();
+               this.funcResidues = new HashSet<ChimeraResidue>();
+       }
+
+       /**
+        * Add a residue to this model
+        * 
+        * @param residue
+        *            to add to the model
+        */
+       public void addResidue(ChimeraResidue residue) {
+               residue.setChimeraModel(this);
+               // residueMap.put(residue.getIndex(), residue);
+               String chainId = residue.getChainId();
+               if (chainId != null) {
+                       addResidue(chainId, residue);
+               } else {
+                       addResidue("_", residue);
+               }
+               // Put it in our map so that we can return it in order
+               // residueMap.put(residue.getIndex(), residue);
+       }
+
+       /**
+        * Add a residue to a chain in this model. If the chain associated with chainId doesn't exist,
+        * it will be created.
+        * 
+        * @param chainId
+        *            to add the residue to
+        * @param residue
+        *            to add to the chain
+        */
+       public void addResidue(String chainId, ChimeraResidue residue) {
+               ChimeraChain chain = null;
+               if (!chainMap.containsKey(chainId)) {
+                       chain = new ChimeraChain(this.modelNumber, this.subModelNumber, chainId);
+                       chain.setChimeraModel(this);
+                       chainMap.put(chainId, chain);
+               } else {
+                       chain = chainMap.get(chainId);
+               }
+               chain.addResidue(residue);
+       }
+
+       /**
+        * Get the ChimeraModel (required for ChimeraStructuralObject interface)
+        * 
+        * @return ChimeraModel
+        */
+       public ChimeraModel getChimeraModel() {
+               return this;
+       }
+
+       /**
+        * Get the model color of this model
+        * 
+        * @return model color of this model
+        */
+       public Color getModelColor() {
+               return this.modelColor;
+       }
+
+       /**
+        * Set the color of this model
+        * 
+        * @param color
+        *            Color of this model
+        */
+       public void setModelColor(Color color) {
+               this.modelColor = color;
+       }
+
+       /**
+        * Return the name of this model
+        * 
+        * @return model name
+        */
+       public String getModelName() {
+               return name;
+       }
+
+       /**
+        * Set the name of this model
+        * 
+        * @param name
+        *            model name
+        */
+       public void setModelName(String name) {
+               this.name = name;
+       }
+
+       /**
+        * Get the model number of this model
+        * 
+        * @return integer model number
+        */
+       public int getModelNumber() {
+               return modelNumber;
+       }
+
+       /**
+        * Set the model number of this model
+        * 
+        * @param modelNumber
+        *            integer model number
+        */
+       public void setModelNumber(int modelNumber) {
+               this.modelNumber = modelNumber;
+       }
+
+       /**
+        * Get the sub-model number of this model
+        * 
+        * @return integer sub-model number
+        */
+       public int getSubModelNumber() {
+               return subModelNumber;
+       }
+
+       /**
+        * Set the sub-model number of this model
+        * 
+        * @param subModelNumber
+        *            integer model number
+        */
+       public void setSubModelNumber(int subModelNumber) {
+               this.subModelNumber = subModelNumber;
+       }
+
+       public ModelType getModelType() {
+               return type;
+       }
+
+       public void setModelType(ModelType type) {
+               this.type = type;
+       }
+
+       public HashSet<ChimeraResidue> getFuncResidues() {
+               return funcResidues;
+       }
+
+       public void setFuncResidues(List<String> residues) {
+               for (String residue : residues) {
+                       for (ChimeraChain chain : getChains()) {
+                               if (residue.indexOf("-") > 0) {
+                                       funcResidues.addAll(chain.getResidueRange(residue));
+                               } else {
+                                       funcResidues.add(chain.getResidue(residue));
+                               }
+                       }
+               }
+       }
+
+       /**
+        * Get the user data for this model
+        * 
+        * @return user data
+        */
+       public Object getUserData() {
+               return userData;
+       }
+
+       /**
+        * Set the user data for this model
+        * 
+        * @param data
+        *            user data to associate with this model
+        */
+       public void setUserData(Object data) {
+               this.userData = data;
+       }
+
+       /**
+        * Return the selected state of this model
+        * 
+        * @return the selected state
+        */
+       public boolean isSelected() {
+               return selected;
+       }
+
+       /**
+        * Set the selected state of this model
+        * 
+        * @param selected
+        *            a boolean to set the selected state to
+        */
+       public void setSelected(boolean selected) {
+               this.selected = selected;
+       }
+
+       /**
+        * Return the chains in this model as a List
+        * 
+        * @return the chains in this model as a list
+        */
+       public List<ChimeraStructuralObject> getChildren() {
+               return new ArrayList<ChimeraStructuralObject>(chainMap.values());
+       }
+
+       /**
+        * Return the chains in this model as a colleciton
+        * 
+        * @return the chains in this model
+        */
+       public Collection<ChimeraChain> getChains() {
+               return chainMap.values();
+       }
+
+       /**
+        * Get the number of chains in this model
+        * 
+        * @return integer chain count
+        */
+       public int getChainCount() {
+               return chainMap.size();
+       }
+
+       /**
+        * Get the list of chain names associated with this model
+        * 
+        * @return return the list of chain names for this model
+        */
+       public Collection<String> getChainNames() {
+               return chainMap.keySet();
+       }
+
+       /**
+        * Get the residues associated with this model
+        * 
+        * @return the list of residues in this model
+        */
+       public Collection<ChimeraResidue> getResidues() {
+               Collection<ChimeraResidue> residues = new ArrayList<ChimeraResidue>();
+               for (ChimeraChain chain : getChains()) {
+                       residues.addAll(chain.getResidues());
+               }
+               return residues;
+       }
+
+       /**
+        * Get the number of residues in this model
+        * 
+        * @return integer residues count
+        */
+       public int getResidueCount() {
+               int count = 0;
+               for (ChimeraChain chain : getChains()) {
+                       count += chain.getResidueCount();
+               }
+               return count;
+       }
+
+       /**
+        * Get a specific chain from the model
+        * 
+        * @param chain
+        *            the ID of the chain to return
+        * @return ChimeraChain associated with the chain
+        */
+       public ChimeraChain getChain(String chain) {
+               if (chainMap.containsKey(chain)) {
+                       return chainMap.get(chain);
+               }
+               return null;
+       }
+
+       /**
+        * Return a specific residue based on its index
+        * 
+        * @param index
+        *            of the residue to return
+        * @return the residue associated with that index
+        */
+       public ChimeraResidue getResidue(String chainId, String index) {
+               if (chainMap.containsKey(chainId)) {
+                       return chainMap.get(chainId).getResidue(index);
+               }
+               return null;
+       }
+
+       /**
+        * Checks if this model has selected children.
+        */
+       public boolean hasSelectedChildren() {
+               if (selected) {
+                       return true;
+               } else {
+                       for (ChimeraChain chain : getChains()) {
+                               if (chain.hasSelectedChildren()) {
+                                       return true;
+                               }
+                       }
+               }
+               return false;
+       }
+
+       /**
+        * Return the list of selected residues
+        * 
+        * @return all selected residues
+        */
+       public List<ChimeraResidue> getSelectedResidues() {
+               List<ChimeraResidue> residueList = new ArrayList<ChimeraResidue>();
+               for (ChimeraChain chain : getChains()) {
+                       if (selected) {
+                               residueList.addAll(chain.getSelectedResidues());
+                       } else {
+                               residueList.addAll(getResidues());
+                       }
+               }
+               return residueList;
+       }
+
+
+       /**
+        * Return the Chimera specification for this model.
+        */
+       public String toSpec() {
+               if (subModelNumber == 0)
+                       return ("#" + modelNumber);
+               return ("#" + modelNumber + "." + subModelNumber);
+       }
+
+       /**
+        * Return a string representation for the model. Shorten if longer than 100 characters.
+        */
+       public String toString() {
+               String modelName = "";
+               // TODO: [Optional] Change cutoff for shortening model names in the structure naviagator dialog
+               if (getChainCount() > 0) {
+                       modelName = "Model " + toSpec() + " " + name + " (" + getChainCount() + " chains, "
+                                       + getResidueCount() + " residues)";
+               } else if (getResidueCount() > 0) {
+                       modelName = "Model " + toSpec() + " " + name + " (" + getResidueCount() + " residues)";
+               } else {
+                       modelName = "Model " + toSpec() + " " + name + "";
+               }
+
+               Set<String> networkNames = new HashSet<String>();
+               Set<String> nodeNames = new HashSet<String>();
+               Set<String> edgeNames = new HashSet<String>();
+
+               String cytoName = " [";
+               if (networkNames.size() > 0) {
+                       if (networkNames.size() == 1) {
+                               cytoName += "Network {";
+                       } else if (networkNames.size() > 1) {
+                               cytoName += "Networks {";
+                       }
+                       for (String cName : networkNames) {
+                               cytoName += cName + ",";
+                       }
+                       cytoName = cytoName.substring(0, cytoName.length() - 1) + "}, ";
+               }
+               if (nodeNames.size() > 0) {
+                       if (nodeNames.size() == 1) {
+                               cytoName += "Node {";
+                       } else if (nodeNames.size() > 1) {
+                               cytoName += "Nodes {";
+                       }
+                       for (String cName : nodeNames) {
+                               cytoName += cName + ",";
+                       }
+                       cytoName = cytoName.substring(0, cytoName.length() - 1) + "}, ";
+               }
+               if (edgeNames.size() > 0) {
+                       if (edgeNames.size() == 1) {
+                               cytoName += "Edge {";
+                       } else if (edgeNames.size() > 1) {
+                               cytoName += "Edges {";
+                       }
+                       for (String cName : edgeNames) {
+                               cytoName += cName + ",";
+                       }
+                       cytoName = cytoName.substring(0, cytoName.length() - 1) + "}, ";
+               }
+               if (cytoName.endsWith(", ")) {
+                       cytoName = cytoName.substring(0, cytoName.length() - 2);
+               }
+               cytoName += "]";
+               String nodeName = modelName + cytoName;
+               if (nodeName.length() > 100) {
+                       nodeName = nodeName.substring(0, 100) + "...";
+               }
+               return nodeName;
+       }
+}
diff --git a/src/ext/edu/ucsf/rbvi/strucviz2/ChimeraResidue.java b/src/ext/edu/ucsf/rbvi/strucviz2/ChimeraResidue.java
new file mode 100644 (file)
index 0000000..10825ae
--- /dev/null
@@ -0,0 +1,394 @@
+/* vim: set ts=2: */
+/**
+ * Copyright (c) 2006 The Regents of the University of California.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *   1. Redistributions of source code must retain the above copyright
+ *      notice, this list of conditions, and the following disclaimer.
+ *   2. Redistributions in binary form must reproduce the above
+ *      copyright notice, this list of conditions, and the following
+ *      disclaimer in the documentation and/or other materials provided
+ *      with the distribution.
+ *   3. Redistributions must acknowledge that this software was
+ *      originally developed by the UCSF Computer Graphics Laboratory
+ *      under support by the NIH National Center for Research Resources,
+ *      grant P41-RR01081.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER "AS IS" AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
+ * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
+ * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+ * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
+ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+package ext.edu.ucsf.rbvi.strucviz2;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+
+import org.slf4j.LoggerFactory;
+
+/**
+ * This class provides the implementation for the ChimeraResidue, object
+ * 
+ * @author scooter
+ * 
+ */
+
+public class ChimeraResidue implements ChimeraStructuralObject, Comparable<ChimeraResidue> {
+
+       /* Constants */
+       public static final int SINGLE_LETTER = 0; // Display residues as a single
+                                                                                                                                                                                       // letter
+       public static final int THREE_LETTER = 1; // Display residues as three letters
+       public static final int FULL_NAME = 2; // Display full residue names
+
+       private String type; // Residue type
+       private String index; // Residue index
+       private String chainId; // ChainID for this residue
+       private int modelNumber; // model number for this residue
+       private int subModelNumber; // sub-model number for this residue
+       protected int residueNumber;
+       protected String insertionCode;
+       private ChimeraModel chimeraModel; // ChimeraModel the residue is part of
+       private Object userData; // user data to associate with this residue
+       // public static HashMap<String, String> aaNames = null; // a map of amino acid
+       // names
+       private static int displayType = THREE_LETTER; // the current display type
+       private boolean selected = false; // the selection state
+
+       /**
+        * Constructor to create a new ChimeraResidue
+        * 
+        * @param type
+        *          the residue type
+        * @param index
+        *          the index of the residue
+        * @param modelNumber
+        *          the model number this residue is part of
+        */
+       public ChimeraResidue(String type, String index, int modelNumber) {
+               this(type, index, modelNumber, 0);
+       }
+
+       /**
+        * Constructor to create a new ChimeraResidue
+        * 
+        * @param type
+        *          the residue type
+        * @param index
+        *          the index of the residue
+        * @param modelNumber
+        *          the model number this residue is part of
+        * @param subModelNumber
+        *          the sub-model number this residue is part of
+        */
+       public ChimeraResidue(String type, String index, int modelNumber, int subModelNumber) {
+               this.type = type;
+               this.index = index;
+               this.modelNumber = modelNumber;
+               this.subModelNumber = subModelNumber;
+               splitInsertionCode(this.index);
+               // if (aaNames == null) {
+               // initNames();
+               // }
+       }
+
+       /**
+        * Constructor to create a new ChimeraResidue from an input line
+        * 
+        * @param chimeraInputLine
+        *          a Chimera residue description
+        */
+       // invoked when listing (selected) residues: listr spec #0; lists level residue
+       // Line: residue id #0:37.A type MET
+       public ChimeraResidue(String chimeraInputLine) {
+               // initNames();
+               String[] split1 = chimeraInputLine.split(":");
+
+               // First half has model number -- get the number
+               int numberOffset = split1[0].indexOf('#');
+               String model = split1[0].substring(numberOffset + 1);
+               int decimalOffset = model.indexOf('.'); // Do we have a sub-model?
+               try {
+                       this.subModelNumber = 0;
+                       if (decimalOffset > 0) {
+                               this.subModelNumber = Integer.parseInt(model.substring(decimalOffset + 1));
+                               this.modelNumber = Integer.parseInt(model.substring(0, decimalOffset));
+                       } else {
+                               this.modelNumber = Integer.parseInt(model);
+                       }
+               } catch (Exception e) {
+                       LoggerFactory.getLogger(ChimeraResidue.class)
+                                       .error("Unexpected return from Chimera: " + model);
+                       this.modelNumber = -1;
+               }
+
+               // Second half has residue info: index & type
+               String[] rTokens = split1[1].split(" ");
+               this.type = rTokens[2];
+
+               String[] iTokens = rTokens[0].split("\\.");
+               if (iTokens.length > 0) {
+                       this.index = iTokens[0];
+
+                       // Careful, might or might not have a chainID
+                       if (iTokens.length > 1)
+                               this.chainId = iTokens[1];
+                       else
+                               this.chainId = "_";
+               } else
+                       this.index = rTokens[0];
+
+               splitInsertionCode(this.index);
+       }
+
+       /**
+        * Set the selected state for this residue
+        * 
+        * @param selected
+        *          the selection state to set
+        */
+       public void setSelected(boolean selected) {
+               this.selected = selected;
+       }
+
+       /**
+        * Return the selected state of this residue
+        * 
+        * @return the selected state
+        */
+       public boolean isSelected() {
+               return selected;
+       }
+
+       /**
+        * Return an array made up of this residue (required for ChimeraStructuralObject interface
+        * 
+        * @return a List with this residue as its sole member
+        */
+       public List<ChimeraStructuralObject> getChildren() {
+               List<ChimeraStructuralObject> v = new ArrayList<ChimeraStructuralObject>();
+               v.add(this);
+               return v;
+       }
+
+       /**
+        * Return the string representation of this residue as follows: "<i>residue_name</i> <i>index</i>"
+        * where <i>residue_name</i> could be either the single letter, three letter, or full name
+        * representation of the amino acid.
+        * 
+        * @return the string representation
+        */
+       public String displayName() {
+               return toString();
+       }
+
+       /**
+        * Return the string representation of this residue as follows: "<i>residue_name</i> <i>index</i>"
+        * where <i>residue_name</i> could be either the single letter, three letter, or full name
+        * representation of the amino acid.
+        * 
+        * @return the string representation
+        */
+       public String toString() {
+               if (displayType == FULL_NAME) {
+                       return (ChimUtils.toFullName(type) + " " + index);
+               } else if (displayType == SINGLE_LETTER) {
+                       return (ChimUtils.toSingleLetter(type) + " " + index);
+               } else if (displayType == THREE_LETTER) {
+                       return (ChimUtils.toThreeLetter(type) + " " + index);
+               } else {
+                       return (type + " " + index);
+               }
+       }
+
+       /**
+        * Return the Chimera specification for this Residue
+        * 
+        * @return Chimera specification
+        */
+       public String toSpec() {
+               if (!chainId.equals("_"))
+                       return ("#" + modelNumber + ":" + index + "." + chainId);
+               else
+                       return ("#" + modelNumber + ":" + index + ".");
+       }
+
+       /**
+        * Get the index of this residue
+        * 
+        * @return residue index
+        */
+       public String getIndex() {
+               return this.index;
+       }
+
+       /**
+        * Get the chainID for this residue
+        * 
+        * @return String value of the chainId
+        */
+       public String getChainId() {
+               return this.chainId;
+       }
+
+       /**
+        * Get the type for this residue
+        * 
+        * @return residue type
+        */
+       public String getType() {
+               return this.type;
+       }
+
+       /**
+        * Get the model number for this residue
+        * 
+        * @return the model number
+        */
+       public int getModelNumber() {
+               return this.modelNumber;
+       }
+
+       /**
+        * Get the sub-model number for this residue
+        * 
+        * @return the sub-model number
+        */
+       public int getSubModelNumber() {
+               return this.subModelNumber;
+       }
+
+       /**
+        * Get the model this residue is part of
+        * 
+        * @return the ChimeraModel
+        */
+       public ChimeraModel getChimeraModel() {
+               return this.chimeraModel;
+       }
+
+       /**
+        * Set the model this residue is part of
+        * 
+        * @param chimeraModel
+        *          the ChimeraModel this model is part of
+        */
+       public void setChimeraModel(ChimeraModel chimeraModel) {
+               this.chimeraModel = chimeraModel;
+       }
+
+       /**
+        * Get the user data for this residue
+        * 
+        * @return user data
+        */
+       public Object getUserData() {
+               return userData;
+       }
+
+       /**
+        * Set the user data for this Residue
+        * 
+        * @param data
+        *          the user data to associate with this residue
+        */
+       public void setUserData(Object data) {
+               this.userData = data;
+       }
+
+       public int compareTo(ChimeraResidue c2) {
+               if (residueNumber < c2.residueNumber)
+                       return -1;
+               else if (residueNumber == c2.residueNumber) {
+                       if (insertionCode == null && c2.insertionCode == null)
+                               return 0;
+                       else if (insertionCode == null)
+                               return -1;
+                       else if (c2.insertionCode == null)
+                               return 1;
+                       return (insertionCode.compareTo(c2.insertionCode));
+               }
+               return 1;
+       }
+
+       public void splitInsertionCode(String residue) {
+               // OK, split the index into number and insertion code
+               Pattern p = Pattern.compile("(\\d*)([A-Z]?)");
+               Matcher m = p.matcher(residue);
+               if (m.matches()) {
+                       this.residueNumber = Integer.parseInt(m.group(1));
+                       if (m.groupCount() > 1)
+                               this.insertionCode = m.group(2);
+                       else
+                               this.insertionCode = null;
+               }
+       }
+
+       /**********************************************
+        * Static routines
+        *********************************************/
+
+       /**
+        * Initialize the residue names
+        */
+       // private static void initNames() {
+       // // Create our residue name table
+       // aaNames = new HashMap<String, String>();
+       // aaNames.put("ALA", "A Ala Alanine N[C@@H](C)C(O)=O");
+       // aaNames.put("ARG", "R Arg Arginine N[C@@H](CCCNC(N)=N)C(O)=O");
+       // aaNames.put("ASN", "N Asn Asparagine N[C@@H](CC(N)=O)C(O)=O");
+       // aaNames.put("ASP", "D Asp Aspartic_acid N[C@@H](CC(O)=O)C(O)=O");
+       // aaNames.put("CYS", "C Cys Cysteine N[C@@H](CS)C(O)=O");
+       // aaNames.put("GLN", "Q Gln Glutamine N[C@H](C(O)=O)CCC(N)=O");
+       // aaNames.put("GLU", "E Glu Glumatic_acid N[C@H](C(O)=O)CCC(O)=O");
+       // aaNames.put("GLY", "G Gly Glycine NCC(O)=O");
+       // aaNames.put("HIS", "H His Histidine N[C@@H](CC1=CN=CN1)C(O)=O");
+       // aaNames.put("ILE", "I Ile Isoleucine N[C@]([C@H](C)CC)([H])C(O)=O");
+       // aaNames.put("LEU", "L Leu Leucine N[C@](CC(C)C)([H])C(O)=O");
+       // aaNames.put("LYS", "K Lys Lysine N[C@](CCCCN)([H])C(O)=O");
+       // aaNames.put("DLY", "K Dly D-Lysine NCCCC[C@@H](N)C(O)=O");
+       // aaNames.put("MET", "M Met Methionine N[C@](CCSC)([H])C(O)=O");
+       // aaNames.put("PHE", "F Phe Phenylalanine N[C@](CC1=CC=CC=C1)([H])C(O)=O");
+       // aaNames.put("PRO", "P Pro Proline OC([C@@]1([H])NCCC1)=O");
+       // aaNames.put("SER", "S Ser Serine OC[C@](C(O)=O)([H])N");
+       // aaNames.put("THR", "T Thr Threonine O[C@H](C)[C@](C(O)=O)([H])N");
+       // aaNames.put("TRP", "W Trp Tryptophan N[C@@]([H])(CC1=CN([H])C2=C1C=CC=C2)C(O)=O");
+       // aaNames.put("TYR", "Y Tyr Tyrosine N[C@@](C(O)=O)([H])CC1=CC=C(O)C=C1");
+       // aaNames.put("VAL", "V Val Valine N[C@@](C(O)=O)([H])C(C)C");
+       // aaNames.put("ASX", "B Asx Aspartic_acid_or_Asparagine");
+       // aaNames.put("GLX", "Z Glx Glutamine_or_Glutamic_acid");
+       // aaNames.put("XAA", "X Xaa Any_or_unknown_amino_acid");
+       // aaNames.put("HOH", "HOH HOH Water [H]O[H]");
+       // }
+
+       /**
+        * Set the display type.
+        * 
+        * @param type
+        *          the display type
+        */
+       public static void setDisplayType(int type) {
+               displayType = type;
+       }
+
+       public static int getDisplayType() {
+               return displayType;
+       }
+
+       public boolean hasSelectedChildren() {
+               return false;
+       }
+}
diff --git a/src/ext/edu/ucsf/rbvi/strucviz2/ChimeraStructuralObject.java b/src/ext/edu/ucsf/rbvi/strucviz2/ChimeraStructuralObject.java
new file mode 100644 (file)
index 0000000..1678317
--- /dev/null
@@ -0,0 +1,112 @@
+/* vim: set ts=2: */
+/**
+ * Copyright (c) 2006 The Regents of the University of California.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *   1. Redistributions of source code must retain the above copyright
+ *      notice, this list of conditions, and the following disclaimer.
+ *   2. Redistributions in binary form must reproduce the above
+ *      copyright notice, this list of conditions, and the following
+ *      disclaimer in the documentation and/or other materials provided
+ *      with the distribution.
+ *   3. Redistributions must acknowledge that this software was
+ *      originally developed by the UCSF Computer Graphics Laboratory
+ *      under support by the NIH National Center for Research Resources,
+ *      grant P41-RR01081.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER "AS IS" AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
+ * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
+ * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+ * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
+ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+package ext.edu.ucsf.rbvi.strucviz2;
+
+import java.lang.String;
+import java.util.List;
+
+/**
+ * This interface provides a common set of methods that are implemented by the ChimeraModel,
+ * ChimeraChain, and ChimeraResidue classes.
+ * 
+ * @author scooter
+ * 
+ */
+
+public interface ChimeraStructuralObject {
+
+       /**
+        * Return the Chimera selection specification for this object
+        * 
+        * @return a String representing a Chimera atom-spec
+        */
+       public String toSpec();
+
+       /**
+        * Return a String representation for this object
+        * 
+        * @return a String representing the object name
+        */
+       public String toString();
+
+       /**
+        * Return the userData for this object
+        * 
+        * @return an Object representing the userData (usually TreePath)
+        */
+       public Object getUserData();
+
+       /**
+        * Set the userData for this object
+        * 
+        * @param userData
+        *          the Object representing the userData (usually TreePath)
+        */
+       public void setUserData(Object userData);
+
+       /**
+        * Return the ChimeraModel for this object
+        * 
+        * @return the ChimeraModel this object is part of
+        */
+       public ChimeraModel getChimeraModel();
+
+       /**
+        * Set the "selected" state of this object
+        * 
+        * @param selected
+        *          boolean value as to whether this object is selected
+        */
+       public void setSelected(boolean selected);
+
+       /**
+        * Get the "selected" state of this object
+        * 
+        * @return the selected state of this object
+        */
+       public boolean isSelected();
+
+       /**
+        * Get the selected state of this object and its children.
+        * 
+        * @return true if any child is selected.
+        */
+       public boolean hasSelectedChildren();
+
+       /**
+        * Get the children of this object (if any)
+        * 
+        * @return the children of the object
+        */
+       public List<ChimeraStructuralObject> getChildren();
+}
diff --git a/src/ext/edu/ucsf/rbvi/strucviz2/ChimeraTreeModel.java b/src/ext/edu/ucsf/rbvi/strucviz2/ChimeraTreeModel.java
new file mode 100644 (file)
index 0000000..f3447ce
--- /dev/null
@@ -0,0 +1,194 @@
+/* vim: set ts=2: */
+/**
+ * Copyright (c) 2006 The Regents of the University of California.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *   1. Redistributions of source code must retain the above copyright
+ *      notice, this list of conditions, and the following disclaimer.
+ *   2. Redistributions in binary form must reproduce the above
+ *      copyright notice, this list of conditions, and the following
+ *      disclaimer in the documentation and/or other materials provided
+ *      with the distribution.
+ *   3. Redistributions must acknowledge that this software was
+ *      originally developed by the UCSF Computer Graphics Laboratory
+ *      under support by the NIH National Center for Research Resources,
+ *      grant P41-RR01081.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER "AS IS" AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
+ * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
+ * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+ * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
+ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+package ext.edu.ucsf.rbvi.strucviz2;
+
+// System imports
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.List;
+
+import javax.swing.JTree;
+import javax.swing.tree.DefaultMutableTreeNode;
+import javax.swing.tree.DefaultTreeModel;
+import javax.swing.tree.TreePath;
+// Cytoscape imports
+// StructureViz imports
+
+/**
+ * The ChimeraTreeModel class provides the underlying model
+ * for the navigation tree in the ModelNavigatorDialog.
+ *
+ * @author scooter
+ * @see ModelNavigatorDialog
+        */
+public class ChimeraTreeModel extends DefaultTreeModel {
+       private ChimeraManager chimeraManager;
+       private JTree navigationTree;
+       private int residueDisplay = ChimeraResidue.THREE_LETTER;
+
+       /**
+        * Constructor for the ChimeraTreeModel.
+        *
+        * @param chimeraObject the Chimera object that this tree represents
+        * @param tree the JTree used to display the object
+        * @see Chimera
+        */
+       public ChimeraTreeModel (ChimeraManager chimeraManager, JTree tree) {
+               super(new DefaultMutableTreeNode());
+               this.chimeraManager = chimeraManager;
+               this.navigationTree = tree;
+               DefaultMutableTreeNode rootNode = buildTree();
+               this.setRoot(rootNode);
+       }
+
+       /**
+        * Set the display type for the residues.  The display type
+        * must be one of:
+        *
+        *      ChimeraResidue.THREE_LETTER
+        *      ChimeraResidue.SINGLE_LETTER
+        *      ChimeraResidue.FULL_NAME
+        *
+        * @param newDisplay the display type
+        * @see ChimeraResidue
+        */
+       public void setResidueDisplay(int newDisplay) {
+               this.residueDisplay = newDisplay;
+       }
+               
+       /**
+        * This method is called to rebuild the tree model "from scratch"
+        */
+       public void reload() {
+               // First, rebuild the tree with the new data
+               DefaultMutableTreeNode rootNode = buildTree();
+               this.setRoot(rootNode);
+
+               // Now let the superclass do all of the work
+               super.reload();
+       }
+
+       /**
+        * Rebuild an existing tree
+        */
+       public void rebuildTree() {
+               DefaultMutableTreeNode rootNode = buildTree();
+               DefaultTreeModel model = (DefaultTreeModel)navigationTree.getModel();
+               model.setRoot(rootNode);
+               model.reload();
+       }
+
+       /**
+        * Build the tree from the current Chimera data
+        *
+        * @return DefaultMutableTreeNode that represents the currently loaded Chimera models
+        */
+       private DefaultMutableTreeNode buildTree() {
+               int modelCount = chimeraManager.getChimeraModelsCount(true);
+               DefaultMutableTreeNode rootNode = new DefaultMutableTreeNode(modelCount+" Open Chimera Models");
+               TreePath rootPath = new TreePath(rootNode);
+
+               TreePath path = null;
+               DefaultMutableTreeNode model = null;
+
+               // Add all of the Chimera models
+               for (ChimeraModel chimeraModel: chimeraManager.getChimeraModels()) {
+                       model = new DefaultMutableTreeNode(chimeraModel);
+                       path = rootPath.pathByAddingChild(model);
+                       chimeraModel.setUserData(path);
+                       addChainNodes(chimeraModel, model, path);
+                       rootNode.add(model);
+               }
+               return rootNode;
+       }
+
+       /**
+        * add chains to a tree model
+        *
+        * @param chimeraModel the ChimeraModel to get the chains from
+        * @param treeModel the tree model to add the chains to
+        * @param treePath the tree path where the chains should be added
+        */
+       private void addChainNodes(ChimeraModel chimeraModel, 
+                                                                                                                DefaultMutableTreeNode treeModel,
+                                                                                                                TreePath treePath) {
+               DefaultMutableTreeNode chain = null;
+               TreePath chainPath = null;
+
+               // Get the list of chains
+               Collection<ChimeraChain> chainList = chimeraModel.getChains();
+
+               if (chainList.size() == 0) {
+                       // No chains!  Just add the residues
+                       addResidues(chimeraModel.getResidues(), treeModel, treePath);   
+                       return;
+               }
+
+               // Iterate over the chains and add the chain and all of
+               // the chain's residues
+               for (ChimeraChain chimeraChain: chainList) {
+                       chain = new DefaultMutableTreeNode(chimeraChain);
+                       chainPath = treePath.pathByAddingChild(chain);
+                       chimeraChain.setUserData(chainPath);
+                       addResidues(chimeraChain.getResidues(), chain, chainPath);
+                       treeModel.add(chain);   
+               }
+       }
+
+       /**
+        * add residues to a tree model
+        *
+        * @param residues the residues to add
+        * @param treeModel the tree model to add the residues to
+        * @param treePath the tree path where the residues should be added
+        */
+       private void addResidues(Collection<ChimeraResidue> residues, 
+                                                                                                        DefaultMutableTreeNode treeModel,
+                                                                                                        TreePath treePath) {
+               DefaultMutableTreeNode residue = null;
+               TreePath residuePath = null;
+
+               List<ChimeraResidue> sortedResidues = new ArrayList<ChimeraResidue>(residues);
+               Collections.sort(sortedResidues);
+
+               // Iterate over all residues & add them to the tree
+               for (ChimeraResidue res: sortedResidues) {
+                       res.setDisplayType(this.residueDisplay);
+                       residue = new DefaultMutableTreeNode(res);
+                       residuePath = treePath.pathByAddingChild(residue);
+                       res.setUserData(residuePath);
+                       treeModel.add(residue);
+               }
+       }       
+}
diff --git a/src/ext/edu/ucsf/rbvi/strucviz2/StructureManager.java b/src/ext/edu/ucsf/rbvi/strucviz2/StructureManager.java
new file mode 100644 (file)
index 0000000..ec956d7
--- /dev/null
@@ -0,0 +1,957 @@
+package ext.edu.ucsf.rbvi.strucviz2;
+
+import java.io.File;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Properties;
+import java.util.Set;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+/**
+ * This object maintains the relationship between Chimera objects and Cytoscape
+ * objects.
+ */
+
+public class StructureManager
+{
+  static final String[] defaultStructureKeys =
+  { "Structure", "pdb", "pdbFileName", "PDB ID", "structure",
+      "biopax.xref.PDB", "pdb_ids", "ModelName", "ModelNumber" };
+
+  static final String[] defaultChemStructKeys =
+  { "Smiles", "smiles", "SMILES" };
+
+  static final String[] defaultResidueKeys =
+  { "FunctionalResidues", "ResidueList", "Residues" };
+
+  private final String chimeraPropertyName = "chimera";
+
+  private final String chimeraPathPropertyKey = "LastChimeraPath";
+
+  public enum ModelType
+  {
+    PDB_MODEL, MODBASE_MODEL, SMILES
+  };
+
+  public static Properties pathProps;
+
+  private String chimeraCommandAttr = "ChimeraCommand";
+
+  private String chimeraOutputTable = "ChimeraTable";
+
+  private String chimeraOutputAttr = "ChimeraOutput";
+
+  private boolean haveGUI = true;
+
+  private ChimeraManager chimeraManager = null;
+
+  static private List<ChimeraStructuralObject> chimSelectionList;
+
+  private boolean ignoreCySelection = false;
+
+  private File configurationDirectory = null;
+
+  private static Logger logger = LoggerFactory
+          .getLogger(ext.edu.ucsf.rbvi.strucviz2.StructureManager.class);
+
+  public StructureManager(boolean haveGUI)
+  {
+    this.haveGUI = haveGUI;
+    // Create the Chimera interface
+    chimeraManager = new ChimeraManager(this);
+    chimSelectionList = new ArrayList<ChimeraStructuralObject>();
+    pathProps = new Properties();
+  }
+
+  public ChimeraManager getChimeraManager()
+  {
+    return chimeraManager;
+  }
+
+  public boolean openStructures(Collection<List<String>> chimObjNames,
+          ModelType type)
+  {
+    // new models
+    Map<String, List<ChimeraModel>> newModels = new HashMap<String, List<ChimeraModel>>();
+    if (chimObjNames.size() > 0)
+    {
+      List<String> names = chimObjNames.iterator().next();
+      if (names == null)
+      {
+        return false;
+      }
+      for (String chimObjName : names)
+      {
+        // get or open the corresponding models if they already exist
+        List<ChimeraModel> currentModels = chimeraManager.getChimeraModels(
+                chimObjName, type);
+        if (currentModels.size() == 0)
+        {
+          // open and return models
+          currentModels = chimeraManager.openModel(chimObjName, type);
+          if (currentModels == null)
+          {
+            // failed to open model, continue with next
+            continue;
+          }
+          // if (type == ModelType.SMILES) {
+          // newModels.put("smiles:" + chimObjName, currentModels);
+          // } else {
+          newModels.put(chimObjName, currentModels);
+          // }
+          // for each model
+          for (ChimeraModel currentModel : currentModels)
+          {
+            // if not RIN then associate new model with the Cytoscape
+            // node
+            // if (!currentChimMap.containsKey(currentModel)) {
+            // currentChimMap.put(currentModel, new HashSet<CyIdentifiable>());
+            // }
+          }
+        }
+      }
+    }
+    else
+    {
+      return false;
+    }
+    // update dialog
+    // if (mnDialog != null) {
+    // mnDialog.modelChanged();
+    // }
+    // aTask.associate();
+    return true;
+
+  }
+
+  // TODO: [Release] Handle case where one network is associated with two models
+  // that are opened
+  // at the same time
+  /*
+   * public boolean openStructures(CyNetwork network, Map<CyIdentifiable,
+   * List<String>> chimObjNames, ModelType type) { if
+   * (!chimeraManager.isChimeraLaunched() &&
+   * !chimeraManager.launchChimera(getChimeraPaths(network))) {
+   * logger.error("Chimera could not be launched."); return false; } else if
+   * (chimObjNames.size() == 0) { return false; } else if (network == null) {
+   * return openStructures(chimObjNames.values(), type); }
+   * 
+   * // potential rins Set<CyNetwork> potentialRINs = new HashSet<CyNetwork>();
+   * // attributes List<String> attrsFound = new ArrayList<String>();
+   * attrsFound.
+   * addAll(CytoUtils.getMatchingAttributes(network.getDefaultNodeTable(),
+   * getCurrentStructureKeys(network)));
+   * attrsFound.addAll(CytoUtils.getMatchingAttributes
+   * (network.getDefaultNodeTable(), getCurrentChemStructKeys(network))); // new
+   * models Map<String, List<ChimeraModel>> newModels = new HashMap<String,
+   * List<ChimeraModel>>(); // for each node that has an associated structure
+   * for (CyIdentifiable cyObj : chimObjNames.keySet()) { // get possible res
+   * specs List<String> specsFound = null; if (cyObj instanceof CyNode) {
+   * specsFound = ChimUtils.getResidueKeys(network.getDefaultNodeTable(), cyObj,
+   * attrsFound); } // save node to track its selection and mapping to chimera
+   * objects if (!currentCyMap.containsKey(cyObj)) { currentCyMap.put(cyObj, new
+   * HashSet<ChimeraStructuralObject>()); } // save node to network mapping to
+   * keep track of selection events if (!networkMap.containsKey(cyObj)) {
+   * networkMap.put(cyObj, new HashSet<CyNetwork>()); }
+   * networkMap.get(cyObj).add(network); // for each structure that has to be
+   * opened for (String chimObjName : chimObjNames.get(cyObj)) { // get or open
+   * the corresponding models if they already exist List<ChimeraModel>
+   * currentModels = chimeraManager.getChimeraModels(chimObjName, type); if
+   * (currentModels.size() == 0) { // open and return models currentModels =
+   * chimeraManager.openModel(chimObjName, type); if (currentModels == null) {
+   * // failed to open model, continue with next continue; } // if (type ==
+   * ModelType.SMILES) { // newModels.put("smiles:" + chimObjName,
+   * currentModels); // } else { newModels.put(chimObjName, currentModels); // }
+   * // for each model for (ChimeraModel currentModel : currentModels) { //
+   * check if it is a RIN boolean foundRIN = false; if
+   * (currentModel.getModelType().equals(ModelType.PDB_MODEL)) { // go through
+   * all node annotations and check if any of them is a residue // or a chain if
+   * (cyObj instanceof CyNode && network.containsNode((CyNode) cyObj) &&
+   * specsFound != null && specsFound.size() > 0) { for (String resSpec :
+   * specsFound) { ChimeraStructuralObject res =
+   * ChimUtils.fromAttribute(resSpec, chimeraManager); if (res != null && (res
+   * instanceof ChimeraResidue || res instanceof ChimeraChain)) { // if so,
+   * assume it might be a RIN potentialRINs.add(network); foundRIN = true;
+   * break; } } } else if (cyObj instanceof CyNetwork) { // if cyObj is a
+   * network, check for residue/chain annotations in an // arbitrary node
+   * CyNetwork rinNet = (CyNetwork) cyObj; if (rinNet.getNodeList().size() > 0)
+   * { specsFound = ChimUtils.getResidueKeys( rinNet.getDefaultNodeTable(),
+   * rinNet.getNodeList().get(0), attrsFound); for (String resSpec : specsFound)
+   * { ChimeraStructuralObject res = ChimUtils.fromAttribute( resSpec,
+   * chimeraManager); if (res != null && (res instanceof ChimeraResidue || res
+   * instanceof ChimeraChain)) { potentialRINs.add(network); foundRIN = true;
+   * break; } } } } } if (foundRIN) { continue; } // if not RIN then associate
+   * new model with the Cytoscape // node if
+   * (!currentChimMap.containsKey(currentModel)) {
+   * currentChimMap.put(currentModel, new HashSet<CyIdentifiable>()); } String
+   * cyObjName = network.getRow(cyObj).get(CyNetwork.NAME, String.class); if
+   * (cyObjName != null && cyObjName.endsWith(currentModel.getModelName())) { //
+   * it is a modbase model, associate directly
+   * currentCyMap.get(cyObj).add(currentModel);
+   * currentChimMap.get(currentModel).add(cyObj);
+   * currentModel.addCyObject(cyObj, network); } else if (specsFound != null &&
+   * specsFound.size() > 0) { for (String resSpec : specsFound) {
+   * ChimeraStructuralObject specModel = ChimUtils.fromAttribute( resSpec,
+   * chimeraManager); if (specModel == null &&
+   * resSpec.equals(currentModel.getModelName())) { specModel =
+   * chimeraManager.getChimeraModel( currentModel.getModelNumber(),
+   * currentModel.getSubModelNumber()); } if (specModel != null &&
+   * currentModel.toSpec().equals(specModel.toSpec()) ||
+   * currentModel.getModelName().equals("smiles:" + resSpec)) {
+   * currentCyMap.get(cyObj).add(currentModel);
+   * currentChimMap.get(currentModel).add(cyObj);
+   * currentModel.addCyObject(cyObj, network);
+   * currentModel.setFuncResidues(ChimUtils.parseFuncRes(
+   * getResidueList(network, cyObj), chimObjName)); } } } } } } } // networks
+   * that contain nodes associated to newly opened models // this will usually
+   * be of length 1 for (CyNetwork net : potentialRINs) {
+   * addStructureNetwork(net); } // update dialog if (mnDialog != null) {
+   * mnDialog.modelChanged(); } aTask.associate(); return true; }
+   */
+  public void closeStructures(Set<String> chimObjNames)
+  {
+    // for each cytoscape object and chimera model pair
+    for (String modelName : chimObjNames)
+    {
+      List<ChimeraModel> models = chimeraManager
+              .getChimeraModels(modelName);
+      for (ChimeraModel model : models)
+      {
+        closeModel(model);
+      }
+    }
+    // if (mnDialog != null) {
+    // mnDialog.modelChanged();
+    // }
+  }
+
+  // TODO: [Optional] Can we make a screenshot of a single molecule?
+  public File saveChimeraImage()
+  {
+    File tmpFile = null;
+    try
+    {
+      // Create the temp file name
+      tmpFile = File.createTempFile("structureViz", ".png");
+      chimeraManager.sendChimeraCommand("set bgTransparency", false);
+      chimeraManager.sendChimeraCommand(
+              "copy file " + tmpFile.getAbsolutePath() + " png", true);
+      chimeraManager.sendChimeraCommand("unset bgTransparency", false);
+    } catch (IOException ioe)
+    {
+      // Log error
+      logger.error("Error writing image", ioe);
+    }
+    return tmpFile;
+  }
+
+  public void closeModel(ChimeraModel model)
+  {
+    // close model in Chimera
+    chimeraManager.closeModel(model);
+    // remove all associations
+    // if (currentChimMap.containsKey(model)) {
+    // for (CyIdentifiable cyObj : model.getCyObjects().keySet()) {
+    // if (cyObj == null) {
+    // continue;
+    // } else if (currentCyMap.containsKey(cyObj)) {
+    // currentCyMap.get(cyObj).remove(model);
+    // } else if (cyObj instanceof CyNetwork) {
+    // for (ChimeraResidue residue : model.getResidues()) {
+    // if (currentChimMap.containsKey(residue)) {
+    // for (CyIdentifiable cyObjRes : currentChimMap.get(residue)) {
+    // if (currentCyMap.containsKey(cyObjRes)) {
+    // currentCyMap.get(cyObjRes).remove(residue);
+    // }
+    // }
+    // currentChimMap.remove(residue);
+    // }
+    // }
+    // }
+    // }
+    // currentChimMap.remove(model);
+    // }
+  }
+
+  // public void addStructureNetwork(CyNetwork rin) {
+  // if (rin == null) {
+  // return;
+  // }
+  // ChimeraModel model = null;
+  // // the network is not added to the model in the currentChimMap
+  // List<String> attrsFound =
+  // CytoUtils.getMatchingAttributes(rin.getDefaultNodeTable(),
+  // getCurrentStructureKeys(rin));
+  // for (CyNode node : rin.getNodeList()) {
+  // if (!networkMap.containsKey(node)) {
+  // networkMap.put(node, new HashSet<CyNetwork>());
+  // }
+  // networkMap.get(node).add(rin);
+  // List<String> specsFound =
+  // ChimUtils.getResidueKeys(rin.getDefaultNodeTable(), node,
+  // attrsFound);
+  // for (String residueSpec : specsFound) {
+  // // if (!rin.getRow(node).isSet(ChimUtils.RESIDUE_ATTR)) {
+  // // continue;
+  // // }
+  // // String residueSpec = rin.getRow(node).get(ChimUtils.RESIDUE_ATTR,
+  // String.class);
+  // ChimeraStructuralObject chimObj = ChimUtils.fromAttribute(residueSpec,
+  // chimeraManager);
+  // // chimObj.getChimeraModel().addCyObject(node, rin);
+  // if (chimObj == null || chimObj instanceof ChimeraModel) {
+  // continue;
+  // }
+  // model = chimObj.getChimeraModel();
+  // if (!currentCyMap.containsKey(node)) {
+  // currentCyMap.put(node, new HashSet<ChimeraStructuralObject>());
+  // }
+  // currentCyMap.get(node).add(chimObj);
+  // if (!currentChimMap.containsKey(chimObj)) {
+  // currentChimMap.put(chimObj, new HashSet<CyIdentifiable>());
+  // }
+  // currentChimMap.get(chimObj).add(node);
+  // }
+  // }
+  // if (model != null) {
+  // model.addCyObject(rin, rin);
+  // if (!currentCyMap.containsKey(rin)) {
+  // currentCyMap.put(rin, new HashSet<ChimeraStructuralObject>());
+  // }
+  // currentCyMap.get(rin).add(model);
+  // }
+  // }
+
+  public void exitChimera()
+  {
+    // // exit chimera, invokes clearOnExitChimera
+    // if (mnDialog != null) {
+    // mnDialog.setVisible(false);
+    // mnDialog = null;
+    // }
+    // if (alDialog != null) {
+    // alDialog.setVisible(false);
+    // }
+    chimeraManager.exitChimera();
+  }
+
+  // invoked by ChimeraManager whenever Chimera exits
+  public void clearOnChimeraExit()
+  {
+    // // clear structures
+    // currentCyMap.clear();
+    // currentChimMap.clear();
+    // networkMap.clear();
+    chimSelectionList.clear();
+    // if (chimTable != null) {
+    // ((CyTableManager)
+    // getService(CyTableManager.class)).deleteTable(chimTable.getSUID());
+    // }
+    // if (mnDialog != null) {
+    // if (mnDialog.isVisible()) {
+    // mnDialog.lostChimera();
+    // mnDialog.setVisible(false);
+    // }
+    // mnDialog = null;
+    // if (alDialog != null) {
+    // alDialog.setVisible(false);
+    // }
+    // }
+  }
+
+  // We need to do this in two passes since some parts of a structure might be
+  // selected and some might not. Our selection model (unfortunately) only
+  // tells
+  // us that something has changed, not what...
+  public void updateCytoscapeSelection()
+  {
+    // List<ChimeraStructuralObject> selectedChimObj
+    ignoreCySelection = true;
+    // System.out.println("update Cytoscape selection");
+    // find all possibly selected Cytoscape objects and unselect them
+    // Set<CyNetwork> networks = new HashSet<CyNetwork>();
+    // for (CyIdentifiable currentCyObj : currentCyMap.keySet()) {
+    // if (!networkMap.containsKey(currentCyObj)) {
+    // continue;
+    // }
+    // Set<CyNetwork> currentCyNetworks = networkMap.get(currentCyObj);
+    // if (currentCyNetworks == null || currentCyNetworks.size() == 0) {
+    //
+    // continue;
+    // }
+    // for (CyNetwork network : currentCyNetworks) {
+    // if ((currentCyObj instanceof CyNode && network.containsNode((CyNode)
+    // currentCyObj))
+    // || (currentCyObj instanceof CyEdge && network
+    // .containsEdge((CyEdge) currentCyObj))) {
+    // network.getRow(currentCyObj).set(CyNetwork.SELECTED, false);
+    // networks.add(network);
+    // }
+    // }
+    // }
+    //
+    // // select only those associated with selected Chimera objects
+    // Set<CyIdentifiable> currentCyObjs = new HashSet<CyIdentifiable>();
+    // for (ChimeraStructuralObject chimObj : chimSelectionList) {
+    // ChimeraModel currentSelModel = chimObj.getChimeraModel();
+    // if (currentChimMap.containsKey(currentSelModel)) {
+    // currentCyObjs.addAll(currentChimMap.get(currentSelModel));
+    // }
+    // if (currentChimMap.containsKey(chimObj)) {
+    // currentCyObjs.addAll(currentChimMap.get(chimObj));
+    // }
+    // // System.out.println(chimObj.toSpec() + ": " +
+    // // currentCyObjs.size());
+    // }
+    // for (CyIdentifiable cyObj : currentCyObjs) {
+    // // System.out.println(cyObj.toString());
+    // if (cyObj == null || !networkMap.containsKey(cyObj)) {
+    // continue;
+    // }
+    // Set<CyNetwork> currentCyNetworks = networkMap.get(cyObj);
+    // if (currentCyNetworks == null || currentCyNetworks.size() == 0) {
+    // continue;
+    // }
+    // for (CyNetwork network : currentCyNetworks) {
+    // if ((cyObj instanceof CyNode && network.containsNode((CyNode) cyObj))
+    // || (cyObj instanceof CyEdge && network.containsEdge((CyEdge) cyObj))) {
+    // network.getRow(cyObj).set(CyNetwork.SELECTED, true);
+    // networks.add(network);
+    // }
+    // }
+    // }
+    //
+    // CyNetworkViewManager cyNetViewManager = (CyNetworkViewManager)
+    // getService(CyNetworkViewManager.class);
+    // // Update network views
+    // for (CyNetwork network : networks) {
+    // Collection<CyNetworkView> views =
+    // cyNetViewManager.getNetworkViews(network);
+    // for (CyNetworkView view : views) {
+    // view.updateView();
+    // }
+    // }
+    ignoreCySelection = false;
+  }
+
+  public void cytoscapeSelectionChanged(Map<Long, Boolean> selectedRows)
+  {
+    // if (ignoreCySelection || currentCyMap.size() == 0) {
+    // return;
+    // }
+    // // clearSelectionList();
+    // // System.out.println("cytoscape selection changed");
+    // // iterate over all cy objects with associated models
+    // for (CyIdentifiable cyObj : currentCyMap.keySet()) {
+    // if (cyObj instanceof CyNetwork ||
+    // !selectedRows.containsKey(cyObj.getSUID())) {
+    // continue;
+    // }
+    // for (ChimeraStructuralObject chimObj : currentCyMap.get(cyObj)) {
+    // if (selectedRows.get(cyObj.getSUID())) {
+    // addChimSelection(chimObj);
+    // if (chimObj instanceof ChimeraResidue) {
+    // if (chimObj.getChimeraModel().isSelected()) {
+    // removeChimSelection(chimObj.getChimeraModel());
+    // } else if (chimObj.getChimeraModel()
+    // .getChain(((ChimeraResidue) chimObj).getChainId()).isSelected()) {
+    // removeChimSelection(chimObj.getChimeraModel().getChain(
+    // ((ChimeraResidue) chimObj).getChainId()));
+    // }
+    // }
+    // } else {
+    // removeChimSelection(chimObj);
+    // if (chimObj.hasSelectedChildren() && chimObj instanceof ChimeraModel) {
+    // for (ChimeraResidue residue : ((ChimeraModel) chimObj)
+    // .getSelectedResidues()) {
+    // removeChimSelection(residue);
+    // }
+    // }
+    // }
+    // }
+    // }
+    // System.out.println("selection list: " + getChimSelectionCount());
+    updateChimeraSelection();
+    selectionChanged();
+  }
+
+  // Save models in a HashMap/Set for better performance?
+  public void updateChimeraSelection()
+  {
+    // System.out.println("update Chimera selection");
+    String selSpec = "";
+    for (int i = 0; i < chimSelectionList.size(); i++)
+    {
+      ChimeraStructuralObject nodeInfo = chimSelectionList.get(i);
+      // we do not care about the model anymore
+      selSpec = selSpec.concat(nodeInfo.toSpec());
+      if (i < chimSelectionList.size() - 1)
+        selSpec.concat("|");
+    }
+    if (selSpec.length() > 0)
+    {
+      chimeraManager.select("sel " + selSpec);
+    }
+    else
+    {
+      chimeraManager.select("~sel");
+    }
+  }
+
+  /**
+   * This is called by the selectionListener to let us know that the user has
+   * changed their selection in Chimera. We need to go back to Chimera to find
+   * out what is currently selected and update our list.
+   */
+  public void chimeraSelectionChanged()
+  {
+    // System.out.println("Chimera selection changed");
+    clearSelectionList();
+    // Execute the command to get the list of models with selections
+    Map<Integer, ChimeraModel> selectedModelsMap = chimeraManager
+            .getSelectedModels();
+    // Now get the residue-level data
+    chimeraManager.getSelectedResidues(selectedModelsMap);
+    // Get the selected objects
+    try
+    {
+      for (ChimeraModel selectedModel : selectedModelsMap.values())
+      {
+        int modelNumber = selectedModel.getModelNumber();
+        int subModelNumber = selectedModel.getSubModelNumber();
+        // Get the corresponding "real" model
+        if (chimeraManager.hasChimeraModel(modelNumber, subModelNumber))
+        {
+          ChimeraModel dataModel = chimeraManager.getChimeraModel(
+                  modelNumber, subModelNumber);
+          if (dataModel.getResidueCount() == selectedModel
+                  .getResidueCount()
+                  || dataModel.getModelType() == StructureManager.ModelType.SMILES)
+          {
+            // Select the entire model
+            addChimSelection(dataModel);
+            // dataModel.setSelected(true);
+          }
+          else
+          {
+            for (ChimeraChain selectedChain : selectedModel.getChains())
+            {
+              ChimeraChain dataChain = dataModel.getChain(selectedChain
+                      .getChainId());
+              if (selectedChain.getResidueCount() == dataChain
+                      .getResidueCount())
+              {
+                addChimSelection(dataChain);
+                // dataChain.setSelected(true);
+              }
+              // else {
+              // Need to select individual residues
+              for (ChimeraResidue res : selectedChain.getResidues())
+              {
+                String residueIndex = res.getIndex();
+                ChimeraResidue residue = dataChain.getResidue(residueIndex);
+                if (residue == null)
+                {
+                  continue;
+                }
+                addChimSelection(residue);
+                // residue.setSelected(true);
+              } // resIter.hasNext
+                // }
+            } // chainIter.hasNext()
+          }
+        }
+      } // modelIter.hasNext()
+    } catch (Exception ex)
+    {
+      logger.warn("Could not update selection", ex);
+    }
+    // System.out.println("selection list: " + getChimSelectionCount());
+    // Finally, update the navigator panel
+    selectionChanged();
+    updateCytoscapeSelection();
+  }
+
+  public void selectFunctResidues(Collection<ChimeraModel> models)
+  {
+    clearSelectionList();
+    for (ChimeraModel model : models)
+    {
+      for (ChimeraResidue residue : model.getFuncResidues())
+      {
+        addChimSelection(residue);
+      }
+    }
+    updateChimeraSelection();
+    updateCytoscapeSelection();
+    selectionChanged();
+  }
+
+  // public void selectFunctResidues(CyNode node, CyNetwork network) {
+  // clearSelectionList();
+  // if (currentCyMap.containsKey(node)) {
+  // Set<ChimeraStructuralObject> chimObjects = currentCyMap.get(node);
+  // for (ChimeraStructuralObject obj : chimObjects) {
+  // if (obj instanceof ChimeraModel) {
+  // ChimeraModel model = (ChimeraModel) obj;
+  // for (ChimeraResidue residue : model.getFuncResidues()) {
+  // addChimSelection(residue);
+  // }
+  // }
+  // }
+  // }
+  // updateChimeraSelection();
+  // updateCytoscapeSelection();
+  // selectionChanged();
+  // }
+
+  public List<ChimeraStructuralObject> getChimSelectionList()
+  {
+    return chimSelectionList;
+  }
+
+  public int getChimSelectionCount()
+  {
+    return chimSelectionList.size();
+  }
+
+  /**
+   * Add a selection to the selection list. This is called primarily by the
+   * Model Navigator Dialog to keep the selections in sync
+   * 
+   * @param selectionToAdd
+   *          the selection to add to our list
+   */
+  public void addChimSelection(ChimeraStructuralObject selectionToAdd)
+  {
+    if (selectionToAdd != null
+            && !chimSelectionList.contains(selectionToAdd))
+    {
+      chimSelectionList.add(selectionToAdd);
+      selectionToAdd.setSelected(true);
+    }
+  }
+
+  /**
+   * Remove a selection from the selection list. This is called primarily by the
+   * Model Navigator Dialog to keep the selections in sync
+   * 
+   * @param selectionToRemove
+   *          the selection to remove from our list
+   */
+  public void removeChimSelection(ChimeraStructuralObject selectionToRemove)
+  {
+    if (selectionToRemove != null
+            && chimSelectionList.contains(selectionToRemove))
+    {
+      chimSelectionList.remove(selectionToRemove);
+      selectionToRemove.setSelected(false);
+    }
+  }
+
+  /**
+   * Clear the list of selected objects
+   */
+  public void clearSelectionList()
+  {
+    for (ChimeraStructuralObject cso : chimSelectionList)
+    {
+      if (cso != null)
+        cso.setSelected(false);
+    }
+    chimSelectionList.clear();
+  }
+
+  /**
+   * Associate a new network with the corresponding Chimera objects.
+   * 
+   * @param network
+   */
+
+  /**
+   * Dump and refresh all of our model/chain/residue info
+   */
+  public void updateModels()
+  {
+    // Stop all of our listeners while we try to handle this
+    chimeraManager.stopListening();
+
+    // Get all of the open models
+    List<ChimeraModel> newModelList = chimeraManager.getModelList();
+
+    // Match them up -- assume that the model #'s haven't changed
+    for (ChimeraModel newModel : newModelList)
+    {
+      // Get the color (for our navigator)
+      newModel.setModelColor(chimeraManager.getModelColor(newModel));
+
+      // Get our model info
+      int modelNumber = newModel.getModelNumber();
+      int subModelNumber = newModel.getSubModelNumber();
+
+      // If we already know about this model number, get the Structure,
+      // which tells us about the associated CyNode
+      if (chimeraManager.hasChimeraModel(modelNumber, subModelNumber))
+      {
+        ChimeraModel oldModel = chimeraManager.getChimeraModel(modelNumber,
+                subModelNumber);
+        chimeraManager.removeChimeraModel(modelNumber, subModelNumber);
+        newModel.setModelType(oldModel.getModelType());
+        if (oldModel.getModelType() == ModelType.SMILES)
+        {
+          newModel.setModelName(oldModel.getModelName());
+        }
+        // re-assign associations to cytoscape objects
+        // Map<CyIdentifiable, CyNetwork> oldModelCyObjs =
+        // oldModel.getCyObjects();
+        // for (CyIdentifiable cyObj : oldModelCyObjs.keySet()) {
+        // // add cy objects to the new model
+        // newModel.addCyObject(cyObj, oldModelCyObjs.get(cyObj));
+        // if (currentCyMap.containsKey(cyObj)) {
+        // currentCyMap.get(cyObj).add(newModel);
+        // if (currentCyMap.get(cyObj).contains(oldModel)) {
+        // currentCyMap.get(cyObj).remove(oldModel);
+        // }
+        // }
+        // }
+        // // add new model to the chimera objects map and remove old model
+        // if (currentChimMap.containsKey(oldModel)) {
+        // currentChimMap.put(newModel, currentChimMap.get(oldModel));
+        // currentChimMap.remove(oldModel);
+        // }
+      }
+      // add new model to ChimeraManager
+      chimeraManager.addChimeraModel(modelNumber, subModelNumber, newModel);
+
+      // Get the residue information
+      if (newModel.getModelType() != ModelType.SMILES)
+      {
+        chimeraManager.addResidues(newModel);
+      }
+      // for (CyIdentifiable cyObj : newModel.getCyObjects().keySet()) {
+      // if (cyObj != null && cyObj instanceof CyNetwork) {
+      // addStructureNetwork((CyNetwork) cyObj);
+      // } else if (cyObj != null && cyObj instanceof CyNode) {
+      // newModel.setFuncResidues(ChimUtils.parseFuncRes(
+      // getResidueList(newModel.getCyObjects().get(cyObj), cyObj),
+      // newModel.getModelName()));
+      // }
+      // }
+    }
+
+    // associate all models with any node or network
+    // aTask.associate();
+
+    // Restart all of our listeners
+    chimeraManager.startListening();
+    // Done
+  }
+
+  public void launchModelNavigatorDialog()
+  {
+    // TODO: [Optional] Use haveGUI flag
+    // if (!haveGUI) {
+    // return;
+    // }
+    // if (mnDialog == null) {
+    // CySwingApplication cyApplication = (CySwingApplication)
+    // getService(CySwingApplication.class);
+    // mnDialog = new ModelNavigatorDialog(cyApplication.getJFrame(), this);
+    // mnDialog.pack();
+    // }
+    // mnDialog.setVisible(true);
+  }
+
+  public boolean isMNDialogOpen()
+  {
+    // if (mnDialog != null && mnDialog.isVisible()) {
+    // return true;
+    // }
+    return false;
+  }
+
+  /**
+   * Invoked by the listener thread.
+   */
+  public void modelChanged()
+  {
+    // if (mnDialog != null) {
+    // mnDialog.modelChanged();
+    // }
+  }
+
+  /**
+   * Inform our interface that the selection has changed
+   */
+  public void selectionChanged()
+  {
+    // if (mnDialog != null) {
+    // // System.out.println("update dialog selection");
+    // mnDialog.updateSelection(new
+    // ArrayList<ChimeraStructuralObject>(chimSelectionList));
+    // }
+  }
+
+  public void launchAlignDialog(boolean useChains)
+  {
+    // TODO: [Optional] Use haveGUI flag
+    // Sometimes it does not appear in Windows
+    // if (!haveGUI) {
+    // return;
+    // }
+    // if (alDialog != null) {
+    // alDialog.setVisible(false);
+    // alDialog.dispose();
+    // }
+    // System.out.println("launch align dialog");
+    List<ChimeraStructuralObject> chimObjectList = new ArrayList<ChimeraStructuralObject>();
+    for (ChimeraModel model : chimeraManager.getChimeraModels())
+    {
+      if (useChains)
+      {
+        for (ChimeraChain chain : model.getChains())
+        {
+          chimObjectList.add(chain);
+        }
+      }
+      else
+      {
+        chimObjectList.add(model);
+      }
+    }
+    // Bring up the dialog
+    // CySwingApplication cyApplication = (CySwingApplication)
+    // getService(CySwingApplication.class);
+    // alDialog = new AlignStructuresDialog(cyApplication.getJFrame(), this,
+    // chimObjectList);
+    // alDialog.pack();
+    // alDialog.setVisible(true);
+  }
+
+  public List<String> getAllStructureKeys()
+  {
+    return Arrays.asList(defaultStructureKeys);
+  }
+
+  public List<String> getAllChemStructKeys()
+  {
+    return Arrays.asList(defaultChemStructKeys);
+  }
+
+  public List<String> getAllResidueKeys()
+  {
+    return Arrays.asList(defaultResidueKeys);
+  }
+
+  public List<String> getAllChimeraResidueAttributes()
+  {
+    List<String> attributes = new ArrayList<String>();
+    // attributes.addAll(rinManager.getResAttrs());
+    attributes.addAll(chimeraManager.getAttrList());
+    return attributes;
+  }
+
+  StructureSettings defaultSettings = null;
+
+  // TODO: [Optional] Change priority of Chimera paths
+  public List<String> getChimeraPaths()
+  {
+    List<String> pathList = new ArrayList<String>();
+
+    // if no network is available and the settings have been modified by the
+    // user, check for a
+    // path to chimera
+    if (defaultSettings != null)
+    {
+      String defaultPath = defaultSettings.getChimeraPath();
+      if (defaultPath != null && !defaultPath.equals(""))
+      {
+        pathList.add(defaultPath);
+        return pathList;
+      }
+    }
+
+    // if no network settings, check if the last chimera path is saved in the
+    // session
+    // String lastPath = CytoUtils.getDefaultChimeraPath(registrar,
+    // chimeraPropertyName,
+    // chimeraPathPropertyKey);
+    // if (lastPath != null && !lastPath.equals("")) {
+    // pathList.add(lastPath);
+    // return pathList;
+    // }
+
+    // if no user settings and no last path, get default system's settings
+    String os = System.getProperty("os.name");
+    if (os.startsWith("Linux"))
+    {
+      pathList.add("/usr/local/chimera/bin/chimera");
+      pathList.add("/usr/local/bin/chimera");
+      pathList.add("/usr/bin/chimera");
+    }
+    else if (os.startsWith("Windows"))
+    {
+      pathList.add("\\Program Files\\Chimera\\bin\\chimera");
+      pathList.add("C:\\Program Files\\Chimera\\bin\\chimera.exe");
+    }
+    else if (os.startsWith("Mac"))
+    {
+      pathList.add("/Applications/Chimera.app/Contents/MacOS/chimera");
+    }
+    return pathList;
+  }
+
+  public void setChimeraPathProperty(String path)
+  {
+    // CytoUtils.setDefaultChimeraPath(registrar, chimeraPropertyName,
+    // chimeraPathPropertyKey,
+    // path);
+  }
+
+  public void setStructureSettings(StructureSettings structureSettings)
+  {
+    this.defaultSettings = structureSettings;
+  }
+
+  public String getCurrentChimeraPath(Object object)
+  {
+    if (defaultSettings != null)
+    {
+      return defaultSettings.getChimeraPath();
+    }
+    else
+    {
+      return "";
+    }
+  }
+
+  // public void initChimTable() {
+  // CyTableManager manager = (CyTableManager) getService(CyTableManager.class);
+  // CyTableFactory factory = (CyTableFactory) getService(CyTableFactory.class);
+  // for (CyTable table : manager.getGlobalTables()) {
+  // if (table.getTitle().equals(chimeraOutputTable)) {
+  // manager.deleteTable(table.getSUID());
+  // }
+  // }
+  // chimTable = factory.createTable(chimeraOutputTable, chimeraCommandAttr,
+  // String.class,
+  // false, true);
+  // manager.addTable(chimTable);
+  // if (chimTable.getColumn(chimeraOutputAttr) == null) {
+  // chimTable.createListColumn(chimeraOutputAttr, String.class, false);
+  // }
+  // }
+
+  // public void addChimReply(String command, List<String> reply) {
+  // chimTable.getRow(command).set(chimeraOutputAttr, reply);
+  // }
+
+}
diff --git a/src/ext/edu/ucsf/rbvi/strucviz2/StructureSettings.java b/src/ext/edu/ucsf/rbvi/strucviz2/StructureSettings.java
new file mode 100644 (file)
index 0000000..161ab13
--- /dev/null
@@ -0,0 +1,25 @@
+package ext.edu.ucsf.rbvi.strucviz2;
+
+/**
+ * This object maintains the relationship between Chimera objects and Cytoscape objects.
+ */
+public class StructureSettings {
+
+//     @Tunable(description = "Path to UCSF Chimera application", gravity = 4.0)
+       public String chimeraPath = null;
+
+       public StructureSettings(StructureManager manager) {
+               
+               chimeraPath = manager.getCurrentChimeraPath(null);
+
+               // This seems a little strange, but it has to do with the order of tunable interceptor
+               // handling. We need to set these selectors in our structure manager and dynamically
+               // pull the data out as needed....
+               manager.setStructureSettings( this);
+       }
+
+
+       public String getChimeraPath() {
+               return chimeraPath;
+       }
+}
diff --git a/src/ext/edu/ucsf/rbvi/strucviz2/port/ListenerThreads.java b/src/ext/edu/ucsf/rbvi/strucviz2/port/ListenerThreads.java
new file mode 100644 (file)
index 0000000..dee027b
--- /dev/null
@@ -0,0 +1,218 @@
+package ext.edu.ucsf.rbvi.strucviz2.port;
+
+import java.io.BufferedReader;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import ext.edu.ucsf.rbvi.strucviz2.*;
+
+/***************************************************
+ *                 Thread Classes                  *
+ **************************************************/
+
+/**
+ * Reply listener thread
+ */
+public class ListenerThreads extends Thread {
+       private InputStream readChan = null;
+       private BufferedReader lineReader = null;
+       private Process chimera = null;
+       private Map<String, List<String>> replyLog = null;
+       private Logger logger;
+       private StructureManager structureManager = null;
+
+       /**
+        * Create a new listener thread to read the responses from Chimera
+        * 
+        * @param chimera
+        *            a handle to the Chimera Process
+        * @param log
+        *            a handle to a List to post the responses to
+        * @param chimeraObject
+        *            a handle to the Chimera Object
+        */
+       public ListenerThreads(Process chimera, StructureManager structureManager) {
+               this.chimera = chimera;
+               this.structureManager = structureManager;
+               replyLog = new HashMap<String, List<String>>();
+               // Get a line-oriented reader
+               readChan = chimera.getInputStream();
+               lineReader = new BufferedReader(new InputStreamReader(readChan));
+               logger = LoggerFactory.getLogger(ext.edu.ucsf.rbvi.strucviz2.port.ListenerThreads.class);
+       }
+
+       /**
+        * Start the thread running
+        */
+       public void run() {
+               // System.out.println("ReplyLogListener running");
+               while (true) {
+                       try {
+                               chimeraRead();
+                       } catch (IOException e) {
+                               logger.warn("UCSF Chimera has exited: " + e.getMessage());
+                               return;
+                       }
+               }
+       }
+
+       public List<String> getResponse(String command) {
+               List<String> reply;
+               // System.out.println("getResponse: "+command);
+               while (!replyLog.containsKey(command)) {
+                       try {
+                               Thread.currentThread().sleep(100);
+                       } catch (InterruptedException e) {
+                       }
+               }
+
+               synchronized (replyLog) {
+                       reply = replyLog.get(command);
+                       // System.out.println("getResponse ("+command+") = "+reply);
+                       replyLog.remove(command);
+               }
+               return reply;
+       }
+
+       public void clearResponse(String command) {
+               try {
+                       Thread.currentThread().sleep(100);
+               } catch (InterruptedException e) {
+               }
+               if (replyLog.containsKey(command))
+                       replyLog.remove(command);
+               return;
+       }
+
+       /**
+        * Read input from Chimera
+        * 
+        * @return a List containing the replies from Chimera
+        */
+       private void chimeraRead() throws IOException {
+               if (chimera == null)
+                       return;
+
+               String line = null;
+               while ((line = lineReader.readLine()) != null) {
+                       // System.out.println("From Chimera-->" + line);
+                       if (line.startsWith("CMD")) {
+                               chimeraCommandRead(line.substring(4));
+                       } else if (line.startsWith("ModelChanged: ")) {
+                               (new ModelUpdater()).start();
+                       } else if (line.startsWith("SelectionChanged: ")) {
+                               (new SelectionUpdater()).start();
+                       } else if (line.startsWith("Trajectory residue network info:")) {
+                               (new NetworkUpdater(line)).start();
+                       }
+               }
+               return;
+       }
+
+       private void chimeraCommandRead(String command) throws IOException {
+               // Generally -- looking for:
+               // CMD command
+               // ........
+               // END
+               // We return the text in between
+               List<String> reply = new ArrayList<String>();
+               boolean updateModels = false;
+               boolean updateSelection = false;
+               boolean importNetwork = false;
+               String line = null;
+
+               synchronized (replyLog) {
+                       while ((line = lineReader.readLine()) != null) {
+                               // System.out.println("From Chimera (" + command + ") -->" + line);
+                               if (line.startsWith("CMD")) {
+                                       logger.warn("Got unexpected command from Chimera: " + line);
+
+                               } else if (line.startsWith("END")) {
+                                       break;
+                               }
+                               if (line.startsWith("ModelChanged: ")) {
+                                       updateModels = true;
+                               } else if (line.startsWith("SelectionChanged: ")) {
+                                       updateSelection = true;
+                               } else if (line.length() == 0) {
+                                       continue;
+                               } else if (!line.startsWith("CMD")) {
+                                       reply.add(line);
+                               } else if (line.startsWith("Trajectory residue network info:")) {
+                                       importNetwork = true;
+                               }
+                       }
+                       replyLog.put(command, reply);
+               }
+               if (updateModels)
+                       (new ModelUpdater()).start();
+               if (updateSelection)
+                       (new SelectionUpdater()).start();
+               if (importNetwork) {
+                       (new NetworkUpdater(line)).start();
+               }
+               return;
+       }
+
+       /**
+        * Model updater thread
+        */
+       class ModelUpdater extends Thread {
+
+               public ModelUpdater() {
+               }
+
+               public void run() {
+                       structureManager.updateModels();
+                       structureManager.modelChanged();
+               }
+       }
+
+       /**
+        * Selection updater thread
+        */
+       class SelectionUpdater extends Thread {
+
+               public SelectionUpdater() {
+               }
+
+               public void run() {
+                       try {
+                         logger.info("Responding to chimera selection");
+                         structureManager.chimeraSelectionChanged();
+                       } catch (Exception e) {
+                               logger.warn("Could not update selection", e);
+                       }
+               }
+       }
+
+       /**
+        * Selection updater thread
+        */
+       class NetworkUpdater extends Thread {
+
+               private String line;
+
+               public NetworkUpdater(String line) {
+                       this.line = line;
+               }
+
+               public void run() {
+                       try {
+//                             ((TaskManager<?, ?>) structureManager.getService(TaskManager.class))
+//                                             .execute(new ImportTrajectoryRINTaskFactory(structureManager, line)
+//                                                             .createTaskIterator());
+                       } catch (Exception e) {
+                               logger.warn("Could not import trajectory network", e);
+                       }
+               }
+       }
+}
index 23ed3f4..51e3117 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package ext.vamsas;
index b0ffe9e..6aae76a 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package ext.vamsas;
index d411513..3473d4c 100755 (executable)
@@ -1,23 +1,27 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package ext.vamsas;
 
+import jalview.util.MessageManager;
+
 public class IRegistryServiceLocator extends org.apache.axis.client.Service
         implements ext.vamsas.IRegistryService
 {
@@ -107,10 +111,7 @@ public class IRegistryServiceLocator extends org.apache.axis.client.Service
     {
       throw new javax.xml.rpc.ServiceException(t);
     }
-    throw new javax.xml.rpc.ServiceException(
-            "There is no stub implementation for the interface:  "
-                    + (serviceEndpointInterface == null ? "null"
-                            : serviceEndpointInterface.getName()));
+    throw new javax.xml.rpc.ServiceException(MessageManager.formatMessage("exception.no_stub_implementation_for_interface", new String[]{(serviceEndpointInterface == null ? "null": serviceEndpointInterface.getName())}));
   }
 
   /**
@@ -167,8 +168,7 @@ public class IRegistryServiceLocator extends org.apache.axis.client.Service
     }
     else
     { // Unknown Port Name
-      throw new javax.xml.rpc.ServiceException(
-              " Cannot set Endpoint Address for Unknown Port" + portName);
+      throw new javax.xml.rpc.ServiceException(MessageManager.formatMessage("exception.cannot_set_endpoint_address_unknown_port", new String[]{portName}));
     }
   }
 
index 59dadcc..a273332 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package ext.vamsas;
index cc7a008..9f894a8 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package ext.vamsas;
index 7a23737..79e9636 100755 (executable)
@@ -1,23 +1,27 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package ext.vamsas;
 
+import jalview.util.MessageManager;
+
 public class JpredServiceLocator extends org.apache.axis.client.Service
         implements ext.vamsas.JpredService
 {
@@ -105,10 +109,7 @@ public class JpredServiceLocator extends org.apache.axis.client.Service
     {
       throw new javax.xml.rpc.ServiceException(t);
     }
-    throw new javax.xml.rpc.ServiceException(
-            "There is no stub implementation for the interface:  "
-                    + (serviceEndpointInterface == null ? "null"
-                            : serviceEndpointInterface.getName()));
+    throw new javax.xml.rpc.ServiceException(MessageManager.formatMessage("exception.no_stub_implementation_for_interface", new String[]{(serviceEndpointInterface == null ? "null": serviceEndpointInterface.getName())}));
   }
 
   /**
@@ -165,8 +166,7 @@ public class JpredServiceLocator extends org.apache.axis.client.Service
     }
     else
     { // Unknown Port Name
-      throw new javax.xml.rpc.ServiceException(
-              " Cannot set Endpoint Address for Unknown Port" + portName);
+      throw new javax.xml.rpc.ServiceException(MessageManager.formatMessage("exception.cannot_set_endpoint_address_unknown_port", new String[]{portName}));
     }
   }
 
index b35eabe..b84eef9 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package ext.vamsas;
index ef9f1f7..2426ae2 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package ext.vamsas;
index 31bfd22..3fa8103 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package ext.vamsas;
index a79dd27..9a580f8 100755 (executable)
@@ -1,23 +1,27 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package ext.vamsas;
 
+import jalview.util.MessageManager;
+
 public class MuscleWSServiceLocator extends org.apache.axis.client.Service
         implements ext.vamsas.MuscleWSService
 {
@@ -113,10 +117,7 @@ public class MuscleWSServiceLocator extends org.apache.axis.client.Service
       throw new javax.xml.rpc.ServiceException(t);
     }
 
-    throw new javax.xml.rpc.ServiceException(
-            "There is no stub implementation for the interface:  "
-                    + ((serviceEndpointInterface == null) ? "null"
-                            : serviceEndpointInterface.getName()));
+    throw new javax.xml.rpc.ServiceException(MessageManager.formatMessage("exception.no_stub_implementation_for_interface", new String[]{(serviceEndpointInterface == null ? "null": serviceEndpointInterface.getName())}));
   }
 
   /**
@@ -175,8 +176,7 @@ public class MuscleWSServiceLocator extends org.apache.axis.client.Service
     }
     else
     { // Unknown Port Name
-      throw new javax.xml.rpc.ServiceException(
-              " Cannot set Endpoint Address for Unknown Port" + portName);
+      throw new javax.xml.rpc.ServiceException(MessageManager.formatMessage("exception.cannot_set_endpoint_address_unknown_port", new String[]{portName}));
     }
   }
 
index 7054d6f..d5484af 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package ext.vamsas;
index b3fdb09..810ce40 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package ext.vamsas;
index 63b3fec..1e54f13 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package ext.vamsas;
index a5708fe..75f46a3 100644 (file)
@@ -1,23 +1,27 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package ext.vamsas;
 
+import jalview.util.MessageManager;
+
 public class SeqSearchServiceLocator extends org.apache.axis.client.Service
         implements ext.vamsas.SeqSearchServiceService
 {
@@ -107,10 +111,7 @@ public class SeqSearchServiceLocator extends org.apache.axis.client.Service
     {
       throw new javax.xml.rpc.ServiceException(t);
     }
-    throw new javax.xml.rpc.ServiceException(
-            "There is no stub implementation for the interface:  "
-                    + (serviceEndpointInterface == null ? "null"
-                            : serviceEndpointInterface.getName()));
+    throw new javax.xml.rpc.ServiceException(MessageManager.formatMessage("exception.no_stub_implementation_for_interface", new String[]{(serviceEndpointInterface == null ? "null": serviceEndpointInterface.getName())}));
   }
 
   /**
@@ -167,8 +168,7 @@ public class SeqSearchServiceLocator extends org.apache.axis.client.Service
     }
     else
     { // Unknown Port Name
-      throw new javax.xml.rpc.ServiceException(
-              " Cannot set Endpoint Address for Unknown Port" + portName);
+      throw new javax.xml.rpc.ServiceException(MessageManager.formatMessage("exception.cannot_set_endpoint_address_unknown_port", new String[]{portName}));
     }
   }
 
index e8d145d..d7b603b 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package ext.vamsas;
index fba1287..c507a94 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package ext.vamsas;
index bb27197..b4b6c39 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package ext.vamsas;
index 250f8bc..a0156c1 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package ext.vamsas;
index d028ade..69d32cb 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.analysis;
@@ -92,7 +94,7 @@ public class AAFrequency
     Hashtable residueHash;
     int maxCount, nongap, i, j, v, jSize = sequences.length;
     String maxResidue;
-    char c='-';
+    char c = '-';
     float percentage;
 
     int[] values = new int[255];
@@ -106,7 +108,7 @@ public class AAFrequency
       maxResidue = "";
       nongap = 0;
       values = new int[255];
-      
+
       for (j = 0; j < jSize; j++)
       {
         if (sequences[j] == null)
@@ -144,27 +146,30 @@ public class AAFrequency
           values['-']++;
         }
       }
-      if (jSize==1)
+      if (jSize == 1)
       {
         maxResidue = String.valueOf(c);
-        maxCount=1;
-      } else {for (v = 'A'; v < 'Z'; v++)
+        maxCount = 1;
+      }
+      else
       {
-        if (values[v] < 2 || values[v] < maxCount)
+        for (v = 'A'; v < 'Z'; v++)
         {
-          continue;
-        }
+          if (values[v] < 2 || values[v] < maxCount)
+          {
+            continue;
+          }
 
-        if (values[v] > maxCount)
-        {
-          maxResidue = String.valueOf((char) v);
-        }
-        else if (values[v] == maxCount)
-        {
-          maxResidue += String.valueOf((char) v);
+          if (values[v] > maxCount)
+          {
+            maxResidue = String.valueOf((char) v);
+          }
+          else if (values[v] == maxCount)
+          {
+            maxResidue += String.valueOf((char) v);
+          }
+          maxCount = values[v];
         }
-        maxCount = values[v];
-      }
       }
       if (maxResidue.length() == 0)
       {
@@ -182,12 +187,13 @@ public class AAFrequency
       percentage = ((float) maxCount * 100) / jSize;
       residueHash.put(PID_GAPS, new Float(percentage));
 
-      if (nongap>0) {
+      if (nongap > 0)
+      {
         // calculate for non-gapped too
         percentage = ((float) maxCount * 100) / nongap;
       }
       residueHash.put(PID_NOGAPS, new Float(percentage));
-      
+
       result[i] = residueHash;
     }
   }
@@ -203,7 +209,7 @@ public class AAFrequency
    * @param width
    * @param ignoreGapsInConsensusCalculation
    * @param includeAllConsSymbols
-   * @param nseq 
+   * @param nseq
    */
   public static void completeConsensus(AlignmentAnnotation consensus,
           Hashtable[] hconsensus, int iStart, int width,
@@ -211,8 +217,9 @@ public class AAFrequency
           boolean includeAllConsSymbols, long nseq)
   {
     completeConsensus(consensus, hconsensus, iStart, width,
-            ignoreGapsInConsensusCalculation, includeAllConsSymbols, null, nseq); // new
-                                                                            // char[]
+            ignoreGapsInConsensusCalculation, includeAllConsSymbols, null,
+            nseq); // new
+    // char[]
     // { 'A', 'C', 'G', 'T', 'U' });
   }
 
@@ -229,21 +236,24 @@ public class AAFrequency
       // initialised properly
       return;
     }
-    String fmtstr="%3.1f";
-    int precision=0;
-    while (nseq>=10) {
+    String fmtstr = "%3.1f";
+    int precision = 0;
+    while (nseq >= 10)
+    {
       precision++;
-      nseq/=10;
+      nseq /= 10;
     }
     final Format fmt;
-    if (precision>1)
+    if (precision > 1)
     {
-      //if (precision>2)
+      // if (precision>2)
       {
-        fmtstr = "%"+(2+precision)+"."+(precision)+"f";
+        fmtstr = "%" + (2 + precision) + "." + (precision) + "f";
       }
       fmt = new Format(fmtstr);
-    } else {
+    }
+    else
+    {
       fmt = null;
     }
     for (int i = iStart; i < width; i++)
@@ -291,7 +301,7 @@ public class AAFrequency
             tval = profile[0][alphabet[c]] * 100f
                     / profile[1][ignoreGapsInConsensusCalculation ? 1 : 0];
             mouseOver += ((c == 0) ? "" : "; ") + alphabet[c] + " "
-                    + ((fmt!=null) ? fmt.form(tval) : ((int) tval)) + "%";
+                    + ((fmt != null) ? fmt.form(tval) : ((int) tval)) + "%";
           }
         }
         else
@@ -314,7 +324,9 @@ public class AAFrequency
                       * 100f
                       / profile[1][ignoreGapsInConsensusCalculation ? 1 : 0];
               mouseOver += ((p == 0) ? "" : "; ") + ((char[]) ca[c])[0]
-                      + " " + ((fmt!=null) ? fmt.form(tval) : ((int) tval)) + "%";
+                      + " "
+                      + ((fmt != null) ? fmt.form(tval) : ((int) tval))
+                      + "%";
               p++;
 
             }
@@ -324,7 +336,8 @@ public class AAFrequency
       }
       else
       {
-        mouseOver += ((fmt!=null) ? fmt.form(value) : ((int) value)) + "%";
+        mouseOver += ((fmt != null) ? fmt.form(value) : ((int) value))
+                + "%";
       }
       consensus.annotations[i] = new Annotation(maxRes, mouseOver, ' ',
               value);
index 5b37934..4460985 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.analysis;
@@ -268,16 +270,16 @@ public class AlignSeq
   }
 
   /**
-   * DOCUMENT ME!
+   * Construct score matrix for sequences with standard DNA or PEPTIDE matrix
    * 
    * @param s1
-   *          DOCUMENT ME!
+   *          - sequence 1
    * @param string1
-   *          - string to align for sequence1
+   *          - string to use for s1
    * @param s2
-   *          sequence 2
+   *          - sequence 2
    * @param string2
-   *          - string to align for sequence2
+   *          - string to use for s2
    * @param type
    *          DNA or PEPTIDE
    */
@@ -290,6 +292,20 @@ public class AlignSeq
     SeqInit(string1, string2);
   }
 
+  /**
+   * Construct score matrix for sequences with custom substitution matrix
+   * 
+   * @param s1
+   *          - sequence 1
+   * @param string1
+   *          - string to use for s1
+   * @param s2
+   *          - sequence 2
+   * @param string2
+   *          - string to use for s2
+   * @param scoreMatrix
+   *          - substitution matrix to use for alignment
+   */
   public void SeqInit(SequenceI s1, String string1, SequenceI s2,
           String string2, ScoreMatrix scoreMatrix)
   {
@@ -394,8 +410,7 @@ public class AlignSeq
     else
     {
       output.append("Wrong type = dna or pep only");
-      throw new Error("Unknown Type " + type2
-              + " - dna or pep are the only allowed values.");
+      throw new Error(MessageManager.formatMessage("error.unknown_type_dna_or_pep", new String[]{type2}));
     }
   }
 
@@ -921,6 +936,94 @@ public class AlignSeq
   }
 
   /**
+   * Compute a globally optimal needleman and wunsch alignment between two
+   * sequences
+   * 
+   * @param s1
+   * @param s2
+   * @param type
+   *          AlignSeq.DNA or AlignSeq.PEP
+   */
+  public static AlignSeq doGlobalNWAlignment(SequenceI s1, SequenceI s2,
+          String type)
+  {
+    AlignSeq as = new AlignSeq(s1, s2, type);
+
+    as.calcScoreMatrix();
+    as.traceAlignment();
+    return as;
+  }
+
+  /**
+   * 
+   * @return mapping from positions in S1 to corresponding positions in S2
+   */
+  public jalview.datamodel.Mapping getMappingFromS1(boolean allowmismatch)
+  {
+    ArrayList<Integer> as1 = new ArrayList<Integer>(), as2 = new ArrayList<Integer>();
+    int pdbpos = s2.getStart() + getSeq2Start() - 2;
+    int alignpos = s1.getStart() + getSeq1Start() - 2;
+    int lp2 = pdbpos - 3, lp1 = alignpos - 3;
+    boolean lastmatch = false;
+    // and now trace the alignment onto the atom set.
+    for (int i = 0; i < astr1.length(); i++)
+    {
+      char c1 = astr1.charAt(i), c2 = astr2.charAt(i);
+      if (c1 != '-')
+      {
+        alignpos++;
+      }
+
+      if (c2 != '-')
+      {
+        pdbpos++;
+      }
+
+      if (allowmismatch || c1 == c2)
+      {
+        lastmatch = true;
+        // extend mapping interval.
+        if (lp1 + 1 != alignpos || lp2 + 1 != pdbpos)
+        {
+          as1.add(Integer.valueOf(alignpos));
+          as2.add(Integer.valueOf(pdbpos));
+        }
+        lp1 = alignpos;
+        lp2 = pdbpos;
+      }
+      else
+      {
+        lastmatch = false;
+      }
+    }
+    // construct range pairs
+    int[] mapseq1 = new int[as1.size() + (lastmatch ? 1 : 0)], mapseq2 = new int[as2
+            .size() + (lastmatch ? 1 : 0)];
+    int i = 0;
+    for (Integer ip : as1)
+    {
+      mapseq1[i++] = ip;
+    }
+    ;
+    i = 0;
+    for (Integer ip : as2)
+    {
+      mapseq2[i++] = ip;
+    }
+    ;
+    if (lastmatch)
+    {
+      mapseq1[mapseq1.length - 1] = alignpos;
+      mapseq2[mapseq2.length - 1] = pdbpos;
+    }
+    MapList map = new MapList(mapseq1, mapseq2, 1, 1);
+
+    jalview.datamodel.Mapping mapping = new Mapping(map);
+    mapping.setTo(s2);
+    return mapping;
+  }
+
+  /**
    * compute the PID vector used by the redundancy filter.
    * 
    * @param originalSequences
index cdb7dbe..b7cfbbd 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.analysis;
@@ -755,8 +757,7 @@ public class AlignmentSorter
     if (method != FEATURE_SCORE && method != FEATURE_LABEL
             && method != FEATURE_DENSITY)
     {
-      throw new Error(
-              "Implementation Error - sortByFeature method must be one of FEATURE_SCORE, FEATURE_LABEL or FEATURE_DENSITY.");
+      throw new Error(MessageManager.getString("error.implementation_error_sortbyfeature"));
     }
     boolean ignoreScore = method != FEATURE_SCORE;
     StringBuffer scoreLabel = new StringBuffer();
@@ -936,7 +937,7 @@ public class AlignmentSorter
     {
       if (method == FEATURE_LABEL)
       {
-        throw new Error("Not yet implemented.");
+        throw new Error(MessageManager.getString("error.not_yet_implemented"));
       }
     }
     if (lastSortByFeatureScore == null
index 85699a4..2feeb91 100644 (file)
@@ -1,3 +1,23 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
 package jalview.analysis;
 
 import java.util.ArrayList;
@@ -7,16 +27,19 @@ import jalview.datamodel.SequenceI;
 import jalview.datamodel.AlignmentI;
 
 /**
- * grab bag of useful alignment manipulation operations
- * Expect these to be refactored elsewhere at some point.
+ * grab bag of useful alignment manipulation operations Expect these to be
+ * refactored elsewhere at some point.
+ * 
  * @author jimp
- *
+ * 
  */
 public class AlignmentUtils
 {
 
   /**
-   * given an existing alignment, create a new alignment including all, or up to flankSize additional symbols from each sequence's dataset sequence
+   * given an existing alignment, create a new alignment including all, or up to
+   * flankSize additional symbols from each sequence's dataset sequence
+   * 
    * @param core
    * @param flankSize
    * @return AlignmentI
@@ -25,67 +48,79 @@ public class AlignmentUtils
   {
     List<SequenceI> sq = new ArrayList<SequenceI>();
     int maxoffset = 0;
-    for (SequenceI s:core.getSequences())
+    for (SequenceI s : core.getSequences())
     {
       SequenceI newSeq = s.deriveSequence();
-      if (newSeq.getStart()>maxoffset && newSeq.getDatasetSequence().getStart()<s.getStart())
+      if (newSeq.getStart() > maxoffset
+              && newSeq.getDatasetSequence().getStart() < s.getStart())
       {
         maxoffset = newSeq.getStart();
       }
       sq.add(newSeq);
     }
-    if (flankSize>-1) {
+    if (flankSize > -1)
+    {
       maxoffset = flankSize;
     }
     // now add offset to create a new expanded alignment
-    for (SequenceI s:sq)
+    for (SequenceI s : sq)
     {
       SequenceI ds = s;
-      while (ds.getDatasetSequence()!=null) {
-        ds=ds.getDatasetSequence();
+      while (ds.getDatasetSequence() != null)
+      {
+        ds = ds.getDatasetSequence();
       }
-      int s_end = s.findPosition(s.getStart()+s.getLength());
+      int s_end = s.findPosition(s.getStart() + s.getLength());
       // find available flanking residues for sequence
-      int ustream_ds=s.getStart()-ds.getStart(),dstream_ds=ds.getEnd()-s_end;
-      
+      int ustream_ds = s.getStart() - ds.getStart(), dstream_ds = ds
+              .getEnd() - s_end;
+
       // build new flanked sequence
-      
+
       // compute gap padding to start of flanking sequence
-      int offset=maxoffset - ustream_ds;
-      
+      int offset = maxoffset - ustream_ds;
+
       // padding is gapChar x ( maxoffset - min(ustream_ds, flank)
-      if (flankSize>=0) {
-        if (flankSize<ustream_ds)
+      if (flankSize >= 0)
+      {
+        if (flankSize < ustream_ds)
         {
-        // take up to flankSize residues
-        offset = maxoffset-flankSize;
-        ustream_ds = flankSize;
-      }
-        if (flankSize<dstream_ds)
+          // take up to flankSize residues
+          offset = maxoffset - flankSize;
+          ustream_ds = flankSize;
+        }
+        if (flankSize < dstream_ds)
         {
-          dstream_ds=flankSize;
+          dstream_ds = flankSize;
         }
       }
-      char[] upstream = new String(ds.getSequence(s.getStart()-1-ustream_ds, s.getStart()-1)).toLowerCase().toCharArray();
-      char[] downstream = new String(ds.getSequence(s_end-1,s_end+1+dstream_ds)).toLowerCase().toCharArray();
-      char[] coreseq=s.getSequence();
-      char[] nseq = new char[offset+upstream.length+downstream.length+coreseq.length]; 
+      char[] upstream = new String(ds.getSequence(s.getStart() - 1
+              - ustream_ds, s.getStart() - 1)).toLowerCase().toCharArray();
+      char[] downstream = new String(ds.getSequence(s_end - 1, s_end + 1
+              + dstream_ds)).toLowerCase().toCharArray();
+      char[] coreseq = s.getSequence();
+      char[] nseq = new char[offset + upstream.length + downstream.length
+              + coreseq.length];
       char c = core.getGapCharacter();
       // TODO could lowercase the flanking regions
-      int p=0;
-      for (; p<offset;p++)
+      int p = 0;
+      for (; p < offset; p++)
       {
         nseq[p] = c;
       }
-//      s.setSequence(new String(upstream).toLowerCase()+new String(coreseq) + new String(downstream).toLowerCase());
+      // s.setSequence(new String(upstream).toLowerCase()+new String(coreseq) +
+      // new String(downstream).toLowerCase());
       System.arraycopy(upstream, 0, nseq, p, upstream.length);
-      System.arraycopy(coreseq, 0, nseq, p+upstream.length, coreseq.length);
-      System.arraycopy(downstream, 0, nseq, p+coreseq.length+upstream.length, downstream.length);
+      System.arraycopy(coreseq, 0, nseq, p + upstream.length,
+              coreseq.length);
+      System.arraycopy(downstream, 0, nseq, p + coreseq.length
+              + upstream.length, downstream.length);
       s.setSequence(new String(nseq));
-      s.setStart(s.getStart()-ustream_ds);
-      s.setEnd(s_end+downstream.length);
+      s.setStart(s.getStart() - ustream_ds);
+      s.setEnd(s_end + downstream.length);
     }
-    AlignmentI newAl = new jalview.datamodel.Alignment(sq.toArray(new SequenceI[0]));
+    AlignmentI newAl = new jalview.datamodel.Alignment(
+            sq.toArray(new SequenceI[0]));
     newAl.setDataset(core.getDataset());
     return newAl;
   }
index f0dc860..4d64685 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.analysis;
index 8d52caf..fa0fe2f 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.analysis;
index 3b41a8e..2e56e67 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.analysis;
@@ -126,7 +128,8 @@ public class Dna
     {
       SequenceI newseq = translateCodingRegion(selection[s], seqstring[s],
               viscontigs, codons, gapCharacter,
-              (product != null) ? product[s] : null, false); // possibly anonymous
+              (product != null) ? product[s] : null, false); // possibly
+                                                             // anonymous
       // product
       if (newseq != null)
       {
@@ -422,7 +425,9 @@ public class Dna
    *          Definition of global ORF alignment reference frame
    * @param gapCharacter
    * @return sequence ready to be added to alignment.
-   * @deprecated Use {@link #translateCodingRegion(SequenceI,String,int[],AlignedCodonFrame,char,DBRefEntry,boolean)} instead
+   * @deprecated Use
+   *             {@link #translateCodingRegion(SequenceI,String,int[],AlignedCodonFrame,char,DBRefEntry,boolean)}
+   *             instead
    */
   public static SequenceI translateCodingRegion(SequenceI selection,
           String seqstring, int[] viscontigs, AlignedCodonFrame codons,
@@ -444,7 +449,8 @@ public class Dna
    * @param codons
    *          Definition of global ORF alignment reference frame
    * @param gapCharacter
-   * @param starForStop when true stop codons will translate as '*', otherwise as 'X'  
+   * @param starForStop
+   *          when true stop codons will translate as '*', otherwise as 'X'
    * @return sequence ready to be added to alignment.
    */
   public static SequenceI translateCodingRegion(SequenceI selection,
@@ -507,7 +513,7 @@ public class Dna
             // edit scontigs
             skipint[0] = vismapping.shift(skipint[0]);
             skipint[1] = vismapping.shift(skipint[1]);
-            for (vc = 0; vc < scontigs.length; )
+            for (vc = 0; vc < scontigs.length;)
             {
               if (scontigs[vc + 1] < skipint[0])
               {
@@ -515,16 +521,19 @@ public class Dna
                 vc += 2;
                 continue;
               }
-              if (scontigs[vc]>skipint[1])
+              if (scontigs[vc] > skipint[1])
               {
                 // finished editing so
                 break;
               }
-              // Edit the contig list to include the skipped region which did not translate
+              // Edit the contig list to include the skipped region which did
+              // not translate
               int[] t;
               // from : s1 e1 s2 e2 s3 e3
-              // to s:  s1 e1 s2 k0 k1 e2 s3 e3
-              // list increases by one unless one boundary (s2==k0 or e2==k1) matches, and decreases by one if skipint intersects whole visible contig 
+              // to s: s1 e1 s2 k0 k1 e2 s3 e3
+              // list increases by one unless one boundary (s2==k0 or e2==k1)
+              // matches, and decreases by one if skipint intersects whole
+              // visible contig
               if (scontigs[vc] <= skipint[0])
               {
                 if (skipint[0] == scontigs[vc])
@@ -534,11 +543,11 @@ public class Dna
                   if (scontigs[vc + 1] > skipint[1])
                   {
                     scontigs[vc] = skipint[1];
-                    vc+=2;
+                    vc += 2;
                   }
                   else
                   {
-                    if (scontigs[vc+1]==skipint[1])
+                    if (scontigs[vc + 1] == skipint[1])
                     {
                       // remove the contig
                       t = new int[scontigs.length - 2];
@@ -549,32 +558,38 @@ public class Dna
                       if (vc + 2 < t.length)
                       {
                         System.arraycopy(scontigs, vc + 2, t, vc, t.length
-                              - vc + 2);
+                                - vc + 2);
                       }
-                      scontigs=t;
-                    } else {
+                      scontigs = t;
+                    }
+                    else
+                    {
                       // truncate contig to before the skipint region
-                      scontigs[vc+1] = skipint[0]-1;
-                      vc+=2;
+                      scontigs[vc + 1] = skipint[0] - 1;
+                      vc += 2;
                     }
                   }
                 }
                 else
                 {
                   // scontig starts before start of skipint
-                  if (scontigs[vc+1]<skipint[1]) {
+                  if (scontigs[vc + 1] < skipint[1])
+                  {
                     // skipint truncates end of scontig
-                    scontigs[vc+1] = skipint[0]-1; 
-                    vc+=2;
-                  } else {
+                    scontigs[vc + 1] = skipint[0] - 1;
+                    vc += 2;
+                  }
+                  else
+                  {
                     // divide region to new contigs
                     t = new int[scontigs.length + 2];
-                    System.arraycopy(scontigs, 0, t, 0, vc +1);
-                    t[vc+1] = skipint[0];
-                    t[vc+2] = skipint[1];
-                    System.arraycopy(scontigs, vc + 1, t, vc+3, scontigs.length-(vc+1));
-                    scontigs=t;
-                    vc+=4;
+                    System.arraycopy(scontigs, 0, t, 0, vc + 1);
+                    t[vc + 1] = skipint[0];
+                    t[vc + 2] = skipint[1];
+                    System.arraycopy(scontigs, vc + 1, t, vc + 3,
+                            scontigs.length - (vc + 1));
+                    scontigs = t;
+                    vc += 4;
                   }
                 }
               }
@@ -641,10 +656,15 @@ public class Dna
               protein.toString());
       if (rf != 0)
       {
-        if (jalview.bin.Cache.log!=null) {
-          jalview.bin.Cache.log.debug("trimming contigs for incomplete terminal codon.");
-        } else {
-          System.err.println("trimming contigs for incomplete terminal codon.");
+        if (jalview.bin.Cache.log != null)
+        {
+          jalview.bin.Cache.log
+                  .debug("trimming contigs for incomplete terminal codon.");
+        }
+        else
+        {
+          System.err
+                  .println("trimming contigs for incomplete terminal codon.");
         }
         // map and trim contigs to ORF region
         vc = scontigs.length - 1;
@@ -758,7 +778,8 @@ public class Dna
   private static void transferCodedFeatures(SequenceI dna, SequenceI pep,
           MapList map, Hashtable featureTypes, Hashtable featureGroups)
   {
-    SequenceFeature[] sf = (dna.getDatasetSequence()!=null ? dna.getDatasetSequence() : dna).getSequenceFeatures();
+    SequenceFeature[] sf = (dna.getDatasetSequence() != null ? dna
+            .getDatasetSequence() : dna).getSequenceFeatures();
     Boolean fgstate;
     jalview.datamodel.DBRefEntry[] dnarefs = jalview.util.DBRefUtils
             .selectRefs(dna.getDBRef(),
index 0494896..96151d7 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.analysis;
index 29b9323..e4c9cea 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.analysis;
index 4a5f762..a8ca3f7 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.analysis;
@@ -722,19 +724,18 @@ public class NJTree
    */
   public float[][] findDistances()
   {
-    
+
     float[][] distance = new float[noseqs][noseqs];
 
-      // Pairwise substitution score (with no gap penalties)
-      ScoreModelI _pwmatrix = ResidueProperties.getScoreModel(pwtype);
-      if (_pwmatrix == null)
-      {
-        _pwmatrix = ResidueProperties.getScoreMatrix("BLOSUM62");
-      }
-      distance = _pwmatrix.findDistances(seqData);
+    // Pairwise substitution score (with no gap penalties)
+    ScoreModelI _pwmatrix = ResidueProperties.getScoreModel(pwtype);
+    if (_pwmatrix == null)
+    {
+      _pwmatrix = ResidueProperties.getScoreMatrix("BLOSUM62");
+    }
+    distance = _pwmatrix.findDistances(seqData);
     return distance;
 
-
   }
 
   /**
index 733e7f9..f34fe83 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.analysis;
@@ -72,6 +74,7 @@ public class PCA implements Runnable
   {
     this(s, nucleotides, null);
   }
+
   public PCA(String[] s, boolean nucleotides, String s_m)
   {
 
@@ -88,15 +91,17 @@ public class PCA implements Runnable
     BinarySequence[] bs2 = new BinarySequence[s.length];
     ii = 0;
     ScoreMatrix smtrx = null;
-    String sm=s_m;
-    if (sm!=null)
+    String sm = s_m;
+    if (sm != null)
     {
       smtrx = ResidueProperties.getScoreMatrix(sm);
     }
-    if (smtrx==null)
+    if (smtrx == null)
     {
-      // either we were given a non-existent score matrix or a scoremodel that isn't based on a pairwise symbol score matrix
-      smtrx = ResidueProperties.getScoreMatrix(sm=(nucleotides ? "DNA" : "BLOSUM62"));
+      // either we were given a non-existent score matrix or a scoremodel that
+      // isn't based on a pairwise symbol score matrix
+      smtrx = ResidueProperties.getScoreMatrix(sm = (nucleotides ? "DNA"
+              : "BLOSUM62"));
     }
     details.append("PCA calculation using " + sm
             + " sequence similarity matrix\n========\n\n");
@@ -262,41 +267,45 @@ public class PCA implements Runnable
       }
     };
 
-    try {
-    details.append("PCA Calculation Mode is "
-            + (jvCalcMode ? "Jalview variant" : "Original SeqSpace") + "\n");
-    Matrix mt = m.transpose();
-
-    details.append(" --- OrigT * Orig ---- \n");
-    if (!jvCalcMode)
-    {
-      eigenvector = mt.preMultiply(m); // standard seqspace comparison matrix
-    }
-    else
+    try
     {
-      eigenvector = mt.preMultiply(m2); // jalview variation on seqsmace method
-    }
+      details.append("PCA Calculation Mode is "
+              + (jvCalcMode ? "Jalview variant" : "Original SeqSpace")
+              + "\n");
+      Matrix mt = m.transpose();
 
-    eigenvector.print(ps);
+      details.append(" --- OrigT * Orig ---- \n");
+      if (!jvCalcMode)
+      {
+        eigenvector = mt.preMultiply(m); // standard seqspace comparison matrix
+      }
+      else
+      {
+        eigenvector = mt.preMultiply(m2); // jalview variation on seqsmace
+                                          // method
+      }
 
-    symm = eigenvector.copy();
+      eigenvector.print(ps);
 
-    eigenvector.tred();
+      symm = eigenvector.copy();
 
-    details.append(" ---Tridiag transform matrix ---\n");
-    details.append(" --- D vector ---\n");
-    eigenvector.printD(ps);
-    ps.println();
-    details.append("--- E vector ---\n");
-    eigenvector.printE(ps);
-    ps.println();
+      eigenvector.tred();
+
+      details.append(" ---Tridiag transform matrix ---\n");
+      details.append(" --- D vector ---\n");
+      eigenvector.printD(ps);
+      ps.println();
+      details.append("--- E vector ---\n");
+      eigenvector.printE(ps);
+      ps.println();
 
-    // Now produce the diagonalization matrix
-    eigenvector.tqli();
+      // Now produce the diagonalization matrix
+      eigenvector.tqli();
     } catch (Exception q)
     {
       q.printStackTrace();
-      details.append("\n*** Unexpected exception when performing PCA ***\n"+q.getLocalizedMessage());
+      details.append("\n*** Unexpected exception when performing PCA ***\n"
+              + q.getLocalizedMessage());
       details.append("*** Matrices below may not be fully diagonalised. ***\n");
     }
 
index b55542f..69c5c07 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.analysis;
index 835ead3..e4a0d76 100644 (file)
@@ -1,37 +1,97 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 /* Author: Lauren Michelle Lui 
  * Methods are based on RALEE methods http://personalpages.manchester.ac.uk/staff/sam.griffiths-jones/software/ralee/
+ * Additional Author: Jan Engelhart (2011) - Structure consensus and bug fixing
+ * Additional Author: Anne Menard (2012) - Pseudoknot support and secondary structure consensus
  * */
 
 package jalview.analysis;
 
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.HashSet;
 import java.util.Hashtable;
 import java.util.Stack;
 import java.util.Vector;
 
+import jalview.analysis.SecStrConsensus.SimpleBP;
 import jalview.datamodel.SequenceFeature;
+import jalview.util.MessageManager;
 
 public class Rna
 {
+
   static Hashtable<Integer, Integer> pairHash = new Hashtable();
 
+  private static final Character[] openingPars =
+  { '(', '[', '{', '<', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J',
+      'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X',
+      'Y', 'Z' };
+
+  private static final Character[] closingPars =
+  { ')', ']', '}', '>', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j',
+      'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x',
+      'y', 'z' };
+
+  private static HashSet<Character> openingParsSet = new HashSet<Character>(
+          Arrays.asList(openingPars));
+
+  private static HashSet<Character> closingParsSet = new HashSet<Character>(
+          Arrays.asList(closingPars));
+
+  private static Hashtable<Character, Character> closingToOpening = new Hashtable<Character, Character>()
+  // Initializing final data structure
+  {
+    private static final long serialVersionUID = 1L;
+    {
+      for (int i = 0; i < openingPars.length; i++)
+      {
+        System.out.println(closingPars[i] + "->" + openingPars[i]);
+        put(closingPars[i], openingPars[i]);
+      }
+    }
+  };
+
+  private static boolean isOpeningParenthesis(char c)
+  {
+    return openingParsSet.contains(c);
+  }
+
+  private static boolean isClosingParenthesis(char c)
+  {
+    return closingParsSet.contains(c);
+  }
+
+  private static char matchingOpeningParenthesis(char closingParenthesis)
+          throws WUSSParseException
+  {
+    if (!isClosingParenthesis(closingParenthesis))
+    {
+      throw new WUSSParseException(MessageManager.formatMessage("exception.querying_matching_opening_parenthesis_for_non_closing_parenthesis", new String[]{new StringBuffer(closingParenthesis).toString()}), -1);
+    }
+
+    return closingToOpening.get(closingParenthesis);
+  }
+
   /**
    * Based off of RALEE code ralee-get-base-pairs. Keeps track of open bracket
    * positions in "stack" vector. When a close bracket is reached, pair this
@@ -44,56 +104,80 @@ public class Rna
    * @return Array of SequenceFeature; type = RNA helix, begin is open base
    *         pair, end is close base pair
    */
-  public static SequenceFeature[] GetBasePairs(CharSequence line)
+  public static Vector<SimpleBP> GetSimpleBPs(CharSequence line)
           throws WUSSParseException
   {
-    Stack stack = new Stack();
-    Vector pairs = new Vector();
-
+    System.out.println(line);
+    Hashtable<Character, Stack<Integer>> stacks = new Hashtable<Character, Stack<Integer>>();
+    Vector<SimpleBP> pairs = new Vector<SimpleBP>();
     int i = 0;
     while (i < line.length())
     {
       char base = line.charAt(i);
 
-      if ((base == '<') || (base == '(') || (base == '{') || (base == '['))
+      if (isOpeningParenthesis(base))
       {
-        stack.push(i);
+        if (!stacks.containsKey(base))
+        {
+          stacks.put(base, new Stack<Integer>());
+        }
+        stacks.get(base).push(i);
+
       }
-      else if ((base == '>') || (base == ')') || (base == '}')
-              || (base == ']'))
+      else if (isClosingParenthesis(base))
       {
 
+        char opening = matchingOpeningParenthesis(base);
+
+        if (!stacks.containsKey(opening))
+        {
+          throw new WUSSParseException(MessageManager.formatMessage("exception.mismatched_unseen_closing_char", new String[]{new StringBuffer(base).toString()}), i);
+        }
+
+        Stack<Integer> stack = stacks.get(opening);
         if (stack.isEmpty())
         {
           // error whilst parsing i'th position. pass back
-          throw new WUSSParseException("Mismatched closing bracket", i);
+          throw new WUSSParseException(MessageManager.formatMessage("exception.mismatched_closing_char", new String[]{new StringBuffer(base).toString()}), i);
         }
-        Object temp = stack.pop();
-        pairs.addElement(temp);
-        pairs.addElement(i);
-      }
+        int temp = stack.pop();
 
+        pairs.add(new SimpleBP(temp, i));
+      }
       i++;
     }
-
-    int numpairs = pairs.size() / 2;
-    SequenceFeature[] outPairs = new SequenceFeature[numpairs];
-
-    // Convert pairs to array
-    for (int p = 0; p < pairs.size(); p += 2)
+    for (char opening : stacks.keySet())
     {
-      int begin = Integer.parseInt(pairs.elementAt(p).toString());
-      int end = Integer.parseInt(pairs.elementAt(p + 1).toString());
-
-      outPairs[p / 2] = new SequenceFeature("RNA helix", "", "", begin,
-              end, "");
-      // pairHash.put(begin, end);
-
+      Stack<Integer> stack = stacks.get(opening);
+      if (!stack.empty())
+      {
+        throw new WUSSParseException(MessageManager.formatMessage("exception.mismatched_opening_char", new String[]{new StringBuffer(opening).toString(),Integer.valueOf(stack.pop()).toString()}), i);
+      }
     }
+    return pairs;
+  }
 
+  public static SequenceFeature[] GetBasePairs(CharSequence line)
+          throws WUSSParseException
+  {
+    Vector<SimpleBP> bps = GetSimpleBPs(line);
+    SequenceFeature[] outPairs = new SequenceFeature[bps.size()];
+    for (int p = 0; p < bps.size(); p++)
+    {
+      SimpleBP bp = bps.elementAt(p);
+      outPairs[p] = new SequenceFeature("RNA helix", "", "", bp.getBP5(),
+              bp.getBP3(), "");
+    }
     return outPairs;
   }
 
+  public static ArrayList<SimpleBP> GetModeleBP(CharSequence line)
+          throws WUSSParseException
+  {
+    Vector<SimpleBP> bps = GetSimpleBPs(line);
+    return new ArrayList<SimpleBP>(bps);
+  }
+
   /**
    * Function to get the end position corresponding to a given start position
    * 
diff --git a/src/jalview/analysis/SecStrConsensus.java b/src/jalview/analysis/SecStrConsensus.java
new file mode 100644 (file)
index 0000000..1400a64
--- /dev/null
@@ -0,0 +1,254 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
+package jalview.analysis;
+
+import java.util.ArrayList;
+import java.util.Hashtable;
+
+public class SecStrConsensus
+{
+
+  /**
+   * Internal class to represent a simple base-pair.
+   * 
+   * @author Yawn [JBPNote: ^^ is that Anne Menard or Ya(w)nn Ponty, I wonder !
+   *         ]
+   */
+  public static class SimpleBP
+  {
+    int bp5;
+
+    int bp3;
+
+    public SimpleBP()
+    {
+
+    }
+
+    public SimpleBP(int i5, int i3)
+    {
+      bp5 = i5;
+      bp3 = i3;
+    }
+
+    public void setBP5(int i5)
+    {
+      bp5 = i5;
+    }
+
+    public void setBP3(int i3)
+    {
+      bp3 = i3;
+    }
+
+    public int getBP5()
+    {
+      return bp5;
+    }
+
+    public int getBP3()
+    {
+      return bp3;
+    }
+
+    public String toString()
+    {
+      return "(" + bp5 + "," + bp3 + ")";
+    }
+
+  }
+
+  public static int[] extractConsensus(ArrayList<ArrayList<SimpleBP>> bps)
+  {
+    // We do not currently know the length of the alignment
+    // => Estimate it as the biggest index of a base-pair plus one.
+    int maxlength = 0;
+    for (ArrayList<SimpleBP> strs : bps)
+    {
+      for (SimpleBP bp : strs)
+      {
+
+        maxlength = Math.max(1 + Math.max(bp.bp5, bp.bp3), maxlength);
+
+      }
+    }
+    // Now we have a good estimate for length, allocate and initialize data
+    // to be fed to the dynamic programming procedure.
+    ArrayList<Hashtable<Integer, Double>> seq = new ArrayList<Hashtable<Integer, Double>>();
+    for (int i = 0; i < maxlength; i++)
+    {
+      seq.add(new Hashtable<Integer, Double>());
+    }
+    for (ArrayList<SimpleBP> strs : bps)
+    {
+      for (SimpleBP bp : strs)
+      {
+        int i = bp.bp5;
+        int j = bp.bp3;
+        Hashtable<Integer, Double> h = seq.get(i);
+        if (!h.containsKey(j))
+        {
+          h.put(j, 0.0);
+        }
+        h.put(j, h.get(j) + 1.);
+      }
+    }
+    // At this point, seq contains, at each position i, a hashtable which
+    // associates,
+    // to each possible end j, the number of time a base-pair (i,j) occurs in
+    // the alignment
+
+    // We can now run the dynamic programming procedure on this data
+    double[][] mat = fillMatrix(seq);
+    ArrayList<SimpleBP> res = backtrack(mat, seq);
+
+    // Convert it to an array, ie finalres[i] = j >= 0 iff a base-pair (i,j) is
+    // present
+    // in the consensus, or -1 otherwise
+    int[] finalres = new int[seq.size()];
+    for (int i = 0; i < seq.size(); i++)
+    {
+      finalres[i] = -1;
+    }
+    for (SimpleBP bp : res)
+    {
+      finalres[bp.bp5] = bp.bp3;
+      finalres[bp.bp3] = bp.bp5;
+    }
+
+    return finalres;
+  }
+
+  private static boolean canBasePair(
+          ArrayList<Hashtable<Integer, Double>> seq, int i, int k)
+  {
+    return seq.get(i).containsKey(k);
+  }
+
+  // Returns the score of a potential base-pair, ie the number of structures in
+  // which it is found.
+  private static double basePairScore(
+          ArrayList<Hashtable<Integer, Double>> seq, int i, int k)
+  {
+    return seq.get(i).get(k);
+  }
+
+  private static double[][] fillMatrix(
+          ArrayList<Hashtable<Integer, Double>> seq)
+  {
+    int n = seq.size();
+    double[][] tab = new double[n][n];
+    for (int m = 1; m <= n; m++)
+    {
+      for (int i = 0; i < n - m + 1; i++)
+      {
+        int j = i + m - 1;
+        tab[i][j] = 0;
+        if (i < j)
+        {
+          tab[i][j] = Math.max(tab[i][j], tab[i + 1][j]);
+          for (int k = i + 1; k <= j; k++)
+          {
+            if (canBasePair(seq, i, k))
+            {
+              double fact1 = 0;
+              if (k > i + 1)
+              {
+                fact1 = tab[i + 1][k - 1];
+              }
+              double fact2 = 0;
+              if (k < j)
+              {
+                fact2 = tab[k + 1][j];
+              }
+              tab[i][j] = Math.max(tab[i][j], basePairScore(seq, i, k)
+                      + fact1 + fact2);
+            }
+          }
+        }
+      }
+    }
+    return tab;
+  }
+
+  private static ArrayList<SimpleBP> backtrack(double[][] tab,
+          ArrayList<Hashtable<Integer, Double>> seq)
+  {
+    return backtrack(tab, seq, 0, seq.size() - 1);
+  }
+
+  private static ArrayList<SimpleBP> backtrack(double[][] tab,
+          ArrayList<Hashtable<Integer, Double>> seq, int i, int j)
+  {
+    ArrayList<SimpleBP> result = new ArrayList<SimpleBP>();
+    if (i < j)
+    {
+      ArrayList<Integer> indices = new ArrayList<Integer>();
+      indices.add(-1);
+      for (int k = i + 1; k <= j; k++)
+      {
+        indices.add(k);
+      }
+      for (int k : indices)
+      {
+        if (k == -1)
+        {
+          if (tab[i][j] == tab[i + 1][j])
+          {
+            result = backtrack(tab, seq, i + 1, j);
+          }
+        }
+        else
+        {
+          if (canBasePair(seq, i, k))
+          {
+            double fact1 = 0;
+            if (k > i + 1)
+            {
+              fact1 = tab[i + 1][k - 1];
+            }
+            double fact2 = 0;
+            if (k < j)
+            {
+              fact2 = tab[k + 1][j];
+            }
+            if (tab[i][j] == basePairScore(seq, i, k) + fact1 + fact2)
+            {
+              result = backtrack(tab, seq, i + 1, k - 1);
+              result.addAll(backtrack(tab, seq, k + 1, j));
+              result.add(new SimpleBP(i, k));
+            }
+          }
+        }
+      }
+    }
+    else if (i == j)
+    {
+
+    }
+    else
+    {
+
+    }
+    return result;
+  }
+
+}
index 4fc54b8..5c6b99b 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.analysis;
index a502523..aec7faf 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.analysis;
index f56a70b..dc0212e 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.analysis;
@@ -59,11 +61,15 @@ public class StructureFrequency
    */
   public static int findPair(SequenceFeature[] pairs, int indice)
   {
+
     for (int i = 0; i < pairs.length; i++)
     {
       if (pairs[i].getBegin() == indice)
+
       {
+
         return pairs[i].getEnd();
+
       }
     }
     return -1;
@@ -84,16 +90,18 @@ public class StructureFrequency
           int end, Hashtable[] result, boolean profile,
           AlignmentAnnotation rnaStruc)
   {
+
     Hashtable residueHash;
     String maxResidue;
-    char[] seq, struc = rnaStruc.getRNAStruc().toCharArray();
+    char[] struc = rnaStruc.getRNAStruc().toCharArray();
+
     SequenceFeature[] rna = rnaStruc._rnasecstr;
     char c, s, cEnd;
-    int count, nonGap = 0, i, bpEnd = -1, j, jSize = sequences.length;
+    int count = 0, nonGap = 0, i, bpEnd = -1, j, jSize = sequences.length;
     int[] values;
     int[][] pairs;
     float percentage;
-
+    boolean wooble = true;
     for (i = start; i < end; i++) // foreach column
     {
       residueHash = new Hashtable();
@@ -101,9 +109,11 @@ public class StructureFrequency
       values = new int[255];
       pairs = new int[255][255];
       bpEnd = -1;
+      // System.out.println("s="+struc[i]);
       if (i < struc.length)
       {
         s = struc[i];
+
       }
       else
       {
@@ -114,7 +124,7 @@ public class StructureFrequency
         s = '-';
       }
 
-      if (s != '(')
+      if (s != '(' && s != '[')
       {
         if (s == '-')
         {
@@ -123,7 +133,9 @@ public class StructureFrequency
       }
       else
       {
+
         bpEnd = findPair(rna, i);
+
         if (bpEnd > -1)
         {
           for (j = 0; j < jSize; j++) // foreach row
@@ -135,28 +147,39 @@ public class StructureFrequency
               continue;
             }
             c = sequences[j].getCharAt(i);
+            // System.out.println("c="+c);
+
+            // standard representation for gaps in sequence and structure
+            if (c == '.' || c == ' ')
             {
+              c = '-';
+            }
 
-              // standard representation for gaps in sequence and structure
-              if (c == '.' || c == ' ')
-              {
-                c = '-';
-              }
-
-              if (c == '-')
-              {
-                values['-']++;
-                continue;
-              }
-              cEnd = sequences[j].getCharAt(bpEnd);
-              if (checkBpType(c, cEnd))
-              {
-                values['(']++; // H means it's a helix (structured)
-              }
-              pairs[c][cEnd]++;
+            if (c == '-')
+            {
+              values['-']++;
+              continue;
+            }
+            cEnd = sequences[j].getCharAt(bpEnd);
 
+            // System.out.println("pairs ="+c+","+cEnd);
+            if (checkBpType(c, cEnd) == true)
+            {
+              values['(']++; // H means it's a helix (structured)
               maxResidue = "(";
+              wooble = true;
+              // System.out.println("It's a pair wc");
+
+            }
+            if (checkBpType(c, cEnd) == false)
+            {
+              wooble = false;
+              values['[']++; // H means it's a helix (structured)
+              maxResidue = "[";
+
             }
+            pairs[c][cEnd]++;
+
           }
         }
         // nonGap++;
@@ -170,9 +193,14 @@ public class StructureFrequency
 
         residueHash.put(PAIRPROFILE, pairs);
       }
-
-      count = values['('];
-
+      if (wooble == true)
+      {
+        count = values['('];
+      }
+      if (wooble == false)
+      {
+        count = values['['];
+      }
       residueHash.put(MAXCOUNT, new Integer(count));
       residueHash.put(MAXRESIDUE, maxResidue);
 
@@ -188,11 +216,20 @@ public class StructureFrequency
       if (bpEnd > 0)
       {
         values[')'] = values['('];
+        values[']'] = values['['];
         values['('] = 0;
-
+        values['['] = 0;
         residueHash = new Hashtable();
-        maxResidue = ")";
-
+        if (wooble == true)
+        {
+          // System.out.println(maxResidue+","+wooble);
+          maxResidue = ")";
+        }
+        if (wooble == false)
+        {
+          // System.out.println(maxResidue+","+wooble);
+          maxResidue = "]";
+        }
         if (profile)
         {
           residueHash.put(PROFILE, new int[][]
@@ -209,6 +246,7 @@ public class StructureFrequency
         residueHash.put(PID_GAPS, new Float(percentage));
 
         result[bpEnd] = residueHash;
+
       }
     }
   }
@@ -309,18 +347,19 @@ public class StructureFrequency
       // initialised properly
       return;
     }
-    String fmtstr="%3.1f";
-    int precision=2;
-    while (nseq>100) {
+    String fmtstr = "%3.1f";
+    int precision = 2;
+    while (nseq > 100)
+    {
       precision++;
-      nseq/=10;
+      nseq /= 10;
     }
-    if (precision>2)
+    if (precision > 2)
     {
-      fmtstr = "%"+(2+precision)+"."+precision+"f";
+      fmtstr = "%" + (2 + precision) + "." + precision + "f";
     }
     Format fmt = new Format(fmtstr);
-    
+
     for (int i = iStart; i < width; i++)
     {
       Hashtable hci;
@@ -397,7 +436,8 @@ public class StructureFrequency
             tval = (vl[c] * 100f / profile[1][ignoreGapsInConsensusCalculation ? 1
                     : 0]);
             mouseOver += ((p == 0) ? "" : "; ") + (char) ((int[]) ca[c])[0]
-                    + (char) ((int[]) ca[c])[1] + " " + fmt.form(tval) + "%";
+                    + (char) ((int[]) ca[c])[1] + " " + fmt.form(tval)
+                    + "%";
             p++;
 
           }
index b7bf231..56698c6 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.analysis;
index 2069b50..f107731 100644 (file)
@@ -1,3 +1,23 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
 package jalview.analysis.scoremodels;
 
 import jalview.api.analysis.ScoreModelI;
index 78c5f17..70e886a 100644 (file)
@@ -1,3 +1,23 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
 package jalview.analysis.scoremodels;
 
 import jalview.api.analysis.ScoreModelI;
@@ -58,4 +78,4 @@ public abstract class PairwiseSeqScoreModel implements ScoreModelI
   }
 
   abstract public int[][] getMatrix();
-}
\ No newline at end of file
+}
index d8c6230..93bb56d 100644 (file)
@@ -1,3 +1,23 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
 package jalview.analysis.scoremodels;
 
 import jalview.analysis.AlignSeq;
@@ -12,24 +32,40 @@ public class SWScoreModel implements ScoreModelI
   @Override
   public float[][] findDistances(AlignmentView seqData)
   {
-    SequenceI[] sequenceString = seqData
-            .getVisibleAlignment(Comparison.GapChars.charAt(0)).getSequencesArray();
+    SequenceI[] sequenceString = seqData.getVisibleAlignment(
+            Comparison.GapChars.charAt(0)).getSequencesArray();
     int noseqs = sequenceString.length;
     float[][] distance = new float[noseqs][noseqs];
-    
-     float max = -1;
-      
-      for (int i = 0; i < (noseqs - 1); i++) { for (int j = i; j < noseqs; j++)
-      { AlignSeq as = new AlignSeq(sequenceString[i], sequenceString[j], seqData.isNa() ? "dna" : "pep");
-      as.calcScoreMatrix(); as.traceAlignment(); as.printAlignment(System.out);
-      distance[i][j] = (float) as.maxscore;
-      
-      if (max < distance[i][j]) { max = distance[i][j]; } } }
-     
-      for (int i = 0; i < (noseqs - 1); i++) { for (int j = i; j < noseqs; j++)
-      { distance[i][j] = max - distance[i][j]; distance[j][i] = distance[i][j];
-      } } 
-     
+
+    float max = -1;
+
+    for (int i = 0; i < (noseqs - 1); i++)
+    {
+      for (int j = i; j < noseqs; j++)
+      {
+        AlignSeq as = new AlignSeq(sequenceString[i], sequenceString[j],
+                seqData.isNa() ? "dna" : "pep");
+        as.calcScoreMatrix();
+        as.traceAlignment();
+        as.printAlignment(System.out);
+        distance[i][j] = (float) as.maxscore;
+
+        if (max < distance[i][j])
+        {
+          max = distance[i][j];
+        }
+      }
+    }
+
+    for (int i = 0; i < (noseqs - 1); i++)
+    {
+      for (int j = i; j < noseqs; j++)
+      {
+        distance[i][j] = max - distance[i][j];
+        distance[j][i] = distance[i][j];
+      }
+    }
+
     return distance;
   }
 
@@ -38,17 +74,21 @@ public class SWScoreModel implements ScoreModelI
   {
     return "Smith Waterman Score";
   }
+
   @Override
   public boolean isDNA()
   {
     return true;
   }
+
   @Override
   public boolean isProtein()
   {
     return true;
   }
-  public String toString() {
+
+  public String toString()
+  {
     return "Score between two sequences aligned with Smith Waterman with default Peptide/Nucleotide matrix";
   }
 }
index 2641c96..199aa7d 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.api;
index c8dc96d..48fa750 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.api;
index 1d150af..b9638e5 100644 (file)
@@ -1,14 +1,38 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
 package jalview.api;
+
 /**
- * Interface implemented by gui implementations managing a Jalview Alignment View
+ * Interface implemented by gui implementations managing a Jalview Alignment
+ * View
+ * 
  * @author jimp
- *
+ * 
  */
 public interface AlignViewControllerGuiI
 {
 
   /**
    * display the given string in the GUI's status bar
+   * 
    * @param string
    */
   void setStatus(String string);
index cac3776..35f084f 100644 (file)
@@ -1,14 +1,39 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
 package jalview.api;
 
 /**
  * prototype abstract controller for a Jalview alignment view
+ * 
  * @author jimp
  * 
- * All operations should return true if the view has changed as a result of the operation
- * @param <ViewportI>
- *
+ *         All operations should return true if the view has changed as a result
+ *         of the operation
+ * 
+ *         The controller holds methods that operate on an alignment view,
+ *         modifying its state in some way that may result in side effects
+ *         reflected in an associated GUI
+ * 
  */
-public interface AlignViewControllerI<ViewportI>
+public interface AlignViewControllerI
 {
 
   public boolean makeGroupsFromSelection();
@@ -19,16 +44,24 @@ public interface AlignViewControllerI<ViewportI>
 
   public boolean deleteGroups();
 
-  public void setViewportAndAlignmentPanel(AlignViewportI viewport, AlignmentViewPanel alignPanel);
+  public void setViewportAndAlignmentPanel(AlignViewportI viewport,
+          AlignmentViewPanel alignPanel);
 
   /**
-   * Mark columns in the current column selection according to positions of sequence features
-   * @param invert - when set, mark all but columns containing given type
-   * @param extendCurrent - when set, do not clear existing column selection
-   * @param toggle - rather than explicitly set, toggle selection state
-   * @param featureType - feature type string
+   * Mark columns in the current column selection according to positions of
+   * sequence features
+   * 
+   * @param invert
+   *          - when set, mark all but columns containing given type
+   * @param extendCurrent
+   *          - when set, do not clear existing column selection
+   * @param toggle
+   *          - rather than explicitly set, toggle selection state
+   * @param featureType
+   *          - feature type string
    * @return true if operation affected state
    */
-  boolean markColumnsContainingFeatures(boolean invert, boolean extendCurrent, boolean clearColumns, String featureType);
+  boolean markColumnsContainingFeatures(boolean invert,
+          boolean extendCurrent, boolean clearColumns, String featureType);
 
 }
index 7463187..d8ba30d 100644 (file)
@@ -1,25 +1,28 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.api;
 
 import java.awt.Color;
 import java.util.Hashtable;
+import java.util.List;
 import java.util.Map;
 
 import jalview.analysis.Conservation;
@@ -189,5 +192,12 @@ public interface AlignViewportI
 
   void setConservation(Conservation cons);
 
+  /**
+   * get a copy of the currently visible alignment annotation
+   * @param selectedOnly if true - trim to selected regions on the alignment
+   * @return an empty list or new alignment annotation objects shown only visible columns trimmed to selected region only
+   */
+  List<AlignmentAnnotation> getVisibleAlignmentAnnotation(
+          boolean selectedOnly);
 
 }
index e3d8d66..7ff3a6a 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.api;
index d46d684..679cded 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.api;
index 0c4dda8..5c7200c 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.api;
index f00ffa4..14b9cc9 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.api;
index 7f47848..fbd5e4a 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.api;
index 99be87a..32c5bca 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.api;
@@ -27,6 +29,23 @@ package jalview.api;
 public interface SequenceStructureBinding
 {
 
-  // todo: decide what this really means - we could return a reference to the
-  // alignment/jmol binding, or some other binding.
+  /**
+   * 
+   * @return true if Jalview or the Viewer is still restoring state or loading
+   *         is still going on (see setFinsihedLoadingFromArchive)
+   */
+  void setLoadingFromArchive(boolean loadingFromArchive);
+
+  boolean isLoadingFromArchive();
+
+  /**
+   * modify flag which controls if sequence colouring events are honoured by the
+   * binding. Should be true for normal operation
+   * 
+   * @param finishedLoading
+   */
+  void setFinishedLoadingFromArchive(boolean finishedLoading);
+
+  boolean isLoadingFinished();
+
 }
index c287142..dc37933 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.api;
index 0d56033..ad28faf 100644 (file)
@@ -1,3 +1,23 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
 package jalview.api.analysis;
 
 import jalview.datamodel.AlignmentView;
diff --git a/src/jalview/api/structures/JalviewStructureDisplayI.java b/src/jalview/api/structures/JalviewStructureDisplayI.java
new file mode 100644 (file)
index 0000000..efb60dd
--- /dev/null
@@ -0,0 +1,68 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
+package jalview.api.structures;
+
+import jalview.api.FeatureRenderer;
+import jalview.api.SequenceRenderer;
+import jalview.api.SequenceStructureBinding;
+import jalview.datamodel.AlignmentI;
+import jalview.datamodel.SequenceI;
+import jalview.ext.jmol.JalviewJmolBinding;
+import jalview.schemes.ColourSchemeI;
+import jalview.schemes.UserColourScheme;
+import jalview.structure.StructureMappingcommandSet;
+import jalview.structure.StructureSelectionManager;
+
+public interface JalviewStructureDisplayI
+{
+
+  SequenceStructureBinding getBinding();
+
+  /**
+   * @return true if there is an active GUI handling a structure display
+   */
+  boolean isVisible();
+
+  /**
+   * enable or disable the structure display - note this might just hide or show
+   * a GUI element, but not actually reset the display
+   * 
+   * @param b
+   */
+  void setVisible(boolean b);
+
+  /**
+   * free up any external resources that were used by this display and collect
+   * garbage
+   */
+  void dispose();
+
+  /**
+   * shutdown any structure viewing processes started by this display
+   */
+  void closeViewer();
+  /**
+   * apply a colourscheme to the structures in the viewer
+   * @param colourScheme
+   */
+  void setJalviewColourScheme(ColourSchemeI colourScheme);
+
+}
index 15d3b5d..eba1200 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.appletgui;
@@ -87,15 +89,19 @@ public class APopupMenu extends java.awt.PopupMenu implements
 
   Menu editMenu = new Menu(MessageManager.getString("action.edit"));
 
-  MenuItem copy = new MenuItem(MessageManager.getString("label.jalview_copy"));
+  MenuItem copy = new MenuItem(
+          MessageManager.getString("label.jalview_copy"));
 
   MenuItem cut = new MenuItem(MessageManager.getString("label.jalview_cut"));
 
-  MenuItem toUpper = new MenuItem(MessageManager.getString("label.to_upper_case"));
+  MenuItem toUpper = new MenuItem(
+          MessageManager.getString("label.to_upper_case"));
 
-  MenuItem toLower = new MenuItem(MessageManager.getString("label.to_lower_case"));
+  MenuItem toLower = new MenuItem(
+          MessageManager.getString("label.to_lower_case"));
 
-  MenuItem toggleCase = new MenuItem(MessageManager.getString("label.toggle_case"));
+  MenuItem toggleCase = new MenuItem(
+          MessageManager.getString("label.toggle_case"));
 
   Menu outputmenu = new Menu();
 
@@ -107,15 +113,20 @@ public class APopupMenu extends java.awt.PopupMenu implements
 
   MenuItem repGroup = new MenuItem();
 
-  MenuItem sequenceName = new MenuItem(MessageManager.getString("label.edit_name_description"));
+  MenuItem sequenceName = new MenuItem(
+          MessageManager.getString("label.edit_name_description"));
 
-  MenuItem sequenceFeature = new MenuItem(MessageManager.getString("label.create_sequence_feature"));
+  MenuItem sequenceFeature = new MenuItem(
+          MessageManager.getString("label.create_sequence_feature"));
 
-  MenuItem editSequence = new MenuItem(MessageManager.getString("label.edit_sequence"));
+  MenuItem editSequence = new MenuItem(
+          MessageManager.getString("label.edit_sequence"));
 
-  MenuItem sequenceDetails = new MenuItem(MessageManager.getString("label.sequence_details") + "...");
+  MenuItem sequenceDetails = new MenuItem(
+          MessageManager.getString("label.sequence_details") + "...");
 
-  MenuItem selSeqDetails = new MenuItem(MessageManager.getString("label.sequence_details") + "...");
+  MenuItem selSeqDetails = new MenuItem(
+          MessageManager.getString("label.sequence_details") + "...");
 
   Sequence seq;
 
@@ -163,7 +174,9 @@ public class APopupMenu extends java.awt.PopupMenu implements
 
     if (sg != null && sg.getSize() > 0)
     {
-      editGroupName.setLabel(MessageManager.formatMessage("label.name_param", new String[]{sg.getName()}));
+      editGroupName.setLabel(MessageManager.formatMessage(
+              "label.name_param", new String[]
+              { sg.getName() }));
       showText.setState(sg.getDisplayText());
       showColourText.setState(sg.getColourText());
       showBoxes.setState(sg.getDisplayBoxes());
@@ -172,7 +185,9 @@ public class APopupMenu extends java.awt.PopupMenu implements
       {
         menu1.setLabel(MessageManager.getString("action.edit_new_group"));
         groupMenu.remove(unGroupMenuItem);
-      } else {
+      }
+      else
+      {
         menu1.setLabel(MessageManager.getString("action.edit_group"));
         groupMenu.remove(createGroupMenuItem);
       }
@@ -308,7 +323,9 @@ public class APopupMenu extends java.awt.PopupMenu implements
     if (seq != null)
     {
       seqMenu.setLabel(seq.getName());
-      repGroup.setLabel(MessageManager.formatMessage("label.represent_group_with", new String[]{seq.getName()}));
+      repGroup.setLabel(MessageManager.formatMessage(
+              "label.represent_group_with", new String[]
+              { seq.getName() }));
     }
     else
     {
@@ -542,7 +559,7 @@ public class APopupMenu extends java.awt.PopupMenu implements
 
         if (dialog.accept)
         {
-          EditCommand editCommand = new EditCommand("Edit Sequences",
+          EditCommand editCommand = new EditCommand(MessageManager.getString("label.edit_sequences"),
                   EditCommand.REPLACE, dialog.getName().replace(' ',
                           ap.av.getGapCharacter()),
                   sg.getSequencesAsArray(ap.av.getHiddenRepSequences()),
@@ -647,16 +664,16 @@ public class APopupMenu extends java.awt.PopupMenu implements
 
     Frame frame = new Frame();
     frame.add(cap);
-    jalview.bin.JalviewLite.addFrame(frame,
-               MessageManager.formatMessage("label.selection_output_command", new String[]{e.getActionCommand()}),600, 500);
+    jalview.bin.JalviewLite.addFrame(frame, MessageManager.formatMessage(
+            "label.selection_output_command", new String[]
+            { e.getActionCommand() }), 600, 500);
     // JBPNote: getSelectionAsNewSequence behaviour has changed - this method
     // now returns a full copy of sequence data
     // TODO consider using getSequenceSelection instead here
 
     cap.setText(new jalview.io.AppletFormatAdapter().formatSequences(
-            e.getActionCommand(),
-            new Alignment(ap.av.getSelectionAsNewSequence()),
-            ap.av.showJVSuffix));
+            e.getActionCommand(), 
+            ap.av.showJVSuffix, ap.av, true));
 
   }
 
@@ -679,7 +696,9 @@ public class APopupMenu extends java.awt.PopupMenu implements
     StringBuffer contents = new StringBuffer();
     for (SequenceI seq : sequences)
     {
-      contents.append(MessageManager.formatMessage("label.annotation_for_displayid",new String[]{seq.getDisplayId(true)}));
+      contents.append(MessageManager.formatMessage(
+              "label.annotation_for_displayid", new String[]
+              { seq.getDisplayId(true) }));
       new SequenceAnnotationReport(null)
               .createSequenceAnnotationReport(
                       contents,
@@ -696,7 +715,9 @@ public class APopupMenu extends java.awt.PopupMenu implements
     jalview.bin.JalviewLite.addFrame(frame, "Sequence Details for "
             + (sequences.length == 1 ? sequences[0].getDisplayId(true)
                     : "Selection"), 600, 500);
-    cap.setText(MessageManager.formatMessage("label.html_content", new String[]{contents.toString()}));
+    cap.setText(MessageManager.formatMessage("label.html_content",
+            new String[]
+            { contents.toString() }));
   }
 
   void editName()
@@ -735,8 +756,9 @@ public class APopupMenu extends java.awt.PopupMenu implements
       cap.setPDBImport(seq);
       Frame frame = new Frame();
       frame.add(cap);
-      jalview.bin.JalviewLite.addFrame(frame,
-              MessageManager.formatMessage("label.paste_pdb_file_for_sequence",  new String[]{seq.getName()}), 400, 300);
+      jalview.bin.JalviewLite.addFrame(frame, MessageManager.formatMessage(
+              "label.paste_pdb_file_for_sequence", new String[]
+              { seq.getName() }), 400, 300);
     }
   }
 
@@ -746,13 +768,16 @@ public class APopupMenu extends java.awt.PopupMenu implements
     sequenceFeature.addActionListener(this);
 
     editGroupName.addActionListener(this);
-    unGroupMenuItem.setLabel(MessageManager.getString("action.remove_group"));
+    unGroupMenuItem.setLabel(MessageManager
+            .getString("action.remove_group"));
     unGroupMenuItem.addActionListener(this);
 
-    createGroupMenuItem.setLabel(MessageManager.getString("action.create_group"));
+    createGroupMenuItem.setLabel(MessageManager
+            .getString("action.create_group"));
     createGroupMenuItem.addActionListener(this);
 
-    nucleotideMenuItem.setLabel(MessageManager.getString("label.nucleotide"));
+    nucleotideMenuItem.setLabel(MessageManager
+            .getString("label.nucleotide"));
     nucleotideMenuItem.addActionListener(this);
     conservationMenuItem.addItemListener(this);
     abovePIDColour.addItemListener(this);
@@ -763,7 +788,8 @@ public class APopupMenu extends java.awt.PopupMenu implements
     sequenceName.addActionListener(this);
     sequenceDetails.addActionListener(this);
     selSeqDetails.addActionListener(this);
-    displayNonconserved.setLabel(MessageManager.getString("label.show_non_conversed"));
+    displayNonconserved.setLabel(MessageManager
+            .getString("label.show_non_conversed"));
     displayNonconserved.setState(false);
     displayNonconserved.addItemListener(this);
     showText.setLabel(MessageManager.getString("action.text"));
@@ -774,10 +800,12 @@ public class APopupMenu extends java.awt.PopupMenu implements
     seqMenu.setLabel(MessageManager.getString("label.sequence"));
     pdb.setLabel(MessageManager.getString("label.view_pdb_structure"));
     hideSeqs.setLabel(MessageManager.getString("action.hide_sequences"));
-    repGroup.setLabel(MessageManager.formatMessage("label.represent_group_with", new String[]{""}));
+    repGroup.setLabel(MessageManager.formatMessage(
+            "label.represent_group_with", new String[]
+            { "" }));
     revealAll.setLabel(MessageManager.getString("action.reveal_all"));
     revealSeq.setLabel(MessageManager.getString("action.reveal_sequences"));
-    menu1.setLabel(MessageManager.getString("label.group")+":");
+    menu1.setLabel(MessageManager.getString("label.group") + ":");
     add(groupMenu);
     this.add(seqMenu);
     this.add(hideSeqs);
@@ -808,34 +836,34 @@ public class APopupMenu extends java.awt.PopupMenu implements
     colourMenu.add(abovePIDColour);
     colourMenu.add(conservationMenuItem);
 
-    noColourmenuItem.setLabel("None");
+    noColourmenuItem.setLabel(MessageManager.getString("label.none"));
     noColourmenuItem.addActionListener(this);
 
-    clustalColour.setLabel("Clustalx colours");
+    clustalColour.setLabel(MessageManager.getString("label.clustalx_colours"));
     clustalColour.addActionListener(this);
-    zappoColour.setLabel("Zappo");
+    zappoColour.setLabel(MessageManager.getString("label.zappo"));
     zappoColour.addActionListener(this);
-    taylorColour.setLabel("Taylor");
+    taylorColour.setLabel(MessageManager.getString("label.taylor"));
     taylorColour.addActionListener(this);
-    hydrophobicityColour.setLabel("Hydrophobicity");
+    hydrophobicityColour.setLabel(MessageManager.getString("label.hydrophobicity"));
     hydrophobicityColour.addActionListener(this);
-    helixColour.setLabel("Helix propensity");
+    helixColour.setLabel(MessageManager.getString("label.helix_propensity"));
     helixColour.addActionListener(this);
-    strandColour.setLabel("Strand propensity");
+    strandColour.setLabel(MessageManager.getString("label.strand_propensity"));
     strandColour.addActionListener(this);
-    turnColour.setLabel("Turn propensity");
+    turnColour.setLabel(MessageManager.getString("label.turn_propensity"));
     turnColour.addActionListener(this);
-    buriedColour.setLabel("Buried Index");
+    buriedColour.setLabel(MessageManager.getString("label.buried_index"));
     buriedColour.addActionListener(this);
-    abovePIDColour.setLabel("Above % Identity");
+    abovePIDColour.setLabel(MessageManager.getString("label.above_identity_percentage"));
 
-    userDefinedColour.setLabel("User Defined");
+    userDefinedColour.setLabel(MessageManager.getString("action.user_defined"));
     userDefinedColour.addActionListener(this);
-    PIDColour.setLabel("Percentage Identity");
+    PIDColour.setLabel(MessageManager.getString("action.percentage_identity"));
     PIDColour.addActionListener(this);
     BLOSUM62Colour.setLabel("BLOSUM62");
     BLOSUM62Colour.addActionListener(this);
-    conservationMenuItem.setLabel("Conservation");
+    conservationMenuItem.setLabel(MessageManager.getString("label.conservation"));
 
     editMenu.add(copy);
     copy.addActionListener(this);
index f902f24..f267858 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.appletgui;
@@ -53,6 +55,7 @@ import jalview.schemes.NucleotideColourScheme;
 import jalview.schemes.PIDColourScheme;
 import jalview.schemes.PurinePyrimidineColourScheme;
 import jalview.schemes.RNAHelicesColourChooser;
+import jalview.schemes.RNAInteractionColourScheme;
 import jalview.schemes.ResidueProperties;
 import jalview.schemes.StrandColourScheme;
 import jalview.schemes.TCoffeeColourScheme;
@@ -97,6 +100,7 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
         ItemListener, KeyListener, AlignViewControllerGuiI
 {
   public AlignViewControllerI avc;
+
   public AlignmentPanel alignPanel;
 
   public AlignViewport viewport;
@@ -146,7 +150,8 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
     }
     viewport = new AlignViewport(al, applet);
     alignPanel = new AlignmentPanel(this, viewport);
-    avc = new jalview.controller.AlignViewController(this, viewport, alignPanel);
+    avc = new jalview.controller.AlignViewController(this, viewport,
+            alignPanel);
     viewport.updateConservation(alignPanel);
     viewport.updateConsensus(alignPanel);
 
@@ -159,7 +164,7 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
     showSequenceLogo.setState(viewport.isShowSequenceLogo());
     normSequenceLogo.setState(viewport.isNormaliseSequenceLogo());
     applyToAllGroups.setState(viewport.getColourAppliesToAllGroups());
-    
+
     seqLimits.setState(viewport.showJVSuffix);
 
     if (applet != null)
@@ -305,7 +310,8 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
         viewport.featureSettings.refreshTable();
       }
       alignPanel.paintAlignment(true);
-      statusBar.setText(MessageManager.getString("label.successfully_added_features_alignment"));
+      statusBar.setText(MessageManager
+              .getString("label.successfully_added_features_alignment"));
     }
     return featuresFile;
   }
@@ -449,7 +455,9 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
 
     case KeyEvent.VK_F2:
       viewport.cursorMode = !viewport.cursorMode;
-      statusBar.setText(MessageManager.formatMessage("label.keyboard_editing_mode", new String[]{(viewport.cursorMode ? "on" : "off")}));
+      statusBar.setText(MessageManager.formatMessage(
+              "label.keyboard_editing_mode", new String[]
+              { (viewport.cursorMode ? "on" : "off") }));
       if (viewport.cursorMode)
       {
         alignPanel.seqPanel.seqCanvas.cursorX = viewport.startRes;
@@ -564,7 +572,7 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
         }
       }
       break;
-      
+
     case KeyEvent.VK_U:
       if (evt.isControlDown())
       {
@@ -993,8 +1001,9 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
       cap.setText(contents.toString());
       Frame frame = new Frame();
       frame.add(cap);
-      jalview.bin.JalviewLite.addFrame(frame, MessageManager.formatMessage("label.alignment_properties", new String[]{getTitle()}),
-                 400, 250);
+      jalview.bin.JalviewLite.addFrame(frame, MessageManager.formatMessage(
+              "label.alignment_properties", new String[]
+              { getTitle() }), 400, 250);
     }
     else if (source == overviewMenuItem)
     {
@@ -1045,6 +1054,10 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
     {
       changeColour(new PurinePyrimidineColourScheme());
     }
+    else if (source == RNAInteractionColour)
+    {
+      changeColour(new RNAInteractionColourScheme());
+    }
     else if (source == RNAHelixColour)
     {
       new RNAHelicesColourChooser(viewport, alignPanel);
@@ -1137,7 +1150,8 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
     CutAndPasteTransfer cap = new CutAndPasteTransfer(true, this);
     Frame frame = new Frame();
     frame.add(cap);
-    jalview.bin.JalviewLite.addFrame(frame, MessageManager.getString("label.input_cut_paste"), 500, 500);
+    jalview.bin.JalviewLite.addFrame(frame,
+            MessageManager.getString("label.input_cut_paste"), 500, 500);
   }
 
   protected void outputText_actionPerformed(ActionEvent e)
@@ -1145,8 +1159,9 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
     CutAndPasteTransfer cap = new CutAndPasteTransfer(true, this);
     Frame frame = new Frame();
     frame.add(cap);
-    jalview.bin.JalviewLite.addFrame(frame,
-               MessageManager.formatMessage("label.alignment_output_command", new String[]{e.getActionCommand()}),600, 500);
+    jalview.bin.JalviewLite.addFrame(frame, MessageManager.formatMessage(
+            "label.alignment_output_command", new String[]
+            { e.getActionCommand() }), 600, 500);
     cap.setText(new AppletFormatAdapter().formatSequences(
             e.getActionCommand(), viewport.getAlignment(),
             viewport.showJVSuffix));
@@ -1155,11 +1170,13 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
   public void loadAnnotations()
   {
     CutAndPasteTransfer cap = new CutAndPasteTransfer(true, this);
-    cap.setText(MessageManager.getString("label.paste_features_annotations_Tcoffee_here"));
+    cap.setText(MessageManager
+            .getString("label.paste_features_annotations_Tcoffee_here"));
     cap.setAnnotationImport();
     Frame frame = new Frame();
     frame.add(cap);
-    jalview.bin.JalviewLite.addFrame(frame, MessageManager.getString("action.paste_annotations"), 400, 300);
+    jalview.bin.JalviewLite.addFrame(frame,
+            MessageManager.getString("action.paste_annotations"), 400, 300);
 
   }
 
@@ -1176,7 +1193,8 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
       CutAndPasteTransfer cap = new CutAndPasteTransfer(false, this);
       Frame frame = new Frame();
       frame.add(cap);
-      jalview.bin.JalviewLite.addFrame(frame, MessageManager.getString("label.annotations"), 600, 500);
+      jalview.bin.JalviewLite.addFrame(frame,
+              MessageManager.getString("label.annotations"), 600, 500);
       cap.setText(annotation);
     }
 
@@ -1232,7 +1250,8 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
       }
       Frame frame = new Frame();
       frame.add(cap);
-      jalview.bin.JalviewLite.addFrame(frame, MessageManager.getString("label.features"), 600, 500);
+      jalview.bin.JalviewLite.addFrame(frame,
+              MessageManager.getString("label.features"), 600, 500);
       cap.setText(features);
     }
     else
@@ -1370,7 +1389,9 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
     {
       undoMenuItem.setEnabled(true);
       CommandI command = (CommandI) viewport.historyList.peek();
-      undoMenuItem.setLabel(MessageManager.formatMessage("label.undo_command", new String[]{command.getDescription()}));
+      undoMenuItem.setLabel(MessageManager.formatMessage(
+              "label.undo_command", new String[]
+              { command.getDescription() }));
     }
     else
     {
@@ -1383,7 +1404,9 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
       redoMenuItem.setEnabled(true);
 
       CommandI command = (CommandI) viewport.redoList.peek();
-      redoMenuItem.setLabel(MessageManager.formatMessage("label.redo_command", new String[]{command.getDescription()}));
+      redoMenuItem.setLabel(MessageManager.formatMessage(
+              "label.redo_command", new String[]
+              { command.getDescription() }));
     }
     else
     {
@@ -1740,14 +1763,14 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
 
       if (newAlignment)
       {
-        String newtitle = new String("Copied sequences");
-        if (getTitle().startsWith("Copied sequences"))
+        String newtitle = MessageManager.getString("label.copied_sequences");
+        if (getTitle().startsWith(MessageManager.getString("label.copied_sequences")))
         {
           newtitle = getTitle();
         }
         else
         {
-          newtitle = newtitle.concat("- from " + getTitle());
+          newtitle = newtitle.concat(MessageManager.formatMessage("label.from_msname", new String[]{getTitle()}));
         }
         AlignFrame af = new AlignFrame(new Alignment(newSeqs),
                 viewport.applet, newtitle, false);
@@ -1782,7 +1805,7 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
     }
 
     // !newAlignment
-    addHistoryItem(new EditCommand("Add sequences", EditCommand.PASTE,
+    addHistoryItem(new EditCommand(MessageManager.getString("label.add_sequences"), EditCommand.PASTE,
             seqs, 0, viewport.getAlignment().getWidth(),
             viewport.getAlignment()));
 
@@ -1832,7 +1855,7 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
     /*
      * //ADD HISTORY ITEM
      */
-    addHistoryItem(new EditCommand("Cut Sequences", EditCommand.CUT, cut,
+    addHistoryItem(new EditCommand(MessageManager.getString("label.cut_sequences"), EditCommand.CUT, cut,
             sg.getStartRes(), sg.getEndRes() - sg.getStartRes() + 1,
             viewport.getAlignment()));
 
@@ -1910,7 +1933,8 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
 
   protected void makeGrpsFromSelection_actionPerformed()
   {
-    if (avc.makeGroupsFromSelection()) {
+    if (avc.makeGroupsFromSelection())
+    {
       PaintRefresher.Refresh(this, viewport.getSequenceSetId());
       alignPanel.updateAnnotation();
       alignPanel.paintAlignment(true);
@@ -1921,6 +1945,7 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
   {
     avc.createGroup();
   }
+
   protected void unGroup_actionPerformed()
   {
     if (avc.unGroup())
@@ -1928,6 +1953,7 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
       alignPanel.alignmentChanged();
     }
   }
+
   protected void deleteGroups_actionPerformed()
   {
     if (avc.deleteGroups())
@@ -2031,7 +2057,9 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
                 viewport.getSelectionGroup());
       }
 
-      statusBar.setText(MessageManager.formatMessage("label.removed_columns", new String[]{Integer.valueOf(trimRegion.getSize()).toString()}));
+      statusBar.setText(MessageManager.formatMessage(
+              "label.removed_columns", new String[]
+              { Integer.valueOf(trimRegion.getSize()).toString() }));
       addHistoryItem(trimRegion);
 
       for (SequenceGroup sg : viewport.getAlignment().getGroups())
@@ -2071,7 +2099,9 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
 
     addHistoryItem(removeGapCols);
 
-    statusBar.setText(MessageManager.formatMessage("label.removed_empty_columns", new String[]{Integer.valueOf(removeGapCols.getSize()).toString()}));
+    statusBar.setText(MessageManager.formatMessage(
+            "label.removed_empty_columns", new String[]
+            { Integer.valueOf(removeGapCols.getSize()).toString() }));
 
     // This is to maintain viewport position on first residue
     // of first sequence
@@ -2298,8 +2328,9 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
     OverviewPanel overview = new OverviewPanel(alignPanel);
     frame.add(overview);
     // +50 must allow for applet frame window
-    jalview.bin.JalviewLite.addFrame(frame, MessageManager.formatMessage("label.overview_params", new String[]{this.getTitle()}),
-            overview.getPreferredSize().width,
+    jalview.bin.JalviewLite.addFrame(frame, MessageManager.formatMessage(
+            "label.overview_params", new String[]
+            { this.getTitle() }), overview.getPreferredSize().width,
             overview.getPreferredSize().height + 50);
 
     frame.pack();
@@ -2328,9 +2359,9 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
     {
       if (viewport.getAbovePIDThreshold())
       {
-        viewport.setThreshold(SliderPanel.setPIDSliderSource(alignPanel, cs,
-                "Background"));
-      } 
+        viewport.setThreshold(SliderPanel.setPIDSliderSource(alignPanel,
+                cs, "Background"));
+      }
 
       if (viewport.getConservationSelected())
       {
@@ -2454,7 +2485,8 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
     {
       Frame frame = new Frame();
       frame.add(new PairwiseAlignPanel(alignPanel));
-      jalview.bin.JalviewLite.addFrame(frame, MessageManager.getString("action.pairwise_alignment"), 600,
+      jalview.bin.JalviewLite.addFrame(frame,
+              MessageManager.getString("action.pairwise_alignment"), 600,
               500);
     }
   }
@@ -2556,12 +2588,14 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
     cap.setTreeImport();
     Frame frame = new Frame();
     frame.add(cap);
-    jalview.bin.JalviewLite.addFrame(frame, MessageManager.getString("label.paste_newick_file"), 400, 300);
+    jalview.bin.JalviewLite.addFrame(frame,
+            MessageManager.getString("label.paste_newick_file"), 400, 300);
   }
 
   public void loadTree(jalview.io.NewickFile tree, String treeFile)
   {
-    TreePanel tp = new TreePanel(alignPanel, treeFile, MessageManager.getString("label.load_tree_from_file"), tree);
+    TreePanel tp = new TreePanel(alignPanel, treeFile,
+            MessageManager.getString("label.load_tree_from_file"), tree);
     jalview.bin.JalviewLite.addFrame(tp, treeFile, 600, 500);
     addTreeMenuItem(tp, treeFile);
   }
@@ -2581,8 +2615,9 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
             .sortByTree(viewport.getAlignment(), treePanel.getTree());
     // addHistoryItem(new HistoryItem("Sort", viewport.alignment,
     // HistoryItem.SORT));
-    addHistoryItem(new OrderCommand(MessageManager.formatMessage("label.order_by_params", new String[]{title}), oldOrder,
-            viewport.getAlignment()));
+    addHistoryItem(new OrderCommand(MessageManager.formatMessage(
+            "label.order_by_params", new String[]
+            { title }), oldOrder, viewport.getAlignment()));
     alignPanel.paintAlignment(true);
   }
 
@@ -2678,27 +2713,31 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
         // TODO: update this text for each release or centrally store it for
         // lite and application
         g.setFont(new Font("Helvetica", Font.BOLD, 14));
-        g.drawString(MessageManager.formatMessage("label.jalviewLite_release", new String[]{version}), x, y += fh);
+        g.drawString(MessageManager.formatMessage(
+                "label.jalviewLite_release", new String[]
+                { version }), x, y += fh);
         g.setFont(new Font("Helvetica", Font.BOLD, 12));
-        g.drawString(MessageManager.formatMessage("label.jaview_build_date", new String[]{builddate}), x, y += fh);
+        g.drawString(MessageManager.formatMessage(
+                "label.jaview_build_date", new String[]
+                { builddate }), x, y += fh);
         g.setFont(new Font("Helvetica", Font.PLAIN, 12));
-        g.drawString(
-                MessageManager.getString("label.jalview_authors_1"),
+        g.drawString(MessageManager.getString("label.jalview_authors_1"),
                 x, y += fh * 1.5);
-        g.drawString(MessageManager.getString("label.jalview_authors_2"), x + 50, y += fh+8);
+        g.drawString(MessageManager.getString("label.jalview_authors_2"),
+                x + 50, y += fh + 8);
         g.drawString(
-                MessageManager.getString("label.jalview_dev_managers"),
-                x, y += fh);
-        g.drawString(
-                MessageManager.getString("label.jalview_distribution_lists"),
-                x, y += fh);
-        g.drawString(MessageManager.getString("label.jalview_please_cite"), x, y += fh + 8);
+                MessageManager.getString("label.jalview_dev_managers"), x,
+                y += fh);
+        g.drawString(MessageManager
+                .getString("label.jalview_distribution_lists"), x, y += fh);
+        g.drawString(MessageManager.getString("label.jalview_please_cite"),
+                x, y += fh + 8);
         g.drawString(
                 MessageManager.getString("label.jalview_cite_1_authors"),
                 x, y += fh);
         g.drawString(
-                MessageManager.getString("label.jalview_cite_1_title"),
-                x, y += fh);
+                MessageManager.getString("label.jalview_cite_1_title"), x,
+                y += fh);
         g.drawString(MessageManager.getString("label.jalview_cite_1_ref"),
                 x, y += fh);
       }
@@ -2707,7 +2746,8 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
     Frame frame = new Frame();
     frame.add(new AboutPanel(JalviewLite.getVersion(), JalviewLite
             .getBuildDate()));
-    jalview.bin.JalviewLite.addFrame(frame, MessageManager.getString("label.jalview"), 580, 220);
+    jalview.bin.JalviewLite.addFrame(frame,
+            MessageManager.getString("label.jalview"), 580, 220);
 
   }
 
@@ -2730,17 +2770,23 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
 
   Menu fileMenu = new Menu(MessageManager.getString("action.file"));
 
-  MenuItem loadApplication = new MenuItem(MessageManager.getString("label.view_full_application"));
+  MenuItem loadApplication = new MenuItem(
+          MessageManager.getString("label.view_full_application"));
 
-  MenuItem loadTree = new MenuItem(MessageManager.getString("label.load_associated_tree"));
+  MenuItem loadTree = new MenuItem(
+          MessageManager.getString("label.load_associated_tree"));
 
-  MenuItem loadAnnotations = new MenuItem(MessageManager.getString("label.load_features_annotations"));
+  MenuItem loadAnnotations = new MenuItem(
+          MessageManager.getString("label.load_features_annotations"));
 
-  MenuItem outputFeatures = new MenuItem(MessageManager.getString("label.export_features"));
+  MenuItem outputFeatures = new MenuItem(
+          MessageManager.getString("label.export_features").concat("..."));
 
-  MenuItem outputAnnotations = new MenuItem(MessageManager.getString("label.export_annotations"));
+  MenuItem outputAnnotations = new MenuItem(
+          MessageManager.getString("label.export_annotations").concat("..."));
 
-  MenuItem closeMenuItem = new MenuItem(MessageManager.getString("action.close"));
+  MenuItem closeMenuItem = new MenuItem(
+          MessageManager.getString("action.close"));
 
   Menu editMenu = new Menu(MessageManager.getString("action.edit"));
 
@@ -2748,13 +2794,17 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
 
   Menu colourMenu = new Menu(MessageManager.getString("action.colour"));
 
-  Menu calculateMenu = new Menu(MessageManager.getString("action.calculate"));
+  Menu calculateMenu = new Menu(
+          MessageManager.getString("action.calculate"));
 
-  MenuItem selectAllSequenceMenuItem = new MenuItem(MessageManager.getString("action.select_all"));
+  MenuItem selectAllSequenceMenuItem = new MenuItem(
+          MessageManager.getString("action.select_all"));
 
-  MenuItem deselectAllSequenceMenuItem = new MenuItem(MessageManager.getString("action.deselect_all"));
+  MenuItem deselectAllSequenceMenuItem = new MenuItem(
+          MessageManager.getString("action.deselect_all"));
 
-  MenuItem invertSequenceMenuItem = new MenuItem(MessageManager.getString("action.invert_selection"));
+  MenuItem invertSequenceMenuItem = new MenuItem(
+          MessageManager.getString("action.invert_selection"));
 
   MenuItem remove2LeftMenuItem = new MenuItem();
 
@@ -2810,6 +2860,8 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
 
   MenuItem purinePyrimidineColour = new MenuItem();
 
+  MenuItem RNAInteractionColour = new MenuItem();
+
   MenuItem RNAHelixColour = new MenuItem();
 
   MenuItem userDefinedColour = new MenuItem();
@@ -2830,7 +2882,8 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
 
   CheckboxMenuItem displayNonconservedMenuItem = new CheckboxMenuItem();
 
-  MenuItem alProperties = new MenuItem(MessageManager.getString("label.alignment_props"));
+  MenuItem alProperties = new MenuItem(
+          MessageManager.getString("label.alignment_props"));
 
   MenuItem overviewMenuItem = new MenuItem();
 
@@ -2961,13 +3014,17 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
     selectAllSequenceMenuItem.addActionListener(this);
     deselectAllSequenceMenuItem.addActionListener(this);
     invertSequenceMenuItem.addActionListener(this);
-    remove2LeftMenuItem.setLabel(MessageManager.getString("action.remove_left"));
+    remove2LeftMenuItem.setLabel(MessageManager
+            .getString("action.remove_left"));
     remove2LeftMenuItem.addActionListener(this);
-    remove2RightMenuItem.setLabel(MessageManager.getString("action.remove_right"));
+    remove2RightMenuItem.setLabel(MessageManager
+            .getString("action.remove_right"));
     remove2RightMenuItem.addActionListener(this);
-    removeGappedColumnMenuItem.setLabel(MessageManager.getString("action.remove_empty_columns"));
+    removeGappedColumnMenuItem.setLabel(MessageManager
+            .getString("action.remove_empty_columns"));
     removeGappedColumnMenuItem.addActionListener(this);
-    removeAllGapsMenuItem.setLabel(MessageManager.getString("action.remove_all_gaps"));
+    removeAllGapsMenuItem.setLabel(MessageManager
+            .getString("action.remove_all_gaps"));
     removeAllGapsMenuItem.addActionListener(this);
     viewBoxesMenuItem.setLabel(MessageManager.getString("action.boxes"));
     viewBoxesMenuItem.setState(true);
@@ -2975,29 +3032,36 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
     viewTextMenuItem.setLabel(MessageManager.getString("action.text"));
     viewTextMenuItem.setState(true);
     viewTextMenuItem.addItemListener(this);
-    sortPairwiseMenuItem.setLabel(MessageManager.getString("action.by_pairwise_id"));
+    sortPairwiseMenuItem.setLabel(MessageManager
+            .getString("action.by_pairwise_id"));
     sortPairwiseMenuItem.addActionListener(this);
     sortIDMenuItem.setLabel(MessageManager.getString("action.by_id"));
     sortIDMenuItem.addActionListener(this);
-    sortLengthMenuItem.setLabel(MessageManager.getString("action.by_length"));
+    sortLengthMenuItem.setLabel(MessageManager
+            .getString("action.by_length"));
     sortLengthMenuItem.addActionListener(this);
     sortGroupMenuItem.setLabel(MessageManager.getString("action.by_group"));
     sortGroupMenuItem.addActionListener(this);
-    removeRedundancyMenuItem.setLabel(MessageManager.getString("action.remove_redundancy"));
+    removeRedundancyMenuItem.setLabel(MessageManager
+            .getString("action.remove_redundancy").concat("..."));
     removeRedundancyMenuItem.addActionListener(this);
-    pairwiseAlignmentMenuItem.setLabel(MessageManager.getString("action.pairwise_alignment"));
+    pairwiseAlignmentMenuItem.setLabel(MessageManager
+            .getString("action.pairwise_alignment"));
     pairwiseAlignmentMenuItem.addActionListener(this);
-    PCAMenuItem.setLabel(MessageManager.getString("label.principal_component_analysis"));
+    PCAMenuItem.setLabel(MessageManager
+            .getString("label.principal_component_analysis"));
     PCAMenuItem.addActionListener(this);
-    averageDistanceTreeMenuItem
-            .setLabel(MessageManager.getString("label.average_distance_identity"));
+    averageDistanceTreeMenuItem.setLabel(MessageManager
+            .getString("label.average_distance_identity"));
     averageDistanceTreeMenuItem.addActionListener(this);
-    neighbourTreeMenuItem.setLabel(MessageManager.getString("label.neighbour_joining_identity"));
+    neighbourTreeMenuItem.setLabel(MessageManager
+            .getString("label.neighbour_joining_identity"));
     neighbourTreeMenuItem.addActionListener(this);
     statusBar.setBackground(Color.white);
     statusBar.setFont(new java.awt.Font("Verdana", 0, 11));
     statusBar.setText(MessageManager.getString("label.status_bar"));
-    outputTextboxMenu.setLabel(MessageManager.getString("label.out_to_textbox"));
+    outputTextboxMenu.setLabel(MessageManager
+            .getString("label.out_to_textbox"));
     clustalColour.setLabel(MessageManager.getString("label.clustalx"));
 
     clustalColour.addActionListener(this);
@@ -3005,43 +3069,60 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
     zappoColour.addActionListener(this);
     taylorColour.setLabel(MessageManager.getString("label.taylor"));
     taylorColour.addActionListener(this);
-    hydrophobicityColour.setLabel(MessageManager.getString("label.hydrophobicity"));
+    hydrophobicityColour.setLabel(MessageManager
+            .getString("label.hydrophobicity"));
     hydrophobicityColour.addActionListener(this);
-    helixColour.setLabel(MessageManager.getString("label.helix_propensity"));
+    helixColour
+            .setLabel(MessageManager.getString("label.helix_propensity"));
     helixColour.addActionListener(this);
-    strandColour.setLabel(MessageManager.getString("label.strand_propensity"));
+    strandColour.setLabel(MessageManager
+            .getString("label.strand_propensity"));
     strandColour.addActionListener(this);
     turnColour.setLabel(MessageManager.getString("label.turn_propensity"));
     turnColour.addActionListener(this);
     buriedColour.setLabel(MessageManager.getString("label.buried_index"));
     buriedColour.addActionListener(this);
-    purinePyrimidineColour.setLabel(MessageManager.getString("label.purine_pyrimidine"));
+    purinePyrimidineColour.setLabel(MessageManager
+            .getString("label.purine_pyrimidine"));
     purinePyrimidineColour.addActionListener(this);
-    RNAHelixColour.setLabel(MessageManager.getString("action.by_rna_helixes"));
+    RNAInteractionColour.setLabel(MessageManager
+            .getString("label.rna_interaction"));
+    RNAInteractionColour.addActionListener(this);
+    RNAHelixColour.setLabel(MessageManager
+            .getString("action.by_rna_helixes"));
     RNAHelixColour.addActionListener(this);
-    userDefinedColour.setLabel(MessageManager.getString("action.user_defined"));
+    userDefinedColour.setLabel(MessageManager
+            .getString("action.user_defined"));
     userDefinedColour.addActionListener(this);
-    PIDColour.setLabel(MessageManager.getString("label.percentage_identity"));
+    PIDColour.setLabel(MessageManager
+            .getString("label.percentage_identity"));
     PIDColour.addActionListener(this);
-    BLOSUM62Colour.setLabel(MessageManager.getString("label.blosum62_score"));
+    BLOSUM62Colour.setLabel(MessageManager
+            .getString("label.blosum62_score"));
     BLOSUM62Colour.addActionListener(this);
-    tcoffeeColour.setLabel(MessageManager.getString("label.tcoffee_scores"));
+    tcoffeeColour
+            .setLabel(MessageManager.getString("label.tcoffee_scores"));
     tcoffeeColour.setEnabled(false); // it will enabled only if a score file is
                                      // provided
     tcoffeeColour.addActionListener(this);
-    avDistanceTreeBlosumMenuItem
-            .setLabel(MessageManager.getString("label.average_distance_bloslum62"));
+    avDistanceTreeBlosumMenuItem.setLabel(MessageManager
+            .getString("label.average_distance_bloslum62"));
     avDistanceTreeBlosumMenuItem.addActionListener(this);
-    njTreeBlosumMenuItem.setLabel(MessageManager.getString("label.neighbour_blosum62"));
+    njTreeBlosumMenuItem.setLabel(MessageManager
+            .getString("label.neighbour_blosum62"));
     njTreeBlosumMenuItem.addActionListener(this);
-    annotationPanelMenuItem.setLabel(MessageManager.getString("label.show_annotations"));
+    annotationPanelMenuItem.setLabel(MessageManager
+            .getString("label.show_annotations"));
     annotationPanelMenuItem.addItemListener(this);
-    colourTextMenuItem.setLabel(MessageManager.getString("label.colour_text"));
+    colourTextMenuItem.setLabel(MessageManager
+            .getString("label.colour_text"));
     colourTextMenuItem.addItemListener(this);
-    displayNonconservedMenuItem.setLabel(MessageManager.getString("label.show_non_conversed"));
+    displayNonconservedMenuItem.setLabel(MessageManager
+            .getString("label.show_non_conversed"));
     displayNonconservedMenuItem.addItemListener(this);
     alProperties.addActionListener(this);
-    overviewMenuItem.setLabel(MessageManager.getString("label.overview_window"));
+    overviewMenuItem.setLabel(MessageManager
+            .getString("label.overview_window"));
     overviewMenuItem.addActionListener(this);
     undoMenuItem.setEnabled(false);
     undoMenuItem.setLabel(MessageManager.getString("action.undo"));
@@ -3049,24 +3130,29 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
     redoMenuItem.setEnabled(false);
     redoMenuItem.setLabel(MessageManager.getString("action.redo"));
     redoMenuItem.addActionListener(this);
-    conservationMenuItem.setLabel(MessageManager.getString("action.by_conservation"));
+    conservationMenuItem.setLabel(MessageManager
+            .getString("action.by_conservation"));
     conservationMenuItem.addItemListener(this);
     noColourmenuItem.setLabel(MessageManager.getString("label.none"));
     noColourmenuItem.addActionListener(this);
     wrapMenuItem.setLabel(MessageManager.getString("action.wrap"));
     wrapMenuItem.addItemListener(this);
-    renderGapsMenuItem.setLabel(MessageManager.getString("action.show_gaps"));
+    renderGapsMenuItem.setLabel(MessageManager
+            .getString("action.show_gaps"));
     renderGapsMenuItem.setState(true);
     renderGapsMenuItem.addItemListener(this);
     findMenuItem.setLabel(MessageManager.getString("action.find"));
     findMenuItem.addActionListener(this);
-    abovePIDThreshold.setLabel(MessageManager.getString("label.above_identity_threshold"));
+    abovePIDThreshold.setLabel(MessageManager
+            .getString("label.above_identity_threshold"));
     abovePIDThreshold.addItemListener(this);
     nucleotideColour.setLabel(MessageManager.getString("label.nucleotide"));
     nucleotideColour.addActionListener(this);
-    deleteGroups.setLabel(MessageManager.getString("action.undefine_groups"));
+    deleteGroups.setLabel(MessageManager
+            .getString("action.undefine_groups"));
     deleteGroups.addActionListener(this);
-    grpsFromSelection.setLabel(MessageManager.getString("action.make_groups_selection"));
+    grpsFromSelection.setLabel(MessageManager
+            .getString("action.make_groups_selection"));
     grpsFromSelection.addActionListener(this);
     createGroup.setLabel(MessageManager.getString("action.create_group"));
     unGroup.setLabel(MessageManager.getString("action.remove_group"));
@@ -3081,7 +3167,8 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
     pasteNew.addActionListener(this);
     pasteThis.setLabel(MessageManager.getString("label.to_this_alignment"));
     pasteThis.addActionListener(this);
-    applyToAllGroups.setLabel(MessageManager.getString("label.apply_colour_to_all_groups"));
+    applyToAllGroups.setLabel(MessageManager
+            .getString("label.apply_colour_to_all_groups"));
     applyToAllGroups.setState(true);
     applyToAllGroups.addItemListener(this);
     font.setLabel(MessageManager.getString("action.font"));
@@ -3098,20 +3185,26 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
     scaleRight.setState(true);
     scaleRight.setLabel(MessageManager.getString("action.scale_right"));
     scaleRight.addItemListener(this);
-    modifyPID.setLabel(MessageManager.getString("label.modify_identity_thereshold"));
+    modifyPID.setLabel(MessageManager
+            .getString("label.modify_identity_thereshold"));
     modifyPID.addActionListener(this);
-    modifyConservation.setLabel(MessageManager.getString("label.modify_conservation_thereshold"));
+    modifyConservation.setLabel(MessageManager
+            .getString("label.modify_conservation_thereshold"));
     modifyConservation.addActionListener(this);
-    sortByTreeMenu.setLabel(MessageManager.getString("action.by_tree_order"));
+    sortByTreeMenu.setLabel(MessageManager
+            .getString("action.by_tree_order"));
     sort.setLabel(MessageManager.getString("action.sort"));
     calculate.setLabel(MessageManager.getString("action.calculate_tree"));
     autoCalculate.addItemListener(this);
     sortByTree.addItemListener(this);
-    inputText.setLabel(MessageManager.getString("label.input_from_textbox"));
+    inputText
+            .setLabel(MessageManager.getString("label.input_from_textbox"));
     inputText.addActionListener(this);
-    centreColumnLabelFlag.setLabel(MessageManager.getString("label.centre_column_labels"));
+    centreColumnLabelFlag.setLabel(MessageManager
+            .getString("label.centre_column_labels"));
     centreColumnLabelFlag.addItemListener(this);
-    followMouseOverFlag.setLabel(MessageManager.getString("label.automatic_scrolling"));
+    followMouseOverFlag.setLabel(MessageManager
+            .getString("label.automatic_scrolling"));
     followMouseOverFlag.addItemListener(this);
     helpMenu.setLabel(MessageManager.getString("action.help"));
     documentation.setLabel(MessageManager.getString("label.documentation"));
@@ -3120,34 +3213,52 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
     about.setLabel(MessageManager.getString("label.about"));
     about.addActionListener(this);
     seqLimits.setState(true);
-    seqLimits.setLabel(MessageManager.getString("label.show_sequence_limits"));
+    seqLimits.setLabel(MessageManager
+            .getString("label.show_sequence_limits"));
     seqLimits.addItemListener(this);
-    featureSettings.setLabel(MessageManager.getString("label.feature_settings"));
+    featureSettings.setLabel(MessageManager
+            .getString("label.feature_settings"));
     featureSettings.addActionListener(this);
-    sequenceFeatures.setLabel(MessageManager.getString("label.sequence_features"));
+    sequenceFeatures.setLabel(MessageManager
+            .getString("label.sequence_features"));
     sequenceFeatures.addItemListener(this);
     sequenceFeatures.setState(false);
-    annotationColour.setLabel(MessageManager.getString("action.by_annotation"));
+    annotationColour.setLabel(MessageManager
+            .getString("action.by_annotation"));
     annotationColour.addActionListener(this);
-    invertSequenceMenuItem.setLabel(MessageManager.getString("action.invert_sequence_selection"));
-    invertColSel.setLabel(MessageManager.getString("action.invert_column_selection"));
+    invertSequenceMenuItem.setLabel(MessageManager
+            .getString("action.invert_sequence_selection"));
+    invertColSel.setLabel(MessageManager
+            .getString("action.invert_column_selection"));
     menu1.setLabel(MessageManager.getString("action.show"));
     showColumns.setLabel(MessageManager.getString("label.all_columns"));
     showSeqs.setLabel(MessageManager.getString("label.all_sequences"));
     menu2.setLabel(MessageManager.getString("action.hide"));
-    hideColumns.setLabel(MessageManager.getString("label.selected_columns"));
-    hideSequences.setLabel(MessageManager.getString("label.selected_sequences"));
-    hideAllButSelection.setLabel(MessageManager.getString("label.all_but_selected_region"));
-    hideAllSelection.setLabel(MessageManager.getString("label.selected_region"));
-    showAllHidden.setLabel(MessageManager.getString("label.all_sequences_columns"));
-    showGroupConsensus.setLabel(MessageManager.getString("label.group_consensus"));
-    showGroupConservation.setLabel(MessageManager.getString("label.group_conservation"));
-    showConsensusHistogram.setLabel(MessageManager.getString("label.show_consensus_histogram"));
-    showSequenceLogo.setLabel(MessageManager.getString("label.show_consensus_logo"));
-    normSequenceLogo.setLabel(MessageManager.getString("label.norm_consensus_logo"));
-    applyAutoAnnotationSettings.setLabel(MessageManager.getString("label.apply_all_groups"));
+    hideColumns
+            .setLabel(MessageManager.getString("label.selected_columns"));
+    hideSequences.setLabel(MessageManager
+            .getString("label.selected_sequences"));
+    hideAllButSelection.setLabel(MessageManager
+            .getString("label.all_but_selected_region"));
+    hideAllSelection.setLabel(MessageManager
+            .getString("label.selected_region"));
+    showAllHidden.setLabel(MessageManager
+            .getString("label.all_sequences_columns"));
+    showGroupConsensus.setLabel(MessageManager
+            .getString("label.group_consensus"));
+    showGroupConservation.setLabel(MessageManager
+            .getString("label.group_conservation"));
+    showConsensusHistogram.setLabel(MessageManager
+            .getString("label.show_consensus_histogram"));
+    showSequenceLogo.setLabel(MessageManager
+            .getString("label.show_consensus_logo"));
+    normSequenceLogo.setLabel(MessageManager
+            .getString("label.norm_consensus_logo"));
+    applyAutoAnnotationSettings.setLabel(MessageManager
+            .getString("label.apply_all_groups"));
     applyAutoAnnotationSettings.setState(true);
-    autoAnnMenu.setLabel(MessageManager.getString("label.autocalculated_annotation"));
+    autoAnnMenu.setLabel(MessageManager
+            .getString("label.autocalculated_annotation"));
 
     invertColSel.addActionListener(this);
     showColumns.addActionListener(this);
@@ -3243,6 +3354,7 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
     colourMenu.add(buriedColour);
     colourMenu.add(nucleotideColour);
     colourMenu.add(purinePyrimidineColour);
+    // colourMenu.add(RNAInteractionColour);
     colourMenu.add(tcoffeeColour);
     colourMenu.add(userDefinedColour);
     colourMenu.addSeparator();
@@ -3305,8 +3417,8 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
 
   }
 
-  
-  public void setStatus(String string) {
+  public void setStatus(String string)
+  {
     statusBar.setText(string);
   };
 
index 42aae94..7400122 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.appletgui;
index 3214e70..02ad0cd 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.appletgui;
@@ -433,7 +435,9 @@ public class AlignmentPanel extends Panel implements AdjustmentListener,
     {
       annotationSpaceFillerHolder.setVisible(b);
       annotationPanelHolder.setVisible(b);
-    } else {
+    }
+    else
+    {
       annotationSpaceFillerHolder.setVisible(false);
       annotationPanelHolder.setVisible(false);
     }
@@ -484,10 +488,12 @@ public class AlignmentPanel extends Panel implements AdjustmentListener,
 
     if (adjustPanelHeight)
     {
-      // NOTE: this logic is different in the application. Need a better algorithm to define behaviour
+      // NOTE: this logic is different in the application. Need a better
+      // algorithm to define behaviour
       // sets initial preferred height
       // try and set height according to alignment
-      float sscaling = (float) ((av.getCharHeight() * av.getAlignment().getHeight())/(1.0*mheight));
+      float sscaling = (float) ((av.getCharHeight() * av.getAlignment()
+              .getHeight()) / (1.0 * mheight));
       if (sscaling > 0.5)
       {
         // if the alignment is too big then
@@ -496,7 +502,7 @@ public class AlignmentPanel extends Panel implements AdjustmentListener,
       }
       else
       {
-        // otherwise just set the panel so that one row of sequence is visible 
+        // otherwise just set the panel so that one row of sequence is visible
         height = -av.getCharHeight() * 1
                 + (int) (seqandannot * (1 - sscaling));
       }
@@ -547,13 +553,13 @@ public class AlignmentPanel extends Panel implements AdjustmentListener,
       annotationPanelHolder.setVisible(true);
       annotationSpaceFillerHolder.setVisible(true);
     }
-    
+
     idSpaceFillerPanel1.setVisible(!wrap);
 
     fontChanged(); // This is so that the scalePanel is resized correctly
 
     validate();
-    sequenceHolderPanel.revalidate();
+    sequenceHolderPanel.validate();
     repaint();
 
   }
@@ -823,7 +829,7 @@ public class AlignmentPanel extends Panel implements AdjustmentListener,
 
     seqPanel.seqCanvas.repaint();
     idPanel.idCanvas.repaint();
-    if (!av.wrapAlignment) 
+    if (!av.wrapAlignment)
     {
       if (av.showAnnotation)
       {
@@ -832,7 +838,7 @@ public class AlignmentPanel extends Panel implements AdjustmentListener,
       }
       scalePanel.repaint();
     }
-    
+
   }
 
   protected Panel sequenceHolderPanel = new Panel();
index 99ddc50..c7b7c6c 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.appletgui;
@@ -86,8 +88,9 @@ public class AnnotationColourChooser extends Panel implements
     if (oldcs instanceof AnnotationColourGradient)
     {
       AnnotationColourGradient acg = (AnnotationColourGradient) oldcs;
-      currentColours.setState(acg.isPredefinedColours() || acg.getBaseColour()!=null);
-      if (!acg.isPredefinedColours() && acg.getBaseColour()==null)
+      currentColours.setState(acg.isPredefinedColours()
+              || acg.getBaseColour() != null);
+      if (!acg.isPredefinedColours() && acg.getBaseColour() == null)
       {
         minColour.setBackground(acg.getMinColour());
         maxColour.setBackground(acg.getMaxColour());
@@ -95,7 +98,6 @@ public class AnnotationColourChooser extends Panel implements
       // seqAssociated.setState(acg.isSeqAssociated());
     }
 
-
     Vector list = new Vector();
     int index = 1;
     for (int i = 0; i < av.getAlignment().getAlignmentAnnotation().length; i++)
@@ -112,9 +114,12 @@ public class AnnotationColourChooser extends Panel implements
       annotations.addItem(list.elementAt(i).toString());
     }
 
-    threshold.addItem(MessageManager.getString("label.threshold_feature_no_thereshold"));
-    threshold.addItem(MessageManager.getString("label.threshold_feature_above_thereshold"));
-    threshold.addItem(MessageManager.getString("label.threshold_feature_below_thereshold"));
+    threshold.addItem(MessageManager
+            .getString("label.threshold_feature_no_thereshold"));
+    threshold.addItem(MessageManager
+            .getString("label.threshold_feature_above_thereshold"));
+    threshold.addItem(MessageManager
+            .getString("label.threshold_feature_below_thereshold"));
 
     if (oldcs instanceof AnnotationColourGradient)
     {
@@ -132,8 +137,7 @@ public class AnnotationColourChooser extends Panel implements
         threshold.select(1);
         break;
       default:
-        throw new Error(
-                "Implementation error: don't know about threshold setting for current AnnotationColourGradient.");
+        throw new Error(MessageManager.getString("error.implementation_error_dont_know_thereshold_annotationcolourgradient"));
       }
       thresholdIsMin.setState(acg.thresholdIsMinMax);
       thresholdValue.setText("" + acg.getAnnotationThreshold());
@@ -145,7 +149,8 @@ public class AnnotationColourChooser extends Panel implements
 
     frame = new Frame();
     frame.add(this);
-    jalview.bin.JalviewLite.addFrame(frame, MessageManager.getString("label.colour_by_annotation"), 560,
+    jalview.bin.JalviewLite.addFrame(frame,
+            MessageManager.getString("label.colour_by_annotation"), 560,
             175);
     validate();
   }
@@ -200,11 +205,13 @@ public class AnnotationColourChooser extends Panel implements
     thresholdValue.setEnabled(false);
     thresholdValue.setColumns(5);
     currentColours.setFont(new java.awt.Font("Verdana", Font.PLAIN, 11));
-    currentColours.setLabel(MessageManager.getString("label.use_original_colours"));
+    currentColours.setLabel(MessageManager
+            .getString("label.use_original_colours"));
     currentColours.addItemListener(this);
 
     thresholdIsMin.setBackground(Color.white);
-    thresholdIsMin.setLabel(MessageManager.getString("label.threshold_minmax"));
+    thresholdIsMin.setLabel(MessageManager
+            .getString("label.threshold_minmax"));
 
     this.setLayout(borderLayout1);
 
@@ -402,11 +409,11 @@ public class AnnotationColourChooser extends Panel implements
             .getSelectedIndex()];
 
     int aboveThreshold = -1;
-    if (threshold.getSelectedIndex()==1)
+    if (threshold.getSelectedIndex() == 1)
     {
       aboveThreshold = AnnotationColourGradient.ABOVE_THRESHOLD;
     }
-    else if (threshold.getSelectedIndex()==2)
+    else if (threshold.getSelectedIndex() == 2)
     {
       aboveThreshold = AnnotationColourGradient.BELOW_THRESHOLD;
     }
index 5900b67..3e81664 100755 (executable)
@@ -1,25 +1,26 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.appletgui;
 
 import java.util.*;
-
 import java.awt.*;
 import java.awt.event.*;
 
@@ -410,7 +411,8 @@ public class AnnotationLabels extends Panel implements ActionListener,
     if ((evt.getModifiers() & InputEvent.BUTTON3_MASK) == InputEvent.BUTTON3_MASK)
     {
 
-      PopupMenu popup = new PopupMenu(MessageManager.getString("label.annotations"));
+      PopupMenu popup = new PopupMenu(
+              MessageManager.getString("label.annotations"));
 
       MenuItem item = new MenuItem(ADDNEW);
       item.addActionListener(this);
@@ -453,7 +455,7 @@ public class AnnotationLabels extends Panel implements ActionListener,
           {
             popup.addSeparator();
             final CheckboxMenuItem cbmi = new CheckboxMenuItem(
-                    "Ignore Gaps In Consensus",
+                    MessageManager.getString("label.ignore_gaps_consensus"),
                     (aa[selectedRow].groupRef != null) ? aa[selectedRow].groupRef
                             .getIgnoreGapsConsensus() : ap.av
                             .getIgnoreGapsConsensus());
@@ -478,7 +480,7 @@ public class AnnotationLabels extends Panel implements ActionListener,
             if (aaa.groupRef != null)
             {
               final CheckboxMenuItem chist = new CheckboxMenuItem(
-                      "Show Group Histogram",
+                      MessageManager.getString("label.show_group_histogram"),
                       aa[selectedRow].groupRef.isShowConsensusHistogram());
               chist.addItemListener(new ItemListener()
               {
@@ -497,7 +499,7 @@ public class AnnotationLabels extends Panel implements ActionListener,
               });
               popup.add(chist);
               final CheckboxMenuItem cprofl = new CheckboxMenuItem(
-                      "Show Group Logo",
+                      MessageManager.getString("label.show_group_logo"),
                       aa[selectedRow].groupRef.isShowSequenceLogo());
               cprofl.addItemListener(new ItemListener()
               {
@@ -517,7 +519,7 @@ public class AnnotationLabels extends Panel implements ActionListener,
 
               popup.add(cprofl);
               final CheckboxMenuItem cprofn = new CheckboxMenuItem(
-                      "Normalise Group Logo",
+                      MessageManager.getString("label.normalise_group_logo"),
                       aa[selectedRow].groupRef.isNormaliseSequenceLogo());
               cprofn.addItemListener(new ItemListener()
               {
@@ -540,7 +542,7 @@ public class AnnotationLabels extends Panel implements ActionListener,
             else
             {
               final CheckboxMenuItem chist = new CheckboxMenuItem(
-                      "Show Histogram", av.isShowConsensusHistogram());
+                      MessageManager.getString("label.show_histogram"), av.isShowConsensusHistogram());
               chist.addItemListener(new ItemListener()
               {
                 public void itemStateChanged(ItemEvent e)
@@ -562,7 +564,7 @@ public class AnnotationLabels extends Panel implements ActionListener,
               });
               popup.add(chist);
               final CheckboxMenuItem cprof = new CheckboxMenuItem(
-                      "Show Logo", av.isShowSequenceLogo());
+                      MessageManager.getString("label.show_logo"), av.isShowSequenceLogo());
               cprof.addItemListener(new ItemListener()
               {
                 public void itemStateChanged(ItemEvent e)
@@ -585,7 +587,7 @@ public class AnnotationLabels extends Panel implements ActionListener,
               });
               popup.add(cprof);
               final CheckboxMenuItem cprofn = new CheckboxMenuItem(
-                      "Normalise Logo", av.isNormaliseSequenceLogo());
+                      MessageManager.getString("label.normalise_logo"), av.isNormaliseSequenceLogo());
               cprofn.addItemListener(new ItemListener()
               {
                 public void itemStateChanged(ItemEvent e)
@@ -646,17 +648,40 @@ public class AnnotationLabels extends Panel implements ActionListener,
         }
         else if (aa[selectedRow].sequenceRef != null)
         {
-          Vector sr = new Vector();
-          sr.addElement(aa[selectedRow].sequenceRef);
           if (evt.getClickCount() == 1)
           {
-            ap.seqPanel.ap.idPanel.highlightSearchResults(sr);
+            ap.seqPanel.ap.idPanel.highlightSearchResults(Arrays
+                    .asList(new SequenceI[]
+                    { aa[selectedRow].sequenceRef }));
           }
           else if (evt.getClickCount() >= 2)
           {
             ap.seqPanel.ap.idPanel.highlightSearchResults(null);
-            SequenceGroup sg = new SequenceGroup();
-            sg.addSequence(aa[selectedRow].sequenceRef, false);
+            SequenceGroup sg = ap.av.getSelectionGroup();
+            if (sg!=null)
+            {
+              // we make a copy rather than edit the current selection if no modifiers pressed
+              // see Enhancement JAL-1557
+              if (!(evt.isControlDown() || evt.isShiftDown()))
+              {
+                sg = new SequenceGroup(sg);
+                sg.clear();
+                sg.addSequence(aa[selectedRow].sequenceRef, false);
+              } else {
+                if (evt.isControlDown())
+                {
+                  sg.addOrRemove(aa[selectedRow].sequenceRef, true);
+                } else {
+                  // notionally, we should also add intermediate sequences from last added sequence ?
+                  sg.addSequence(aa[selectedRow].sequenceRef, true);
+                }
+              }
+            } else {
+              sg = new SequenceGroup();
+              sg.setStartRes(0);
+              sg.setEndRes(ap.av.getAlignment().getWidth()-1);
+              sg.addSequence(aa[selectedRow].sequenceRef, false);
+            }
             ap.av.setSelectionGroup(sg);
             ap.paintAlignment(false);
             PaintRefresher.Refresh(ap, ap.av.getSequenceSetId());
@@ -771,7 +796,8 @@ public class AnnotationLabels extends Panel implements ActionListener,
     {
       g.setColor(Color.black);
       g.drawString(MessageManager.getString("label.right_click"), 2, 8);
-      g.drawString(MessageManager.getString("label.to_add_annotation"), 2, 18);
+      g.drawString(MessageManager.getString("label.to_add_annotation"), 2,
+              18);
     }
   }
 }
index a343bcf..4b9fa67 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.appletgui;
@@ -238,7 +240,7 @@ public class AnnotationPanel extends Panel implements AwtRenderPanelI,
         aa[activeRow].hasText = true;
         if (evt.getActionCommand().equals(STEM))
         {
-          aa[activeRow].showAllColLabels=true;
+          aa[activeRow].showAllColLabels = true;
         }
       }
 
@@ -323,7 +325,8 @@ public class AnnotationPanel extends Panel implements AwtRenderPanelI,
         return;
       }
 
-      PopupMenu pop = new PopupMenu(MessageManager.getString("label.structure_type"));
+      PopupMenu pop = new PopupMenu(
+              MessageManager.getString("label.structure_type"));
       MenuItem item;
       /*
        * Just display the needed structure options
@@ -624,7 +627,8 @@ public class AnnotationPanel extends Panel implements AwtRenderPanelI,
       g.setColor(Color.black);
       if (av.validCharWidth)
       {
-        g.drawString(MessageManager.getString("label.alignment_has_no_annotations"), 20, 15);
+        g.drawString(MessageManager
+                .getString("label.alignment_has_no_annotations"), 20, 15);
       }
 
       return;
@@ -662,16 +666,21 @@ public class AnnotationPanel extends Panel implements AwtRenderPanelI,
   {
     return imgWidth;
   }
+
   private int[] bounds = new int[2];
+
   @Override
   public int[] getVisibleVRange()
   {
-    if (ap!=null && ap.alabels!=null)
+    if (ap != null && ap.alabels != null)
     {
-    int sOffset=-ap.alabels.scrollOffset;
-    int visHeight = sOffset+ap.annotationPanelHolder.getHeight();
-    bounds[0] = sOffset; bounds[1]=visHeight;
-    return bounds;
-    } else return null;
+      int sOffset = -ap.alabels.scrollOffset;
+      int visHeight = sOffset + ap.annotationPanelHolder.getHeight();
+      bounds[0] = sOffset;
+      bounds[1] = visHeight;
+      return bounds;
+    }
+    else
+      return null;
   }
 }
index b88bb94..42fbd70 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.appletgui;
@@ -32,7 +34,7 @@ import jalview.util.MessageManager;
 
 public class AppletJmol extends EmbmenuFrame implements
 // StructureListener,
-        KeyListener, ActionListener, ItemListener, SequenceStructureBinding
+        KeyListener, ActionListener, ItemListener
 
 {
   Menu fileMenu = new Menu(MessageManager.getString("action.file"));
@@ -45,35 +47,47 @@ public class AppletJmol extends EmbmenuFrame implements
 
   Menu helpMenu = new Menu(MessageManager.getString("action.help"));
 
-  MenuItem mappingMenuItem = new MenuItem(MessageManager.getString("label.view_mapping"));
+  MenuItem mappingMenuItem = new MenuItem(
+          MessageManager.getString("label.view_mapping"));
 
-  CheckboxMenuItem seqColour = new CheckboxMenuItem(MessageManager.getString("action.by_sequence"), true);
+  CheckboxMenuItem seqColour = new CheckboxMenuItem(
+          MessageManager.getString("action.by_sequence"), true);
 
-  CheckboxMenuItem jmolColour = new CheckboxMenuItem(MessageManager.getString("action.using_jmol"), false);
+  CheckboxMenuItem jmolColour = new CheckboxMenuItem(
+          MessageManager.getString("action.using_jmol"), false);
 
   MenuItem chain = new MenuItem(MessageManager.getString("action.by_chain"));
 
-  MenuItem charge = new MenuItem(MessageManager.getString("label.charge_cysteine"));
+  MenuItem charge = new MenuItem(
+          MessageManager.getString("label.charge_cysteine"));
 
   MenuItem zappo = new MenuItem(MessageManager.getString("label.zappo"));
 
   MenuItem taylor = new MenuItem(MessageManager.getString("label.taylor"));
 
-  MenuItem hydro = new MenuItem(MessageManager.getString("label.hydrophobicity"));
+  MenuItem hydro = new MenuItem(
+          MessageManager.getString("label.hydrophobicity"));
 
-  MenuItem helix = new MenuItem(MessageManager.getString("label.helix_propensity"));
+  MenuItem helix = new MenuItem(
+          MessageManager.getString("label.helix_propensity"));
 
-  MenuItem strand = new MenuItem(MessageManager.getString("label.strand_propensity"));
+  MenuItem strand = new MenuItem(
+          MessageManager.getString("label.strand_propensity"));
 
-  MenuItem turn = new MenuItem(MessageManager.getString("label.turn_propensity"));
+  MenuItem turn = new MenuItem(
+          MessageManager.getString("label.turn_propensity"));
 
-  MenuItem buried = new MenuItem(MessageManager.getString("label.buried_index"));
+  MenuItem buried = new MenuItem(
+          MessageManager.getString("label.buried_index"));
 
-  MenuItem purinepyrimidine = new MenuItem(MessageManager.getString("label.purine_pyrimidine"));
+  MenuItem purinepyrimidine = new MenuItem(
+          MessageManager.getString("label.purine_pyrimidine"));
 
-  MenuItem user = new MenuItem(MessageManager.getString("label.user_defined_colours"));
+  MenuItem user = new MenuItem(
+          MessageManager.getString("label.user_defined_colours"));
 
-  MenuItem jmolHelp = new MenuItem(MessageManager.getString("label.jmol_help"));
+  MenuItem jmolHelp = new MenuItem(
+          MessageManager.getString("label.jmol_help"));
 
   Panel scriptWindow;
 
@@ -125,7 +139,7 @@ public class AppletJmol extends EmbmenuFrame implements
           String[][] boundchains, boolean align, AlignmentPanel ap,
           String protocol)
   {
-    throw new Error("Not yet implemented.");
+    throw new Error(MessageManager.getString("error.not_yet_implemented"));
   }
 
   public AppletJmol(PDBEntry pdbentry, SequenceI[] seq, String[] chains,
@@ -301,8 +315,7 @@ public class AppletJmol extends EmbmenuFrame implements
           }
           if (freader == null)
           {
-            throw new Exception(
-                    "Invalid datasource. Could not obtain Reader.");
+            throw new Exception(MessageManager.getString("exception.invalid_datasource_couldnt_obtain_reader"));
           }
           jmb.viewer.openReader(pdbentry.getFile(), pdbentry.getId(),
                   freader);
@@ -398,8 +411,9 @@ public class AppletJmol extends EmbmenuFrame implements
                 .println("Out of memory when trying to create dialog box with sequence-structure mapping.");
         return;
       }
-      jalview.bin.JalviewLite.addFrame(frame, MessageManager.getString("label.pdb_sequence_mapping"),
-              550, 600);
+      jalview.bin.JalviewLite.addFrame(frame,
+              MessageManager.getString("label.pdb_sequence_mapping"), 550,
+              600);
     }
     else if (evt.getSource() == charge)
     {
@@ -617,7 +631,8 @@ public class AppletJmol extends EmbmenuFrame implements
         g.fillRect(0, 0, currentSize.width, currentSize.height);
         g.setColor(Color.white);
         g.setFont(new Font("Verdana", Font.BOLD, 14));
-        g.drawString(MessageManager.getString("label.retrieving_pdb_data"), 20, currentSize.height / 2);
+        g.drawString(MessageManager.getString("label.retrieving_pdb_data"),
+                20, currentSize.height / 2);
       }
       else
       {
index 923f3b2..650693d 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.appletgui;
index ff05547..636dd7f 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.appletgui;
@@ -155,7 +157,9 @@ public class CutAndPasteTransfer extends Panel implements ActionListener,
       {
         // TODO: JAL-1102 - should have a warning message in dialog, not simply
         // overwrite the broken input data with the exception
-        textarea.setText(MessageManager.formatMessage("label.could_not_parse_newick_file", new String[]{ex.getMessage()}));
+        textarea.setText(MessageManager.formatMessage(
+                "label.could_not_parse_newick_file", new String[]
+                { ex.getMessage() }));
         return;
       }
     }
@@ -176,12 +180,17 @@ public class CutAndPasteTransfer extends Panel implements ActionListener,
             alignFrame.changeColour(new TCoffeeColourScheme(
                     alignFrame.viewport.getAlignment()));
             alignFrame.statusBar
-                    .setText(MessageManager.getString("label.successfully_pasted_tcoffee_scores_to_alignment"));
+                    .setText(MessageManager
+                            .getString("label.successfully_pasted_tcoffee_scores_to_alignment"));
           }
           else
           {
             // file valid but didn't get added to alignment for some reason
-            alignFrame.statusBar.setText(MessageManager.formatMessage("label.failed_add_tcoffee_scores", new String[]{(tcf.getWarningMessage() != null ? tcf.getWarningMessage() : "")}));
+            alignFrame.statusBar.setText(MessageManager.formatMessage(
+                    "label.failed_add_tcoffee_scores",
+                    new String[]
+                    { (tcf.getWarningMessage() != null ? tcf
+                            .getWarningMessage() : "") }));
           }
         }
         else
@@ -201,7 +210,8 @@ public class CutAndPasteTransfer extends Panel implements ActionListener,
           alignFrame.alignPanel.fontChanged();
           alignFrame.alignPanel.setScrollValues(0, 0);
           alignFrame.statusBar
-                  .setText(MessageManager.getString("label.successfully_pasted_annotation_to_alignment"));
+                  .setText(MessageManager
+                          .getString("label.successfully_pasted_annotation_to_alignment"));
 
         }
         else
@@ -210,7 +220,8 @@ public class CutAndPasteTransfer extends Panel implements ActionListener,
                   jalview.io.AppletFormatAdapter.PASTE))
           {
             alignFrame.statusBar
-                    .setText(MessageManager.getString("label.couldnt_parse_pasted_text_as_valid_annotation_feature_GFF_tcoffee_file"));
+                    .setText(MessageManager
+                            .getString("label.couldnt_parse_pasted_text_as_valid_annotation_feature_GFF_tcoffee_file"));
           }
         }
       }
@@ -236,13 +247,15 @@ public class CutAndPasteTransfer extends Panel implements ActionListener,
         {
           AlignFrame af = new AlignFrame(al, alignFrame.viewport.applet,
                   "Cut & Paste input - " + format, false);
-          af.statusBar.setText(MessageManager.getString("label.successfully_pasted_annotation_to_alignment"));
+          af.statusBar
+                  .setText(MessageManager
+                          .getString("label.successfully_pasted_annotation_to_alignment"));
         }
         else
         {
           alignFrame.addSequences(al.getSequencesArray());
-          alignFrame.statusBar
-                  .setText(MessageManager.getString("label.successfully_pasted_alignment_file"));
+          alignFrame.statusBar.setText(MessageManager
+                  .getString("label.successfully_pasted_alignment_file"));
         }
       }
     }
@@ -286,7 +299,8 @@ public class CutAndPasteTransfer extends Panel implements ActionListener,
   private void jbInit() throws Exception
   {
     textarea.setFont(new java.awt.Font("Monospaced", Font.PLAIN, 10));
-    textarea.setText(MessageManager.getString("label.paste_your_alignment_file"));
+    textarea.setText(MessageManager
+            .getString("label.paste_your_alignment_file"));
     textarea.addMouseListener(this);
     this.setLayout(borderLayout1);
     accept.addActionListener(this);
@@ -301,7 +315,8 @@ public class CutAndPasteTransfer extends Panel implements ActionListener,
 
   public void mousePressed(MouseEvent evt)
   {
-    if (textarea.getText().startsWith(MessageManager.getString("label.paste_your")))
+    if (textarea.getText().startsWith(
+            MessageManager.getString("label.paste_your")))
     {
       textarea.setText("");
     }
index 44aa229..4f1ce84 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.appletgui;
index 9d893d6..c527308 100644 (file)
@@ -1,23 +1,27 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.appletgui;
 
+import jalview.util.MessageManager;
+
 import java.awt.BorderLayout;
 import java.awt.Color;
 import java.awt.FlowLayout;
@@ -193,8 +197,7 @@ public class EmbmenuFrame extends Frame implements MouseListener
   {
     if (embeddedPopup == null)
     {
-      throw new Error(
-              "Implementation error - embeddedPopup must be non-null");
+      throw new Error(MessageManager.getString("error.implementation_error_embeddedpopup_not_null"));
     }
     if (overrideFonts)
     {
index ae6b5ab..6389250 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.appletgui;
index 66929d4..32ffdbf 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.appletgui;
@@ -114,8 +116,9 @@ public class FeatureColourChooser extends Panel implements ActionListener,
     slider.addAdjustmentListener(this);
     slider.addMouseListener(this);
     owner = (af != null) ? af : fs.frame;
-    frame = new JVDialog(owner, MessageManager.formatMessage("label.graduated_color_for_params", new String[]{type}),
-            true, 480, 248);
+    frame = new JVDialog(owner, MessageManager.formatMessage(
+            "label.graduated_color_for_params", new String[]
+            { type }), true, 480, 248);
     frame.setMainPanel(this);
     validate();
     frame.setVisible(true);
@@ -145,7 +148,8 @@ public class FeatureColourChooser extends Panel implements ActionListener,
 
   private void jbInit() throws Exception
   {
-    Label minLabel = new Label(MessageManager.getString("label.min")), maxLabel = new Label(MessageManager.getString("label.max"));
+    Label minLabel = new Label(MessageManager.getString("label.min")), maxLabel = new Label(
+            MessageManager.getString("label.max"));
     minLabel.setFont(new java.awt.Font("Verdana", Font.PLAIN, 11));
     maxLabel.setFont(new java.awt.Font("Verdana", Font.PLAIN, 11));
     // minColour.setFont(new java.awt.Font("Verdana", Font.PLAIN, 11));
@@ -169,9 +173,12 @@ public class FeatureColourChooser extends Panel implements ActionListener,
     jPanel2.setBackground(Color.white);
     jPanel4.setBackground(Color.white);
     threshold.addItemListener(this);
-    threshold.addItem(MessageManager.getString("label.threshold_feature_no_thereshold"));
-    threshold.addItem(MessageManager.getString("label.threshold_feature_above_thereshold"));
-    threshold.addItem(MessageManager.getString("label.threshold_feature_below_thereshold"));
+    threshold.addItem(MessageManager
+            .getString("label.threshold_feature_no_thereshold"));
+    threshold.addItem(MessageManager
+            .getString("label.threshold_feature_above_thereshold"));
+    threshold.addItem(MessageManager
+            .getString("label.threshold_feature_below_thereshold"));
     thresholdValue.addActionListener(this);
     slider.setBackground(Color.white);
     slider.setEnabled(false);
@@ -184,11 +191,13 @@ public class FeatureColourChooser extends Panel implements ActionListener,
     jPanel3.setBackground(Color.white);
 
     colourFromLabel.setFont(new java.awt.Font("Verdana", Font.PLAIN, 11));
-    colourFromLabel.setLabel(MessageManager.getString("label.colour_by_label"));
+    colourFromLabel.setLabel(MessageManager
+            .getString("label.colour_by_label"));
     colourFromLabel.setSize(new Dimension(139, 22));
     // threshold.setBounds(new Rectangle(11, 3, 139, 22));
     thresholdIsMin.setBackground(Color.white);
-    thresholdIsMin.setLabel(MessageManager.getString("label.threshold_minmax"));
+    thresholdIsMin.setLabel(MessageManager
+            .getString("label.threshold_minmax"));
     thresholdIsMin.setSize(new Dimension(135, 23));
     // thresholdIsMin.setBounds(new Rectangle(328, 3, 135, 23));
     jPanel1.add(minLabel);
@@ -331,11 +340,11 @@ public class FeatureColourChooser extends Panel implements ActionListener,
     }
 
     int aboveThreshold = AnnotationColourGradient.NO_THRESHOLD;
-    if (threshold.getSelectedIndex()==1)
+    if (threshold.getSelectedIndex() == 1)
     {
       aboveThreshold = AnnotationColourGradient.ABOVE_THRESHOLD;
     }
-    else if (threshold.getSelectedIndex()==2)
+    else if (threshold.getSelectedIndex() == 2)
     {
       aboveThreshold = AnnotationColourGradient.BELOW_THRESHOLD;
     }
index 0478a76..29c3ac5 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.appletgui;
@@ -149,7 +151,7 @@ public class FeatureRenderer implements jalview.api.FeatureRenderer
       }
       else
       {
-        throw new Error("Invalid color for MyCheckBox");
+        throw new Error(MessageManager.getString("error.invalid_colour_for_mycheckbox"));
       }
       if (col != null)
       {
@@ -351,8 +353,8 @@ public class FeatureRenderer implements jalview.api.FeatureRenderer
       }
     }
 
-    String title = newFeatures ? "Create New Sequence Feature(s)"
-            : "Amend/Delete Features for " + sequences[0].getName();
+    String title = newFeatures ? MessageManager.getString("label.create_new_sequence_features")
+            : MessageManager.formatMessage("label.amend_delete_features", new String[]{sequences[0].getName()});
 
     final JVDialog dialog = new JVDialog(ap.alignFrame, title, true, 385,
             240);
@@ -899,8 +901,7 @@ public class FeatureRenderer implements jalview.api.FeatureRenderer
         return ((GraduatedColor) fc).getMaxColor();
       }
     }
-    throw new Error("Implementation Error: Unrecognised render object "
-            + fc.getClass() + " for features of type " + featureType);
+    throw new Error(MessageManager.formatMessage("error.implementation_error_unrecognised_render_object_for_features_type", new String[]{fc.getClass().getCanonicalName(),featureType}));
   }
 
   /**
index 004125d..cd11a35 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.appletgui;
@@ -148,16 +150,22 @@ public class FeatureSettings extends Panel implements ItemListener,
     height = Math.max(200, height);
     height = Math.min(400, height);
     int width = 300;
-    jalview.bin.JalviewLite.addFrame(frame, MessageManager.getString("label.feature_settings"), width,
+    jalview.bin.JalviewLite.addFrame(frame,
+            MessageManager.getString("label.feature_settings"), width,
             height);
   }
 
   public void paint(Graphics g)
   {
     g.setColor(Color.black);
-    g.drawString(MessageManager.getString("label.no_features_added_to_this_alignment"), 10, 20);
-    g.drawString(MessageManager.getString("label.features_can_be_added_from_searches_1"), 10, 40);
-    g.drawString(MessageManager.getString("label.features_can_be_added_from_searches_2"), 10, 60);
+    g.drawString(MessageManager
+            .getString("label.no_features_added_to_this_alignment"), 10, 20);
+    g.drawString(MessageManager
+            .getString("label.features_can_be_added_from_searches_1"), 10,
+            40);
+    g.drawString(MessageManager
+            .getString("label.features_can_be_added_from_searches_2"), 10,
+            60);
   }
 
   protected void popupSort(final MyCheckbox check, final Hashtable minmax,
@@ -165,8 +173,11 @@ public class FeatureSettings extends Panel implements ItemListener,
   {
     final String type = check.type;
     final Object typeCol = fr.getFeatureStyle(type);
-    java.awt.PopupMenu men = new PopupMenu(MessageManager.formatMessage("label.settings_for_type", new String[]{type}));
-    java.awt.MenuItem scr = new MenuItem(MessageManager.getString("label.sort_by_score"));
+    java.awt.PopupMenu men = new PopupMenu(MessageManager.formatMessage(
+            "label.settings_for_type", new String[]
+            { type }));
+    java.awt.MenuItem scr = new MenuItem(
+            MessageManager.getString("label.sort_by_score"));
     men.add(scr);
     final FeatureSettings me = this;
     scr.addActionListener(new ActionListener()
@@ -179,7 +190,8 @@ public class FeatureSettings extends Panel implements ItemListener,
       }
 
     });
-    MenuItem dens = new MenuItem(MessageManager.getString("label.sort_by_density"));
+    MenuItem dens = new MenuItem(
+            MessageManager.getString("label.sort_by_density"));
     dens.addActionListener(new ActionListener()
     {
 
@@ -580,8 +592,7 @@ public class FeatureSettings extends Panel implements ItemListener,
     }
     else
     {
-      throw new Error(
-              "Implementation error: Unsupported feature colour object.");
+      throw new Error(MessageManager.getString("error.implementation_error_unsupported_feature_colour_object"));
     }
     refreshTable();
   }
@@ -677,7 +688,7 @@ public class FeatureSettings extends Panel implements ItemListener,
       }
       else
       {
-        throw new Error("Invalid color for MyCheckBox");
+        throw new Error(MessageManager.getString("error.invalid_colour_for_mycheckbox"));
       }
       if (col != null)
       {
index b27dfc5..6ca6ddf 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.appletgui;
@@ -55,7 +57,8 @@ public class Finder extends Panel implements ActionListener
     this.ap = ap;
     frame = new Frame();
     frame.add(this);
-    jalview.bin.JalviewLite.addFrame(frame, MessageManager.getString("action.find"), 340, 120);
+    jalview.bin.JalviewLite.addFrame(frame,
+            MessageManager.getString("action.find"), 340, 120);
     frame.repaint();
     frame.addWindowListener(new WindowAdapter()
     {
@@ -165,7 +168,8 @@ public class Finder extends Panel implements ActionListener
     // 'SelectRegion' selection
     if (!haveResults)
     {
-      ap.alignFrame.statusBar.setText(MessageManager.getString("label.finished_searching"));
+      ap.alignFrame.statusBar.setText(MessageManager
+              .getString("label.finished_searching"));
       resIndex = -1;
       seqIndex = 0;
     }
@@ -184,13 +188,17 @@ public class Finder extends Panel implements ActionListener
         {
           message += searchResults.getSize() + " subsequence matches.";
         }
-        ap.alignFrame.statusBar.setText(MessageManager.formatMessage("label.search_results", new String[] {searchString, message}));
+        ap.alignFrame.statusBar.setText(MessageManager.formatMessage(
+                "label.search_results", new String[]
+                { searchString, message }));
 
       }
       else
       {
         // TODO: indicate sequence and matching position in status bar
-        ap.alignFrame.statusBar.setText(MessageManager.formatMessage("label.found_match_for", new String[]{searchString}));
+        ap.alignFrame.statusBar.setText(MessageManager.formatMessage(
+                "label.found_match_for", new String[]
+                { searchString }));
       }
     }
   }
index a9fee20..6bc67b5 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.appletgui;
@@ -90,7 +92,8 @@ public class FontChooser extends Panel implements ActionListener,
     Frame frame = new Frame();
     this.frame = frame;
     frame.add(this);
-    jalview.bin.JalviewLite.addFrame(frame, MessageManager.getString("action.change_font"), 440, 115);
+    jalview.bin.JalviewLite.addFrame(frame,
+            MessageManager.getString("action.change_font"), 440, 115);
 
     init = false;
   }
@@ -187,7 +190,9 @@ public class FontChooser extends Panel implements ActionListener,
       fontName.select(lastSelected.getName());
       fontStyle.select(lastSelStyle);
       fontSize.select("" + lastSelSize);
-      JVDialog d = new JVDialog(this.frame, MessageManager.getString("label.invalid_font"), true, 350, 200);
+      JVDialog d = new JVDialog(this.frame,
+              MessageManager.getString("label.invalid_font"), true, 350,
+              200);
       Panel mp = new Panel();
       d.cancel.setVisible(false);
       mp.setLayout(new FlowLayout());
index aa3a578..25aa315 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.appletgui;
index e427f42..7981634 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.appletgui;
index dc3fdba..87a2a0e 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.appletgui;
index 60df71d..4125f1b 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.appletgui;
index 954f777..2c2c41a 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.appletgui;
index f592404..32f02fe 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.appletgui;
@@ -85,7 +87,8 @@ public class PCAPanel extends EmbmenuFrame implements Runnable,
     embedMenuIfNeeded(rc);
     add(rc, BorderLayout.CENTER);
 
-    jalview.bin.JalviewLite.addFrame(this, MessageManager.getString("label.principal_component_analysis"),
+    jalview.bin.JalviewLite.addFrame(this,
+            MessageManager.getString("label.principal_component_analysis"),
             475, 400);
 
     Thread worker = new Thread(this);
@@ -219,7 +222,8 @@ public class PCAPanel extends EmbmenuFrame implements Runnable,
     CutAndPasteTransfer cap = new CutAndPasteTransfer(false, null);
     Frame frame = new Frame();
     frame.add(cap);
-    jalview.bin.JalviewLite.addFrame(frame, MessageManager.getString("label.pca_details"), 500, 500);
+    jalview.bin.JalviewLite.addFrame(frame,
+            MessageManager.getString("label.pca_details"), 500, 500);
 
     cap.setText(pcaModel.getDetails());
   }
@@ -327,7 +331,8 @@ public class PCAPanel extends EmbmenuFrame implements Runnable,
     values.setLabel(MessageManager.getString("label.output_values"));
     values.addActionListener(this);
     inputData.setLabel(MessageManager.getString("label.input_data"));
-    nuclSetting.setLabel(MessageManager.getString("label.nucleotide_matrix"));
+    nuclSetting.setLabel(MessageManager
+            .getString("label.nucleotide_matrix"));
     nuclSetting.addItemListener(this);
     protSetting.setLabel(MessageManager.getString("label.protein_matrix"));
     protSetting.addItemListener(this);
index e2f9756..3613247 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.appletgui;
index 589a664..9afc70b 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.appletgui;
@@ -162,7 +164,8 @@ public class PairwiseAlignPanel extends Panel implements ActionListener
     textarea.setFont(new java.awt.Font("Monospaced", 0, 12));
     textarea.setText("");
     viewInEditorButton.setFont(new java.awt.Font("Verdana", 0, 12));
-    viewInEditorButton.setLabel(MessageManager.getString("label.view_alignment_editor"));
+    viewInEditorButton.setLabel(MessageManager
+            .getString("label.view_alignment_editor"));
     viewInEditorButton.addActionListener(this);
     this.add(scrollPane, BorderLayout.CENTER);
     scrollPane.add(textarea);
index 3d7c80f..216f45d 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.appletgui;
@@ -51,7 +53,8 @@ public class RedundancyPanel extends SliderPanel implements Runnable,
     applyButton.setVisible(true);
     allGroupsCheck.setVisible(false);
 
-    label.setText(MessageManager.getString("label.enter_redundancy_threshold"));
+    label.setText(MessageManager
+            .getString("label.enter_redundancy_threshold"));
     valueField.setText("100");
 
     slider.setVisibleAmount(1);
@@ -70,8 +73,8 @@ public class RedundancyPanel extends SliderPanel implements Runnable,
 
     frame = new Frame();
     frame.add(this);
-    jalview.bin.JalviewLite.addFrame(frame,
-            MessageManager.getString("label.redundancy_threshold_selection"), 400, 100);
+    jalview.bin.JalviewLite.addFrame(frame, MessageManager
+            .getString("label.redundancy_threshold_selection"), 400, 100);
 
     frame.addWindowListener(this);
 
@@ -125,7 +128,8 @@ public class RedundancyPanel extends SliderPanel implements Runnable,
 
     redundancy = AlignSeq.computeRedundancyMatrix(originalSequences,
             omitHidden, start, end, false);
-    label.setText(MessageManager.getString("label.enter_redundancy_threshold"));
+    label.setText(MessageManager
+            .getString("label.enter_redundancy_threshold"));
     slider.setVisible(true);
     applyButton.setEnabled(true);
     valueField.setVisible(true);
@@ -192,7 +196,7 @@ public class RedundancyPanel extends SliderPanel implements Runnable,
         }
       }
 
-      EditCommand cut = new EditCommand("Remove Redundancy",
+      EditCommand cut = new EditCommand(MessageManager.getString("action.remove_redundancy"),
               EditCommand.CUT, deleted, 0, width, ap.av.getAlignment());
       AlignmentI alignment = ap.av.getAlignment();
       for (int i = 0; i < del.size(); i++)
index 9ab487b..5426321 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.appletgui;
@@ -317,7 +319,8 @@ public class RotatableCanvas extends Panel implements MouseListener,
     if (points == null)
     {
       g.setFont(new Font("Verdana", Font.PLAIN, 18));
-      g.drawString(MessageManager.getString("label.calculating_pca") + "....", 20, getSize().height / 2);
+      g.drawString(MessageManager.getString("label.calculating_pca")
+              + "....", 20, getSize().height / 2);
     }
     else
     {
index 58f4d69..60d89aa 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.appletgui;
@@ -78,7 +80,8 @@ public class ScalePanel extends Panel implements MouseMotionListener,
       PopupMenu pop = new PopupMenu();
       if (reveal != null)
       {
-        MenuItem item = new MenuItem(MessageManager.getString("label.reveal"));
+        MenuItem item = new MenuItem(
+                MessageManager.getString("label.reveal"));
         item.addActionListener(new ActionListener()
         {
           public void actionPerformed(ActionEvent e)
@@ -117,7 +120,8 @@ public class ScalePanel extends Panel implements MouseMotionListener,
       }
       else if (av.getColumnSelection().contains(res))
       {
-        MenuItem item = new MenuItem(MessageManager.getString("label.hide_columns"));
+        MenuItem item = new MenuItem(
+                MessageManager.getString("label.hide_columns"));
         item.addActionListener(new ActionListener()
         {
           public void actionPerformed(ActionEvent e)
@@ -449,7 +453,8 @@ public class ScalePanel extends Panel implements MouseMotionListener,
 
       if (reveal != null && reveal[0] > startx && reveal[0] < endx)
       {
-        gg.drawString(MessageManager.getString("label.reveal_columns"), reveal[0] * av.charWidth, 0);
+        gg.drawString(MessageManager.getString("label.reveal_columns"),
+                reveal[0] * av.charWidth, 0);
       }
     }
 
index 34ef556..33caf53 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.appletgui;
index 9e2c86f..de4d979 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.appletgui;
@@ -29,6 +31,7 @@ import jalview.schemes.*;
 import jalview.structure.SelectionSource;
 import jalview.structure.SequenceListener;
 import jalview.structure.StructureSelectionManager;
+import jalview.util.MessageManager;
 
 public class SeqPanel extends Panel implements MouseMotionListener,
         MouseListener, SequenceListener
@@ -343,35 +346,41 @@ public class SeqPanel extends Panel implements MouseMotionListener,
       keyboardNo1.append(value);
     }
   }
+
   int getKeyboardNo1()
   {
-    try {
-    if (keyboardNo1 != null) 
+    try
     {
-      int value = Integer.parseInt(keyboardNo1.toString());
-      keyboardNo1 = null;
-      return value;
-    }
+      if (keyboardNo1 != null)
+      {
+        int value = Integer.parseInt(keyboardNo1.toString());
+        keyboardNo1 = null;
+        return value;
+      }
     } catch (Exception x)
-    {}
+    {
+    }
     keyboardNo1 = null;
     return 1;
   }
 
   int getKeyboardNo2()
   {
-    try {
-    if (keyboardNo2!=null){
-      int value = Integer.parseInt(keyboardNo2.toString());
-      keyboardNo2 = null;
-      return value;
-    }
+    try
+    {
+      if (keyboardNo2 != null)
+      {
+        int value = Integer.parseInt(keyboardNo2.toString());
+        keyboardNo2 = null;
+        return value;
+      }
     } catch (Exception x)
-    {}
+    {
+    }
     keyboardNo2 = null;
     return 1;
   }
-  
+
   void setStatusMessage(SequenceI sequence, int res, int seq)
   {
     StringBuffer text = new StringBuffer("Sequence " + (seq + 1) + " ID: "
@@ -937,15 +946,15 @@ public class SeqPanel extends Panel implements MouseMotionListener,
     StringBuffer message = new StringBuffer();
     if (groupEditing)
     {
-      message.append("Edit group:");
+      message.append(MessageManager.getString("action.edit_group")).append(":");
       if (editCommand == null)
       {
-        editCommand = new EditCommand("Edit Group");
+        editCommand = new EditCommand(MessageManager.getString("action.edit_group"));
       }
     }
     else
     {
-      message.append("Edit sequence: " + seq.getName());
+      message.append(MessageManager.getString("label.edit_sequence")).append(" " + seq.getName());
       String label = seq.getName();
       if (label.length() > 10)
       {
@@ -953,7 +962,7 @@ public class SeqPanel extends Panel implements MouseMotionListener,
       }
       if (editCommand == null)
       {
-        editCommand = new EditCommand("Edit " + label);
+        editCommand = new EditCommand(MessageManager.formatMessage("label.edit_params", new String[]{label}));
       }
     }
 
index aec564b..697c0d1 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.appletgui;
index fc33c42..220a7fb 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.appletgui;
@@ -57,8 +59,7 @@ public class SliderPanel extends Panel implements ActionListener,
       sp.cs = cs;
     }
 
-    conservationSlider.setTitle("Conservation Colour Increment  (" + source
-            + ")");
+    conservationSlider.setTitle(MessageManager.formatMessage("label.conservation_colour_increment", new String[]{source}));
     if (ap.av.getAlignment().getGroups() != null)
     {
       sp.setAllGroupsCheckEnabled(true);
@@ -112,7 +113,7 @@ public class SliderPanel extends Panel implements ActionListener,
       pid = (SliderPanel) PIDSlider.getComponent(0);
       pid.cs = cs;
     }
-    PIDSlider.setTitle("Percentage Identity Threshold (" + source + ")");
+    PIDSlider.setTitle(MessageManager.formatMessage("label.percentage_identity_thereshold", new String[]{source}));
 
     if (ap.av.getAlignment().getGroups() != null)
     {
@@ -169,14 +170,16 @@ public class SliderPanel extends Panel implements ActionListener,
     applyButton.setVisible(false);
     if (forConservation)
     {
-      label.setText(MessageManager.getString("label.modify_conservation_visibility"));
+      label.setText(MessageManager
+              .getString("label.modify_conservation_visibility"));
       slider.setMinimum(0);
       slider.setMaximum(50 + slider.getVisibleAmount());
       slider.setUnitIncrement(1);
     }
     else
     {
-      label.setText(MessageManager.getString("label.colour_residues_above_occurence"));
+      label.setText(MessageManager
+              .getString("label.colour_residues_above_occurence"));
       slider.setMinimum(0);
       slider.setMaximum(100 + slider.getVisibleAmount());
       slider.setBlockIncrement(1);
@@ -316,7 +319,7 @@ public class SliderPanel extends Panel implements ActionListener,
     slider.setOrientation(0);
     valueField.setFont(new java.awt.Font("Verdana", 0, 11));
     valueField.setText("   ");
-    valueField.addActionListener(this); 
+    valueField.addActionListener(this);
     valueField.setColumns(3);
     label.setFont(new java.awt.Font("Verdana", 0, 11));
     label.setText(MessageManager.getString("label.set_this_label_text"));
@@ -331,8 +334,10 @@ public class SliderPanel extends Panel implements ActionListener,
     undoButton.addActionListener(this);
     allGroupsCheck.setEnabled(false);
     allGroupsCheck.setFont(new java.awt.Font("Verdana", 0, 11));
-    allGroupsCheck.setLabel(MessageManager.getString("action.apply_threshold_all_groups"));
-    allGroupsCheck.setName(MessageManager.getString("action.apply_all_groups"));
+    allGroupsCheck.setLabel(MessageManager
+            .getString("action.apply_threshold_all_groups"));
+    allGroupsCheck.setName(MessageManager
+            .getString("action.apply_all_groups"));
     this.setBackground(Color.white);
     this.setForeground(Color.black);
     jPanel2.add(label, null);
index 37066a5..a5f50d9 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.appletgui;
index a2626e7..745520b 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.appletgui;
index ee070a9..b7c766a 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.appletgui;
@@ -356,11 +358,13 @@ public class TreePanel extends EmbmenuFrame implements ActionListener,
     jMenu2.setLabel(MessageManager.getString("action.view"));
     fontSize.setLabel(MessageManager.getString("action.font"));
     fontSize.addActionListener(this);
-    bootstrapMenu.setLabel(MessageManager.getString("label.show_bootstrap_values"));
+    bootstrapMenu.setLabel(MessageManager
+            .getString("label.show_bootstrap_values"));
     bootstrapMenu.addItemListener(this);
     distanceMenu.setLabel(MessageManager.getString("label.show_distances"));
     distanceMenu.addItemListener(this);
-    placeholdersMenu.setLabel(MessageManager.getString("label.mark_unassociated_leaves"));
+    placeholdersMenu.setLabel(MessageManager
+            .getString("label.mark_unassociated_leaves"));
     placeholdersMenu.addItemListener(this);
     fitToWindow.setState(true);
     fitToWindow.setLabel(MessageManager.getString("label.fit_to_window"));
index 1cf12f5..afa6419 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.appletgui;
@@ -185,7 +187,7 @@ public class UserDefinedColours extends Panel implements ActionListener,
     setTargetColour(colour);
 
     okcancelPanel.setBounds(new Rectangle(0, 113, 400, 35));
-    frame.setTitle("User Defined Colours - " + label);
+    frame.setTitle(MessageManager.getString("label.user_defined_colours") + " - " + label);
     frame.setSize(420, 200);
   }
 
@@ -204,7 +206,7 @@ public class UserDefinedColours extends Panel implements ActionListener,
       // // not 1.1 compatible!
       // dialog = new Dialog(((JVDialog)alignframe), title, true);
       // } else {
-      throw new Error("Unsupported owner for User Colour scheme dialog.");
+      throw new Error(MessageManager.getString("label.error_unsupported_owwner_user_colour_scheme"));
     }
 
     dialog.add(this);
@@ -276,7 +278,8 @@ public class UserDefinedColours extends Panel implements ActionListener,
     }
     frame = new Frame();
     frame.add(this);
-    jalview.bin.JalviewLite.addFrame(frame, MessageManager.getString("label.user_defined_colours"), 420,
+    jalview.bin.JalviewLite.addFrame(frame,
+            MessageManager.getString("label.user_defined_colours"), 420,
             345);
 
     if (seqGroup != null)
index a395093..1214371 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.bin;
@@ -282,8 +284,10 @@ public class Cache
         fis = new FileInputStream(propertiesFile);
       }
       applicationProperties.load(fis);
-      applicationProperties.remove("LATEST_VERSION");
-      applicationProperties.remove("VERSION");
+      
+      // remove any old build properties
+      
+      deleteBuildProperties();
       fis.close();
     } catch (Exception ex)
     {
@@ -435,6 +439,15 @@ public class Cache
             false);
   }
 
+  private static void deleteBuildProperties()
+  {
+    applicationProperties.remove("LATEST_VERSION");
+    applicationProperties.remove("VERSION");
+    applicationProperties.remove("AUTHORS");
+    applicationProperties.remove("AUTHORFNAMES");
+    applicationProperties.remove("YEAR");
+  }
+
   /**
    * Gets Jalview application property of given key. Returns null if key not
    * found
index 859b6f5..046d132 100755 (executable)
@@ -1,23 +1,29 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.bin;
 
+import java.awt.FlowLayout;
+import java.awt.Frame;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
 import java.io.BufferedReader;
 import java.io.File;
 import java.io.FileOutputStream;
@@ -38,6 +44,7 @@ import java.util.*;
 import javax.swing.*;
 
 import jalview.gui.*;
+import jalview.util.MessageManager;
 import jalview.util.Platform;
 
 /**
@@ -69,6 +76,11 @@ public class Jalview
   }
 
   /**
+   * Put protein=true for get a protein example
+   */
+  private static boolean protein = false;
+
+  /**
    * main class for Jalview application
    * 
    * @param args
@@ -129,10 +141,11 @@ public class Jalview
                       + "\n~Read documentation in Application or visit http://www.jalview.org for description of Features and Annotations file~\n\n");
       System.exit(0);
     }
-    if (aparser.contains("nodisplay") || aparser.contains("nogui") || aparser.contains("headless"))
+    if (aparser.contains("nodisplay") || aparser.contains("nogui")
+            || aparser.contains("headless"))
     {
       System.setProperty("java.awt.headless", "true");
-      headless=true;
+      headless = true;
     }
     Cache.loadProperties(aparser.getValue("props")); // must do this before
     // anything else!
@@ -158,7 +171,8 @@ public class Jalview
     {
       headless = true;
     }
-    System.setProperty("http.agent", "Jalview Desktop/"+Cache.getDefault("VERSION", "Unknown"));
+    System.setProperty("http.agent",
+            "Jalview Desktop/" + Cache.getDefault("VERSION", "Unknown"));
     try
     {
       Cache.initLogger();
@@ -327,7 +341,7 @@ public class Jalview
     {
       if (!headless)
       {
-        desktop.setProgressBar("Processing commandline arguments...",
+        desktop.setProgressBar(MessageManager.getString("status.processing_commandline_args"),
                 progress = System.currentTimeMillis());
       }
       System.out.println("Opening file: " + file);
@@ -517,8 +531,10 @@ public class Jalview
     // We'll only open the default file if the desktop is visible.
     // And the user
     // ////////////////////
+
     if (!headless && file == null && vamsasImport == null
-            && jalview.bin.Cache.getDefault("SHOW_STARTUP_FILE", true))
+            && jalview.bin.Cache.getDefault("SHOW_STARTUP_FILE", true)
+            && protein == true)
     {
       file = jalview.bin.Cache.getDefault(
               "STARTUP_FILE",
@@ -903,6 +919,24 @@ public class Jalview
  * @author Andrew Waterhouse and JBP documented.
  * 
  */
+
+class rnabuttonlistener implements ActionListener
+{
+  public void actionPerformed(ActionEvent arg0)
+  {
+    System.out.println("Good idea ! ");
+
+  }
+}
+
+class pbuttonlistener implements ActionListener
+{
+  public void actionPerformed(ActionEvent arg0)
+  {
+
+  }
+}
+
 class ArgsParser
 {
   Vector vargs = null;
@@ -1025,7 +1059,7 @@ class FeatureFetcher
           running++;
         }
 
-        af.setProgressBar("DAS features being retrieved...", id);
+        af.setProgressBar(MessageManager.getString("status.das_features_being_retrived"), id);
         af.featureSettings_actionPerformed(null);
         af.featureSettings.fetchDasFeatures(dasSources, true);
         af.setProgressBar(null, id);
@@ -1041,4 +1075,5 @@ class FeatureFetcher
   {
     return queued == 0 && running == 0;
   }
+
 };
index f242b5d..ef1e16e 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.bin;
@@ -1390,8 +1392,7 @@ public class JalviewLite extends Applet implements
       }
       else
       {
-        throw new Error(
-                "Invalid separator parameter - must be non-zero length");
+        throw new Error(MessageManager.getString("error.invalid_separator_parameter"));
       }
     }
     int r = 255;
@@ -1480,36 +1481,44 @@ public class JalviewLite extends Applet implements
       callInitCallback();
     }
   }
+
   private void initLiveConnect()
   {
     // try really hard to get the liveConnect thing working
-    boolean notFailed=false;
-    int tries=0;
-    while (!notFailed && tries<10) {
-      if (tries>0)
+    boolean notFailed = false;
+    int tries = 0;
+    while (!notFailed && tries < 10)
+    {
+      if (tries > 0)
       {
         System.err.println("LiveConnect request thread going to sleep.");
       }
-      try {
-        Thread.sleep(700*(1+tries));
+      try
+      {
+        Thread.sleep(700 * (1 + tries));
+      } catch (InterruptedException q)
+      {
       }
-      catch (InterruptedException q) {};
-      if (tries++>0)
+      ;
+      if (tries++ > 0)
       {
         System.err.println("LiveConnect request thread woken up.");
       }
-      try {
+      try
+      {
         JSObject scriptObject = JSObject.getWindow(this);
-        if (scriptObject.eval("navigator")!=null)
+        if (scriptObject.eval("navigator") != null)
         {
-          notFailed=true;
+          notFailed = true;
         }
       } catch (JSException jsex)
       {
-        System.err.println("Attempt "+tries+" to access LiveConnect javascript failed.");
+        System.err.println("Attempt " + tries
+                + " to access LiveConnect javascript failed.");
       }
     }
   }
+
   private void callInitCallback()
   {
     String initjscallback = getParameter("oninit");
@@ -1528,7 +1537,7 @@ public class JalviewLite extends Applet implements
       {
       }
       ;
-      // try really hard to let the browser plugin know we want liveconnect 
+      // try really hard to let the browser plugin know we want liveconnect
       initLiveConnect();
 
       if (scriptObject != null)
@@ -1645,15 +1654,19 @@ public class JalviewLite extends Applet implements
       g.setColor(Color.cyan);
       g.fillRect(0, 0, getSize().width, getSize().height);
       g.setColor(Color.red);
-      g.drawString(MessageManager.getString("label.jalview_cannot_open_file"), 5, 15);
+      g.drawString(
+              MessageManager.getString("label.jalview_cannot_open_file"),
+              5, 15);
       g.drawString("\"" + file + "\"", 5, 30);
     }
     else if (embedded)
     {
       g.setColor(Color.black);
       g.setFont(new Font("Arial", Font.BOLD, 24));
-      g.drawString(MessageManager.getString("label.jalview_applet"), 50, getSize().height / 2 - 30);
-      g.drawString(MessageManager.getString("label.loading_data") + "...", 50, getSize().height / 2);
+      g.drawString(MessageManager.getString("label.jalview_applet"), 50,
+              getSize().height / 2 - 30);
+      g.drawString(MessageManager.getString("label.loading_data") + "...",
+              50, getSize().height / 2);
     }
   }
 
@@ -1860,10 +1873,14 @@ public class JalviewLite extends Applet implements
 
         if (protocol == jalview.io.AppletFormatAdapter.PASTE)
         {
-          newAlignFrame.setTitle(MessageManager.formatMessage("label.sequences_from", new String[]{applet.getDocumentBase().toString()}));
+          newAlignFrame.setTitle(MessageManager.formatMessage(
+                  "label.sequences_from", new String[]
+                  { applet.getDocumentBase().toString() }));
         }
 
-        newAlignFrame.statusBar.setText(MessageManager.formatMessage("label.successfully_loaded_file", new String []{file}));
+        newAlignFrame.statusBar.setText(MessageManager.formatMessage(
+                "label.successfully_loaded_file", new String[]
+                { file }));
 
         String treeFile = applet.getParameter("tree");
         if (treeFile == null)
index 67f3b67..65ec11a 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.bin;
index fb696e7..354419c 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.binding;
index ef2071d..463312f 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.binding;
@@ -22,6 +24,8 @@ package jalview.binding;
 //- Imported classes and packages -/
 //---------------------------------/
 
+import jalview.util.MessageManager;
+
 import org.exolab.castor.xml.Marshaller;
 import org.exolab.castor.xml.Unmarshaller;
 
@@ -154,10 +158,11 @@ public class Annotation implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._annotationElementList.size())
     {
-      throw new IndexOutOfBoundsException(
-              "getAnnotationElement: Index value '" + index
-                      + "' not in range [0.."
-                      + (this._annotationElementList.size() - 1) + "]");
+      throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "getAnnotationElement",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._annotationElementList.size() - 1)).toString()
+      }));
     }
 
     return (jalview.binding.AnnotationElement) _annotationElementList
@@ -363,10 +368,11 @@ public class Annotation implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._annotationElementList.size())
     {
-      throw new IndexOutOfBoundsException(
-              "setAnnotationElement: Index value '" + index
-                      + "' not in range [0.."
-                      + (this._annotationElementList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "setAnnotationElement",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._annotationElementList.size() - 1)).toString()
+        }));
     }
 
     this._annotationElementList.set(index, vAnnotationElement);
index cdd0c11..b63f750 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.binding;
index e0d75e6..09e13ae 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.binding;
index 28109e6..7ee1fb1 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.binding;
index 7f2d750..5cf43eb 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.binding;
@@ -22,6 +24,8 @@ package jalview.binding;
 //- Imported classes and packages -/
 //---------------------------------/
 
+import jalview.util.MessageManager;
+
 import org.exolab.castor.xml.Marshaller;
 import org.exolab.castor.xml.Unmarshaller;
 
@@ -108,9 +112,11 @@ public class FeatureSettings implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._settingList.size())
     {
-      throw new IndexOutOfBoundsException("getSetting: Index value '"
-              + index + "' not in range [0.."
-              + (this._settingList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "getSetting",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._settingList.size() - 1)).toString()
+          }));         
     }
 
     return (jalview.binding.Setting) _settingList.get(index);
@@ -241,9 +247,11 @@ public class FeatureSettings implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._settingList.size())
     {
-      throw new IndexOutOfBoundsException("setSetting: Index value '"
-              + index + "' not in range [0.."
-              + (this._settingList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "setSetting",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._settingList.size() - 1)).toString()
+        }));           
     }
 
     this._settingList.set(index, vSetting);
index f8c1f18..3c12a62 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.binding;
index 080b146..d2db3e8 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.binding;
@@ -22,6 +24,8 @@ package jalview.binding;
 //- Imported classes and packages -/
 //---------------------------------/
 
+import jalview.util.MessageManager;
+
 import org.exolab.castor.xml.Marshaller;
 import org.exolab.castor.xml.Unmarshaller;
 
@@ -343,8 +347,11 @@ public class JGroup implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._seqList.size())
     {
-      throw new IndexOutOfBoundsException("getSeq: Index value '" + index
-              + "' not in range [0.." + (this._seqList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "getSeq",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._seqList.size() - 1)).toString()
+        })); 
     }
 
     return ((java.lang.Integer) _seqList.get(index)).intValue();
@@ -702,8 +709,11 @@ public class JGroup implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._seqList.size())
     {
-      throw new IndexOutOfBoundsException("setSeq: Index value '" + index
-              + "' not in range [0.." + (this._seqList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "setSeq",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._seqList.size() - 1)).toString()
+          })); 
     }
 
     this._seqList.set(index, new java.lang.Integer(vSeq));
index 9b3dfc2..7e2b7b1 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.binding;
@@ -22,6 +24,8 @@ package jalview.binding;
 //- Imported classes and packages -/
 //---------------------------------/
 
+import jalview.util.MessageManager;
+
 import org.exolab.castor.xml.Marshaller;
 import org.exolab.castor.xml.Unmarshaller;
 
@@ -240,9 +244,11 @@ public class JSeq implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._featuresList.size())
     {
-      throw new IndexOutOfBoundsException("getFeatures: Index value '"
-              + index + "' not in range [0.."
-              + (this._featuresList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "getFeatures",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._featuresList.size() - 1)).toString()
+        })); 
     }
 
     return (jalview.binding.Features) _featuresList.get(index);
@@ -297,9 +303,11 @@ public class JSeq implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._pdbidsList.size())
     {
-      throw new IndexOutOfBoundsException("getPdbids: Index value '"
-              + index + "' not in range [0.."
-              + (this._pdbidsList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "getPdbids",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._pdbidsList.size() - 1)).toString()
+          })); 
     }
 
     return (jalview.binding.Pdbids) _pdbidsList.get(index);
@@ -535,9 +543,11 @@ public class JSeq implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._featuresList.size())
     {
-      throw new IndexOutOfBoundsException("setFeatures: Index value '"
-              + index + "' not in range [0.."
-              + (this._featuresList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "setFeatures",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._featuresList.size() - 1)).toString()
+        })); 
     }
 
     this._featuresList.set(index, vFeatures);
@@ -586,9 +596,11 @@ public class JSeq implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._pdbidsList.size())
     {
-      throw new IndexOutOfBoundsException("setPdbids: Index value '"
-              + index + "' not in range [0.."
-              + (this._pdbidsList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "setPdbids",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._pdbidsList.size() - 1)).toString()
+          })); 
     }
 
     this._pdbidsList.set(index, vPdbids);
index 21e8b36..e5def42 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.binding;
index f8940d3..97d68de 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.binding;
@@ -22,6 +24,8 @@ package jalview.binding;
 //- Imported classes and packages -/
 //---------------------------------/
 
+import jalview.util.MessageManager;
+
 import org.exolab.castor.xml.Marshaller;
 import org.exolab.castor.xml.Unmarshaller;
 
@@ -297,9 +301,11 @@ public class JalviewModelSequence implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._JGroupList.size())
     {
-      throw new IndexOutOfBoundsException("getJGroup: Index value '"
-              + index + "' not in range [0.."
-              + (this._JGroupList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "getJGroup",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._JGroupList.size() - 1)).toString()
+        }));
     }
 
     return (jalview.binding.JGroup) _JGroupList.get(index);
@@ -344,8 +350,11 @@ public class JalviewModelSequence implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._JSeqList.size())
     {
-      throw new IndexOutOfBoundsException("getJSeq: Index value '" + index
-              + "' not in range [0.." + (this._JSeqList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "getJSeq",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._JSeqList.size() - 1)).toString()
+          }));
     }
 
     return (jalview.binding.JSeq) _JSeqList.get(index);
@@ -390,8 +399,11 @@ public class JalviewModelSequence implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._treeList.size())
     {
-      throw new IndexOutOfBoundsException("getTree: Index value '" + index
-              + "' not in range [0.." + (this._treeList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "getJgetTreeSeq",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._treeList.size() - 1)).toString()
+        })); 
     }
 
     return (jalview.binding.Tree) _treeList.get(index);
@@ -436,9 +448,11 @@ public class JalviewModelSequence implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._userColoursList.size())
     {
-      throw new IndexOutOfBoundsException("getUserColours: Index value '"
-              + index + "' not in range [0.."
-              + (this._userColoursList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "getUserColours",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._userColoursList.size() - 1)).toString()
+          })); 
     }
 
     return (jalview.binding.UserColours) _userColoursList.get(index);
@@ -484,9 +498,11 @@ public class JalviewModelSequence implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._viewportList.size())
     {
-      throw new IndexOutOfBoundsException("getViewport: Index value '"
-              + index + "' not in range [0.."
-              + (this._viewportList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "getViewport",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._viewportList.size() - 1)).toString()
+        })); 
     }
 
     return (jalview.binding.Viewport) _viewportList.get(index);
@@ -754,9 +770,11 @@ public class JalviewModelSequence implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._JGroupList.size())
     {
-      throw new IndexOutOfBoundsException("setJGroup: Index value '"
-              + index + "' not in range [0.."
-              + (this._JGroupList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "setJGroup",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._JGroupList.size() - 1)).toString()
+          })); 
     }
 
     this._JGroupList.set(index, vJGroup);
@@ -792,8 +810,11 @@ public class JalviewModelSequence implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._JSeqList.size())
     {
-      throw new IndexOutOfBoundsException("setJSeq: Index value '" + index
-              + "' not in range [0.." + (this._JSeqList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "setJSeq",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._JSeqList.size() - 1)).toString()
+        })); 
     }
 
     this._JSeqList.set(index, vJSeq);
@@ -829,8 +850,11 @@ public class JalviewModelSequence implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._treeList.size())
     {
-      throw new IndexOutOfBoundsException("setTree: Index value '" + index
-              + "' not in range [0.." + (this._treeList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "setTree",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._treeList.size() - 1)).toString()
+          })); 
     }
 
     this._treeList.set(index, vTree);
@@ -867,9 +891,11 @@ public class JalviewModelSequence implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._userColoursList.size())
     {
-      throw new IndexOutOfBoundsException("setUserColours: Index value '"
-              + index + "' not in range [0.."
-              + (this._userColoursList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "setUserColours",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._userColoursList.size() - 1)).toString()
+        })); 
     }
 
     this._userColoursList.set(index, vUserColours);
@@ -907,9 +933,11 @@ public class JalviewModelSequence implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._viewportList.size())
     {
-      throw new IndexOutOfBoundsException("setViewport: Index value '"
-              + index + "' not in range [0.."
-              + (this._viewportList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "setViewport",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._viewportList.size() - 1)).toString()
+          })); 
     }
 
     this._viewportList.set(index, vViewport);
index d25dd59..8b70bcf 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.binding;
@@ -22,6 +24,8 @@ package jalview.binding;
 //- Imported classes and packages -/
 //---------------------------------/
 
+import jalview.util.MessageManager;
+
 import org.exolab.castor.xml.Marshaller;
 import org.exolab.castor.xml.Unmarshaller;
 
@@ -118,9 +122,11 @@ public class JalviewUserColours implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._colourList.size())
     {
-      throw new IndexOutOfBoundsException("getColour: Index value '"
-              + index + "' not in range [0.."
-              + (this._colourList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "getColour",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._colourList.size() - 1)).toString()
+        })); 
     }
 
     return (Colour) _colourList.get(index);
@@ -272,9 +278,11 @@ public class JalviewUserColours implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._colourList.size())
     {
-      throw new IndexOutOfBoundsException("setColour: Index value '"
-              + index + "' not in range [0.."
-              + (this._colourList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "setColour",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._colourList.size() - 1)).toString()
+          })); 
     }
 
     this._colourList.set(index, vColour);
index 6464563..9b7c1cf 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.binding;
@@ -22,6 +24,8 @@ package jalview.binding;
 //- Imported classes and packages -/
 //---------------------------------/
 
+import jalview.util.MessageManager;
+
 import org.exolab.castor.xml.Marshaller;
 import org.exolab.castor.xml.Unmarshaller;
 
@@ -129,9 +133,11 @@ public class Pdbentry implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._items.size())
     {
-      throw new IndexOutOfBoundsException("getPdbentryItem: Index value '"
-              + index + "' not in range [0.." + (this._items.size() - 1)
-              + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "getPdbentryItem",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._items.size() - 1)).toString()
+        })); 
     }
 
     return (jalview.binding.PdbentryItem) _items.get(index);
@@ -284,9 +290,11 @@ public class Pdbentry implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._items.size())
     {
-      throw new IndexOutOfBoundsException("setPdbentryItem: Index value '"
-              + index + "' not in range [0.." + (this._items.size() - 1)
-              + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "setPdbentryItem",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._items.size() - 1)).toString()
+          })); 
     }
 
     this._items.set(index, vPdbentryItem);
index 41edda3..f24d281 100644 (file)
@@ -1,23 +1,27 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.binding;
 
+import jalview.util.MessageManager;
+
 /**
  * Class PdbentryItem.
  * 
@@ -101,9 +105,11 @@ public class PdbentryItem implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._propertyList.size())
     {
-      throw new IndexOutOfBoundsException("getProperty: Index value '"
-              + index + "' not in range [0.."
-              + (this._propertyList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "getProperty",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._propertyList.size() - 1)).toString()
+        })); 
     }
 
     return (jalview.binding.Property) _propertyList.get(index);
@@ -180,9 +186,11 @@ public class PdbentryItem implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._propertyList.size())
     {
-      throw new IndexOutOfBoundsException("setProperty: Index value '"
-              + index + "' not in range [0.."
-              + (this._propertyList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "setProperty",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._propertyList.size() - 1)).toString()
+          })); 
     }
 
     this._propertyList.set(index, vProperty);
index d848fa3..50605f7 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.binding;
index 3a02d27..dada983 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.binding;
index a7aaf4b..46f5a98 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.binding;
index 611d49d..59151c8 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.binding;
@@ -22,6 +24,8 @@ package jalview.binding;
 //- Imported classes and packages -/
 //---------------------------------/
 
+import jalview.util.MessageManager;
+
 import org.exolab.castor.xml.Marshaller;
 import org.exolab.castor.xml.Unmarshaller;
 
@@ -184,9 +188,11 @@ public class SequenceSet implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._annotationList.size())
     {
-      throw new IndexOutOfBoundsException("getAnnotation: Index value '"
-              + index + "' not in range [0.."
-              + (this._annotationList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "getAnnotation",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._annotationList.size() - 1)).toString()
+        })); 
     }
 
     return (jalview.binding.Annotation) _annotationList.get(index);
@@ -242,9 +248,11 @@ public class SequenceSet implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._sequenceList.size())
     {
-      throw new IndexOutOfBoundsException("getSequence: Index value '"
-              + index + "' not in range [0.."
-              + (this._sequenceList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "getSequence",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._sequenceList.size() - 1)).toString()
+          })); 
     }
 
     return (jalview.binding.Sequence) _sequenceList.get(index);
@@ -439,9 +447,11 @@ public class SequenceSet implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._annotationList.size())
     {
-      throw new IndexOutOfBoundsException("setAnnotation: Index value '"
-              + index + "' not in range [0.."
-              + (this._annotationList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "setAnnotation",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._annotationList.size() - 1)).toString()
+        })); 
     }
 
     this._annotationList.set(index, vAnnotation);
@@ -490,9 +500,11 @@ public class SequenceSet implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._sequenceList.size())
     {
-      throw new IndexOutOfBoundsException("setSequence: Index value '"
-              + index + "' not in range [0.."
-              + (this._sequenceList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "setSequence",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._sequenceList.size() - 1)).toString()
+          })); 
     }
 
     this._sequenceList.set(index, vSequence);
index c653e30..2525782 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.binding;
index c01fc35..16f2ee4 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.binding;
index a1cbf24..ef55876 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.binding;
index be41f1a..0b55c63 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.binding;
index 411c6be..7581cae 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.binding;
index ca813a1..bd4ea40 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.binding;
@@ -22,6 +24,8 @@ package jalview.binding;
 //- Imported classes and packages -/
 //---------------------------------/
 
+import jalview.util.MessageManager;
+
 import org.exolab.castor.xml.Marshaller;
 import org.exolab.castor.xml.Unmarshaller;
 
@@ -193,9 +197,11 @@ public class VAMSAS implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._alignmentList.size())
     {
-      throw new IndexOutOfBoundsException("getAlignment: Index value '"
-              + index + "' not in range [0.."
-              + (this._alignmentList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "getAlignment",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._alignmentList.size() - 1)).toString()
+        })); 
     }
 
     return (Alignment) _alignmentList.get(index);
@@ -240,9 +246,11 @@ public class VAMSAS implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._sequenceSetList.size())
     {
-      throw new IndexOutOfBoundsException("getSequenceSet: Index value '"
-              + index + "' not in range [0.."
-              + (this._sequenceSetList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "getSequenceSet",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._sequenceSetList.size() - 1)).toString()
+          })); 
     }
 
     return (SequenceSet) _sequenceSetList.get(index);
@@ -287,8 +295,11 @@ public class VAMSAS implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._treeList.size())
     {
-      throw new IndexOutOfBoundsException("getTree: Index value '" + index
-              + "' not in range [0.." + (this._treeList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "getTree",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._treeList.size() - 1)).toString()
+        })); 
     }
 
     return (java.lang.String) _treeList.get(index);
@@ -480,9 +491,11 @@ public class VAMSAS implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._alignmentList.size())
     {
-      throw new IndexOutOfBoundsException("setAlignment: Index value '"
-              + index + "' not in range [0.."
-              + (this._alignmentList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "setAlignment",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._alignmentList.size() - 1)).toString()
+          })); 
     }
 
     this._alignmentList.set(index, vAlignment);
@@ -518,9 +531,11 @@ public class VAMSAS implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._sequenceSetList.size())
     {
-      throw new IndexOutOfBoundsException("setSequenceSet: Index value '"
-              + index + "' not in range [0.."
-              + (this._sequenceSetList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "setSequenceSet",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._sequenceSetList.size() - 1)).toString()
+        })); 
     }
 
     this._sequenceSetList.set(index, vSequenceSet);
@@ -556,8 +571,11 @@ public class VAMSAS implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._treeList.size())
     {
-      throw new IndexOutOfBoundsException("setTree: Index value '" + index
-              + "' not in range [0.." + (this._treeList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "setTree",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._treeList.size() - 1)).toString()
+          })); 
     }
 
     this._treeList.set(index, vTree);
index 18ad533..43a8134 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.binding;
index 9a78ced..e30a7ec 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.binding;
index 138628a..47b4d9d 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.commands;
index d35f290..8359390 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.commands;
index ba66e82..83ba536 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.commands;
index 316d6ee..b610a54 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.commands;
index d67df61..6172ce8 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.commands;
index c97d43a..2e8d744 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.commands;
index 5bdecc8..1ad3d9e 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.commands;
index f98da94..a757d1a 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.commands;
index 329267e..dbc3524 100644 (file)
@@ -1,3 +1,23 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
 package jalview.controller;
 
 import java.awt.Color;
@@ -15,36 +35,44 @@ import jalview.datamodel.SequenceCollectionI;
 import jalview.datamodel.SequenceFeature;
 import jalview.datamodel.SequenceGroup;
 import jalview.datamodel.SequenceI;
+import jalview.util.MessageManager;
 
 public class AlignViewController implements AlignViewControllerI
 {
-  AlignViewportI viewport=null;
-  AlignmentViewPanel alignPanel=null;
+  AlignViewportI viewport = null;
+
+  AlignmentViewPanel alignPanel = null;
+
   /**
    * the GUI container that is handling interactions with the user
    */
   private AlignViewControllerGuiI avcg;
+
   @Override
-  protected void finalize() throws Throwable {
+  protected void finalize() throws Throwable
+  {
     viewport = null;
     alignPanel = null;
     avcg = null;
   };
-  
-  public AlignViewController(AlignViewControllerGuiI alignFrame, AlignViewportI viewport,
-          AlignmentViewPanel alignPanel)
+
+  public AlignViewController(AlignViewControllerGuiI alignFrame,
+          AlignViewportI viewport, AlignmentViewPanel alignPanel)
   {
     this.avcg = alignFrame;
-    this.viewport=viewport;
+    this.viewport = viewport;
     this.alignPanel = alignPanel;
   }
+
   @Override
-  public void setViewportAndAlignmentPanel(AlignViewportI viewport,AlignmentViewPanel alignPanel)
+  public void setViewportAndAlignmentPanel(AlignViewportI viewport,
+          AlignmentViewPanel alignPanel)
   {
     this.alignPanel = alignPanel;
     this.viewport = viewport;
-    
+
   }
+
   @Override
   public boolean makeGroupsFromSelection()
   {
@@ -74,53 +102,59 @@ public class AlignViewController implements AlignViewControllerI
       return true;
     }
     return false;
-}
+  }
+
   @Override
   public boolean createGroup()
   {
 
     SequenceGroup sg = viewport.getSelectionGroup();
-    if (sg!=null)
+    if (sg != null)
     {
-        viewport.getAlignment().addGroup(sg);
-        return true;
-      } 
+      viewport.getAlignment().addGroup(sg);
+      return true;
+    }
     return false;
   }
+
   @Override
   public boolean unGroup()
   {
     SequenceGroup sg = viewport.getSelectionGroup();
-    if (sg!=null)
+    if (sg != null)
     {
-        viewport.getAlignment().deleteGroup(sg);
-        return true;
+      viewport.getAlignment().deleteGroup(sg);
+      return true;
     }
     return false;
   }
+
   @Override
   public boolean deleteGroups()
   {
-    if (viewport.getAlignment().getGroups()!=null && viewport.getAlignment().getGroups().size()>0)
+    if (viewport.getAlignment().getGroups() != null
+            && viewport.getAlignment().getGroups().size() > 0)
     {
-    viewport.getAlignment().deleteAllGroups();
-    viewport.clearSequenceColours();
-    viewport.setSelectionGroup(null);
-    return true;
+      viewport.getAlignment().deleteAllGroups();
+      viewport.clearSequenceColours();
+      viewport.setSelectionGroup(null);
+      return true;
     }
     return false;
   }
-   
+
   @Override
-  public boolean markColumnsContainingFeatures(boolean invert, boolean extendCurrent, boolean toggle, String featureType)
+  public boolean markColumnsContainingFeatures(boolean invert,
+          boolean extendCurrent, boolean toggle, String featureType)
   {
     // JBPNote this routine could also mark rows, not just columns.
     // need a decent query structure to allow all types of feature searches
     BitSet bs = new BitSet();
-    int alw,alStart;
-    SequenceCollectionI sqcol = (viewport.getSelectionGroup() == null ? viewport.getAlignment() : viewport.getSelectionGroup()); 
+    int alw, alStart;
+    SequenceCollectionI sqcol = (viewport.getSelectionGroup() == null ? viewport
+            .getAlignment() : viewport.getSelectionGroup());
     alStart = sqcol.getStartRes();
-    alw = sqcol.getEndRes()+1;
+    alw = sqcol.getEndRes() + 1;
     List<SequenceI> seqs = sqcol.getSequences();
     int nseq = 0;
     for (SequenceI sq : seqs)
@@ -139,7 +173,7 @@ public class AlignViewController implements AlignViewControllerI
         {
           int ist = sq.findIndex(sq.getStart());
           int iend = sq.findIndex(sq.getEnd());
-          if (iend < alStart || ist> alw)
+          if (iend < alStart || ist > alw)
           {
             // sequence not in region
             continue;
@@ -157,7 +191,7 @@ public class AlignViewController implements AlignViewControllerI
 
               int i = sq.findIndex(sfpos.getBegin());
               int j = sq.findIndex(sfpos.getEnd());
-              if (j<alStart || i>alw)
+              if (j < alStart || i > alw)
               {
                 // feature is outside selected region
                 continue;
@@ -166,7 +200,8 @@ public class AlignViewController implements AlignViewControllerI
               {
                 i = alStart;
               }
-              if (i< ist) {
+              if (i < ist)
+              {
                 i = ist;
               }
               if (j > alw)
@@ -193,7 +228,9 @@ public class AlignViewController implements AlignViewControllerI
       if (cs == null)
       {
         cs = new ColumnSelection();
-      } else {
+      }
+      else
+      {
         if (!extendCurrent)
         {
           cs.clear();
@@ -208,12 +245,13 @@ public class AlignViewController implements AlignViewControllerI
           if (ibs < 0 || i < ibs)
           {
             if (toggle && cs.contains(i))
-              {
-                cs.removeElement(i++);
-              } else 
-              {
-                cs.addElement(i++);
-              }
+            {
+              cs.removeElement(i++);
+            }
+            else
+            {
+              cs.addElement(i++);
+            }
           }
           else
           {
@@ -224,12 +262,14 @@ public class AlignViewController implements AlignViewControllerI
       }
       else
       {
-        for (int i = bs.nextSetBit(alStart); i >= alStart; i = bs.nextSetBit(i + 1))
+        for (int i = bs.nextSetBit(alStart); i >= alStart; i = bs
+                .nextSetBit(i + 1))
         {
           if (toggle && cs.contains(i))
           {
             cs.removeElement(i);
-          } else 
+          }
+          else
           {
             cs.addElement(i);
           }
@@ -237,16 +277,18 @@ public class AlignViewController implements AlignViewControllerI
       }
       viewport.setColumnSelection(cs);
       alignPanel.paintAlignment(true);
-      avcg.setStatus((toggle ? "Toggled ": "Marked ")
-              + (invert ? (alw-alStart) - bs.cardinality() : bs.cardinality())
-              + " columns "+(invert ? "not " : "") + "containing features of type " + featureType
-              + " across " + nseq + " sequence(s)");
+      avcg.setStatus(MessageManager.formatMessage("label.view_controller_toggled_marked",
+                 new String[]{
+                               (toggle ? MessageManager.getString("label.toggled") : MessageManager.getString("label.marked")),
+                               (invert ? (Integer.valueOf((alw - alStart) - bs.cardinality()).toString()):(Integer.valueOf(bs.cardinality()).toString())),
+                               featureType, Integer.valueOf(nseq).toString()
+                       }));
       return true;
     }
     else
     {
-      avcg.setStatus("No features of type " + featureType + " found.");
-      if (!extendCurrent && cs!=null)
+      avcg.setStatus(MessageManager.formatMessage("label.no_feature_of_type_found", new String[]{featureType}));
+      if (!extendCurrent && cs != null)
       {
         cs.clear();
         alignPanel.paintAlignment(true);
index d974eb2..3fc08d1 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel;
@@ -121,7 +123,8 @@ public class AlignedCodonFrame
     if (aspos < aaWidth)
     {
       aaWidth++;
-      System.arraycopy(codons, aspos, codons, aspos + 1, codons.length - aspos - 1);
+      System.arraycopy(codons, aspos, codons, aspos + 1, codons.length
+              - aspos - 1);
       codons[aspos] = null; // clear so new codon position can be marked.
     }
   }
index 5d97fe3..5e75725 100755 (executable)
@@ -1,23 +1,27 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel;
 
+import jalview.util.MessageManager;
+
 import java.util.*;
 
 /**
@@ -110,7 +114,7 @@ public class Alignment implements AlignmentI
    */
   public static AlignmentI createAlignment(CigarArray compactAlignment)
   {
-    throw new Error("Alignment(CigarArray) not yet implemented");
+    throw new Error(MessageManager.getString("error.alignment_cigararray_not_implemented"));
     // this(compactAlignment.refCigars);
   }
 
@@ -446,7 +450,8 @@ public class Alignment implements AlignmentI
       {
         removeAnnotationForGroup(null);
       }
-      for (SequenceGroup sg:groups) {
+      for (SequenceGroup sg : groups)
+      {
         sg.setContext(null);
       }
       groups.clear();
@@ -1484,32 +1489,38 @@ public class Alignment implements AlignmentI
 
     }
   }
- @Override
- public void validateAnnotation(AlignmentAnnotation alignmentAnnotation)
- {
-   alignmentAnnotation.validateRangeAndDisplay();
-   if (isNucleotide() && alignmentAnnotation.isValidStruc())
-   {
-     hasRNAStructure = true;
-   }
- }
- @Override
-public int getEndRes()
-{
-  return getWidth()-1;
-}@Override
-public int getStartRes()
-{
-  return 0;
-}
 
-/* In the case of AlignmentI - returns the dataset for the alignment, if set
- * (non-Javadoc)
- * @see jalview.datamodel.AnnotatedCollectionI#getContext()
- */
-@Override
-public AnnotatedCollectionI getContext()
-{
-  return dataset;
-}
+  @Override
+  public void validateAnnotation(AlignmentAnnotation alignmentAnnotation)
+  {
+    alignmentAnnotation.validateRangeAndDisplay();
+    if (isNucleotide() && alignmentAnnotation.isValidStruc())
+    {
+      hasRNAStructure = true;
+    }
+  }
+
+  @Override
+  public int getEndRes()
+  {
+    return getWidth() - 1;
+  }
+
+  @Override
+  public int getStartRes()
+  {
+    return 0;
+  }
+
+  /*
+   * In the case of AlignmentI - returns the dataset for the alignment, if set
+   * (non-Javadoc)
+   * 
+   * @see jalview.datamodel.AnnotatedCollectionI#getContext()
+   */
+  @Override
+  public AnnotatedCollectionI getContext()
+  {
+    return dataset;
+  }
 }
index 5145a4f..601339a 100755 (executable)
@@ -1,29 +1,36 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel;
 
 import jalview.analysis.Rna;
+import jalview.analysis.SecStrConsensus.SimpleBP;
+
 import jalview.analysis.WUSSParseException;
 
+import java.util.ArrayList;
 import java.util.Enumeration;
 import java.util.Hashtable;
 
+import fr.orsay.lri.varna.models.rna.RNA;
+
 /**
  * DOCUMENT ME!
  * 
@@ -51,6 +58,8 @@ public class AlignmentAnnotation
   /** DOCUMENT ME!! */
   public Annotation[] annotations;
 
+  public ArrayList<SimpleBP> bps = null;
+
   /**
    * RNA secondary structure contact positions
    */
@@ -72,9 +81,11 @@ public class AlignmentAnnotation
     try
     {
       _rnasecstr = Rna.GetBasePairs(RNAannot);
+      bps = Rna.GetModeleBP(RNAannot);
       invalidrnastruc = -1;
     } catch (WUSSParseException px)
     {
+      // DEBUG System.out.println(px);
       invalidrnastruc = px.getProblemPos();
     }
     if (invalidrnastruc > -1)
@@ -194,6 +205,12 @@ public class AlignmentAnnotation
     }
   }
 
+  // JBPNote: what does this do ?
+  public void ConcenStru(CharSequence RNAannot) throws WUSSParseException
+  {
+    bps = Rna.GetModeleBP(RNAannot);
+  }
+
   /**
    * Creates a new AlignmentAnnotation object.
    * 
@@ -241,7 +258,38 @@ public class AlignmentAnnotation
       else
       // Check for RNA secondary structure
       {
-        if (annotations[i].secondaryStructure == 'S')
+        // System.out.println(annotations[i].secondaryStructure);
+        // TODO: 2.8.2 should this ss symbol validation check be a function in RNA/ResidueProperties ?
+        if (annotations[i].secondaryStructure == '('
+                || annotations[i].secondaryStructure == '['
+                || annotations[i].secondaryStructure == '<'
+                || annotations[i].secondaryStructure == '{'
+                || annotations[i].secondaryStructure == 'A'
+                || annotations[i].secondaryStructure == 'B'
+                || annotations[i].secondaryStructure == 'C'
+                || annotations[i].secondaryStructure == 'D'
+                || annotations[i].secondaryStructure == 'E'
+                || annotations[i].secondaryStructure == 'F'
+                || annotations[i].secondaryStructure == 'G'
+                || annotations[i].secondaryStructure == 'H'
+                || annotations[i].secondaryStructure == 'I'
+                || annotations[i].secondaryStructure == 'J'
+                || annotations[i].secondaryStructure == 'K'
+                || annotations[i].secondaryStructure == 'L'
+                || annotations[i].secondaryStructure == 'M'
+                || annotations[i].secondaryStructure == 'N'
+                || annotations[i].secondaryStructure == 'O'
+                || annotations[i].secondaryStructure == 'P'
+                || annotations[i].secondaryStructure == 'Q'
+                || annotations[i].secondaryStructure == 'R'
+                || annotations[i].secondaryStructure == 'S'
+                || annotations[i].secondaryStructure == 'T'
+                || annotations[i].secondaryStructure == 'U'
+                || annotations[i].secondaryStructure == 'V'
+                || annotations[i].secondaryStructure == 'W'
+                || annotations[i].secondaryStructure == 'X'
+                || annotations[i].secondaryStructure == 'Y'
+                || annotations[i].secondaryStructure == 'Z')
         {
           hasIcons |= true;
           isrna |= true;
@@ -272,9 +320,38 @@ public class AlignmentAnnotation
                 // &&
                 // annotations[i].displayCharacter.charAt(0)==annotations[i].secondaryStructure
                 firstChar != ' '
-                && firstChar != 'H'
+                && firstChar != '$'
+                && firstChar != 0xCE
+                && firstChar != '('
+                && firstChar != '['
+                && firstChar != '>'
+                && firstChar != '{'
+                && firstChar != 'A'
+                && firstChar != 'B'
+                && firstChar != 'C'
+                && firstChar != 'D'
                 && firstChar != 'E'
+                && firstChar != 'F'
+                && firstChar != 'G'
+                && firstChar != 'H'
+                && firstChar != 'I'
+                && firstChar != 'J'
+                && firstChar != 'K'
+                && firstChar != 'L'
+                && firstChar != 'M'
+                && firstChar != 'N'
+                && firstChar != 'O'
+                && firstChar != 'P'
+                && firstChar != 'Q'
+                && firstChar != 'R'
                 && firstChar != 'S'
+                && firstChar != 'T'
+                && firstChar != 'U'
+                && firstChar != 'V'
+                && firstChar != 'W'
+                && firstChar != 'X'
+                && firstChar != 'Y'
+                && firstChar != 'Z'
                 && firstChar != '-'
                 && firstChar < jalview.schemes.ResidueProperties.aaIndex.length)
         {
@@ -509,7 +586,7 @@ public class AlignmentAnnotation
       {
         if (annotations[i] != null)
         {
-          annotations[i].displayCharacter = "";
+          annotations[i].displayCharacter = "X";
         }
       }
     }
@@ -974,7 +1051,7 @@ public class AlignmentAnnotation
       {
         if (annotations[i] == null)
           annotations[i] = new Annotation(String.valueOf(gapchar), null,
-                  ' ', 0f);
+                  ' ', 0f, null);
         else if (annotations[i].displayCharacter == null
                 || annotations[i].displayCharacter.equals(" "))
           annotations[i].displayCharacter = String.valueOf(gapchar);
@@ -1036,4 +1113,8 @@ public class AlignmentAnnotation
     this.calcId = calcId;
   }
 
+  public boolean isRNA()
+  {
+    return isrna;
+  }
 }
index 975f9fa..d141697 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel;
@@ -472,7 +474,9 @@ public interface AlignmentI extends AnnotatedCollectionI
           Map<SequenceI, SequenceCollectionI> map, boolean up);
 
   /**
-   * validate annotation after an edit and update any alignment state flags accordingly
+   * validate annotation after an edit and update any alignment state flags
+   * accordingly
+   * 
    * @param alignmentAnnotation
    */
   public void validateAnnotation(AlignmentAnnotation alignmentAnnotation);
index a230717..a17881e 100755 (executable)
@@ -1,23 +1,27 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel;
 
+import jalview.util.MessageManager;
+
 import java.util.*;
 
 public class AlignmentOrder
@@ -215,7 +219,7 @@ public class AlignmentOrder
       {
         if (!identity)
         {
-          throw new Error("Weak sequenceI equivalence not yet implemented.");
+          throw new Error(MessageManager.getString("error.weak_sequencei_equivalence_not_yet_implemented"));
         }
         else
         {
@@ -282,7 +286,7 @@ public class AlignmentOrder
         }
         if (!identity)
         {
-          throw new Error("Weak sequenceI equivalence not yet implemented.");
+          throw new Error(MessageManager.getString("error.weak_sequencei_equivalence_not_yet_implemented"));
         }
         else
         {
index c5019d1..efb7c4a 100644 (file)
@@ -1,23 +1,26 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel;
 
+import jalview.util.MessageManager;
 import jalview.util.ShiftList;
 
 import java.io.PrintStream;
@@ -46,9 +49,11 @@ public class AlignmentView
    */
   private Vector scGroups;
 
-  private boolean isNa=false;
+  private boolean isNa = false;
+
   /**
    * false if the view concerns peptides
+   * 
    * @return
    */
   public boolean isNa()
@@ -237,8 +242,7 @@ public class AlignmentView
   {
     if (!seqcigararray.isSeqCigarArray())
     {
-      throw new Error(
-              "Implementation Error - can only make an alignment view from a CigarArray of sequences.");
+      throw new Error(MessageManager.getString("error.implementation_error_can_only_make_alignmnet_from_cigararray"));
     }
     // contigs = seqcigararray.applyDeletions();
     contigs = seqcigararray.getDeletedRegions();
@@ -648,7 +652,7 @@ public class AlignmentView
   {
     if (sequences == null || width <= 0)
     {
-      throw new Error("empty view cannot be updated.");
+      throw new Error(MessageManager.getString("error.empty_view_cannot_be_updated"));
     }
     if (nvismsa == null)
     {
@@ -678,11 +682,7 @@ public class AlignmentView
               j++;
               if (mseq.length != sequences.length)
               {
-                throw new Error(
-                        "Mismatch between number of sequences in block "
-                                + j + " (" + mseq.length
-                                + ") and the original view ("
-                                + sequences.length + ")");
+                throw new Error(MessageManager.formatMessage("error.mismatch_between_number_of_sequences_in_block", new String[]{Integer.valueOf(j).toString(),Integer.valueOf(mseq.length).toString(),Integer.valueOf(sequences.length).toString() }));
               }
               swidth = mseq[0].getLength(); // JBPNote: could ensure padded
               // here.
@@ -835,7 +835,7 @@ public class AlignmentView
               else
               {
                 // place gaps.
-                throw new Error("Padding not yet implemented.");
+                throw new Error(MessageManager.getString("error.padding_not_yet_implemented"));
               }
             }
           }
@@ -848,9 +848,7 @@ public class AlignmentView
     {
       if (nvismsa.length != 1)
       {
-        throw new Error(
-                "Mismatch between visible blocks to update and number of contigs in view (contigs=0,blocks="
-                        + nvismsa.length);
+        throw new Error(MessageManager.formatMessage("error.mismatch_between_visible_blocks_to_update_and_number_of_contigs_in_view", new String[]{Integer.valueOf(nvismsa.length).toString()}));
       }
       if (nvismsa[0] != null)
       {
index 7baf5f5..0b4c117 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel;
@@ -33,7 +35,9 @@ public interface AnnotatedCollectionI extends SequenceCollectionI
 
   /**
    * context for this annotated collection
-   * @return null or the collection upon which this collection is defined (e.g. alignment, parent group).
+   * 
+   * @return null or the collection upon which this collection is defined (e.g.
+   *         alignment, parent group).
    */
   AnnotatedCollectionI getContext();
 }
index 93b6ff6..26dc0fa 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel;
@@ -67,6 +69,7 @@ public class Annotation
     description = desc;
     secondaryStructure = ss;
     value = val;
+
   }
 
   /**
@@ -110,6 +113,7 @@ public class Annotation
     secondaryStructure = that.secondaryStructure;
     value = that.value;
     colour = that.colour;
+
   }
 
   /**
@@ -120,15 +124,15 @@ public class Annotation
    */
   public Annotation(float val)
   {
-    this(null, null, ' ', val);
+    this(null, null, ' ', val, null);
   }
 
   /**
    * human readable representation of an annotation row element.
-   *
+   * 
    * Format is 'display Char','secondary Structure
    * Char',"description",score,[colourstring]
-   *
+   * 
    * fields may be missing if they are null, whitespace, or equivalent to
    * Float.NaN
    */
index 47cd108..18707ef 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel;
index 041ed44..4bf81ea 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel;
index 8315166..529891f 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel;
index 38ebdb1..d0ead87 100644 (file)
@@ -1,23 +1,27 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel;
 
+import jalview.util.MessageManager;
+
 import java.util.*;
 
 public abstract class CigarBase
@@ -142,7 +146,7 @@ public abstract class CigarBase
         endpos = alcursor;
         break;
       default:
-        throw new Error("Unknown SeqCigar operation '" + operation[i] + "'");
+        throw new Error(MessageManager.formatMessage("error.unknown_seq_cigar_operation", new String[]{new StringBuffer(operation[i]).toString()}));
       }
     }
     if (++delcount > 0)
@@ -221,7 +225,7 @@ public abstract class CigarBase
       } while (c >= '0' && c <= '9' && j < l);
       if (j >= l && c >= '0' && c <= '9')
       {
-        throw new Exception("Unterminated cigar string.");
+        throw new Exception(MessageManager.getString("exception.unterminated_cigar_string"));
       }
       try
       {
@@ -230,7 +234,7 @@ public abstract class CigarBase
         i = j;
       } catch (Exception e)
       {
-        throw new Error("Implementation bug in parseCigarString");
+        throw new Error(MessageManager.getString("error.implementation_bug_parse_cigar_string"));
       }
       if (c >= 'a' && c <= 'z')
       {
@@ -242,9 +246,11 @@ public abstract class CigarBase
       }
       else
       {
-        throw new Exception("Unexpected operation '" + c
-                + "' in cigar string (position " + i + " in '"
-                + cigarString + "'");
+        throw new Exception(MessageManager.formatMessage("exception.unexpected_operation_cigar_string_pos", new String[]{
+                       new StringBuffer(c).toString(),
+                       Integer.valueOf(i).toString(),
+                       cigarString
+        }));
       }
     }
     return new Object[]
@@ -267,7 +273,7 @@ public abstract class CigarBase
     }
     if (op != M && op != D && op != I)
     {
-      throw new Error("Implementation error. Invalid operation string.");
+      throw new Error(MessageManager.getString("error.implementation_error_invalid_operation_string"));
     }
     if (range == 0)
     {
@@ -275,8 +281,7 @@ public abstract class CigarBase
     }
     if (range < 0)
     {
-      throw new Error(
-              "Invalid range string (must be zero or positive number)");
+      throw new Error(MessageManager.getString("error.invalid_range_string"));
     }
     int lngth = 0;
     if (operation == null)
@@ -388,8 +393,7 @@ public abstract class CigarBase
     }
     if (start < 0 || start > end)
     {
-      throw new Error(
-              "Implementation Error: deleteRange out of bounds: start must be non-negative and less than end.");
+      throw new Error(MessageManager.getString("error.implementation_error_delete_range_out_of_bounds"));
     }
     // find beginning
     int cursor = 0; // mark the position for the current operation being edited.
@@ -461,10 +465,9 @@ public abstract class CigarBase
           }
           break;
         case D:
-          throw new Error("Implementation error."); // do nothing;
+          throw new Error(MessageManager.getString("error.implementation_error")); // do nothing;
         default:
-          throw new Error("Implementation Error! Unknown operation '"
-                  + oldops[o] + "'");
+          throw new Error(MessageManager.formatMessage("error.implementation_error_unknown_operation", new String[]{new StringBuffer(oldops[o]).toString()}));
         }
         rlength -= remain;
         remain = oldrange[++o]; // number of op characters left to edit
index 1a79b17..96f3f6f 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel;
index 0b422d8..c961f33 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel;
index 5518588..35d467a 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel;
index 0039dd5..4d4bb05 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel;
index ceb11bf..1af18b6 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel;
index fbf0740..5c43bc4 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel;
index ed4bd8d..aab55a1 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel;
@@ -52,10 +54,11 @@ public class GraphLine
       displayed = from.displayed;
     }
   }
+
   @Override
   public boolean equals(Object obj)
   {
-    if (obj!=null && obj instanceof GraphLine)
+    if (obj != null && obj instanceof GraphLine)
     {
       GraphLine other = (GraphLine) obj;
       return displayed == other.displayed
index 9f08b7e..aefb5cc 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel;
index 2e374c6..cb87719 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel;
index b5fc803..6ca1736 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel;
index c41ea2e..ee2b549 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel;
index 5988fb7..a585baf 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel;
index b943285..64e01f6 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel;
index dd021cf..8434e81 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel;
diff --git a/src/jalview/datamodel/SecondaryStructureAnnotation.java b/src/jalview/datamodel/SecondaryStructureAnnotation.java
new file mode 100644 (file)
index 0000000..13f31d8
--- /dev/null
@@ -0,0 +1,52 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
+package jalview.datamodel;
+
+import fr.orsay.lri.varna.models.rna.RNA;
+
+public class SecondaryStructureAnnotation extends AlignmentAnnotation
+{
+
+  private static RNA _rna = null;
+
+  public SecondaryStructureAnnotation(RNA rna)
+  {
+    super("Secondary Structure", "Un truc trop cool", getAnnotation(rna));
+
+    _rna = rna;
+  }
+
+  public RNA getRNA()
+  {
+    return _rna;
+  }
+
+  public static Annotation[] getAnnotation(RNA rna)
+  {
+    Annotation[] ann = new Annotation[rna.getSize()];
+    for (int i = 0; i < ann.length; i++)
+    {
+      ann[i] = new Annotation(_rna.getStructDBN(true), "", ' ', 0f);
+      ;
+    }
+    return ann;
+  }
+}
index 0ceefd5..8441609 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel;
@@ -91,8 +93,7 @@ public class SeqCigar extends CigarSimple
             refseq.getSequenceAsString(start, end), GapChar);
     if (edit_result == null)
     {
-      throw new Error(
-              "Implementation Error - unexpected null from getSequenceAndDeletions");
+      throw new Error(MessageManager.getString("error.implementation_error_unexpected_null_from_get_sequence_and_deletions"));
     }
     int bounds[] = (int[]) edit_result[1];
     seq = new Sequence(refseq.getName(), (String) edit_result[0],
@@ -140,11 +141,11 @@ public class SeqCigar extends CigarSimple
     boolean hasgaps = false;
     if (seq == null)
     {
-      throw new Error("Implementation Error - _setSeq(null,...)");
+      throw new Error(MessageManager.getString("error.implementation_error_set_seq_null"));
     }
     if (_s < 0)
     {
-      throw new Error("Implementation Error: _s=" + _s);
+      throw new Error(MessageManager.formatMessage("error.implementation_error_s", new String[]{Integer.valueOf(_s).toString()}));
     }
     String seq_string = seq.getSequenceAsString();
     if (_e == 0 || _e < _s || _e > seq_string.length())
@@ -210,8 +211,7 @@ public class SeqCigar extends CigarSimple
     // Check offsets
     if (end > ds.getLength())
     {
-      throw new Error(
-              "SeqCigar: Possible implementation error: sequence is longer than dataset sequence");
+      throw new Error(MessageManager.getString("error.implementation_error_seqcigar_possible"));
       // end = ds.getLength();
     }
 
@@ -235,12 +235,11 @@ public class SeqCigar extends CigarSimple
     super();
     if (seq == null)
     {
-      throw new Error("Implementation Bug. Null seq !");
+      throw new Error(MessageManager.getString("error.implmentation_bug_seq_null"));
     }
     if (operation.length != range.length)
     {
-      throw new Error(
-              "Implementation Bug. Cigar Operation list!= range list");
+      throw new Error(MessageManager.getString("error.implementation_bug_cigar_operation_list_range_list"));
     }
 
     if (operation != null)
@@ -250,17 +249,14 @@ public class SeqCigar extends CigarSimple
 
       if (_setSeq(seq, false, 0, 0))
       {
-        throw new Error(
-                "NOT YET Implemented: Constructing a Cigar object from a cigar string and a gapped sequence.");
+        throw new Error(MessageManager.getString("error.not_yet_implemented_cigar_object_from_cigar_string"));
       }
       for (int i = this.length, j = 0; j < operation.length; i++, j++)
       {
         char op = operation[j];
         if (op != M && op != I && op != D)
         {
-          throw new Error("Implementation Bug. Cigar Operation '" + j
-                  + "' '" + op + "' not one of '" + M + "', '" + I
-                  + "', or '" + D + "'.");
+          throw new Error(MessageManager.formatMessage("error.implementation_bug_cigar_operation", new String[]{Integer.valueOf(j).toString(),Integer.valueOf(op).toString(),Integer.valueOf(M).toString(),Integer.valueOf(I).toString(),Integer.valueOf(D).toString()}));
         }
         this.operation[i] = op;
         this.range[i] = range[j];
@@ -274,8 +270,7 @@ public class SeqCigar extends CigarSimple
       this.length = 0;
       if (_setSeq(seq, false, 0, 0))
       {
-        throw new Error(
-                "NOT YET Implemented: Constructing a Cigar object from a cigar string and a gapped sequence.");
+        throw new Error(MessageManager.getString("error.not_yet_implemented_cigar_object_from_cigar_string"));
       }
     }
   }
@@ -382,7 +377,7 @@ public class SeqCigar extends CigarSimple
     super();
     if (seq == null)
     {
-      throw new Error("Implementation error for new Cigar(SequenceI)");
+      throw new Error(MessageManager.getString("error.implementation_error_for_new_cigar"));
     }
     _setSeq(seq, false, 0, 0);
     // there is still work to do
@@ -404,7 +399,7 @@ public class SeqCigar extends CigarSimple
     super();
     if (seq == null)
     {
-      throw new Error("Implementation error for new Cigar(SequenceI)");
+      throw new Error(MessageManager.getString("error.implementation_error_for_new_cigar"));
     }
     _setSeq(seq, false, start, end + 1);
     // there is still work to do
@@ -459,8 +454,7 @@ public class SeqCigar extends CigarSimple
       // endcol}, hidden regions {{start, end, col}})
       if (gs_regions[i] == null)
       {
-        throw new Error("Implementation error: " + i
-                + "'th sequence Cigar has no operations.");
+        throw new Error(MessageManager.formatMessage("error.implementation_error_cigar_seq_no_operations", new String[]{Integer.valueOf(i).toString()}));
       }
       g_seqs[i] = new StringBuffer((String) ((Object[]) gs_regions[i])[0]); // the
       // visible
index 910c86d..945a9d4 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel;
@@ -23,6 +25,8 @@ import jalview.analysis.AlignSeq;
 import java.util.Enumeration;
 import java.util.Vector;
 
+import fr.orsay.lri.varna.models.rna.RNA;
+
 /**
  * 
  * Implements the SequenceI interface for a char[] based sequence object.
@@ -50,18 +54,22 @@ public class Sequence implements SequenceI
 
   DBRefEntry[] dbrefs;
 
+  RNA rna;
+
   /**
    * This annotation is displayed below the alignment but the positions are tied
    * to the residues of this sequence
+   *
+   * TODO: change to List<>
    */
-  Vector annotation;
+  Vector<AlignmentAnnotation> annotation;
 
   /**
    * The index of the sequence in a MSA
    */
   int index = -1;
 
-  /** array of seuqence features - may not be null for a valid sequence object */
+  /** array of sequence features - may not be null for a valid sequence object */
   public SequenceFeature[] sequenceFeatures;
 
   /**
@@ -708,7 +716,7 @@ public class Sequence implements SequenceI
     {
       tmp = new char[i];
       System.arraycopy(sequence, 0, tmp, 0, i);
-      j=sequence.length;
+      j = sequence.length;
     }
     else
     {
@@ -999,14 +1007,13 @@ public class Sequence implements SequenceI
       datasetSequence.updatePDBIds();
       if (annotation != null)
       {
-        Vector<AlignmentAnnotation> _annot = annotation;
-        annotation = null;
-        for (AlignmentAnnotation aa : _annot)
+        for (AlignmentAnnotation aa : annotation)
         {
-          aa.sequenceRef = datasetSequence;
-          aa.adjustForAlignment(); // uses annotation's own record of
+          AlignmentAnnotation _aa = new AlignmentAnnotation(aa);
+          _aa.sequenceRef = datasetSequence;
+          _aa.adjustForAlignment(); // uses annotation's own record of
                                    // sequence-column mapping
-          datasetSequence.addAlignmentAnnotation(aa);
+          datasetSequence.addAlignmentAnnotation(_aa);
         }
       }
     }
@@ -1217,4 +1224,15 @@ public class Sequence implements SequenceI
   {
     index = value;
   }
+
+  public void setRNA(RNA r)
+  {
+    rna = r;
+  }
+
+  public RNA getRNA()
+  {
+    return rna;
+  }
+
 }
index 73cf03f..3af441b 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel;
@@ -30,11 +32,10 @@ public interface SequenceCollectionI
 
   int getWidth();
 
-  /** 
-  * @return the first column included in this collection. Runs from 0<=i<N_cols
-  */
+  /**
+   * @return the first column included in this collection. Runs from 0<=i<N_cols
+   */
   int getStartRes();
-  
 
   /**
    * 
index 24afbd3..9e1399a 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel;
index a01c0a5..b4cb3b1 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel;
@@ -470,7 +472,7 @@ public class SequenceGroup implements AnnotatedCollectionI
   }
 
   /**
-   * Max Gaps Threshold (percent) for performing a conservation calculation 
+   * Max Gaps Threshold (percent) for performing a conservation calculation
    */
   private int consPercGaps = 25;
 
@@ -484,7 +486,8 @@ public class SequenceGroup implements AnnotatedCollectionI
 
   /**
    * set Max Gaps Threshold (percent) for performing a conservation calculation
-   * @param consPercGaps 
+   * 
+   * @param consPercGaps
    */
   public void setConsPercGaps(int consPercGaps)
   {
@@ -535,7 +538,7 @@ public class SequenceGroup implements AnnotatedCollectionI
       }
       if (cs != null)
       {
-        cs.alignmentChanged(context!=null ? context : this, null);
+        cs.alignmentChanged(context != null ? context : this, null);
       }
     } catch (java.lang.OutOfMemoryError err)
     {
@@ -584,9 +587,10 @@ public class SequenceGroup implements AnnotatedCollectionI
     consensus.annotations = new Annotation[aWidth]; // should be alignment width
 
     AAFrequency.completeConsensus(consensus, cnsns, startRes, endRes + 1,
-            ignoreGapsInConsensus, showSequenceLogo, nseq); // TODO: setting container
-                                                      // for
-                                                      // ignoreGapsInConsensusCalculation);
+            ignoreGapsInConsensus, showSequenceLogo, nseq); // TODO: setting
+                                                            // container
+    // for
+    // ignoreGapsInConsensusCalculation);
   }
 
   /**
@@ -1250,16 +1254,22 @@ public class SequenceGroup implements AnnotatedCollectionI
   {
     sequences.clear();
   }
+
   private AnnotatedCollectionI context;
+
   /**
    * set the alignment or group context for this group
+   * 
    * @param context
    */
   public void setContext(AnnotatedCollectionI context)
   {
-    this.context = context; 
+    this.context = context;
   }
-  /* (non-Javadoc)
+
+  /*
+   * (non-Javadoc)
+   * 
    * @see jalview.datamodel.AnnotatedCollectionI#getContext()
    */
   @Override
index 8fc02cd..b10a4d4 100755 (executable)
-/*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
- */
-package jalview.datamodel;
-
-import java.util.Vector;
-
-/**
- * DOCUMENT ME!
- * 
- * @author $author$
- * @version $Revision$
- */
-public interface SequenceI
-{
-  /**
-   * Set the display name for the sequence
-   * 
-   * @param name
-   */
-  public void setName(String name);
-
-  /**
-   * Get the display name
-   */
-  public String getName();
-
-  /**
-   * Set start position of first non-gapped symbol in sequence
-   * 
-   * @param start
-   *          new start position
-   */
-  public void setStart(int start);
-
-  /**
-   * get start position of first non-gapped residue in sequence
-   * 
-   * @return
-   */
-  public int getStart();
-
-  /**
-   * get the displayed id of the sequence
-   * 
-   * @return true means the id will be returned in the form
-   *         DisplayName/Start-End
-   */
-  public String getDisplayId(boolean jvsuffix);
-
-  /**
-   * set end position for last residue in sequence
-   * 
-   * @param end
-   */
-  public void setEnd(int end);
-
-  /**
-   * get end position for last residue in sequence getEnd()>getStart() unless
-   * sequence only consists of gap characters
-   * 
-   * @return
-   */
-  public int getEnd();
-
-  /**
-   * @return length of sequence including gaps
-   * 
-   */
-  public int getLength();
-
-  /**
-   * Replace the sequence with the given string
-   * 
-   * @param sequence
-   *          new sequence string
-   */
-  public void setSequence(String sequence);
-
-  /**
-   * @return sequence as string
-   */
-  public String getSequenceAsString();
-
-  /**
-   * get a range on the sequence as a string
-   * 
-   * @param start
-   *          position relative to start of sequence including gaps (from 0)
-   * @param end
-   *          position relative to start of sequence including gaps (from 0)
-   * 
-   * @return String containing all gap and symbols in specified range
-   */
-  public String getSequenceAsString(int start, int end);
-
-  /**
-   * Get the sequence as a character array
-   * 
-   * @return seqeunce and any gaps
-   */
-  public char[] getSequence();
-
-  /**
-   * get stretch of sequence characters in an array
-   * 
-   * @param start
-   *          absolute index into getSequence()
-   * @param end
-   *          exclusive index of last position in segment to be returned.
-   * 
-   * @return char[max(0,end-start)];
-   */
-  public char[] getSequence(int start, int end);
-
-  /**
-   * create a new sequence object from start to end of this sequence
-   * 
-   * @param start
-   *          int
-   * @param end
-   *          int
-   * @return SequenceI
-   */
-  public SequenceI getSubSequence(int start, int end);
-
-  /**
-   * DOCUMENT ME!
-   * 
-   * @param i
-   *          DOCUMENT ME!
-   * 
-   * @return DOCUMENT ME!
-   */
-  public char getCharAt(int i);
-
-  /**
-   * DOCUMENT ME!
-   * 
-   * @param desc
-   *          DOCUMENT ME!
-   */
-  public void setDescription(String desc);
-
-  /**
-   * DOCUMENT ME!
-   * 
-   * @return DOCUMENT ME!
-   */
-  public String getDescription();
-
-  /**
-   * Return the alignment column for a sequence position * Return the alignment
-   * position for a sequence position
-   * 
-   * @param pos
-   *          lying from start to end
-   * 
-   * @return aligned column for residue (0 if residue is upstream from
-   *         alignment, -1 if residue is downstream from alignment) note.
-   *         Sequence object returns sequence.getEnd() for positions upstream
-   *         currently. TODO: change sequence for
-   *         assert(findIndex(seq.getEnd()+1)==-1) and fix incremental bugs
-   * 
-   */
-  public int findIndex(int pos);
-
-  /**
-   * Returns the sequence position for an alignment position
-   * 
-   * @param i
-   *          column index in alignment (from 1)
-   * 
-   * @return residue number for residue (left of and) nearest ith column
-   */
-  public int findPosition(int i);
-
-  /**
-   * Returns an int array where indices correspond to each residue in the
-   * sequence and the element value gives its position in the alignment
-   * 
-   * @return int[SequenceI.getEnd()-SequenceI.getStart()+1] or null if no
-   *         residues in SequenceI object
-   */
-  public int[] gapMap();
-
-  /**
-   * Returns an int array where indices correspond to each position in sequence
-   * char array and the element value gives the result of findPosition for that
-   * index in the sequence.
-   * 
-   * @return int[SequenceI.getLength()]
-   */
-  public int[] findPositionMap();
-
-  /**
-   * Delete a range of aligned sequence columns, creating a new dataset sequence
-   * if necessary and adjusting start and end positions accordingly.
-   * 
-   * @param i
-   *          first column in range to delete
-   * @param j
-   *          last column in range to delete
-   */
-  public void deleteChars(int i, int j);
-
-  /**
-   * DOCUMENT ME!
-   * 
-   * @param i
-   *          DOCUMENT ME!
-   * @param c
-   *          DOCUMENT ME!
-   */
-  public void insertCharAt(int i, char c);
-
-  /**
-   * DOCUMENT ME!
-   * 
-   * @param i
-   *          DOCUMENT ME!
-   * @param c
-   *          DOCUMENT ME!
-   */
-  public void insertCharAt(int i, int length, char c);
-
-  /**
-   * DOCUMENT ME!
-   * 
-   * @return DOCUMENT ME!
-   */
-  public SequenceFeature[] getSequenceFeatures();
-
-  /**
-   * DOCUMENT ME!
-   * 
-   * @param v
-   *          DOCUMENT ME!
-   */
-  public void setSequenceFeatures(SequenceFeature[] features);
-
-  /**
-   * DOCUMENT ME!
-   * 
-   * @param id
-   *          DOCUMENT ME!
-   */
-  public void setPDBId(Vector ids);
-
-  /**
-   * DOCUMENT ME!
-   * 
-   * @return DOCUMENT ME!
-   */
-  public Vector getPDBId();
-
-  /**
-   * add entry to the vector of PDBIds, if it isn't in the list already
-   * 
-   * @param entry
-   */
-  public void addPDBId(PDBEntry entry);
-
-  /**
-   * update the list of PDBEntrys to include any DBRefEntrys citing structural
-   * databases
-   * 
-   * @return true if PDBEntry list was modified
-   */
-  public boolean updatePDBIds();
-
-  public String getVamsasId();
-
-  public void setVamsasId(String id);
-
-  public void setDBRef(DBRefEntry[] dbs);
-
-  public DBRefEntry[] getDBRef();
-
-  /**
-   * add the given entry to the list of DBRefs for this sequence, or replace a
-   * similar one if entry contains a map object and the existing one doesnt.
-   * 
-   * @param entry
-   */
-  public void addDBRef(DBRefEntry entry);
-
-  public void addSequenceFeature(SequenceFeature sf);
-
-  public void deleteFeature(SequenceFeature sf);
-
-  public void setDatasetSequence(SequenceI seq);
-
-  public SequenceI getDatasetSequence();
-
-  public AlignmentAnnotation[] getAnnotation();
-
-  public void addAlignmentAnnotation(AlignmentAnnotation annotation);
-
-  public void removeAlignmentAnnotation(AlignmentAnnotation annotation);
-
-  /**
-   * Derive a sequence (using this one's dataset or as the dataset)
-   * 
-   * @return duplicate sequence with valid dataset sequence
-   */
-  public SequenceI deriveSequence();
-
-  /**
-   * set the array of associated AlignmentAnnotation for this sequenceI
-   * 
-   * @param revealed
-   */
-  public void setAlignmentAnnotation(AlignmentAnnotation[] annotation);
-
-  /**
-   * Get one or more alignment annotations with a particular label.
-   * 
-   * @param label
-   *          string which each returned annotation must have as a label.
-   * @return null or array of annotations.
-   */
-  public AlignmentAnnotation[] getAnnotation(String label);
-
-  /**
-   * create a new dataset sequence (if necessary) for this sequence and sets
-   * this sequence to refer to it. This call will move any features or
-   * references on the sequence onto the dataset.
-   * 
-   * @return dataset sequence for this sequence
-   */
-  public SequenceI createDatasetSequence();
-
-  /**
-   * Transfer any database references or annotation from entry under a sequence
-   * mapping.
-   * 
-   * @param entry
-   * @param mp
-   *          null or mapping from entry's numbering to local start/end
-   */
-  public void transferAnnotation(SequenceI entry, Mapping mp);
-
-  /**
-   * @param index
-   *          The sequence index in the MSA
-   */
-  public void setIndex(int index);
-
-  /**
-   * @return The index of the sequence in the alignment
-   */
-  public int getIndex();
-
-}
+/*\r
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)\r
+ * Copyright (C) 2014 The Jalview Authors\r
+ * \r
+ * This file is part of Jalview.\r
+ * \r
+ * Jalview is free software: you can redistribute it and/or\r
+ * modify it under the terms of the GNU General Public License \r
+ * as published by the Free Software Foundation, either version 3\r
+ * of the License, or (at your option) any later version.\r
+ *  \r
+ * Jalview is distributed in the hope that it will be useful, but \r
+ * WITHOUT ANY WARRANTY; without even the implied warranty \r
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR \r
+ * PURPOSE.  See the GNU General Public License for more details.\r
+ * \r
+ * You should have received a copy of the GNU General Public License\r
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.\r
+ * The Jalview Authors are detailed in the 'AUTHORS' file.\r
+ */\r
+package jalview.datamodel;\r
+\r
+import java.util.Vector;\r
+\r
+import fr.orsay.lri.varna.models.rna.RNA;\r
+\r
+/**\r
+ * DOCUMENT ME!\r
+ * \r
+ * @author $author$\r
+ * @version $Revision$\r
+ */\r
+public interface SequenceI\r
+{\r
+  /**\r
+   * Set the display name for the sequence\r
+   * \r
+   * @param name\r
+   */\r
+  public void setName(String name);\r
+\r
+  /**\r
+   * Get the display name\r
+   */\r
+  public String getName();\r
+\r
+  /**\r
+   * Set start position of first non-gapped symbol in sequence\r
+   * \r
+   * @param start\r
+   *          new start position\r
+   */\r
+  public void setStart(int start);\r
+\r
+  /**\r
+   * get start position of first non-gapped residue in sequence\r
+   * \r
+   * @return\r
+   */\r
+  public int getStart();\r
+\r
+  /**\r
+   * get the displayed id of the sequence\r
+   * \r
+   * @return true means the id will be returned in the form\r
+   *         DisplayName/Start-End\r
+   */\r
+  public String getDisplayId(boolean jvsuffix);\r
+\r
+  /**\r
+   * set end position for last residue in sequence\r
+   * \r
+   * @param end\r
+   */\r
+  public void setEnd(int end);\r
+\r
+  /**\r
+   * get end position for last residue in sequence getEnd()>getStart() unless\r
+   * sequence only consists of gap characters\r
+   * \r
+   * @return\r
+   */\r
+  public int getEnd();\r
+\r
+  /**\r
+   * @return length of sequence including gaps\r
+   * \r
+   */\r
+  public int getLength();\r
+\r
+  /**\r
+   * Replace the sequence with the given string\r
+   * \r
+   * @param sequence\r
+   *          new sequence string\r
+   */\r
+  public void setSequence(String sequence);\r
+\r
+  /**\r
+   * @return sequence as string\r
+   */\r
+  public String getSequenceAsString();\r
+\r
+  /**\r
+   * get a range on the sequence as a string\r
+   * \r
+   * @param start\r
+   *          position relative to start of sequence including gaps (from 0)\r
+   * @param end\r
+   *          position relative to start of sequence including gaps (from 0)\r
+   * \r
+   * @return String containing all gap and symbols in specified range\r
+   */\r
+  public String getSequenceAsString(int start, int end);\r
+\r
+  /**\r
+   * Get the sequence as a character array\r
+   * \r
+   * @return seqeunce and any gaps\r
+   */\r
+  public char[] getSequence();\r
+\r
+  /**\r
+   * get stretch of sequence characters in an array\r
+   * \r
+   * @param start\r
+   *          absolute index into getSequence()\r
+   * @param end\r
+   *          exclusive index of last position in segment to be returned.\r
+   * \r
+   * @return char[max(0,end-start)];\r
+   */\r
+  public char[] getSequence(int start, int end);\r
+\r
+  /**\r
+   * create a new sequence object from start to end of this sequence\r
+   * \r
+   * @param start\r
+   *          int\r
+   * @param end\r
+   *          int\r
+   * @return SequenceI\r
+   */\r
+  public SequenceI getSubSequence(int start, int end);\r
+\r
+  /**\r
+   * DOCUMENT ME!\r
+   * \r
+   * @param i\r
+   *          DOCUMENT ME!\r
+   * \r
+   * @return DOCUMENT ME!\r
+   */\r
+  public char getCharAt(int i);\r
+\r
+  /**\r
+   * DOCUMENT ME!\r
+   * \r
+   * @param desc\r
+   *          DOCUMENT ME!\r
+   */\r
+  public void setDescription(String desc);\r
+\r
+  /**\r
+   * DOCUMENT ME!\r
+   * \r
+   * @return DOCUMENT ME!\r
+   */\r
+  public String getDescription();\r
+\r
+  /**\r
+   * Return the alignment column for a sequence position * Return the alignment\r
+   * position for a sequence position\r
+   * \r
+   * @param pos\r
+   *          lying from start to end\r
+   * \r
+   * @return aligned column for residue (0 if residue is upstream from\r
+   *         alignment, -1 if residue is downstream from alignment) note.\r
+   *         Sequence object returns sequence.getEnd() for positions upstream\r
+   *         currently. TODO: change sequence for\r
+   *         assert(findIndex(seq.getEnd()+1)==-1) and fix incremental bugs\r
+   * \r
+   */\r
+  public int findIndex(int pos);\r
+\r
+  /**\r
+   * Returns the sequence position for an alignment position\r
+   * \r
+   * @param i\r
+   *          column index in alignment (from 1)\r
+   * \r
+   * @return residue number for residue (left of and) nearest ith column\r
+   */\r
+  public int findPosition(int i);\r
+\r
+  /**\r
+   * Returns an int array where indices correspond to each residue in the\r
+   * sequence and the element value gives its position in the alignment\r
+   * \r
+   * @return int[SequenceI.getEnd()-SequenceI.getStart()+1] or null if no\r
+   *         residues in SequenceI object\r
+   */\r
+  public int[] gapMap();\r
+\r
+  /**\r
+   * Returns an int array where indices correspond to each position in sequence\r
+   * char array and the element value gives the result of findPosition for that\r
+   * index in the sequence.\r
+   * \r
+   * @return int[SequenceI.getLength()]\r
+   */\r
+  public int[] findPositionMap();\r
+\r
+  /**\r
+   * Delete a range of aligned sequence columns, creating a new dataset sequence\r
+   * if necessary and adjusting start and end positions accordingly.\r
+   * \r
+   * @param i\r
+   *          first column in range to delete\r
+   * @param j\r
+   *          last column in range to delete\r
+   */\r
+  public void deleteChars(int i, int j);\r
+\r
+  /**\r
+   * DOCUMENT ME!\r
+   * \r
+   * @param i\r
+   *          DOCUMENT ME!\r
+   * @param c\r
+   *          DOCUMENT ME!\r
+   */\r
+  public void insertCharAt(int i, char c);\r
+\r
+  /**\r
+   * DOCUMENT ME!\r
+   * \r
+   * @param i\r
+   *          DOCUMENT ME!\r
+   * @param c\r
+   *          DOCUMENT ME!\r
+   */\r
+  public void insertCharAt(int i, int length, char c);\r
+\r
+  /**\r
+   * DOCUMENT ME!\r
+   * \r
+   * @return DOCUMENT ME!\r
+   */\r
+  public SequenceFeature[] getSequenceFeatures();\r
+\r
+  /**\r
+   * DOCUMENT ME!\r
+   * \r
+   * @param v\r
+   *          DOCUMENT ME!\r
+   */\r
+  public void setSequenceFeatures(SequenceFeature[] features);\r
+\r
+  /**\r
+   * DOCUMENT ME!\r
+   * \r
+   * @param id\r
+   *          DOCUMENT ME!\r
+   */\r
+  public void setPDBId(Vector ids);\r
+\r
+  /**\r
+   * DOCUMENT ME!\r
+   * \r
+   * @return DOCUMENT ME!\r
+   */\r
+  public Vector getPDBId();\r
+\r
+  /**\r
+   * add entry to the vector of PDBIds, if it isn't in the list already\r
+   * \r
+   * @param entry\r
+   */\r
+  public void addPDBId(PDBEntry entry);\r
+\r
+  /**\r
+   * update the list of PDBEntrys to include any DBRefEntrys citing structural\r
+   * databases\r
+   * \r
+   * @return true if PDBEntry list was modified\r
+   */\r
+  public boolean updatePDBIds();\r
+\r
+  public String getVamsasId();\r
+\r
+  public void setVamsasId(String id);\r
+\r
+  public void setDBRef(DBRefEntry[] dbs);\r
+\r
+  public DBRefEntry[] getDBRef();\r
+\r
+  /**\r
+   * add the given entry to the list of DBRefs for this sequence, or replace a\r
+   * similar one if entry contains a map object and the existing one doesnt.\r
+   * \r
+   * @param entry\r
+   */\r
+  public void addDBRef(DBRefEntry entry);\r
+\r
+  public void addSequenceFeature(SequenceFeature sf);\r
+\r
+  public void deleteFeature(SequenceFeature sf);\r
+\r
+  public void setDatasetSequence(SequenceI seq);\r
+\r
+  public SequenceI getDatasetSequence();\r
+\r
+  public AlignmentAnnotation[] getAnnotation();\r
+\r
+  public void addAlignmentAnnotation(AlignmentAnnotation annotation);\r
+\r
+  public void removeAlignmentAnnotation(AlignmentAnnotation annotation);\r
+\r
+  /**\r
+   * Derive a sequence (using this one's dataset or as the dataset)\r
+   * \r
+   * @return duplicate sequence with valid dataset sequence\r
+   */\r
+  public SequenceI deriveSequence();\r
+\r
+  /**\r
+   * set the array of associated AlignmentAnnotation for this sequenceI\r
+   * \r
+   * @param revealed\r
+   */\r
+  public void setAlignmentAnnotation(AlignmentAnnotation[] annotation);\r
+\r
+  /**\r
+   * Get one or more alignment annotations with a particular label.\r
+   * \r
+   * @param label\r
+   *          string which each returned annotation must have as a label.\r
+   * @return null or array of annotations.\r
+   */\r
+  public AlignmentAnnotation[] getAnnotation(String label);\r
+\r
+  /**\r
+   * create a new dataset sequence (if necessary) for this sequence and sets\r
+   * this sequence to refer to it. This call will move any features or\r
+   * references on the sequence onto the dataset. It will also make a duplicate\r
+   * of existing annotation rows for the dataset sequence, rather than relocate\r
+   * them in order to preserve external references (since 2.8.2).\r
+   * \r
+   * @return dataset sequence for this sequence\r
+   */\r
+  public SequenceI createDatasetSequence();\r
+\r
+  /**\r
+   * Transfer any database references or annotation from entry under a sequence\r
+   * mapping. <br/>\r
+   * <strong>Note: DOES NOT transfer sequence associated alignment\r
+   * annotation </strong><br/>\r
+   * \r
+   * @param entry\r
+   * @param mp\r
+   *          null or mapping from entry's numbering to local start/end\r
+   */\r
+  public void transferAnnotation(SequenceI entry, Mapping mp);\r
+\r
+  /**\r
+   * @param index\r
+   *          The sequence index in the MSA\r
+   */\r
+  public void setIndex(int index);\r
+\r
+  /**\r
+   * @return The index of the sequence in the alignment\r
+   */\r
+  public int getIndex();\r
+\r
+  /**\r
+   * @return The RNA of the sequence in the alignment\r
+   */\r
+\r
+  public RNA getRNA();\r
+\r
+  /**\r
+   * @param rna\r
+   *          The RNA.\r
+   */\r
+  public void setRNA(RNA rna);\r
+\r
+}\r
index d6770c0..2f9563b 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel;
index d38da0f..5d18727 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel;
index f21591a..8fb42f6 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel;
index f68ffc6..94c7f05 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel;
index cb21789..95eae5c 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel;
index a5112c6..12f26e1 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel;
index 53d4341..01de0ba 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel.xdb.embl;
index 0445046..3c88083 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel.xdb.embl;
index c7a59d8..30acc36 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel.xdb.embl;
index c920f7b..975471a 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel.xdb.embl;
index c5aad07..41abda1 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel.xdb.embl;
index fd4de3c..7df0698 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel.xdb.embl;
index 7e39a51..ec3d050 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel.xdb.embl;
index a997066..69cb77a 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel.xdb.embl;
index c60c52a..948fb31 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel.xdb.embl;
index 8ee2296..9187912 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ext.jmol;
@@ -33,6 +35,8 @@ import jalview.schemes.ResidueProperties;
 import jalview.structure.StructureListener;
 import jalview.structure.StructureMapping;
 import jalview.structure.StructureSelectionManager;
+import jalview.structures.models.SequenceStructureBindingModel;
+import jalview.util.MessageManager;
 
 import java.awt.Color;
 import java.awt.Container;
@@ -54,26 +58,13 @@ import org.jmol.api.JmolViewer;
 import org.jmol.constant.EnumCallback;
 import org.jmol.popup.JmolPopup;
 
-public abstract class JalviewJmolBinding implements StructureListener,
+public abstract class JalviewJmolBinding extends SequenceStructureBindingModel implements StructureListener,
         JmolStatusListener, SequenceStructureBinding,
         JmolSelectionListener, ComponentListener,
         StructureSelectionManagerProvider
 
 {
   /**
-   * set if Jmol state is being restored from some source - instructs binding
-   * not to apply default display style when structure set is updated for first
-   * time.
-   */
-  private boolean loadingFromArchive = false;
-  
-  /**
-   * second flag to indicate if the jmol viewer should ignore sequence colouring
-   * events from the structure manager because the GUI is still setting up
-   */
-  private boolean loadingFinished = true;
-
-  /**
    * state flag used to check if the Jmol viewer's paint method can be called
    */
   private boolean finishedInit = false;
@@ -328,13 +319,15 @@ public abstract class JalviewJmolBinding implements StructureListener,
 
     String[] files = getPdbFile();
     // check to see if we are still waiting for Jmol files
-    long starttime=System.currentTimeMillis();
-    boolean waiting=true;
-    do {
-      waiting=false;
-      for (String file:files)
+    long starttime = System.currentTimeMillis();
+    boolean waiting = true;
+    do
+    {
+      waiting = false;
+      for (String file : files)
       {
-        try {
+        try
+        {
           // HACK - in Jalview 2.8 this call may not be threadsafe so we catch
           // every possible exception
           StructureMapping[] sm = ssm.getMapping(file);
@@ -351,10 +344,12 @@ public abstract class JalviewJmolBinding implements StructureListener,
         }
       }
       // we wait around for a reasonable time before we give up
-    } while (waiting && System.currentTimeMillis()<(10000+1000*files.length+starttime));
+    } while (waiting
+            && System.currentTimeMillis() < (10000 + 1000 * files.length + starttime));
     if (waiting)
     {
-      System.err.println("RUNTIME PROBLEM: Jmol seems to be taking a long time to process all the structures.");
+      System.err
+              .println("RUNTIME PROBLEM: Jmol seems to be taking a long time to process all the structures.");
       return;
     }
     StringBuffer selectioncom = new StringBuffer();
@@ -418,7 +413,7 @@ public abstract class JalviewJmolBinding implements StructureListener,
         // Jmol callback has completed.
         if (mapping == null || mapping.length < 1)
         {
-          throw new Error("Implementation error - Jmol seems to be still working on getting its data - report at http://issues.jalview.org/browse/JAL-1016");
+          throw new Error(MessageManager.getString("error.implementation_error_jmol_getting_data"));
         }
         int lastPos = -1;
         for (int s = 0; s < sequence[pdbfnum].length; s++)
@@ -484,7 +479,7 @@ public abstract class JalviewJmolBinding implements StructureListener,
           }
         }
       }
-      
+
       // TODO: consider bailing if nmatched less than 4 because superposition
       // not
       // well defined.
@@ -556,14 +551,17 @@ public abstract class JalviewJmolBinding implements StructureListener,
             {
               selectioncom.append("|");
             }
-          } else {
+          }
+          else
+          {
             selcom[pdbfnum] = null;
           }
         }
       }
       for (int pdbfnum = 0; pdbfnum < files.length; pdbfnum++)
       {
-        if (pdbfnum == refStructure || selcom[pdbfnum]==null || selcom[refStructure]==null)
+        if (pdbfnum == refStructure || selcom[pdbfnum] == null
+                || selcom[refStructure] == null)
         {
           continue;
         }
@@ -572,7 +570,7 @@ public abstract class JalviewJmolBinding implements StructureListener,
         command.append(chainNames[pdbfnum]);
         command.append(") against reference (");
         command.append(chainNames[refStructure]);
-        command.append(")\";\ncompare "+nSeconds);
+        command.append(")\";\ncompare " + nSeconds);
         command.append("{");
         command.append(1 + pdbfnum);
         command.append(".1} {");
@@ -631,7 +629,7 @@ public abstract class JalviewJmolBinding implements StructureListener,
   public void colourBySequence(boolean showFeatures,
           jalview.api.AlignmentViewPanel alignmentv)
   {
-    if (!colourBySequence || !loadingFinished)
+    if (!colourBySequence || !isLoadingFinished())
       return;
     if (ssm == null)
     {
@@ -1499,30 +1497,6 @@ public abstract class JalviewJmolBinding implements StructureListener,
     showConsole(false);
   }
 
-  public void setLoadingFromArchive(boolean loadingFromArchive)
-  {
-    this.loadingFromArchive = loadingFromArchive;
-  }
-  
-  /**
-   * 
-   * @return true if Jmol is still restoring state or loading is still going on (see setFinsihedLoadingFromArchive)
-   */
-  public boolean isLoadingFromArchive()
-  {
-    return loadingFromArchive && !loadingFinished;
-  }
-
-  /**
-   * modify flag which controls if sequence colouring events are honoured by the binding. 
-   * Should be true for normal operation
-   * @param finishedLoading
-   */
-  public void setFinishedLoadingFromArchive(boolean finishedLoading)
-  {
-    loadingFinished = finishedLoading;
-  }
-
   public void setBackgroundColour(java.awt.Color col)
   {
     jmolHistory(false);
@@ -1600,9 +1574,7 @@ public abstract class JalviewJmolBinding implements StructureListener,
   {
     if (pe < 0 || pe >= pdbentry.length)
     {
-      throw new Error(
-              "Implementation error - no corresponding pdbentry (for index "
-                      + pe + ") to add sequences mappings to");
+      throw new Error(MessageManager.formatMessage("error.implementation_error_no_pdbentry_from_index", new String[]{Integer.valueOf(pe).toString()}));
     }
     final String nullChain = "TheNullChain";
     Vector s = new Vector();
index 17a622d..5c31a3a 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ext.jmol;
diff --git a/src/jalview/ext/jmol/PDBFileWithJmol.java b/src/jalview/ext/jmol/PDBFileWithJmol.java
new file mode 100644 (file)
index 0000000..847453f
--- /dev/null
@@ -0,0 +1,434 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
+package jalview.ext.jmol;
+
+import java.io.IOException;
+import java.util.Hashtable;
+import java.util.Map;
+
+import org.jmol.api.JmolStatusListener;
+import org.jmol.api.JmolViewer;
+import org.jmol.constant.EnumCallback;
+import org.jmol.modelset.Group;
+import org.jmol.modelset.Model;
+import org.jmol.modelset.ModelSet;
+import org.jmol.modelset.Polymer;
+import org.jmol.modelsetbio.BioPolymer;
+import org.jmol.viewer.Viewer;
+import org.openscience.jmol.app.JmolApp;
+
+import jalview.datamodel.AlignmentAnnotation;
+import jalview.datamodel.Annotation;
+import jalview.datamodel.PDBEntry;
+import jalview.datamodel.Sequence;
+import jalview.datamodel.SequenceI;
+import jalview.io.AlignFile;
+import jalview.io.FileParse;
+import jalview.util.MessageManager;
+
+/**
+ * Import and process PDB files with Jmol
+ * 
+ * @author jprocter
+ * 
+ */
+public class PDBFileWithJmol extends AlignFile implements
+        JmolStatusListener
+{
+
+  JmolApp jmolApp = null;
+
+  Viewer viewer = null;
+
+  public PDBFileWithJmol(String inFile, String type) throws IOException
+  {
+    super(inFile, type);
+  }
+
+  public PDBFileWithJmol(FileParse fp) throws IOException
+  {
+    super(fp);
+  }
+
+  public PDBFileWithJmol()
+  {
+    // TODO Auto-generated constructor stub
+  }
+
+  /**
+   * create a headless jmol instance for dataprocessing
+   * 
+   * @return
+   */
+  private Viewer getJmolData()
+  {
+    if (viewer == null)
+    { // note that -o -n -x are all implied
+      jmolApp = new JmolApp();
+      jmolApp.isDataOnly = true;
+      jmolApp.haveConsole = false;
+      jmolApp.haveDisplay = false;
+      jmolApp.exitUponCompletion = true;
+      try
+      {
+        viewer = (Viewer) JmolViewer.allocateViewer(null, null, null, null,
+                null, jmolApp.commandOptions, this);
+        viewer.setScreenDimension(jmolApp.startupWidth,
+                jmolApp.startupHeight);
+        jmolApp.startViewer(viewer, null);
+      } catch (ClassCastException x)
+      {
+        throw new Error(MessageManager.formatMessage("error.jmol_version_not_compatible_with_jalview_version", new String[]{JmolViewer.getJmolVersion()}),
+                x);
+      }
+    }
+    return viewer;
+  }
+
+  private void waitForScript(Viewer jmd)
+  {
+    while (jmd.isScriptExecuting())
+    {
+      try
+      {
+        Thread.sleep(50);
+
+      } catch (InterruptedException x)
+      {
+      }
+    }
+  }
+
+  /*
+   * (non-Javadoc)
+   * 
+   * @see jalview.io.AlignFile#parse()
+   */
+  @Override
+  public void parse() throws IOException
+  {
+    Viewer jmd = getJmolData();
+    jmd.openReader(getDataName(), getDataName(), getReader());
+    waitForScript(jmd);
+    if (jmd.getModelCount() > 0)
+    {
+      ModelSet ms = jmd.getModelSet();
+      String structs = ms.calculateStructures(null, true, false, true);
+      // System.out.println("Structs\n"+structs);
+      for (Model model : ms.getModels())
+      {
+        for (int _bp = 0, _bpc = model.getBioPolymerCount(); _bp < _bpc; _bp++)
+        {
+          Polymer bp = model.getBioPolymer(_bp);
+          if (bp instanceof BioPolymer)
+          {
+            BioPolymer biopoly = (BioPolymer) bp;
+            char _lastChainId = 0;
+            int[] groups = biopoly.getLeadAtomIndices();
+            Group[] bpgrp = biopoly.getGroups();
+            char seq[] = new char[groups.length], secstr[] = new char[groups.length], secstrcode[] = new char[groups.length];
+            int groupc = 0, len = 0, firstrnum = 1, lastrnum = 0;
+            do
+            {
+              if (groupc >= groups.length
+                      || ms.atoms[groups[groupc]].getChainID() != _lastChainId)
+              {
+                if (len > 0)
+                {
+                  char newseq[] = new char[len];
+                  System.arraycopy(seq, 0, newseq, 0, len);
+                  Annotation asecstr[] = new Annotation[len+firstrnum-1];
+                  for (int p = 0; p < len; p++)
+                  {
+                    if (secstr[p] >= 'A' && secstr[p] <= 'z')
+                    {
+                      asecstr[p] = new Annotation("" + secstr[p], null,
+                              secstrcode[p], Float.NaN);
+                    }
+                  }
+                  SequenceI sq = new Sequence("" + getDataName() + "|"
+                          + model.getModelTitle() + "|" + _lastChainId,
+                          newseq, firstrnum, lastrnum);
+                  PDBEntry pdbe = new PDBEntry();
+                  pdbe.setFile(getDataName());
+                  pdbe.setId(getDataName());
+                  sq.addPDBId(pdbe);
+                  pdbe.setProperty(new Hashtable());
+                  pdbe.getProperty().put("CHAIN", "" + _lastChainId);
+                  // JAL-1533
+                  // Need to put the number of models for this polymer somewhere for Chimera/others to grab
+                  //                  pdbe.getProperty().put("PDBMODELS", biopoly.)
+                  seqs.add(sq);
+                  if (!(biopoly.isDna() || biopoly.isRna()))
+                  {
+                    AlignmentAnnotation ann = new AlignmentAnnotation(
+                            "Secondary Structure",
+                            "Secondary Structure from PDB File", asecstr);
+                    ann.belowAlignment=true;
+                    ann.visible=true;
+                    ann.autoCalculated=false;
+                    ann.setCalcId(getClass().getName());
+                    sq.addAlignmentAnnotation(ann);
+                    ann.adjustForAlignment();
+                    ann.validateRangeAndDisplay();
+                    annotations.add(ann);
+                  }
+                }
+                len = 0;
+                firstrnum = 1;
+                lastrnum = 0;
+              }
+              if (groupc < groups.length)
+              {
+                if (len == 0)
+                {
+                  firstrnum = bpgrp[groupc].getResno();
+                  _lastChainId = bpgrp[groupc].getChainID();
+                }
+                else
+                {
+                  lastrnum = bpgrp[groupc].getResno();
+                }
+                seq[len] = bpgrp[groupc].getGroup1();
+                switch (bpgrp[groupc].getProteinStructureSubType())
+                {
+                case HELIX_310:
+                  if (secstr[len] == 0)
+                  {
+                    secstr[len] = '3';
+                  }
+                case HELIX_ALPHA:
+                  if (secstr[len] == 0)
+                  {
+                    secstr[len] = 'H';
+                  }
+                case HELIX_PI:
+                  if (secstr[len] == 0)
+                  {
+                    secstr[len] = 'P';
+                  }
+                case HELIX:
+                  if (secstr[len] == 0)
+                  {
+                    secstr[len] = 'H';
+                  }
+                  secstrcode[len] = 'H';
+                  break;
+                case SHEET:
+                  secstr[len] = 'E';
+                  secstrcode[len] = 'E';
+                  break;
+                default:
+                  secstr[len] = 0;
+                  secstrcode[len] = 0;
+                }
+                len++;
+              }
+            } while (groupc++ < groups.length);
+
+          }
+        }
+      }
+
+      /*
+       * lastScriptTermination = -9465; String dsspOut =
+       * jmd.evalString("calculate STRUCTURE"); if (dsspOut.equals("pending")) {
+       * while (lastScriptTermination == -9465) { try { Thread.sleep(50); }
+       * catch (Exception x) { } ; } } System.out.println(lastConsoleEcho);
+       */
+    }
+  }
+
+  /*
+   * (non-Javadoc)
+   * 
+   * @see jalview.io.AlignFile#print()
+   */
+  @Override
+  public String print()
+  {
+    // TODO Auto-generated method stub
+    return null;
+  }
+
+  @Override
+  public void setCallbackFunction(String callbackType,
+          String callbackFunction)
+  {
+    // TODO Auto-generated method stub
+
+  }
+
+  /*
+   * @Override public void notifyCallback(EnumCallback type, Object[] data) {
+   * try { switch (type) { case ERROR: case SCRIPT:
+   * notifyScriptTermination((String) data[2], ((Integer) data[3]).intValue());
+   * break; case MESSAGE: sendConsoleMessage((data == null) ? ((String) null) :
+   * (String) data[1]); break; case LOADSTRUCT: notifyFileLoaded((String)
+   * data[1], (String) data[2], (String) data[3], (String) data[4], ((Integer)
+   * data[5]).intValue());
+   * 
+   * break; default: // System.err.println("Unhandled callback " + type + " " //
+   * + data[1].toString()); break; } } catch (Exception e) {
+   * System.err.println("Squashed Jmol callback handler error:");
+   * e.printStackTrace(); } }
+   */
+  public void notifyCallback(EnumCallback type, Object[] data)
+  {
+    String strInfo = (data == null || data[1] == null ? null : data[1]
+            .toString());
+    switch (type)
+    {
+    case ECHO:
+      sendConsoleEcho(strInfo);
+      break;
+    case SCRIPT:
+      notifyScriptTermination((String) data[2],
+              ((Integer) data[3]).intValue());
+      break;
+    case MEASURE:
+      String mystatus = (String) data[3];
+      if (mystatus.indexOf("Picked") >= 0
+              || mystatus.indexOf("Sequence") >= 0) // picking mode
+        sendConsoleMessage(strInfo);
+      else if (mystatus.indexOf("Completed") >= 0)
+        sendConsoleEcho(strInfo.substring(strInfo.lastIndexOf(",") + 2,
+                strInfo.length() - 1));
+      break;
+    case MESSAGE:
+      sendConsoleMessage(data == null ? null : strInfo);
+      break;
+    case PICK:
+      sendConsoleMessage(strInfo);
+      break;
+    default:
+      break;
+    }
+  }
+
+  private void notifyFileLoaded(String string, String string2,
+          String string3, String string4, int intValue)
+  {
+    // TODO Auto-generated method stub
+
+  }
+
+  String lastConsoleEcho = "";
+
+  private void sendConsoleEcho(String string)
+  {
+    lastConsoleEcho += string;
+    lastConsoleEcho += "\n";
+  }
+
+  String lastConsoleMessage = "";
+
+  private void sendConsoleMessage(String string)
+  {
+    lastConsoleMessage += string;
+    lastConsoleMessage += "\n";
+  }
+
+  int lastScriptTermination = -1;
+
+  String lastScriptMessage = "";
+
+  private void notifyScriptTermination(String string, int intValue)
+  {
+    lastScriptMessage += string;
+    lastScriptMessage += "\n";
+    lastScriptTermination = intValue;
+  }
+
+  @Override
+  public boolean notifyEnabled(EnumCallback callbackPick)
+  {
+    switch (callbackPick)
+    {
+    case MESSAGE:
+    case SCRIPT:
+    case ECHO:
+    case LOADSTRUCT:
+    case ERROR:
+      return true;
+    case MEASURE:
+    case PICK:
+    case HOVER:
+    case RESIZE:
+    case SYNC:
+    case CLICK:
+    case ANIMFRAME:
+    case MINIMIZATION:
+    }
+    return false;
+  }
+
+  @Override
+  public String eval(String strEval)
+  {
+    // TODO Auto-generated method stub
+    return null;
+  }
+
+  @Override
+  public float[][] functionXY(String functionName, int x, int y)
+  {
+    // TODO Auto-generated method stub
+    return null;
+  }
+
+  @Override
+  public float[][][] functionXYZ(String functionName, int nx, int ny, int nz)
+  {
+    // TODO Auto-generated method stub
+    return null;
+  }
+
+  @Override
+  public String createImage(String fileName, String type,
+          Object text_or_bytes, int quality)
+  {
+    // TODO Auto-generated method stub
+    return null;
+  }
+
+  @Override
+  public Map<String, Object> getRegistryInfo()
+  {
+    // TODO Auto-generated method stub
+    return null;
+  }
+
+  @Override
+  public void showUrl(String url)
+  {
+    // TODO Auto-generated method stub
+
+  }
+
+  @Override
+  public void resizeInnerPanel(String data)
+  {
+    // TODO Auto-generated method stub
+
+  }
+
+}
diff --git a/src/jalview/ext/paradise/Annotate3D.java b/src/jalview/ext/paradise/Annotate3D.java
new file mode 100644 (file)
index 0000000..3930fc0
--- /dev/null
@@ -0,0 +1,242 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
+package jalview.ext.paradise;
+
+import jalview.util.MessageManager;
+import jalview.ws.HttpClientUtils;
+
+import java.io.IOException;
+import java.io.InputStreamReader;
+import java.io.Reader;
+import java.io.StringReader;
+import java.net.URL;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Iterator;
+import java.util.List;
+
+import org.apache.http.NameValuePair;
+import org.apache.http.message.BasicNameValuePair;
+import org.json.simple.JSONArray;
+import org.json.simple.JSONObject;
+import org.json.simple.JSONStreamAware;
+import org.json.simple.parser.ContentHandler;
+import org.json.simple.parser.ParseException;
+
+/**
+ * simple methods for calling the various paradise RNA tools
+ * 
+ * @author jimp
+ * 
+ *         History: v1.0 revised from original due to refactoring of
+ *         paradise-ubmc.u-strasbg.fr/webservices/annotate3d to
+ *         http://arn-ibmc.in2p3.fr/api/compute/2d?tool=rnaview
+ */
+public class Annotate3D
+{
+  private static String twoDtoolsURL = "http://arn-ibmc.in2p3.fr/api/compute/2d";
+
+  private static ContentHandler createContentHandler()
+  {
+    ContentHandler ch = new ContentHandler()
+    {
+
+      @Override
+      public void startJSON() throws ParseException, IOException
+      {
+        // TODO Auto-generated method stub
+
+      }
+
+      @Override
+      public void endJSON() throws ParseException, IOException
+      {
+        // TODO Auto-generated method stub
+
+      }
+
+      @Override
+      public boolean startObject() throws ParseException, IOException
+      {
+        // TODO Auto-generated method stub
+        return false;
+      }
+
+      @Override
+      public boolean endObject() throws ParseException, IOException
+      {
+        // TODO Auto-generated method stub
+        return false;
+      }
+
+      @Override
+      public boolean startObjectEntry(String key) throws ParseException,
+              IOException
+      {
+        // TODO Auto-generated method stub
+        return false;
+      }
+
+      @Override
+      public boolean endObjectEntry() throws ParseException, IOException
+      {
+        // TODO Auto-generated method stub
+        return false;
+      }
+
+      @Override
+      public boolean startArray() throws ParseException, IOException
+      {
+        // TODO Auto-generated method stub
+        return false;
+      }
+
+      @Override
+      public boolean endArray() throws ParseException, IOException
+      {
+        // TODO Auto-generated method stub
+        return false;
+      }
+
+      @Override
+      public boolean primitive(Object value) throws ParseException,
+              IOException
+      {
+        // TODO Auto-generated method stub
+        return false;
+      }
+
+    };
+    return ch;
+  }
+
+  public static Iterator<Reader> getRNAMLForPDBFileAsString(String pdbfile)
+          throws Exception
+  {
+    List<NameValuePair> vals = new ArrayList<NameValuePair>();
+    vals.add(new BasicNameValuePair("tool", "rnaview"));
+    vals.add(new BasicNameValuePair("data", pdbfile));
+    vals.add(new BasicNameValuePair("output", "rnaml"));
+    // return processJsonResponseFor(HttpClientUtils.doHttpUrlPost(twoDtoolsURL,
+    // vals));
+    ArrayList<Reader> readers = new ArrayList<Reader>();
+    readers.add(HttpClientUtils.doHttpUrlPost(twoDtoolsURL, vals));
+    return readers.iterator();
+
+  }
+
+  public static Iterator<Reader> processJsonResponseFor(Reader respons)
+          throws Exception
+  {
+    org.json.simple.parser.JSONParser jp = new org.json.simple.parser.JSONParser();
+    try
+    {
+      final JSONArray responses = (JSONArray) jp.parse(respons);
+      final Iterator rvals = responses.iterator();
+      return new Iterator<Reader>()
+      {
+        @Override
+        public boolean hasNext()
+        {
+          return rvals.hasNext();
+        }
+
+        @Override
+        public Reader next()
+        {
+          JSONObject val = (JSONObject) rvals.next();
+
+          Object sval = null;
+          try
+          {
+            sval = val.get("2D");
+          } catch (Exception x)
+          {
+            x.printStackTrace();
+          }
+          ;
+          if (sval == null)
+          {
+            System.err
+                    .println("DEVELOPER WARNING: Annotate3d didn't return a '2D' tag in its response. Consider checking output of server. Response was :"
+                            + val.toString());
+
+            sval = "";
+          }
+          return new StringReader(
+                  (sval instanceof JSONObject) ? ((JSONObject) sval)
+                          .toString() : sval.toString());
+
+        }
+
+        @Override
+        public void remove()
+        {
+          throw new Error(MessageManager.getString("error.not_implemented_remove"));
+
+        }
+
+        @Override
+        protected Object clone() throws CloneNotSupportedException
+        {
+          throw new CloneNotSupportedException(MessageManager.getString("error.not_implemented_clone"));
+        }
+
+        @Override
+        public boolean equals(Object obj)
+        {
+          return super.equals(obj);
+        }
+
+        @Override
+        protected void finalize() throws Throwable
+        {
+          while (rvals.hasNext())
+          {
+            rvals.next();
+          }
+          super.finalize();
+        }
+      };
+    } catch (Exception foo)
+    {
+      throw new Exception(MessageManager.getString("exception.couldnt_parse_responde_from_annotated3d_server"), foo);
+    }
+
+  }
+
+  public static Iterator<Reader> getRNAMLForPDBId(String pdbid)
+          throws Exception
+  {
+    List<NameValuePair> vals = new ArrayList<NameValuePair>();
+    vals.add(new BasicNameValuePair("tool", "rnaview"));
+    vals.add(new BasicNameValuePair("pdbid", pdbid));
+    vals.add(new BasicNameValuePair("output", "rnaml"));
+    java.net.URL geturl = new URL(twoDtoolsURL + "?tool=rnaview&pdbid="
+            + pdbid + "&output=rnaml");
+    // return processJsonResponseFor(new
+    // InputStreamReader(geturl.openStream()));
+    ArrayList<Reader> readers = new ArrayList<Reader>();
+    readers.add(new InputStreamReader(geturl.openStream()));
+    return readers.iterator();
+  }
+
+}
diff --git a/src/jalview/ext/rbvi/chimera/ChimeraCommands.java b/src/jalview/ext/rbvi/chimera/ChimeraCommands.java
new file mode 100644 (file)
index 0000000..d3c8c09
--- /dev/null
@@ -0,0 +1,158 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
+package jalview.ext.rbvi.chimera;
+
+import jalview.api.FeatureRenderer;
+import jalview.api.SequenceRenderer;
+import jalview.api.structures.JalviewStructureDisplayI;
+import jalview.datamodel.AlignmentI;
+import jalview.datamodel.SequenceI;
+import jalview.structure.StructureMapping;
+import jalview.structure.StructureMappingcommandSet;
+import jalview.structure.StructureSelectionManager;
+import jalview.util.Format;
+
+import java.awt.Color;
+import java.util.ArrayList;
+import java.util.Hashtable;
+
+/**
+ * Routines for generating Chimera commands for Jalview/Chimera binding
+ * 
+ * @author JimP
+ * 
+ */
+public class ChimeraCommands
+{
+
+  /**
+   * utility to construct the commands to colour chains by the given alignment
+   * for passing to Chimera
+   * 
+   * @returns Object[] { Object[] { <model being coloured>,
+   * 
+   */
+  public static StructureMappingcommandSet[] getColourBySequenceCommand(
+          StructureSelectionManager ssm, String[] files,
+          SequenceI[][] sequence, SequenceRenderer sr, FeatureRenderer fr,
+          AlignmentI alignment)
+  {
+
+    ArrayList<StructureMappingcommandSet> cset = new ArrayList<StructureMappingcommandSet>();
+    Hashtable<String,StringBuffer> colranges=new Hashtable<String,StringBuffer>();
+    for (int pdbfnum = 0; pdbfnum < files.length; pdbfnum++)
+    {
+      float cols[] = new float[4];
+      StructureMapping[] mapping = ssm.getMapping(files[pdbfnum]);
+      StringBuffer command = new StringBuffer();
+      StructureMappingcommandSet smc;
+      ArrayList<String> str = new ArrayList<String>();
+
+      if (mapping == null || mapping.length < 1)
+        continue;
+
+      int startPos = -1, lastPos = -1, startModel = -1, lastModel = -1;
+      String startChain = "", lastChain = "";
+      Color lastCol = null;
+      for (int s = 0; s < sequence[pdbfnum].length; s++)
+      {
+        for (int sp, m = 0; m < mapping.length; m++)
+        {
+          if (mapping[m].getSequence() == sequence[pdbfnum][s]
+                  && (sp = alignment.findIndex(sequence[pdbfnum][s])) > -1)
+          {
+            SequenceI asp = alignment.getSequenceAt(sp);
+            for (int r = 0; r < asp.getLength(); r++)
+            {
+              // no mapping to gaps in sequence
+              if (jalview.util.Comparison.isGap(asp.getCharAt(r)))
+              {
+                continue;
+              }
+              int pos = mapping[m].getPDBResNum(asp.findPosition(r));
+
+              if (pos < 1 || pos == lastPos)
+                continue;
+
+              Color col = sr.getResidueBoxColour(sequence[pdbfnum][s], r);
+
+              if (fr != null)
+                col = fr.findFeatureColour(col, sequence[pdbfnum][s], r);
+              if (lastCol != col || lastPos + 1 != pos
+                      || pdbfnum != lastModel
+                      || !mapping[m].getChain().equals(lastChain))
+              {
+                if (lastCol != null)
+                {
+                  addColourRange(colranges, lastCol,startModel,startPos,lastPos,lastChain); 
+                }
+                lastCol = null;
+                startPos = pos;
+                startModel = pdbfnum;
+                startChain = mapping[m].getChain();
+              }
+              lastCol = col;
+              lastPos = pos;
+              lastModel = pdbfnum;
+              lastChain = mapping[m].getChain();
+            }
+            // final colour range
+            if (lastCol != null)
+            {
+              addColourRange(colranges, lastCol,startModel,startPos,lastPos,lastChain); 
+            }
+            break;
+          }
+        }
+      }
+      // Finally, add the command set ready to be returned.
+      StringBuffer coms=new StringBuffer();
+      for (String cr:colranges.keySet())
+      {
+        coms.append("color #"+cr+" "+colranges.get(cr)+";");
+      }
+      cset.add(new StructureMappingcommandSet(ChimeraCommands.class,
+              files[pdbfnum], new String[] { coms.toString() }));
+    }
+    return cset.toArray(new StructureMappingcommandSet[cset.size()]);
+  }
+
+  private static void addColourRange(Hashtable<String, StringBuffer> colranges, Color lastCol, int startModel,
+          int startPos, int lastPos, String lastChain)
+  {
+    
+    String colstring = ((lastCol.getRed()< 16) ? "0":"")+Integer.toHexString(lastCol.getRed())
+            + ((lastCol.getGreen()< 16) ? "0":"")+Integer.toHexString(lastCol.getGreen())
+            + ((lastCol.getBlue()< 16) ? "0":"")+Integer.toHexString(lastCol.getBlue());
+    StringBuffer currange = colranges.get(colstring);
+    if (currange==null)
+    {
+      colranges.put(colstring,currange = new StringBuffer());
+    }
+    if (currange.length()>0)
+    {
+      currange.append("|");
+    }
+    currange.append("#" + startModel + ":" + ((startPos==lastPos) ? startPos : startPos + "-"
+            + lastPos) + "." + lastChain);
+  }
+
+}
diff --git a/src/jalview/ext/rbvi/chimera/JalviewChimeraBinding.java b/src/jalview/ext/rbvi/chimera/JalviewChimeraBinding.java
new file mode 100644 (file)
index 0000000..a39f355
--- /dev/null
@@ -0,0 +1,1431 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
+package jalview.ext.rbvi.chimera;
+
+import jalview.api.AlignmentViewPanel;
+import jalview.api.FeatureRenderer;
+import jalview.api.SequenceRenderer;
+import jalview.api.SequenceStructureBinding;
+import jalview.api.StructureSelectionManagerProvider;
+import jalview.datamodel.AlignmentI;
+import jalview.datamodel.ColumnSelection;
+import jalview.datamodel.PDBEntry;
+import jalview.datamodel.SequenceI;
+import jalview.io.AppletFormatAdapter;
+import jalview.schemes.ColourSchemeI;
+import jalview.schemes.ResidueProperties;
+import jalview.structure.StructureListener;
+import jalview.structure.StructureMapping;
+import jalview.structure.StructureSelectionManager;
+import jalview.structures.models.SequenceStructureBindingModel;
+import jalview.util.MessageManager;
+
+import java.awt.Color;
+import java.awt.event.ComponentEvent;
+import java.io.File;
+import java.util.ArrayList;
+import java.util.Enumeration;
+import java.util.HashMap;
+import java.util.Hashtable;
+import java.util.List;
+import java.util.Map;
+import java.util.Vector;
+
+import ext.edu.ucsf.rbvi.strucviz2.ChimeraManager;
+import ext.edu.ucsf.rbvi.strucviz2.ChimeraModel;
+import ext.edu.ucsf.rbvi.strucviz2.StructureManager;
+import ext.edu.ucsf.rbvi.strucviz2.StructureManager.ModelType;
+
+public abstract class JalviewChimeraBinding extends
+        SequenceStructureBindingModel implements StructureListener,
+        SequenceStructureBinding, StructureSelectionManagerProvider
+
+{
+  private StructureManager csm;
+
+  private ChimeraManager viewer;
+
+  /**
+   * set if chimera state is being restored from some source - instructs binding
+   * not to apply default display style when structure set is updated for first
+   * time.
+   */
+  private boolean loadingFromArchive = false;
+
+  /**
+   * second flag to indicate if the jmol viewer should ignore sequence colouring
+   * events from the structure manager because the GUI is still setting up
+   */
+  private boolean loadingFinished = true;
+
+  /**
+   * state flag used to check if the Jmol viewer's paint method can be called
+   */
+  private boolean finishedInit = false;
+
+  public boolean isFinishedInit()
+  {
+    return finishedInit;
+  }
+
+  public void setFinishedInit(boolean finishedInit)
+  {
+    this.finishedInit = finishedInit;
+  }
+
+  boolean allChainsSelected = false;
+
+  /**
+   * when true, try to search the associated datamodel for sequences that are
+   * associated with any unknown structures in the Jmol view.
+   */
+  private boolean associateNewStructs = false;
+
+  Vector atomsPicked = new Vector();
+
+  public Vector chainNames;
+
+  Hashtable chainFile;
+
+  /**
+   * array of target chains for seuqences - tied to pdbentry and sequence[]
+   */
+  protected String[][] chains;
+
+  boolean colourBySequence = true;
+
+  StringBuffer eval = new StringBuffer();
+
+  public String fileLoadingError;
+
+  private Map<String, List<ChimeraModel>> chimmaps = new HashMap<String, List<ChimeraModel>>();
+
+  private List<String> mdlToFile = new ArrayList<String>();
+
+  /**
+   * the default or current model displayed if the model cannot be identified
+   * from the selection message
+   */
+  int frameNo = 0;
+
+  String lastCommand;
+
+  String lastMessage;
+
+  boolean loadedInline;
+
+  public boolean openFile(PDBEntry pe)
+  {
+    String file = pe.getFile();
+    try
+    {
+      List<ChimeraModel> oldList = viewer.getModelList();
+      viewer.openModel(file, ModelType.PDB_MODEL);
+      List<ChimeraModel> newList = viewer.getModelList();
+      if (oldList.size() < newList.size())
+      {
+        while (oldList.size() > 0)
+        {
+          oldList.remove(0);
+          newList.remove(0);
+        }
+        chimmaps.put(file, newList);
+        for (ChimeraModel cm : newList)
+        {
+          while (mdlToFile.size() < 1 + cm.getModelNumber())
+          {
+            mdlToFile.add(new String(""));
+          }
+          mdlToFile.set(cm.getModelNumber(), file);
+        }
+
+        File fl = new File(file);
+        String protocol = AppletFormatAdapter.URL;
+        try
+        {
+          if (fl.exists())
+          {
+            protocol = AppletFormatAdapter.FILE;
+          }
+        } catch (Exception e)
+        {
+        } catch (Error e)
+        {
+        }
+        // Explicitly map to the filename used by Jmol ;
+        // pdbentry[pe].getFile(), protocol);
+
+        if (ssm != null)
+        {
+          ssm.addStructureViewerListener(this);
+          // ssm.addSelectionListener(this);
+          FeatureRenderer fr = getFeatureRenderer(null);
+          if (fr != null)
+          {
+            fr.featuresAdded();
+          }
+          refreshGUI();
+        }
+        return true;
+      }
+    } catch (Exception q)
+    {
+      log("Exception when trying to open model " + file + "\n"
+              + q.toString());
+      q.printStackTrace();
+    }
+    return false;
+  }
+
+  /**
+   * current set of model filenames loaded
+   */
+  String[] modelFileNames = null;
+
+  public PDBEntry[] pdbentry;
+
+  /**
+   * datasource protocol for access to PDBEntrylatest
+   */
+  String protocol = null;
+
+  StringBuffer resetLastRes = new StringBuffer();
+
+  /**
+   * sequences mapped to each pdbentry
+   */
+  public SequenceI[][] sequence;
+
+  public StructureSelectionManager ssm;
+
+  private List<String> lastReply;
+
+  public JalviewChimeraBinding(StructureSelectionManager ssm,
+          PDBEntry[] pdbentry, SequenceI[][] sequenceIs, String[][] chains,
+          String protocol)
+  {
+    this.ssm = ssm;
+    this.sequence = sequenceIs;
+    this.chains = chains;
+    this.pdbentry = pdbentry;
+    this.protocol = protocol;
+    if (chains == null)
+    {
+      this.chains = new String[pdbentry.length][];
+    }
+    viewer = new ChimeraManager(
+            csm = new ext.edu.ucsf.rbvi.strucviz2.StructureManager(true));
+    /*
+     * viewer = JmolViewer.allocateViewer(renderPanel, new SmarterJmolAdapter(),
+     * "jalviewJmol", ap.av.applet .getDocumentBase(),
+     * ap.av.applet.getCodeBase(), "", this);
+     * 
+     * jmolpopup = JmolPopup.newJmolPopup(viewer, true, "Jmol", true);
+     */
+  }
+
+  public JalviewChimeraBinding(StructureSelectionManager ssm,
+          ChimeraManager viewer2)
+  {
+    this.ssm = ssm;
+    viewer = viewer2;
+    csm = viewer.getStructureManager();
+  }
+
+  /**
+   * construct a title string for the viewer window based on the data jalview
+   * knows about
+   * 
+   * @return
+   */
+  public String getViewerTitle()
+  {
+    if (sequence == null || pdbentry == null || sequence.length < 1
+            || pdbentry.length < 1 || sequence[0].length < 1)
+    {
+      return ("Jalview Chimera Window");
+    }
+    // TODO: give a more informative title when multiple structures are
+    // displayed.
+    StringBuffer title = new StringBuffer("Chimera view for "
+            + sequence[0][0].getName() + ":" + pdbentry[0].getId());
+
+    if (pdbentry[0].getProperty() != null)
+    {
+      if (pdbentry[0].getProperty().get("method") != null)
+      {
+        title.append(" Method: ");
+        title.append(pdbentry[0].getProperty().get("method"));
+      }
+      if (pdbentry[0].getProperty().get("chains") != null)
+      {
+        title.append(" Chain:");
+        title.append(pdbentry[0].getProperty().get("chains"));
+      }
+    }
+    return title.toString();
+  }
+
+  /**
+   * prepare the view for a given set of models/chains. chainList contains
+   * strings of the form 'pdbfilename:Chaincode'
+   * 
+   * @param chainList
+   *          list of chains to make visible
+   */
+  public void centerViewer(Vector chainList)
+  {
+    StringBuffer cmd = new StringBuffer();
+    String lbl;
+    int mlength, p;
+    for (int i = 0, iSize = chainList.size(); i < iSize; i++)
+    {
+      mlength = 0;
+      lbl = (String) chainList.elementAt(i);
+      do
+      {
+        p = mlength;
+        mlength = lbl.indexOf(":", p);
+      } while (p < mlength && mlength < (lbl.length() - 2));
+      // TODO: lookup each pdb id and recover proper model number for it.
+      cmd.append("#" + getModelNum((String) chainFile.get(lbl)) + "."
+              + lbl.substring(mlength + 1) + " or ");
+    }
+    if (cmd.length() > 0)
+      cmd.setLength(cmd.length() - 4);
+    evalStateCommand("~display #*; ~ribbon #*; ribbon " + cmd + ";focus "
+            + cmd,false);
+  }
+
+  public void closeViewer()
+  {
+    ssm.removeStructureViewerListener(this, this.getPdbFile());
+    // and shut down Chimera
+    viewer.exitChimera();
+    // viewer.evalStringQuiet("zap");
+    // viewer.setJmolStatusListener(null);
+    lastCommand = null;
+    viewer = null;
+    releaseUIResources();
+  }
+
+  /**
+   * called by JalviewJmolbinding after closeViewer is called - release any
+   * resources and references so they can be garbage collected.
+   */
+  protected abstract void releaseUIResources();
+
+  public void colourByChain()
+  {
+    colourBySequence = false;
+    // TODO: colour by chain should colour each chain distinctly across all
+    // visible models
+    // TODO: http://issues.jalview.org/browse/JAL-628
+    evalStateCommand("select *;color chain",false);
+  }
+
+  public void colourByCharge()
+  {
+    colourBySequence = false;
+    evalStateCommand("colour *;color white;select ASP,GLU;color red;"
+            + "select LYS,ARG;color blue;select CYS;color yellow", false);
+  }
+
+  /**
+   * superpose the structures associated with sequences in the alignment
+   * according to their corresponding positions.
+   */
+  public void superposeStructures(AlignmentI alignment)
+  {
+    superposeStructures(alignment, -1, null);
+  }
+
+  /**
+   * superpose the structures associated with sequences in the alignment
+   * according to their corresponding positions. ded)
+   * 
+   * @param refStructure
+   *          - select which pdb file to use as reference (default is -1 - the
+   *          first structure in the alignment)
+   */
+  public void superposeStructures(AlignmentI alignment, int refStructure)
+  {
+    superposeStructures(alignment, refStructure, null);
+  }
+
+  /**
+   * superpose the structures associated with sequences in the alignment
+   * according to their corresponding positions. ded)
+   * 
+   * @param refStructure
+   *          - select which pdb file to use as reference (default is -1 - the
+   *          first structure in the alignment)
+   * @param hiddenCols
+   *          TODO
+   */
+  public void superposeStructures(AlignmentI alignment, int refStructure,
+          ColumnSelection hiddenCols)
+  {
+    superposeStructures(new AlignmentI[]
+    { alignment }, new int[]
+    { refStructure }, new ColumnSelection[]
+    { hiddenCols });
+  }
+
+  public void superposeStructures(AlignmentI[] _alignment,
+          int[] _refStructure, ColumnSelection[] _hiddenCols)
+  {
+    assert (_alignment.length == _refStructure.length && _alignment.length != _hiddenCols.length);
+    StringBuffer allComs = new StringBuffer(); // whole shebang for superposition
+    String[] files = getPdbFile();
+    // check to see if we are still waiting for Jmol files
+    long starttime = System.currentTimeMillis();
+    boolean waiting = true;
+    do
+    {
+      waiting = false;
+      for (String file : files)
+      {
+        try
+        {
+          // HACK - in Jalview 2.8 this call may not be threadsafe so we catch
+          // every possible exception
+          StructureMapping[] sm = ssm.getMapping(file);
+          if (sm == null || sm.length == 0)
+          {
+            waiting = true;
+          }
+        } catch (Exception x)
+        {
+          waiting = true;
+        } catch (Error q)
+        {
+          waiting = true;
+        }
+      }
+      // we wait around for a reasonable time before we give up
+    } while (waiting
+            && System.currentTimeMillis() < (10000 + 1000 * files.length + starttime));
+    if (waiting)
+    {
+      System.err
+              .println("RUNTIME PROBLEM: Jmol seems to be taking a long time to process all the structures.");
+      return;
+    }
+    refreshPdbEntries();
+    StringBuffer selectioncom = new StringBuffer();
+    for (int a = 0; a < _alignment.length; a++)
+    {
+      int refStructure = _refStructure[a];
+      AlignmentI alignment = _alignment[a];
+      ColumnSelection hiddenCols = _hiddenCols[a];
+      if (a > 0
+              && selectioncom.length() > 0
+              && !selectioncom.substring(selectioncom.length() - 1).equals(
+                      " "))
+      {
+        selectioncom.append(" ");
+      }
+      // process this alignment
+      if (refStructure >= files.length)
+      {
+        System.err.println("Invalid reference structure value "
+                + refStructure);
+        refStructure = -1;
+      }
+      if (refStructure < -1)
+      {
+        refStructure = -1;
+      }
+      StringBuffer command = new StringBuffer();
+
+      boolean matched[] = new boolean[alignment.getWidth()];
+      for (int m = 0; m < matched.length; m++)
+      {
+
+        matched[m] = (hiddenCols != null) ? hiddenCols.isVisible(m) : true;
+      }
+
+      int commonrpositions[][] = new int[files.length][alignment.getWidth()];
+      String isel[] = new String[files.length];
+      // reference structure - all others are superposed in it
+      String[] targetC = new String[files.length];
+      String[] chainNames = new String[files.length];
+      String[] atomS = new String[files.length];
+      for (int pdbfnum = 0; pdbfnum < files.length; pdbfnum++)
+      {
+        StructureMapping[] mapping = ssm.getMapping(files[pdbfnum]);
+        // RACE CONDITION - getMapping only returns Jmol loaded filenames once
+        // Jmol callback has completed.
+        if (mapping == null || mapping.length < 1)
+        {
+          throw new Error(MessageManager.getString("error.implementation_error_chimera_getting_data"));
+        }
+        int lastPos = -1;
+        for (int s = 0; s < sequence[pdbfnum].length; s++)
+        {
+          for (int sp, m = 0; m < mapping.length; m++)
+          {
+            if (mapping[m].getSequence() == sequence[pdbfnum][s]
+                    && (sp = alignment.findIndex(sequence[pdbfnum][s])) > -1)
+            {
+              if (refStructure == -1)
+              {
+                refStructure = pdbfnum;
+              }
+              SequenceI asp = alignment.getSequenceAt(sp);
+              for (int r = 0; r < matched.length; r++)
+              {
+                if (!matched[r])
+                {
+                  continue;
+                }
+                matched[r] = false; // assume this is not a good site
+                if (r >= asp.getLength())
+                {
+                  continue;
+                }
+
+                if (jalview.util.Comparison.isGap(asp.getCharAt(r)))
+                {
+                  // no mapping to gaps in sequence
+                  continue;
+                }
+                int t = asp.findPosition(r); // sequence position
+                int apos = mapping[m].getAtomNum(t);
+                int pos = mapping[m].getPDBResNum(t);
+
+                if (pos < 1 || pos == lastPos)
+                {
+                  // can't align unmapped sequence
+                  continue;
+                }
+                matched[r] = true; // this is a good ite
+                lastPos = pos;
+                // just record this residue position
+                commonrpositions[pdbfnum][r] = pos;
+              }
+              // create model selection suffix
+              isel[pdbfnum] = "#" + pdbfnum;
+              if (mapping[m].getChain() == null
+                      || mapping[m].getChain().trim().length() == 0)
+              {
+                targetC[pdbfnum] = "";
+              }
+              else
+              {
+                targetC[pdbfnum] = "." + mapping[m].getChain();
+              }
+              chainNames[pdbfnum] = mapping[m].getPdbId()
+                      + targetC[pdbfnum];
+              atomS[pdbfnum] = asp.getRNA()!=null ? "P" : "CA";
+              // move on to next pdb file
+              s = sequence[pdbfnum].length;
+              break;
+            }
+          }
+        }
+      }
+
+      // TODO: consider bailing if nmatched less than 4 because superposition
+      // not
+      // well defined.
+      // TODO: refactor superposable position search (above) from jmol selection
+      // construction (below)
+
+      String[] selcom = new String[files.length];
+      int nmatched = 0;
+      String sep = "";
+      // generate select statements to select regions to superimpose structures
+      {
+        for (int pdbfnum = 0; pdbfnum < files.length; pdbfnum++)
+        {
+          String chainCd = targetC[pdbfnum];
+          int lpos = -1;
+          boolean run = false;
+          StringBuffer molsel = new StringBuffer();
+          for (int r = 0; r < matched.length; r++)
+          {
+            if (matched[r])
+            {
+              if (pdbfnum == 0)
+              {
+                nmatched++;
+              }
+              if (lpos != commonrpositions[pdbfnum][r] - 1)
+              {
+                // discontinuity
+                if (lpos != -1)
+                {
+                  molsel.append((run ? "" : ":") + lpos);
+                  molsel.append(chainCd);
+                  molsel.append(",");
+                }
+              }
+              else
+              {
+                // continuous run - and lpos >-1
+                if (!run)
+                {
+                  // at the beginning, so add dash
+                  molsel.append(":" + lpos);
+                  molsel.append("-");
+                }
+                run = true;
+              }
+              lpos = commonrpositions[pdbfnum][r];
+              // molsel.append(lpos);
+            }
+          }
+          // add final selection phrase
+          if (lpos != -1)
+          {
+            molsel.append((run ? "" : ":") + lpos);
+            molsel.append(chainCd);
+            // molsel.append("");
+          }
+          if (molsel.length() > 1)
+          {
+            selcom[pdbfnum] = molsel.toString();
+            selectioncom.append("#" + pdbfnum);
+            selectioncom.append(selcom[pdbfnum]);
+            selectioncom.append(" ");
+            if (pdbfnum < files.length - 1)
+            {
+              selectioncom.append("| ");
+            }
+          }
+          else
+          {
+            selcom[pdbfnum] = null;
+          }
+        }
+      }
+      for (int pdbfnum = 0; pdbfnum < files.length; pdbfnum++)
+      {
+        if (pdbfnum == refStructure || selcom[pdbfnum] == null
+                || selcom[refStructure] == null)
+        {
+          continue;
+        }
+        if (command.length()>0)
+        {
+          command.append(";");
+        }
+        command.append("match");
+
+        // form the matched pair strings
+        for (int s = 0; s < 2; s++)
+        {
+          command.append(" #"+(s == 0 ? pdbfnum : refStructure)+".1");
+          // note - need to select on first model, otherwise it all goes wrong!
+          command.append(selcom[(s == 0 ? pdbfnum : refStructure)]);
+          command.append("@"+atomS[(s == 0 ? pdbfnum : refStructure)]); // match on backbone alpha/polyphosphate
+        }
+      }
+      if (selectioncom.length() > 0)
+      {
+        System.out.println("Select regions:\n" + selectioncom.toString());
+        System.out
+                .println("Superimpose command(s):\n" + command.toString());
+        allComs.append("~display all; chain @CA|P; ribbon "
+                + selectioncom.toString() + ";"+command.toString());
+        // selcom.append("; ribbons; ");
+      }
+    }
+    if (selectioncom.length() > 0)
+    {// finally, mark all regions that were superposed.
+      if (selectioncom.substring(selectioncom.length() - 1).equals("|"))
+      {
+        selectioncom.setLength(selectioncom.length() - 1);
+      }
+      System.out.println("Select regions:\n" + selectioncom.toString());
+      allComs.append("; ~display all; chain @CA|P; ribbon "
+              + selectioncom.toString() + "");
+      // evalStateCommand("select *; backbone; select "+selcom.toString()+"; cartoons; center "+selcom.toString());
+      evalStateCommand(allComs.toString(),false);
+    }
+    
+  }
+
+  private void checkLaunched()
+  {
+    if (!viewer.isChimeraLaunched())
+    {
+      viewer.launchChimera(csm.getChimeraPaths());
+    }
+    if (!viewer.isChimeraLaunched())
+    {
+      log("Failed to launch Chimera!");
+    }
+  }
+
+  public void evalStateCommand(final String command, boolean resp)
+  {
+    viewerCommandHistory(false);
+    checkLaunched();
+    if (lastCommand == null || !lastCommand.equals(command))
+    {
+//      Thread t = new Thread(new Runnable()
+//      {
+//        @Override
+//        public void run()
+//        {
+          lastReply = viewer.sendChimeraCommand(command, resp);
+          if (debug)
+          {
+            log("Response from command ('" + command + "') was:\n"
+                    + lastReply);
+          }
+//        }
+//      });
+      // TODO - use j7/8 thread management
+//      try
+//      {
+//        t.join();
+//      } catch (InterruptedException foo)
+//      {
+//      }
+//      ;
+    }
+    viewerCommandHistory(true);
+    lastCommand = command;
+  }
+
+  /**
+   * colour any structures associated with sequences in the given alignment
+   * using the getFeatureRenderer() and getSequenceRenderer() renderers but only
+   * if colourBySequence is enabled.
+   */
+  public void colourBySequence(boolean showFeatures,
+          jalview.api.AlignmentViewPanel alignmentv)
+  {
+    if (!colourBySequence || !loadingFinished)
+      return;
+    if (ssm == null)
+    {
+      return;
+    }
+    String[] files = getPdbFile();
+
+    SequenceRenderer sr = getSequenceRenderer(alignmentv);
+
+    FeatureRenderer fr = null;
+    if (showFeatures)
+    {
+      fr = getFeatureRenderer(alignmentv);
+    }
+    AlignmentI alignment = alignmentv.getAlignment();
+
+    for (jalview.structure.StructureMappingcommandSet cpdbbyseq : ChimeraCommands
+            .getColourBySequenceCommand(ssm, files, sequence, sr, fr,
+                    alignment))
+      for (String cbyseq : cpdbbyseq.commands)
+      {
+        waitForChimera();
+        evalStateCommand(cbyseq, false);
+        waitForChimera();
+      }
+  }
+
+  private void waitForChimera()
+  {
+    while (viewer.isBusy())
+    {
+      try {
+        Thread.sleep(15);
+      } catch (InterruptedException q)
+      {}
+    }
+  }
+
+  public boolean isColourBySequence()
+  {
+    return colourBySequence;
+  }
+
+  public void setColourBySequence(boolean colourBySequence)
+  {
+    this.colourBySequence = colourBySequence;
+  }
+
+  public void createImage(String file, String type, int quality)
+  {
+    System.out.println("JMOL CREATE IMAGE");
+  }
+
+  public String createImage(String fileName, String type,
+          Object textOrBytes, int quality)
+  {
+    System.out.println("JMOL CREATE IMAGE");
+    return null;
+  }
+
+  public String eval(String strEval)
+  {
+    // System.out.println(strEval);
+    // "# 'eval' is implemented only for the applet.";
+    return null;
+  }
+
+  // End StructureListener
+  // //////////////////////////
+
+  public float[][] functionXY(String functionName, int x, int y)
+  {
+    return null;
+  }
+
+  public float[][][] functionXYZ(String functionName, int nx, int ny, int nz)
+  {
+    // TODO Auto-generated method stub
+    return null;
+  }
+
+  public Color getColour(int atomIndex, int pdbResNum, String chain,
+          String pdbfile)
+  {
+    if (getModelNum(pdbfile) < 0)
+      return null;
+    log("get model / residue colour attribute unimplemented");
+    return null;
+  }
+
+  /**
+   * returns the current featureRenderer that should be used to colour the
+   * structures
+   * 
+   * @param alignment
+   * 
+   * @return
+   */
+  public abstract FeatureRenderer getFeatureRenderer(
+          AlignmentViewPanel alignment);
+
+  /**
+   * instruct the Jalview binding to update the pdbentries vector if necessary
+   * prior to matching the jmol view's contents to the list of structure files
+   * Jalview knows about.
+   */
+  public abstract void refreshPdbEntries();
+
+  private int getModelNum(String modelFileName)
+  {
+    String[] mfn = getPdbFile();
+    if (mfn == null)
+    {
+      return -1;
+    }
+    for (int i = 0; i < mfn.length; i++)
+    {
+      if (mfn[i].equalsIgnoreCase(modelFileName))
+        return i;
+    }
+    return -1;
+  }
+
+  /**
+   * map between index of model filename returned from getPdbFile and the first
+   * index of models from this file in the viewer. Note - this is not trimmed -
+   * use getPdbFile to get number of unique models.
+   */
+  private int _modelFileNameMap[];
+
+  // ////////////////////////////////
+  // /StructureListener
+  public synchronized String[] getPdbFile()
+  {
+    if (viewer == null)
+    {
+      return new String[0];
+    }
+    // if (modelFileNames == null)
+    // {
+    // Collection<ChimeraModel> chimodels = viewer.getChimeraModels();
+    // _modelFileNameMap = new int[chimodels.size()];
+    // int j = 0;
+    // for (ChimeraModel chimodel : chimodels)
+    // {
+    // String mdlName = chimodel.getModelName();
+    // }
+    // modelFileNames = new String[j];
+    // // System.arraycopy(mset, 0, modelFileNames, 0, j);
+    // }
+
+    return chimmaps.keySet().toArray(
+            modelFileNames = new String[chimmaps.size()]);
+  }
+
+  /**
+   * map from string to applet
+   */
+  public Map getRegistryInfo()
+  {
+    // TODO Auto-generated method stub
+    return null;
+  }
+
+  /**
+   * returns the current sequenceRenderer that should be used to colour the
+   * structures
+   * 
+   * @param alignment
+   * 
+   * @return
+   */
+  public abstract SequenceRenderer getSequenceRenderer(
+          AlignmentViewPanel alignment);
+
+  // jmol/ssm only
+  public void highlightAtom(int atomIndex, int pdbResNum, String chain,
+          String pdbfile)
+  {
+    List<ChimeraModel> cms = chimmaps.get(pdbfile);
+    if (cms != null)
+    {
+      int mdlNum = cms.get(0).getModelNumber();
+
+      viewerCommandHistory(false);
+      // viewer.stopListening();
+      if (resetLastRes.length() > 0)
+      {
+        eval.setLength(0);
+        eval.append(resetLastRes.toString() + ";");
+      }
+
+      eval.append("display "); // +modelNum
+
+      resetLastRes.setLength(0);
+      resetLastRes.append("~display ");
+      {
+        eval.append(" #" + (mdlNum));
+        resetLastRes.append(" #" + (mdlNum));
+      }
+      // complete select string
+
+      eval.append(":" + pdbResNum);
+      resetLastRes.append(":" + pdbResNum);
+      if (!chain.equals(" "))
+      {
+        eval.append("." + chain);
+        resetLastRes.append("." + chain);
+      }
+      
+      viewer.sendChimeraCommand(eval.toString(), false);
+      viewerCommandHistory(true);
+      // viewer.startListening();
+    }
+  }
+
+  boolean debug = true;
+
+  private void log(String message)
+  {
+    System.err.println("## Chimera log: " + message);
+  }
+
+  private void viewerCommandHistory(boolean enable)
+  {
+    log("(Not yet implemented) History "
+            + ((debug || enable) ? "on" : "off"));
+  }
+
+  public void loadInline(String string)
+  {
+    loadedInline = true;
+    // TODO: re JAL-623
+    // viewer.loadInline(strModel, isAppend);
+    // could do this:
+    // construct fake fullPathName and fileName so we can identify the file
+    // later.
+    // Then, construct pass a reader for the string to Jmol.
+    // ((org.jmol.Viewer.Viewer) viewer).loadModelFromFile(fullPathName,
+    // fileName, null, reader, false, null, null, 0);
+    // viewer.openStringInline(string);
+    log("cannot load inline in Chimera, yet");
+  }
+
+  public void mouseOverStructure(int atomIndex, String strInfo)
+  {
+    // function to parse a mouseOver event from Chimera
+    //
+    int pdbResNum;
+    int alocsep = strInfo.indexOf("^");
+    int mdlSep = strInfo.indexOf("/");
+    int chainSeparator = strInfo.indexOf(":"), chainSeparator1 = -1;
+
+    if (chainSeparator == -1)
+    {
+      chainSeparator = strInfo.indexOf(".");
+      if (mdlSep > -1 && mdlSep < chainSeparator)
+      {
+        chainSeparator1 = chainSeparator;
+        chainSeparator = mdlSep;
+      }
+    }
+    // handle insertion codes
+    if (alocsep != -1)
+    {
+      pdbResNum = Integer.parseInt(strInfo.substring(
+              strInfo.indexOf("]") + 1, alocsep));
+
+    }
+    else
+    {
+      pdbResNum = Integer.parseInt(strInfo.substring(
+              strInfo.indexOf("]") + 1, chainSeparator));
+    }
+    String chainId;
+
+    if (strInfo.indexOf(":") > -1)
+      chainId = strInfo.substring(strInfo.indexOf(":") + 1,
+              strInfo.indexOf("."));
+    else
+    {
+      chainId = " ";
+    }
+
+    String pdbfilename = modelFileNames[frameNo]; // default is first or current
+    // model
+    if (mdlSep > -1)
+    {
+      if (chainSeparator1 == -1)
+      {
+        chainSeparator1 = strInfo.indexOf(".", mdlSep);
+      }
+      String mdlId = (chainSeparator1 > -1) ? strInfo.substring(mdlSep + 1,
+              chainSeparator1) : strInfo.substring(mdlSep + 1);
+      try
+      {
+        // recover PDB filename for the model hovered over.
+        int _mp = _modelFileNameMap.length - 1, mnumber = new Integer(mdlId)
+                .intValue() - 1;
+        while (mnumber < _modelFileNameMap[_mp])
+        {
+          _mp--;
+        }
+        pdbfilename = modelFileNames[_mp];
+        if (pdbfilename == null)
+        {
+          // pdbfilename = new File(viewer.getModelFileName(mnumber))
+          // .getAbsolutePath();
+        }
+
+      } catch (Exception e)
+      {
+      }
+      ;
+    }
+    if (lastMessage == null || !lastMessage.equals(strInfo))
+      ssm.mouseOverStructure(pdbResNum, chainId, pdbfilename);
+
+    lastMessage = strInfo;
+  }
+
+  public void notifyAtomPicked(int atomIndex, String strInfo, String strData)
+  {
+    /**
+     * this implements the toggle label behaviour copied from the original
+     * structure viewer, MCView
+     */
+    if (strData != null)
+    {
+      System.err.println("Ignoring additional pick data string " + strData);
+    }
+    // rewrite these selections for chimera (DNA, RNA and protein)
+    int chainSeparator = strInfo.indexOf(":");
+    int p = 0;
+    if (chainSeparator == -1)
+      chainSeparator = strInfo.indexOf(".");
+
+    String picked = strInfo.substring(strInfo.indexOf("]") + 1,
+            chainSeparator);
+    String mdlString = "";
+    if ((p = strInfo.indexOf(":")) > -1)
+      picked += strInfo.substring(p + 1, strInfo.indexOf("."));
+
+    if ((p = strInfo.indexOf("/")) > -1)
+    {
+      mdlString += strInfo.substring(p, strInfo.indexOf(" #"));
+    }
+    picked = "((" + picked + ".CA" + mdlString + ")|(" + picked + ".P"
+            + mdlString + "))";
+    viewerCommandHistory(false);
+
+    if (!atomsPicked.contains(picked))
+    {
+      viewer.select(picked);
+      atomsPicked.addElement(picked);
+    }
+    else
+    {
+      viewer.select("not " + picked);
+      atomsPicked.removeElement(picked);
+    }
+    viewerCommandHistory(true);
+    // TODO: in application this happens
+    //
+    // if (scriptWindow != null)
+    // {
+    // scriptWindow.sendConsoleMessage(strInfo);
+    // scriptWindow.sendConsoleMessage("\n");
+    // }
+
+  }
+
+  // incremented every time a load notification is successfully handled -
+  // lightweight mechanism for other threads to detect when they can start
+  // referrring to new structures.
+  private long loadNotifiesHandled = 0;
+
+  public long getLoadNotifiesHandled()
+  {
+    return loadNotifiesHandled;
+  }
+
+  public void notifyFileLoaded(String fullPathName, String fileName2,
+          String modelName, String errorMsg, int modelParts)
+  {
+    if (errorMsg != null)
+    {
+      fileLoadingError = errorMsg;
+      refreshGUI();
+      return;
+    }
+    // TODO: deal sensibly with models loaded inLine:
+    // modelName will be null, as will fullPathName.
+
+    // the rest of this routine ignores the arguments, and simply interrogates
+    // the Jmol view to find out what structures it contains, and adds them to
+    // the structure selection manager.
+    fileLoadingError = null;
+    String[] oldmodels = modelFileNames;
+    modelFileNames = null;
+    chainNames = new Vector();
+    chainFile = new Hashtable();
+    boolean notifyLoaded = false;
+    String[] modelfilenames = getPdbFile();
+    // first check if we've lost any structures
+    if (oldmodels != null && oldmodels.length > 0)
+    {
+      int oldm = 0;
+      for (int i = 0; i < oldmodels.length; i++)
+      {
+        for (int n = 0; n < modelfilenames.length; n++)
+        {
+          if (modelfilenames[n] == oldmodels[i])
+          {
+            oldmodels[i] = null;
+            break;
+          }
+        }
+        if (oldmodels[i] != null)
+        {
+          oldm++;
+        }
+      }
+      if (oldm > 0)
+      {
+        String[] oldmfn = new String[oldm];
+        oldm = 0;
+        for (int i = 0; i < oldmodels.length; i++)
+        {
+          if (oldmodels[i] != null)
+          {
+            oldmfn[oldm++] = oldmodels[i];
+          }
+        }
+        // deregister the Jmol instance for these structures - we'll add
+        // ourselves again at the end for the current structure set.
+        ssm.removeStructureViewerListener(this, oldmfn);
+      }
+    }
+
+    // register ourselves as a listener and notify the gui that it needs to
+    // update itself.
+    ssm.addStructureViewerListener(this);
+
+    if (notifyLoaded)
+    {
+      FeatureRenderer fr = getFeatureRenderer(null);
+      if (fr != null)
+      {
+        fr.featuresAdded();
+      }
+      refreshGUI();
+      loadNotifiesHandled++;
+    }
+    setLoadingFromArchive(false);
+  }
+
+  public void setJalviewColourScheme(ColourSchemeI cs)
+  {
+    colourBySequence = false;
+
+    if (cs == null)
+      return;
+
+    String res;
+    int index;
+    Color col;
+    viewerCommandHistory(false);
+    // TODO: Switch between nucleotide or aa selection expressions
+    Enumeration en = ResidueProperties.aa3Hash.keys();
+    StringBuffer command = new StringBuffer("select *;color white;");
+    while (en.hasMoreElements())
+    {
+      res = en.nextElement().toString();
+      index = ((Integer) ResidueProperties.aa3Hash.get(res)).intValue();
+      if (index > 20)
+        continue;
+
+      col = cs.findColour(ResidueProperties.aa[index].charAt(0));
+      // TODO: need colour string function and res selection here
+      command.append("select " + res + ";color[" + col.getRed() + ","
+              + col.getGreen() + "," + col.getBlue() + "];");
+    }
+
+    evalStateCommand(command.toString(),false);
+    viewerCommandHistory(true);
+  }
+
+  public void showHelp()
+  {
+    // chimera help
+    showUrl("http://jmol.sourceforge.net/docs/JmolUserGuide/", "jmolHelp");
+  }
+
+  /**
+   * open the URL somehow
+   * 
+   * @param target
+   */
+  public abstract void showUrl(String url, String target);
+
+  /**
+   * called when the binding thinks the UI needs to be refreshed after a Jmol
+   * state change. this could be because structures were loaded, or because an
+   * error has occured.
+   */
+  public abstract void refreshGUI();
+
+  public void componentResized(ComponentEvent e)
+  {
+
+  }
+
+  public void componentMoved(ComponentEvent e)
+  {
+
+  }
+
+  public void componentShown(ComponentEvent e)
+  {
+  }
+
+  public void componentHidden(ComponentEvent e)
+  {
+  }
+
+  public void setLoadingFromArchive(boolean loadingFromArchive)
+  {
+    this.loadingFromArchive = loadingFromArchive;
+  }
+
+  /**
+   * 
+   * @return true if Jmol is still restoring state or loading is still going on
+   *         (see setFinsihedLoadingFromArchive)
+   */
+  public boolean isLoadingFromArchive()
+  {
+    return loadingFromArchive && !loadingFinished;
+  }
+
+  /**
+   * modify flag which controls if sequence colouring events are honoured by the
+   * binding. Should be true for normal operation
+   * 
+   * @param finishedLoading
+   */
+  public void setFinishedLoadingFromArchive(boolean finishedLoading)
+  {
+    loadingFinished = finishedLoading;
+  }
+
+  public void setBackgroundColour(java.awt.Color col)
+  {
+    viewerCommandHistory(false);
+    // todo set background colour
+    viewer.sendChimeraCommand(
+            "background [" + col.getRed() + "," + col.getGreen() + ","
+                    + col.getBlue() + "];", false);
+    viewerCommandHistory(true);
+  }
+
+  /**
+   * add structures and any known sequence associations
+   * 
+   * @returns the pdb entries added to the current set.
+   */
+  public synchronized PDBEntry[] addSequenceAndChain(PDBEntry[] pdbe,
+          SequenceI[][] seq, String[][] chns)
+  {
+    int pe = -1;
+    Vector v = new Vector();
+    Vector rtn = new Vector();
+    for (int i = 0; i < pdbentry.length; i++)
+    {
+      v.addElement(pdbentry[i]);
+    }
+    for (int i = 0; i < pdbe.length; i++)
+    {
+      int r = v.indexOf(pdbe[i]);
+      if (r == -1 || r >= pdbentry.length)
+      {
+        rtn.addElement(new int[]
+        { v.size(), i });
+        v.addElement(pdbe[i]);
+      }
+      else
+      {
+        // just make sure the sequence/chain entries are all up to date
+        addSequenceAndChain(r, seq[i], chns[i]);
+      }
+    }
+    pdbe = new PDBEntry[v.size()];
+    v.copyInto(pdbe);
+    pdbentry = pdbe;
+    if (rtn.size() > 0)
+    {
+      // expand the tied seuqence[] and string[] arrays
+      SequenceI[][] sqs = new SequenceI[pdbentry.length][];
+      String[][] sch = new String[pdbentry.length][];
+      System.arraycopy(sequence, 0, sqs, 0, sequence.length);
+      System.arraycopy(chains, 0, sch, 0, this.chains.length);
+      sequence = sqs;
+      chains = sch;
+      pdbe = new PDBEntry[rtn.size()];
+      for (int r = 0; r < pdbe.length; r++)
+      {
+        int[] stri = ((int[]) rtn.elementAt(r));
+        // record the pdb file as a new addition
+        pdbe[r] = pdbentry[stri[0]];
+        // and add the new sequence/chain entries
+        addSequenceAndChain(stri[0], seq[stri[1]], chns[stri[1]]);
+      }
+    }
+    else
+    {
+      pdbe = null;
+    }
+    return pdbe;
+  }
+
+  public void addSequence(int pe, SequenceI[] seq)
+  {
+    // add sequences to the pe'th pdbentry's seuqence set.
+    addSequenceAndChain(pe, seq, null);
+  }
+
+  private void addSequenceAndChain(int pe, SequenceI[] seq, String[] tchain)
+  {
+    if (pe < 0 || pe >= pdbentry.length)
+    {
+      throw new Error(MessageManager.formatMessage("error.implementation_error_no_pdbentry_from_index", new String[]{Integer.valueOf(pe).toString()}));
+    }
+    final String nullChain = "TheNullChain";
+    Vector s = new Vector();
+    Vector c = new Vector();
+    if (chains == null)
+    {
+      chains = new String[pdbentry.length][];
+    }
+    if (sequence[pe] != null)
+    {
+      for (int i = 0; i < sequence[pe].length; i++)
+      {
+        s.addElement(sequence[pe][i]);
+        if (chains[pe] != null)
+        {
+          if (i < chains[pe].length)
+          {
+            c.addElement(chains[pe][i]);
+          }
+          else
+          {
+            c.addElement(nullChain);
+          }
+        }
+        else
+        {
+          if (tchain != null && tchain.length > 0)
+          {
+            c.addElement(nullChain);
+          }
+        }
+      }
+    }
+    for (int i = 0; i < seq.length; i++)
+    {
+      if (!s.contains(seq[i]))
+      {
+        s.addElement(seq[i]);
+        if (tchain != null && i < tchain.length)
+        {
+          c.addElement(tchain[i] == null ? nullChain : tchain[i]);
+        }
+      }
+    }
+    SequenceI[] tmp = new SequenceI[s.size()];
+    s.copyInto(tmp);
+    sequence[pe] = tmp;
+    if (c.size() > 0)
+    {
+      String[] tch = new String[c.size()];
+      c.copyInto(tch);
+      for (int i = 0; i < tch.length; i++)
+      {
+        if (tch[i] == nullChain)
+        {
+          tch[i] = null;
+        }
+      }
+      chains[pe] = tch;
+    }
+    else
+    {
+      chains[pe] = null;
+    }
+  }
+
+  /**
+   * 
+   * @param pdbfile
+   * @return text report of alignment between pdbfile and any associated
+   *         alignment sequences
+   */
+  public String printMapping(String pdbfile)
+  {
+    return ssm.printMapping(pdbfile);
+  }
+
+}
index c0b6bec..6a32f30 100644 (file)
@@ -1,29 +1,33 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ext.varna;
+
 import java.awt.event.*;
 
 import jalview.api.SequenceStructureBinding;
 import jalview.api.StructureSelectionManagerProvider;
 import jalview.structure.*;
+import jalview.structures.models.SequenceStructureBindingModel;
 
-public abstract class JalviewVarnaBinding implements StructureListener,
+public abstract class JalviewVarnaBinding extends SequenceStructureBindingModel implements StructureListener,
         SequenceStructureBinding, ComponentListener,
         StructureSelectionManagerProvider
 
index 94899ca..4b5b15b 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ext.varna;
index d992233..c3d80d1 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -151,9 +153,8 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
   public AlignmentPanel alignPanel;
 
   AlignViewport viewport;
+
   public AlignViewControllerI avc;
 
   Vector alignPanels = new Vector();
 
@@ -262,15 +263,17 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
           int width, int height, String sequenceSetId, String viewId)
   {
     setSize(width, height);
-    viewport = new AlignViewport(al, hiddenColumns, sequenceSetId, viewId);
-
-    alignPanel = new AlignmentPanel(this, viewport);
 
     if (al.getDataset() == null)
     {
       al.setDataset(null);
     }
 
+    viewport = new AlignViewport(al, hiddenColumns, sequenceSetId, viewId);
+
+    alignPanel = new AlignmentPanel(this, viewport);
+
+
     addAlignmentPanel(alignPanel, true);
     init();
   }
@@ -297,7 +300,8 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
    */
   void init()
   {
-    avc = new jalview.controller.AlignViewController(this, viewport, alignPanel);
+    avc = new jalview.controller.AlignViewController(this, viewport,
+            alignPanel);
     if (viewport.getAlignmentConservationAnnotation() == null)
     {
       BLOSUM62Colour.setEnabled(false);
@@ -341,7 +345,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
     }
 
     addKeyListener();
-    
+
   }
 
   /**
@@ -487,7 +491,9 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
 
         case KeyEvent.VK_F2:
           viewport.cursorMode = !viewport.cursorMode;
-          statusBar.setText(MessageManager.formatMessage("label.keyboard_editing_mode", new String[]{(viewport.cursorMode ? "on" : "off")}));
+          statusBar.setText(MessageManager.formatMessage(
+                  "label.keyboard_editing_mode", new String[]
+                  { (viewport.cursorMode ? "on" : "off") }));
           if (viewport.cursorMode)
           {
             alignPanel.seqPanel.seqCanvas.cursorX = viewport.startRes;
@@ -568,7 +574,8 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
   public void addAlignmentPanel(final AlignmentPanel ap, boolean newPanel)
   {
     ap.alignFrame = this;
-    avc = new jalview.controller.AlignViewController(this, viewport, alignPanel);
+    avc = new jalview.controller.AlignViewController(this, viewport,
+            alignPanel);
 
     alignPanels.addElement(ap);
 
@@ -812,14 +819,14 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
   {
     if (progressBarHandlers == null || !progressBars.contains(new Long(id)))
     {
-      throw new Error(
-              "call setProgressBar before registering the progress bar's handler.");
+      throw new Error(MessageManager.getString("error.call_setprogressbar_before_registering_handler"));
     }
     progressBarHandlers.put(new Long(id), handler);
     final JPanel progressPanel = (JPanel) progressBars.get(new Long(id));
     if (handler.canCancel())
     {
-      JButton cancel = new JButton(MessageManager.getString("action.cancel"));
+      JButton cancel = new JButton(
+              MessageManager.getString("action.cancel"));
       final IProgressIndicator us = this;
       cancel.addActionListener(new ActionListener()
       {
@@ -828,10 +835,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
         public void actionPerformed(ActionEvent e)
         {
           handler.cancelActivity(id);
-          us.setProgressBar(
-                  "Cancelled "
-                          + ((JLabel) progressPanel.getComponent(0))
-                                  .getText(), id);
+          us.setProgressBar(MessageManager.formatMessage("label.cancelled_params", new String[]{((JLabel) progressPanel.getComponent(0)).getText()}), id);
         }
       });
       progressPanel.add(cancel, BorderLayout.EAST);
@@ -853,9 +857,11 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
   }
 
   @Override
-  public void setStatus(String text) {
+  public void setStatus(String text)
+  {
     statusBar.setText(text);
   };
+
   /*
    * Added so Castor Mapping file can obtain Jalview Version
    */
@@ -992,8 +998,8 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
             currentFileFormat, false);
 
     chooser.setFileView(new JalviewFileView());
-    chooser.setDialogTitle("Save Alignment to file");
-    chooser.setToolTipText(MessageManager.getString("action.save"));\r
+    chooser.setDialogTitle(MessageManager.getString("label.save_alignment_to_file"));
+    chooser.setToolTipText(MessageManager.getString("action.save"));
 
     int value = chooser.showSaveDialog(this);
 
@@ -1002,9 +1008,14 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
       currentFileFormat = chooser.getSelectedFormat();
       if (currentFileFormat == null)
       {
-        JOptionPane.showInternalMessageDialog(Desktop.desktop,
-                MessageManager.getString("label.select_file_format_before_saving"),
-                MessageManager.getString("label.file_format_not_specified"), JOptionPane.WARNING_MESSAGE);
+        JOptionPane
+                .showInternalMessageDialog(
+                        Desktop.desktop,
+                        MessageManager
+                                .getString("label.select_file_format_before_saving"),
+                        MessageManager
+                                .getString("label.file_format_not_specified"),
+                        JOptionPane.WARNING_MESSAGE);
         value = chooser.showSaveDialog(this);
         return;
       }
@@ -1040,8 +1051,9 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
 
       success = new Jalview2XML().SaveAlignment(this, file, shortName);
 
-      statusBar.setText(MessageManager.formatMessage("label.successfully_saved_to_file_in_format",new String[]{fileName, format}));
-
+      statusBar.setText(MessageManager.formatMessage(
+              "label.successfully_saved_to_file_in_format", new String[]
+              { fileName, format }));
 
     }
     else
@@ -1062,8 +1074,10 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
         int reply = JOptionPane
                 .showInternalConfirmDialog(
                         Desktop.desktop,
-                        MessageManager.getString("label.alignment_contains_hidden_columns"),
-                        MessageManager.getString("action.save_omit_hidden_columns"),
+                        MessageManager
+                                .getString("label.alignment_contains_hidden_columns"),
+                        MessageManager
+                                .getString("action.save_omit_hidden_columns"),
                         JOptionPane.YES_NO_OPTION,
                         JOptionPane.QUESTION_MESSAGE);
 
@@ -1093,7 +1107,10 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
           out.print(output);
           out.close();
           this.setTitle(file);
-          statusBar.setText(MessageManager.formatMessage("label.successfully_saved_to_file_in_format",new String[]{fileName, format}));
+          statusBar.setText(MessageManager.formatMessage(
+                  "label.successfully_saved_to_file_in_format",
+                  new String[]
+                  { fileName, format }));
         } catch (Exception ex)
         {
           success = false;
@@ -1104,8 +1121,11 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
 
     if (!success)
     {
-      JOptionPane.showInternalMessageDialog(this, MessageManager.formatMessage("label.couldnt_save_file", new String[]{fileName}),
-              MessageManager.getString("label.error_saving_file"), JOptionPane.WARNING_MESSAGE);
+      JOptionPane.showInternalMessageDialog(this, MessageManager
+              .formatMessage("label.couldnt_save_file", new String[]
+              { fileName }), MessageManager
+              .getString("label.error_saving_file"),
+              JOptionPane.WARNING_MESSAGE);
     }
 
     return success;
@@ -1142,8 +1162,10 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
       int reply = JOptionPane
               .showInternalConfirmDialog(
                       Desktop.desktop,
-                      MessageManager.getString("label.alignment_contains_hidden_columns"),
-                      MessageManager.getString("action.save_omit_hidden_columns"),
+                      MessageManager
+                              .getString("label.alignment_contains_hidden_columns"),
+                      MessageManager
+                              .getString("action.save_omit_hidden_columns"),
                       JOptionPane.YES_NO_OPTION,
                       JOptionPane.QUESTION_MESSAGE);
 
@@ -1161,8 +1183,9 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
       cap.setText(new FormatAdapter().formatSequences(e.getActionCommand(),
               viewport.getAlignment(), omitHidden,
               viewport.getColumnSelection()));
-      Desktop.addInternalFrame(cap,
-              MessageManager.formatMessage("label.alignment_output_command", new String[]{e.getActionCommand()}), 600, 500);\r
+      Desktop.addInternalFrame(cap, MessageManager.formatMessage(
+              "label.alignment_output_command", new String[]
+              { e.getActionCommand() }), 600, 500);
     } catch (OutOfMemoryError oom)
     {
       new OOMWarning("Outputting alignment as " + e.getActionCommand(), oom);
@@ -1258,8 +1281,10 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
     JalviewFileChooser chooser = new JalviewFileChooser(
             jalview.bin.Cache.getProperty("LAST_DIRECTORY"));
     chooser.setFileView(new JalviewFileView());
-    chooser.setDialogTitle(MessageManager.getString("label.load_jalview_annotations"));\r
-    chooser.setToolTipText(MessageManager.getString("label.load_jalview_annotations"));\r
+    chooser.setDialogTitle(MessageManager
+            .getString("label.load_jalview_annotations"));
+    chooser.setToolTipText(MessageManager
+            .getString("label.load_jalview_annotations"));
 
     int value = chooser.showOpenDialog(null);
 
@@ -1359,7 +1384,9 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
     {
       undoMenuItem.setEnabled(true);
       CommandI command = (CommandI) viewport.historyList.peek();
-      undoMenuItem.setText(MessageManager.formatMessage("label.undo_command", new String[]{command.getDescription()}));
+      undoMenuItem.setText(MessageManager.formatMessage(
+              "label.undo_command", new String[]
+              { command.getDescription() }));
     }
     else
     {
@@ -1372,7 +1399,9 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
       redoMenuItem.setEnabled(true);
 
       CommandI command = (CommandI) viewport.redoList.peek();
-      redoMenuItem.setText(MessageManager.formatMessage("label.redo_command", new String[]{command.getDescription()}));
+      redoMenuItem.setText(MessageManager.formatMessage(
+              "label.redo_command", new String[]
+              { command.getDescription() }));
     }
     else
     {
@@ -1705,7 +1734,9 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
 
     Desktop.jalviewClipboard = new Object[]
     { seqs, viewport.getAlignment().getDataset(), hiddenColumns };
-    statusBar.setText(MessageManager.formatMessage("label.copied_sequences_to_clipboard", new String[]{Integer.valueOf(seqs.length).toString()}));
+    statusBar.setText(MessageManager.formatMessage(
+            "label.copied_sequences_to_clipboard", new String[]
+            { Integer.valueOf(seqs.length).toString() }));
   }
 
   /**
@@ -1912,7 +1943,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
         // /////
         // ADD HISTORY ITEM
         //
-        addHistoryItem(new EditCommand("Add sequences", EditCommand.PASTE,
+        addHistoryItem(new EditCommand(MessageManager.getString("label.add_sequences"), EditCommand.PASTE,
                 sequences, 0, alignment.getWidth(), alignment));
       }
       // Add any annotations attached to sequences
@@ -2063,59 +2094,61 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
     }
 
   }
+
   @Override
   protected void expand_newalign(ActionEvent e)
   {
-    try {
-    AlignmentI alignment = AlignmentUtils.expandContext(getViewport().getAlignment(), -1);
-    AlignFrame af = new AlignFrame(alignment, DEFAULT_WIDTH,
-            DEFAULT_HEIGHT);
-    String newtitle = new String("Flanking alignment");
-
-    if (Desktop.jalviewClipboard != null
-            && Desktop.jalviewClipboard[2] != null)
+    try
     {
-      Vector hc = (Vector) Desktop.jalviewClipboard[2];
-      for (int i = 0; i < hc.size(); i++)
+      AlignmentI alignment = AlignmentUtils.expandContext(getViewport()
+              .getAlignment(), -1);
+      AlignFrame af = new AlignFrame(alignment, DEFAULT_WIDTH,
+              DEFAULT_HEIGHT);
+      String newtitle = new String("Flanking alignment");
+
+      if (Desktop.jalviewClipboard != null
+              && Desktop.jalviewClipboard[2] != null)
       {
-        int[] region = (int[]) hc.elementAt(i);
-        af.viewport.hideColumns(region[0], region[1]);
+        Vector hc = (Vector) Desktop.jalviewClipboard[2];
+        for (int i = 0; i < hc.size(); i++)
+        {
+          int[] region = (int[]) hc.elementAt(i);
+          af.viewport.hideColumns(region[0], region[1]);
+        }
       }
-    }
 
-    // >>>This is a fix for the moment, until a better solution is
-    // found!!<<<
-    af.alignPanel.seqPanel.seqCanvas.getFeatureRenderer()
-            .transferSettings(
-                    alignPanel.seqPanel.seqCanvas.getFeatureRenderer());
+      // >>>This is a fix for the moment, until a better solution is
+      // found!!<<<
+      af.alignPanel.seqPanel.seqCanvas.getFeatureRenderer()
+              .transferSettings(
+                      alignPanel.seqPanel.seqCanvas.getFeatureRenderer());
 
-    // TODO: maintain provenance of an alignment, rather than just make the
-    // title a concatenation of operations.
-    {
-      if (title.startsWith("Copied sequences"))
+      // TODO: maintain provenance of an alignment, rather than just make the
+      // title a concatenation of operations.
       {
-        newtitle = title;
-      }
-      else
-      {
-        newtitle = newtitle.concat("- from " + title);
+        if (title.startsWith("Copied sequences"))
+        {
+          newtitle = title;
+        }
+        else
+        {
+          newtitle = newtitle.concat("- from " + title);
+        }
       }
-    }
 
-    Desktop.addInternalFrame(af, newtitle, DEFAULT_WIDTH,
-            DEFAULT_HEIGHT);
+      Desktop.addInternalFrame(af, newtitle, DEFAULT_WIDTH, DEFAULT_HEIGHT);
 
     } catch (Exception ex)
     {
       ex.printStackTrace();
       System.out.println("Exception whilst pasting: " + ex);
       // could be anything being pasted in here
-    }
-    catch (OutOfMemoryError oom)
+    } catch (OutOfMemoryError oom)
     {
       new OOMWarning("Viewing flanking region of alignment", oom);
     }
   }
+
   /**
    * DOCUMENT ME!
    * 
@@ -2169,7 +2202,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
     /*
      * //ADD HISTORY ITEM
      */
-    addHistoryItem(new EditCommand("Cut Sequences", EditCommand.CUT, cut,
+    addHistoryItem(new EditCommand(MessageManager.getString("label.cut_sequences"), EditCommand.CUT, cut,
             sg.getStartRes(), sg.getEndRes() - sg.getStartRes() + 1,
             viewport.getAlignment()));
 
@@ -2199,7 +2232,8 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
   @Override
   protected void deleteGroups_actionPerformed(ActionEvent e)
   {
-    if (avc.deleteGroups()) {
+    if (avc.deleteGroups())
+    {
       PaintRefresher.Refresh(this, viewport.getSequenceSetId());
       alignPanel.updateAnnotation();
       alignPanel.paintAlignment(true);
@@ -2357,7 +2391,9 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
                 viewport.getSelectionGroup());
       }
 
-      statusBar.setText(MessageManager.formatMessage("label.removed_columns", new String[]{Integer.valueOf(trimRegion.getSize()).toString()}));
+      statusBar.setText(MessageManager.formatMessage(
+              "label.removed_columns", new String[]
+              { Integer.valueOf(trimRegion.getSize()).toString() }));
 
       addHistoryItem(trimRegion);
 
@@ -2405,7 +2441,9 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
 
     addHistoryItem(removeGapCols);
 
-    statusBar.setText(MessageManager.formatMessage("label.removed_empty_columns", new String[]{Integer.valueOf(removeGapCols.getSize()).toString()}));
+    statusBar.setText(MessageManager.formatMessage(
+            "label.removed_empty_columns", new String[]
+            { Integer.valueOf(removeGapCols.getSize()).toString() }));
 
     // This is to maintain viewport position on first residue
     // of first sequence
@@ -2568,7 +2606,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
     boolean addFirstIndex = false;
     if (viewTitle == null || viewTitle.trim().length() == 0)
     {
-      viewTitle = "View";
+      viewTitle = MessageManager.getString("action.view");
       addFirstIndex = true;
     }
     else
@@ -2600,7 +2638,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
 
     addAlignmentPanel(newap, true);
     newap.alignmentChanged();
-    
+
     if (alignPanels.size() == 2)
     {
       viewport.gatherViewsHere = true;
@@ -3014,11 +3052,15 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
     editPane.setEditable(false);
     StringBuffer contents = new AlignmentProperties(viewport.getAlignment())
             .formatAsHtml();
-    editPane.setText(MessageManager.formatMessage("label.html_content", new String[]{contents.toString()}));
+    editPane.setText(MessageManager.formatMessage("label.html_content",
+            new String[]
+            { contents.toString() }));
     JInternalFrame frame = new JInternalFrame();
     frame.getContentPane().add(new JScrollPane(editPane));
 
-    Desktop.instance.addInternalFrame(frame, MessageManager.formatMessage("label.alignment_properties", new String[]{getTitle()}), 500, 400);\r
+    Desktop.instance.addInternalFrame(frame, MessageManager.formatMessage(
+            "label.alignment_properties", new String[]
+            { getTitle() }), 500, 400);
   }
 
   /**
@@ -3038,8 +3080,9 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
     JInternalFrame frame = new JInternalFrame();
     OverviewPanel overview = new OverviewPanel(alignPanel);
     frame.setContentPane(overview);
-    Desktop.addInternalFrame(frame, MessageManager.formatMessage("label.overview_params", new String[]{this.getTitle()}),\r
-            frame.getWidth(), frame.getHeight());
+    Desktop.addInternalFrame(frame, MessageManager.formatMessage(
+            "label.overview_params", new String[]
+            { this.getTitle() }), frame.getWidth(), frame.getHeight());
     frame.pack();
     frame.setLayer(JLayeredPane.PALETTE_LAYER);
     frame.addInternalFrameListener(new javax.swing.event.InternalFrameAdapter()
@@ -3421,7 +3464,8 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
   @Override
   public void userDefinedColour_actionPerformed(ActionEvent e)
   {
-    if (e.getActionCommand().equals(MessageManager.getString("action.user_defined")))\r
+    if (e.getActionCommand().equals(
+            MessageManager.getString("action.user_defined")))
     {
       new UserDefinedColours(alignPanel, null);
     }
@@ -3470,8 +3514,10 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
 
               int option = JOptionPane.showInternalConfirmDialog(
                       jalview.gui.Desktop.desktop,
-                      MessageManager.getString("label.remove_from_default_list"),
-                      MessageManager.getString("label.remove_user_defined_colour"),
+                      MessageManager
+                              .getString("label.remove_from_default_list"),
+                      MessageManager
+                              .getString("label.remove_user_defined_colour"),
                       JOptionPane.YES_NO_OPTION);
               if (option == JOptionPane.YES_OPTION)
               {
@@ -3622,15 +3668,18 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
     if ((viewport.getSelectionGroup() == null)
             || (viewport.getSelectionGroup().getSize() < 2))
     {
-      JOptionPane.showInternalMessageDialog(this,
-              MessageManager.getString("label.you_must_select_least_two_sequences"), MessageManager.getString("label.invalid_selection"),
+      JOptionPane.showInternalMessageDialog(this, MessageManager
+              .getString("label.you_must_select_least_two_sequences"),
+              MessageManager.getString("label.invalid_selection"),
               JOptionPane.WARNING_MESSAGE);
     }
     else
     {
       JInternalFrame frame = new JInternalFrame();
       frame.setContentPane(new PairwiseAlignPanel(viewport));
-      Desktop.addInternalFrame(frame, MessageManager.getString("action.pairwise_alignment"), 600, 500);\r
+      Desktop.addInternalFrame(frame,
+              MessageManager.getString("action.pairwise_alignment"), 600,
+              500);
     }
   }
 
@@ -3648,10 +3697,14 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
             .getSelectionGroup().getSize() > 0))
             || (viewport.getAlignment().getHeight() < 4))
     {
-      JOptionPane.showInternalMessageDialog(this,
-              MessageManager.getString("label.principal_component_analysis_must_take_least_four_input_sequences"),
-              MessageManager.getString("label.sequence_selection_insufficient"),
-              JOptionPane.WARNING_MESSAGE);
+      JOptionPane
+              .showInternalMessageDialog(
+                      this,
+                      MessageManager
+                              .getString("label.principal_component_analysis_must_take_least_four_input_sequences"),
+                      MessageManager
+                              .getString("label.sequence_selection_insufficient"),
+                      JOptionPane.WARNING_MESSAGE);
 
       return;
     }
@@ -3752,8 +3805,11 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
         JOptionPane
                 .showMessageDialog(
                         Desktop.desktop,
-                        MessageManager.getString("label.you_need_more_two_sequences_selected_build_tree"),
-                        MessageManager.getString("label.not_enough_sequences"), JOptionPane.WARNING_MESSAGE);
+                        MessageManager
+                                .getString("label.you_need_more_two_sequences_selected_build_tree"),
+                        MessageManager
+                                .getString("label.not_enough_sequences"),
+                        JOptionPane.WARNING_MESSAGE);
         return;
       }
 
@@ -3767,8 +3823,10 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
           JOptionPane
                   .showMessageDialog(
                           Desktop.desktop,
-                          MessageManager.getString("label.selected_region_to_tree_may_only_contain_residues_or_gaps"),
-                          MessageManager.getString("label.sequences_selection_not_aligned"),
+                          MessageManager
+                                  .getString("label.selected_region_to_tree_may_only_contain_residues_or_gaps"),
+                          MessageManager
+                                  .getString("label.sequences_selection_not_aligned"),
                           JOptionPane.WARNING_MESSAGE);
 
           return;
@@ -3786,8 +3844,10 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
         JOptionPane
                 .showMessageDialog(
                         Desktop.desktop,
-                        MessageManager.getString("label.sequences_must_be_aligned_before_creating_tree"),
-                        MessageManager.getString("label.sequences_not_aligned"),
+                        MessageManager
+                                .getString("label.sequences_must_be_aligned_before_creating_tree"),
+                        MessageManager
+                                .getString("label.sequences_not_aligned"),
                         JOptionPane.WARNING_MESSAGE);
 
         return;
@@ -3824,7 +3884,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
   public void addSortByOrderMenuItem(String title,
           final AlignmentOrder order)
   {
-    final JMenuItem item = new JMenuItem("by " + title);
+    final JMenuItem item = new JMenuItem(MessageManager.formatMessage("action.by_title_param", new String[]{title}));
     sort.add(item);
     item.addActionListener(new java.awt.event.ActionListener()
     {
@@ -3942,15 +4002,17 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
   {
     calculateTree.removeAll();
     // build the calculate menu
-    
-    for (final String type:new String[] {"NJ", "AV"})
+
+    for (final String type : new String[]
+    { "NJ", "AV" })
     {
-      String treecalcnm = MessageManager.getString("label.tree_calc_"+type.toLowerCase());
-      for (final Object pwtype: ResidueProperties.scoreMatrices.keySet())
+      String treecalcnm = MessageManager.getString("label.tree_calc_"
+              + type.toLowerCase());
+      for (final Object pwtype : ResidueProperties.scoreMatrices.keySet())
       {
         JMenuItem tm = new JMenuItem();
         ScoreModelI sm = ResidueProperties.scoreMatrices.get(pwtype);
-        if (sm.isProtein()==!viewport.getAlignment().isNucleotide())
+        if (sm.isProtein() == !viewport.getAlignment().isNucleotide())
         {
           String smn = MessageManager.getStringOrReturn(
                   "label.score_model_", sm.getName());
@@ -4113,8 +4175,9 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
     JalviewFileChooser chooser = new JalviewFileChooser(
             jalview.bin.Cache.getProperty("LAST_DIRECTORY"));
     chooser.setFileView(new JalviewFileView());
-    chooser.setDialogTitle(MessageManager.getString("label.select_newick_like_tree_file"));\r
-    chooser.setToolTipText(MessageManager.getString("label.load_tree_file"));\r
+    chooser.setDialogTitle(MessageManager
+            .getString("label.select_newick_like_tree_file"));
+    chooser.setToolTipText(MessageManager.getString("label.load_tree_file"));
 
     int value = chooser.showOpenDialog(null);
 
@@ -4129,14 +4192,20 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
         viewport.setCurrentTree(ShowNewickTree(fin, choice).getTree());
       } catch (Exception ex)
       {
-        JOptionPane.showMessageDialog(Desktop.desktop, ex.getMessage(),
-                MessageManager.getString("label.problem_reading_tree_file"), JOptionPane.WARNING_MESSAGE);
+        JOptionPane
+                .showMessageDialog(
+                        Desktop.desktop,
+                        ex.getMessage(),
+                        MessageManager
+                                .getString("label.problem_reading_tree_file"),
+                        JOptionPane.WARNING_MESSAGE);
         ex.printStackTrace();
       }
       if (fin != null && fin.hasWarningMessage())
       {
-        JOptionPane.showMessageDialog(Desktop.desktop,
-                fin.getWarningMessage(), MessageManager.getString("label.possible_problem_with_tree_file"),
+        JOptionPane.showMessageDialog(Desktop.desktop, fin
+                .getWarningMessage(), MessageManager
+                .getString("label.possible_problem_with_tree_file"),
                 JOptionPane.WARNING_MESSAGE);
       }
     }
@@ -4241,7 +4310,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
       @Override
       public void run()
       {
-        final List<JMenuItem> legacyItems=new ArrayList<JMenuItem>();
+        final List<JMenuItem> legacyItems = new ArrayList<JMenuItem>();
         try
         {
           System.err.println("Building ws menu again "
@@ -4258,12 +4327,11 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
           // object broker mechanism.
           final Vector<JMenu> wsmenu = new Vector<JMenu>();
           final IProgressIndicator af = me;
-          final JMenu msawsmenu = new JMenu("Alignment");
-          final JMenu secstrmenu = new JMenu(
-                  "Secondary Structure Prediction");
-          final JMenu seqsrchmenu = new JMenu("Sequence Database Search");
-          final JMenu analymenu = new JMenu("Analysis");
-          final JMenu dismenu = new JMenu("Protein Disorder");
+          final JMenu msawsmenu = new JMenu(MessageManager.getString("label.alignment"));
+          final JMenu secstrmenu = new JMenu(MessageManager.getString("label.secondary_structure_prediction"));
+          final JMenu seqsrchmenu = new JMenu(MessageManager.getString("label.sequence_database_search"));
+          final JMenu analymenu = new JMenu(MessageManager.getString("label.analysis"));
+          final JMenu dismenu = new JMenu(MessageManager.getString("label.protein_disorder"));
           // JAL-940 - only show secondary structure prediction services from
           // the legacy server
           if (// Cache.getDefault("SHOW_JWS1_SERVICES", true)
@@ -4274,7 +4342,8 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
             // be
             // stored or retrieved from elsewhere
             // No MSAWS used any more:
-            // Vector msaws = null; // (Vector) Discoverer.services.get("MsaWS");
+            // Vector msaws = null; // (Vector)
+            // Discoverer.services.get("MsaWS");
             Vector secstrpr = (Vector) Discoverer.services
                     .get("SecStrPred");
             if (secstrpr != null)
@@ -4286,17 +4355,17 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
                         .get(i);
                 jalview.ws.WSMenuEntryProviderI impl = jalview.ws.jws1.Discoverer
                         .getServiceClient(sh);
-                int p=secstrmenu.getItemCount();
+                int p = secstrmenu.getItemCount();
                 impl.attachWSMenuEntry(secstrmenu, me);
-                int q=secstrmenu.getItemCount();
-                for (int litm=p;litm<q; litm++)
+                int q = secstrmenu.getItemCount();
+                for (int litm = p; litm < q; litm++)
                 {
                   legacyItems.add(secstrmenu.getItem(litm));
                 }
               }
             }
           }
-          
+
           // Add all submenus in the order they should appear on the web
           // services menu
           wsmenu.add(msawsmenu);
@@ -4327,7 +4396,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
                   webService.add(me.webServiceNoServices);
                 }
                 // TODO: move into separate menu builder class.
-                boolean new_sspred=false;
+                boolean new_sspred = false;
                 if (Cache.getDefault("SHOW_JWS2_SERVICES", true))
                 {
                   Jws2Discoverer jws2servs = Jws2Discoverer.getDiscoverer();
@@ -4336,16 +4405,17 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
                     if (jws2servs.hasServices())
                     {
                       jws2servs.attachWSMenuEntry(webService, me);
-                      for (Jws2Instance sv:jws2servs.getServices()) {
+                      for (Jws2Instance sv : jws2servs.getServices())
+                      {
                         if (sv.description.toLowerCase().contains("jpred"))
                         {
-                          for (JMenuItem jmi:legacyItems)
+                          for (JMenuItem jmi : legacyItems)
                           {
                             jmi.setVisible(false);
                           }
                         }
                       }
-                      
+
                     }
                     if (jws2servs.isRunning())
                     {
@@ -4528,7 +4598,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
       public void run()
       {
         final long sttime = System.currentTimeMillis();
-        ths.setProgressBar("Searching for sequences from " + fsrc, sttime);
+        ths.setProgressBar(MessageManager.formatMessage("status.searching_for_sequences_from", new String[]{fsrc}), sttime);
         try
         {
           Alignment ds = ths.getViewport().getAlignment().getDataset(); // update
@@ -4582,7 +4652,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
           jalview.bin.Cache.log.error("Error when finding crossreferences",
                   e);
         }
-        ths.setProgressBar("Finished searching for sequences from " + fsrc,
+        ths.setProgressBar(MessageManager.formatMessage("status.finished_searching_for_sequences_from", new String[]{fsrc}),
                 sttime);
       }
 
@@ -4631,14 +4701,17 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
       JOptionPane
               .showMessageDialog(
                       Desktop.desktop,
-                      MessageManager.getString("label.select_at_least_three_bases_in_at_least_one_sequence_to_cDNA_translation"),
-                      MessageManager.getString("label.translation_failed"), JOptionPane.WARNING_MESSAGE);
+                      MessageManager
+                              .getString("label.select_at_least_three_bases_in_at_least_one_sequence_to_cDNA_translation"),
+                      MessageManager.getString("label.translation_failed"),
+                      JOptionPane.WARNING_MESSAGE);
     }
     else
     {
       AlignFrame af = new AlignFrame(al, DEFAULT_WIDTH, DEFAULT_HEIGHT);
-      Desktop.addInternalFrame(af, MessageManager.formatMessage("label.translation_of_params", new String[]{this.getTitle()}),\r
-              DEFAULT_WIDTH, DEFAULT_HEIGHT);
+      Desktop.addInternalFrame(af, MessageManager.formatMessage(
+              "label.translation_of_params", new String[]
+              { this.getTitle() }), DEFAULT_WIDTH, DEFAULT_HEIGHT);
     }
   }
 
@@ -4661,12 +4734,18 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
     } catch (Exception ex)
     {
       al = null;
-      jalview.bin.Cache.log.error("Exception during translation. Please report this !", ex);
+      jalview.bin.Cache.log.error(
+              "Exception during translation. Please report this !", ex);
       JOptionPane
-      .showMessageDialog(
-              Desktop.desktop,
-              MessageManager.getString("label.error_when_translating_sequences_submit_bug_report"),
-              MessageManager.getString("label.implementation_error") + MessageManager.getString("translation_failed"), JOptionPane.ERROR_MESSAGE);
+              .showMessageDialog(
+                      Desktop.desktop,
+                      MessageManager
+                              .getString("label.error_when_translating_sequences_submit_bug_report"),
+                      MessageManager
+                              .getString("label.implementation_error")
+                              + MessageManager
+                                      .getString("translation_failed"),
+                      JOptionPane.ERROR_MESSAGE);
       return;
     }
     if (al == null)
@@ -4674,14 +4753,17 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
       JOptionPane
               .showMessageDialog(
                       Desktop.desktop,
-                      MessageManager.getString("label.select_at_least_three_bases_in_at_least_one_sequence_to_cDNA_translation"),
-                      MessageManager.getString("label.translation_failed"), JOptionPane.WARNING_MESSAGE);
+                      MessageManager
+                              .getString("label.select_at_least_three_bases_in_at_least_one_sequence_to_cDNA_translation"),
+                      MessageManager.getString("label.translation_failed"),
+                      JOptionPane.WARNING_MESSAGE);
     }
     else
     {
       AlignFrame af = new AlignFrame(al, DEFAULT_WIDTH, DEFAULT_HEIGHT);
-      Desktop.addInternalFrame(af, MessageManager.formatMessage("label.translation_of_params", new String[]{this.getTitle()}),\r
-              DEFAULT_WIDTH, DEFAULT_HEIGHT);
+      Desktop.addInternalFrame(af, MessageManager.formatMessage(
+              "label.translation_of_params", new String[]
+              { this.getTitle() }), DEFAULT_WIDTH, DEFAULT_HEIGHT);
     }
   }
 
@@ -4874,9 +4956,16 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
                   || JOptionPane
                           .showConfirmDialog(
                                   this,
-                                  MessageManager.formatMessage("label.automatically_associate_pdb_files_with_sequences_same_name",
-                                                 new String[]{Integer.valueOf(filesmatched.size()).toString()}),
-                                  MessageManager.getString("label.automatically_associate_pdb_files_by_name"),
+                                  MessageManager
+                                          .formatMessage(
+                                                  "label.automatically_associate_pdb_files_with_sequences_same_name",
+                                                  new String[]
+                                                  { Integer.valueOf(
+                                                          filesmatched
+                                                                  .size())
+                                                          .toString() }),
+                                  MessageManager
+                                          .getString("label.automatically_associate_pdb_files_by_name"),
                                   JOptionPane.YES_NO_OPTION) == JOptionPane.YES_OPTION)
 
           {
@@ -4909,8 +4998,16 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
                           "AUTOASSOCIATE_PDBANDSEQS_IGNOREOTHERS", false) || JOptionPane
                           .showConfirmDialog(
                                   this,
-                                  MessageManager.formatMessage("label.ignore_unmatched_dropped_files_info", new String[]{Integer.valueOf(filesnotmatched.size()).toString()}),
-                                  MessageManager.getString("label.ignore_unmatched_dropped_files"),
+                                  MessageManager
+                                          .formatMessage(
+                                                  "label.ignore_unmatched_dropped_files_info",
+                                                  new String[]
+                                                  { Integer.valueOf(
+                                                          filesnotmatched
+                                                                  .size())
+                                                          .toString() }),
+                                  MessageManager
+                                          .getString("label.ignore_unmatched_dropped_files"),
                                   JOptionPane.YES_NO_OPTION) == JOptionPane.YES_OPTION))
           {
             return;
@@ -4969,7 +5066,9 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
               tcoffeeColour.setSelected(true);
               changeColour(new TCoffeeColourScheme(viewport.getAlignment()));
               isAnnotation = true;
-              statusBar.setText(MessageManager.getString("label.successfully_pasted_tcoffee_scores_to_alignment"));
+              statusBar
+                      .setText(MessageManager
+                              .getString("label.successfully_pasted_tcoffee_scores_to_alignment"));
             }
             else
             {
@@ -4978,9 +5077,11 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
               JOptionPane
                       .showMessageDialog(
                               Desktop.desktop,
-                              tcf.getWarningMessage() == null ? MessageManager.getString("label.check_file_matches_sequence_ids_alignment")
+                              tcf.getWarningMessage() == null ? MessageManager
+                                      .getString("label.check_file_matches_sequence_ids_alignment")
                                       : tcf.getWarningMessage(),
-                              MessageManager.getString("label.problem_reading_tcoffee_score_file"),
+                              MessageManager
+                                      .getString("label.problem_reading_tcoffee_score_file"),
                               JOptionPane.WARNING_MESSAGE);
             }
           }
@@ -5098,7 +5199,8 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
     if (SwingUtilities.isRightMouseButton(e))
     {
       String reply = JOptionPane.showInternalInputDialog(this,
-              MessageManager.getString("label.enter_view_name"), MessageManager.getString("label.enter_view_name"),
+              MessageManager.getString("label.enter_view_name"),
+              MessageManager.getString("label.enter_view_name"),
               JOptionPane.QUESTION_MESSAGE);
 
       if (reply != null)
@@ -5193,23 +5295,31 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
     // TODO We probably want to store a sequence database checklist in
     // preferences and have checkboxes.. rather than individual sources selected
     // here
-    final JMenu rfetch = new JMenu(MessageManager.getString("action.fetch_db_references"));\r
-    rfetch.setToolTipText(MessageManager.getString("label.retrieve_parse_sequence_database_records_alignment_or_selected_sequences"));\r
+    final JMenu rfetch = new JMenu(
+            MessageManager.getString("action.fetch_db_references"));
+    rfetch.setToolTipText(MessageManager
+            .getString("label.retrieve_parse_sequence_database_records_alignment_or_selected_sequences"));
     webService.add(rfetch);
 
-    final JCheckBoxMenuItem trimrs = new JCheckBoxMenuItem(MessageManager.getString("option.trim_retrieved_seqs"));
-    trimrs.setToolTipText(MessageManager.getString("label.trim_retrieved_sequences"));
+    final JCheckBoxMenuItem trimrs = new JCheckBoxMenuItem(
+            MessageManager.getString("option.trim_retrieved_seqs"));
+    trimrs.setToolTipText(MessageManager
+            .getString("label.trim_retrieved_sequences"));
     trimrs.setSelected(Cache.getDefault("TRIM_FETCHED_DATASET_SEQS", true));
     trimrs.addActionListener(new ActionListener()
     {
-      public void actionPerformed(ActionEvent e) {
-      trimrs.setSelected(trimrs.isSelected());
-      Cache.setProperty("TRIM_FETCHED_DATASET_SEQS", Boolean.valueOf(trimrs.isSelected()).toString());
-    };
+      public void actionPerformed(ActionEvent e)
+      {
+        trimrs.setSelected(trimrs.isSelected());
+        Cache.setProperty("TRIM_FETCHED_DATASET_SEQS",
+                Boolean.valueOf(trimrs.isSelected()).toString());
+      };
     });
     rfetch.add(trimrs);
-    JMenuItem fetchr = new JMenuItem(MessageManager.getString("label.standard_databases"));\r
-    fetchr.setToolTipText(MessageManager.getString("label.fetch_embl_uniprot"));\r
+    JMenuItem fetchr = new JMenuItem(
+            MessageManager.getString("label.standard_databases"));
+    fetchr.setToolTipText(MessageManager
+            .getString("label.fetch_embl_uniprot"));
     fetchr.addActionListener(new ActionListener()
     {
 
@@ -5301,9 +5411,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
                   }
 
                 });
-                fetchr.setToolTipText("<html>"
-                        + JvSwingUtils.wrapTooltip("Retrieve from "
-                                + src.getDbName()) + "<html>");
+                fetchr.setToolTipText(JvSwingUtils.wrapTooltip(true, MessageManager.formatMessage("label.fetch_retrieve_from", new String[]{src.getDbName()})));
                 dfetch.add(fetchr);
                 comp++;
               }
@@ -5313,7 +5421,9 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
                         .toArray(new DbSourceProxy[0]);
                 // fetch all entry
                 DbSourceProxy src = otherdb.get(0);
-                fetchr = new JMenuItem(MessageManager.formatMessage("label.fetch_all_param", new String[]{src.getDbSource()}));\r
+                fetchr = new JMenuItem(MessageManager.formatMessage(
+                        "label.fetch_all_param", new String[]
+                        { src.getDbSource() }));
                 fetchr.addActionListener(new ActionListener()
                 {
                   @Override
@@ -5334,15 +5444,11 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
                   }
                 });
 
-                fetchr.setToolTipText("<html>"
-                        + JvSwingUtils.wrapTooltip("Retrieve from all "
-                                + otherdb.size() + " sources in "
-                                + src.getDbSource() + "<br>First is :"
-                                + src.getDbName()) + "<html>");
+                fetchr.setToolTipText(JvSwingUtils.wrapTooltip(true, MessageManager.formatMessage("label.fetch_retrieve_from_all_sources", new String[]{Integer.valueOf(otherdb.size()).toString(), src.getDbSource(), src.getDbName()})));
                 dfetch.add(fetchr);
                 comp++;
                 // and then build the rest of the individual menus
-                ifetch = new JMenu("Sources from " + src.getDbSource());
+                ifetch = new JMenu(MessageManager.formatMessage("label.source_from_db_source", new String[]{src.getDbSource()}));
                 icomp = 0;
                 String imname = null;
                 int i = 0;
@@ -5355,7 +5461,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
                           0, 10) + "..." : dbname;
                   if (imname == null)
                   {
-                    imname = "from '" + sname + "'";
+                    imname = MessageManager.formatMessage("label.from_msname", new String[]{sname});
                   }
                   fetchr = new JMenuItem(msname);
                   final DbSourceProxy[] dassrc =
@@ -5382,13 +5488,13 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
 
                   });
                   fetchr.setToolTipText("<html>"
-                          + JvSwingUtils.wrapTooltip("Retrieve from "
-                                  + dbname) + "</html>");
+                          + MessageManager.formatMessage("label.fetch_retrieve_from", new String[]{dbname}));
                   ifetch.add(fetchr);
                   ++i;
                   if (++icomp >= mcomp || i == (otherdb.size()))
                   {
-                    ifetch.setText(MessageManager.formatMessage("label.source_to_target",imname,sname));
+                    ifetch.setText(MessageManager.formatMessage(
+                            "label.source_to_target", imname, sname));
                     dfetch.add(ifetch);
                     ifetch = new JMenu();
                     imname = null;
@@ -5400,7 +5506,8 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
               ++dbi;
               if (comp >= mcomp || dbi >= (dbclasses.length))
               {
-                dfetch.setText(MessageManager.formatMessage("label.source_to_target",mname,dbclass));
+                dfetch.setText(MessageManager.formatMessage(
+                        "label.source_to_target", mname, dbclass));
                 rfetch.add(dfetch);
                 dfetch = new JMenu();
                 mname = null;
@@ -5538,7 +5645,8 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
   @Override
   protected void makeGrpsFromSelection_actionPerformed(ActionEvent e)
   {
-    if (avc.makeGroupsFromSelection()) {
+    if (avc.makeGroupsFromSelection())
+    {
       PaintRefresher.Refresh(this, viewport.getSequenceSetId());
       alignPanel.updateAnnotation();
       alignPanel.paintAlignment(true);
@@ -5573,8 +5681,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener,
     if (!viewport.getSequenceSetId().equals(
             alignmentPanel.av.getSequenceSetId()))
     {
-      throw new Error(
-              "Implementation error: cannot show a view from another alignment in an AlignFrame.");
+      throw new Error(MessageManager.getString("error.implementation_error_cannot_show_view_alignment_frame"));
     }
     if (tabbedPane != null
             & alignPanels.indexOf(alignmentPanel) != tabbedPane
index de8f310..6d6531f 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 /*
@@ -1014,7 +1016,6 @@ public class AlignViewport extends AlignmentViewport implements
     centreColumnLabels = centrecolumnlabels;
   }
 
-
   /**
    * enable or disable the display of Database Cross References in the sequence
    * ID tooltip
index cad4339..cdac5b4 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -32,6 +34,7 @@ import jalview.datamodel.*;
 import jalview.jbgui.*;
 import jalview.schemes.*;
 import jalview.structure.StructureSelectionManager;
+import jalview.util.MessageManager;
 
 /**
  * DOCUMENT ME!
@@ -422,16 +425,19 @@ public class AlignmentPanel extends GAlignmentPanel implements
   protected void validateAnnotationDimensions(boolean adjustPanelHeight)
   {
     int height = annotationPanel.adjustPanelHeight();
-    
-    int theight = av.getCharHeight() * (av.getAlignment().getHeight() + (!av.hasHiddenRows() ? 0 : av.getAlignment().getHiddenSequences().getSize()));
-    float sscaling = (float) (theight/(1.0*theight+height));
-    float ascaling=(float)(height*1.0/alignFrame.getHeight());
+
+    int theight = av.getCharHeight()
+            * (av.getAlignment().getHeight() + (!av.hasHiddenRows() ? 0
+                    : av.getAlignment().getHiddenSequences().getSize()));
+    float sscaling = (float) (theight / (1.0 * theight + height));
+    float ascaling = (float) (height * 1.0 / alignFrame.getHeight());
     int rheight = alignFrame.getHeight() - height - av.getCharHeight();
     if (adjustPanelHeight)
     {
-      // NOTE: this logic is different in the applet. Need a better algorithm to define behaviour
+      // NOTE: this logic is different in the applet. Need a better algorithm to
+      // define behaviour
       // try and set height according to alignment
-      if (ascaling>0 && sscaling < 0.5)
+      if (ascaling > 0 && sscaling < 0.5)
       {
         // if the alignment is too big then
         // default is 0.5 split
@@ -439,10 +445,11 @@ public class AlignmentPanel extends GAlignmentPanel implements
       }
       else
       {
-        // if space for more than one sequence row left when annotation is fully displayed then set height to annotation height
-        // otherwise, leave at least two lines of sequence shown.  
-        height = (rheight>av.getCharHeight()) ? height : (-av.getCharHeight() * 3
-                + (int) (alignFrame.getHeight() * (1 - sscaling)));
+        // if space for more than one sequence row left when annotation is fully
+        // displayed then set height to annotation height
+        // otherwise, leave at least two lines of sequence shown.
+        height = (rheight > av.getCharHeight()) ? height
+                : (-av.getCharHeight() * 3 + (int) (alignFrame.getHeight() * (1 - sscaling)));
       }
     }
     else
@@ -703,7 +710,7 @@ public class AlignmentPanel extends GAlignmentPanel implements
         seqPanel.seqCanvas.fastPaint(scrollX, scrollY);
         scalePanel.repaint();
 
-        if (av.getShowAnnotation() && scrollX!=0)
+        if (av.getShowAnnotation() && scrollX != 0)
         {
           annotationPanel.fastPaint(scrollX);
         }
@@ -1109,13 +1116,11 @@ public class AlignmentPanel extends GAlignmentPanel implements
   void makeAlignmentImage(int type, File file)
   {
     long progress = System.currentTimeMillis();
-    boolean headless = (System.getProperty("java.awt.headless") != null
-            && System.getProperty("java.awt.headless").equals("true"));
+    boolean headless = (System.getProperty("java.awt.headless") != null && System
+            .getProperty("java.awt.headless").equals("true"));
     if (alignFrame != null && !headless)
     {
-      alignFrame.setProgressBar("Saving "
-              + (type == jalview.util.ImageMaker.PNG ? "PNG image"
-                      : "EPS file"), progress);
+      alignFrame.setProgressBar(MessageManager.formatMessage("status.saving_file", new String[]{(type == jalview.util.ImageMaker.PNG ? MessageManager.getString("label.png_image") : MessageManager.getString("label.eps_file"))}), progress);
     }
     try
     {
@@ -1202,7 +1207,7 @@ public class AlignmentPanel extends GAlignmentPanel implements
     {
       if (alignFrame != null && !headless)
       {
-        alignFrame.setProgressBar("Export complete.", progress);
+        alignFrame.setProgressBar(MessageManager.getString("status.export_complete"), progress);
       }
     }
   }
index 60a0759..7226eb0 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -50,8 +52,10 @@ public class AnnotationColourChooser extends JPanel
   jalview.datamodel.AlignmentAnnotation currentAnnotation;
 
   boolean adjusting = false;
+
   /**
-   * enabled if the user is dragging the slider - try to keep updates to a minimun
+   * enabled if the user is dragging the slider - try to keep updates to a
+   * minimun
    */
   boolean sliderDragging = false;
 
@@ -74,7 +78,9 @@ public class AnnotationColourChooser extends JPanel
     frame = new JInternalFrame();
     frame.setContentPane(this);
     frame.setLayer(JLayeredPane.PALETTE_LAYER);
-    Desktop.addInternalFrame(frame, MessageManager.getString("label.colour_by_annotation"), 520, 215);
+    Desktop.addInternalFrame(frame,
+            MessageManager.getString("label.colour_by_annotation"), 520,
+            215);
 
     slider.addChangeListener(new ChangeListener()
     {
@@ -92,21 +98,22 @@ public class AnnotationColourChooser extends JPanel
       @Override
       public void mousePressed(MouseEvent e)
       {
-        sliderDragging=true;
+        sliderDragging = true;
         super.mousePressed(e);
       }
 
       @Override
       public void mouseDragged(MouseEvent e)
       {
-        sliderDragging=true;
+        sliderDragging = true;
         super.mouseDragged(e);
       }
+
       public void mouseReleased(MouseEvent evt)
       {
         if (sliderDragging)
         {
-          sliderDragging=false;
+          sliderDragging = false;
           valueChanged(true);
         }
         ap.paintAlignment(true);
@@ -125,21 +132,25 @@ public class AnnotationColourChooser extends JPanel
     if (oldcs instanceof AnnotationColourGradient)
     {
       AnnotationColourGradient acg = (AnnotationColourGradient) oldcs;
-      currentColours.setSelected(acg.isPredefinedColours() || acg.getBaseColour()!=null);
-      if (!acg.isPredefinedColours() && acg.getBaseColour()==null)
+      currentColours.setSelected(acg.isPredefinedColours()
+              || acg.getBaseColour() != null);
+      if (!acg.isPredefinedColours() && acg.getBaseColour() == null)
       {
         minColour.setBackground(acg.getMinColour());
         maxColour.setBackground(acg.getMaxColour());
       }
       seqAssociated.setSelected(acg.isSeqAssociated());
-      
+
     }
     annotations = new JComboBox(
             getAnnotationItems(seqAssociated.isSelected()));
 
-    threshold.addItem(MessageManager.getString("label.threshold_feature_no_thereshold"));
-    threshold.addItem(MessageManager.getString("label.threshold_feature_above_thereshold"));
-    threshold.addItem(MessageManager.getString("label.threshold_feature_below_thereshold"));
+    threshold.addItem(MessageManager
+            .getString("label.threshold_feature_no_thereshold"));
+    threshold.addItem(MessageManager
+            .getString("label.threshold_feature_above_thereshold"));
+    threshold.addItem(MessageManager
+            .getString("label.threshold_feature_below_thereshold"));
 
     if (oldcs instanceof AnnotationColourGradient)
     {
@@ -157,8 +168,7 @@ public class AnnotationColourChooser extends JPanel
         threshold.setSelectedIndex(2);
         break;
       default:
-        throw new Error(
-                "Implementation error: don't know about threshold setting for current AnnotationColourGradient.");
+        throw new Error(MessageManager.getString("error.implementation_error_dont_know_about_thereshold_setting"));
       }
       thresholdIsMin.setSelected(acg.thresholdIsMinMax);
       thresholdValue.setText("" + acg.getAnnotationThreshold());
@@ -219,6 +229,7 @@ public class AnnotationColourChooser extends JPanel
     System.arraycopy(anmap, 0, annmap, 0, annmap.length);
     return list;
   }
+
   private void setDefaultMinMax()
   {
     minColour.setBackground(Cache.getDefaultColour("ANNOTATIONCOLOUR_MIN",
@@ -288,8 +299,8 @@ public class AnnotationColourChooser extends JPanel
     });
     defColours.setOpaque(false);
     defColours.setText(MessageManager.getString("action.set_defaults"));
-    defColours
-            .setToolTipText(MessageManager.getString("label.reset_min_max_colours_to_defaults"));
+    defColours.setToolTipText(MessageManager
+            .getString("label.reset_min_max_colours_to_defaults"));
     defColours.addActionListener(new ActionListener()
     {
 
@@ -331,7 +342,8 @@ public class AnnotationColourChooser extends JPanel
     thresholdValue.setColumns(7);
     currentColours.setFont(JvSwingUtils.getLabelFont());
     currentColours.setOpaque(false);
-    currentColours.setText(MessageManager.getString("label.use_original_colours"));
+    currentColours.setText(MessageManager
+            .getString("label.use_original_colours"));
     currentColours.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -341,7 +353,8 @@ public class AnnotationColourChooser extends JPanel
     });
     thresholdIsMin.setBackground(Color.white);
     thresholdIsMin.setFont(JvSwingUtils.getLabelFont());
-    thresholdIsMin.setText(MessageManager.getString("label.threshold_minmax"));
+    thresholdIsMin.setText(MessageManager
+            .getString("label.threshold_minmax"));
     thresholdIsMin.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent actionEvent)
@@ -351,7 +364,8 @@ public class AnnotationColourChooser extends JPanel
     });
     seqAssociated.setBackground(Color.white);
     seqAssociated.setFont(JvSwingUtils.getLabelFont());
-    seqAssociated.setText(MessageManager.getString("label.per_sequence_only"));
+    seqAssociated.setText(MessageManager
+            .getString("label.per_sequence_only"));
     seqAssociated.addActionListener(new ActionListener()
     {
 
@@ -457,7 +471,7 @@ public class AnnotationColourChooser extends JPanel
   public void minColour_actionPerformed()
   {
     Color col = JColorChooser.showDialog(this,
-            "Select Colour for Minimum Value", minColour.getBackground());
+            MessageManager.getString("label.select_colour_minimum_value"), minColour.getBackground());
     if (col != null)
     {
       minColour.setBackground(col);
@@ -469,7 +483,7 @@ public class AnnotationColourChooser extends JPanel
   public void maxColour_actionPerformed()
   {
     Color col = JColorChooser.showDialog(this,
-            "Select Colour for Maximum Value", maxColour.getBackground());
+            MessageManager.getString("label.select_colour_maximum_value"), maxColour.getBackground());
     if (col != null)
     {
       maxColour.setBackground(col);
@@ -490,11 +504,11 @@ public class AnnotationColourChooser extends JPanel
             .getSelectedIndex()]];
 
     int aboveThreshold = -1;
-    if (threshold.getSelectedIndex()==1)
+    if (threshold.getSelectedIndex() == 1)
     {
       aboveThreshold = AnnotationColourGradient.ABOVE_THRESHOLD;
     }
-    else if (threshold.getSelectedIndex()==2)
+    else if (threshold.getSelectedIndex() == 2)
     {
       aboveThreshold = AnnotationColourGradient.BELOW_THRESHOLD;
     }
@@ -676,7 +690,8 @@ public class AnnotationColourChooser extends JPanel
     {
       return;
     }
-    // TODO: JAL-1327 only update visible annotation thresholds if allAnnotation is false, since we only need to provide a quick visual indicator
+    // TODO: JAL-1327 only update visible annotation thresholds if allAnnotation
+    // is false, since we only need to provide a quick visual indicator
 
     float thr = currentAnnotation.threshold.value;
     for (int i = 0; i < av.getAlignment().getAlignmentAnnotation().length; i++)
index a199c95..315c3e2 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -73,7 +75,7 @@ public class AnnotationExporter extends JPanel
     this.ap = ap;
     features = true;
     CSVFormat.setVisible(false);
-    frame.setTitle("Export Features");
+    frame.setTitle(MessageManager.getString("label.export_features"));
   }
 
   public void exportAnnotations(AlignmentPanel ap,
@@ -87,7 +89,7 @@ public class AnnotationExporter extends JPanel
     this.annotations = annotations;
     this.sequenceGroups = list;
     this.alignmentProperties = alProperties;
-    frame.setTitle("Export Annotations");
+    frame.setTitle(MessageManager.getString("label.export_annotations"));
   }
 
   public void toFile_actionPerformed(ActionEvent e)
@@ -96,15 +98,15 @@ public class AnnotationExporter extends JPanel
             jalview.bin.Cache.getProperty("LAST_DIRECTORY"));
 
     chooser.setFileView(new JalviewFileView());
-    chooser.setDialogTitle(features ? "Save Features to File"
-            : "Save Annotation to File");
+    chooser.setDialogTitle(features ? MessageManager.getString("label.save_features_to_file")
+            : MessageManager.getString("label.save_annotation_to_file"));
     chooser.setToolTipText(MessageManager.getString("action.save"));
 
     int value = chooser.showSaveDialog(this);
 
     if (value == JalviewFileChooser.APPROVE_OPTION)
     {
-      String text = "No features found on alignment";
+      String text = MessageManager.getString("label.no_features_on_alignment");
       if (features)
       {
         if (GFFFormat.isSelected())
@@ -151,7 +153,7 @@ public class AnnotationExporter extends JPanel
 
   public void toTextbox_actionPerformed(ActionEvent e)
   {
-    String text = "No features found on alignment";
+    String text = MessageManager.getString("label.no_features_on_alignment");
     if (features)
     {
       if (GFFFormat.isSelected())
@@ -184,12 +186,21 @@ public class AnnotationExporter extends JPanel
     try
     {
       cap.setText(text);
-      Desktop.addInternalFrame(cap, (features ? MessageManager.formatMessage("label.features_for_params", new String[]{ap.alignFrame.getTitle()})
-              : MessageManager.formatMessage("label.annotations_for_params", new String[]{ap.alignFrame.getTitle()})), 600, 500);
+      Desktop.addInternalFrame(
+              cap,
+              (features ? MessageManager.formatMessage(
+                      "label.features_for_params", new String[]
+                      { ap.alignFrame.getTitle() }) : MessageManager
+                      .formatMessage("label.annotations_for_params",
+                              new String[]
+                              { ap.alignFrame.getTitle() })), 600, 500);
     } catch (OutOfMemoryError oom)
     {
-      new OOMWarning((features ? MessageManager.formatMessage("label.generating_features_for_params", new String[]{ap.alignFrame.getTitle()}) : MessageManager.formatMessage("label.generating_annotations_for_params", new String[]{ap.alignFrame.getTitle()}))
-              , oom);
+      new OOMWarning((features ? MessageManager.formatMessage(
+              "label.generating_features_for_params", new String[]
+              { ap.alignFrame.getTitle() }) : MessageManager.formatMessage(
+              "label.generating_annotations_for_params", new String[]
+              { ap.alignFrame.getTitle() })), oom);
       cap.dispose();
     }
 
index 2178e37..009b807 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -41,21 +43,21 @@ import jalview.util.MessageManager;
 public class AnnotationLabels extends JPanel implements MouseListener,
         MouseMotionListener, ActionListener
 {
-  static String TOGGLE_LABELSCALE = "Scale Label to Column";
+  String TOGGLE_LABELSCALE = MessageManager.getString("label.scale_label_to_column");
 
-  static String ADDNEW = "Add New Row";
+  String ADDNEW = MessageManager.getString("label.add_new_row");
 
-  static String EDITNAME = "Edit Label/Description";
+  String EDITNAME = MessageManager.getString("label.edit_label_description");
 
-  static String HIDE = "Hide This Row";
+  String HIDE = MessageManager.getString("label.hide_row");
 
-  static String DELETE = "Delete This Row";
+  String DELETE = MessageManager.getString("label.delete_row");
 
-  static String SHOWALL = "Show All Hidden Rows";
+  String SHOWALL = MessageManager.getString("label.show_all_hidden_rows");
 
-  static String OUTPUT_TEXT = "Export Annotation";
+  String OUTPUT_TEXT = MessageManager.getString("label.export_annotation");
 
-  static String COPYCONS_SEQ = "Copy Consensus Sequence";
+  String COPYCONS_SEQ = MessageManager.getString("label.copy_consensus_sequence");
 
   boolean resizePanel = false;
 
@@ -507,17 +509,40 @@ public class AnnotationLabels extends JPanel implements MouseListener,
         }
         else if (aa[selectedRow].sequenceRef != null)
         {
-          Vector sr = new Vector();
-          sr.addElement(aa[selectedRow].sequenceRef);
           if (evt.getClickCount() == 1)
           {
-            ap.seqPanel.ap.idPanel.highlightSearchResults(sr);
+            ap.seqPanel.ap.idPanel.highlightSearchResults(Arrays
+                    .asList(new SequenceI[]
+                    { aa[selectedRow].sequenceRef }));
           }
           else if (evt.getClickCount() >= 2)
           {
             ap.seqPanel.ap.idPanel.highlightSearchResults(null);
-            SequenceGroup sg = new SequenceGroup();
-            sg.addSequence(aa[selectedRow].sequenceRef, false);
+            SequenceGroup sg = ap.av.getSelectionGroup();
+            if (sg!=null)
+            {
+              // we make a copy rather than edit the current selection if no modifiers pressed
+              // see Enhancement JAL-1557
+              if (!(evt.isControlDown() || evt.isShiftDown()))
+              {
+                sg = new SequenceGroup(sg);
+                sg.clear();
+                sg.addSequence(aa[selectedRow].sequenceRef, false);
+              } else {
+                if (evt.isControlDown())
+                {
+                  sg.addOrRemove(aa[selectedRow].sequenceRef, true);
+                } else {
+                  // notionally, we should also add intermediate sequences from last added sequence ?
+                  sg.addSequence(aa[selectedRow].sequenceRef, true);
+                }
+              }
+            } else {
+              sg = new SequenceGroup();
+              sg.setStartRes(0);
+              sg.setEndRes(ap.av.getAlignment().getWidth()-1);
+              sg.addSequence(aa[selectedRow].sequenceRef, false);
+            }
             ap.av.setSelectionGroup(sg);
             ap.av.sendSelection();
             ap.paintAlignment(false);
@@ -532,7 +557,8 @@ public class AnnotationLabels extends JPanel implements MouseListener,
       return;
     }
 
-    JPopupMenu pop = new JPopupMenu(MessageManager.getString("label.annotations"));
+    JPopupMenu pop = new JPopupMenu(
+            MessageManager.getString("label.annotations"));
     JMenuItem item = new JMenuItem(ADDNEW);
     item.addActionListener(this);
     pop.add(item);
@@ -587,7 +613,7 @@ public class AnnotationLabels extends JPanel implements MouseListener,
         pop.addSeparator();
         // av and sequencegroup need to implement same interface for
         final JCheckBoxMenuItem cbmi = new JCheckBoxMenuItem(
-                "Ignore Gaps In Consensus",
+                       MessageManager.getString("label.ignore_gaps_consensus"),
                 (aa[selectedRow].groupRef != null) ? aa[selectedRow].groupRef
                         .getIgnoreGapsConsensus() : ap.av
                         .getIgnoreGapsConsensus());
@@ -613,7 +639,7 @@ public class AnnotationLabels extends JPanel implements MouseListener,
         if (aaa.groupRef != null)
         {
           final JCheckBoxMenuItem chist = new JCheckBoxMenuItem(
-                  "Show Group Histogram",
+                         MessageManager.getString("label.show_group_histogram"),
                   aa[selectedRow].groupRef.isShowConsensusHistogram());
           chist.addActionListener(new ActionListener()
           {
@@ -632,7 +658,7 @@ public class AnnotationLabels extends JPanel implements MouseListener,
           });
           pop.add(chist);
           final JCheckBoxMenuItem cprofl = new JCheckBoxMenuItem(
-                  "Show Group Logo",
+                         MessageManager.getString("label.show_group_logo"),
                   aa[selectedRow].groupRef.isShowSequenceLogo());
           cprofl.addActionListener(new ActionListener()
           {
@@ -651,7 +677,7 @@ public class AnnotationLabels extends JPanel implements MouseListener,
           });
           pop.add(cprofl);
           final JCheckBoxMenuItem cproflnorm = new JCheckBoxMenuItem(
-                  "Normalise Group Logo",
+                         MessageManager.getString("label.normalise_group_logo"),
                   aa[selectedRow].groupRef.isNormaliseSequenceLogo());
           cproflnorm.addActionListener(new ActionListener()
           {
@@ -676,7 +702,7 @@ public class AnnotationLabels extends JPanel implements MouseListener,
         else
         {
           final JCheckBoxMenuItem chist = new JCheckBoxMenuItem(
-                  "Show Histogram", av.isShowConsensusHistogram());
+                         MessageManager.getString("label.show_histogram"), av.isShowConsensusHistogram());
           chist.addActionListener(new ActionListener()
           {
             public void actionPerformed(ActionEvent e)
@@ -695,7 +721,7 @@ public class AnnotationLabels extends JPanel implements MouseListener,
           });
           pop.add(chist);
           final JCheckBoxMenuItem cprof = new JCheckBoxMenuItem(
-                  "Show Logo", av.isShowSequenceLogo());
+                         MessageManager.getString("label.show_logo"), av.isShowSequenceLogo());
           cprof.addActionListener(new ActionListener()
           {
             public void actionPerformed(ActionEvent e)
@@ -714,7 +740,7 @@ public class AnnotationLabels extends JPanel implements MouseListener,
           });
           pop.add(cprof);
           final JCheckBoxMenuItem cprofnorm = new JCheckBoxMenuItem(
-                  "Normalise Logo", av.isNormaliseSequenceLogo());
+                         MessageManager.getString("label.normalise_logo"), av.isNormaliseSequenceLogo());
           cprofnorm.addActionListener(new ActionListener()
           {
             public void actionPerformed(ActionEvent e)
@@ -823,11 +849,14 @@ public class AnnotationLabels extends JPanel implements MouseListener,
   }
 
   /**
-   * Draw the full set of annotation Labels for the alignment at the given cursor
+   * Draw the full set of annotation Labels for the alignment at the given
+   * cursor
+   * 
+   * @param g
+   *          Graphics2D instance (needed for font scaling)
+   * @param width
+   *          Width for scaling labels
    * 
-   * @param g Graphics2D instance (needed for font scaling)
-   * @param width Width for scaling labels
-   *          
    */
   public void drawComponent(Graphics g, int width)
   {
@@ -835,12 +864,18 @@ public class AnnotationLabels extends JPanel implements MouseListener,
   }
 
   private final boolean debugRedraw = false;
+
   /**
-   * Draw the full set of annotation Labels for the alignment at the given cursor
+   * Draw the full set of annotation Labels for the alignment at the given
+   * cursor
    * 
-   * @param g Graphics2D instance (needed for font scaling)
-   * @param clip - true indicates that only current visible area needs to be rendered
-   * @param width Width for scaling labels         
+   * @param g
+   *          Graphics2D instance (needed for font scaling)
+   * @param clip
+   *          - true indicates that only current visible area needs to be
+   *          rendered
+   * @param width
+   *          Width for scaling labels
    */
   public void drawComponent(Graphics g, boolean clip, int width)
   {
@@ -859,7 +894,7 @@ public class AnnotationLabels extends JPanel implements MouseListener,
 
     g.translate(0, scrollOffset);
     g.setColor(Color.black);
-    
+
     AlignmentAnnotation[] aa = av.getAlignment().getAlignmentAnnotation();
     int fontHeight = g.getFont().getSize();
     int y = 0;
@@ -869,18 +904,20 @@ public class AnnotationLabels extends JPanel implements MouseListener,
     Font baseFont = g.getFont();
     FontMetrics baseMetrics = fm;
     int ofontH = fontHeight;
-    int sOffset=0;
+    int sOffset = 0;
     int visHeight = 0;
-    int[] visr = (ap!=null && ap.annotationPanel!=null) ? ap.annotationPanel.getVisibleVRange() : null;
-    if (clip && visr!=null){ 
-      sOffset = visr[0]; 
+    int[] visr = (ap != null && ap.annotationPanel != null) ? ap.annotationPanel
+            .getVisibleVRange() : null;
+    if (clip && visr != null)
+    {
+      sOffset = visr[0];
       visHeight = visr[1];
     }
-    boolean visible = true,before=false,after=false;
+    boolean visible = true, before = false, after = false;
     if (aa != null)
     {
       hasHiddenRows = false;
-      int olY=0;
+      int olY = 0;
       for (int i = 0; i < aa.length; i++)
       {
         visible = true;
@@ -889,33 +926,39 @@ public class AnnotationLabels extends JPanel implements MouseListener,
           hasHiddenRows = true;
           continue;
         }
-        olY=y;
+        olY = y;
         y += aa[i].height;
-        if (clip) {if (y<sOffset)
+        if (clip)
         {
-          if (!before)
+          if (y < sOffset)
           {
-            if (debugRedraw) {
-              System.out.println("before vis: "+i);
+            if (!before)
+            {
+              if (debugRedraw)
+              {
+                System.out.println("before vis: " + i);
+              }
+              before = true;
             }
-          before=true;
+            // don't draw what isn't visible
+            continue;
           }
-          // don't draw what isn't visible
-          continue;
-        }
-        if (olY>visHeight)
-        {
-
-          if (!after)
+          if (olY > visHeight)
           {
-            if (debugRedraw) {
-              System.out.println("Scroll offset: "+sOffset+" after vis: "+i);
+
+            if (!after)
+            {
+              if (debugRedraw)
+              {
+                System.out.println("Scroll offset: " + sOffset
+                        + " after vis: " + i);
+              }
+              after = true;
             }
-          after=true;
+            // don't draw what isn't visible
+            continue;
           }
-          // don't draw what isn't visible
-          continue;
-        }}
+        }
         g.setColor(Color.black);
 
         offset = -aa[i].height / 2;
@@ -933,7 +976,8 @@ public class AnnotationLabels extends JPanel implements MouseListener,
         if (aa[i].graphGroup > -1)
         {
           int groupSize = 0;
-          // TODO: JAL-1291 revise rendering model so the graphGroup map is computed efficiently for all visible labels
+          // TODO: JAL-1291 revise rendering model so the graphGroup map is
+          // computed efficiently for all visible labels
           for (int gg = 0; gg < aa.length; gg++)
           {
             if (aa[gg].graphGroup == aa[i].graphGroup)
@@ -1012,7 +1056,8 @@ public class AnnotationLabels extends JPanel implements MouseListener,
     if (!av.wrapAlignment && ((aa == null) || (aa.length < 1)))
     {
       g.drawString(MessageManager.getString("label.right_click"), 2, 8);
-      g.drawString(MessageManager.getString("label.to_add_annotation"), 2, 18);
+      g.drawString(MessageManager.getString("label.to_add_annotation"), 2,
+              18);
     }
   }
 }
index 128110b..4adeb83 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -40,20 +42,20 @@ public class AnnotationPanel extends JPanel implements AwtRenderPanelI,
         MouseListener, MouseWheelListener, MouseMotionListener,
         ActionListener, AdjustmentListener, Scrollable
 {
-  final String HELIX = "Helix";
+  String HELIX = MessageManager.getString("label.helix");
 
-  final String SHEET = "Sheet";
+  String SHEET = MessageManager.getString("label.sheet");
 
   /**
    * For RNA secondary structure "stems" aka helices
    */
-  final String STEM = "RNA Helix";
+  String STEM = MessageManager.getString("label.rna_helix");
 
-  final String LABEL = "Label";
+  String LABEL = MessageManager.getString("label.label");
 
-  final String REMOVE = "Remove Annotation";
+  String REMOVE = MessageManager.getString("label.remove_annotation");
 
-  final String COLOUR = "Colour";
+  String COLOUR = MessageManager.getString("action.colour");
 
   public final Color HELIX_COLOUR = Color.red.darker();
 
@@ -269,8 +271,8 @@ public class AnnotationPanel extends JPanel implements AwtRenderPanelI,
     else if (evt.getActionCommand().equals(LABEL))
     {
       String exMesg = collectAnnotVals(anot, av.getColumnSelection(), LABEL);
-      String label = JOptionPane.showInputDialog(this, MessageManager.getString("label.enter_label"),
-              exMesg);
+      String label = JOptionPane.showInputDialog(this,
+              MessageManager.getString("label.enter_label"), exMesg);
 
       if (label == null)
       {
@@ -305,7 +307,7 @@ public class AnnotationPanel extends JPanel implements AwtRenderPanelI,
     else if (evt.getActionCommand().equals(COLOUR))
     {
       Color col = JColorChooser.showDialog(this,
-              "Choose foreground colour", Color.black);
+              MessageManager.getString("label.select_foreground_colour"), Color.black);
 
       for (int i = 0; i < av.getColumnSelection().size(); i++)
       {
@@ -350,8 +352,8 @@ public class AnnotationPanel extends JPanel implements AwtRenderPanelI,
         aa[activeRow].hasIcons = true;
       }
 
-      String label = JOptionPane.showInputDialog(
-              MessageManager.getString("label.enter_label_for_the_structure"), symbol);
+      String label = JOptionPane.showInputDialog(MessageManager
+              .getString("label.enter_label_for_the_structure"), symbol);
 
       if (label == null)
       {
@@ -363,7 +365,7 @@ public class AnnotationPanel extends JPanel implements AwtRenderPanelI,
         aa[activeRow].hasText = true;
         if (evt.getActionCommand().equals(STEM))
         {
-          aa[activeRow].showAllColLabels=true;
+          aa[activeRow].showAllColLabels = true;
         }
       }
       for (int i = 0; i < av.getColumnSelection().size(); i++)
@@ -380,12 +382,12 @@ public class AnnotationPanel extends JPanel implements AwtRenderPanelI,
 
         anot[index].secondaryStructure = type;
         anot[index].displayCharacter = label;
-        
+
       }
     }
     av.getAlignment().validateAnnotation(aa[activeRow]);
     ap.alignmentChanged();
-    
+
     adjustPanelHeight();
     repaint();
 
@@ -488,7 +490,8 @@ public class AnnotationPanel extends JPanel implements AwtRenderPanelI,
         return;
       }
 
-      JPopupMenu pop = new JPopupMenu(MessageManager.getString("label.structure_type"));
+      JPopupMenu pop = new JPopupMenu(
+              MessageManager.getString("label.structure_type"));
       JMenuItem item;
       /*
        * Just display the needed structure options
@@ -670,7 +673,8 @@ public class AnnotationPanel extends JPanel implements AwtRenderPanelI,
               && aa[row].annotations[res].description != null
               && aa[row].annotations[res].description.length() > 0)
       {
-        this.setToolTipText("<html>"+JvSwingUtils.wrapTooltip(aa[row].annotations[res].description)+"</html>");
+        this.setToolTipText(JvSwingUtils
+                        .wrapTooltip(true, aa[row].annotations[res].description));
       }
       else
       {
@@ -706,11 +710,11 @@ public class AnnotationPanel extends JPanel implements AwtRenderPanelI,
   @Override
   public void mouseClicked(MouseEvent evt)
   {
-//    if (activeRow != -1)
-//    {
-//      AlignmentAnnotation[] aa = av.getAlignment().getAlignmentAnnotation();
-//      AlignmentAnnotation anot = aa[activeRow];
-//    }
+    // if (activeRow != -1)
+    // {
+    // AlignmentAnnotation[] aa = av.getAlignment().getAlignmentAnnotation();
+    // AlignmentAnnotation anot = aa[activeRow];
+    // }
   }
 
   // TODO mouseClicked-content and drawCursor are quite experimental!
@@ -802,10 +806,12 @@ public class AnnotationPanel extends JPanel implements AwtRenderPanelI,
     imageFresh = false;
     g.drawImage(image, 0, 0, this);
   }
+
   /**
    * set true to enable redraw timing debug output on stderr
    */
   private final boolean debugRedraw = false;
+
   /**
    * non-Thread safe repaint
    * 
@@ -822,9 +828,9 @@ public class AnnotationPanel extends JPanel implements AwtRenderPanelI,
       repaint();
       return;
     }
-    long stime=System.currentTimeMillis();
+    long stime = System.currentTimeMillis();
     gg.copyArea(0, 0, imgWidth, getHeight(), -horizontal * av.charWidth, 0);
-    long mtime=System.currentTimeMillis();
+    long mtime = System.currentTimeMillis();
     int sr = av.startRes;
     int er = av.endRes + 1;
     int transX = 0;
@@ -844,12 +850,15 @@ public class AnnotationPanel extends JPanel implements AwtRenderPanelI,
     drawComponent(gg, sr, er);
 
     gg.translate(-transX, 0);
-    long dtime=System.currentTimeMillis();
+    long dtime = System.currentTimeMillis();
     fastPaint = true;
     repaint();
-    long rtime=System.currentTimeMillis();
-    if (debugRedraw) {
-      System.err.println("Scroll:\t"+horizontal+"\tCopyArea:\t"+(mtime-stime)+"\tDraw component:\t"+(dtime-mtime)+"\tRepaint call:\t"+(rtime-dtime));
+    long rtime = System.currentTimeMillis();
+    if (debugRedraw)
+    {
+      System.err.println("Scroll:\t" + horizontal + "\tCopyArea:\t"
+              + (mtime - stime) + "\tDraw component:\t" + (dtime - mtime)
+              + "\tRepaint call:\t" + (rtime - dtime));
     }
 
   }
@@ -911,7 +920,7 @@ public class AnnotationPanel extends JPanel implements AwtRenderPanelI,
       }
       fadedImage = null;
     }
-    
+
     g.setColor(Color.white);
     g.fillRect(0, 0, (endRes - startRes) * av.charWidth, getHeight());
 
@@ -929,7 +938,8 @@ public class AnnotationPanel extends JPanel implements AwtRenderPanelI,
       g.setColor(Color.black);
       if (av.validCharWidth)
       {
-        g.drawString(MessageManager.getString("label.alignment_has_no_annotations"), 20, 15);
+        g.drawString(MessageManager
+                .getString("label.alignment_has_no_annotations"), 20, 15);
       }
 
       return;
@@ -959,16 +969,21 @@ public class AnnotationPanel extends JPanel implements AwtRenderPanelI,
   {
     return imgWidth;
   }
+
   private int[] bounds = new int[2];
+
   @Override
   public int[] getVisibleVRange()
   {
-    if (ap!=null && ap.alabels!=null)
+    if (ap != null && ap.alabels != null)
     {
-    int sOffset=-ap.alabels.scrollOffset;
-    int visHeight = sOffset+ap.annotationSpaceFillerHolder.getHeight();
-    bounds[0] = sOffset; bounds[1]=visHeight;
-    return bounds;
-    } else return null;
+      int sOffset = -ap.alabels.scrollOffset;
+      int visHeight = sOffset + ap.annotationSpaceFillerHolder.getHeight();
+      bounds[0] = sOffset;
+      bounds[1] = visHeight;
+      return bounds;
+    }
+    else
+      return null;
   }
 }
index bf32dff..998db4b 100644 (file)
@@ -1,25 +1,28 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
 
 import java.util.*;
 import java.awt.*;
+
 import javax.swing.*;
 import javax.swing.event.*;
 
@@ -28,17 +31,19 @@ import java.io.*;
 
 import jalview.jbgui.GStructureViewer;
 import jalview.api.SequenceStructureBinding;
+import jalview.api.structures.JalviewStructureDisplayI;
 import jalview.bin.Cache;
 import jalview.datamodel.*;
 import jalview.gui.ViewSelectionMenu.ViewSetProvider;
 import jalview.datamodel.PDBEntry;
+import jalview.ext.jmol.JalviewJmolBinding;
 import jalview.io.*;
 import jalview.schemes.*;
 import jalview.util.MessageManager;
 import jalview.util.Platform;
 
 public class AppJmol extends GStructureViewer implements Runnable,
-        SequenceStructureBinding, ViewSetProvider
+        ViewSetProvider, JalviewStructureDisplayI
 
 {
   AppJmolBinding jmb;
@@ -172,7 +177,7 @@ public class AppJmol extends GStructureViewer implements Runnable,
       _alignwith = new Vector<AlignmentPanel>();
     }
 
-    seqColourBy = new ViewSelectionMenu("Colour by ..", this, _colourwith,
+    seqColourBy = new ViewSelectionMenu(MessageManager.getString("label.colour_by"), this, _colourwith,
             new ItemListener()
             {
 
@@ -192,7 +197,7 @@ public class AppJmol extends GStructureViewer implements Runnable,
             });
     viewMenu.add(seqColourBy);
     final ItemListener handler;
-    JMenu alpanels = new ViewSelectionMenu("Superpose with ..", this,
+    JMenu alpanels = new ViewSelectionMenu(MessageManager.getString("label.superpose_with"), this,
             _alignwith, handler = new ItemListener()
             {
 
@@ -200,7 +205,11 @@ public class AppJmol extends GStructureViewer implements Runnable,
               public void itemStateChanged(ItemEvent e)
               {
                 alignStructs.setEnabled(_alignwith.size() > 0);
-                alignStructs.setToolTipText(MessageManager.formatMessage("label.align_structures_using_linked_alignment_views", new String[] {new Integer(_alignwith.size()).toString()}));\r
+                alignStructs.setToolTipText(MessageManager
+                        .formatMessage(
+                                "label.align_structures_using_linked_alignment_views",
+                                new String[]
+                                { new Integer(_alignwith.size()).toString() }));
               }
             });
     handler.itemStateChanged(null);
@@ -252,9 +261,11 @@ public class AppJmol extends GStructureViewer implements Runnable,
     if (alreadyMapped != null)
     {
       int option = JOptionPane.showInternalConfirmDialog(Desktop.desktop,
-                 MessageManager.formatMessage("label.pdb_entry_is_already_displayed",  new String[]{pdbentry.getId()}),
-              MessageManager.formatMessage("label.map_sequences_to_visible_window", new String[]{pdbentry.getId()}),
-              JOptionPane.YES_NO_OPTION);
+              MessageManager.formatMessage(
+                      "label.pdb_entry_is_already_displayed", new String[]
+                      { pdbentry.getId() }), MessageManager.formatMessage(
+                      "label.map_sequences_to_visible_window", new String[]
+                      { pdbentry.getId() }), JOptionPane.YES_NO_OPTION);
 
       if (option == JOptionPane.YES_OPTION)
       {
@@ -309,10 +320,15 @@ public class AppJmol extends GStructureViewer implements Runnable,
       {
         AppJmol topJmol = (AppJmol) jm.nextElement();
         // TODO: highlight topJmol in view somehow
-        int option = JOptionPane.showInternalConfirmDialog(Desktop.desktop,
-                       MessageManager.formatMessage("label.add_pdbentry_to_view", new String[]{pdbentry.getId(),topJmol.getTitle()}),
-                       MessageManager.getString("label.align_to_existing_structure_view"),
-                JOptionPane.YES_NO_OPTION);
+        int option = JOptionPane
+                .showInternalConfirmDialog(
+                        Desktop.desktop,
+                        MessageManager.formatMessage(
+                                "label.add_pdbentry_to_view", new String[]
+                                { pdbentry.getId(), topJmol.getTitle() }),
+                        MessageManager
+                                .getString("label.align_to_existing_structure_view"),
+                        JOptionPane.YES_NO_OPTION);
         if (option == JOptionPane.YES_OPTION)
         {
           topJmol.useAlignmentPanelForSuperposition(ap);
@@ -617,7 +633,8 @@ public class AppJmol extends GStructureViewer implements Runnable,
     {
       return;
     }
-    JMenuItem menuItem = new JMenuItem(MessageManager.getString("label.all"));\r
+    JMenuItem menuItem = new JMenuItem(
+            MessageManager.getString("label.all"));
     menuItem.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent evt)
@@ -674,7 +691,7 @@ public class AppJmol extends GStructureViewer implements Runnable,
     jmb.centerViewer(toshow);
   }
 
-  void closeViewer()
+  public void closeViewer()
   {
     jmb.closeViewer();
     ap = null;
@@ -714,7 +731,7 @@ public class AppJmol extends GStructureViewer implements Runnable,
           long hdl = pdbid.hashCode() - System.currentTimeMillis();
           if (progressBar != null)
           {
-            progressBar.setProgressBar("Fetching PDB " + pdbid, hdl);
+            progressBar.setProgressBar(MessageManager.formatMessage("status.fetching_pdb", new String[]{pdbid}), hdl);
           }
           try
           {
@@ -730,7 +747,7 @@ public class AppJmol extends GStructureViewer implements Runnable,
           }
           if (progressBar != null)
           {
-            progressBar.setProgressBar("Finished.", hdl);
+            progressBar.setProgressBar(MessageManager.getString("label.state_completed"), hdl);
           }
           if (pdbseq != null)
           {
@@ -779,9 +796,12 @@ public class AppJmol extends GStructureViewer implements Runnable,
     if (errormsgs.length() > 0)
     {
 
-      JOptionPane.showInternalMessageDialog(Desktop.desktop,
-                 MessageManager.formatMessage("label.pdb_entries_couldnt_be_retrieved", new String[]{errormsgs.toString()}),
-              MessageManager.getString("label.couldnt_load_file"), JOptionPane.ERROR_MESSAGE);
+      JOptionPane.showInternalMessageDialog(Desktop.desktop, MessageManager
+              .formatMessage("label.pdb_entries_couldnt_be_retrieved",
+                      new String[]
+                      { errormsgs.toString() }), MessageManager
+              .getString("label.couldnt_load_file"),
+              JOptionPane.ERROR_MESSAGE);
 
     }
     long lastnotify = jmb.getLoadNotifiesHandled();
@@ -829,7 +849,8 @@ public class AppJmol extends GStructureViewer implements Runnable,
 
       // need to wait around until script has finished
       while (addingStructures ? lastnotify >= jmb.getLoadNotifiesHandled()
-              : (jmb.isFinishedInit() && jmb.getPdbFile()!=null && jmb.getPdbFile().length != jmb.pdbentry.length))
+              : (jmb.isFinishedInit() && jmb.getPdbFile() != null && jmb
+                      .getPdbFile().length != jmb.pdbentry.length))
       {
         try
         {
@@ -870,8 +891,8 @@ public class AppJmol extends GStructureViewer implements Runnable,
             jalview.bin.Cache.getProperty("LAST_DIRECTORY"));
 
     chooser.setFileView(new JalviewFileView());
-    chooser.setDialogTitle("Save PDB File");
-    chooser.setToolTipText(MessageManager.getString("action.save"));\r
+    chooser.setDialogTitle(MessageManager.getString("label.save_pdb_file"));
+    chooser.setToolTipText(MessageManager.getString("action.save"));
 
     int value = chooser.showSaveDialog(this);
 
@@ -919,8 +940,9 @@ public class AppJmol extends GStructureViewer implements Runnable,
       cap.dispose();
       return;
     }
-    jalview.gui.Desktop.addInternalFrame(cap, MessageManager.getString("label.pdb_sequence_mapping"),\r
-            550, 600);
+    jalview.gui.Desktop.addInternalFrame(cap,
+            MessageManager.getString("label.pdb_sequence_mapping"), 550,
+            600);
   }
 
   /**
@@ -1074,7 +1096,7 @@ public class AppJmol extends GStructureViewer implements Runnable,
   public void backGround_actionPerformed(ActionEvent actionEvent)
   {
     java.awt.Color col = JColorChooser.showDialog(this,
-            "Select Background Colour", null);
+            MessageManager.getString("label.select_backgroud_colour"), null);
     if (col != null)
     {
       jmb.setBackgroundColour(col);
@@ -1142,7 +1164,8 @@ public class AppJmol extends GStructureViewer implements Runnable,
         g.fillRect(0, 0, currentSize.width, currentSize.height);
         g.setColor(Color.white);
         g.setFont(new Font("Verdana", Font.BOLD, 14));
-        g.drawString(MessageManager.getString("label.error_loading_file") + "...", 20, currentSize.height / 2);
+        g.drawString(MessageManager.getString("label.error_loading_file")
+                + "...", 20, currentSize.height / 2);
         StringBuffer sb = new StringBuffer();
         int lines = 0;
         for (int e = 0; e < jmb.pdbentry.length; e++)
@@ -1167,7 +1190,8 @@ public class AppJmol extends GStructureViewer implements Runnable,
         g.fillRect(0, 0, currentSize.width, currentSize.height);
         g.setColor(Color.white);
         g.setFont(new Font("Verdana", Font.BOLD, 14));
-        g.drawString(MessageManager.getString("label.retrieving_pdb_data"), 20, currentSize.height / 2);
+        g.drawString(MessageManager.getString("label.retrieving_pdb_data"),
+                20, currentSize.height / 2);
       }
       else
       {
@@ -1335,4 +1359,9 @@ public class AppJmol extends GStructureViewer implements Runnable,
     return !jmb.isColourBySequence();
   }
 
+  public JalviewJmolBinding getBinding()
+  {
+    return jmb;
+  }
+
 }
index 2424f90..7fa300e 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
index f047199..4fe9ac2 100644 (file)
@@ -1,35 +1,51 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
 
-import java.util.*;
+import jalview.bin.Cache;
+import jalview.datamodel.ColumnSelection;
+import jalview.datamodel.SequenceGroup;
+import jalview.datamodel.SequenceI;
+import jalview.structure.SecondaryStructureListener;
+import jalview.structure.SelectionListener;
+import jalview.structure.SelectionSource;
+import jalview.structure.StructureSelectionManager;
+import jalview.structure.VamsasSource;
+import jalview.util.ShiftList;
+
+import java.awt.BorderLayout;
+import java.awt.Color;
+import java.util.ArrayList;
+import java.util.Hashtable;
+import java.util.Map;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
-import java.awt.*;
 
-import javax.swing.*;
+import javax.swing.JInternalFrame;
+import javax.swing.JSplitPane;
 
 import jalview.bin.Cache;
-import jalview.datamodel.*;
-import jalview.structure.*;
 import jalview.util.MessageManager;
 import jalview.util.ShiftList;
+
 import fr.orsay.lri.varna.VARNAPanel;
 import fr.orsay.lri.varna.exceptions.ExceptionFileFormatOrSyntax;
 import fr.orsay.lri.varna.exceptions.ExceptionUnmatchedClosingParentheses;
@@ -66,12 +82,23 @@ public class AppVarna extends JInternalFrame implements
   public AppVarna(String sname, SequenceI seq, String strucseq,
           String struc, String name, AlignmentPanel ap)
   {
+
+    // System.out.println("1:"+sname);
+    // System.out.println("2:"+seq);
+    // System.out.println("3:"+strucseq);
+    // System.out.println("4:"+struc);
+    // System.out.println("5:"+name);
+    // System.out.println("6:"+ap);
     this.ap = ap;
     ArrayList<RNA> rnaList = new ArrayList<RNA>();
     RNA rna1 = new RNA(name);
     try
     {
+
       rna1.setRNA(strucseq, replaceOddGaps(struc));
+      // System.out.println("The sequence is :"+rna1.getSeq());
+      // System.out.println("The sequence is:"+struc);
+      // System.out.println("The sequence is:"+replaceOddGaps(struc).toString());
     } catch (ExceptionUnmatchedClosingParentheses e2)
     {
       e2.printStackTrace();
@@ -82,6 +109,7 @@ public class AppVarna extends JInternalFrame implements
     RNA trim = trimRNA(rna1, "trimmed " + sname);
     rnaList.add(trim);
     rnaList.add(rna1);
+
     rnas.put(seq, rna1);
     rnas.put(seq, trim);
     rna1.setName(sname + " (with gaps)");
@@ -99,16 +127,18 @@ public class AppVarna extends JInternalFrame implements
     }
     vab = new AppVarnaBinding(rnaList);
     // vab = new AppVarnaBinding(seq,struc);
-    // System.out.println("Hallo: "+name);
     this.name = sname + " trimmed to " + name;
     initVarna();
+
     ssm = ap.getStructureSelectionManager();
+    // System.out.println(ssm.toString());
     ssm.addStructureViewerListener(this);
     ssm.addSelectionListener(this);
   }
 
   public void initVarna()
   {
+
     // vab.setFinishedInit(false);
     varnaPanel = vab.get_varnaPanel();
     setBackground(Color.white);
@@ -119,10 +149,12 @@ public class AppVarna extends JInternalFrame implements
     // getContentPane().add(vab.getTools(), BorderLayout.NORTH);
     varnaPanel.addVARNAListener(this);
     varnaPanel.addSelectionListener(this);
-    jalview.gui.Desktop.addInternalFrame(this, MessageManager.formatMessage("label.varna_params", new String[]{name}),
-            getBounds().width, getBounds().height);
+    jalview.gui.Desktop.addInternalFrame(this,
+            MessageManager.formatMessage("label.varna_params", new String[]
+            { name }), getBounds().width, getBounds().height);
     this.pack();
     showPanel(true);
+
   }
 
   public String replaceOddGaps(String oldStr)
@@ -138,6 +170,7 @@ public class AppVarna extends JInternalFrame implements
   public RNA trimRNA(RNA rna, String name)
   {
     ShiftList offset = new ShiftList();
+
     RNA rnaTrim = new RNA(name);
     try
     {
@@ -400,4 +433,18 @@ public class AppVarna extends JInternalFrame implements
 
   }
 
+  @Override
+  public void onTranslationChanged()
+  {
+    // TODO Auto-generated method stub
+
+  }
+
+  @Override
+  public void onZoomLevelChanged()
+  {
+    // TODO Auto-generated method stub
+
+  }
+
 }
index d191212..a738a2c 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -46,20 +48,14 @@ import java.util.List;
 
 import javax.swing.DefaultListModel;
 import javax.swing.DefaultListSelectionModel;
-import javax.swing.Icon;
 import javax.swing.JButton;
-import javax.swing.JFrame;
 import javax.swing.JLabel;
 import javax.swing.JList;
-import javax.swing.JOptionPane;
 import javax.swing.JPanel;
 import javax.swing.JScrollPane;
-import javax.swing.JSplitPane;
 import javax.swing.JTextField;
 import javax.swing.ListModel;
 import javax.swing.ListSelectionModel;
-import javax.swing.UIManager;
-import javax.swing.UnsupportedLookAndFeelException;
 import javax.swing.event.ListSelectionEvent;
 import javax.swing.event.ListSelectionListener;
 
@@ -107,17 +103,23 @@ public class AppVarnaBinding extends jalview.ext.varna.JalviewVarnaBinding
 
   private JTextField _seq = new JTextField();
 
-  private JLabel _strLabel = new JLabel(MessageManager.getString("label.str"));
+  private JLabel _strLabel = new JLabel(
+          MessageManager.getString("label.str"));
 
-  private JLabel _seqLabel = new JLabel(MessageManager.getString("label.seq"));
+  private JLabel _seqLabel = new JLabel(
+          MessageManager.getString("label.seq"));
 
-  private JButton _createButton = new JButton(MessageManager.getString("action.create"));
+  private JButton _createButton = new JButton(
+          MessageManager.getString("action.create"));
 
-  private JButton _updateButton = new JButton(MessageManager.getString("action.update"));
+  private JButton _updateButton = new JButton(
+          MessageManager.getString("action.update"));
 
-  private JButton _deleteButton = new JButton(MessageManager.getString("action.delete"));
+  private JButton _deleteButton = new JButton(
+          MessageManager.getString("action.delete"));
 
-  private JButton _duplicateButton = new JButton(MessageManager.getString("action.snapshot"));
+  private JButton _duplicateButton = new JButton(
+          MessageManager.getString("action.snapshot"));
 
   protected JPanel _listPanel = new JPanel();
 
@@ -149,16 +151,19 @@ public class AppVarnaBinding extends jalview.ext.varna.JalviewVarnaBinding
   {
     // super("VARNA in Jalview");
     initVarna(seq, struc);
+
   }
 
   public AppVarnaBinding(ArrayList<RNA> rnaList)
   {
+
     // super("VARNA in Jalview");
     initVarnaEdit(rnaList);
   }
 
   private void initVarna(String seq, String str)
   {
+
     DefaultListModel dlm = new DefaultListModel();
 
     DefaultListSelectionModel m = new DefaultListSelectionModel();
@@ -191,6 +196,7 @@ public class AppVarnaBinding extends jalview.ext.varna.JalviewVarnaBinding
 
     try
     {
+
       vp = new VARNAPanel("0", ".");
       _RNA1.setRNA(seq, str);
       _RNA1.drawRNARadiate(vp.getConfig());
@@ -219,6 +225,7 @@ public class AppVarnaBinding extends jalview.ext.varna.JalviewVarnaBinding
 
   private void initVarnaEdit(ArrayList<RNA> rnaInList)
   {
+
     DefaultListModel dlm = new DefaultListModel();
 
     int marginTools = 40;
@@ -242,7 +249,8 @@ public class AppVarnaBinding extends jalview.ext.varna.JalviewVarnaBinding
           FullBackup sel = (FullBackup) _sideList.getSelectedValue();
           Mapping map = Mapping.DefaultOutermostMapping(vp.getRNA()
                   .getSize(), sel.rna.getSize());
-          vp.showRNAInterpolated(sel.rna, sel.config, map);
+          // vp.showRNAInterpolated(sel.rna, sel.config, map);
+          vp.showRNA(sel.rna, sel.config);
           // _seq.setText(sel.rna.getSeq());
           _str.setText(sel.rna.getStructDBN());
         }
@@ -252,10 +260,12 @@ public class AppVarnaBinding extends jalview.ext.varna.JalviewVarnaBinding
 
     try
     {
+
       vp = new VARNAPanel("0", ".");
       for (int i = 0; i < rnaInList.size(); i++)
       {
         rnaInList.get(i).drawRNARadiate(vp.getConfig());
+
       }
     } catch (ExceptionNonEqualLength e)
     {
@@ -342,7 +352,9 @@ public class AppVarnaBinding extends jalview.ext.varna.JalviewVarnaBinding
     ops.add(_deleteButton);
     ops.add(_duplicateButton);
 
-    JLabel j = new JLabel(MessageManager.getString("label.structures_manager"), JLabel.CENTER);
+    JLabel j = new JLabel(
+            MessageManager.getString("label.structures_manager"),
+            JLabel.CENTER);
     _listPanel.setLayout(new BorderLayout());
 
     // _listPanel.add(ops, BorderLayout.SOUTH);
@@ -804,7 +816,13 @@ public class AppVarnaBinding extends jalview.ext.varna.JalviewVarnaBinding
 
   public void onUINewStructure(VARNAConfig v, RNA r)
   {
-    _rnaList.add(v, r, "", true);
+    // patch to fix infinite loop
+    // The problem is that onUINewStructure is called when user clicks
+    // check with Yann about whether Jalview should do anything with this event.
+    // e.g. if user has used VARNA's menu to import a structure .. Jalview may
+    // need to be told which structure is displayed.
+
+    // _rnaList.add(v, r, "", true);
   }
 
   public void onWarningEmitted(String s)
@@ -934,6 +952,20 @@ public class AppVarnaBinding extends jalview.ext.varna.JalviewVarnaBinding
     // TODO Auto-generated method stub
 
   }
+
+  @Override
+  public void onZoomLevelChanged()
+  {
+    // TODO Auto-generated method stub
+
+  }
+
+  @Override
+  public void onTranslationChanged()
+  {
+    // TODO Auto-generated method stub
+
+  }
 }
 
 /*
index e9208e6..01f1cb0 100644 (file)
@@ -1,25 +1,26 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
 
 import javax.swing.JOptionPane;
-
 import jalview.datamodel.PDBEntry;
 import jalview.datamodel.SequenceI;
 import jalview.util.MessageManager;
@@ -53,11 +54,11 @@ public class AssociatePdbFileWithSeq
 
         if (prompt)
         {
-          reply = JOptionPane
-                  .showInternalInputDialog(
-                          Desktop.desktop,
-                          MessageManager.getString("label.couldnt_find_pdb_id_in_file"),
-                          MessageManager.getString("label.no_pdb_id_in_file"), JOptionPane.QUESTION_MESSAGE);
+          reply = JOptionPane.showInternalInputDialog(Desktop.desktop,
+                  MessageManager
+                          .getString("label.couldnt_find_pdb_id_in_file"),
+                  MessageManager.getString("label.no_pdb_id_in_file"),
+                  JOptionPane.QUESTION_MESSAGE);
         }
         if (reply == null)
         {
@@ -70,6 +71,7 @@ public class AssociatePdbFileWithSeq
       {
         entry.setId(pdbfile.id);
       }
+
     } catch (java.io.IOException ex)
     {
       ex.printStackTrace();
@@ -79,5 +81,4 @@ public class AssociatePdbFileWithSeq
     sequence.getDatasetSequence().addPDBId(entry);
     return entry;
   }
-
 }
index 566f1c7..7a1065d 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -329,7 +331,7 @@ public class BlogReader extends JPanel
         {
           createDialog();
           bounds = new Rectangle(5, 5, 550, 350);
-          jd.initDialogFrame(me, false, false, "News from www.jalview.org",
+          jd.initDialogFrame(me, false, false, MessageManager.getString("label.news_from_jalview"),
                   bounds.width, bounds.height);
           jd.frame.setModalExclusionType(ModalExclusionType.NO_EXCLUDE);
           Cache.log.info("Displaying news.");
@@ -438,7 +440,7 @@ public class BlogReader extends JPanel
     topBottomSplitPane.setBottomComponent(bottomPanel);
     JScrollPane spTextDescription = new JScrollPane(textDescription);
     textDescription.setText("");
-    statusBar.setText(MessageManager.getString("label.status"));
+    statusBar.setText(new StringBuffer("[").append(MessageManager.getString("label.status")).append("]").toString());
     buttonRefresh.addActionListener(new ActionListener()
     {
 
@@ -814,7 +816,14 @@ class ChannelsRenderer extends DefaultListCellRenderer
     if (value instanceof Channel)
     {
       Channel channel = (Channel) value;
-      component.setText(MessageManager.formatMessage("label.channel_title_item_count", new String[]{channel.getTitle(),Integer.valueOf(channel.getUnreadItemCount()).toString()}));
+      component
+              .setText(MessageManager.formatMessage(
+                      "label.channel_title_item_count",
+                      new String[]
+                      {
+                          channel.getTitle(),
+                          Integer.valueOf(channel.getUnreadItemCount())
+                                  .toString() }));
       component.setToolTipText(channel.getURL());
     }
     return component;
@@ -837,7 +846,15 @@ class ItemsRenderer extends DefaultListCellRenderer
       Item item = (Item) value;
       if (item.getPublishDate() != null)
       {
-        component.setText(MessageManager.formatMessage("label.blog_item_published_on_date", new String[]{DateFormat.getDateInstance(DateFormat.LONG, MessageManager.getLocale()).format(item.getPublishDate()).toString(),item.getTitle()}));
+        component.setText(MessageManager.formatMessage(
+                "label.blog_item_published_on_date",
+                new String[]
+                {
+                    DateFormat
+                            .getDateInstance(DateFormat.LONG,
+                                    MessageManager.getLocale())
+                            .format(item.getPublishDate()).toString(),
+                    item.getTitle() }));
       }
       component.setToolTipText(item.getLink());
       if (!item.isRead())
diff --git a/src/jalview/gui/ChimeraViewFrame.java b/src/jalview/gui/ChimeraViewFrame.java
new file mode 100644 (file)
index 0000000..236d094
--- /dev/null
@@ -0,0 +1,1229 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
+package jalview.gui;
+
+import jalview.api.SequenceStructureBinding;
+import jalview.api.structures.JalviewStructureDisplayI;
+import jalview.bin.Cache;
+import jalview.datamodel.Alignment;
+import jalview.datamodel.AlignmentI;
+import jalview.datamodel.ColumnSelection;
+import jalview.datamodel.PDBEntry;
+import jalview.datamodel.SequenceI;
+import jalview.gui.ViewSelectionMenu.ViewSetProvider;
+import jalview.io.AppletFormatAdapter;
+import jalview.io.JalviewFileChooser;
+import jalview.io.JalviewFileView;
+import jalview.jbgui.GStructureViewer;
+import jalview.schemes.BuriedColourScheme;
+import jalview.schemes.ColourSchemeI;
+import jalview.schemes.HelixColourScheme;
+import jalview.schemes.HydrophobicColourScheme;
+import jalview.schemes.PurinePyrimidineColourScheme;
+import jalview.schemes.StrandColourScheme;
+import jalview.schemes.TaylorColourScheme;
+import jalview.schemes.TurnColourScheme;
+import jalview.schemes.ZappoColourScheme;
+import jalview.util.MessageManager;
+import jalview.util.Platform;
+
+import java.awt.Component;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.awt.event.ItemEvent;
+import java.awt.event.ItemListener;
+import java.io.BufferedReader;
+import java.io.File;
+import java.io.FileOutputStream;
+import java.io.FileReader;
+import java.io.PrintWriter;
+import java.util.ArrayList;
+import java.util.Enumeration;
+import java.util.List;
+import java.util.Vector;
+
+import javax.swing.JCheckBoxMenuItem;
+import javax.swing.JColorChooser;
+import javax.swing.JInternalFrame;
+import javax.swing.JMenu;
+import javax.swing.JMenuItem;
+import javax.swing.JOptionPane;
+import javax.swing.event.InternalFrameAdapter;
+import javax.swing.event.InternalFrameEvent;
+import javax.swing.event.MenuEvent;
+import javax.swing.event.MenuListener;
+
+/**
+ * GUI elements for handlnig an external chimera display
+ * 
+ * @author jprocter
+ *
+ */
+public class ChimeraViewFrame extends GStructureViewer implements Runnable,
+        ViewSetProvider, JalviewStructureDisplayI
+
+{
+  JalviewChimeraBindingModel jmb;
+
+  AlignmentPanel ap;
+
+  Vector atomsPicked = new Vector();
+
+  private boolean addingStructures = false;
+
+  ViewSelectionMenu seqColourBy;
+
+  /**
+   * 
+   * @param files
+   * @param ids
+   * @param seqs
+   * @param ap
+   * @param usetoColour
+   *          - add the alignment panel to the list used for colouring these
+   *          structures
+   * @param useToAlign
+   *          - add the alignment panel to the list used for aligning these
+   *          structures
+   * @param leaveColouringToJmol
+   *          - do not update the colours from any other source. Jmol is
+   *          handling them
+   * @param loadStatus
+   * @param bounds
+   * @param viewid
+   * 
+   *          public ChimeraViewFrame(String[] files, String[] ids,
+   *          SequenceI[][] seqs, AlignmentPanel ap, boolean usetoColour,
+   *          boolean useToAlign, boolean leaveColouringToJmol, String
+   *          loadStatus, Rectangle bounds, String viewid) { PDBEntry[]
+   *          pdbentrys = new PDBEntry[files.length]; for (int i = 0; i <
+   *          pdbentrys.length; i++) { PDBEntry pdbentry = new PDBEntry();
+   *          pdbentry.setFile(files[i]); pdbentry.setId(ids[i]); pdbentrys[i] =
+   *          pdbentry; } // / TODO: check if protocol is needed to be set, and
+   *          if chains are // autodiscovered. jmb = new
+   *          JalviewChimeraBindingModel(this,
+   *          ap.getStructureSelectionManager(), pdbentrys, seqs, null, null);
+   * 
+   *          jmb.setLoadingFromArchive(true); addAlignmentPanel(ap); if
+   *          (useToAlign) { useAlignmentPanelForSuperposition(ap); } if
+   *          (leaveColouringToJmol || !usetoColour) {
+   *          jmb.setColourBySequence(false); seqColour.setSelected(false);
+   *          jmolColour.setSelected(true); } if (usetoColour) {
+   *          useAlignmentPanelForColourbyseq(ap);
+   *          jmb.setColourBySequence(true); seqColour.setSelected(true);
+   *          jmolColour.setSelected(false); } this.setBounds(bounds);
+   *          initMenus(); viewId = viewid; //
+   *          jalview.gui.Desktop.addInternalFrame(this, "Loading File", //
+   *          bounds.width,bounds.height);
+   * 
+   *          this.addInternalFrameListener(new InternalFrameAdapter() { public
+   *          void internalFrameClosing(InternalFrameEvent internalFrameEvent) {
+   *          closeViewer(); } }); initJmol(loadStatus); // pdbentry, seq,
+   *          JBPCHECK!
+   * 
+   *          }
+   */
+  private void initMenus()
+  {
+    seqColour.setSelected(jmb.isColourBySequence());
+    jmolColour.setSelected(!jmb.isColourBySequence());
+    if (_colourwith == null)
+    {
+      _colourwith = new Vector<AlignmentPanel>();
+    }
+    if (_alignwith == null)
+    {
+      _alignwith = new Vector<AlignmentPanel>();
+    }
+
+    seqColourBy = new ViewSelectionMenu(MessageManager.getString("label.colour_by"), this, _colourwith,
+            new ItemListener()
+            {
+
+              @Override
+              public void itemStateChanged(ItemEvent e)
+              {
+                if (!seqColour.isSelected())
+                {
+                  seqColour.doClick();
+                }
+                else
+                {
+                  // update the jmol display now.
+                  seqColour_actionPerformed(null);
+                }
+              }
+            });
+    viewMenu.add(seqColourBy);
+    final ItemListener handler;
+    JMenu alpanels = new ViewSelectionMenu(MessageManager.getString("label.superpose_with"), this,
+            _alignwith, handler = new ItemListener()
+            {
+
+              @Override
+              public void itemStateChanged(ItemEvent e)
+              {
+                alignStructs.setEnabled(_alignwith.size() > 0);
+                alignStructs.setToolTipText(MessageManager
+                        .formatMessage(
+                                "label.align_structures_using_linked_alignment_views",
+                                new String[]
+                                { new Integer(_alignwith.size()).toString() }));
+              }
+            });
+    handler.itemStateChanged(null);
+    jmolActionMenu.add(alpanels);
+    jmolActionMenu.addMenuListener(new MenuListener()
+    {
+
+      @Override
+      public void menuSelected(MenuEvent e)
+      {
+        handler.itemStateChanged(null);
+      }
+
+      @Override
+      public void menuDeselected(MenuEvent e)
+      {
+        // TODO Auto-generated method stub
+
+      }
+
+      @Override
+      public void menuCanceled(MenuEvent e)
+      {
+        // TODO Auto-generated method stub
+
+      }
+    });
+  }
+
+  IProgressIndicator progressBar = null;
+
+  /**
+   * add a single PDB structure to a new or existing Jmol view
+   * 
+   * @param pdbentry
+   * @param seq
+   * @param chains
+   * @param ap
+   */
+  public ChimeraViewFrame(PDBEntry pdbentry, SequenceI[] seq,
+          String[] chains, final AlignmentPanel ap)
+  {
+    progressBar = ap.alignFrame;
+    // ////////////////////////////////
+    // Is the pdb file already loaded?
+    String alreadyMapped = ap.getStructureSelectionManager()
+            .alreadyMappedToFile(pdbentry.getId());
+
+    if (alreadyMapped != null)
+    {
+      int option = JOptionPane.showInternalConfirmDialog(Desktop.desktop,
+              MessageManager.formatMessage(
+                      "label.pdb_entry_is_already_displayed", new String[]
+                      { pdbentry.getId() }), MessageManager.formatMessage(
+                      "label.map_sequences_to_visible_window", new String[]
+                      { pdbentry.getId() }), JOptionPane.YES_NO_OPTION);
+
+      if (option == JOptionPane.YES_OPTION)
+      {
+        // TODO : Fix multiple seq to one chain issue here.
+        ap.getStructureSelectionManager().setMapping(seq, chains,
+                alreadyMapped, AppletFormatAdapter.FILE);
+        if (ap.seqPanel.seqCanvas.fr != null)
+        {
+          ap.seqPanel.seqCanvas.fr.featuresAdded();
+          ap.paintAlignment(true);
+        }
+
+        // Now this AppJmol is mapped to new sequences. We must add them to
+        // the exisiting array
+        JInternalFrame[] frames = Desktop.instance.getAllFrames();
+
+        for (int i = 0; i < frames.length; i++)
+        {
+          if (frames[i] instanceof ChimeraViewFrame)
+          {
+            final ChimeraViewFrame topJmol = ((ChimeraViewFrame) frames[i]);
+            // JBPNOTE: this looks like a binding routine, rather than a gui
+            // routine
+            for (int pe = 0; pe < topJmol.jmb.pdbentry.length; pe++)
+            {
+              if (topJmol.jmb.pdbentry[pe].getFile().equals(alreadyMapped))
+              {
+                topJmol.jmb.addSequence(pe, seq);
+                topJmol.addAlignmentPanel(ap);
+                // add it to the set used for colouring
+                topJmol.useAlignmentPanelForColourbyseq(ap);
+                topJmol.buildChimeraActionMenu();
+                ap.getStructureSelectionManager()
+                        .sequenceColoursChanged(ap);
+                break;
+              }
+            }
+          }
+        }
+
+        return;
+      }
+    }
+    // /////////////////////////////////
+    // Check if there are other Jmol views involving this alignment
+    // and prompt user about adding this molecule to one of them
+    Vector existingViews = getJmolsFor(ap);
+    if (existingViews.size() > 0)
+    {
+      Enumeration jm = existingViews.elements();
+      while (jm.hasMoreElements())
+      {
+        ChimeraViewFrame topJmol = (ChimeraViewFrame) jm.nextElement();
+        // TODO: highlight topJmol in view somehow
+        int option = JOptionPane
+                .showInternalConfirmDialog(
+                        Desktop.desktop,
+                        MessageManager.formatMessage(
+                                "label.add_pdbentry_to_view", new String[]
+                                { pdbentry.getId(), topJmol.getTitle() }),
+                        MessageManager
+                                .getString("label.align_to_existing_structure_view"),
+                        JOptionPane.YES_NO_OPTION);
+        if (option == JOptionPane.YES_OPTION)
+        {
+          topJmol.useAlignmentPanelForSuperposition(ap);
+          topJmol.addStructure(pdbentry, seq, chains, true, ap.alignFrame);
+          return;
+        }
+      }
+    }
+    // /////////////////////////////////
+    openNewJmol(ap, new PDBEntry[]
+    { pdbentry }, new SequenceI[][]
+    { seq });
+  }
+
+  private void openNewJmol(AlignmentPanel ap, PDBEntry[] pdbentrys,
+          SequenceI[][] seqs)
+  {
+    progressBar = ap.alignFrame;
+    jmb = new JalviewChimeraBindingModel(this,
+            ap.getStructureSelectionManager(), pdbentrys, seqs, null, null);
+    addAlignmentPanel(ap);
+    useAlignmentPanelForColourbyseq(ap);
+    if (pdbentrys.length > 1)
+    {
+      alignAddedStructures = true;
+      useAlignmentPanelForSuperposition(ap);
+    }
+    jmb.setColourBySequence(true);
+    setSize(400, 400); // probably should be a configurable/dynamic default here
+    initMenus();
+    worker = null;
+    {
+      addingStructures = false;
+      worker = new Thread(this);
+      worker.start();
+    }
+    this.addInternalFrameListener(new InternalFrameAdapter()
+    {
+      public void internalFrameClosing(InternalFrameEvent internalFrameEvent)
+      {
+        closeViewer();
+      }
+    });
+
+  }
+
+  /**
+   * create a new Jmol containing several structures superimposed using the
+   * given alignPanel.
+   * 
+   * @param ap
+   * @param pe
+   * @param seqs
+   */
+  public ChimeraViewFrame(AlignmentPanel ap, PDBEntry[] pe,
+          SequenceI[][] seqs)
+  {
+    openNewJmol(ap, pe, seqs);
+  }
+
+  /**
+   * list of sequenceSet ids associated with the view
+   */
+  ArrayList<String> _aps = new ArrayList();
+
+  public AlignmentPanel[] getAllAlignmentPanels()
+  {
+    AlignmentPanel[] t, list = new AlignmentPanel[0];
+    for (String setid : _aps)
+    {
+      AlignmentPanel[] panels = PaintRefresher.getAssociatedPanels(setid);
+      if (panels != null)
+      {
+        t = new AlignmentPanel[list.length + panels.length];
+        System.arraycopy(list, 0, t, 0, list.length);
+        System.arraycopy(panels, 0, t, list.length, panels.length);
+        list = t;
+      }
+    }
+
+    return list;
+  }
+
+  /**
+   * list of alignment panels to use for superposition
+   */
+  Vector<AlignmentPanel> _alignwith = new Vector<AlignmentPanel>();
+
+  /**
+   * list of alignment panels that are used for colouring structures by aligned
+   * sequences
+   */
+  Vector<AlignmentPanel> _colourwith = new Vector<AlignmentPanel>();
+
+  /**
+   * set the primary alignmentPanel reference and add another alignPanel to the
+   * list of ones to use for colouring and aligning
+   * 
+   * @param nap
+   */
+  public void addAlignmentPanel(AlignmentPanel nap)
+  {
+    if (ap == null)
+    {
+      ap = nap;
+    }
+    if (!_aps.contains(nap.av.getSequenceSetId()))
+    {
+      _aps.add(nap.av.getSequenceSetId());
+    }
+  }
+
+  /**
+   * remove any references held to the given alignment panel
+   * 
+   * @param nap
+   */
+  public void removeAlignmentPanel(AlignmentPanel nap)
+  {
+    try
+    {
+      _alignwith.remove(nap);
+      _colourwith.remove(nap);
+      if (ap == nap)
+      {
+        ap = null;
+        for (AlignmentPanel aps : getAllAlignmentPanels())
+        {
+          if (aps != nap)
+          {
+            ap = aps;
+            break;
+          }
+        }
+      }
+    } catch (Exception ex)
+    {
+    }
+    if (ap != null)
+    {
+      buildChimeraActionMenu();
+    }
+  }
+
+  public void useAlignmentPanelForSuperposition(AlignmentPanel nap)
+  {
+    addAlignmentPanel(nap);
+    if (!_alignwith.contains(nap))
+    {
+      _alignwith.add(nap);
+    }
+  }
+
+  public void excludeAlignmentPanelForSuperposition(AlignmentPanel nap)
+  {
+    if (_alignwith.contains(nap))
+    {
+      _alignwith.remove(nap);
+    }
+  }
+
+  public void useAlignmentPanelForColourbyseq(AlignmentPanel nap,
+          boolean enableColourBySeq)
+  {
+    useAlignmentPanelForColourbyseq(nap);
+    jmb.setColourBySequence(enableColourBySeq);
+    seqColour.setSelected(enableColourBySeq);
+    jmolColour.setSelected(!enableColourBySeq);
+  }
+
+  public void useAlignmentPanelForColourbyseq(AlignmentPanel nap)
+  {
+    addAlignmentPanel(nap);
+    if (!_colourwith.contains(nap))
+    {
+      _colourwith.add(nap);
+    }
+  }
+
+  public void excludeAlignmentPanelForColourbyseq(AlignmentPanel nap)
+  {
+    if (_colourwith.contains(nap))
+    {
+      _colourwith.remove(nap);
+    }
+  }
+
+  /**
+   * pdb retrieval thread.
+   */
+  private Thread worker = null;
+
+  /**
+   * add a new structure (with associated sequences and chains) to this viewer,
+   * retrieving it if necessary first.
+   * 
+   * @param pdbentry
+   * @param seq
+   * @param chains
+   * @param alignFrame
+   * @param align
+   *          if true, new structure(s) will be align using associated alignment
+   */
+  private void addStructure(final PDBEntry pdbentry, final SequenceI[] seq,
+          final String[] chains, final boolean b,
+          final IProgressIndicator alignFrame)
+  {
+    if (pdbentry.getFile() == null)
+    {
+      if (worker != null && worker.isAlive())
+      {
+        // a retrieval is in progress, wait around and add ourselves to the
+        // queue.
+        new Thread(new Runnable()
+        {
+          public void run()
+          {
+            while (worker != null && worker.isAlive() && _started)
+            {
+              try
+              {
+                Thread.sleep(100 + ((int) Math.random() * 100));
+
+              } catch (Exception e)
+              {
+              }
+
+            }
+            // and call ourselves again.
+            addStructure(pdbentry, seq, chains, b, alignFrame);
+          }
+        }).start();
+        return;
+      }
+    }
+    // otherwise, start adding the structure.
+    jmb.addSequenceAndChain(new PDBEntry[]
+    { pdbentry }, new SequenceI[][]
+    { seq }, new String[][]
+    { chains });
+    addingStructures = true;
+    _started = false;
+    alignAddedStructures = b;
+    progressBar = alignFrame; // visual indication happens on caller frame.
+    (worker = new Thread(this)).start();
+    return;
+  }
+
+  private Vector getJmolsFor(AlignmentPanel ap2)
+  {
+    Vector otherJmols = new Vector();
+    // Now this AppJmol is mapped to new sequences. We must add them to
+    // the exisiting array
+    JInternalFrame[] frames = Desktop.instance.getAllFrames();
+
+    for (int i = 0; i < frames.length; i++)
+    {
+      if (frames[i] instanceof ChimeraViewFrame)
+      {
+        ChimeraViewFrame topJmol = ((ChimeraViewFrame) frames[i]);
+        if (topJmol.isLinkedWith(ap2))
+        {
+          otherJmols.addElement(topJmol);
+        }
+      }
+    }
+    return otherJmols;
+  }
+
+  void initChimera(String command)
+  {
+    jmb.setFinishedInit(false);
+    // TODO: consider waiting until the structure/view is fully loaded before
+    // displaying
+    jalview.gui.Desktop.addInternalFrame(this, jmb.getViewerTitle(),
+            getBounds().width, getBounds().height);
+    if (command == null)
+    {
+      command = "";
+    }
+    jmb.evalStateCommand(command, false);
+    jmb.setFinishedInit(true);
+  }
+
+  void setChainMenuItems(Vector chains)
+  {
+    chainMenu.removeAll();
+    if (chains == null)
+    {
+      return;
+    }
+    JMenuItem menuItem = new JMenuItem(
+            MessageManager.getString("label.all"));
+    menuItem.addActionListener(new ActionListener()
+    {
+      public void actionPerformed(ActionEvent evt)
+      {
+        allChainsSelected = true;
+        for (int i = 0; i < chainMenu.getItemCount(); i++)
+        {
+          if (chainMenu.getItem(i) instanceof JCheckBoxMenuItem)
+            ((JCheckBoxMenuItem) chainMenu.getItem(i)).setSelected(true);
+        }
+        centerViewer();
+        allChainsSelected = false;
+      }
+    });
+
+    chainMenu.add(menuItem);
+
+    for (int c = 0; c < chains.size(); c++)
+    {
+      menuItem = new JCheckBoxMenuItem(chains.elementAt(c).toString(), true);
+      menuItem.addItemListener(new ItemListener()
+      {
+        public void itemStateChanged(ItemEvent evt)
+        {
+          if (!allChainsSelected)
+            centerViewer();
+        }
+      });
+
+      chainMenu.add(menuItem);
+    }
+  }
+
+  boolean allChainsSelected = false;
+
+  private boolean alignAddedStructures = false;
+
+  void centerViewer()
+  {
+    Vector toshow = new Vector();
+    String lbl;
+    int mlength, p, mnum;
+    for (int i = 0; i < chainMenu.getItemCount(); i++)
+    {
+      if (chainMenu.getItem(i) instanceof JCheckBoxMenuItem)
+      {
+        JCheckBoxMenuItem item = (JCheckBoxMenuItem) chainMenu.getItem(i);
+        if (item.isSelected())
+        {
+          toshow.addElement(item.getText());
+        }
+      }
+    }
+    jmb.centerViewer(toshow);
+  }
+
+  public void closeViewer()
+  {
+    jmb.closeViewer();
+    ap = null;
+    _aps.clear();
+    _alignwith.clear();
+    _colourwith.clear();
+    // TODO: check for memory leaks where instance isn't finalised because jmb
+    // holds a reference to the window
+    jmb = null;
+  }
+
+  /**
+   * state flag for PDB retrieval thread
+   */
+  private boolean _started = false;
+
+  public void run()
+  {
+    _started = true;
+    String pdbid = "";
+    // todo - record which pdbids were successfuly imported.
+    StringBuffer errormsgs = new StringBuffer(), files = new StringBuffer();
+    List<String> fileToLoad=new ArrayList<String>();
+    List<PDBEntry> filePDB = new ArrayList<PDBEntry>();
+    List<Integer> filePDBpos =new ArrayList<Integer>();
+    try
+    {
+      String[] curfiles = jmb.getPdbFile(); // files currently in viewer
+      // TODO: replace with reference fetching/transfer code (validate PDBentry
+      // as a DBRef?)
+      jalview.ws.dbsources.Pdb pdbclient = new jalview.ws.dbsources.Pdb();
+      for (int pi = 0; pi < jmb.pdbentry.length; pi++)
+      {
+        String file = null;
+        if (jmb.pdbentry[pi].getFile()==null) 
+        {
+          // retrieve the pdb and store it locally
+          AlignmentI pdbseq = null;
+          pdbid = jmb.pdbentry[pi].getId();
+          long hdl = pdbid.hashCode() - System.currentTimeMillis();
+          if (progressBar != null)
+          {
+            progressBar.setProgressBar(MessageManager.formatMessage("status.fetching_pdb", new String[]{pdbid}), hdl);
+          }
+          try
+          {
+            pdbseq = pdbclient.getSequenceRecords(pdbid = jmb.pdbentry[pi]
+                    .getId());
+          } catch (OutOfMemoryError oomerror)
+          {
+            new OOMWarning("Retrieving PDB id " + pdbid, oomerror);
+          } catch (Exception ex)
+          {
+            ex.printStackTrace();
+            errormsgs.append("'" + pdbid + "'");
+          }
+          if (progressBar != null)
+          {
+            progressBar.setProgressBar(MessageManager.getString("label.state_completed"), hdl);
+          }
+          if (pdbseq != null)
+          {
+            // just transfer the file name from the first sequence's first
+            // PDBEntry
+            file = new File(((PDBEntry) pdbseq.getSequenceAt(0).getPDBId()
+                    .elementAt(0)).getFile()).getAbsolutePath();
+            jmb.pdbentry[pi].setFile(file);
+
+            files.append(" \"" + Platform.escapeString(file) + "\"");
+          }
+          else
+          {
+            errormsgs.append("'" + pdbid + "' ");
+          }
+        }
+        else
+        {
+          file = new File(jmb.pdbentry[pi].getFile())
+          .getAbsoluteFile().getPath();
+          if (curfiles != null && curfiles.length > 0)
+          {
+            addingStructures = true; // already files loaded.
+            for (int c = 0; c < curfiles.length; c++)
+            {
+              if (curfiles[c].equals(file))
+              {
+                file = null;
+                break;
+              }
+            }
+          }
+          
+          if (file != null)
+          {
+            fileToLoad.add(file);
+            filePDB.add(jmb.pdbentry[pi]);
+            filePDBpos.add(Integer.valueOf(pi));
+            files.append(" \"" + Platform.escapeString(file) + "\"");
+          }
+        }
+      }
+    } catch (OutOfMemoryError oomerror)
+    {
+      new OOMWarning("Retrieving PDB files: " + pdbid, oomerror);
+    } catch (Exception ex)
+    {
+      ex.printStackTrace();
+      errormsgs.append("When retrieving pdbfiles : current was: '" + pdbid
+              + "'");
+    }
+    if (errormsgs.length() > 0)
+    {
+
+      JOptionPane.showInternalMessageDialog(Desktop.desktop, MessageManager
+              .formatMessage("label.pdb_entries_couldnt_be_retrieved",
+                      new String[]
+                      { errormsgs.toString() }), MessageManager
+              .getString("label.couldnt_load_file"),
+              JOptionPane.ERROR_MESSAGE);
+
+    }
+    long lastnotify = jmb.getLoadNotifiesHandled();
+    if (files.length() > 0)
+    {
+      if (!addingStructures)
+      {
+        try
+        {
+          initChimera("");
+        } catch (Exception ex)
+        {
+          Cache.log.error("Couldn't open Chimera viewer!", ex);
+        }
+      } 
+      int num=-1;
+      for (PDBEntry pe : filePDB)
+      {
+        num++;
+        if (pe.getFile() != null)
+        {
+          try
+          {
+            int pos=filePDBpos.get(num).intValue();
+            jmb.openFile(pe);
+            jmb.addSequence(pos, jmb.sequence[pos]);
+            File fl=new File(pe.getFile());
+            String protocol = AppletFormatAdapter.URL;
+            try
+            {
+              if (fl.exists())
+                {
+                  protocol = AppletFormatAdapter.FILE;
+                }
+              } catch (Exception e)
+              {
+              } catch (Error e)
+              {
+              }
+              // Explicitly map to the filename used by Jmol ;
+              jmb.ssm.setMapping(jmb.sequence[pos], null, pe.getFile(),
+                      protocol);
+              // pdbentry[pe].getFile(), protocol);
+          } catch (OutOfMemoryError oomerror)
+          {
+            new OOMWarning(
+                    "When trying to open and map structures from Chimera!",
+                    oomerror);
+          } catch (Exception ex)
+          {
+            Cache.log.error("Couldn't open " + pe.getFile()
+                    + " in Chimera viewer!", ex);
+          } finally
+          {
+            Cache.log.debug("File locations are " + files);
+          }
+        }
+      }
+      // jmb.getPdbFile();
+      jmb.setFinishedInit(true);
+      jmb.setLoadingFromArchive(false);
+      
+      // refresh the sequence colours for the new structure(s)
+      for (AlignmentPanel ap : _colourwith)
+      {
+        jmb.updateColours(ap);
+      }
+      // do superposition if asked to
+      if (alignAddedStructures)
+      {
+        new Thread(new Runnable()
+        {
+          public void run()
+          {
+            alignStructs_withAllAlignPanels();
+          }
+        }).start();
+        alignAddedStructures = false;
+      }
+      addingStructures = false;
+    }
+    _started = false;
+    worker = null;
+  }
+
+  public void pdbFile_actionPerformed(ActionEvent actionEvent)
+  {
+    JalviewFileChooser chooser = new JalviewFileChooser(
+            jalview.bin.Cache.getProperty("LAST_DIRECTORY"));
+
+    chooser.setFileView(new JalviewFileView());
+    chooser.setDialogTitle(MessageManager.getString("label.save_pdb_file"));
+    chooser.setToolTipText(MessageManager.getString("action.save"));
+
+    int value = chooser.showSaveDialog(this);
+
+    if (value == JalviewFileChooser.APPROVE_OPTION)
+    {
+      try
+      {
+        // TODO: cope with multiple PDB files in view
+        BufferedReader in = new BufferedReader(new FileReader(
+                jmb.getPdbFile()[0]));
+        File outFile = chooser.getSelectedFile();
+
+        PrintWriter out = new PrintWriter(new FileOutputStream(outFile));
+        String data;
+        while ((data = in.readLine()) != null)
+        {
+          if (!(data.indexOf("<PRE>") > -1 || data.indexOf("</PRE>") > -1))
+          {
+            out.println(data);
+          }
+        }
+        out.close();
+      } catch (Exception ex)
+      {
+        ex.printStackTrace();
+      }
+    }
+  }
+
+  public void viewMapping_actionPerformed(ActionEvent actionEvent)
+  {
+    jalview.gui.CutAndPasteTransfer cap = new jalview.gui.CutAndPasteTransfer();
+    try
+    {
+      for (int pdbe = 0; pdbe < jmb.pdbentry.length; pdbe++)
+      {
+        cap.appendText(jmb.printMapping(jmb.pdbentry[pdbe].getFile()));
+        cap.appendText("\n");
+      }
+    } catch (OutOfMemoryError e)
+    {
+      new OOMWarning(
+              "composing sequence-structure alignments for display in text box.",
+              e);
+      cap.dispose();
+      return;
+    }
+    jalview.gui.Desktop.addInternalFrame(cap,
+            MessageManager.getString("label.pdb_sequence_mapping"), 550,
+            600);
+  }
+
+  /**
+   * DOCUMENT ME!
+   * 
+   * @param e
+   *          DOCUMENT ME!
+   */
+  public void eps_actionPerformed(ActionEvent e)
+  {
+    throw new Error(MessageManager.getString("error.eps_generation_not_implemented"));
+  }
+
+  /**
+   * DOCUMENT ME!
+   * 
+   * @param e
+   *          DOCUMENT ME!
+   */
+  public void png_actionPerformed(ActionEvent e)
+  {
+           throw new Error(MessageManager.getString("error.png_generation_not_implemented"));
+  }
+
+  public void jmolColour_actionPerformed(ActionEvent actionEvent)
+  {
+    if (jmolColour.isSelected())
+    {
+      // disable automatic sequence colouring.
+      jmb.setColourBySequence(false);
+    }
+  }
+
+  public void seqColour_actionPerformed(ActionEvent actionEvent)
+  {
+    jmb.setColourBySequence(seqColour.isSelected());
+    if (_colourwith == null)
+    {
+      _colourwith = new Vector<AlignmentPanel>();
+    }
+    if (jmb.isColourBySequence())
+    {
+      if (!jmb.isLoadingFromArchive())
+      {
+        if (_colourwith.size() == 0 && ap != null)
+        {
+          // Make the currently displayed alignment panel the associated view
+          _colourwith.add(ap.alignFrame.alignPanel);
+        }
+      }
+      // Set the colour using the current view for the associated alignframe
+      for (AlignmentPanel ap : _colourwith)
+      {
+        jmb.colourBySequence(ap.av.showSequenceFeatures, ap);
+      }
+    }
+  }
+
+  public void chainColour_actionPerformed(ActionEvent actionEvent)
+  {
+    chainColour.setSelected(true);
+    jmb.colourByChain();
+  }
+
+  public void chargeColour_actionPerformed(ActionEvent actionEvent)
+  {
+    chargeColour.setSelected(true);
+    jmb.colourByCharge();
+  }
+
+  public void zappoColour_actionPerformed(ActionEvent actionEvent)
+  {
+    zappoColour.setSelected(true);
+    jmb.setJalviewColourScheme(new ZappoColourScheme());
+  }
+
+  public void taylorColour_actionPerformed(ActionEvent actionEvent)
+  {
+    taylorColour.setSelected(true);
+    jmb.setJalviewColourScheme(new TaylorColourScheme());
+  }
+
+  public void hydroColour_actionPerformed(ActionEvent actionEvent)
+  {
+    hydroColour.setSelected(true);
+    jmb.setJalviewColourScheme(new HydrophobicColourScheme());
+  }
+
+  public void helixColour_actionPerformed(ActionEvent actionEvent)
+  {
+    helixColour.setSelected(true);
+    jmb.setJalviewColourScheme(new HelixColourScheme());
+  }
+
+  public void strandColour_actionPerformed(ActionEvent actionEvent)
+  {
+    strandColour.setSelected(true);
+    jmb.setJalviewColourScheme(new StrandColourScheme());
+  }
+
+  public void turnColour_actionPerformed(ActionEvent actionEvent)
+  {
+    turnColour.setSelected(true);
+    jmb.setJalviewColourScheme(new TurnColourScheme());
+  }
+
+  public void buriedColour_actionPerformed(ActionEvent actionEvent)
+  {
+    buriedColour.setSelected(true);
+    jmb.setJalviewColourScheme(new BuriedColourScheme());
+  }
+
+  public void purinePyrimidineColour_actionPerformed(ActionEvent actionEvent)
+  {
+    setJalviewColourScheme(new PurinePyrimidineColourScheme());
+  }
+
+  public void userColour_actionPerformed(ActionEvent actionEvent)
+  {
+    userColour.setSelected(true);
+    new UserDefinedColours(this, null);
+  }
+
+  public void backGround_actionPerformed(ActionEvent actionEvent)
+  {
+    java.awt.Color col = JColorChooser.showDialog(this,
+               MessageManager.getString("label.select_backgroud_colour"), null);
+    if (col != null)
+    {
+      jmb.setBackgroundColour(col);
+    }
+  }
+
+  public void jmolHelp_actionPerformed(ActionEvent actionEvent)
+  {
+    try
+    {
+      jalview.util.BrowserLauncher
+              .openURL("https://www.cgl.ucsf.edu/chimera/docs/UsersGuide");
+    } catch (Exception ex)
+    {
+    }
+  }
+
+  String viewId = null;
+
+  public String getViewId()
+  {
+    if (viewId == null)
+    {
+      viewId = System.currentTimeMillis() + "." + this.hashCode();
+    }
+    return viewId;
+  }
+
+  public void updateTitleAndMenus()
+  {
+    if (jmb.fileLoadingError != null && jmb.fileLoadingError.length() > 0)
+    {
+      repaint();
+      return;
+    }
+    setChainMenuItems(jmb.chainNames);
+
+    this.setTitle(jmb.getViewerTitle());
+    if (jmb.getPdbFile().length > 1 && jmb.sequence.length > 1)
+    {
+      jmolActionMenu.setVisible(true);
+    }
+    if (!jmb.isLoadingFromArchive())
+    {
+      seqColour_actionPerformed(null);
+    }
+  }
+
+  protected void buildChimeraActionMenu()
+  {
+    if (_alignwith == null)
+    {
+      _alignwith = new Vector<AlignmentPanel>();
+    }
+    if (_alignwith.size() == 0 && ap != null)
+    {
+      _alignwith.add(ap);
+    }
+    ;
+    for (Component c : jmolActionMenu.getMenuComponents())
+    {
+      if (c != alignStructs)
+      {
+        jmolActionMenu.remove((JMenuItem) c);
+      }
+    }
+    final ItemListener handler;
+  }
+
+  /*
+   * (non-Javadoc)
+   * 
+   * @see
+   * jalview.jbgui.GStructureViewer#alignStructs_actionPerformed(java.awt.event
+   * .ActionEvent)
+   */
+  @Override
+  protected void alignStructs_actionPerformed(ActionEvent actionEvent)
+  {
+    alignStructs_withAllAlignPanels();
+  }
+
+  private void alignStructs_withAllAlignPanels()
+  {
+    if (ap == null)
+    {
+      return;
+    }
+    ;
+    if (_alignwith.size() == 0)
+    {
+      _alignwith.add(ap);
+    }
+    ;
+    try
+    {
+      AlignmentI[] als = new Alignment[_alignwith.size()];
+      ColumnSelection[] alc = new ColumnSelection[_alignwith.size()];
+      int[] alm = new int[_alignwith.size()];
+      int a = 0;
+
+      for (AlignmentPanel ap : _alignwith)
+      {
+        als[a] = ap.av.getAlignment();
+        alm[a] = -1;
+        alc[a++] = ap.av.getColumnSelection();
+      }
+      jmb.superposeStructures(als, alm, alc);
+    } catch (Exception e)
+    {
+      StringBuffer sp = new StringBuffer();
+      for (AlignmentPanel ap : _alignwith)
+      {
+        sp.append("'" + ap.alignFrame.getTitle() + "' ");
+      }
+      Cache.log.info("Couldn't align structures with the " + sp.toString()
+              + "associated alignment panels.", e);
+
+    }
+
+  }
+
+  public void setJalviewColourScheme(ColourSchemeI ucs)
+  {
+    jmb.setJalviewColourScheme(ucs);
+
+  }
+
+  /**
+   * 
+   * @param alignment
+   * @return first alignment panel displaying given alignment, or the default
+   *         alignment panel
+   */
+  public AlignmentPanel getAlignmentPanelFor(AlignmentI alignment)
+  {
+    for (AlignmentPanel ap : getAllAlignmentPanels())
+    {
+      if (ap.av.getAlignment() == alignment)
+      {
+        return ap;
+      }
+    }
+    return ap;
+  }
+
+  /**
+   * 
+   * @param ap2
+   * @return true if this Jmol instance is linked with the given alignPanel
+   */
+  public boolean isLinkedWith(AlignmentPanel ap2)
+  {
+    return _aps.contains(ap2.av.getSequenceSetId());
+  }
+
+  public boolean isUsedforaligment(AlignmentPanel ap2)
+  {
+
+    return (_alignwith != null) && _alignwith.contains(ap2);
+  }
+
+  public boolean isUsedforcolourby(AlignmentPanel ap2)
+  {
+    return (_colourwith != null) && _colourwith.contains(ap2);
+  }
+
+  /**
+   * 
+   * @return TRUE if the view is NOT being coloured by sequence associations.
+   */
+  public boolean isColouredByJmol()
+  {
+    return !jmb.isColourBySequence();
+  }
+
+  public SequenceStructureBinding getBinding()
+  {
+    return jmb;
+  }
+
+}
index 7552dc9..ea7e539 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -499,8 +501,7 @@ public class Console extends WindowAdapter implements WindowListener,
       } catch (InterruptedException ie)
       {
       }
-      throw new NullPointerException(
-              "Application test: throwing an NullPointerException It should arrive at the console");
+      throw new NullPointerException(MessageManager.getString("exception.application_test_npe"));
     }
   }
 
index a2ebd0a..7fd091f 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -139,7 +141,7 @@ public class CutAndPasteHtmlTransfer extends GCutAndPasteHtmlTransfer
 
     chooser.setAcceptAllFileFilterUsed(false);
     chooser.setFileView(new JalviewFileView());
-    chooser.setDialogTitle("Save Text to File");
+    chooser.setDialogTitle(MessageManager.getString("label.save_text_to_file"));
     chooser.setToolTipText(MessageManager.getString("action.save"));
 
     int value = chooser.showSaveDialog(this);
@@ -212,8 +214,10 @@ public class CutAndPasteHtmlTransfer extends GCutAndPasteHtmlTransfer
   {
     if (SwingUtilities.isRightMouseButton(e))
     {
-      JPopupMenu popup = new JPopupMenu(MessageManager.getString("action.edit"));
-      JMenuItem item = new JMenuItem(MessageManager.getString("action.copy"));
+      JPopupMenu popup = new JPopupMenu(
+              MessageManager.getString("action.edit"));
+      JMenuItem item = new JMenuItem(
+              MessageManager.getString("action.copy"));
       item.addActionListener(new ActionListener()
       {
         public void actionPerformed(ActionEvent e)
index c8901d3..0c22b14 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -98,7 +100,7 @@ public class CutAndPasteTransfer extends GCutAndPasteTransfer
 
     chooser.setAcceptAllFileFilterUsed(false);
     chooser.setFileView(new JalviewFileView());
-    chooser.setDialogTitle("Save Text to File");
+    chooser.setDialogTitle(MessageManager.getString("label.save_text_to_file"));
     chooser.setToolTipText(MessageManager.getString("action.save"));
 
     int value = chooser.showSaveDialog(this);
@@ -178,8 +180,11 @@ public class CutAndPasteTransfer extends GCutAndPasteTransfer
       } catch (java.io.IOException ex)
       {
         JOptionPane.showInternalMessageDialog(Desktop.desktop,
-                       MessageManager.formatMessage("label.couldnt_read_pasted_text", new String[]{ex.toString()}),
-                MessageManager.getString("label.error_parsing_text"), JOptionPane.WARNING_MESSAGE);
+                MessageManager.formatMessage(
+                        "label.couldnt_read_pasted_text", new String[]
+                        { ex.toString() }), MessageManager
+                        .getString("label.error_parsing_text"),
+                JOptionPane.WARNING_MESSAGE);
       }
     }
 
@@ -200,9 +205,12 @@ public class CutAndPasteTransfer extends GCutAndPasteTransfer
         AlignFrame af = new AlignFrame(al, AlignFrame.DEFAULT_WIDTH,
                 AlignFrame.DEFAULT_HEIGHT);
         af.currentFileFormat = format;
-        Desktop.addInternalFrame(af, MessageManager.formatMessage("label.input_cut_paste_params", new String[]{format}),
-                AlignFrame.DEFAULT_WIDTH, AlignFrame.DEFAULT_HEIGHT);
-        af.statusBar.setText(MessageManager.getString("label.successfully_pasted_alignment_file"));
+        Desktop.addInternalFrame(af, MessageManager.formatMessage(
+                "label.input_cut_paste_params", new String[]
+                { format }), AlignFrame.DEFAULT_WIDTH,
+                AlignFrame.DEFAULT_HEIGHT);
+        af.statusBar.setText(MessageManager
+                .getString("label.successfully_pasted_alignment_file"));
 
         try
         {
@@ -235,8 +243,10 @@ public class CutAndPasteTransfer extends GCutAndPasteTransfer
   {
     if (SwingUtilities.isRightMouseButton(e))
     {
-      JPopupMenu popup = new JPopupMenu(MessageManager.getString("action.edit"));
-      JMenuItem item = new JMenuItem(MessageManager.getString("action.copy"));
+      JPopupMenu popup = new JPopupMenu(
+              MessageManager.getString("action.edit"));
+      JMenuItem item = new JMenuItem(
+              MessageManager.getString("action.copy"));
       item.addActionListener(new ActionListener()
       {
         public void actionPerformed(ActionEvent e)
index a875bf9..779e82f 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -172,7 +174,9 @@ public class DasSourceBrowser extends GDasSourceBrowser implements
 
     if (nickName == null)
     {
-      fullDetails.setText(text + MessageManager.getString("label.select_das_service_from_table"));
+      fullDetails.setText(text
+              + MessageManager
+                      .getString("label.select_das_service_from_table"));
       return;
     }
 
@@ -431,21 +435,26 @@ public class DasSourceBrowser extends GDasSourceBrowser implements
 
     JTextField nametf = new JTextField(nickname, 40);
     JTextField urltf = new JTextField(url, 40);
-    JCheckBox seqs = new JCheckBox(MessageManager.getString("label.sequence_source"));
+    JCheckBox seqs = new JCheckBox(
+            MessageManager.getString("label.sequence_source"));
     seqs.setSelected(seqsrc);
     JPanel panel = new JPanel(new BorderLayout());
     JPanel pane12 = new JPanel(new BorderLayout());
-    pane12.add(new JLabel(MessageManager.getString("label.structure_manager")), BorderLayout.CENTER);
+    pane12.add(
+            new JLabel(MessageManager.getString("label.structure_manager")),
+            BorderLayout.CENTER);
     pane12.add(nametf, BorderLayout.EAST);
     panel.add(pane12, BorderLayout.NORTH);
     pane12 = new JPanel(new BorderLayout());
-    pane12.add(new JLabel(MessageManager.getString("label.url")), BorderLayout.NORTH);
+    pane12.add(new JLabel(MessageManager.getString("label.url")),
+            BorderLayout.NORTH);
     pane12.add(seqs, BorderLayout.SOUTH);
     pane12.add(urltf, BorderLayout.EAST);
     panel.add(pane12, BorderLayout.SOUTH);
 
     int reply = JOptionPane.showInternalConfirmDialog(Desktop.desktop,
-            panel, MessageManager.getString("label.enter_local_das_source"),
+            panel,
+            MessageManager.getString("label.enter_local_das_source"),
             JOptionPane.OK_CANCEL_OPTION);
 
     if (reply != JOptionPane.OK_OPTION)
@@ -517,10 +526,13 @@ public class DasSourceBrowser extends GDasSourceBrowser implements
 
     if (!sourceRegistry.getSource(nickname).isLocal())
     {
-      JOptionPane.showInternalMessageDialog(Desktop.desktop,
-              MessageManager.getString("label.you_can_only_edit_or_remove_local_das_sources"),
-              MessageManager.getString("label.public_das_source"),
-              JOptionPane.WARNING_MESSAGE);
+      JOptionPane
+              .showInternalMessageDialog(
+                      Desktop.desktop,
+                      MessageManager
+                              .getString("label.you_can_only_edit_or_remove_local_das_sources"),
+                      MessageManager.getString("label.public_das_source"),
+                      JOptionPane.WARNING_MESSAGE);
       return;
     }
 
@@ -729,7 +741,7 @@ public class DasSourceBrowser extends GDasSourceBrowser implements
     }
 
     private String[] columnNames = new String[]
-    { "Nickname", "Use Source" };
+    { MessageManager.getString("label.nickname"), MessageManager.getString("label.use_source") };
 
     private Object[][] data;
 
index f05ef17..123aed2 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -24,6 +26,7 @@ import jalview.io.FormatAdapter;
 import jalview.io.IdentifyFile;
 import jalview.io.JalviewFileChooser;
 import jalview.io.JalviewFileView;
+import jalview.util.ImageMaker;
 import jalview.util.MessageManager;
 import jalview.ws.params.ParamManager;
 
@@ -449,7 +452,7 @@ public class Desktop extends jalview.jbgui.GDesktop implements
           public void run()
           {
             long instance = System.currentTimeMillis();
-            Desktop.instance.setProgressBar("Refreshing news", instance);
+            Desktop.instance.setProgressBar(MessageManager.getString("status.refreshing_news"), instance);
             jvnews.refreshNews();
             Desktop.instance.setProgressBar(null, instance);
             jvnews.showNews();
@@ -559,7 +562,8 @@ public class Desktop extends jalview.jbgui.GDesktop implements
   void showPasteMenu(int x, int y)
   {
     JPopupMenu popup = new JPopupMenu();
-    JMenuItem item = new JMenuItem(MessageManager.getString("label.paste_new_window"));
+    JMenuItem item = new JMenuItem(
+            MessageManager.getString("label.paste_new_window"));
     item.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent evt)
@@ -649,8 +653,9 @@ public class Desktop extends jalview.jbgui.GDesktop implements
     // A HEADLESS STATE WHEN NO DESKTOP EXISTS. MUST RETURN
     // IF JALVIEW IS RUNNING HEADLESS
     // ///////////////////////////////////////////////
-    if (instance == null || (System.getProperty("java.awt.headless") != null
-            && System.getProperty("java.awt.headless").equals("true")))
+    if (instance == null
+            || (System.getProperty("java.awt.headless") != null && System
+                    .getProperty("java.awt.headless").equals("true")))
     {
       return;
     }
@@ -807,7 +812,7 @@ public class Desktop extends jalview.jbgui.GDesktop implements
    */
   public void drop(DropTargetDropEvent evt)
   {
-    boolean success=true;
+    boolean success = true;
     Transferable t = evt.getTransferable();
     java.util.List files = null;
     java.util.List protocols = null;
@@ -856,7 +861,7 @@ public class Desktop extends jalview.jbgui.GDesktop implements
       }
     } catch (Exception e)
     {
-      success=false;
+      success = false;
     }
 
     if (files != null)
@@ -885,10 +890,11 @@ public class Desktop extends jalview.jbgui.GDesktop implements
         }
       } catch (Exception ex)
       {
-        success=false;
+        success = false;
       }
     }
-    evt.dropComplete(success); // need this to ensure input focus is properly transfered to any new windows created 
+    evt.dropComplete(success); // need this to ensure input focus is properly
+                               // transfered to any new windows created
   }
 
   /**
@@ -906,7 +912,8 @@ public class Desktop extends jalview.jbgui.GDesktop implements
             jalview.bin.Cache.getProperty("DEFAULT_FILE_FORMAT"));
 
     chooser.setFileView(new JalviewFileView());
-    chooser.setDialogTitle(MessageManager.getString("label.open_local_file"));
+    chooser.setDialogTitle(MessageManager
+            .getString("label.open_local_file"));
     chooser.setToolTipText(MessageManager.getString("action.open"));
 
     int value = chooser.showOpenDialog(this);
@@ -918,7 +925,8 @@ public class Desktop extends jalview.jbgui.GDesktop implements
               .getSelectedFile().getParent());
 
       String format = null;
-      if (chooser.getSelectedFormat()!=null && chooser.getSelectedFormat().equals("Jalview"))
+      if (chooser.getSelectedFormat() != null
+              && chooser.getSelectedFormat().equals("Jalview"))
       {
         format = "Jalview";
       }
@@ -949,7 +957,8 @@ public class Desktop extends jalview.jbgui.GDesktop implements
   {
     // This construct allows us to have a wider textfield
     // for viewing
-    JLabel label = new JLabel(MessageManager.getString("label.input_file_url"));
+    JLabel label = new JLabel(
+            MessageManager.getString("label.input_file_url"));
     final JComboBox history = new JComboBox();
 
     JPanel panel = new JPanel(new GridLayout(2, 1));
@@ -974,7 +983,8 @@ public class Desktop extends jalview.jbgui.GDesktop implements
     }
 
     int reply = JOptionPane.showInternalConfirmDialog(desktop, panel,
-            MessageManager.getString("label.input_alignment_from_url"), JOptionPane.OK_CANCEL_OPTION);
+            MessageManager.getString("label.input_alignment_from_url"),
+            JOptionPane.OK_CANCEL_OPTION);
 
     if (reply != JOptionPane.OK_OPTION)
     {
@@ -1002,7 +1012,7 @@ public class Desktop extends jalview.jbgui.GDesktop implements
       if (format.equals("URL NOT FOUND"))
       {
         JOptionPane.showInternalMessageDialog(Desktop.desktop,
-                "Couldn't locate " + url, "URL not found",
+                MessageManager.formatMessage("label.couldnt_locate", new String[]{url}), MessageManager.getString("label.url_not_found"),
                 JOptionPane.WARNING_MESSAGE);
 
         return;
@@ -1029,7 +1039,7 @@ public class Desktop extends jalview.jbgui.GDesktop implements
   {
     CutAndPasteTransfer cap = new CutAndPasteTransfer();
     cap.setForInput(viewport);
-    Desktop.addInternalFrame(cap, "Cut & Paste Alignment File", 600, 500);
+    Desktop.addInternalFrame(cap, MessageManager.getString("label.cut_paste_alignmen_file"), 600, 500);
   }
 
   /*
@@ -1104,7 +1114,7 @@ public class Desktop extends jalview.jbgui.GDesktop implements
     {
       message.append("<h1><strong>Version: "
               + jalview.bin.Cache.getProperty("VERSION")
-              + "</strong></h1><br>");
+              + "</strong></h1>");
       message.append("<strong>Last Updated: <em>"
               + jalview.bin.Cache.getDefault("BUILD_DATE", "unknown")
               + "</em></strong>");
@@ -1151,11 +1161,11 @@ public class Desktop extends jalview.jbgui.GDesktop implements
     message.append("<br>Authors:  "
             + jalview.bin.Cache
                     .getDefault(
-                            "AUTHORNAMES",
-                            "Jim Procter, Andrew Waterhouse, Jan Engelhardt, Lauren Lui, Michele Clamp, James Cuff, Steve Searle, David Martin & Geoff Barton")
-            + "<br>Development managed by The Barton Group, University of Dundee, Scotland, UK.<br>"
-            + "<br>For help, see the FAQ at <a href=\"http://www.jalview.org\">www.jalview.org</a> and/or join the jalview-discuss@jalview.org mailing list"
-            + "<br>If  you use Jalview, please cite:"
+                            "AUTHORFNAMES",
+                            "The Jalview Authors (See AUTHORS file for current list)")
+            + "<br><br>Development managed by The Barton Group, University of Dundee, Scotland, UK.<br>"
+            + "<br><br>For help, see the FAQ at <a href=\"http://www.jalview.org/faq\">www.jalview.org/faq</a> and/or join the jalview-discuss@jalview.org mailing list"
+            + "<br><br>If  you use Jalview, please cite:"
             + "<br>Waterhouse, A.M., Procter, J.B., Martin, D.M.A, Clamp, M. and Barton, G. J. (2009)"
             + "<br>Jalview Version 2 - a multiple sequence alignment editor and analysis workbench"
             + "<br>Bioinformatics doi: 10.1093/bioinformatics/btp033"
@@ -1376,7 +1386,7 @@ public class Desktop extends jalview.jbgui.GDesktop implements
             { "Jalview Project" }, "Jalview Project");
 
     chooser.setFileView(new JalviewFileView());
-    chooser.setDialogTitle("Save State");
+    chooser.setDialogTitle(MessageManager.getString("label.save_state"));
 
     int value = chooser.showSaveDialog(this);
 
@@ -1389,7 +1399,7 @@ public class Desktop extends jalview.jbgui.GDesktop implements
         public void run()
         {
 
-          setProgressBar("Saving jalview project " + choice.getName(),
+          setProgressBar(MessageManager.formatMessage("label.saving_jalview_project", new String[]{choice.getName()}),
                   choice.hashCode());
           jalview.bin.Cache.setProperty("LAST_DIRECTORY",
                   choice.getParent());
@@ -1409,8 +1419,8 @@ public class Desktop extends jalview.jbgui.GDesktop implements
                     ex);
             JOptionPane.showMessageDialog(
                     me,
-                    "Error whilst saving current state to "
-                            + choice.getName(), "Couldn't save project",
+                    MessageManager.formatMessage("label.error_whilst_saving_current_state_to", new String[]{ choice.getName()}),
+                    MessageManager.getString("label.couldnt_save_project"),
                     JOptionPane.WARNING_MESSAGE);
           }
           setProgressBar(null, choice.hashCode());
@@ -1429,10 +1439,11 @@ public class Desktop extends jalview.jbgui.GDesktop implements
   {
     JalviewFileChooser chooser = new JalviewFileChooser(
             jalview.bin.Cache.getProperty("LAST_DIRECTORY"), new String[]
-            { "jvp","jar" }, new String[]
-            { "Jalview Project", "Jalview Project (old)" }, "Jalview Project");
+            { "jvp", "jar" }, new String[]
+            { "Jalview Project", "Jalview Project (old)" },
+            "Jalview Project");
     chooser.setFileView(new JalviewFileView());
-    chooser.setDialogTitle("Restore state");
+    chooser.setDialogTitle(MessageManager.getString("label.restore_state"));
 
     int value = chooser.showOpenDialog(this);
 
@@ -1445,7 +1456,7 @@ public class Desktop extends jalview.jbgui.GDesktop implements
       {
         public void run()
         {
-          setProgressBar("loading jalview project " + choice,
+          setProgressBar(MessageManager.formatMessage("label.loading_jalview_project", new String[]{choice}),
                   choice.hashCode());
           try
           {
@@ -1458,8 +1469,8 @@ public class Desktop extends jalview.jbgui.GDesktop implements
             Cache.log.error("Problems whilst loading project from "
                     + choice, ex);
             JOptionPane.showMessageDialog(Desktop.desktop,
-                    "Error whilst loading project from " + choice,
-                    "Couldn't load project", JOptionPane.WARNING_MESSAGE);
+                       MessageManager.formatMessage("label.error_whilst_loading_project_from", new String[]{choice}),
+                    MessageManager.getString("label.couldnt_load_project"), JOptionPane.WARNING_MESSAGE);
           }
           setProgressBar(null, choice.hashCode());
         }
@@ -1480,8 +1491,7 @@ public class Desktop extends jalview.jbgui.GDesktop implements
   {
     if (fileLoadingCount == 0)
     {
-      fileLoadingPanels.add(addProgressPanel("Loading File: " + fileName
-              + "   "));
+      fileLoadingPanels.add(addProgressPanel(MessageManager.formatMessage("label.loading_file", new String[]{fileName})));
     }
     fileLoadingCount++;
   }
@@ -1515,13 +1525,16 @@ public class Desktop extends jalview.jbgui.GDesktop implements
   {
     if (progressPanel != null)
     {
-      progressPanel.remove(progbar);
-      GridLayout gl = (GridLayout) progressPanel.getLayout();
-      gl.setRows(gl.getRows() - 1);
-      if (--totalProgressCount < 1)
+      synchronized (progressPanel)
       {
-        this.getContentPane().remove(progressPanel);
-        progressPanel = null;
+        progressPanel.remove(progbar);
+        GridLayout gl = (GridLayout) progressPanel.getLayout();
+        gl.setRows(gl.getRows() - 1);
+        if (--totalProgressCount < 1)
+        {
+          this.getContentPane().remove(progressPanel);
+          progressPanel = null;
+        }
       }
     }
     validate();
@@ -1532,9 +1545,9 @@ public class Desktop extends jalview.jbgui.GDesktop implements
     fileLoadingCount--;
     if (fileLoadingCount < 1)
     {
-      for (JPanel flp : fileLoadingPanels)
+      while (fileLoadingPanels.size() > 0)
       {
-        removeProgressPanel(flp);
+        removeProgressPanel(fileLoadingPanels.remove(0));
       }
       fileLoadingPanels.clear();
       fileLoadingCount = 0;
@@ -1716,8 +1729,9 @@ public class Desktop extends jalview.jbgui.GDesktop implements
               jalview.bin.Cache.getProperty("LAST_DIRECTORY"));
 
       chooser.setFileView(new JalviewFileView());
-      chooser.setDialogTitle("Open a saved VAMSAS session");
-      chooser.setToolTipText(MessageManager.getString("label.select_vamsas_session_opened_as_new_vamsas_session"));
+      chooser.setDialogTitle(MessageManager.getString("label.open_saved_vamsas_session"));
+      chooser.setToolTipText(MessageManager
+              .getString("label.select_vamsas_session_opened_as_new_vamsas_session"));
 
       int value = chooser.showOpenDialog(this);
 
@@ -1726,10 +1740,16 @@ public class Desktop extends jalview.jbgui.GDesktop implements
         String fle = chooser.getSelectedFile().toString();
         if (!vamsasImport(chooser.getSelectedFile()))
         {
-          JOptionPane.showInternalMessageDialog(Desktop.desktop,
-                  MessageManager.formatMessage("label.couldnt_import_as_vamsas_session", new String[]{fle}),
-                  MessageManager.getString("label.vamsas_document_import_failed"),
-                  JOptionPane.ERROR_MESSAGE);
+          JOptionPane
+                  .showInternalMessageDialog(
+                          Desktop.desktop,
+                          MessageManager.formatMessage(
+                                  "label.couldnt_import_as_vamsas_session",
+                                  new String[]
+                                  { fle }),
+                          MessageManager
+                                  .getString("label.vamsas_document_import_failed"),
+                          JOptionPane.ERROR_MESSAGE);
         }
       }
     }
@@ -1802,22 +1822,22 @@ public class Desktop extends jalview.jbgui.GDesktop implements
       return false;
     }
 
-    setProgressBar("Importing VAMSAS session from " + file.getName(),
+    setProgressBar(MessageManager.formatMessage("status.importing_vamsas_session_from", new String[]{file.getName()}),
             file.hashCode());
     try
     {
       v_client = new jalview.gui.VamsasApplication(this, file, null);
     } catch (Exception ex)
     {
-      setProgressBar("Importing VAMSAS session from " + file.getName(),
-              file.hashCode());
+        setProgressBar(MessageManager.formatMessage("status.importing_vamsas_session_from", new String[]{file.getName()}),
+                file.hashCode());
       jalview.bin.Cache.log.error(
               "New vamsas session from existing session file failed:", ex);
       return false;
     }
     setupVamsasConnectedGui();
     v_client.initial_update(); // TODO: thread ?
-    setProgressBar("Importing VAMSAS session from " + file.getName(),
+    setProgressBar(MessageManager.formatMessage("status.importing_vamsas_session_from", new String[]{file.getName()}),
             file.hashCode());
     return v_client.inSession();
   }
@@ -1826,12 +1846,11 @@ public class Desktop extends jalview.jbgui.GDesktop implements
   {
     if (v_client != null)
     {
-      throw new Error(
-              "Trying to join a vamsas session when another is already connected.");
+      throw new Error(MessageManager.getString("error.try_join_vamsas_session_another"));
     }
     if (mysesid == null)
     {
-      throw new Error("Invalid vamsas session id.");
+      throw new Error(MessageManager.getString("error.invalid_vamsas_session_id"));
     }
     v_client = new VamsasApplication(this, mysesid);
     setupVamsasConnectedGui();
@@ -1883,7 +1902,8 @@ public class Desktop extends jalview.jbgui.GDesktop implements
     vamsasSave.setVisible(false);
     vamsasStop.setVisible(false);
     vamsasImport.setVisible(true);
-    vamsasStart.setText(MessageManager.getString("label.new_vamsas_session"));
+    vamsasStart.setText(MessageManager
+            .getString("label.new_vamsas_session"));
   }
 
   public void vamsasStop_actionPerformed(ActionEvent e)
@@ -1919,7 +1939,9 @@ public class Desktop extends jalview.jbgui.GDesktop implements
         {
           JMenuItem sessit = new JMenuItem();
           sessit.setText(sess[i]);
-          sessit.setToolTipText(MessageManager.formatMessage("label.connect_to_session", new String[]{sess[i]}));
+          sessit.setToolTipText(MessageManager.formatMessage(
+                  "label.connect_to_session", new String[]
+                  { sess[i] }));
           final Desktop dsktp = this;
           final String mysesid = sess[i];
           sessit.addActionListener(new ActionListener()
@@ -1975,15 +1997,14 @@ public class Desktop extends jalview.jbgui.GDesktop implements
               { "Vamsas Document" }, "Vamsas Document");
 
       chooser.setFileView(new JalviewFileView());
-      chooser.setDialogTitle("Save Vamsas Document Archive");
+      chooser.setDialogTitle(MessageManager.getString("label.save_vamsas_document_archive"));
 
       int value = chooser.showSaveDialog(this);
 
       if (value == JalviewFileChooser.APPROVE_OPTION)
       {
         java.io.File choice = chooser.getSelectedFile();
-        JPanel progpanel = addProgressPanel("Saving VAMSAS Document to "
-                + choice.getName());
+        JPanel progpanel = addProgressPanel(MessageManager.formatMessage("label.saving_vamsas_doc", new String[]{choice.getName()}));
         jalview.bin.Cache.setProperty("LAST_DIRECTORY", choice.getParent());
         String warnmsg = null;
         String warnttl = null;
@@ -2035,7 +2056,7 @@ public class Desktop extends jalview.jbgui.GDesktop implements
     }
     if (b)
     {
-      vamUpdate = this.addProgressPanel("Updating vamsas session");
+      vamUpdate = this.addProgressPanel(MessageManager.getString("label.updating_vamsas_session"));
     }
     vamsasStart.setVisible(!b);
     vamsasStop.setVisible(!b);
@@ -2141,8 +2162,11 @@ public class Desktop extends jalview.jbgui.GDesktop implements
         FontMetrics fm = g.getFontMetrics();
         if (fm != null)
         {
-          g.drawString(
-                         MessageManager.formatMessage("label.memory_stats", new String[]{df.format(totalFreeMemory),df.format(maxMemory),df.format(percentUsage)}), 10,
+          g.drawString(MessageManager.formatMessage(
+                  "label.memory_stats",
+                  new String[]
+                  { df.format(totalFreeMemory), df.format(maxMemory),
+                      df.format(percentUsage) }), 10,
                   getHeight() - fm.getHeight());
         }
       }
@@ -2263,8 +2287,7 @@ public class Desktop extends jalview.jbgui.GDesktop implements
     // use reflection to avoid creating compilation dependency.
     if (!jalview.bin.Cache.groovyJarsPresent())
     {
-      throw new Error(
-              "Implementation Error. Cannot create groovyShell without Groovy on the classpath!");
+      throw new Error(MessageManager.getString("error.implementation_error_cannot_create_groovyshell"));
     }
     try
     {
@@ -2286,8 +2309,8 @@ public class Desktop extends jalview.jbgui.GDesktop implements
               .showInternalMessageDialog(
                       Desktop.desktop,
 
-                      "Couldn't create the groovy Shell. Check the error log for the details of what went wrong.",
-                      "Jalview Groovy Support Failed",
+                      MessageManager.getString("label.couldnt_create_groovy_shell"),
+                      MessageManager.getString("label.groovy_support_failed"),
                       JOptionPane.ERROR_MESSAGE);
     }
   }
@@ -2338,14 +2361,14 @@ public class Desktop extends jalview.jbgui.GDesktop implements
   {
     if (progressBarHandlers == null || !progressBars.contains(new Long(id)))
     {
-      throw new Error(
-              "call setProgressBar before registering the progress bar's handler.");
+      throw new Error(MessageManager.getString("error.call_setprogressbar_before_registering_handler"));
     }
     progressBarHandlers.put(new Long(id), handler);
     final JPanel progressPanel = (JPanel) progressBars.get(new Long(id));
     if (handler.canCancel())
     {
-      JButton cancel = new JButton(MessageManager.getString("action.cancel"));
+      JButton cancel = new JButton(
+              MessageManager.getString("action.cancel"));
       final IProgressIndicator us = this;
       cancel.addActionListener(new ActionListener()
       {
@@ -2353,10 +2376,7 @@ public class Desktop extends jalview.jbgui.GDesktop implements
         public void actionPerformed(ActionEvent e)
         {
           handler.cancelActivity(id);
-          us.setProgressBar(
-                  "Cancelled "
-                          + ((JLabel) progressPanel.getComponent(0))
-                                  .getText(), id);
+          us.setProgressBar(MessageManager.formatMessage("label.cancelled_params", new String[]{((JLabel) progressPanel.getComponent(0)).getText()}), id);
         }
       });
       progressPanel.add(cancel, BorderLayout.EAST);
@@ -2443,15 +2463,15 @@ public class Desktop extends jalview.jbgui.GDesktop implements
     // JAL-940 - JALVIEW 1 services are now being EOLed as of JABA 2.1 release
     if (true)
     {
-    // todo: changesupport handlers need to be transferred
-    if (discoverer == null)
-    {
-      discoverer = new jalview.ws.jws1.Discoverer();
-      // register PCS handler for desktop.
-      discoverer.addPropertyChangeListener(changeSupport);
-    }
-    // JAL-940 - disabled JWS1 service configuration - always start discoverer
-    // until we phase out completely
+      // todo: changesupport handlers need to be transferred
+      if (discoverer == null)
+      {
+        discoverer = new jalview.ws.jws1.Discoverer();
+        // register PCS handler for desktop.
+        discoverer.addPropertyChangeListener(changeSupport);
+      }
+      // JAL-940 - disabled JWS1 service configuration - always start discoverer
+      // until we phase out completely
       (t0 = new Thread(discoverer)).start();
     }
 
@@ -2618,7 +2638,7 @@ public class Desktop extends jalview.jbgui.GDesktop implements
         {
           if (progress != null)
           {
-            progress.setProgressBar("Opening " + url, this.hashCode());
+            progress.setProgressBar(MessageManager.formatMessage("status.opening_params", new String[]{url}), this.hashCode());
           }
           jalview.util.BrowserLauncher.openURL(url);
         } catch (Exception ex)
@@ -2626,9 +2646,8 @@ public class Desktop extends jalview.jbgui.GDesktop implements
           JOptionPane
                   .showInternalMessageDialog(
                           Desktop.desktop,
-                          "Unixers: Couldn't find default web browser."
-                                  + "\nAdd the full path to your browser in Preferences.",
-                          "Web browser not found",
+                          MessageManager.getString("label.web_browser_not_found_unix"),
+                          MessageManager.getString("label.web_browser_not_found"),
                           JOptionPane.WARNING_MESSAGE);
 
           ex.printStackTrace();
@@ -2744,4 +2763,20 @@ public class Desktop extends jalview.jbgui.GDesktop implements
     dialogPause = false;
     block.release();
   }
+  @Override
+  protected void snapShotWindow_actionPerformed(ActionEvent e)
+  {
+    invalidate();
+    File of;
+    ImageMaker im = new jalview.util.ImageMaker(this, ImageMaker.EPS, "View of Desktop", getWidth(), getHeight(), of=new File("Jalview_snapshot"+System.currentTimeMillis()+".eps"), "View of desktop");
+    try {
+      paintAll(im.getGraphics());
+      im.writeImage();
+    } catch (Exception q)
+    {
+      Cache.log.error("Couldn't write snapshot to "+of.getAbsolutePath(),q);
+      return;
+    }
+    Cache.log.info("Successfully written snapshot to file "+of.getAbsolutePath());
+  }
 }
index 9cc1844..8906569 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -81,7 +83,8 @@ public class EPSOptions extends JPanel
       }
     });
     jLabel1.setFont(JvSwingUtils.getLabelFont());
-    jLabel1.setText(MessageManager.getString("label.select_eps_character_rendering_style"));
+    jLabel1.setText(MessageManager
+            .getString("label.select_eps_character_rendering_style"));
     this.setLayout(borderLayout1);
     jPanel3.setBorder(BorderFactory.createEtchedBorder());
     jPanel2.add(text);
index 5e69ac7..8db5bb2 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
index 6b28937..8ab7c85 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -225,10 +227,14 @@ public class FeatureColourChooser extends JalviewDialog
         threshold_actionPerformed(e);
       }
     });
-    threshold.setToolTipText(MessageManager.getString("label.threshold_feature_display_by_score"));
-    threshold.addItem(MessageManager.getString("label.threshold_feature_no_thereshold")); // index 0
-    threshold.addItem(MessageManager.getString("label.threshold_feature_above_thereshold")); // index 1
-    threshold.addItem(MessageManager.getString("label.threshold_feature_below_thereshold")); // index 2
+    threshold.setToolTipText(MessageManager
+            .getString("label.threshold_feature_display_by_score"));
+    threshold.addItem(MessageManager
+            .getString("label.threshold_feature_no_thereshold")); // index 0
+    threshold.addItem(MessageManager
+            .getString("label.threshold_feature_above_thereshold")); // index 1
+    threshold.addItem(MessageManager
+            .getString("label.threshold_feature_below_thereshold")); // index 2
     jPanel3.setLayout(flowLayout2);
     thresholdValue.addActionListener(new ActionListener()
     {
@@ -243,14 +249,16 @@ public class FeatureColourChooser extends JalviewDialog
     slider.setEnabled(false);
     slider.setOpaque(false);
     slider.setPreferredSize(new Dimension(100, 32));
-    slider.setToolTipText(MessageManager.getString("label.adjust_thereshold"));
+    slider.setToolTipText(MessageManager
+            .getString("label.adjust_thereshold"));
     thresholdValue.setEnabled(false);
     thresholdValue.setColumns(7);
     jPanel3.setBackground(Color.white);
     thresholdIsMin.setBackground(Color.white);
-    thresholdIsMin.setText(MessageManager.getString("label.threshold_minmax"));
-    thresholdIsMin
-            .setToolTipText(MessageManager.getString("label.toggle_absolute_relative_display_threshold"));
+    thresholdIsMin.setText(MessageManager
+            .getString("label.threshold_minmax"));
+    thresholdIsMin.setToolTipText(MessageManager
+            .getString("label.toggle_absolute_relative_display_threshold"));
     thresholdIsMin.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent actionEvent)
@@ -259,9 +267,11 @@ public class FeatureColourChooser extends JalviewDialog
       }
     });
     colourByLabel.setBackground(Color.white);
-    colourByLabel.setText(MessageManager.getString("label.colour_by_label"));
     colourByLabel
-            .setToolTipText(MessageManager.getString("label.display_features_same_type_different_label_using_different_colour"));
+            .setText(MessageManager.getString("label.colour_by_label"));
+    colourByLabel
+            .setToolTipText(MessageManager
+                    .getString("label.display_features_same_type_different_label_using_different_colour"));
     colourByLabel.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent actionEvent)
@@ -331,7 +341,8 @@ public class FeatureColourChooser extends JalviewDialog
   public void minColour_actionPerformed()
   {
     Color col = JColorChooser.showDialog(this,
-            MessageManager.getString("label.select_colour_minimum_value"), minColour.getBackground());
+            MessageManager.getString("label.select_colour_minimum_value"),
+            minColour.getBackground());
     if (col != null)
     {
       minColour.setBackground(col);
@@ -344,7 +355,8 @@ public class FeatureColourChooser extends JalviewDialog
   public void maxColour_actionPerformed()
   {
     Color col = JColorChooser.showDialog(this,
-            MessageManager.getString("label.select_colour_maximum_value"), maxColour.getBackground());
+            MessageManager.getString("label.select_colour_maximum_value"),
+            maxColour.getBackground());
     if (col != null)
     {
       maxColour.setBackground(col);
@@ -363,11 +375,11 @@ public class FeatureColourChooser extends JalviewDialog
     }
 
     int aboveThreshold = AnnotationColourGradient.NO_THRESHOLD;
-    if (threshold.getSelectedIndex()==1)
+    if (threshold.getSelectedIndex() == 1)
     {
       aboveThreshold = AnnotationColourGradient.ABOVE_THRESHOLD;
     }
-    else if (threshold.getSelectedIndex()==2)
+    else if (threshold.getSelectedIndex() == 2)
     {
       aboveThreshold = AnnotationColourGradient.BELOW_THRESHOLD;
     }
index 970160e..d2d9c9c 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -170,9 +172,12 @@ public class FeatureRenderer implements jalview.api.FeatureRenderer
     this.transparency = fr.transparency;
     this.featureOrder = fr.featureOrder;
   }
+
   /**
    * update from another feature renderer
-   * @param fr settings to copy
+   * 
+   * @param fr
+   *          settings to copy
    */
   public void transferSettings(FeatureRenderer fr)
   {
@@ -935,8 +940,7 @@ public class FeatureRenderer implements jalview.api.FeatureRenderer
         return ((GraduatedColor) fc).getMaxColor();
       }
     }
-    throw new Error("Implementation Error: Unrecognised render object "
-            + fc.getClass() + " for features of type " + featureType);
+    throw new Error(MessageManager.formatMessage("error.implementation_error_unrecognised_render_object_for_features_type", new String[]{fc.getClass().toString(),featureType}));
   }
 
   /**
@@ -960,8 +964,7 @@ public class FeatureRenderer implements jalview.api.FeatureRenderer
         return ((GraduatedColor) fc).findColor(feature);
       }
     }
-    throw new Error("Implementation Error: Unrecognised render object "
-            + fc.getClass() + " for features of type " + feature.getType());
+    throw new Error(MessageManager.formatMessage("error.implementation_error_unrecognised_render_object_for_features_type", new String[]{fc.getClass().toString(),feature.getType()}));
   }
 
   private boolean showFeature(SequenceFeature sequenceFeature)
@@ -1021,7 +1024,7 @@ public class FeatureRenderer implements jalview.api.FeatureRenderer
         if (fcol instanceof Color)
         {
           Color col = JColorChooser.showDialog(Desktop.desktop,
-                  "Select Feature Colour", ((Color) fcol));
+                  MessageManager.getString("label.select_feature_colour"), ((Color) fcol));
           if (col != null)
           {
             fcol = col;
@@ -1118,12 +1121,14 @@ public class FeatureRenderer implements jalview.api.FeatureRenderer
 
     tmp = new JPanel();
     panel.add(tmp);
-    tmp.add(new JLabel(MessageManager.getString("label.group")+":", JLabel.RIGHT));
+    tmp.add(new JLabel(MessageManager.getString("label.group") + ":",
+            JLabel.RIGHT));
     tmp.add(source);
 
     tmp = new JPanel();
     panel.add(tmp);
-    tmp.add(new JLabel(MessageManager.getString("label.colour"), JLabel.RIGHT));
+    tmp.add(new JLabel(MessageManager.getString("label.colour"),
+            JLabel.RIGHT));
     tmp.add(colour);
     colour.setPreferredSize(new Dimension(150, 15));
     colour.setFont(new java.awt.Font("Verdana", Font.PLAIN, 9));
@@ -1135,7 +1140,8 @@ public class FeatureRenderer implements jalview.api.FeatureRenderer
     bigPanel.add(panel, BorderLayout.NORTH);
 
     panel = new JPanel();
-    panel.add(new JLabel(MessageManager.getString("label.description"), JLabel.RIGHT));
+    panel.add(new JLabel(MessageManager.getString("label.description"),
+            JLabel.RIGHT));
     description.setFont(JvSwingUtils.getTextAreaFont());
     description.setLineWrap(true);
     panel.add(new JScrollPane(description));
@@ -1145,9 +1151,11 @@ public class FeatureRenderer implements jalview.api.FeatureRenderer
       bigPanel.add(panel, BorderLayout.SOUTH);
 
       panel = new JPanel();
-      panel.add(new JLabel(MessageManager.getString("label.start"), JLabel.RIGHT));
+      panel.add(new JLabel(MessageManager.getString("label.start"),
+              JLabel.RIGHT));
       panel.add(start);
-      panel.add(new JLabel(MessageManager.getString("label.end"), JLabel.RIGHT));
+      panel.add(new JLabel(MessageManager.getString("label.end"),
+              JLabel.RIGHT));
       panel.add(end);
       bigPanel.add(panel, BorderLayout.CENTER);
     }
@@ -1208,12 +1216,12 @@ public class FeatureRenderer implements jalview.api.FeatureRenderer
       { "OK", "Cancel" };
     }
 
-    String title = newFeatures ? "Create New Sequence Feature(s)"
-            : "Amend/Delete Features for " + sequences[0].getName();
+    String title = newFeatures ? MessageManager.getString("label.create_new_sequence_features")
+            : MessageManager.formatMessage("label.amend_delete_features", new String[]{sequences[0].getName()});
 
     int reply = JOptionPane.showInternalOptionDialog(Desktop.desktop,
             bigPanel, title, JOptionPane.YES_NO_CANCEL_OPTION,
-            JOptionPane.QUESTION_MESSAGE, null, options, "OK");
+            JOptionPane.QUESTION_MESSAGE, null, options, MessageManager.getString("action.ok"));
 
     jalview.io.FeaturesFile ffile = new jalview.io.FeaturesFile();
 
index 95a18d4..662d7c6 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -108,7 +110,8 @@ public class FeatureSettings extends JPanel
         else if (evt.getClickCount() == 2)
         {
           fr.ap.alignFrame.avc.markColumnsContainingFeatures(
-                  evt.isAltDown(),evt.isShiftDown() || evt.isMetaDown(), evt.isMetaDown(),
+                  evt.isAltDown(), evt.isShiftDown() || evt.isMetaDown(),
+                  evt.isMetaDown(),
                   (String) table.getValueAt(selectedRow, 0));
         }
       }
@@ -138,8 +141,8 @@ public class FeatureSettings extends JPanel
         }
       }
     });
-    table.setToolTipText("<html>"+JvSwingUtils
-            .wrapTooltip("Click/drag feature types up or down to change render order.<br/>Double click to select columns containing feature in alignment/current selection<br/>Pressing Alt will select columns outside features rather than inside<br/>Pressing Shift to modify current selection (rather than clear current selection)<br/>Press CTRL or Command/Meta to toggle columns in/outside features<br/>")+"</html>");
+    table.setToolTipText(JvSwingUtils
+                    .wrapTooltip(true, MessageManager.getString("label.feature_settings_click_drag")));
     scrollPane.setViewportView(table);
 
     dassourceBrowser = new DasSourceBrowser(this);
@@ -173,11 +176,15 @@ public class FeatureSettings extends JPanel
     frame.setContentPane(this);
     if (new jalview.util.Platform().isAMac())
     {
-      Desktop.addInternalFrame(frame, MessageManager.getString("label.sequence_feature_settings"), 475, 480);
+      Desktop.addInternalFrame(frame,
+              MessageManager.getString("label.sequence_feature_settings"),
+              475, 480);
     }
     else
     {
-      Desktop.addInternalFrame(frame, MessageManager.getString("label.sequence_feature_settings"), 400, 450);
+      Desktop.addInternalFrame(frame,
+              MessageManager.getString("label.sequence_feature_settings"),
+              400, 450);
     }
 
     frame.addInternalFrameListener(new javax.swing.event.InternalFrameAdapter()
@@ -195,8 +202,11 @@ public class FeatureSettings extends JPanel
   protected void popupSort(final int selectedRow, final String type,
           final Object typeCol, final Hashtable minmax, int x, int y)
   {
-    JPopupMenu men = new JPopupMenu(MessageManager.formatMessage("label.settings_for_param", new String[]{type}));
-    JMenuItem scr = new JMenuItem(MessageManager.getString("label.sort_by_score"));
+    JPopupMenu men = new JPopupMenu(MessageManager.formatMessage(
+            "label.settings_for_param", new String[]
+            { type }));
+    JMenuItem scr = new JMenuItem(
+            MessageManager.getString("label.sort_by_score"));
     men.add(scr);
     final FeatureSettings me = this;
     scr.addActionListener(new ActionListener()
@@ -209,7 +219,8 @@ public class FeatureSettings extends JPanel
       }
 
     });
-    JMenuItem dens = new JMenuItem(MessageManager.getString("label.sort_by_density"));
+    JMenuItem dens = new JMenuItem(
+            MessageManager.getString("label.sort_by_density"));
     dens.addActionListener(new ActionListener()
     {
 
@@ -298,24 +309,28 @@ public class FeatureSettings extends JPanel
         });
       }
     }
-    JMenuItem selCols = new JMenuItem(MessageManager.getString("label.select_columns_containing"));
+    JMenuItem selCols = new JMenuItem(
+            MessageManager.getString("label.select_columns_containing"));
     selCols.addActionListener(new ActionListener()
     {
-      
+
       @Override
       public void actionPerformed(ActionEvent arg0)
       {
-        fr.ap.alignFrame.avc.markColumnsContainingFeatures(false, false, false, type);
+        fr.ap.alignFrame.avc.markColumnsContainingFeatures(false, false,
+                false, type);
       }
     });
-    JMenuItem clearCols = new JMenuItem(MessageManager.getString("label.select_columns_not_containing"));
+    JMenuItem clearCols = new JMenuItem(
+            MessageManager.getString("label.select_columns_not_containing"));
     clearCols.addActionListener(new ActionListener()
     {
-      
+
       @Override
       public void actionPerformed(ActionEvent arg0)
       {
-        fr.ap.alignFrame.avc.markColumnsContainingFeatures(true, false, false, type);
+        fr.ap.alignFrame.avc.markColumnsContainingFeatures(true, false,
+                false, type);
       }
     });
     men.add(selCols);
@@ -631,7 +646,7 @@ public class FeatureSettings extends JPanel
             { "fc" }, new String[]
             { "Sequence Feature Colours" }, "Sequence Feature Colours");
     chooser.setFileView(new jalview.io.JalviewFileView());
-    chooser.setDialogTitle("Load Feature Colours");
+    chooser.setDialogTitle(MessageManager.getString("label.load_feature_colours"));
     chooser.setToolTipText(MessageManager.getString("action.load"));
 
     int value = chooser.showOpenDialog(this);
@@ -729,7 +744,7 @@ public class FeatureSettings extends JPanel
             { "fc" }, new String[]
             { "Sequence Feature Colours" }, "Sequence Feature Colours");
     chooser.setFileView(new jalview.io.JalviewFileView());
-    chooser.setDialogTitle("Save Feature Colour Scheme");
+    chooser.setDialogTitle(MessageManager.getString("label.save_feature_colours"));
     chooser.setToolTipText(MessageManager.getString("action.save"));
 
     int value = chooser.showSaveDialog(this);
@@ -953,7 +968,8 @@ public class FeatureSettings extends JPanel
       }
     });
     sortByScore.setFont(JvSwingUtils.getLabelFont());
-    sortByScore.setText(MessageManager.getString("label.seq_sort_by_score"));
+    sortByScore
+            .setText(MessageManager.getString("label.seq_sort_by_score"));
     sortByScore.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -962,7 +978,8 @@ public class FeatureSettings extends JPanel
       }
     });
     sortByDens.setFont(JvSwingUtils.getLabelFont());
-    sortByDens.setText(MessageManager.getString("label.sequence_sort_by_density"));
+    sortByDens.setText(MessageManager
+            .getString("label.sequence_sort_by_density"));
     sortByDens.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1045,8 +1062,8 @@ public class FeatureSettings extends JPanel
       }
     });
     this.add(tabbedPane, java.awt.BorderLayout.CENTER);
-    tabbedPane.addTab("Feature Settings", settingsPane);
-    tabbedPane.addTab("DAS Settings", dasSettingsPane);
+    tabbedPane.addTab(MessageManager.getString("label.feature_settings"), settingsPane);
+    tabbedPane.addTab(MessageManager.getString("label.das_settings"), dasSettingsPane);
     bigPanel.add(transPanel, java.awt.BorderLayout.SOUTH);
     transbuttons.add(optimizeOrder);
     transbuttons.add(invert);
@@ -1181,7 +1198,9 @@ public class FeatureSettings extends JPanel
         if (!valid)
         {
           return null;
-        } else {
+        }
+        else
+        {
           gps = new String[_gps.size()];
           _gps.toArray(gps);
         }
@@ -1339,10 +1358,15 @@ public class FeatureSettings extends JPanel
   public void noDasSourceActive()
   {
     complete();
-    JOptionPane.showInternalConfirmDialog(Desktop.desktop,
-            MessageManager.getString("label.no_das_sources_selected_warn"),
-            MessageManager.getString("label.no_das_sources_selected_title"), JOptionPane.DEFAULT_OPTION,
-            JOptionPane.INFORMATION_MESSAGE);
+    JOptionPane
+            .showInternalConfirmDialog(
+                    Desktop.desktop,
+                    MessageManager
+                            .getString("label.no_das_sources_selected_warn"),
+                    MessageManager
+                            .getString("label.no_das_sources_selected_title"),
+                    JOptionPane.DEFAULT_OPTION,
+                    JOptionPane.INFORMATION_MESSAGE);
   }
 
   // ///////////////////////////////////////////////////////////////////////
@@ -1356,7 +1380,7 @@ public class FeatureSettings extends JPanel
     }
 
     private String[] columnNames =
-    { "Feature Type", "Colour", "Display" };
+    { MessageManager.getString("label.feature_type"), MessageManager.getString("action.colour"), MessageManager.getString("label.display") };
 
     private Object[][] data;
 
index 3161271..bc5f823 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -237,11 +239,14 @@ public class Finder extends GFinder
     // 'SelectRegion' selection
     if (!haveResults)
     {
-      JOptionPane.showInternalMessageDialog(this, MessageManager.getString("label.finished_searching"),
-              null, JOptionPane.INFORMATION_MESSAGE);
+      JOptionPane.showInternalMessageDialog(this,
+              MessageManager.getString("label.finished_searching"), null,
+              JOptionPane.INFORMATION_MESSAGE);
       resIndex = -1;
       seqIndex = 0;
-    } else {
+    }
+    else
+    {
       if (findAll)
       {
         // then we report the matches that were found
index ea84207..b6116d9 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -82,12 +84,15 @@ public class FontChooser extends GFontChooser
 
     if (tp != null)
     {
-      Desktop.addInternalFrame(frame, MessageManager.getString("action.change_font_tree_panel"), 340, 170,
-              false);
+      Desktop.addInternalFrame(frame,
+              MessageManager.getString("action.change_font_tree_panel"),
+              340, 170, false);
     }
     else
     {
-      Desktop.addInternalFrame(frame, MessageManager.getString("action.change_font"), 340, 170, false);
+      Desktop.addInternalFrame(frame,
+              MessageManager.getString("action.change_font"), 340, 170,
+              false);
     }
 
     frame.setLayer(JLayeredPane.PALETTE_LAYER);
@@ -221,8 +226,8 @@ public class FontChooser extends GFontChooser
       JOptionPane
               .showInternalMessageDialog(
                       this,
-                      "Font doesn't have letters defined\nso cannot be used\nwith alignment data.",
-                      "Invalid Font", JOptionPane.WARNING_MESSAGE);
+                      MessageManager.getString("label.font_doesnt_have_letters_defined"),
+                      MessageManager.getString("label.invalid_font"), JOptionPane.WARNING_MESSAGE);
       return;
     }
     if (tp != null)
index a1e4b2e..33f7cb1 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
index c288abd..297dc48 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
index 5216f0d..91b23e4 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
index 2b87d21..39afd2c 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -27,6 +29,7 @@ import javax.swing.*;
 
 import jalview.datamodel.*;
 import jalview.io.SequenceAnnotationReport;
+import jalview.util.MessageManager;
 import jalview.util.UrlLink;
 
 /**
@@ -224,9 +227,8 @@ public class IdPanel extends JPanel implements MouseListener,
       JOptionPane
               .showInternalMessageDialog(
                       Desktop.desktop,
-                      "Unixers: Couldn't find default web browser."
-                              + "\nAdd the full path to your browser in Preferences.",
-                      "Web browser not found", JOptionPane.WARNING_MESSAGE);
+                      MessageManager.getString("label.web_browser_not_found_unix"),
+                      MessageManager.getString("label.web_browser_not_found"), JOptionPane.WARNING_MESSAGE);
       ex.printStackTrace();
     }
 
index 632d4df..0c53c58 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
index b2bbdef..030e78a 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -60,7 +62,8 @@ public class JDatabaseTree extends JalviewDialog implements KeyListener
 
   JButton getDatabaseSelectorButton()
   {
-    final JButton viewdbs = new JButton(MessageManager.getString("action.select_ddbb"));
+    final JButton viewdbs = new JButton(
+            MessageManager.getString("action.select_ddbb"));
     viewdbs.addActionListener(new ActionListener()
     {
 
@@ -83,7 +86,7 @@ public class JDatabaseTree extends JalviewDialog implements KeyListener
 
   public JDatabaseTree(jalview.ws.SequenceFetcher sfetch)
   {
-    initDialogFrame(this, true, false, "Select Database Retrieval Source",
+    initDialogFrame(this, true, false, MessageManager.getString("label.select_database_retrieval_source"),
             650, 490);
     /*
      * Dynamically generated database list will need a translation function from
@@ -216,8 +219,7 @@ public class JDatabaseTree extends JalviewDialog implements KeyListener
       }
       else
       {
-        throw new Error(
-                "Implementation Error: Can't reorder this tree. Not DefaultMutableTreeNode.");
+        throw new Error(MessageManager.getString("error.implementation_error_cant_reorder_tree"));
       }
     }
     jalview.util.QuickSort.sort(names, nodes);
@@ -363,8 +365,8 @@ public class JDatabaseTree extends JalviewDialog implements KeyListener
             }
             else
             {
-              srcs.add(sfetcher.getSourceProxy((String) dmt
-                      .getUserObject()).get(0));
+              srcs.add(sfetcher
+                      .getSourceProxy((String) dmt.getUserObject()).get(0));
               forcedFirstChild = true;
             }
           }
@@ -407,17 +409,27 @@ public class JDatabaseTree extends JalviewDialog implements KeyListener
 
     if (allowMultiSelections)
     {
-      dbstatus.setText(MessageManager.formatMessage("label.selected_database_to_fetch_from", new String[]{Integer.valueOf(srcs.size()).toString(),(srcs.size() == 1 ? "" : "s"),(srcs.size() > 0 ? " with " + x + " test quer" + (x == 1 ? "y" : "ies") : ".")}));
+      dbstatus.setText(MessageManager.formatMessage(
+              "label.selected_database_to_fetch_from", new String[]
+              {
+                  Integer.valueOf(srcs.size()).toString(),
+                  (srcs.size() == 1 ? "" : "s"),
+                  (srcs.size() > 0 ? " with " + x + " test quer"
+                          + (x == 1 ? "y" : "ies") : ".") }));
       dbstatex.setText(" ");
     }
     else
     {
       if (nm.length() > 0)
       {
-        dbstatus.setText(MessageManager.formatMessage("label.database_param",new String[]{nm}));
+        dbstatus.setText(MessageManager.formatMessage(
+                "label.database_param", new String[]
+                { nm }));
         if (qr.length() > 0)
         {
-          dbstatex.setText(MessageManager.formatMessage("label.example_param", new String[]{qr}));
+          dbstatex.setText(MessageManager.formatMessage(
+                  "label.example_param", new String[]
+                  { qr }));
         }
         else
         {
index dcf65b7..105209f 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -30,6 +32,7 @@ import javax.swing.*;
 
 import org.exolab.castor.xml.*;
 
+import jalview.api.structures.JalviewStructureDisplayI;
 import jalview.bin.Cache;
 import jalview.datamodel.Alignment;
 import jalview.datamodel.AlignmentAnnotation;
@@ -37,6 +40,7 @@ import jalview.datamodel.AlignmentI;
 import jalview.datamodel.SequenceI;
 import jalview.schemabinding.version2.*;
 import jalview.schemes.*;
+import jalview.util.MessageManager;
 import jalview.util.Platform;
 import jalview.util.jarInputStreamProvider;
 import jalview.viewmodel.AlignmentViewport;
@@ -434,7 +438,7 @@ public class Jalview2XML
     for (String dssids : dsses.keySet())
     {
       AlignFrame _af = dsses.get(dssids);
-      String jfileName = fileName + " Dataset for " + _af.getTitle();
+      String jfileName = MessageManager.formatMessage("label.dataset_for", new String[]{fileName,_af.getTitle()});
       if (!jfileName.endsWith(".xml"))
       {
         jfileName = jfileName + ".xml";
@@ -1499,8 +1503,7 @@ public class Jalview2XML
         return false;
       }
     }
-    throw new Error("Unsupported Version for calcIdparam "
-            + calcIdParam.toString());
+    throw new Error(MessageManager.formatMessage("error.unsupported_version_calcIdparam", new String[]{calcIdParam.toString()}));
   }
 
   /**
@@ -1793,7 +1796,7 @@ public class Jalview2XML
     try
     {
       // create list to store references for any new Jmol viewers created
-      newStructureViewers = new Vector<AppJmol>();
+      newStructureViewers = new Vector<JalviewStructureDisplayI>();
       // UNMARSHALLER SEEMS TO CLOSE JARINPUTSTREAM, MOST ANNOYING
       // Workaround is to make sure caller implements the JarInputStreamProvider
       // interface
@@ -3130,10 +3133,11 @@ public class Jalview2XML
                   @Override
                   public void run()
                   {
-                    AppJmol sview = null;
+                    JalviewStructureDisplayI sview = null;
                     try
                     {
-                      sview = new AppJmol(pdbf, id, sq, alf.alignPanel,
+                      // JAL-1333 note - we probably can't migrate Jmol views to UCSF Chimera!
+                      sview = new StructureViewer(alf.alignPanel.getStructureSelectionManager()).createView(StructureViewer.Viewer.JMOL, pdbf, id, sq, alf.alignPanel,
                               useinJmolsuperpos, usetoColourbyseq,
                               jmolColouring, fileloc, rect, vid);
                       addNewStructureViewer(sview);
@@ -3209,15 +3213,18 @@ public class Jalview2XML
 
   /**
    * 
-   * @param supported - minimum version we are comparing against
-   * @param version - version of data being processsed.
+   * @param supported
+   *          - minimum version we are comparing against
+   * @param version
+   *          - version of data being processsed.
    * @return true if version is development/null or evaluates to the same or
    *         later X.Y.Z (where X,Y,Z are like [0-9]+b?[0-9]*)
    */
   private boolean isVersionStringLaterThan(String supported, String version)
   {
     if (version == null || version.equalsIgnoreCase("DEVELOPMENT BUILD")
-            || version.equalsIgnoreCase("Test") || version.equalsIgnoreCase("AUTOMATED BUILD"))
+            || version.equalsIgnoreCase("Test")
+            || version.equalsIgnoreCase("AUTOMATED BUILD"))
     {
       System.err.println("Assuming project file with "
               + (version == null ? "null" : version)
@@ -3260,13 +3267,13 @@ public class Jalview2XML
     return true;
   }
 
-  Vector<AppJmol> newStructureViewers = null;
+  Vector<JalviewStructureDisplayI> newStructureViewers = null;
 
-  protected void addNewStructureViewer(AppJmol sview)
+  protected void addNewStructureViewer(JalviewStructureDisplayI sview)
   {
     if (newStructureViewers != null)
     {
-      sview.jmb.setFinishedLoadingFromArchive(false);
+      sview.getBinding().setFinishedLoadingFromArchive(false);
       newStructureViewers.add(sview);
     }
   }
@@ -3275,9 +3282,9 @@ public class Jalview2XML
   {
     if (newStructureViewers != null)
     {
-      for (AppJmol sview : newStructureViewers)
+      for (JalviewStructureDisplayI sview : newStructureViewers)
       {
-        sview.jmb.setFinishedLoadingFromArchive(true);
+        sview.getBinding().setFinishedLoadingFromArchive(true);
       }
       newStructureViewers.clear();
       newStructureViewers = null;
index b470974..946181c 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -137,8 +139,10 @@ public class Jalview2XML_V1
             System.err.println("Couldn't locate Jalview XML file : " + ex
                     + "\n");
             JOptionPane.showInternalMessageDialog(Desktop.desktop,
-                       MessageManager.formatMessage("label.couldnt_locate", new String[]{file}),
-                    MessageManager.getString("label.url_not_found"),
+                    MessageManager.formatMessage("label.couldnt_locate",
+                            new String[]
+                            { file }), MessageManager
+                            .getString("label.url_not_found"),
                     JOptionPane.WARNING_MESSAGE);
           }
         });
@@ -156,7 +160,7 @@ public class Jalview2XML_V1
           {
 
             JOptionPane.showInternalMessageDialog(Desktop.desktop,
-                    "Error loading  " + file, "Error loading Jalview file",
+                    MessageManager.formatMessage("label.error_loading_file_params", new String[]{file}), MessageManager.getString("label.error_loading_jalview_file"),
                     JOptionPane.WARNING_MESSAGE);
           }
         });
index eb86e58..481fd34 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
index d4c1bc1..f764277 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
diff --git a/src/jalview/gui/JalviewChimeraBindingModel.java b/src/jalview/gui/JalviewChimeraBindingModel.java
new file mode 100644 (file)
index 0000000..f7c4878
--- /dev/null
@@ -0,0 +1,102 @@
+package jalview.gui;
+
+import jalview.api.AlignmentViewPanel;
+import jalview.datamodel.PDBEntry;
+import jalview.datamodel.SequenceI;
+import jalview.ext.rbvi.chimera.JalviewChimeraBinding;
+import jalview.structure.StructureSelectionManager;
+
+public class JalviewChimeraBindingModel extends JalviewChimeraBinding
+{
+  private ChimeraViewFrame cvf;
+
+  public JalviewChimeraBindingModel(ChimeraViewFrame chimeraViewFrame,
+          StructureSelectionManager ssm, PDBEntry[] pdbentry,
+          SequenceI[][] sequenceIs, String[][] chains, String protocol)
+  {
+    super(ssm, pdbentry, sequenceIs, chains, protocol);
+    cvf = chimeraViewFrame;
+  }
+
+  FeatureRenderer fr = null;
+
+  @Override
+  public jalview.api.FeatureRenderer getFeatureRenderer(
+          AlignmentViewPanel alignment)
+  {
+    AlignmentPanel ap = (alignment == null) ? cvf.ap
+            : (AlignmentPanel) alignment;
+    if (ap.av.showSequenceFeatures)
+    {
+      if (fr == null)
+      {
+        fr = ap.cloneFeatureRenderer();
+      }
+      else
+      {
+        ap.updateFeatureRenderer(fr);
+      }
+    }
+
+    return fr;
+  }
+
+  @Override
+  public jalview.api.SequenceRenderer getSequenceRenderer(
+          AlignmentViewPanel alignment)
+  {
+    return new SequenceRenderer(((AlignmentPanel) alignment).av);
+  }
+  @Override
+  public void refreshGUI()
+  {
+    // appJmolWindow.repaint();
+    javax.swing.SwingUtilities.invokeLater(new Runnable()
+    {
+      public void run()
+      {
+        cvf.updateTitleAndMenus();
+        cvf.revalidate();
+      }
+    });
+  }
+
+  public void updateColours(Object source)
+  {
+    AlignmentPanel ap = (AlignmentPanel) source, topap;
+    // ignore events from panels not used to colour this view
+    if (!cvf.isUsedforcolourby(ap))
+      return;
+    if (!isLoadingFromArchive())
+    {
+      colourBySequence(ap.av.getShowSequenceFeatures(), ap);
+    }
+  }
+  @Override
+  public void releaseReferences(Object svl)
+  {
+    // TODO Auto-generated method stub
+
+  }
+
+  @Override
+  protected void releaseUIResources()
+  {
+    // TODO Auto-generated method stub
+
+  }
+
+  @Override
+  public void refreshPdbEntries()
+  {
+    // TODO Auto-generated method stub
+
+  }
+
+  @Override
+  public void showUrl(String url, String target)
+  {
+    // TODO Auto-generated method stub
+
+  }
+}
index 3f58769..1aee71e 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
index 0e3ecd8..d546584 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -44,22 +46,25 @@ public final class JvSwingUtils
    * <table width=350>
    * <tr>
    * <td></td> field
+ * @param enclose TODO
+ * @param ttext
    * 
-   * @param ttext
    * @return
    */
-  public static String wrapTooltip(String ttext)
+  public static String wrapTooltip(boolean enclose, String ttext)
   {
+         
     if (ttext.length() < 60)
     {
-      return ttext;
+      return enclose ? "<html>"+ttext+"</html>" : ttext;
     }
     else
     {
-      return "<table width=350 border=0><tr><td>" + ttext
-              + "</td></tr></table>";
+      return (enclose ? "<html>" : "") + "<table width=350 border=0><tr><td>" + ttext
+              + "</td></tr></table>" + ((enclose ? "</html>" : ""));
     }
-  }  
+  }
+
   public static JButton makeButton(String label, String tooltip,
           ActionListener action)
   {
diff --git a/src/jalview/gui/MenuChooser.java b/src/jalview/gui/MenuChooser.java
new file mode 100644 (file)
index 0000000..d09c5a5
--- /dev/null
@@ -0,0 +1,99 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
+package jalview.gui;
+
+import java.awt.BorderLayout;
+import java.awt.Color;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+
+import javax.swing.JButton;
+import javax.swing.JFrame;
+import javax.swing.JLabel;
+import javax.swing.JPanel;
+
+public class MenuChooser implements ActionListener
+{
+  public static boolean protein;
+
+  private JFrame choosemenu = new JFrame("Animation");
+
+  private JButton bouton = new JButton("bouton 1");
+
+  private JButton bouton2 = new JButton("bouton 2");
+
+  private JPanel container = new JPanel();
+
+  private JLabel label = new JLabel("Le JLabel");
+
+  public MenuChooser()
+  {
+
+    choosemenu.setSize(300, 300);
+    choosemenu.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
+    choosemenu.setLocationRelativeTo(null);
+
+    container.setBackground(Color.white);
+    container.setLayout(new BorderLayout());
+
+    // On ajoute notre Fenetre à la liste des auditeurs de notre Bouton
+    bouton.addActionListener(this);
+    bouton2.addActionListener(this);
+
+    JPanel south = new JPanel();
+    south.add(bouton);
+    south.add(bouton2);
+    container.add(south, BorderLayout.SOUTH);
+
+    // On change la couleur de police
+    label.setForeground(Color.blue);
+    // Et on change l'alignement du texte grâce aux attributs static de la
+    // classe JLabel
+    label.setHorizontalAlignment(JLabel.CENTER);
+
+    container.add(label, BorderLayout.NORTH);
+
+    choosemenu.setContentPane(container);
+    choosemenu.setVisible(true);
+
+  }
+
+  // ...
+
+  // *******************************************************************************
+  // LA VOILAAAAAAAAAAAAAA
+  // *******************************************************************************
+  /**
+   * C'est la méthode qui sera appelée lors d'un clic sur notre bouton
+   */
+  public void actionPerformed(ActionEvent arg0)
+  {
+
+    if (arg0.getSource() == bouton)
+      protein = false;
+    label.setText("RNA menu");
+
+    if (arg0.getSource() == bouton2)
+      label.setText("Protein menu");
+    protein = true;
+  }
+
+}
index 6ab5220..a9347eb 100644 (file)
@@ -1,23 +1,27 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
 
+import jalview.util.MessageManager;
+
 import java.awt.Component;
 
 public class OOMWarning implements Runnable
@@ -76,11 +80,8 @@ public class OOMWarning implements Runnable
     javax.swing.JOptionPane
             .showInternalMessageDialog(
                     desktop,
-                    "Out of memory when "
-                            + action
-                            + "!!"
-                            + "\nSee help files for increasing Java Virtual Machine memory.",
-                    "Out of memory",
+                    MessageManager.formatMessage("warn.out_of_memory_when_action", new String[]{action}),
+                    MessageManager.getString("label.out_of_memory"),
                     javax.swing.JOptionPane.WARNING_MESSAGE);
     // hope that there's enough memory left that no more appear.
     oomInprogress = false;
index 5df0174..78ddb3f 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -109,21 +111,21 @@ public class OptsAndParamsPage
       {
         hasLink = true;
 
-        enabled.setToolTipText("<html>"
-                + JvSwingUtils
-                        .wrapTooltip(((desc == null || desc.trim().length()==0) ? "see further details by right-clicking"
+        enabled.setToolTipText(
+             JvSwingUtils
+                        .wrapTooltip(true, ((desc == null || desc.trim().length() == 0) ? MessageManager.getString("label.opt_and_params_further_details ")
                                 : desc)
                                 + "<br><img src=\"" + linkImageURL + "\"/>")
-                + "</html>");
+                );
         enabled.addMouseListener(this);
       }
       else
       {
-        if (desc != null && desc.trim().length()>0)
+        if (desc != null && desc.trim().length() > 0)
         {
-          enabled.setToolTipText("<html>"
-                  + JvSwingUtils.wrapTooltip(opt.getDescription())
-                  + "</html>");
+          enabled.setToolTipText(
+                   JvSwingUtils.wrapTooltip(true, opt.getDescription())
+                 );
         }
       }
       add(enabled, BorderLayout.NORTH);
@@ -237,11 +239,11 @@ public class OptsAndParamsPage
 
     }
 
-
     public void resetToDefault(boolean setDefaultParams)
     {
       enabled.setSelected(false);
-      if (option.isRequired() || (setDefaultParams && option.getValue()!=null))
+      if (option.isRequired()
+              || (setDefaultParams && option.getValue() != null))
       {
         // Apply default value
         selectOption(option, option.getValue());
@@ -261,7 +263,7 @@ public class OptsAndParamsPage
         initVal = (initEnabled) ? (String) val.getSelectedItem() : null;
       }
     }
-    
+
   }
 
   public class ParamBox extends JPanel implements ChangeListener,
@@ -342,13 +344,12 @@ public class OptsAndParamsPage
               && parm.getDescription().trim().length() > 0)
       {
         // Only create description boxes if there actually is a description.
-        ttipText = ("<html>"
-                + JvSwingUtils
-                        .wrapTooltip(parm.getDescription()
+        ttipText = (JvSwingUtils
+                        .wrapTooltip(true, parm.getDescription()
                                 + (finfo != null ? "<br><img src=\""
                                         + linkImageURL
-                                        + "\"/> Right click for further information."
-                                        : "")) + "</html>");
+                                        + "\"/>"+MessageManager.getString("label.opt_and_params_further_detail")
+                                        : "")));
       }
 
       JvSwingUtils.mgAddtoLayout(this, ttipText,
@@ -389,20 +390,12 @@ public class OptsAndParamsPage
         // Only create description boxes if there actually is a description.
         if (finfo != null)
         {
-          showDesc.setToolTipText("<html>"
-                  + JvSwingUtils
-                          .wrapTooltip("Click to show brief description<br><img src=\""
-                                  + linkImageURL
-                                  + "\"/> Right click for further information.")
-                  + "</html>");
+          showDesc.setToolTipText(JvSwingUtils.wrapTooltip(false, MessageManager.formatMessage("label.opt_and_params_show_brief_desc_image_link", new String[]{linkImageURL.toExternalForm()})));
           showDesc.addMouseListener(this);
         }
         else
         {
-          showDesc.setToolTipText("<html>"
-                  + JvSwingUtils
-                          .wrapTooltip("Click to show brief description.")
-                  + "</html>");
+          showDesc.setToolTipText(JvSwingUtils.wrapTooltip(false, MessageManager.getString("label.opt_and_params_show_brief_desc")));
         }
         showDesc.addActionListener(new ActionListener()
         {
@@ -679,7 +672,7 @@ public class OptsAndParamsPage
           {
             slider.getModel().setRangeProperties(iVal, 1,
                     validator.getMin().intValue(),
-                    validator.getMax().intValue()+1, true);
+                    validator.getMax().intValue() + 1, true);
           }
           else
           {
@@ -721,7 +714,8 @@ public class OptsAndParamsPage
           {
             slider.getModel().setRangeProperties((int) (fVal * 1000f), 1,
                     (int) (validator.getMin().floatValue() * 1000f),
-                    1+(int) (validator.getMax().floatValue() * 1000f), true);
+                    1 + (int) (validator.getMax().floatValue() * 1000f),
+                    true);
           }
           else
           {
@@ -772,7 +766,9 @@ public class OptsAndParamsPage
   {
 
     JPopupMenu mnu = new JPopupMenu();
-    JMenuItem mitem = new JMenuItem(MessageManager.formatMessage("label.view_params", new String[]{finfo}));
+    JMenuItem mitem = new JMenuItem(MessageManager.formatMessage(
+            "label.view_params", new String[]
+            { finfo }));
     mitem.addActionListener(new ActionListener()
     {
 
@@ -858,7 +854,7 @@ public class OptsAndParamsPage
       }
       else
       {
-        throw new Error("Invalid value " + string + " for option " + option);
+        throw new Error(MessageManager.formatMessage("error.invalid_value_for_option", new String[]{string,option.getName()}));
       }
 
     }
index 2d3f59e..ad50b5a 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
index 0b11189..e8555f7 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
index 133c0ce..3483cc4 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -95,10 +97,8 @@ public class PCAPanel extends GPCAPanel implements Runnable,
       JOptionPane
               .showMessageDialog(
                       Desktop.desktop,
-                      "The sequences must be aligned before calculating PCA.\n"
-                              + "Try using the Pad function in the edit menu,\n"
-                              + "or one of the multiple sequence alignment web services.",
-                      "Sequences not aligned", JOptionPane.WARNING_MESSAGE);
+                      MessageManager.getString("label.pca_sequences_not_aligned"),
+                      MessageManager.getString("label.sequences_not_aligned"), JOptionPane.WARNING_MESSAGE);
 
       return;
     }
@@ -110,11 +110,12 @@ public class PCAPanel extends GPCAPanel implements Runnable,
     Thread worker = new Thread(this);
     worker.start();
   }
+
   @Override
   protected void scoreMatrix_menuSelected()
   {
     scoreMatrixMenu.removeAll();
-    for (final String sm:ResidueProperties.scoreMatrices.keySet())
+    for (final String sm : ResidueProperties.scoreMatrices.keySet())
     {
       if (ResidueProperties.getScoreMatrix(sm) != null)
       {
@@ -147,9 +148,10 @@ public class PCAPanel extends GPCAPanel implements Runnable,
       }
     }
   }
+
   public void bgcolour_actionPerformed(ActionEvent e)
   {
-    Color col = JColorChooser.showDialog(this, "Select Background Colour",
+    Color col = JColorChooser.showDialog(this, MessageManager.getString("label.select_backgroud_colour"),
             rc.bgColour);
 
     if (col != null)
@@ -166,11 +168,11 @@ public class PCAPanel extends GPCAPanel implements Runnable,
   {
     long progId = System.currentTimeMillis();
     IProgressIndicator progress = this;
-    String message = "Recalculating PCA";
+    String message = MessageManager.getString("label.pca_recalculating");
     if (getParent() == null)
     {
       progress = ap.alignFrame;
-      message = "Calculating PCA";
+      message = MessageManager.getString("label.pca_calculating");
     }
     progress.setProgressBar(message, progId);
     try
@@ -202,8 +204,8 @@ public class PCAPanel extends GPCAPanel implements Runnable,
     if (getParent() == null)
     {
       addKeyListener(rc);
-      Desktop.addInternalFrame(this, MessageManager.getString("label.principal_component_analysis"), 475,
-              450);
+      Desktop.addInternalFrame(this, MessageManager
+              .getString("label.principal_component_analysis"), 475, 450);
     }
   }
 
@@ -300,7 +302,8 @@ public class PCAPanel extends GPCAPanel implements Runnable,
     try
     {
       cap.setText(pcaModel.getDetails());
-      Desktop.addInternalFrame(cap, MessageManager.getString("label.pca_details"), 500, 500);
+      Desktop.addInternalFrame(cap,
+              MessageManager.getString("label.pca_details"), 500, 500);
     } catch (OutOfMemoryError oom)
     {
       new OOMWarning("opening PCA details", oom);
@@ -374,8 +377,10 @@ public class PCAPanel extends GPCAPanel implements Runnable,
         // af.addSortByOrderMenuItem(ServiceName + " Ordering",
         // msaorder);
 
-        Desktop.addInternalFrame(af, MessageManager.formatMessage("label.original_data_for_params", new String[]{this.title}),
-                AlignFrame.DEFAULT_WIDTH, AlignFrame.DEFAULT_HEIGHT);
+        Desktop.addInternalFrame(af, MessageManager.formatMessage(
+                "label.original_data_for_params", new String[]
+                { this.title }), AlignFrame.DEFAULT_WIDTH,
+                AlignFrame.DEFAULT_HEIGHT);
       }
     }
     /*
@@ -485,7 +490,6 @@ public class PCAPanel extends GPCAPanel implements Runnable,
     }
   }
 
-  
   public void viewMenu_menuSelected()
   {
     buildAssociatedViewMenu();
@@ -564,7 +568,9 @@ public class PCAPanel extends GPCAPanel implements Runnable,
       cap.setText(pcaModel.getPointsasCsv(false,
               xCombobox.getSelectedIndex(), yCombobox.getSelectedIndex(),
               zCombobox.getSelectedIndex()));
-      Desktop.addInternalFrame(cap, MessageManager.formatMessage("label.points_for_params", new String[]{this.getTitle()}), 500, 500);
+      Desktop.addInternalFrame(cap, MessageManager.formatMessage(
+              "label.points_for_params", new String[]
+              { this.getTitle() }), 500, 500);
     } catch (OutOfMemoryError oom)
     {
       new OOMWarning("exporting PCA points", oom);
@@ -587,8 +593,9 @@ public class PCAPanel extends GPCAPanel implements Runnable,
       cap.setText(pcaModel.getPointsasCsv(true,
               xCombobox.getSelectedIndex(), yCombobox.getSelectedIndex(),
               zCombobox.getSelectedIndex()));
-      Desktop.addInternalFrame(cap, MessageManager.formatMessage("label.transformed_points_for_params", new String[]{this.getTitle()}),
-              500, 500);
+      Desktop.addInternalFrame(cap, MessageManager.formatMessage(
+              "label.transformed_points_for_params", new String[]
+              { this.getTitle() }), 500, 500);
     } catch (OutOfMemoryError oom)
     {
       new OOMWarning("exporting transformed PCA points", oom);
@@ -659,14 +666,14 @@ public class PCAPanel extends GPCAPanel implements Runnable,
   {
     if (progressBarHandlers == null || !progressBars.contains(new Long(id)))
     {
-      throw new Error(
-              "call setProgressBar before registering the progress bar's handler.");
+      throw new Error(MessageManager.getString("error.call_setprogressbar_before_registering_handler"));
     }
     progressBarHandlers.put(new Long(id), handler);
     final JPanel progressPanel = (JPanel) progressBars.get(new Long(id));
     if (handler.canCancel())
     {
-      JButton cancel = new JButton(MessageManager.getString("action.cancel"));
+      JButton cancel = new JButton(
+              MessageManager.getString("action.cancel"));
       final IProgressIndicator us = this;
       cancel.addActionListener(new ActionListener()
       {
@@ -675,10 +682,7 @@ public class PCAPanel extends GPCAPanel implements Runnable,
         public void actionPerformed(ActionEvent e)
         {
           handler.cancelActivity(id);
-          us.setProgressBar(
-                  "Cancelled "
-                          + ((JLabel) progressPanel.getComponent(0))
-                                  .getText(), id);
+          us.setProgressBar(MessageManager.formatMessage("label.cancelled_params", new String[]{((JLabel) progressPanel.getComponent(0)).getText()}), id);
         }
       });
       progressPanel.add(cancel, BorderLayout.EAST);
index 01a5f57..01dfa3b 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -26,8 +28,8 @@ import java.awt.*;
 import jalview.datamodel.*;
 
 /**
- * Route datamodel/view update events for a sequence set to any display components involved
- * TODO: JV3 refactor to abstract gui/view package
+ * Route datamodel/view update events for a sequence set to any display
+ * components involved TODO: JV3 refactor to abstract gui/view package
  * 
  * @author $author$
  * @version $Revision$
index e2f96f1..dcddf88 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -149,7 +151,8 @@ public class PairwiseAlignPanel extends GPairwiseAlignPanel
     AlignFrame af = new AlignFrame(new Alignment(seq),
             AlignFrame.DEFAULT_WIDTH, AlignFrame.DEFAULT_HEIGHT);
 
-    Desktop.addInternalFrame(af, MessageManager.getString("label.pairwise_aligned_sequences"),
+    Desktop.addInternalFrame(af,
+            MessageManager.getString("label.pairwise_aligned_sequences"),
             AlignFrame.DEFAULT_WIDTH, AlignFrame.DEFAULT_HEIGHT);
   }
 }
index f5f92b9..0957d28 100644 (file)
@@ -1,40 +1,77 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
 
-import java.util.*;
-
-import java.awt.*;
-import java.awt.event.*;
-
-import javax.swing.*;
-
-import jalview.analysis.*;
-import jalview.commands.*;
-import jalview.datamodel.*;
-import jalview.io.*;
-import jalview.schemes.*;
+import jalview.analysis.AAFrequency;
+import jalview.analysis.Conservation;
+import jalview.commands.ChangeCaseCommand;
+import jalview.commands.EditCommand;
+import jalview.datamodel.AlignmentAnnotation;
+import jalview.datamodel.AlignmentI;
+import jalview.datamodel.AlignmentView;
+import jalview.datamodel.Annotation;
+import jalview.datamodel.DBRefEntry;
+import jalview.datamodel.PDBEntry;
+import jalview.datamodel.Sequence;
+import jalview.datamodel.SequenceFeature;
+import jalview.datamodel.SequenceGroup;
+import jalview.datamodel.SequenceI;
+import jalview.io.FormatAdapter;
+import jalview.io.SequenceAnnotationReport;
+import jalview.schemes.AnnotationColourGradient;
+import jalview.schemes.Blosum62ColourScheme;
+import jalview.schemes.BuriedColourScheme;
+import jalview.schemes.ClustalxColourScheme;
+import jalview.schemes.HelixColourScheme;
+import jalview.schemes.HydrophobicColourScheme;
+import jalview.schemes.NucleotideColourScheme;
+import jalview.schemes.PIDColourScheme;
+import jalview.schemes.PurinePyrimidineColourScheme;
+import jalview.schemes.ResidueProperties;
+import jalview.schemes.StrandColourScheme;
+import jalview.schemes.TaylorColourScheme;
+import jalview.schemes.TurnColourScheme;
+import jalview.schemes.UserColourScheme;
+import jalview.schemes.ZappoColourScheme;
 import jalview.util.GroupUrlLink;
 import jalview.util.GroupUrlLink.UrlStringTooLongException;
-import jalview.util.MessageManager;\r
+import jalview.util.MessageManager;
 import jalview.util.UrlLink;
 
+import java.awt.Color;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.util.Hashtable;
+import java.util.List;
+import java.util.Vector;
+
+import javax.swing.ButtonGroup;
+import javax.swing.JCheckBoxMenuItem;
+import javax.swing.JColorChooser;
+import javax.swing.JMenu;
+import javax.swing.JMenuItem;
+import javax.swing.JOptionPane;
+import javax.swing.JPopupMenu;
+import javax.swing.JRadioButtonMenuItem;
+
 /**
  * DOCUMENT ME!
  * 
@@ -73,6 +110,8 @@ public class PopupMenu extends JPopupMenu
 
   protected JRadioButtonMenuItem purinePyrimidineColour = new JRadioButtonMenuItem();
 
+  protected JRadioButtonMenuItem RNAInteractionColour = new JRadioButtonMenuItem();
+
   // protected JRadioButtonMenuItem covariationColour = new
   // JRadioButtonMenuItem();
 
@@ -91,7 +130,9 @@ public class PopupMenu extends JPopupMenu
   JMenuItem sequenceSelDetails = new JMenuItem();
 
   SequenceI sequence;
+
   JMenuItem createGroupMenuItem = new JMenuItem();
+
   JMenuItem unGroupMenuItem = new JMenuItem();
 
   JMenuItem outline = new JMenuItem();
@@ -124,6 +165,12 @@ public class PopupMenu extends JPopupMenu
 
   JMenuItem pdbFromFile = new JMenuItem();
 
+  // JBPNote: Commented these out - Should add these services via the web
+  // services menu system.
+  // JMenuItem ContraFold = new JMenuItem();
+
+  // JMenuItem RNAFold = new JMenuItem();
+
   JMenuItem enterPDB = new JMenuItem();
 
   JMenuItem discoverPDB = new JMenuItem();
@@ -194,6 +241,7 @@ public class PopupMenu extends JPopupMenu
     colours.add(PIDColour);
     colours.add(BLOSUM62Colour);
     colours.add(purinePyrimidineColour);
+    colours.add(RNAInteractionColour);
     // colours.add(covariationColour);
 
     for (int i = 0; i < jalview.io.FormatAdapter.WRITEABLE_FORMATS.length; i++)
@@ -243,9 +291,12 @@ public class PopupMenu extends JPopupMenu
             {
               // TODO re JAL-860: optionally open dialog or provide a menu entry
               // allowing user to open just one structure per sequence
-              new AppJmol(pdb, ap.av.collateForPDB(new PDBEntry[]
-              { pdb })[0], null, ap);
-              // new PDBViewer(pdb, seqs2, null, ap, AppletFormatAdapter.FILE);
+              // new AppJmol(pdb, ap.av.collateForPDB(new PDBEntry[]
+              // { pdb })[0], null, ap);
+              new StructureViewer(ap.getStructureSelectionManager())
+                      .viewStructures(pdb,
+                              ap.av.collateForPDB(new PDBEntry[]
+                              { pdb })[0], null, ap);
             }
 
           });
@@ -280,13 +331,28 @@ public class PopupMenu extends JPopupMenu
             final String rnastruc = aa[i].getRNAStruc();
             final String structureLine = aa[i].label;
             menuItem = new JMenuItem();
-            menuItem.setText(MessageManager.formatMessage("label.2d_rna_structure_line", new String[]{structureLine}));\r
+            menuItem.setText(MessageManager.formatMessage(
+                    "label.2d_rna_structure_line", new String[]
+                    { structureLine }));
             menuItem.addActionListener(new java.awt.event.ActionListener()
+
             {
               public void actionPerformed(ActionEvent e)
               {
+                // System.out.println("1:"+structureLine);
+                System.out.println("1:sname" + seq.getName());
+                System.out.println("2:seq" + seq);
+
+                // System.out.println("3:"+seq.getSequenceAsString());
+                System.out.println("3:strucseq" + rnastruc);
+                // System.out.println("4:struc"+seq.getRNA());
+                System.out.println("5:name" + seq.getName());
+                System.out.println("6:ap" + ap);
                 new AppVarna(structureLine, seq, seq.getSequenceAsString(),
                         rnastruc, seq.getName(), ap);
+                // new AppVarna(seq.getName(),seq,rnastruc,seq.getRNA(),
+                // seq.getName(), ap);
+                System.out.println("end");
               }
             });
             viewStructureMenu.add(menuItem);
@@ -306,12 +372,15 @@ public class PopupMenu extends JPopupMenu
 
               // TODO: make rnastrucF a bit more nice
               menuItem = new JMenuItem();
-              menuItem.setText(MessageManager.formatMessage("label.2d_rna_sequence_name", new String[]{seq.getName()}));\r
+              menuItem.setText(MessageManager.formatMessage(
+                      "label.2d_rna_sequence_name", new String[]
+                      { seq.getName() }));
               menuItem.addActionListener(new java.awt.event.ActionListener()
               {
                 public void actionPerformed(ActionEvent e)
                 {
                   // TODO: VARNA does'nt print gaps in the sequence
+
                   new AppVarna(seq.getName() + " structure", seq, seq
                           .getSequenceAsString(), rnastruc, seq.getName(),
                           ap);
@@ -324,7 +393,8 @@ public class PopupMenu extends JPopupMenu
 
       }
 
-      menuItem = new JMenuItem(MessageManager.getString("action.hide_sequences"));\r
+      menuItem = new JMenuItem(
+              MessageManager.getString("action.hide_sequences"));
       menuItem.addActionListener(new java.awt.event.ActionListener()
       {
         public void actionPerformed(ActionEvent e)
@@ -337,7 +407,9 @@ public class PopupMenu extends JPopupMenu
       if (ap.av.getSelectionGroup() != null
               && ap.av.getSelectionGroup().getSize() > 1)
       {
-        menuItem = new JMenuItem(MessageManager.formatMessage("label.represent_group_with", new String[]{seq.getName()}));\r
+        menuItem = new JMenuItem(MessageManager.formatMessage(
+                "label.represent_group_with", new String[]
+                { seq.getName() }));
         menuItem.addActionListener(new java.awt.event.ActionListener()
         {
           public void actionPerformed(ActionEvent e)
@@ -355,7 +427,8 @@ public class PopupMenu extends JPopupMenu
         if (ap.av.adjustForHiddenSeqs(index)
                 - ap.av.adjustForHiddenSeqs(index - 1) > 1)
         {
-          menuItem = new JMenuItem(MessageManager.getString("action.reveal_sequences"));\r
+          menuItem = new JMenuItem(
+                  MessageManager.getString("action.reveal_sequences"));
           menuItem.addActionListener(new ActionListener()
           {
             public void actionPerformed(ActionEvent e)
@@ -375,7 +448,8 @@ public class PopupMenu extends JPopupMenu
     if (ap.av.hasHiddenRows())
     {
       {
-        menuItem = new JMenuItem(MessageManager.getString("action.reveal_all"));\r
+        menuItem = new JMenuItem(
+                MessageManager.getString("action.reveal_all"));
         menuItem.addActionListener(new ActionListener()
         {
           public void actionPerformed(ActionEvent e)
@@ -394,12 +468,16 @@ public class PopupMenu extends JPopupMenu
     }
 
     SequenceGroup sg = ap.av.getSelectionGroup();
-    boolean isDefinedGroup = (sg!=null) ? ap.av.getAlignment().getGroups().contains(sg) : false;
+    boolean isDefinedGroup = (sg != null) ? ap.av.getAlignment()
+            .getGroups().contains(sg) : false;
 
     if (sg != null && sg.getSize() > 0)
-    {      
-      groupName.setText(MessageManager.formatMessage("label.name_param", new String[]{sg.getName()}));\r
-      groupName.setText(MessageManager.getString("label.edit_name_and_description_current_group"));\r
+    {
+      groupName.setText(MessageManager.formatMessage("label.name_param",
+              new String[]
+              { sg.getName() }));
+      groupName.setText(MessageManager
+              .getString("label.edit_name_and_description_current_group"));
 
       if (sg.cs instanceof ZappoColourScheme)
       {
@@ -449,6 +527,7 @@ public class PopupMenu extends JPopupMenu
       {
         purinePyrimidineColour.setSelected(true);
       }
+
       /*
        * else if (sg.cs instanceof CovariationColourScheme) {
        * covariationColour.setSelected(true); }
@@ -472,15 +551,15 @@ public class PopupMenu extends JPopupMenu
         buildGroupURLMenu(sg, groupLinks);
       }
       // Add a 'show all structures' for the current selection
-      Hashtable<String, PDBEntry> pdbe = new Hashtable<String, PDBEntry>(),reppdb=new Hashtable<String,PDBEntry>();
+      Hashtable<String, PDBEntry> pdbe = new Hashtable<String, PDBEntry>(), reppdb = new Hashtable<String, PDBEntry>();
       SequenceI sqass = null;
       for (SequenceI sq : ap.av.getSequenceSelection())
       {
         Vector<PDBEntry> pes = (Vector<PDBEntry>) sq.getDatasetSequence()
                 .getPDBId();
-        if (pes != null && pes.size()>0)
+        if (pes != null && pes.size() > 0)
         {
-          reppdb.put(pes.get(0).getId(),pes.get(0));
+          reppdb.put(pes.get(0).getId(), pes.get(0));
           for (PDBEntry pe : pes)
           {
             pdbe.put(pe.getId(), pe);
@@ -494,38 +573,50 @@ public class PopupMenu extends JPopupMenu
       if (pdbe.size() > 0)
       {
         final PDBEntry[] pe = pdbe.values().toArray(
-                new PDBEntry[pdbe.size()]),pr = reppdb.values().toArray(
-                        new PDBEntry[reppdb.size()]);
-        final JMenuItem gpdbview,rpdbview;
+                new PDBEntry[pdbe.size()]), pr = reppdb.values().toArray(
+                new PDBEntry[reppdb.size()]);
+        final JMenuItem gpdbview, rpdbview;
         if (pdbe.size() == 1)
         {
-          structureMenu.add(gpdbview = new JMenuItem(MessageManager.formatMessage("label.view_structure_for", new String[]{sqass.getDisplayId(false)})));\r
+          structureMenu.add(gpdbview = new JMenuItem(MessageManager
+                  .formatMessage("label.view_structure_for", new String[]
+                  { sqass.getDisplayId(false) })));
         }
         else
         {
-          structureMenu.add(gpdbview = new JMenuItem(MessageManager.formatMessage("label.view_all_structures", new String[]{new Integer(pdbe.size()).toString()})));          \r
+          structureMenu.add(gpdbview = new JMenuItem(MessageManager
+                  .formatMessage("label.view_all_structures", new String[]
+                  { new Integer(pdbe.size()).toString() })));
         }
-        gpdbview.setToolTipText(MessageManager.getString("label.open_new_jmol_view_with_all_structures_associated_current_selection_superimpose_using_alignment"));\r
+        gpdbview.setToolTipText(MessageManager
+                .getString("label.open_new_jmol_view_with_all_structures_associated_current_selection_superimpose_using_alignment"));
         gpdbview.addActionListener(new ActionListener()
         {
 
           @Override
           public void actionPerformed(ActionEvent e)
           {
-            new AppJmol(ap, pe, ap.av.collateForPDB(pe));
+            new StructureViewer(ap.getStructureSelectionManager())
+                    .viewStructures(ap, pe, ap.av.collateForPDB(pe));
           }
         });
-        if (reppdb.size()>1 && reppdb.size()<pdbe.size())
+        if (reppdb.size() > 1 && reppdb.size() < pdbe.size())
         {
-          structureMenu.add(rpdbview = new JMenuItem(MessageManager.formatMessage("label.view_all_representative_structures", new String[]{new Integer(reppdb.size()).toString()})));
-          rpdbview.setToolTipText(MessageManager.getString("label.open_new_jmol_view_with_all_representative_structures_associated_current_selection_superimpose_using_alignment"));
+          structureMenu.add(rpdbview = new JMenuItem(MessageManager
+                  .formatMessage(
+                          "label.view_all_representative_structures",
+                          new String[]
+                          { new Integer(reppdb.size()).toString() })));
+          rpdbview.setToolTipText(MessageManager
+                  .getString("label.open_new_jmol_view_with_all_representative_structures_associated_current_selection_superimpose_using_alignment"));
           rpdbview.addActionListener(new ActionListener()
           {
 
             @Override
             public void actionPerformed(ActionEvent e)
             {
-              new AppJmol(ap, pr, ap.av.collateForPDB(pr));
+              new StructureViewer(ap.getStructureSelectionManager())
+                      .viewStructures(ap, pr, ap.av.collateForPDB(pr));
             }
           });
         }
@@ -541,11 +632,13 @@ public class PopupMenu extends JPopupMenu
     {
       createGroupMenuItem.setVisible(true);
       unGroupMenuItem.setVisible(false);
-      jMenu1.setText(MessageManager.getString("action.edit_new_group"));\r
-    } else {
+      jMenu1.setText(MessageManager.getString("action.edit_new_group"));
+    }
+    else
+    {
       createGroupMenuItem.setVisible(false);
       unGroupMenuItem.setVisible(true);
-      jMenu1.setText(MessageManager.getString("action.edit_group"));\r
+      jMenu1.setText(MessageManager.getString("action.edit_group"));
     }
 
     if (seq == null)
@@ -557,7 +650,7 @@ public class PopupMenu extends JPopupMenu
     if (links != null && links.size() > 0)
     {
 
-      JMenu linkMenu = new JMenu(MessageManager.getString("action.link"));\r
+      JMenu linkMenu = new JMenu(MessageManager.getString("action.link"));
       Vector linkset = new Vector();
       for (int i = 0; i < links.size(); i++)
       {
@@ -684,11 +777,18 @@ public class PopupMenu extends JPopupMenu
     // menu appears asap
     // sequence only URLs
     // ID/regex match URLs
-    groupLinksMenu = new JMenu(MessageManager.getString("action.group_link"));\r
+    groupLinksMenu = new JMenu(
+            MessageManager.getString("action.group_link"));
     JMenu[] linkMenus = new JMenu[]
-    { null, new JMenu(MessageManager.getString("action.ids")), new JMenu(MessageManager.getString("action.sequences")),\r
-        new JMenu(MessageManager.getString("action.ids_sequences")) }; // three types of url that might be\r
-                                          // created.
+    { null, new JMenu(MessageManager.getString("action.ids")),
+        new JMenu(MessageManager.getString("action.sequences")),
+        new JMenu(MessageManager.getString("action.ids_sequences")) }; // three
+                                                                       // types
+                                                                       // of url
+                                                                       // that
+                                                                       // might
+                                                                       // be
+    // created.
     SequenceI[] seqs = ap.av.getSelectionAsNewSequence();
     String[][] idandseqs = GroupUrlLink.formStrings(seqs);
     Hashtable commonDbrefs = new Hashtable();
@@ -810,7 +910,8 @@ public class PopupMenu extends JPopupMenu
     }
     if (addMenu)
     {
-      groupLinksMenu = new JMenu(MessageManager.getString("action.group_link"));\r
+      groupLinksMenu = new JMenu(
+              MessageManager.getString("action.group_link"));
       for (int m = 0; m < linkMenus.length; m++)
       {
         if (linkMenus[m] != null
@@ -836,7 +937,9 @@ public class PopupMenu extends JPopupMenu
   private void addshowLink(JMenu linkMenu, String label, final String url)
   {
     JMenuItem item = new JMenuItem(label);
-    item.setToolTipText(MessageManager.formatMessage("label.open_url_param", new String[]{url}));\r
+    item.setToolTipText(MessageManager.formatMessage(
+            "label.open_url_param", new String[]
+            { url }));
     item.addActionListener(new java.awt.event.ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -871,8 +974,12 @@ public class PopupMenu extends JPopupMenu
           final GroupUrlLink urlgenerator, final Object[] urlstub)
   {
     JMenuItem item = new JMenuItem(label);
-    item.setToolTipText(MessageManager.formatMessage("label.open_url_seqs_param", new Object[]{urlgenerator.getUrl_prefix(),urlgenerator.getNumberInvolved(urlstub)}));\r
-    // TODO: put in info about what is being sent.\r
+    item.setToolTipText(MessageManager.formatMessage(
+            "label.open_url_seqs_param",
+            new Object[]
+            { urlgenerator.getUrl_prefix(),
+                urlgenerator.getNumberInvolved(urlstub) }));
+    // TODO: put in info about what is being sent.
     item.addActionListener(new java.awt.event.ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -905,9 +1012,9 @@ public class PopupMenu extends JPopupMenu
    */
   private void jbInit() throws Exception
   {
-    groupMenu.setText(MessageManager.getString("label.group"));\r
-    groupMenu.setText(MessageManager.getString("label.selection"));\r
-    groupName.setText(MessageManager.getString("label.name"));\r
+    groupMenu.setText(MessageManager.getString("label.group"));
+    groupMenu.setText(MessageManager.getString("label.selection"));
+    groupName.setText(MessageManager.getString("label.name"));
     groupName.addActionListener(new java.awt.event.ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -915,8 +1022,9 @@ public class PopupMenu extends JPopupMenu
         groupName_actionPerformed();
       }
     });
-    sequenceMenu.setText(MessageManager.getString("label.sequence"));\r
-    sequenceName.setText(MessageManager.getString("label.edit_name_description"));\r
+    sequenceMenu.setText(MessageManager.getString("label.sequence"));
+    sequenceName.setText(MessageManager
+            .getString("label.edit_name_description"));
     sequenceName.addActionListener(new java.awt.event.ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -924,7 +1032,8 @@ public class PopupMenu extends JPopupMenu
         sequenceName_actionPerformed();
       }
     });
-    sequenceDetails.setText(MessageManager.getString("label.sequence_details") + "...");\r
+    sequenceDetails.setText(MessageManager
+            .getString("label.sequence_details") + "...");
     sequenceDetails.addActionListener(new java.awt.event.ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -932,7 +1041,8 @@ public class PopupMenu extends JPopupMenu
         sequenceDetails_actionPerformed();
       }
     });
-    sequenceSelDetails.setText(MessageManager.getString("label.sequence_details") + "...");\r
+    sequenceSelDetails.setText(MessageManager
+            .getString("label.sequence_details") + "...");
     sequenceSelDetails
             .addActionListener(new java.awt.event.ActionListener()
             {
@@ -942,7 +1052,8 @@ public class PopupMenu extends JPopupMenu
               }
             });
     PIDColour.setFocusPainted(false);
-    unGroupMenuItem.setText(MessageManager.getString("action.remove_group"));\r
+    unGroupMenuItem
+            .setText(MessageManager.getString("action.remove_group"));
     unGroupMenuItem.addActionListener(new java.awt.event.ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -950,16 +1061,18 @@ public class PopupMenu extends JPopupMenu
         unGroupMenuItem_actionPerformed();
       }
     });
-    createGroupMenuItem.setText(MessageManager.getString("action.create_group"));\r
-    createGroupMenuItem.addActionListener(new java.awt.event.ActionListener()
-    {
-      public void actionPerformed(ActionEvent e)
-      {
-        createGroupMenuItem_actionPerformed();
-      }
-    });
+    createGroupMenuItem.setText(MessageManager
+            .getString("action.create_group"));
+    createGroupMenuItem
+            .addActionListener(new java.awt.event.ActionListener()
+            {
+              public void actionPerformed(ActionEvent e)
+              {
+                createGroupMenuItem_actionPerformed();
+              }
+            });
 
-    outline.setText(MessageManager.getString("action.border_colour"));\r
+    outline.setText(MessageManager.getString("action.border_colour"));
     outline.addActionListener(new java.awt.event.ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -967,7 +1080,8 @@ public class PopupMenu extends JPopupMenu
         outline_actionPerformed();
       }
     });
-    nucleotideMenuItem.setText(MessageManager.getString("label.nucleotide"));\r
+    nucleotideMenuItem
+            .setText(MessageManager.getString("label.nucleotide"));
     nucleotideMenuItem.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -975,8 +1089,8 @@ public class PopupMenu extends JPopupMenu
         nucleotideMenuItem_actionPerformed();
       }
     });
-    colourMenu.setText(MessageManager.getString("label.group_colour"));\r
-    showBoxes.setText(MessageManager.getString("action.boxes"));\r
+    colourMenu.setText(MessageManager.getString("label.group_colour"));
+    showBoxes.setText(MessageManager.getString("action.boxes"));
     showBoxes.setState(true);
     showBoxes.addActionListener(new ActionListener()
     {
@@ -985,7 +1099,7 @@ public class PopupMenu extends JPopupMenu
         showBoxes_actionPerformed();
       }
     });
-    showText.setText(MessageManager.getString("action.text"));\r
+    showText.setText(MessageManager.getString("action.text"));
     showText.setState(true);
     showText.addActionListener(new ActionListener()
     {
@@ -994,7 +1108,7 @@ public class PopupMenu extends JPopupMenu
         showText_actionPerformed();
       }
     });
-    showColourText.setText(MessageManager.getString("label.colour_text"));\r
+    showColourText.setText(MessageManager.getString("label.colour_text"));
     showColourText.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1002,7 +1116,8 @@ public class PopupMenu extends JPopupMenu
         showColourText_actionPerformed();
       }
     });
-    displayNonconserved.setText(MessageManager.getString("label.show_non_conversed"));\r
+    displayNonconserved.setText(MessageManager
+            .getString("label.show_non_conversed"));
     displayNonconserved.setState(true);
     displayNonconserved.addActionListener(new ActionListener()
     {
@@ -1011,8 +1126,8 @@ public class PopupMenu extends JPopupMenu
         showNonconserved_actionPerformed();
       }
     });
-    editMenu.setText(MessageManager.getString("action.edit"));\r
-    cut.setText(MessageManager.getString("action.cut"));\r
+    editMenu.setText(MessageManager.getString("action.edit"));
+    cut.setText(MessageManager.getString("action.cut"));
     cut.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1020,7 +1135,7 @@ public class PopupMenu extends JPopupMenu
         cut_actionPerformed();
       }
     });
-    upperCase.setText(MessageManager.getString("label.to_upper_case"));\r
+    upperCase.setText(MessageManager.getString("label.to_upper_case"));
     upperCase.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1028,7 +1143,7 @@ public class PopupMenu extends JPopupMenu
         changeCase(e);
       }
     });
-    copy.setText(MessageManager.getString("action.copy"));\r
+    copy.setText(MessageManager.getString("action.copy"));
     copy.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1036,7 +1151,7 @@ public class PopupMenu extends JPopupMenu
         copy_actionPerformed();
       }
     });
-    lowerCase.setText(MessageManager.getString("label.to_lower_case"));\r
+    lowerCase.setText(MessageManager.getString("label.to_lower_case"));
     lowerCase.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1044,7 +1159,7 @@ public class PopupMenu extends JPopupMenu
         changeCase(e);
       }
     });
-    toggle.setText(MessageManager.getString("label.toggle_case"));\r
+    toggle.setText(MessageManager.getString("label.toggle_case"));
     toggle.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1052,8 +1167,9 @@ public class PopupMenu extends JPopupMenu
         changeCase(e);
       }
     });
-    pdbMenu.setText(MessageManager.getString("label.associate_structure_with_sequence"));\r
-    pdbFromFile.setText(MessageManager.getString("label.from_file"));\r
+    pdbMenu.setText(MessageManager
+            .getString("label.associate_structure_with_sequence"));
+    pdbFromFile.setText(MessageManager.getString("label.from_file"));
     pdbFromFile.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1061,7 +1177,33 @@ public class PopupMenu extends JPopupMenu
         pdbFromFile_actionPerformed();
       }
     });
-    enterPDB.setText(MessageManager.getString("label.enter_pdb_id"));\r
+    // RNAFold.setText("From RNA Fold with predict2D");
+    // RNAFold.addActionListener(new ActionListener()
+    // {
+    // public void actionPerformed(ActionEvent e)
+    // {
+    // try {
+    // RNAFold_actionPerformed();
+    // } catch (Exception e1) {
+    // // TODO Auto-generated catch block
+    // e1.printStackTrace();
+    // }
+    // }
+    // });
+    // ContraFold.setText("From Contra Fold with predict2D");
+    // ContraFold.addActionListener(new ActionListener()
+    // {
+    // public void actionPerformed(ActionEvent e)
+    // {
+    // try {
+    // ContraFold_actionPerformed();
+    // } catch (Exception e1) {
+    // // TODO Auto-generated catch block
+    // e1.printStackTrace();
+    // }
+    // }
+    // });
+    enterPDB.setText(MessageManager.getString("label.enter_pdb_id"));
     enterPDB.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1069,7 +1211,7 @@ public class PopupMenu extends JPopupMenu
         enterPDB_actionPerformed();
       }
     });
-    discoverPDB.setText(MessageManager.getString("label.discover_pdb_ids"));\r
+    discoverPDB.setText(MessageManager.getString("label.discover_pdb_ids"));
     discoverPDB.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1077,8 +1219,10 @@ public class PopupMenu extends JPopupMenu
         discoverPDB_actionPerformed();
       }
     });
-    outputMenu.setText(MessageManager.getString("label.out_to_textbox") + "...");\r
-    sequenceFeature.setText(MessageManager.getString("label.create_sequence_feature"));\r
+    outputMenu.setText(MessageManager.getString("label.out_to_textbox")
+            + "...");
+    sequenceFeature.setText(MessageManager
+            .getString("label.create_sequence_feature"));
     sequenceFeature.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1086,7 +1230,7 @@ public class PopupMenu extends JPopupMenu
         sequenceFeature_actionPerformed();
       }
     });
-    textColour.setText(MessageManager.getString("label.text_colour"));\r
+    textColour.setText(MessageManager.getString("label.text_colour"));
     textColour.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1094,11 +1238,13 @@ public class PopupMenu extends JPopupMenu
         textColour_actionPerformed();
       }
     });
-    jMenu1.setText(MessageManager.getString("label.group"));\r
-    structureMenu.setText(MessageManager.getString("label.structure"));\r
-    viewStructureMenu.setText(MessageManager.getString("label.view_structure"));\r
+    jMenu1.setText(MessageManager.getString("label.group"));
+    structureMenu.setText(MessageManager.getString("label.structure"));
+    viewStructureMenu.setText(MessageManager
+            .getString("label.view_structure"));
     // colStructureMenu.setText("Colour By Structure");
-    editSequence.setText(MessageManager.getString("label.edit_sequence") + "...");\r
+    editSequence.setText(MessageManager.getString("label.edit_sequence")
+            + "...");
     editSequence.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent actionEvent)
@@ -1140,6 +1286,8 @@ public class PopupMenu extends JPopupMenu
     colourMenu.add(nucleotideMenuItem);
     if (ap.getAlignment().isNucleotide())
     {
+      // JBPNote - commented since the colourscheme isn't functional
+      // colourMenu.add(RNAInteractionColour);
       colourMenu.add(purinePyrimidineColour);
     }
     // colourMenu.add(covariationColour);
@@ -1175,6 +1323,10 @@ public class PopupMenu extends JPopupMenu
     editMenu.add(lowerCase);
     editMenu.add(toggle);
     pdbMenu.add(pdbFromFile);
+    // JBPNote: These shouldn't be added here - should appear in a generic
+    // 'apply web service to this sequence menu'
+    // pdbMenu.add(RNAFold);
+    // pdbMenu.add(ContraFold);
     pdbMenu.add(enterPDB);
     pdbMenu.add(discoverPDB);
     jMenu1.add(groupName);
@@ -1187,7 +1339,7 @@ public class PopupMenu extends JPopupMenu
     structureMenu.add(pdbMenu);
     structureMenu.add(viewStructureMenu);
     // structureMenu.add(colStructureMenu);
-    noColourmenuItem.setText(MessageManager.getString("label.none"));\r
+    noColourmenuItem.setText(MessageManager.getString("label.none"));
     noColourmenuItem.addActionListener(new java.awt.event.ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1196,7 +1348,8 @@ public class PopupMenu extends JPopupMenu
       }
     });
 
-    clustalColour.setText(MessageManager.getString("label.clustalx_colours"));\r
+    clustalColour.setText(MessageManager
+            .getString("label.clustalx_colours"));
     clustalColour.addActionListener(new java.awt.event.ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1204,7 +1357,7 @@ public class PopupMenu extends JPopupMenu
         clustalColour_actionPerformed();
       }
     });
-    zappoColour.setText(MessageManager.getString("label.zappo"));\r
+    zappoColour.setText(MessageManager.getString("label.zappo"));
     zappoColour.addActionListener(new java.awt.event.ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1212,7 +1365,7 @@ public class PopupMenu extends JPopupMenu
         zappoColour_actionPerformed();
       }
     });
-    taylorColour.setText(MessageManager.getString("label.taylor"));\r
+    taylorColour.setText(MessageManager.getString("label.taylor"));
     taylorColour.addActionListener(new java.awt.event.ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1220,7 +1373,8 @@ public class PopupMenu extends JPopupMenu
         taylorColour_actionPerformed();
       }
     });
-    hydrophobicityColour.setText(MessageManager.getString("label.hydrophobicity"));\r
+    hydrophobicityColour.setText(MessageManager
+            .getString("label.hydrophobicity"));
     hydrophobicityColour
             .addActionListener(new java.awt.event.ActionListener()
             {
@@ -1229,7 +1383,7 @@ public class PopupMenu extends JPopupMenu
                 hydrophobicityColour_actionPerformed();
               }
             });
-    helixColour.setText(MessageManager.getString("label.helix_propensity"));\r
+    helixColour.setText(MessageManager.getString("label.helix_propensity"));
     helixColour.addActionListener(new java.awt.event.ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1237,7 +1391,8 @@ public class PopupMenu extends JPopupMenu
         helixColour_actionPerformed();
       }
     });
-    strandColour.setText(MessageManager.getString("label.strand_propensity"));\r
+    strandColour.setText(MessageManager
+            .getString("label.strand_propensity"));
     strandColour.addActionListener(new java.awt.event.ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1245,7 +1400,7 @@ public class PopupMenu extends JPopupMenu
         strandColour_actionPerformed();
       }
     });
-    turnColour.setText(MessageManager.getString("label.turn_propensity"));\r
+    turnColour.setText(MessageManager.getString("label.turn_propensity"));
     turnColour.addActionListener(new java.awt.event.ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1253,7 +1408,7 @@ public class PopupMenu extends JPopupMenu
         turnColour_actionPerformed();
       }
     });
-    buriedColour.setText(MessageManager.getString("label.buried_index"));\r
+    buriedColour.setText(MessageManager.getString("label.buried_index"));
     buriedColour.addActionListener(new java.awt.event.ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1261,7 +1416,8 @@ public class PopupMenu extends JPopupMenu
         buriedColour_actionPerformed();
       }
     });
-    abovePIDColour.setText(MessageManager.getString("label.above_identity_percentage"));\r
+    abovePIDColour.setText(MessageManager
+            .getString("label.above_identity_percentage"));
     abovePIDColour.addActionListener(new java.awt.event.ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1269,7 +1425,8 @@ public class PopupMenu extends JPopupMenu
         abovePIDColour_actionPerformed();
       }
     });
-    userDefinedColour.setText(MessageManager.getString("action.user_defined"));\r
+    userDefinedColour.setText(MessageManager
+            .getString("action.user_defined"));
     userDefinedColour.addActionListener(new java.awt.event.ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1277,7 +1434,8 @@ public class PopupMenu extends JPopupMenu
         userDefinedColour_actionPerformed(e);
       }
     });
-    PIDColour.setText(MessageManager.getString("label.percentage_identity"));\r
+    PIDColour
+            .setText(MessageManager.getString("label.percentage_identity"));
     PIDColour.addActionListener(new java.awt.event.ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1285,7 +1443,7 @@ public class PopupMenu extends JPopupMenu
         PIDColour_actionPerformed();
       }
     });
-    BLOSUM62Colour.setText(MessageManager.getString("label.blosum62"));\r
+    BLOSUM62Colour.setText(MessageManager.getString("label.blosum62"));
     BLOSUM62Colour.addActionListener(new java.awt.event.ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1293,7 +1451,8 @@ public class PopupMenu extends JPopupMenu
         BLOSUM62Colour_actionPerformed();
       }
     });
-    purinePyrimidineColour.setText(MessageManager.getString("label.purine_pyrimidine"));\r
+    purinePyrimidineColour.setText(MessageManager
+            .getString("label.purine_pyrimidine"));
     purinePyrimidineColour
             .addActionListener(new java.awt.event.ActionListener()
             {
@@ -1302,13 +1461,15 @@ public class PopupMenu extends JPopupMenu
                 purinePyrimidineColour_actionPerformed();
               }
             });
+
     /*
      * covariationColour.addActionListener(new java.awt.event.ActionListener() {
      * public void actionPerformed(ActionEvent e) {
      * covariationColour_actionPerformed(); } });
      */
 
-    conservationMenuItem.setText(MessageManager.getString("label.conservation"));\r
+    conservationMenuItem.setText(MessageManager
+            .getString("label.conservation"));
     conservationMenuItem
             .addActionListener(new java.awt.event.ActionListener()
             {
@@ -1336,8 +1497,12 @@ public class PopupMenu extends JPopupMenu
     StringBuffer contents = new StringBuffer();
     for (SequenceI seq : sequences)
     {
-      contents.append("<p><h2>" + MessageManager.formatMessage("label.create_sequence_details_report_annotation_for", new String[]{seq.getDisplayId(true)})\r
-              + "</h2></p><p>");
+      contents.append("<p><h2>"
+              + MessageManager
+                      .formatMessage(
+                              "label.create_sequence_details_report_annotation_for",
+                              new String[]
+                              { seq.getDisplayId(true) }) + "</h2></p><p>");
       new SequenceAnnotationReport(null)
               .createSequenceAnnotationReport(
                       contents,
@@ -1351,8 +1516,11 @@ public class PopupMenu extends JPopupMenu
     }
     cap.setText("<html>" + contents.toString() + "</html>");
 
-    Desktop.instance.addInternalFrame(cap, MessageManager.formatMessage("label.sequece_details_for", (sequences.length == 1 ? new String[]{sequences[0].getDisplayId(true)}: new String[]{MessageManager.getString("label.selection")}))\r
-               ,500, 400);\r
+    Desktop.instance.addInternalFrame(cap, MessageManager.formatMessage(
+            "label.sequece_details_for",
+            (sequences.length == 1 ? new String[]
+            { sequences[0].getDisplayId(true) } : new String[]
+            { MessageManager.getString("label.selection") })), 500, 400);
 
   }
 
@@ -1538,7 +1706,7 @@ public class PopupMenu extends JPopupMenu
   {
     SequenceGroup sg = getGroup();
 
-    if (e.getSource().equals(userDefinedColour))\r
+    if (e.getSource().equals(userDefinedColour))
     {
       new UserDefinedColours(ap, sg);
     }
@@ -1615,7 +1783,7 @@ public class PopupMenu extends JPopupMenu
 
     if (conservationMenuItem.isSelected())
     {
-    // JBPNote: Conservation name shouldn't be i18n translated
+      // JBPNote: Conservation name shouldn't be i18n translated
       Conservation c = new Conservation("Group",
               ResidueProperties.propHash, 3, sg.getSequences(ap.av
                       .getHiddenRepSequences()), sg.getStartRes(),
@@ -1667,8 +1835,10 @@ public class PopupMenu extends JPopupMenu
 
     SequenceGroup sg = getGroup();
     EditNameDialog dialog = new EditNameDialog(sg.getName(),
-            sg.getDescription(), "       " + MessageManager.getString("label.group_name") + " ",\r
-            MessageManager.getString("label.group_description") + " ", MessageManager.getString("label.edit_group_name_description"),\r
+            sg.getDescription(), "       "
+                    + MessageManager.getString("label.group_name") + " ",
+            MessageManager.getString("label.group_description") + " ",
+            MessageManager.getString("label.edit_group_name_description"),
             ap.alignFrame);
 
     if (!dialog.accept)
@@ -1707,8 +1877,12 @@ public class PopupMenu extends JPopupMenu
   void sequenceName_actionPerformed()
   {
     EditNameDialog dialog = new EditNameDialog(sequence.getName(),
-            sequence.getDescription(), "       " + MessageManager.getString("label.sequence_name") + " ",\r
-            MessageManager.getString("label.sequence_description") + " ", MessageManager.getString("label.edit_sequence_name_description"),\r
+            sequence.getDescription(),
+            "       " + MessageManager.getString("label.sequence_name")
+                    + " ",
+            MessageManager.getString("label.sequence_description") + " ",
+            MessageManager
+                    .getString("label.edit_sequence_name_description"),
             ap.alignFrame);
 
     if (!dialog.accept)
@@ -1720,10 +1894,14 @@ public class PopupMenu extends JPopupMenu
     {
       if (dialog.getName().indexOf(" ") > -1)
       {
-        JOptionPane.showMessageDialog(ap,
-                MessageManager.getString("label.spaces_converted_to_backslashes"),\r
-                MessageManager.getString("label.no_spaces_allowed_sequence_name"),\r
-                JOptionPane.WARNING_MESSAGE);
+        JOptionPane
+                .showMessageDialog(
+                        ap,
+                        MessageManager
+                                .getString("label.spaces_converted_to_backslashes"),
+                        MessageManager
+                                .getString("label.no_spaces_allowed_sequence_name"),
+                        JOptionPane.WARNING_MESSAGE);
       }
 
       sequence.setName(dialog.getName().replace(' ', '_'));
@@ -1750,9 +1928,11 @@ public class PopupMenu extends JPopupMenu
     ap.av.setSelectionGroup(null);
     refresh();
   }
+
   void createGroupMenuItem_actionPerformed()
   {
-    getGroup(); // implicitly creates group - note - should apply defaults / use standard alignment window logic for this
+    getGroup(); // implicitly creates group - note - should apply defaults / use
+                // standard alignment window logic for this
     refresh();
   }
 
@@ -1765,7 +1945,8 @@ public class PopupMenu extends JPopupMenu
   protected void outline_actionPerformed()
   {
     SequenceGroup sg = getGroup();
-    Color col = JColorChooser.showDialog(this, MessageManager.getString("label.select_outline_colour"),\r
+    Color col = JColorChooser.showDialog(this,
+            MessageManager.getString("label.select_outline_colour"),
             Color.BLUE);
 
     if (col != null)
@@ -1819,11 +2000,10 @@ public class PopupMenu extends JPopupMenu
       jalview.util.BrowserLauncher.openURL(url);
     } catch (Exception ex)
     {
-      JOptionPane
-              .showInternalMessageDialog(
-                      Desktop.desktop,
-                      MessageManager.getString("label.web_browser_not_found_unix"),\r
-                      MessageManager.getString("label.web_browser_not_found"), JOptionPane.WARNING_MESSAGE);\r
+      JOptionPane.showInternalMessageDialog(Desktop.desktop,
+              MessageManager.getString("label.web_browser_not_found_unix"),
+              MessageManager.getString("label.web_browser_not_found"),
+              JOptionPane.WARNING_MESSAGE);
 
       ex.printStackTrace();
     }
@@ -1889,17 +2069,17 @@ public class PopupMenu extends JPopupMenu
 
       if (source == toggle)
       {
-        description = MessageManager.getString("label.toggle_case");\r
+        description = MessageManager.getString("label.toggle_case");
         caseChange = ChangeCaseCommand.TOGGLE_CASE;
       }
       else if (source == upperCase)
       {
-        description = MessageManager.getString("label.to_upper_case");\r
+        description = MessageManager.getString("label.to_upper_case");
         caseChange = ChangeCaseCommand.TO_UPPER;
       }
       else
       {
-        description = MessageManager.getString("label.to_lower_case");\r
+        description = MessageManager.getString("label.to_lower_case");
         caseChange = ChangeCaseCommand.TO_LOWER;
       }
 
@@ -1919,31 +2099,17 @@ public class PopupMenu extends JPopupMenu
   {
     CutAndPasteTransfer cap = new CutAndPasteTransfer();
     cap.setForInput(null);
-    Desktop.addInternalFrame(cap,
-            MessageManager.formatMessage("label.alignment_output_command", new String[]{e.getActionCommand()}), 600, 500);\r
+    Desktop.addInternalFrame(cap, MessageManager.formatMessage(
+            "label.alignment_output_command", new String[]
+            { e.getActionCommand() }), 600, 500);
 
     String[] omitHidden = null;
 
     System.out.println("PROMPT USER HERE"); // TODO: decide if a prompt happens
     // or we simply trust the user wants
     // wysiwig behaviour
-    SequenceGroup sg = ap.av.getSelectionGroup();
-    ColumnSelection csel = new ColumnSelection(ap.av.getColumnSelection());
-    omitHidden = ap.av.getViewAsString(true);
-    Alignment oal = new Alignment(ap.av.getSequenceSelection());
-    AlignmentAnnotation[] nala = ap.av.getAlignment()
-            .getAlignmentAnnotation();
-    if (nala != null)
-    {
-      for (int i = 0; i < nala.length; i++)
-      {
-        AlignmentAnnotation na = nala[i];
-        oal.addAnnotation(na);
-      }
-    }
-    cap.setText(new FormatAdapter().formatSequences(e.getActionCommand(),
-            oal, omitHidden, csel, sg));
-    oal = null;
+
+    cap.setText(new FormatAdapter().formatSequences(e.getActionCommand(), ap.av, true));
   }
 
   public void pdbFromFile_actionPerformed()
@@ -1951,8 +2117,12 @@ public class PopupMenu extends JPopupMenu
     jalview.io.JalviewFileChooser chooser = new jalview.io.JalviewFileChooser(
             jalview.bin.Cache.getProperty("LAST_DIRECTORY"));
     chooser.setFileView(new jalview.io.JalviewFileView());
-    chooser.setDialogTitle(MessageManager.formatMessage("label.select_pdb_file_for", new String[]{sequence.getDisplayId(false)}));\r
-    chooser.setToolTipText(MessageManager.formatMessage("label.load_pdb_file_associate_with_sequence", new String[]{sequence.getDisplayId(false)}));\r
+    chooser.setDialogTitle(MessageManager.formatMessage(
+            "label.select_pdb_file_for", new String[]
+            { sequence.getDisplayId(false) }));
+    chooser.setToolTipText(MessageManager.formatMessage(
+            "label.load_pdb_file_associate_with_sequence", new String[]
+            { sequence.getDisplayId(false) }));
 
     int value = chooser.showOpenDialog(null);
 
@@ -1966,10 +2136,24 @@ public class PopupMenu extends JPopupMenu
 
   }
 
+  // JBNote: commented out - these won't be instantiated here...!
+  // public void RNAFold_actionPerformed() throws Exception
+  // {
+  // Predict2D P2D = new Predict2D();
+  // P2D.getStructure2DFromRNAFold("toto");
+  // }
+  //
+  // public void ContraFold_actionPerformed() throws Exception
+  // {
+  // Predict2D P2D = new Predict2D();
+  // P2D.getStructure2DFromContraFold("toto");
+  // }
   public void enterPDB_actionPerformed()
   {
     String id = JOptionPane.showInternalInputDialog(Desktop.desktop,
-            MessageManager.getString("label.enter_pdb_id"), MessageManager.getString("label.enter_pdb_id"), JOptionPane.QUESTION_MESSAGE);\r
+            MessageManager.getString("label.enter_pdb_id"),
+            MessageManager.getString("label.enter_pdb_id"),
+            JOptionPane.QUESTION_MESSAGE);
 
     if (id != null && id.length() > 0)
     {
@@ -2075,12 +2259,15 @@ public class PopupMenu extends JPopupMenu
 
       EditNameDialog dialog = new EditNameDialog(
               sequence.getSequenceAsString(sg.getStartRes(),
-                      sg.getEndRes() + 1), null, MessageManager.getString("label.edit_sequence"), null,\r
-                      MessageManager.getString("label.edit_sequence"), ap.alignFrame);\r
+                      sg.getEndRes() + 1), null,
+              MessageManager.getString("label.edit_sequence"), null,
+              MessageManager.getString("label.edit_sequence"),
+              ap.alignFrame);
 
       if (dialog.accept)
       {
-        EditCommand editCommand = new EditCommand(MessageManager.getString("label.edit_sequences"),\r
+        EditCommand editCommand = new EditCommand(
+                MessageManager.getString("label.edit_sequences"),
                 EditCommand.REPLACE, dialog.getName().replace(' ',
                         ap.av.getGapCharacter()),
                 sg.getSequencesAsArray(ap.av.getHiddenRepSequences()),
index 51138f2..e44915d 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -88,9 +90,10 @@ public class Preferences extends GPreferences
               .indexOf("SRS|http://srs.ebi.ac.uk/srsbin/cgi-bin/wgetz?-newId+(([uniprot-all:$SEQUENCE_ID$]))+-view+SwissEntry");
       if (srsPos > -1)
       {
-        sequenceURLLinks.setElementAt(
-                "EMBL-EBI Search|http://www.ebi.ac.uk/ebisearch/search.ebi?db=allebi&query=$SEQUENCE_ID$",
-                srsPos);
+        sequenceURLLinks
+                .setElementAt(
+                        "EMBL-EBI Search|http://www.ebi.ac.uk/ebisearch/search.ebi?db=allebi&query=$SEQUENCE_ID$",
+                        srsPos);
       }
     }
 
@@ -129,7 +132,8 @@ public class Preferences extends GPreferences
       height = 460;
     }
 
-    Desktop.addInternalFrame(frame, MessageManager.getString("label.preferences"), width, height);
+    Desktop.addInternalFrame(frame,
+            MessageManager.getString("label.preferences"), width, height);
     frame.setMinimumSize(new Dimension(width, height));
 
     seqLimit.setSelected(Cache.getDefault("SHOW_JVSUFFIX", true));
@@ -209,11 +213,10 @@ public class Preferences extends GPreferences
     sortby.addItem("Pairwise Identity");
     sortby.setSelectedItem(Cache.getDefault("SORT_ALIGNMENT", "No sort"));
 
-    epsRendering.addItem("Prompt each time");
-    epsRendering.addItem("Lineart");
-    epsRendering.addItem("Text");
-    epsRendering.setSelectedItem(Cache.getDefault("EPS_RENDERING",
-            "Prompt each time"));
+    epsRendering.addItem(MessageManager.getString("label.prompt_each_time"));
+    epsRendering.addItem(MessageManager.getString("label.lineart"));
+    epsRendering.addItem(MessageManager.getString("action.text"));
+    epsRendering.setSelectedIndex(0);
     autoIdWidth.setSelected(Cache.getDefault("FIGURE_AUTOIDWIDTH", false));
     userIdWidth.setEnabled(autoIdWidth.isSelected());
     userIdWidthlabel.setEnabled(autoIdWidth.isSelected());
@@ -506,7 +509,7 @@ public class Preferences extends GPreferences
             { "Fasta", "Clustal", "PFAM", "MSF", "PIR", "BLC", "Jalview" },
             jalview.bin.Cache.getProperty("DEFAULT_FILE_FORMAT"));
     chooser.setFileView(new JalviewFileView());
-    chooser.setDialogTitle("Select startup file");
+    chooser.setDialogTitle(MessageManager.getString("label.select_startup_file"));
 
     int value = chooser.showOpenDialog(this);
 
@@ -564,8 +567,8 @@ public class Preferences extends GPreferences
     while (!valid)
     {
       if (JOptionPane.showInternalConfirmDialog(Desktop.desktop, link,
-              MessageManager.getString("label.new_sequence_url_link"), JOptionPane.OK_CANCEL_OPTION, -1,
-              null) == JOptionPane.OK_OPTION)
+              MessageManager.getString("label.new_sequence_url_link"),
+              JOptionPane.OK_CANCEL_OPTION, -1, null) == JOptionPane.OK_OPTION)
       {
         if (link.checkValid())
         {
@@ -590,7 +593,8 @@ public class Preferences extends GPreferences
     if (index == -1)
     {
       JOptionPane.showInternalMessageDialog(Desktop.desktop,
-              MessageManager.getString("label.no_link_selected"), MessageManager.getString("label.no_link_selected"),
+              MessageManager.getString("label.no_link_selected"),
+              MessageManager.getString("label.no_link_selected"),
               JOptionPane.WARNING_MESSAGE);
       return;
     }
@@ -603,8 +607,8 @@ public class Preferences extends GPreferences
     {
 
       if (JOptionPane.showInternalConfirmDialog(Desktop.desktop, link,
-              MessageManager.getString("label.new_sequence_url_link"), JOptionPane.OK_CANCEL_OPTION, -1,
-              null) == JOptionPane.OK_OPTION)
+              MessageManager.getString("label.new_sequence_url_link"),
+              JOptionPane.OK_CANCEL_OPTION, -1, null) == JOptionPane.OK_OPTION)
       {
         if (link.checkValid())
         {
@@ -628,7 +632,8 @@ public class Preferences extends GPreferences
     if (index == -1)
     {
       JOptionPane.showInternalMessageDialog(Desktop.desktop,
-              MessageManager.getString("label.no_link_selected"), MessageManager.getString("label.no_link_selected"),
+              MessageManager.getString("label.no_link_selected"),
+              MessageManager.getString("label.no_link_selected"),
               JOptionPane.WARNING_MESSAGE);
       return;
     }
@@ -646,7 +651,7 @@ public class Preferences extends GPreferences
   public void defaultBrowser_mouseClicked(MouseEvent e)
   {
     JFileChooser chooser = new JFileChooser(".");
-    chooser.setDialogTitle("Select default web browser");
+    chooser.setDialogTitle(MessageManager.getString("label.select_default_browser"));
 
     int value = chooser.showOpenDialog(this);
 
@@ -682,7 +687,7 @@ public class Preferences extends GPreferences
   public void minColour_actionPerformed()
   {
     Color col = JColorChooser.showDialog(this,
-            "Select Colour for Minimum Value", minColour.getBackground());
+            MessageManager.getString("label.select_colour_minimum_value"), minColour.getBackground());
     if (col != null)
     {
       minColour.setBackground(col);
@@ -693,7 +698,7 @@ public class Preferences extends GPreferences
   public void maxColour_actionPerformed()
   {
     Color col = JColorChooser.showDialog(this,
-            "Select Colour for Maximum Value", maxColour.getBackground());
+            MessageManager.getString("label.select_colour_maximum_value"), maxColour.getBackground());
     if (col != null)
     {
       maxColour.setBackground(col);
@@ -721,8 +726,8 @@ public class Preferences extends GPreferences
       JOptionPane
               .showInternalMessageDialog(
                       Desktop.desktop,
-                      "The user defined width for the\nannotation and sequence ID columns\nin exported figures must be\nat least 12 pixels wide.",
-                      "Invalid ID Column width",
+                      MessageManager.getString("warn.user_defined_width_requirements"),
+                      MessageManager.getString("label.invalid_id_column_width"),
                       JOptionPane.WARNING_MESSAGE);
       userIdWidth.setText("");
     }
index 95b3fd4..937d741 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
index 59ee1e7..1fcd875 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -86,8 +88,9 @@ public class RedundancyPanel extends GSliderPanel implements Runnable
 
     frame = new JInternalFrame();
     frame.setContentPane(this);
-    Desktop.addInternalFrame(frame, MessageManager.getString("label.redundancy_threshold_selection"), 400,
-            100, false);
+    Desktop.addInternalFrame(frame, MessageManager
+            .getString("label.redundancy_threshold_selection"), 400, 100,
+            false);
     frame.addInternalFrameListener(new InternalFrameAdapter()
     {
       public void internalFrameClosing(InternalFrameEvent evt)
@@ -156,7 +159,7 @@ public class RedundancyPanel extends GSliderPanel implements Runnable
     progress.setVisible(false);
     progress = null;
 
-    label.setText("Enter the redundancy threshold");
+    label.setText(MessageManager.getString("label.enter_redundancy_thereshold"));
     slider.setVisible(true);
     applyButton.setEnabled(true);
     valueField.setVisible(true);
@@ -225,7 +228,7 @@ public class RedundancyPanel extends GSliderPanel implements Runnable
         }
       }
 
-      EditCommand cut = new EditCommand("Remove Redundancy",
+      EditCommand cut = new EditCommand(MessageManager.getString("action.remove_redundancy"),
               EditCommand.CUT, deleted, 0, width, ap.av.getAlignment());
 
       for (int i = 0; i < del.size(); i++)
index 497bbe2..508c55c 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
index cfdea05..191e420 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -268,7 +270,8 @@ public class RestServiceEditorPane extends GRestServiceEditorPane
     final int rdatasel = rdata.getSelectedIndex();
     if (rdatasel > -1)
     {
-      JPopupMenu popup = new JPopupMenu(MessageManager.getString("label.select_return_type"));
+      JPopupMenu popup = new JPopupMenu(
+              MessageManager.getString("label.select_return_type"));
       for (final JvDataType type : JvDataType.values())
       {
         popup.add(new JMenuItem(type.name())).addActionListener(
@@ -429,13 +432,21 @@ public class RestServiceEditorPane extends GRestServiceEditorPane
             }
             else
             {
-              parseRes.setText(MessageManager.formatMessage("label.parsing_failed_syntax_errors_shown_below_param", new String[]{rsd.getInvalidMessage()}));
+              parseRes.setText(MessageManager
+                      .formatMessage(
+                              "label.parsing_failed_syntax_errors_shown_below_param",
+                              new String[]
+                              { rsd.getInvalidMessage() }));
               parseWarnings.setVisible(true);
             }
           } catch (Throwable e)
           {
             e.printStackTrace();
-            parseRes.setText(MessageManager.formatMessage("label.parsing_failed_unrecoverable_exception_thrown_param", new String[]{e.toString()}));
+            parseRes.setText(MessageManager
+                    .formatMessage(
+                            "label.parsing_failed_unrecoverable_exception_thrown_param",
+                            new String[]
+                            { e.toString() }));
             parseWarnings.setVisible(true);
           }
         }
index 7f31eb1..1ff78b4 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -371,7 +373,8 @@ public class RotatableCanvas extends JPanel implements MouseListener,
     if (points == null)
     {
       g.setFont(new Font("Verdana", Font.PLAIN, 18));
-      g.drawString(MessageManager.getString("label.calculating_pca")+ "....", 20, getHeight() / 2);
+      g.drawString(MessageManager.getString("label.calculating_pca")
+              + "....", 20, getHeight() / 2);
     }
     else
     {
index 62f767d..f2c5154 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -95,7 +97,8 @@ public class ScalePanel extends JPanel implements MouseMotionListener,
       JPopupMenu pop = new JPopupMenu();
       if (reveal != null)
       {
-        JMenuItem item = new JMenuItem(MessageManager.getString("label.reveal"));
+        JMenuItem item = new JMenuItem(
+                MessageManager.getString("label.reveal"));
         item.addActionListener(new ActionListener()
         {
           public void actionPerformed(ActionEvent e)
@@ -113,7 +116,8 @@ public class ScalePanel extends JPanel implements MouseMotionListener,
 
         if (av.getColumnSelection().getHiddenColumns().size() > 1)
         {
-          item = new JMenuItem(MessageManager.getString("action.reveal_all"));
+          item = new JMenuItem(
+                  MessageManager.getString("action.reveal_all"));
           item.addActionListener(new ActionListener()
           {
             public void actionPerformed(ActionEvent e)
@@ -133,7 +137,8 @@ public class ScalePanel extends JPanel implements MouseMotionListener,
       }
       else if (av.getColumnSelection().contains(res))
       {
-        JMenuItem item = new JMenuItem(MessageManager.getString("label.hide_columns"));
+        JMenuItem item = new JMenuItem(
+                MessageManager.getString("label.hide_columns"));
         item.addActionListener(new ActionListener()
         {
           public void actionPerformed(ActionEvent e)
@@ -358,7 +363,8 @@ public class ScalePanel extends JPanel implements MouseMotionListener,
       {
         reveal = region;
         ToolTipManager.sharedInstance().registerComponent(this);
-        this.setToolTipText(MessageManager.getString("label.reveal_hidden_columns"));
+        this.setToolTipText(MessageManager
+                .getString("label.reveal_hidden_columns"));
         break;
       }
       else
@@ -506,7 +512,8 @@ public class ScalePanel extends JPanel implements MouseMotionListener,
 
       if (reveal != null && reveal[0] > startx && reveal[0] < endx)
       {
-        gg.drawString(MessageManager.getString("label.reveal_columns"), reveal[0] * av.charWidth, 0);
+        gg.drawString(MessageManager.getString("label.reveal_columns"),
+                reveal[0] * av.charWidth, 0);
       }
     }
 
index e9ffd6e..d935eb7 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
index e7d9030..d5b81f1 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
index 904b856..02c6c16 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -518,29 +520,34 @@ public class SeqPanel extends JPanel implements MouseListener,
 
   int getKeyboardNo1()
   {
-    try {
-    if (keyboardNo1 != null) 
+    try
     {
-      int value = Integer.parseInt(keyboardNo1.toString());
-      keyboardNo1 = null;
-      return value;
-    }
+      if (keyboardNo1 != null)
+      {
+        int value = Integer.parseInt(keyboardNo1.toString());
+        keyboardNo1 = null;
+        return value;
+      }
     } catch (Exception x)
-    {}
+    {
+    }
     keyboardNo1 = null;
     return 1;
   }
 
   int getKeyboardNo2()
   {
-    try {
-    if (keyboardNo2!=null){
-      int value = Integer.parseInt(keyboardNo2.toString());
-      keyboardNo2 = null;
-      return value;
-    }
+    try
+    {
+      if (keyboardNo2 != null)
+      {
+        int value = Integer.parseInt(keyboardNo2.toString());
+        keyboardNo2 = null;
+        return value;
+      }
     } catch (Exception x)
-    {}
+    {
+    }
     keyboardNo2 = null;
     return 1;
   }
@@ -942,7 +949,7 @@ public class SeqPanel extends JPanel implements MouseListener,
       message.append("Edit group:");
       if (editCommand == null)
       {
-        editCommand = new EditCommand("Edit Group");
+        editCommand = new EditCommand(MessageManager.getString("action.edit_group"));
       }
     }
     else
@@ -955,7 +962,7 @@ public class SeqPanel extends JPanel implements MouseListener,
       }
       if (editCommand == null)
       {
-        editCommand = new EditCommand("Edit " + label);
+        editCommand = new EditCommand(MessageManager.formatMessage("label.edit_params", new String[]{label}));
       }
     }
 
@@ -1430,9 +1437,10 @@ public class SeqPanel extends JPanel implements MouseListener,
 
     if (av.wrapAlignment && seq > av.getAlignment().getHeight())
     {
-      JOptionPane.showInternalMessageDialog(Desktop.desktop,
-              MessageManager.getString("label.cannot_edit_annotations_in_wrapped_view"),
-              MessageManager.getString("label.wrapped_view_no_edit"), JOptionPane.WARNING_MESSAGE);
+      JOptionPane.showInternalMessageDialog(Desktop.desktop, MessageManager
+              .getString("label.cannot_edit_annotations_in_wrapped_view"),
+              MessageManager.getString("label.wrapped_view_no_edit"),
+              JOptionPane.WARNING_MESSAGE);
       return;
     }
 
index 45d944d..35bc29a 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -76,7 +78,7 @@ public class SequenceFetcher extends JPanel implements Runnable
       if (guiWindow != null)
       {
         guiWindow.setProgressBar(
-                "Waiting for Sequence Database Fetchers to initialise",
+                MessageManager.getString("status.waiting_sequence_database_fetchers_init"),
                 Thread.currentThread().hashCode());
       }
       // initting happening on another thread - so wait around to see if it
@@ -95,7 +97,7 @@ public class SequenceFetcher extends JPanel implements Runnable
       if (guiWindow != null)
       {
         guiWindow.setProgressBar(
-                "Waiting for Sequence Database Fetchers to initialise",
+                       MessageManager.getString("status.waiting_sequence_database_fetchers_init"),
                 Thread.currentThread().hashCode());
       }
     }
@@ -113,7 +115,7 @@ public class SequenceFetcher extends JPanel implements Runnable
        */
       if (guiWindow != null)
       {
-        guiWindow.setProgressBar("Initialising Sequence Database Fetchers",
+        guiWindow.setProgressBar(MessageManager.getString("status.init_sequence_database_fetchers"),
                 Thread.currentThread().hashCode());
       }
       dasRegistry = jalview.bin.Cache.getDasSourceRegistry();
@@ -122,7 +124,7 @@ public class SequenceFetcher extends JPanel implements Runnable
       jalview.ws.SequenceFetcher sf = new jalview.ws.SequenceFetcher();
       if (guiWindow != null)
       {
-        guiWindow.setProgressBar("Initialising Sequence Database Fetchers",
+        guiWindow.setProgressBar(MessageManager.getString("status.init_sequence_database_fetchers"),
                 Thread.currentThread().hashCode());
       }
       lastDasSourceRegistry = (dasRegistry.getDasRegistryURL() + dasRegistry
@@ -159,8 +161,8 @@ public class SequenceFetcher extends JPanel implements Runnable
               JOptionPane
                       .showInternalMessageDialog(
                               Desktop.desktop,
-                              "Could not create the sequence fetcher client. Check error logs for details.",
-                              "Couldn't create SequenceFetcher",
+                              MessageManager.getString("warn.couldnt_create_sequence_fetcher_client"),
+                              MessageManager.getString("label.couldnt_create_sequence_fetcher"),
                               JOptionPane.ERROR_MESSAGE);
             }
           });
@@ -217,8 +219,7 @@ public class SequenceFetcher extends JPanel implements Runnable
 
   private String getFrameTitle()
   {
-    return ((alignFrame == null) ? "New " : "Additional ")
-            + "Sequence Fetcher";
+    return ((alignFrame == null) ? MessageManager.getString("label.new_sequence_fetcher") : MessageManager.getString("label.additional_sequence_fetcher"));
   }
 
   private void jbInit() throws Exception
@@ -229,12 +230,14 @@ public class SequenceFetcher extends JPanel implements Runnable
     dbeg.setFont(new java.awt.Font("Verdana", Font.BOLD, 11));
     jLabel1.setFont(new java.awt.Font("Verdana", Font.ITALIC, 11));
     jLabel1.setHorizontalAlignment(SwingConstants.CENTER);
-    jLabel1.setText(MessageManager.getString("label.separate_multiple_accession_ids"));
+    jLabel1.setText(MessageManager
+            .getString("label.separate_multiple_accession_ids"));
 
     replacePunctuation.setHorizontalAlignment(SwingConstants.CENTER);
     replacePunctuation
             .setFont(new java.awt.Font("Verdana", Font.ITALIC, 11));
-    replacePunctuation.setText(MessageManager.getString("label.replace_commas_semicolons"));
+    replacePunctuation.setText(MessageManager
+            .getString("label.replace_commas_semicolons"));
     ok.setText(MessageManager.getString("action.ok"));
     ok.addActionListener(new ActionListener()
     {
@@ -306,7 +309,9 @@ public class SequenceFetcher extends JPanel implements Runnable
                           + database.getSelectedSources().size()
                           + " others)" : ""));
           String eq = database.getExampleQueries();
-          dbeg.setText(MessageManager.formatMessage("label.example_query_param", new String[]{eq}));
+          dbeg.setText(MessageManager.formatMessage(
+                  "label.example_query_param", new String[]
+                  { eq }));
           boolean enablePunct = !(eq != null && eq.indexOf(",") > -1);
           for (DbSourceProxy dbs : database.getSelectedSources())
           {
@@ -488,8 +493,7 @@ public class SequenceFetcher extends JPanel implements Runnable
       try
       {
         // update status
-        guiWindow.setProgressBar("Fetching " + nqueries
-                + " sequence queries from " + proxy.getDbName(), Thread
+        guiWindow.setProgressBar(MessageManager.formatMessage("status.fetching_sequence_queries_from", new String[]{Integer.valueOf(nqueries).toString(),proxy.getDbName()}), Thread
                 .currentThread().hashCode());
         isAliSource = proxy.isA(DBRefSource.ALIGNMENTDB);
         if (proxy.getAccessionSeparator() == null)
@@ -687,11 +691,11 @@ public class SequenceFetcher extends JPanel implements Runnable
           presultTitle.add(titl);
         }
       }
-      guiWindow.setProgressBar("Finished querying", Thread.currentThread()
+      guiWindow.setProgressBar(MessageManager.getString("status.finshed_querying"), Thread.currentThread()
               .hashCode());
     }
-    guiWindow.setProgressBar((presult.size() > 0) ? "Parsing results."
-            : "Processing ..", Thread.currentThread().hashCode());
+    guiWindow.setProgressBar((presult.size() > 0) ? MessageManager.getString("status.parsing_results")
+            : MessageManager.getString("status.processing"), Thread.currentThread().hashCode());
     // process results
     while (presult.size() > 0)
     {
@@ -804,7 +808,8 @@ public class SequenceFetcher extends JPanel implements Runnable
         Desktop.addInternalFrame(af, title, AlignFrame.DEFAULT_WIDTH,
                 AlignFrame.DEFAULT_HEIGHT);
 
-        af.statusBar.setText(MessageManager.getString("label.successfully_pasted_alignment_file"));
+        af.statusBar.setText(MessageManager
+                .getString("label.successfully_pasted_alignment_file"));
 
         try
         {
@@ -845,7 +850,8 @@ public class SequenceFetcher extends JPanel implements Runnable
       public void run()
       {
         JOptionPane.showInternalMessageDialog(Desktop.desktop, error,
-                MessageManager.getString("label.error_retrieving_data"), JOptionPane.WARNING_MESSAGE);
+                MessageManager.getString("label.error_retrieving_data"),
+                JOptionPane.WARNING_MESSAGE);
       }
     });
   }
index 9ca3d83..bcbebbd 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
index aa4aa64..81b3bd3 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -70,13 +72,15 @@ public class SliderPanel extends GSliderPanel
 
     if (forConservation)
     {
-      label.setText(MessageManager.getString("label.enter_value_increase_conservation_visibility"));
+      label.setText(MessageManager
+              .getString("label.enter_value_increase_conservation_visibility"));
       slider.setMinimum(0);
       slider.setMaximum(100);
     }
     else
     {
-      label.setText(MessageManager.getString("label.enter_percentage_identity_above_which_colour_residues"));
+      label.setText(MessageManager
+              .getString("label.enter_percentage_identity_above_which_colour_residues"));
       slider.setMinimum(0);
       slider.setMaximum(100);
     }
@@ -132,8 +136,7 @@ public class SliderPanel extends GSliderPanel
       sp.cs = cs;
     }
 
-    conservationSlider.setTitle("Conservation Colour Increment  (" + source
-            + ")");
+    conservationSlider.setTitle(MessageManager.formatMessage("label.conservation_colour_increment", new String[]{source}));
 
     if (ap.av.getAlignment().getGroups() != null)
     {
@@ -209,7 +212,7 @@ public class SliderPanel extends GSliderPanel
       pid.cs = cs;
     }
 
-    PIDSlider.setTitle("Percentage Identity Threshold (" + source + ")");
+    PIDSlider.setTitle(MessageManager.formatMessage("label.percentage_identity_thereshold", new String[]{source}));
 
     if (ap.av.getAlignment().getGroups() != null)
     {
index 652aa75..14e1a0e 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -167,11 +169,11 @@ public class SplashScreen extends JPanel implements Runnable,
       authlist.setContentType("text/html");
       authlist.setText(newtext);
       authlist.setVisible(true);
-      authlist.setSize(new Dimension(750, 275));
+      authlist.setSize(new Dimension(750, 375));
       add(authlist, BorderLayout.CENTER);
       revalidate();
       iframe.setBounds((int) ((Desktop.instance.getWidth() - 750) / 2),
-              (int) ((Desktop.instance.getHeight() - 140) / 2), 750,
+              (int) ((Desktop.instance.getHeight() - 375) / 2), 750,
               authlist.getHeight() + iconimg.getHeight());
       iframe.validate();
       iframe.setVisible(true);
diff --git a/src/jalview/gui/StructureViewer.java b/src/jalview/gui/StructureViewer.java
new file mode 100644 (file)
index 0000000..ccb3c18
--- /dev/null
@@ -0,0 +1,141 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
+package jalview.gui;
+
+import java.awt.Rectangle;
+
+import jalview.api.structures.JalviewStructureDisplayI;
+import jalview.bin.Cache;
+import jalview.datamodel.PDBEntry;
+import jalview.datamodel.SequenceI;
+import jalview.gui.StructureViewer.Viewer;
+import jalview.structure.StructureSelectionManager;
+
+/**
+ * proxy for handling structure viewers.
+ * 
+ * this allows new views to be created with the currently configured viewer, the
+ * preferred viewer to be set/read and existing views created previously with a
+ * particular viewer to be recovered
+ * 
+ * @author jprocter
+ */
+public class StructureViewer
+{
+  StructureSelectionManager ssm;
+
+  public enum Viewer
+  {
+    JMOL, CHIMERA
+  };
+
+  public Viewer getViewerType()
+  {
+    String viewType = Cache.getDefault("STRUCTURE_DISPLAY", "JMOL");
+    return Viewer.valueOf(viewType);
+  }
+
+  public void setViewerType(Viewer type)
+  {
+    Cache.setProperty("STRUCTURE_DISPLAY", type.toString());
+  }
+
+  public StructureViewer(StructureSelectionManager structureSelectionManager)
+  {
+    ssm = structureSelectionManager;
+  }
+
+  public JalviewStructureDisplayI viewStructures(AlignmentPanel ap,
+          PDBEntry[] pr, SequenceI[][] collateForPDB)
+  {
+    return viewStructures(getViewerType(), ap, pr, collateForPDB);
+  }
+
+  public JalviewStructureDisplayI viewStructures(Viewer viewerType,
+          AlignmentPanel ap, PDBEntry[] pr, SequenceI[][] collateForPDB)
+  {
+    JalviewStructureDisplayI sview = null;
+    if (viewerType.equals(Viewer.JMOL))
+    {
+      sview = new AppJmol(ap, pr, ap.av.collateForPDB(pr));
+    }
+    else if (viewerType.equals(Viewer.CHIMERA))
+    {
+      sview = new ChimeraViewFrame(ap, pr, ap.av.collateForPDB(pr));
+    }
+    else
+    {
+      Cache.log.error("Unknown structure viewer type "
+              + getViewerType().toString());
+    }
+    return sview;
+  }
+
+  public JalviewStructureDisplayI viewStructures(Viewer viewerType,
+          AlignmentPanel ap, PDBEntry pr, SequenceI[] collateForPDB)
+  {
+    JalviewStructureDisplayI sview = null;
+    if (viewerType.equals(Viewer.JMOL))
+    {
+      sview = new AppJmol(pr, collateForPDB, null, ap);
+    }
+    else if (viewerType.equals(Viewer.CHIMERA))
+    {
+      sview = new ChimeraViewFrame(pr, collateForPDB, null, ap);
+    }
+    else
+    {
+      Cache.log.error("Unknown structure viewer type "
+              + getViewerType().toString());
+    }
+    return sview;
+  }
+
+  public JalviewStructureDisplayI viewStructures(PDBEntry pdb,
+          SequenceI[] sequenceIs, Object object, AlignmentPanel ap)
+  {
+    return viewStructures(getViewerType(), ap, pdb, sequenceIs);
+  }
+
+  public JalviewStructureDisplayI createView(Viewer jmol, String[] pdbf,
+          String[] id, SequenceI[][] sq, AlignmentPanel alignPanel,
+          boolean useinJmolsuperpos, boolean usetoColourbyseq,
+          boolean jmolColouring, String fileloc, Rectangle rect, String vid)
+  {
+    JalviewStructureDisplayI sview = null;
+    switch (getViewerType())
+    {
+    case JMOL:
+
+      sview = new AppJmol(pdbf, id, sq, alignPanel, useinJmolsuperpos,
+              usetoColourbyseq, jmolColouring, fileloc, rect, vid);
+
+      break;
+    case CHIMERA:
+      break;
+    default:
+      Cache.log.error("Unknown structure viewer type "
+              + getViewerType().toString());
+    }
+    return sview;
+  }
+
+}
index 2f9422a..6fe7660 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -66,9 +68,7 @@ public class TextColourChooser
     JPanel panel = new JPanel();
     bigpanel.add(panel, BorderLayout.CENTER);
     bigpanel.add(
-            new JLabel(
-                    "<html><i>Select a dark and light text colour, then set the threshold to"
-                            + "<br>switch between colours, based on background colour</i></html>"),
+            new JLabel(MessageManager.getString("label.select_dark_light_set_thereshold")),
             BorderLayout.NORTH);
     panel.add(col1);
     panel.add(slider);
@@ -79,7 +79,7 @@ public class TextColourChooser
       public void mousePressed(MouseEvent e)
       {
         Color col = JColorChooser.showDialog(bigpanel,
-                "Select Colour for Text", col1.getBackground());
+                MessageManager.getString("label.select_colour_for_text"), col1.getBackground());
         if (col != null)
         {
           colour1Changed(col);
@@ -93,7 +93,7 @@ public class TextColourChooser
       public void mousePressed(MouseEvent e)
       {
         Color col = JColorChooser.showDialog(bigpanel,
-                "Select Colour for Text", col2.getBackground());
+                       MessageManager.getString("label.select_colour_for_text"), col2.getBackground());
         if (col != null)
         {
           colour2Changed(col);
@@ -111,7 +111,7 @@ public class TextColourChooser
     });
 
     int reply = JOptionPane.showInternalOptionDialog(ap, bigpanel,
-            "Adjust Foreground Text Colour Threshold",
+            MessageManager.getString("label.adjunst_foreground_text_colour_thereshold"),
             JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE,
             null, null, null);
 
index 5bea550..c5650f5 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -609,7 +611,8 @@ public class TreeCanvas extends JPanel implements MouseListener, Runnable,
 
     if (tree == null)
     {
-      g.drawString(MessageManager.getString("label.calculating_tree") + "....", 20, getHeight() / 2);
+      g.drawString(MessageManager.getString("label.calculating_tree")
+              + "....", 20, getHeight() / 2);
     }
     else
     {
@@ -669,9 +672,9 @@ public class TreeCanvas extends JPanel implements MouseListener, Runnable,
     g2.fillRect(0, 0, width, height);
     g2.setFont(font);
 
-    if (longestName==null || tree ==null)
+    if (longestName == null || tree == null)
     {
-      g2.drawString("Calculating tree.",20,20);
+      g2.drawString("Calculating tree.", 20, 20);
     }
     offy = font.getSize() + 10;
 
@@ -754,7 +757,7 @@ public class TreeCanvas extends JPanel implements MouseListener, Runnable,
       if (SwingUtilities.isRightMouseButton(evt))
       {
         Color col = JColorChooser.showDialog(this,
-                "Select Sub-Tree Colour", highlightNode.color);
+                MessageManager.getString("label.select_subtree_colour"), highlightNode.color);
         if (col != null)
         {
           setColor(highlightNode, col);
@@ -794,7 +797,8 @@ public class TreeCanvas extends JPanel implements MouseListener, Runnable,
     if (ob instanceof SequenceNode)
     {
       highlightNode = (SequenceNode) ob;
-      this.setToolTipText("<html>" + MessageManager.getString("label.highlightnode"));
+      this.setToolTipText("<html>"
+              + MessageManager.getString("label.highlightnode"));
       repaint();
 
     }
index 923d702..ee0bfaf 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -397,7 +399,7 @@ public class TreePanel extends GTreePanel
     JalviewFileChooser chooser = new JalviewFileChooser(
             jalview.bin.Cache.getProperty("LAST_DIRECTORY"));
     chooser.setFileView(new JalviewFileView());
-    chooser.setDialogTitle("Save tree as newick file");
+    chooser.setDialogTitle(MessageManager.getString("label.save_tree_as_newick"));
     chooser.setToolTipText(MessageManager.getString("action.save"));
 
     int value = chooser.showSaveDialog(null);
@@ -490,8 +492,10 @@ public class TreePanel extends GTreePanel
         // af.addSortByOrderMenuItem(ServiceName + " Ordering",
         // msaorder);
 
-        Desktop.addInternalFrame(af, MessageManager.formatMessage("label.original_data_for_params", new String[]{this.title}),
-                AlignFrame.DEFAULT_WIDTH, AlignFrame.DEFAULT_HEIGHT);
+        Desktop.addInternalFrame(af, MessageManager.formatMessage(
+                "label.original_data_for_params", new String[]
+                { this.title }), AlignFrame.DEFAULT_WIDTH,
+                AlignFrame.DEFAULT_HEIGHT);
       }
     }
   }
@@ -691,7 +695,7 @@ public class TreePanel extends GTreePanel
               { "eps" }, new String[]
               { "Encapsulated Postscript" }, "Encapsulated Postscript");
       chooser.setFileView(new jalview.io.JalviewFileView());
-      chooser.setDialogTitle("Create EPS file from tree");
+      chooser.setDialogTitle(MessageManager.getString("label.create_eps_from_tree"));
       chooser.setToolTipText(MessageManager.getString("action.save"));
 
       int value = chooser.showSaveDialog(this);
@@ -738,7 +742,7 @@ public class TreePanel extends GTreePanel
               { "Portable network graphics" }, "Portable network graphics");
 
       chooser.setFileView(new jalview.io.JalviewFileView());
-      chooser.setDialogTitle("Create PNG image from tree");
+      chooser.setDialogTitle(MessageManager.getString("label.create_png_from_tree"));
       chooser.setToolTipText(MessageManager.getString("action.save"));
 
       int value = chooser.showSaveDialog(this);
index e1ff5e0..37824fe 100755 (executable)
@@ -1,29 +1,33 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
 
+import jalview.api.structures.JalviewStructureDisplayI;
 import jalview.datamodel.SequenceGroup;
 import jalview.io.JalviewFileChooser;
 import jalview.jbgui.GUserDefinedColours;
 import jalview.schemes.ColourSchemeI;
 import jalview.schemes.ResidueProperties;
 import jalview.schemes.UserColourScheme;
+import jalview.util.ColorUtils;
 import jalview.util.MessageManager;
 
 import java.awt.Color;
@@ -36,9 +40,9 @@ import java.io.FileOutputStream;
 import java.io.InputStreamReader;
 import java.io.OutputStreamWriter;
 import java.io.PrintWriter;
+import java.util.ArrayList;
 import java.util.Hashtable;
 import java.util.StringTokenizer;
-import java.util.Vector;
 
 import javax.swing.JButton;
 import javax.swing.JInternalFrame;
@@ -47,29 +51,36 @@ import javax.swing.event.ChangeEvent;
 import javax.swing.event.ChangeListener;
 
 /**
- * DOCUMENT ME!
+ * This panel allows the user to assign colours to Amino Acid residue codes, and
+ * save the colour scheme.
  * 
- * @author $author$
- * @version $Revision$
+ * @author Andrew Waterhouse
+ * @author Mungo Carstairs
  */
 public class UserDefinedColours extends GUserDefinedColours implements
         ChangeListener
 {
+  private static final int MY_FRAME_HEIGHT = 420;
+
+  private static final int MY_FRAME_WIDTH = 810;
+
+  private static final int MY_FRAME_WIDTH_CASE_SENSITIVE = 970;
+
   AlignmentPanel ap;
 
   SequenceGroup seqGroup;
 
-  Vector selectedButtons;
+  ArrayList<JButton> selectedButtons;
 
   ColourSchemeI oldColourScheme;
 
   JInternalFrame frame;
 
-  AppJmol jmol;
+  JalviewStructureDisplayI jmol;
 
-  Vector upperCaseButtons;
+  ArrayList<JButton> upperCaseButtons;
 
-  Vector lowerCaseButtons;
+  ArrayList<JButton> lowerCaseButtons;
 
   /**
    * Creates a new UserDefinedColours object.
@@ -119,7 +130,8 @@ public class UserDefinedColours extends GUserDefinedColours implements
     showFrame();
   }
 
-  public UserDefinedColours(AppJmol jmol, ColourSchemeI oldcs)
+  public UserDefinedColours(JalviewStructureDisplayI jmol,
+          ColourSchemeI oldcs)
   {
     super();
     this.jmol = jmol;
@@ -144,17 +156,14 @@ public class UserDefinedColours extends GUserDefinedColours implements
     colorChooser.getSelectionModel().addChangeListener(this);
     frame = new JInternalFrame();
     frame.setContentPane(this);
-    Desktop.addInternalFrame(frame, MessageManager.getString("label.user_defined_colours"), 720, 370, true);\r
+    Desktop.addInternalFrame(frame,
+            MessageManager.getString("label.user_defined_colours"),
+            MY_FRAME_WIDTH, MY_FRAME_HEIGHT, true);
 
     if (seqGroup != null)
     {
       frame.setTitle(frame.getTitle() + " (" + seqGroup.getName() + ")");
     }
-
-    if (new jalview.util.Platform().isAMac())
-    {
-      frame.setSize(760, 370);
-    }
   }
 
   void resetButtonPanel(boolean caseSensitive)
@@ -163,7 +172,7 @@ public class UserDefinedColours extends GUserDefinedColours implements
 
     if (upperCaseButtons == null)
     {
-      upperCaseButtons = new Vector();
+      upperCaseButtons = new ArrayList<JButton>();
     }
 
     JButton button;
@@ -204,7 +213,7 @@ public class UserDefinedColours extends GUserDefinedColours implements
 
       if (lowerCaseButtons == null)
       {
-        lowerCaseButtons = new Vector();
+        lowerCaseButtons = new ArrayList<JButton>();
       }
 
       for (int i = 0; i < 20; i++)
@@ -225,6 +234,15 @@ public class UserDefinedColours extends GUserDefinedColours implements
       buttonPanel.add(makeButton("x", "x", lowerCaseButtons, 22));
     }
 
+    // JAL-1360 widen the frame dynamically to accommodate case-sensitive AA
+    // codes
+    if (this.frame != null)
+    {
+      int newWidth = caseSensitive ? MY_FRAME_WIDTH_CASE_SENSITIVE
+              : MY_FRAME_WIDTH;
+      this.frame.setSize(newWidth, this.frame.getHeight());
+    }
+
     buttonPanel.validate();
     validate();
   }
@@ -235,42 +253,55 @@ public class UserDefinedColours extends GUserDefinedColours implements
    * @param evt
    *          DOCUMENT ME!
    */
+  @Override
   public void stateChanged(ChangeEvent evt)
   {
     if (selectedButtons != null)
     {
       JButton button = null;
+      final Color newColour = colorChooser.getColor();
       for (int i = 0; i < selectedButtons.size(); i++)
       {
-        button = (JButton) selectedButtons.elementAt(i);
-        button.setBackground(colorChooser.getColor());
-        button.setForeground(button.getBackground().brighter().brighter()
-                .brighter());
+        button = selectedButtons.get(i);
+        button.setBackground(newColour);
+        button.setForeground(ColorUtils.brighterThan(newColour));
       }
       if (button == lcaseColour)
       {
         for (int i = 0; i < lowerCaseButtons.size(); i++)
         {
-          button = (JButton) lowerCaseButtons.elementAt(i);
-          button.setBackground(colorChooser.getColor());
-          button.setForeground(button.getBackground().brighter().brighter()
-                  .brighter());
+          button = lowerCaseButtons.get(i);
+          button.setBackground(newColour);
+          button.setForeground(ColorUtils.brighterThan(button
+                  .getBackground()));
         }
       }
     }
   }
 
   /**
-   * DOCUMENT ME!
+   * Performs actions when a residue button is clicked. This manages the button
+   * selection set (highlighted by brighter foreground text).
+   * <p>
+   * On select button(s) with Ctrl/click or Shift/click: set button foreground
+   * text to brighter than background.
+   * <p>
+   * On unselect button(s) with Ctrl/click on selected, or click to release
+   * current selection: reset foreground text to darker than background.
+   * <p>
+   * Simple click: clear selection (resetting foreground to darker); set clicked
+   * button foreground to brighter
+   * <p>
+   * Finally, synchronize the colour chooser to the colour of the first button
+   * in the selected set.
    * 
    * @param e
-   *          DOCUMENT ME!
    */
   public void colourButtonPressed(MouseEvent e)
   {
     if (selectedButtons == null)
     {
-      selectedButtons = new Vector();
+      selectedButtons = new ArrayList<JButton>();
     }
 
     JButton pressed = (JButton) e.getSource();
@@ -280,8 +311,7 @@ public class UserDefinedColours extends GUserDefinedColours implements
       JButton start, end = (JButton) e.getSource();
       if (selectedButtons.size() > 0)
       {
-        start = (JButton) selectedButtons
-                .elementAt(selectedButtons.size() - 1);
+        start = selectedButtons.get(selectedButtons.size() - 1);
       }
       else
       {
@@ -313,7 +343,8 @@ public class UserDefinedColours extends GUserDefinedColours implements
         JButton button = (JButton) buttonPanel.getComponent(b);
         if (!selectedButtons.contains(button))
         {
-          button.setForeground(button.getBackground().brighter().brighter());
+          button.setForeground(ColorUtils.brighterThan(button
+                  .getBackground()));
           selectedButtons.add(button);
         }
       }
@@ -322,32 +353,32 @@ public class UserDefinedColours extends GUserDefinedColours implements
     {
       for (int b = 0; b < selectedButtons.size(); b++)
       {
-        JButton button = (JButton) selectedButtons.elementAt(b);
-        button.setForeground(button.getBackground().darker().darker());
+        JButton button = selectedButtons.get(b);
+        button.setForeground(ColorUtils.darkerThan(button.getBackground()));
       }
       selectedButtons.clear();
-      pressed.setForeground(pressed.getBackground().brighter().brighter());
-      selectedButtons.addElement(pressed);
+      pressed.setForeground(ColorUtils.brighterThan(pressed.getBackground()));
+      selectedButtons.add(pressed);
 
     }
     else if (e.isControlDown())
     {
       if (selectedButtons.contains(pressed))
       {
-        pressed.setForeground(pressed.getBackground().darker().darker());
+        pressed.setForeground(ColorUtils.darkerThan(pressed.getBackground()));
         selectedButtons.remove(pressed);
       }
       else
       {
-        pressed.setForeground(pressed.getBackground().brighter().brighter());
-        selectedButtons.addElement(pressed);
+        pressed.setForeground(ColorUtils.brighterThan(pressed
+                .getBackground()));
+        selectedButtons.add(pressed);
       }
     }
 
     if (selectedButtons.size() > 0)
     {
-      colorChooser.setColor(((JButton) selectedButtons.elementAt(0))
-              .getBackground());
+      colorChooser.setColor((selectedButtons.get(0)).getBackground());
     }
   }
 
@@ -359,15 +390,15 @@ public class UserDefinedColours extends GUserDefinedColours implements
    * @param aa
    *          DOCUMENT ME!
    */
-  JButton makeButton(String label, String aa, Vector caseSensitiveButtons,
-          int buttonIndex)
+  JButton makeButton(String label, String aa,
+          ArrayList<JButton> caseSensitiveButtons, int buttonIndex)
   {
     final JButton button;
     Color col;
 
     if (buttonIndex < caseSensitiveButtons.size())
     {
-      button = (JButton) caseSensitiveButtons.elementAt(buttonIndex);
+      button = caseSensitiveButtons.get(buttonIndex);
       col = button.getBackground();
     }
     else
@@ -375,13 +406,14 @@ public class UserDefinedColours extends GUserDefinedColours implements
       button = new JButton();
       button.addMouseListener(new java.awt.event.MouseAdapter()
       {
+        @Override
         public void mouseClicked(MouseEvent e)
         {
           colourButtonPressed(e);
         }
       });
 
-      caseSensitiveButtons.addElement(button);
+      caseSensitiveButtons.add(button);
 
       col = Color.white;
       if (oldColourScheme != null)
@@ -404,9 +436,10 @@ public class UserDefinedColours extends GUserDefinedColours implements
       button.setMargin(new java.awt.Insets(2, 14, 2, 14));
     }
 
+    button.setOpaque(true); // required for the next line to have effect
     button.setBackground(col);
     button.setText(label);
-    button.setForeground(col.darker().darker().darker());
+    button.setForeground(ColorUtils.darkerThan(col));
     button.setFont(new java.awt.Font("Verdana", Font.BOLD, 10));
 
     return button;
@@ -418,16 +451,29 @@ public class UserDefinedColours extends GUserDefinedColours implements
    * @param e
    *          DOCUMENT ME!
    */
+  @Override
   protected void okButton_actionPerformed(ActionEvent e)
   {
-    applyButton_actionPerformed(null);
-
-    try
-    {
-      frame.setClosed(true);
-    } catch (Exception ex)
-    {
-    }
+               //Check if the user have done any selection
+               boolean showWarning = (upperCaseButtons==null) ||
+                                       ((upperCaseButtons!=null) && (upperCaseButtons.size()==0)) ||
+                                       (lowerCaseButtons==null) ||
+                                       ((lowerCaseButtons!=null) && (lowerCaseButtons.size()==0));
+               if (showWarning){
+               JOptionPane.showMessageDialog(Desktop.desktop,
+                       MessageManager.getString("label.no_colour_selection_in_scheme"),MessageManager.getString("label.no_colour_selection_warn"),
+                       JOptionPane.WARNING_MESSAGE);
+                       
+               }else{
+                   applyButton_actionPerformed(null);
+               
+                   try
+                   {
+                     frame.setClosed(true);
+                   } catch (Exception ex)
+                   {
+                   }
+               }
   }
 
   /**
@@ -436,9 +482,21 @@ public class UserDefinedColours extends GUserDefinedColours implements
    * @param e
    *          DOCUMENT ME!
    */
+  @Override
   protected void applyButton_actionPerformed(ActionEvent e)
   {
-    UserColourScheme ucs = getSchemeFromButtons();
+       //Check if the user have done any selection
+       boolean showWarning = (upperCaseButtons==null) ||
+                               ((upperCaseButtons!=null) && (upperCaseButtons.size()==0)) ||
+                               (lowerCaseButtons==null) ||
+                               ((lowerCaseButtons!=null) && (lowerCaseButtons.size()==0));
+       if (showWarning){
+        JOptionPane.showMessageDialog(Desktop.desktop,
+                MessageManager.getString("label.no_colour_selection_in_scheme"),MessageManager.getString("label.no_colour_selection_warn"),
+                JOptionPane.WARNING_MESSAGE);
+               
+       }
+       UserColourScheme ucs = getSchemeFromButtons();
     ucs.setName(schemeName.getText());
 
     if (seqGroup != null)
@@ -461,10 +519,18 @@ public class UserDefinedColours extends GUserDefinedColours implements
 
     Color[] newColours = new Color[24];
 
-    for (int i = 0; i < 24; i++)
-    {
-      JButton button = (JButton) upperCaseButtons.elementAt(i);
-      newColours[i] = button.getBackground();
+    int length = upperCaseButtons.size();
+    if (length<24){
+       int i = 0;
+       for (JButton btn:upperCaseButtons){
+               newColours[i] = btn.getBackground();
+               i++;
+       }
+    }else{
+       for (int i = 0; i < 24; i++){
+               JButton button = (JButton) upperCaseButtons.get(i);
+               newColours[i] = button.getBackground();
+       }
     }
 
     UserColourScheme ucs = new UserColourScheme(newColours);
@@ -472,10 +538,18 @@ public class UserDefinedColours extends GUserDefinedColours implements
     if (caseSensitive.isSelected())
     {
       newColours = new Color[23];
-      for (int i = 0; i < 23; i++)
-      {
-        JButton button = (JButton) lowerCaseButtons.elementAt(i);
-        newColours[i] = button.getBackground();
+      length = lowerCaseButtons.size();
+      if (length<23){
+         int i = 0;
+         for (JButton btn:lowerCaseButtons){
+                 newColours[i] = btn.getBackground();
+                 i++;
+         }
+      }else{
+         for (int i = 0; i < 23; i++){
+                 JButton button = (JButton) lowerCaseButtons.get(i);
+                 newColours[i] = button.getBackground();
+         }
       }
       ucs.setLowerCaseColours(newColours);
     }
@@ -494,18 +568,20 @@ public class UserDefinedColours extends GUserDefinedColours implements
    * @param e
    *          DOCUMENT ME!
    */
+  @Override
   protected void loadbutton_actionPerformed(ActionEvent e)
   {
-    upperCaseButtons = new Vector();
-    lowerCaseButtons = new Vector();
+    upperCaseButtons = new ArrayList<JButton>();
+    lowerCaseButtons = new ArrayList<JButton>();
 
     JalviewFileChooser chooser = new JalviewFileChooser(
             jalview.bin.Cache.getProperty("LAST_DIRECTORY"), new String[]
             { "jc" }, new String[]
             { "Jalview User Colours" }, "Jalview User Colours");
     chooser.setFileView(new jalview.io.JalviewFileView());
-    chooser.setDialogTitle(MessageManager.getString("label.load_colour_scheme"));\r
-    chooser.setToolTipText(MessageManager.getString("action.load"));\r
+    chooser.setDialogTitle(MessageManager
+            .getString("label.load_colour_scheme"));
+    chooser.setToolTipText(MessageManager.getString("action.load"));
 
     int value = chooser.showOpenDialog(this);
 
@@ -534,7 +610,7 @@ public class UserDefinedColours extends GUserDefinedColours implements
         resetButtonPanel(true);
         for (int i = 0; i < lowerCaseButtons.size(); i++)
         {
-          JButton button = (JButton) lowerCaseButtons.elementAt(i);
+          JButton button = lowerCaseButtons.get(i);
           button.setBackground(ucs.getLowerCaseColours()[i]);
         }
 
@@ -548,7 +624,7 @@ public class UserDefinedColours extends GUserDefinedColours implements
 
       for (int i = 0; i < upperCaseButtons.size(); i++)
       {
-        JButton button = (JButton) upperCaseButtons.elementAt(i);
+        JButton button = upperCaseButtons.get(i);
         button.setBackground(colors[i]);
       }
 
@@ -673,7 +749,7 @@ public class UserDefinedColours extends GUserDefinedColours implements
 
         jalview.binding.JalviewUserColours jucs = new jalview.binding.JalviewUserColours();
 
-        jucs = (jalview.binding.JalviewUserColours) jucs.unmarshal(in);
+        jucs = jucs.unmarshal(in);
 
         newColours = new Color[jucs.getColourCount()];
 
@@ -707,23 +783,27 @@ public class UserDefinedColours extends GUserDefinedColours implements
    * @param e
    *          DOCUMENT ME!
    */
+  @Override
   protected void savebutton_actionPerformed(ActionEvent e)
   {
     if (schemeName.getText().trim().length() < 1)
     {
-      JOptionPane.showInternalMessageDialog(Desktop.desktop,
-              MessageManager.getString("label.user_colour_scheme_must_have_name"),
-              MessageManager.getString("label.no_name_colour_scheme"), JOptionPane.WARNING_MESSAGE);
+      JOptionPane.showInternalMessageDialog(Desktop.desktop, MessageManager
+              .getString("label.user_colour_scheme_must_have_name"),
+              MessageManager.getString("label.no_name_colour_scheme"),
+              JOptionPane.WARNING_MESSAGE);
       return;
     }
 
     if (userColourSchemes != null
             && userColourSchemes.containsKey(schemeName.getText()))
     {
-      int reply = JOptionPane.showInternalConfirmDialog(
-              Desktop.desktop,
-              MessageManager.formatMessage("label.colour_scheme_exists_overwrite", new String[]{schemeName.getText(),schemeName.getText()}),
-              MessageManager.getString("label.duplicate_scheme_name"), JOptionPane.YES_NO_OPTION);
+      int reply = JOptionPane.showInternalConfirmDialog(Desktop.desktop,
+              MessageManager.formatMessage(
+                      "label.colour_scheme_exists_overwrite", new Object[]
+                      { schemeName.getText(), schemeName.getText() }),
+              MessageManager.getString("label.duplicate_scheme_name"),
+              JOptionPane.YES_NO_OPTION);
       if (reply != JOptionPane.YES_OPTION)
       {
         return;
@@ -737,8 +817,8 @@ public class UserDefinedColours extends GUserDefinedColours implements
             { "Jalview User Colours" }, "Jalview User Colours");
 
     chooser.setFileView(new jalview.io.JalviewFileView());
-    chooser.setDialogTitle("Save colour scheme");
-    chooser.setToolTipText(MessageManager.getString("action.save"));\r
+    chooser.setDialogTitle(MessageManager.getString("label.save_colour_scheme"));
+    chooser.setToolTipText(MessageManager.getString("action.save"));
 
     int value = chooser.showSaveDialog(this);
 
@@ -795,6 +875,7 @@ public class UserDefinedColours extends GUserDefinedColours implements
    * @param e
    *          DOCUMENT ME!
    */
+  @Override
   protected void cancelButton_actionPerformed(ActionEvent e)
   {
     if (ap != null)
@@ -924,17 +1005,19 @@ public class UserDefinedColours extends GUserDefinedColours implements
 
   }
 
+  @Override
   public void caseSensitive_actionPerformed(ActionEvent e)
   {
     resetButtonPanel(caseSensitive.isSelected());
     lcaseColour.setEnabled(caseSensitive.isSelected());
   }
 
+  @Override
   public void lcaseColour_actionPerformed(ActionEvent e)
   {
     if (selectedButtons == null)
     {
-      selectedButtons = new Vector();
+      selectedButtons = new ArrayList<JButton>();
     }
     else
     {
@@ -942,5 +1025,4 @@ public class UserDefinedColours extends GUserDefinedColours implements
     }
     selectedButtons.add(lcaseColour);
   }
-
 }
index cd102b6..315dd66 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -139,10 +141,13 @@ public class UserQuestionnaireCheck implements Runnable
                 + qid + "&rid=" + rid;
         jalview.bin.Cache.log.info("Prompting user for questionnaire at "
                 + qurl);
-        int reply = JOptionPane.showInternalConfirmDialog(Desktop.desktop,
-                MessageManager.getString("label.jalview_new_questionnaire"),
-                MessageManager.getString("label.jalview_user_survey"), JOptionPane.YES_NO_OPTION,
-                JOptionPane.QUESTION_MESSAGE);
+        int reply = JOptionPane
+                .showInternalConfirmDialog(Desktop.desktop, MessageManager
+                        .getString("label.jalview_new_questionnaire"),
+                        MessageManager
+                                .getString("label.jalview_user_survey"),
+                        JOptionPane.YES_NO_OPTION,
+                        JOptionPane.QUESTION_MESSAGE);
 
         if (reply == JOptionPane.YES_OPTION)
         {
index 5ee7e36..77a7693 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -29,6 +31,7 @@ import jalview.structure.SelectionSource;
 import jalview.structure.StructureSelectionManager;
 import jalview.structure.VamsasListener;
 import jalview.structure.VamsasSource;
+import jalview.util.MessageManager;
 
 import java.beans.PropertyChangeEvent;
 import java.beans.PropertyChangeListener;
@@ -153,8 +156,7 @@ public class VamsasApplication implements SelectionSource, VamsasSource
       {
         if (sess != null)
         {
-          throw new Error(
-                  "Implementation Error - cannot import existing vamsas document into an existing session, Yet!");
+          throw new Error(MessageManager.getString("error.implementation_error_cannot_import_vamsas_doc"));
         }
         try
         {
@@ -174,8 +176,8 @@ public class VamsasApplication implements SelectionSource, VamsasSource
                   .showInternalMessageDialog(
                           Desktop.desktop,
 
-                          "VAMSAS Document could not be opened as a new session - please choose another",
-                          "VAMSAS Document Import Failed",
+                          MessageManager.getString("label.vamsas_doc_couldnt_be_opened_as_new_session"),
+                          MessageManager.getString("label.vamsas_document_import_failed"),
                           JOptionPane.ERROR_MESSAGE);
 
         }
@@ -261,8 +263,7 @@ public class VamsasApplication implements SelectionSource, VamsasSource
   {
     if (!inSession())
     {
-      throw new Error(
-              "Impementation error! Vamsas Operations when client not initialised and connected.");
+      throw new Error(MessageManager.getString("error.implementation_error_vamsas_operation_not_init"));
     }
     addDocumentUpdateHandler();
     addStoreDocumentHandler();
@@ -346,7 +347,7 @@ public class VamsasApplication implements SelectionSource, VamsasSource
   public void end_session(boolean promptUser)
   {
     if (!inSession())
-      throw new Error("Jalview not connected to Vamsas session.");
+      throw new Error(MessageManager.getString("error.jalview_no_connected_vamsas_session"));
     Cache.log.info("Jalview disconnecting from the Vamsas Session.");
     try
     {
@@ -714,8 +715,7 @@ public class VamsasApplication implements SelectionSource, VamsasSource
         return;
       }
 
-      throw new Error(
-              "IMPLEMENTATION ERROR: Cannot recover vamsas object mappings - no backup was made.");
+      throw new Error(MessageManager.getString("error.implementation_error_cannot_recover_vamsas_object_mappings"));
     }
     jv2vobj.clear();
     Iterator el = _backup_jv2vobj.entrySet().iterator();
index b90f742..164f975 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -149,8 +151,8 @@ public class ViewSelectionMenu extends JMenu
       // ensure we update menu state to reflect external selection list state
       append = append || _selectedviews.size() > 1;
       toggleview = new JCheckBoxMenuItem("Select many views", append);
-      toggleview
-              .setToolTipText(MessageManager.getString("label.toggle_enabled_views"));
+      toggleview.setToolTipText(MessageManager
+              .getString("label.toggle_enabled_views"));
       toggleview.addItemListener(new ItemListener()
       {
 
@@ -168,7 +170,8 @@ public class ViewSelectionMenu extends JMenu
 
       });
       add(toggleview);
-      add(selectAll = new JMenuItem(MessageManager.getString("label.select_all_views")));
+      add(selectAll = new JMenuItem(
+              MessageManager.getString("label.select_all_views")));
       selectAll.addActionListener(new ActionListener()
       {
 
@@ -190,7 +193,8 @@ public class ViewSelectionMenu extends JMenu
           }
         }
       });
-      add(invertSel = new JMenuItem(MessageManager.getString("label.invert_selection")));
+      add(invertSel = new JMenuItem(
+              MessageManager.getString("label.invert_selection")));
       invertSel.addActionListener(new ActionListener()
       {
 
index 723746c..8dcf72a 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -354,8 +356,7 @@ public class WebserviceInfo extends GWebserviceInfo implements
   {
     if (jobpane < 0 || jobpane >= jobPanes.size())
     {
-      throw new Error("setStatus called for non-existent job pane."
-              + jobpane);
+      throw new Error(MessageManager.formatMessage("error.setstatus_called_non_existent_job_pane", new String[]{Integer.valueOf(jobpane).toString()}));
     }
     switch (status)
     {
@@ -649,8 +650,8 @@ public class WebserviceInfo extends GWebserviceInfo implements
       // anyhow - it has to stop threads and clean up
       // JBPNote : TODO: Instead of a warning, we should have an optional 'Are
       // you sure?' prompt
-      warnUser("This job cannot be cancelled.\nJust close the window.",
-              "Cancel job");
+      warnUser(MessageManager.getString("warn.job_cannot_be_cancelled_close_window"),
+              MessageManager.getString("action.cancel_job"));
     }
     else
     {
@@ -768,32 +769,52 @@ public class WebserviceInfo extends GWebserviceInfo implements
       switch (currentStatus)
       {
       case STATE_QUEUING:
-        g.drawString(title.concat(" - ").concat(MessageManager.getString("label.state_queueing")), 60, 30);
+        g.drawString(
+                title.concat(" - ").concat(
+                        MessageManager.getString("label.state_queueing")),
+                60, 30);
 
         break;
 
       case STATE_RUNNING:
-        g.drawString(title.concat(" - ").concat(MessageManager.getString("label.state_running")), 60, 30);
+        g.drawString(
+                title.concat(" - ").concat(
+                        MessageManager.getString("label.state_running")),
+                60, 30);
 
         break;
 
       case STATE_STOPPED_OK:
-        g.drawString(title.concat(" - ").concat(MessageManager.getString("label.state_completed")), 60, 30);
+        g.drawString(
+                title.concat(" - ").concat(
+                        MessageManager.getString("label.state_completed")),
+                60, 30);
 
         break;
 
       case STATE_CANCELLED_OK:
-        g.drawString(title.concat(" - ").concat(MessageManager.getString("label.state_job_cancelled")), 60, 30);
+        g.drawString(
+                title.concat(" - ").concat(
+                        MessageManager
+                                .getString("label.state_job_cancelled")),
+                60, 30);
 
         break;
 
       case STATE_STOPPED_ERROR:
-        g.drawString(title.concat(" - ").concat(MessageManager.getString("label.state_job_error")), 60, 30);
+        g.drawString(
+                title.concat(" - ").concat(
+                        MessageManager.getString("label.state_job_error")),
+                60, 30);
 
         break;
 
       case STATE_STOPPED_SERVERERROR:
-        g.drawString(title.concat(" - ").concat(MessageManager.getString("label.server_error_try_later")), 60, 30);
+        g.drawString(
+                title.concat(" - ").concat(
+                        MessageManager
+                                .getString("label.server_error_try_later")),
+                60, 30);
 
         break;
       }
@@ -890,14 +911,14 @@ public class WebserviceInfo extends GWebserviceInfo implements
   {
     if (progressBarHandlers == null || !progressBars.contains(new Long(id)))
     {
-      throw new Error(
-              "call setProgressBar before registering the progress bar's handler.");
+      throw new Error(MessageManager.getString("error.call_setprogressbar_before_registering_handler"));
     }
     progressBarHandlers.put(new Long(id), handler);
     final JPanel progressPanel = (JPanel) progressBars.get(new Long(id));
     if (handler.canCancel())
     {
-      JButton cancel = new JButton(MessageManager.getString("action.cancel"));
+      JButton cancel = new JButton(
+              MessageManager.getString("action.cancel"));
       final IProgressIndicator us = this;
       cancel.addActionListener(new ActionListener()
       {
@@ -906,10 +927,7 @@ public class WebserviceInfo extends GWebserviceInfo implements
         public void actionPerformed(ActionEvent e)
         {
           handler.cancelActivity(id);
-          us.setProgressBar(
-                  "Cancelled "
-                          + ((JLabel) progressPanel.getComponent(0))
-                                  .getText(), id);
+          us.setProgressBar(MessageManager.formatMessage("label.cancelled_params", new String[]{((JLabel) progressPanel.getComponent(0)).getText()}), id);
         }
       });
       progressPanel.add(cancel, BorderLayout.EAST);
index b905b63..23645df 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -216,7 +218,7 @@ public class WsJobParameters extends JPanel implements ItemListener,
 
     frame = new JDialog(Desktop.instance, true);
 
-    frame.setTitle("Edit parameters for " + service.getActionText());
+    frame.setTitle(MessageManager.formatMessage("label.edit_params_for", new String[]{service.getActionText()}));
     Rectangle deskr = Desktop.instance.getBounds();
     Dimension pref = this.getPreferredSize();
     frame.setBounds(new Rectangle(
@@ -263,7 +265,8 @@ public class WsJobParameters extends JPanel implements ItemListener,
 
       }
     });
-    updatepref = JvSwingUtils.makeButton(MessageManager.getString("action.update"),
+    updatepref = JvSwingUtils.makeButton(
+            MessageManager.getString("action.update"),
             MessageManager.getString("label.update_user_parameter_set"),
             new ActionListener()
             {
@@ -273,7 +276,8 @@ public class WsJobParameters extends JPanel implements ItemListener,
                 update_actionPerformed(e);
               }
             });
-    deletepref = JvSwingUtils.makeButton(MessageManager.getString("action.delete"),
+    deletepref = JvSwingUtils.makeButton(
+            MessageManager.getString("action.delete"),
             MessageManager.getString("label.delete_user_parameter_set"),
             new ActionListener()
             {
@@ -283,7 +287,8 @@ public class WsJobParameters extends JPanel implements ItemListener,
                 delete_actionPerformed(e);
               }
             });
-    createpref = JvSwingUtils.makeButton(MessageManager.getString("action.create"),
+    createpref = JvSwingUtils.makeButton(
+            MessageManager.getString("action.create"),
             MessageManager.getString("label.create_user_parameter_set"),
             new ActionListener()
             {
@@ -293,8 +298,9 @@ public class WsJobParameters extends JPanel implements ItemListener,
                 create_actionPerformed(e);
               }
             });
-    revertpref = JvSwingUtils.makeButton(MessageManager.getString("action.revert"),
-            MessageManager.getString("label.revert_changes_user_parameter_set"),
+    revertpref = JvSwingUtils.makeButton(MessageManager
+            .getString("action.revert"), MessageManager
+            .getString("label.revert_changes_user_parameter_set"),
             new ActionListener()
             {
 
@@ -303,16 +309,20 @@ public class WsJobParameters extends JPanel implements ItemListener,
                 revert_actionPerformed(e);
               }
             });
-    startjob = JvSwingUtils.makeButton(MessageManager.getString("action.start_job"),
-            MessageManager.getString("label.start_job_current_settings"), new ActionListener()
+    startjob = JvSwingUtils.makeButton(
+            MessageManager.getString("action.start_job"),
+            MessageManager.getString("label.start_job_current_settings"),
+            new ActionListener()
             {
               public void actionPerformed(ActionEvent e)
               {
                 startjob_actionPerformed(e);
               }
             });
-    canceljob = JvSwingUtils.makeButton(MessageManager.getString("action.cancel_job"),
-            MessageManager.getString("label.cancel_job_close_dialog"), new ActionListener()
+    canceljob = JvSwingUtils.makeButton(
+            MessageManager.getString("action.cancel_job"),
+            MessageManager.getString("label.cancel_job_close_dialog"),
+            new ActionListener()
             {
               public void actionPerformed(ActionEvent e)
               {
@@ -320,7 +330,8 @@ public class WsJobParameters extends JPanel implements ItemListener,
               }
             });
 
-    setDetails.setBorder(new TitledBorder(MessageManager.getString("label.details")));
+    setDetails.setBorder(new TitledBorder(MessageManager
+            .getString("label.details")));
     setDetails.setLayout(new BorderLayout());
     setDescr.setColumns(40);
     setDescr.setWrapStyleWord(true);
@@ -328,7 +339,8 @@ public class WsJobParameters extends JPanel implements ItemListener,
     setDescr.setBackground(getBackground());
     setDescr.setEditable(true);
     setDescr.getDocument().addDocumentListener(this);
-    setDescr.setToolTipText(MessageManager.getString("label.edit_notes_parameter_set"));
+    setDescr.setToolTipText(MessageManager
+            .getString("label.edit_notes_parameter_set"));
     JScrollPane setDescrView = new JScrollPane();
     // setDescrView.setPreferredSize(new Dimension(350, 200));
     setDescrView.getViewport().setView(setDescr);
@@ -339,7 +351,8 @@ public class WsJobParameters extends JPanel implements ItemListener,
     GridBagLayout gbl = new GridBagLayout();
     SetNamePanel.setLayout(gbl);
 
-    JLabel setNameLabel = new JLabel(MessageManager.getString("label.current_parameter_set_name"));
+    JLabel setNameLabel = new JLabel(
+            MessageManager.getString("label.current_parameter_set_name"));
     setNameLabel.setFont(new java.awt.Font("Verdana", Font.PLAIN, 10));
 
     setNameInfo.add(setNameLabel);
@@ -378,9 +391,11 @@ public class WsJobParameters extends JPanel implements ItemListener,
 
     // paramPane.setPreferredSize(new Dimension(360, 400));
     // paramPane.setPreferredSize(null);
-    jobOptions.setBorder(new TitledBorder(MessageManager.getString("label.options")));
+    jobOptions.setBorder(new TitledBorder(MessageManager
+            .getString("label.options")));
     jobOptions.setOpaque(true);
-    paramList.setBorder(new TitledBorder(MessageManager.getString("label.parameters")));
+    paramList.setBorder(new TitledBorder(MessageManager
+            .getString("label.parameters")));
     paramList.setOpaque(true);
     JPanel bjo = new JPanel(new BorderLayout()), bjp = new JPanel(
             new BorderLayout());
@@ -568,17 +583,17 @@ public class WsJobParameters extends JPanel implements ItemListener,
   @SuppressWarnings("unchecked")
   private void updateTable(WsParamSetI p, List<ArgumentI> jobArgset)
   {
-    boolean setDefaultParams=false;
+    boolean setDefaultParams = false;
     if (lastParmSet == null)
     {
       isUserPreset = false;
       // First call - so provide Service default settings
       setName.setSelectedItem(lastSetName = SVC_DEF);
     }
-    if (p==null && SVC_DEF.equals(""+setName.getSelectedItem()))
+    if (p == null && SVC_DEF.equals("" + setName.getSelectedItem()))
     {
       // indicate that service defaults should be set if available
-      setDefaultParams=true;
+      setDefaultParams = true;
     }
     // populate table from default parameter set.
     List<ArgumentI> args = paramStore.getServiceParameters();
@@ -586,9 +601,9 @@ public class WsJobParameters extends JPanel implements ItemListener,
     // split to params and required arguments
     {
       int cw = 0;
-      boolean optset=false;
+      boolean optset = false;
       for (ArgumentI myarg : args)
-      { 
+      {
         // Ideally, Argument would implement isRequired !
         if (myarg instanceof ParameterI)
         {
@@ -1076,8 +1091,7 @@ public class WsJobParameters extends JPanel implements ItemListener,
             }
             WsJobParameters pgui = new WsJobParameters(lastserv,
                     new JabaPreset(lastserv, pr));
-            JFrame jf = new JFrame("Parameters for "
-                    + lastserv.getActionText());
+            JFrame jf = new JFrame(MessageManager.formatMessage("label.ws_parameters_for", new String[]{lastserv.getActionText()}));
             JPanel cont = new JPanel(new BorderLayout());
             pgui.validate();
             cont.setPreferredSize(pgui.getPreferredSize());
@@ -1402,8 +1416,8 @@ public class WsJobParameters extends JPanel implements ItemListener,
             public void run()
             {
               JOptionPane.showMessageDialog(ourframe,
-                      "Invalid name - preset already exists.",
-                      "Invalid name", JOptionPane.WARNING_MESSAGE);
+                      MessageManager.getString("label.invalid_name_preset_exists"),
+                      MessageManager.getString("label.invalid_name"), JOptionPane.WARNING_MESSAGE);
             }
           });
 
index 5335b22..3322d6a 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -176,8 +178,7 @@ public class WsParamSetManager implements ParamManager
     }
     if (parser == null)
     {
-      throw new Error(
-              "Implementation error: Can't find a marshaller for the parameter set");
+      throw new Error(MessageManager.getString("error.implementation_error_cannot_find_marshaller_for_param_set"));
     }
     if (filename == null)
     {
@@ -187,7 +188,7 @@ public class WsParamSetManager implements ParamManager
               { "Web Service Parameter File" },
               "Web Service Parameter File");
       chooser.setFileView(new jalview.io.JalviewFileView());
-      chooser.setDialogTitle("Choose a filename for this parameter file");
+      chooser.setDialogTitle(MessageManager.getString("label.choose_filename_for_param_file"));
       chooser.setToolTipText(MessageManager.getString("action.save"));
       int value = chooser.showSaveDialog(Desktop.instance);
       if (value == JalviewFileChooser.APPROVE_OPTION)
index 59e6309..876d157 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.gui;
@@ -123,7 +125,7 @@ public class WsPreferences extends GWsPreferences
     }
 
     wsList.setModel(new WsUrlTableModel(tdat));
-    wsList.getColumn("Status").setMinWidth(10);
+    wsList.getColumn(MessageManager.getString("label.status")).setMinWidth(10);
   }
 
   private class JabaWSStatusRenderer extends JPanel implements
@@ -182,6 +184,8 @@ public class WsPreferences extends GWsPreferences
   {
 
     private Object[][] data;
+    private String[] columnNames = new String[]
+    { MessageManager.getString("label.service_url"), MessageManager.getString("label.status") };
 
     public WsUrlTableModel(Object[][] tdat)
     {
@@ -197,11 +201,7 @@ public class WsPreferences extends GWsPreferences
     @Override
     public String getColumnName(int column)
     {
-      if (column == 1)
-      {
-        return "Status";
-      }
-      return "Service URL";
+        return columnNames[column];
     }
 
     @Override
@@ -274,7 +274,7 @@ public class WsPreferences extends GWsPreferences
     int sel = wsList.getSelectedRow();
     if (sel > -1)
     {
-      String url = editUrl(wsUrls.elementAt(sel), "Edit JABAWS URL");
+      String url = editUrl(wsUrls.elementAt(sel), MessageManager.getString("label.edit_jabaws_url"));
       if (url != null)
       {
         int present = wsUrls.indexOf(url);
@@ -300,7 +300,7 @@ public class WsPreferences extends GWsPreferences
   protected void newSbrsUrl_actionPerformed(ActionEvent e)
   {
     RestServiceEditorPane rse = new RestServiceEditorPane();
-    rse.showDialog("Add a new Simple Bioinformatics Rest Service");
+    rse.showDialog(MessageManager.getString("label.add_new_sbrs_service"));
     String rservice = rse.getEditedRestService();
     if (rservice != null && !rsbsUrls.contains(rservice))
     {
@@ -318,7 +318,7 @@ public class WsPreferences extends GWsPreferences
     {
       RestServiceEditorPane rse = new RestServiceEditorPane(
               new RestServiceDescription(rsbsUrls.elementAt(sel)));
-      rse.showDialog("Edit Simple Bioinformatics Rest Service entry");
+      rse.showDialog(MessageManager.getString("label.edit_sbrs_entry"));
       String rservice = rse.getEditedRestService();
       if (rservice != null)
       {
@@ -447,7 +447,8 @@ public class WsPreferences extends GWsPreferences
     JTextField urltf = new JTextField(url, 40);
     JPanel panel = new JPanel(new BorderLayout());
     JPanel pane12 = new JPanel(new BorderLayout());
-    pane12.add(new JLabel(MessageManager.getString("label.url")), BorderLayout.CENTER);
+    pane12.add(new JLabel(MessageManager.getString("label.url")),
+            BorderLayout.CENTER);
     pane12.add(urltf, BorderLayout.EAST);
     panel.add(pane12, BorderLayout.NORTH);
     boolean valid = false;
@@ -481,8 +482,8 @@ public class WsPreferences extends GWsPreferences
       int validate = JOptionPane
               .showInternalConfirmDialog(
                       Desktop.desktop,
-                      "Validate JabaWS Server ?\n(Look in console output for results)",
-                      "Test Server?", JOptionPane.YES_NO_OPTION);
+                      MessageManager.getString("info.validate_jabaws_server"),
+                      MessageManager.getString("label.test_server"), JOptionPane.YES_NO_OPTION);
       if (validate == JOptionPane.OK_OPTION)
       {
         if (jalview.ws.jws2.Jws2Discoverer.testServiceUrl(foo))
@@ -494,7 +495,7 @@ public class WsPreferences extends GWsPreferences
           JOptionPane
                   .showInternalMessageDialog(
                           Desktop.desktop,
-                          "Service did not pass validation.\nCheck the Jalview Console for more details.");
+                          MessageManager.getString("warn.server_didnt_pass_validation"));
         }
       }
       else
@@ -515,7 +516,7 @@ public class WsPreferences extends GWsPreferences
   @Override
   protected void newWsUrl_actionPerformed(ActionEvent e)
   {
-    String url = editUrl(null, "Add new JABAWS URL");
+    String url = editUrl(null, MessageManager.getString("label.add_jabaws_url"));
     if (url != null)
     {
       if (!wsUrls.contains(url))
@@ -600,7 +601,7 @@ public class WsPreferences extends GWsPreferences
         public void run()
         {
           long ct = System.currentTimeMillis();
-          Desktop.instance.setProgressBar("Refreshing Web Service Menus",
+          Desktop.instance.setProgressBar(MessageManager.getString("status.refreshing_web_service_menus"),
                   ct);
           if (lastrefresh != update)
           {
index 31f9b21..b51daa5 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io;
index 93803c8..f73e250 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io;
@@ -22,6 +24,7 @@ import jalview.datamodel.Alignment;
 import jalview.datamodel.AlignmentAnnotation;
 import jalview.datamodel.Sequence;
 import jalview.datamodel.SequenceI;
+import jalview.util.MessageManager;
 
 import java.io.IOException;
 import java.util.Enumeration;
@@ -66,6 +69,10 @@ public abstract class AlignFile extends FileParse
    */
   public AlignFile()
   {
+    // Shouldn't we init data structures (JBPNote: not sure - initData is for
+    // initialising the structures used for reading from a datasource, and the
+    // bare constructor hasn't got any datasource)
+    initData();
   }
 
   /**
@@ -190,8 +197,7 @@ public abstract class AlignFile extends FileParse
   {
     if (key == null)
     {
-      throw new Error(
-              "Implementation error: Cannot have null alignment property key.");
+      throw new Error(MessageManager.getString("error.implementation_error_cannot_have_null_alignment"));
     }
     if (value == null)
     {
index 86fa6a0..9f33fb4 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io;
index 9a21fbb..7736332 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io;
@@ -132,8 +134,8 @@ public class AnnotationFile
       StringBuffer colours = new StringBuffer();
       StringBuffer graphLine = new StringBuffer();
       StringBuffer rowprops = new StringBuffer();
-      Hashtable<Integer,String> graphGroup = new Hashtable<Integer,String>();
-      Hashtable<Integer, Object[]> graphGroup_refs = new Hashtable<Integer,Object[]>();
+      Hashtable<Integer, String> graphGroup = new Hashtable<Integer, String>();
+      Hashtable<Integer, Object[]> graphGroup_refs = new Hashtable<Integer, Object[]>();
       BitSet graphGroupSeen = new BitSet();
 
       java.awt.Color color;
@@ -142,16 +144,19 @@ public class AnnotationFile
       {
         row = annotations[i];
 
-        if (!row.visible && !row.hasScore() && !(row.graphGroup>-1 && graphGroupSeen.get(row.graphGroup)))
+        if (!row.visible
+                && !row.hasScore()
+                && !(row.graphGroup > -1 && graphGroupSeen
+                        .get(row.graphGroup)))
         {
           continue;
         }
 
         color = null;
         oneColour = true;
-        
+
         // mark any sequence references for the row
-        writeSequence_Ref(refSeq ,row.sequenceRef);
+        writeSequence_Ref(refSeq, row.sequenceRef);
         refSeq = row.sequenceRef;
         // mark any group references for the row
         writeGroup_Ref(refGroup, row.groupRef);
@@ -218,11 +223,12 @@ public class AnnotationFile
             if (graphGroup.containsKey(key))
             {
               graphGroup.put(key, graphGroup.get(key) + "\t" + row.label);
-              
+
             }
             else
             {
-              graphGroup_refs.put(key, new Object[] { refSeq, refGroup});
+              graphGroup_refs.put(key, new Object[]
+              { refSeq, refGroup });
               graphGroup.put(key, row.label);
             }
           }
@@ -339,7 +345,8 @@ public class AnnotationFile
           rowprops.append(row.centreColLabels);
           rowprops.append(newline);
         }
-        if (graphLine.length()>0) {
+        if (graphLine.length() > 0)
+        {
           text.append(graphLine.toString());
           graphLine.setLength(0);
         }
@@ -352,22 +359,24 @@ public class AnnotationFile
       {
         SequenceI oldRefSeq = refSeq;
         SequenceGroup oldRefGroup = refGroup;
-        for (Map.Entry<Integer, String> combine_statement:graphGroup.entrySet())
-        {
-          Object[] seqRefAndGroup=graphGroup_refs.get(combine_statement.getKey());
-          
-          writeSequence_Ref(refSeq, (SequenceI)seqRefAndGroup[0]);
-          refSeq = (SequenceI)seqRefAndGroup[0];
-          
-          writeGroup_Ref(refGroup, (SequenceGroup)seqRefAndGroup[1]);
-          refGroup = (SequenceGroup)seqRefAndGroup[1];
+        for (Map.Entry<Integer, String> combine_statement : graphGroup
+                .entrySet())
+        {
+          Object[] seqRefAndGroup = graphGroup_refs.get(combine_statement
+                  .getKey());
+
+          writeSequence_Ref(refSeq, (SequenceI) seqRefAndGroup[0]);
+          refSeq = (SequenceI) seqRefAndGroup[0];
+
+          writeGroup_Ref(refGroup, (SequenceGroup) seqRefAndGroup[1]);
+          refGroup = (SequenceGroup) seqRefAndGroup[1];
           text.append("COMBINE\t");
           text.append(combine_statement.getValue());
           text.append(newline);
         }
         writeSequence_Ref(refSeq, oldRefSeq);
         refSeq = oldRefSeq;
-        
+
         writeGroup_Ref(refGroup, oldRefGroup);
         refGroup = oldRefGroup;
       }
@@ -400,7 +409,8 @@ public class AnnotationFile
     return text.toString();
   }
 
-  private Object writeGroup_Ref(SequenceGroup refGroup, SequenceGroup next_refGroup)
+  private Object writeGroup_Ref(SequenceGroup refGroup,
+          SequenceGroup next_refGroup)
   {
     if (next_refGroup == null)
     {
@@ -425,13 +435,13 @@ public class AnnotationFile
         return true;
       }
     }
-    return false;  
+    return false;
   }
-  
+
   private boolean writeSequence_Ref(SequenceI refSeq, SequenceI next_refSeq)
   {
 
-    if (next_refSeq==null)
+    if (next_refSeq == null)
     {
       if (refSeq != null)
       {
@@ -616,16 +626,22 @@ public class AnnotationFile
     {
       ex.printStackTrace();
       System.out.println("Problem reading annotation file: " + ex);
-      if (nlinesread>0) {
-        System.out.println("Last read line "+nlinesread+": '"+lastread+"' (first 80 chars) ...");
+      if (nlinesread > 0)
+      {
+        System.out.println("Last read line " + nlinesread + ": '"
+                + lastread + "' (first 80 chars) ...");
       }
       return false;
     }
     return false;
   }
-  long nlinesread=0;
-  String lastread="";
-  private static String GRAPHLINE="GRAPHLINE", COMBINE="COMBINE"; 
+
+  long nlinesread = 0;
+
+  String lastread = "";
+
+  private static String GRAPHLINE = "GRAPHLINE", COMBINE = "COMBINE";
+
   public boolean parseAnnotationFrom(AlignmentI al, BufferedReader in)
           throws Exception
   {
@@ -676,7 +692,8 @@ public class AnnotationFile
       boolean jvAnnotationFile = false;
       while ((line = in.readLine()) != null)
       {
-        nlinesread++;lastread = new String(line);
+        nlinesread++;
+        lastread = new String(line);
         if (line.indexOf("#") == 0)
         {
           continue;
@@ -697,7 +714,8 @@ public class AnnotationFile
 
       while ((line = in.readLine()) != null)
       {
-        nlinesread++;lastread = new String(line);
+        nlinesread++;
+        lastread = new String(line);
         if (line.indexOf("#") == 0
                 || line.indexOf("JALVIEW_ANNOTATION") > -1
                 || line.length() == 0)
@@ -718,7 +736,8 @@ public class AnnotationFile
         else if (token.equalsIgnoreCase(COMBINE))
         {
           // keep a record of current state and resolve groupRef at end
-          combineAnnotation_calls.add(new Object[] { st, refSeq, groupRef});
+          combineAnnotation_calls.add(new Object[]
+          { st, refSeq, groupRef });
           modified = true;
           continue;
         }
@@ -731,7 +750,8 @@ public class AnnotationFile
         else if (token.equalsIgnoreCase(GRAPHLINE))
         {
           // resolve at end
-          deferredAnnotation_calls.add(new Object[] { GRAPHLINE, st, refSeq, groupRef});
+          deferredAnnotation_calls.add(new Object[]
+          { GRAPHLINE, st, refSeq, groupRef });
           modified = true;
           continue;
         }
@@ -791,7 +811,7 @@ public class AnnotationFile
         else if (token.equalsIgnoreCase("SEQUENCE_GROUP"))
         {
           addGroup(al, st);
-          modified=true;
+          modified = true;
           continue;
         }
 
@@ -936,7 +956,7 @@ public class AnnotationFile
         modified = true;
       }
       // Resolve the groupRefs
-      Hashtable <String,SequenceGroup> groupRefLookup=new Hashtable<String,SequenceGroup>();
+      Hashtable<String, SequenceGroup> groupRefLookup = new Hashtable<String, SequenceGroup>();
       Enumeration en = groupRefRows.keys();
 
       while (en.hasMoreElements())
@@ -960,7 +980,7 @@ public class AnnotationFile
             {
               matched = true;
               Vector rowset = (Vector) groupRefRows.get(groupRef);
-              groupRefLookup.put(groupRef,  theGroup);
+              groupRefLookup.put(groupRef, theGroup);
               if (rowset != null && rowset.size() > 0)
               {
                 AlignmentAnnotation alan = null;
@@ -988,20 +1008,25 @@ public class AnnotationFile
                                                            // group, or null
           );
         }
-      }      
+      }
 
       // finally, combine all the annotation rows within each context.
       /**
-       * number of combine statements in this annotation file. Used to create new groups for combined annotation graphs without disturbing existing ones
+       * number of combine statements in this annotation file. Used to create
+       * new groups for combined annotation graphs without disturbing existing
+       * ones
        */
       int combinecount = 0;
-      for (Object[] _combine_args:combineAnnotation_calls) {
-        combineAnnotations(al, 
+      for (Object[] _combine_args : combineAnnotation_calls)
+      {
+        combineAnnotations(al,
                 ++combinecount,
                 (StringTokenizer) _combine_args[0], // st
                 (SequenceI) _combine_args[1], // refSeq
-                (_combine_args[2]==null) ? null : groupRefLookup.get((String)_combine_args[2]) // the reference group, or null
-                );
+                (_combine_args[2] == null) ? null : groupRefLookup
+                        .get((String) _combine_args[2]) // the reference group,
+                                                        // or null
+        );
       }
     }
     return modified;
@@ -1159,31 +1184,35 @@ public class AnnotationFile
     }
   }
 
-  void combineAnnotations(AlignmentI al, int combineCount, StringTokenizer st, SequenceI seqRef, SequenceGroup groupRef)
+  void combineAnnotations(AlignmentI al, int combineCount,
+          StringTokenizer st, SequenceI seqRef, SequenceGroup groupRef)
   {
     String group = st.nextToken();
     // First make sure we are not overwriting the graphIndex
-    int graphGroup=0;
+    int graphGroup = 0;
     if (al.getAlignmentAnnotation() != null)
     {
       for (int i = 0; i < al.getAlignmentAnnotation().length; i++)
       {
         AlignmentAnnotation aa = al.getAlignmentAnnotation()[i];
-        
-        if (aa.graphGroup>graphGroup)
+
+        if (aa.graphGroup > graphGroup)
         {
           // try to number graphGroups in order of occurence.
-          graphGroup=aa.graphGroup+1;
+          graphGroup = aa.graphGroup + 1;
         }
-        if (aa.sequenceRef==seqRef && aa.groupRef==groupRef && aa.label.equalsIgnoreCase(group))
+        if (aa.sequenceRef == seqRef && aa.groupRef == groupRef
+                && aa.label.equalsIgnoreCase(group))
         {
-          if (aa.graphGroup>-1)
+          if (aa.graphGroup > -1)
           {
             graphGroup = aa.graphGroup;
-          } else {
+          }
+          else
+          {
             if (graphGroup <= combineCount)
             {
-              graphGroup=combineCount+1;
+              graphGroup = combineCount + 1;
             }
             aa.graphGroup = graphGroup;
           }
@@ -1198,7 +1227,8 @@ public class AnnotationFile
         for (int i = 0; i < al.getAlignmentAnnotation().length; i++)
         {
           AlignmentAnnotation aa = al.getAlignmentAnnotation()[i];
-          if (aa.sequenceRef==seqRef && aa.groupRef==groupRef && aa.label.equalsIgnoreCase(group))
+          if (aa.sequenceRef == seqRef && aa.groupRef == groupRef
+                  && aa.label.equalsIgnoreCase(group))
           {
             aa.graphGroup = graphGroup;
             break;
@@ -1213,7 +1243,8 @@ public class AnnotationFile
     }
   }
 
-  void addLine(AlignmentI al, StringTokenizer st, SequenceI seqRef, SequenceGroup groupRef)
+  void addLine(AlignmentI al, StringTokenizer st, SequenceI seqRef,
+          SequenceGroup groupRef)
   {
     String group = st.nextToken();
     AlignmentAnnotation annotation = null, alannot[] = al
@@ -1230,7 +1261,9 @@ public class AnnotationFile
     {
       for (int i = 0; i < alannot.length; i++)
       {
-        if (alannot[i].label.equalsIgnoreCase(group) && (seqRef==null || alannot[i].sequenceRef==seqRef) && (groupRef==null || alannot[i].groupRef==groupRef))
+        if (alannot[i].label.equalsIgnoreCase(group)
+                && (seqRef == null || alannot[i].sequenceRef == seqRef)
+                && (groupRef == null || alannot[i].groupRef == groupRef))
         {
           alannot[i].setThreshold(new GraphLine(value, label, colour));
         }
index 6ae3a37..ed49d5e 100755 (executable)
@@ -1,34 +1,42 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
- * 
+ *
  * This file is part of Jalview.
- * 
+ *
  * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *
+ * Jalview is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR
  * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io;
 
+import jalview.api.AlignViewportI;
+import jalview.datamodel.Alignment;
+import jalview.datamodel.AlignmentAnnotation;
+import jalview.datamodel.AlignmentI;
+import jalview.datamodel.AlignmentView;
+import jalview.util.MessageManager;
+
 import java.io.File;
 import java.io.InputStream;
-
-import jalview.datamodel.*;
+import java.util.List;
 
 /**
  * A low level class for alignment and feature IO with alignment formatting
  * methods used by both applet and application for generating flat alignment
  * files. It also holds the lists of magic format names that the applet and
  * application will allow the user to read or write files with.
- * 
+ *
  * @author $author$
  * @version $Revision$
  */
@@ -38,51 +46,48 @@ public class AppletFormatAdapter
    * List of valid format strings used in the isValidFormat method
    */
   public static final String[] READABLE_FORMATS = new String[]
-  { "BLC", "CLUSTAL", "FASTA", "MSF", "PileUp", "PIR", "PFAM", "STH",
-      "PDB", "JnetFile" }; // , "SimpleBLAST" };
+          { "BLC", "CLUSTAL", "FASTA", "MSF", "PileUp", "PIR", "PFAM", "STH",
+    "PDB", "JnetFile", "RNAML", PhylipFile.FILE_DESC }; // , "SimpleBLAST" };
 
   /**
    * List of valid format strings for use by callers of the formatSequences
    * method
    */
   public static final String[] WRITEABLE_FORMATS = new String[]
-  { "BLC", "CLUSTAL", "FASTA", "MSF", "PileUp", "PIR", "PFAM", "STH",
-      "AMSA" };
+          { "BLC", "CLUSTAL", "FASTA", "MSF", "PileUp", "PIR", "PFAM", "AMSA",
+    "STH", PhylipFile.FILE_DESC };
 
   /**
    * List of extensions corresponding to file format types in WRITABLE_FNAMES
    * that are writable by the application.
    */
   public static final String[] WRITABLE_EXTENSIONS = new String[]
-  { "fa, fasta, mfa, fastq", "aln", "pfam", "msf", "pir", "blc", "amsa", "jvp",
-      "sto,stk", "jar" };
+          { "fa, fasta, mfa, fastq", "aln", "pfam", "msf", "pir", "blc", "amsa",
+    "jvp", "sto,stk", "jar", PhylipFile.FILE_EXT };
 
   /**
    * List of writable formats by the application. Order must correspond with the
    * WRITABLE_EXTENSIONS list of formats.
    */
   public static final String[] WRITABLE_FNAMES = new String[]
-  { "Fasta", "Clustal", "PFAM", "MSF", "PIR", "BLC", "AMSA", "Jalview",
-      "STH", "Jalview" };
+          { "Fasta", "Clustal", "PFAM", "MSF", "PIR", "BLC", "AMSA", "Jalview",
+    "STH", "Jalview", PhylipFile.FILE_DESC };
 
   /**
    * List of readable format file extensions by application in order
    * corresponding to READABLE_FNAMES
    */
   public static final String[] READABLE_EXTENSIONS = new String[]
-  { "fa, fasta, mfa, fastq", "aln", "pfam", "msf", "pir", "blc", "amsa", "jar,jvp",
-      "sto,stk" }; // ,
-
-  // ".blast"
-  // };
+          { "fa, fasta, mfa, fastq", "aln", "pfam", "msf", "pir", "blc", "amsa",
+    "jar,jvp", "sto,stk", "xml,rnaml", PhylipFile.FILE_EXT }; // ".blast"
 
   /**
    * List of readable formats by application in order corresponding to
    * READABLE_EXTENSIONS
    */
   public static final String[] READABLE_FNAMES = new String[]
-  { "Fasta", "Clustal", "PFAM", "MSF", "PIR", "BLC", "AMSA", "Jalview",
-      "Stockholm" };// ,
+          { "Fasta", "Clustal", "PFAM", "MSF", "PIR", "BLC", "AMSA", "Jalview",
+    "Stockholm", "RNAML", PhylipFile.FILE_DESC };// ,
 
   // "SimpleBLAST"
   // };
@@ -94,7 +99,7 @@ public class AppletFormatAdapter
           + prettyPrint(READABLE_FORMATS);
 
   /**
-   * 
+   *
    * @param els
    * @return grammatically correct(ish) list consisting of els elements.
    */
@@ -139,7 +144,7 @@ public class AppletFormatAdapter
 
   /**
    * check that this format is valid for reading
-   * 
+   *
    * @param format
    *          a format string to be compared with READABLE_FORMATS
    * @return true if format is readable
@@ -151,7 +156,7 @@ public class AppletFormatAdapter
 
   /**
    * validate format is valid for IO
-   * 
+   *
    * @param format
    *          a format string to be compared with either READABLE_FORMATS or
    *          WRITEABLE_FORMATS
@@ -165,9 +170,9 @@ public class AppletFormatAdapter
     boolean valid = false;
     String[] format_list = (forwriting) ? WRITEABLE_FORMATS
             : READABLE_FORMATS;
-    for (int i = 0; i < format_list.length; i++)
+    for (String element : format_list)
     {
-      if (format_list[i].equalsIgnoreCase(format))
+      if (element.equalsIgnoreCase(format))
       {
         return true;
       }
@@ -178,14 +183,14 @@ public class AppletFormatAdapter
 
   /**
    * Constructs the correct filetype parser for a characterised datasource
-   * 
+   *
    * @param inFile
    *          data/data location
    * @param type
    *          type of datasource
    * @param format
    *          File format of data provided by datasource
-   * 
+   *
    * @return DOCUMENT ME!
    */
   public Alignment readFile(String inFile, String type, String format)
@@ -232,6 +237,8 @@ public class AppletFormatAdapter
       else if (format.equals("PDB"))
       {
         afile = new MCview.PDBfile(inFile, type);
+        // Uncomment to test Jmol data based PDB processing: JAL-1213
+        // afile = new jalview.ext.jmol.PDBFileWithJmol(inFile, type);
       }
       else if (format.equals("STH"))
       {
@@ -241,6 +248,14 @@ public class AppletFormatAdapter
       {
         afile = new SimpleBlastFile(inFile, type);
       }
+      else if (format.equals(PhylipFile.FILE_DESC))
+      {
+        afile = new PhylipFile(inFile, type);
+      }
+      else if (format.equals("RNAML"))
+      {
+        afile = new RnamlFile(inFile, type);
+      }
 
       Alignment al = new Alignment(afile.getSeqsAsArray());
 
@@ -288,15 +303,15 @@ public class AppletFormatAdapter
 
   /**
    * Constructs the correct filetype parser for an already open datasource
-   * 
+   *
    * @param source
    *          an existing datasource
    * @param format
    *          File format of data that will be provided by datasource
-   * 
+   *
    * @return DOCUMENT ME!
    */
-  public Alignment readFromFile(FileParse source, String format)
+  public AlignmentI readFromFile(FileParse source, String format)
           throws java.io.IOException
   {
     // TODO: generalise mapping between format string and io. class instances
@@ -348,11 +363,18 @@ public class AppletFormatAdapter
       {
         afile = new StockholmFile(source);
       }
+      else if (format.equals("RNAML"))
+      {
+        afile = new RnamlFile(source);
+      }
       else if (format.equals("SimpleBLAST"))
       {
         afile = new SimpleBlastFile(source);
       }
-
+      else if (format.equals(PhylipFile.FILE_DESC))
+      {
+        afile = new PhylipFile(source);
+      }
       Alignment al = new Alignment(afile.getSeqsAsArray());
 
       afile.addAnnotations(al);
@@ -397,11 +419,40 @@ public class AppletFormatAdapter
     }
   }
 
+
+  /**
+   * create an alignment flatfile from a Jalview alignment view
+   * @param format
+   * @param jvsuffix
+   * @param av
+   * @param selectedOnly
+   * @return flatfile in a string
+   */
+  public String formatSequences(String format, boolean jvsuffix,
+          AlignViewportI av, boolean selectedOnly)
+  {
+
+    AlignmentView selvew = av.getAlignmentView(selectedOnly, false);
+    AlignmentI aselview = selvew.getVisibleAlignment(av
+            .getGapCharacter());
+    List<AlignmentAnnotation> ala = (av
+            .getVisibleAlignmentAnnotation(selectedOnly));
+    if (ala != null)
+    {
+      for (AlignmentAnnotation aa : ala)
+      {
+        aselview.addAnnotation(aa);
+      }
+    }
+
+    return formatSequences(format, aselview, jvsuffix);
+  }
+
   /**
    * Construct an output class for an alignment in a particular filetype TODO:
    * allow caller to detect errors and warnings encountered when generating
    * output
-   * 
+   *
    * @param format
    *          string name of alignment format
    * @param alignment
@@ -409,7 +460,7 @@ public class AppletFormatAdapter
    * @param jvsuffix
    *          passed to AlnFile class controls whether /START-END is added to
    *          sequence names
-   * 
+   *
    * @return alignment flat file contents
    */
   public String formatSequences(String format, AlignmentI alignment,
@@ -455,10 +506,18 @@ public class AppletFormatAdapter
       {
         afile = new AMSAFile(alignment);
       }
+      else if (format.equalsIgnoreCase(PhylipFile.FILE_DESC))
+      {
+        afile = new PhylipFile();
+      }
+      else if (format.equalsIgnoreCase("RNAML"))
+      {
+        afile = new RnamlFile();
+      }
+
       else
       {
-        throw new Exception(
-                "Implementation error: Unknown file format string");
+        throw new Exception(MessageManager.getString("error.implementation_error_unknown_file_format_string"));
       }
       afile.setNewlineString(newline);
       afile.addJVSuffix(jvsuffix);
@@ -506,47 +565,43 @@ public class AppletFormatAdapter
         {
           System.out.println("Reading file: " + f);
           AppletFormatAdapter afa = new AppletFormatAdapter();
-          String fName = f.getName();
+          Runtime r = Runtime.getRuntime();
+          System.gc();
+          long memf = -r.totalMemory() + r.freeMemory();
+          long t1 = -System.currentTimeMillis();
+          Alignment al = afa.readFile(args[i], FILE,
+                  new IdentifyFile().Identify(args[i], FILE));
+          t1 += System.currentTimeMillis();
+          System.gc();
+          memf += r.totalMemory() - r.freeMemory();
+          if (al != null)
           {
-            Runtime r = Runtime.getRuntime();
-            System.gc();
-            long memf = -r.totalMemory() + r.freeMemory();
-            long t1 = -System.currentTimeMillis();
-            Alignment al = afa.readFile(args[i], FILE,
-                    new IdentifyFile().Identify(args[i], FILE));
-            t1 += System.currentTimeMillis();
-            System.gc();
-            memf += r.totalMemory() - r.freeMemory();
-            if (al != null)
+            System.out.println("Alignment contains " + al.getHeight()
+                    + " sequences and " + al.getWidth() + " columns.");
+            try
             {
-              System.out.println("Alignment contains " + al.getHeight()
-                      + " sequences and " + al.getWidth() + " columns.");
-              try
-              {
-                System.out.println(new AppletFormatAdapter()
-                        .formatSequences("FASTA", al, true));
-              } catch (Exception e)
-              {
-                System.err
-                        .println("Couln't format the alignment for output as a FASTA file.");
-                e.printStackTrace(System.err);
-              }
-            }
-            else
+              System.out.println(new AppletFormatAdapter().formatSequences(
+                      "FASTA", al, true));
+            } catch (Exception e)
             {
-              System.out.println("Couldn't read alignment");
+              System.err
+              .println("Couln't format the alignment for output as a FASTA file.");
+              e.printStackTrace(System.err);
             }
-            System.out.println("Read took " + (t1 / 1000.0) + " seconds.");
-            System.out
-                    .println("Difference between free memory now and before is "
-                            + (memf / (1024.0 * 1024.0) * 1.0) + " MB");
           }
+          else
+          {
+            System.out.println("Couldn't read alignment");
+          }
+          System.out.println("Read took " + (t1 / 1000.0) + " seconds.");
+          System.out
+          .println("Difference between free memory now and before is "
+                  + (memf / (1024.0 * 1024.0) * 1.0) + " MB");
         } catch (Exception e)
         {
           System.err.println("Exception when dealing with " + i
                   + "'th argument: " + args[i] + "\n" + e);
         }
-
       }
       else
       {
@@ -560,7 +615,7 @@ public class AppletFormatAdapter
   /**
    * try to discover how to access the given file as a valid datasource that
    * will be identified as the given type.
-   * 
+   *
    * @param file
    * @param format
    * @return protocol that yields the data parsable as the given type
@@ -607,7 +662,7 @@ public class AppletFormatAdapter
     } catch (Exception ex)
     {
       System.err
-              .println("Exception checking resources: " + file + " " + ex);
+      .println("Exception checking resources: " + file + " " + ex);
     }
 
     if (file.indexOf("://") > -1)
@@ -709,7 +764,7 @@ public class AppletFormatAdapter
           if (debug)
           {
             System.out
-                    .println("File deemed not accessible via " + protocol);
+            .println("File deemed not accessible via " + protocol);
           }
           fp.close();
           return null;
@@ -727,5 +782,4 @@ public class AppletFormatAdapter
     }
     return null;
   }
-
 }
index 6ce0d61..66f9d8e 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io;
index b7bfacc..7c8fb9b 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io;
index b45e908..34f25dd 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io;
index c29294a..39c3143 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io;
index d8890af..6e5de81 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io;
@@ -76,7 +78,7 @@ public class FastaFile extends AlignFile
     StringBuffer sb = new StringBuffer();
     boolean firstLine = true;
 
-    String line,uline;
+    String line, uline;
     Sequence seq = null;
 
     boolean annotation = false;
@@ -138,23 +140,24 @@ public class FastaFile extends AlignFile
       seqs.addElement(seq);
     }
   }
+
   private AlignmentAnnotation makeAnnotation(SequenceI seq, StringBuffer sb)
   {
     Annotation[] anots = new Annotation[sb.length()];
     char cb;
-    for (int i=0;i<anots.length;i++)
+    for (int i = 0; i < anots.length; i++)
     {
       char cn = sb.charAt(i);
       if (cn != ' ')
       {
-        anots[i] = new Annotation(""+cn, null,
-              ' ', Float.NaN);
+        anots[i] = new Annotation("" + cn, null, ' ', Float.NaN);
       }
     }
     AlignmentAnnotation aa = new AlignmentAnnotation(seq.getName()
             .substring(2), seq.getDescription(), anots);
     return aa;
   }
+
   /**
    * called by AppletFormatAdapter to generate an annotated alignment, rather
    * than bare sequences.
index 0c8e226..87b829f 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io;
@@ -130,7 +132,7 @@ public class FeaturesFile extends AlignFile
   }
 
   /**
-   * /** Parse GFF or sequence features file
+   * Parse GFF or sequence features file
    * 
    * @param align
    *          - alignment/dataset containing sequences that are to be annotated
@@ -607,7 +609,6 @@ public class FeaturesFile extends AlignFile
       resetMatcher();
     } catch (Exception ex)
     {
-      System.out.println(line);
       System.out.println("Error parsing feature file: " + ex + "\n" + line);
       ex.printStackTrace(System.err);
       resetMatcher();
index b578724..0f94efa 100755 (executable)
@@ -1,30 +1,37 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io;
 
-import java.util.*;
+import jalview.datamodel.AlignmentI;
+import jalview.gui.AlignFrame;
+import jalview.gui.AlignViewport;
+import jalview.gui.Desktop;
+import jalview.gui.Jalview2XML;
 
-import javax.swing.*;
+import java.util.StringTokenizer;
+import java.util.Vector;
 
-import jalview.datamodel.*;
-import jalview.gui.*;
 import jalview.util.MessageManager;
+import javax.swing.JOptionPane;
+import javax.swing.SwingUtilities;
 
 public class FileLoader implements Runnable
 {
@@ -254,7 +261,7 @@ public class FileLoader implements Runnable
         // load
       }
       loadtime = -System.currentTimeMillis();
-      Alignment al = null;
+      AlignmentI al = null;
 
       if (format.equalsIgnoreCase("Jalview"))
       {
@@ -319,15 +326,19 @@ public class FileLoader implements Runnable
             alignFrame = new AlignFrame(al, AlignFrame.DEFAULT_WIDTH,
                     AlignFrame.DEFAULT_HEIGHT);
 
-            alignFrame.statusBar.setText(MessageManager.formatMessage("label.successfully_loaded_file", new String[]{title}));
+            alignFrame.statusBar.setText(MessageManager.formatMessage(
+                    "label.successfully_loaded_file", new String[]
+                    { title }));
 
             if (!protocol.equals(AppletFormatAdapter.PASTE))
               alignFrame.setFileName(file, format);
             if (raiseGUI)
             {
               // add the window to the GUI
-              // note - this actually should happen regardless of raiseGUI status in Jalview 3
-              // TODO: define 'virtual desktop' for benefit of headless scripts that perform queries to find the 'current working alignment'
+              // note - this actually should happen regardless of raiseGUI
+              // status in Jalview 3
+              // TODO: define 'virtual desktop' for benefit of headless scripts
+              // that perform queries to find the 'current working alignment'
               Desktop.addInternalFrame(alignFrame, title,
                       AlignFrame.DEFAULT_WIDTH, AlignFrame.DEFAULT_HEIGHT);
             }
@@ -357,7 +368,8 @@ public class FileLoader implements Runnable
               public void run()
               {
                 JOptionPane.showInternalMessageDialog(Desktop.desktop,
-                        errorMessage, MessageManager.getString("label.error_loading_file"),
+                        errorMessage, MessageManager
+                                .getString("label.error_loading_file"),
                         JOptionPane.WARNING_MESSAGE);
               }
             });
@@ -382,8 +394,10 @@ public class FileLoader implements Runnable
           public void run()
           {
             javax.swing.JOptionPane.showInternalMessageDialog(
-                    Desktop.desktop, MessageManager.formatMessage("label.problems_opening_file", new String[]{file}),
-                    MessageManager.getString("label.file_open_error"),
+                    Desktop.desktop, MessageManager.formatMessage(
+                            "label.problems_opening_file", new String[]
+                            { file }), MessageManager
+                            .getString("label.file_open_error"),
                     javax.swing.JOptionPane.WARNING_MESSAGE);
           }
         });
@@ -403,11 +417,8 @@ public class FileLoader implements Runnable
             javax.swing.JOptionPane
                     .showInternalMessageDialog(
                             Desktop.desktop,
-                            "Out of memory loading file "
-                                    + file
-                                    + "!!"
-                                    + "\nSee help files for increasing Java Virtual Machine memory.",
-                            "Out of memory",
+                            MessageManager.formatMessage("warn.out_of_memory_loading_file", new String[]{file}),
+                            MessageManager.getString("label.out_of_memory"),
                             javax.swing.JOptionPane.WARNING_MESSAGE);
           }
         });
index b52fdfb..8e9a49c 100755 (executable)
@@ -1,23 +1,27 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io;
 
+import jalview.util.MessageManager;
+
 import java.io.*;
 import java.net.*;
 import java.util.zip.GZIPInputStream;
@@ -48,7 +52,7 @@ public class FileParse
 
   public void setNewlineString(String nl)
   {
-    newline = nl;
+      newline = nl;
   }
 
   public String getNewlineString()
@@ -92,8 +96,7 @@ public class FileParse
   {
     if (from == null)
     {
-      throw new Error(
-              "Implementation error. Null FileParse in copy constructor");
+      throw new Error(MessageManager.getString("error.implementation_error_null_fileparse"));
     }
     if (from == this)
       return;
@@ -158,45 +161,55 @@ public class FileParse
         }
         ;
       }
-      
+
       dataIn = new BufferedReader(new FileReader(fileStr));
       dataName = fileStr;
     }
     return error;
   }
-  private BufferedReader tryAsGzipSource(InputStream inputStream) throws Exception
+
+  private BufferedReader tryAsGzipSource(InputStream inputStream)
+          throws Exception
   {
-    BufferedReader inData = new BufferedReader(new InputStreamReader(new GZIPInputStream(inputStream)));
+    BufferedReader inData = new BufferedReader(new InputStreamReader(
+            new GZIPInputStream(inputStream)));
     inData.mark(2048);
     inData.read();
     inData.reset();
     return inData;
   }
+
   private boolean checkURLSource(String fileStr) throws IOException,
           MalformedURLException
   {
     errormessage = "URL NOT FOUND";
     URL url = new URL(fileStr);
     //
-    // GZIPInputStream code borrowed from Aquaria (soon to be open sourced) via Kenny Sabir
-    Exception e=null;
-    if (fileStr.toLowerCase().endsWith(".gz")) {
-      try {
-          InputStream inputStream = url.openStream();
-          dataIn = tryAsGzipSource(inputStream);
-          dataName = fileStr;
-          return false;
-      } catch (Exception ex) {
-        e=ex;
+    // GZIPInputStream code borrowed from Aquaria (soon to be open sourced) via
+    // Kenny Sabir
+    Exception e = null;
+    if (fileStr.toLowerCase().endsWith(".gz"))
+    {
+      try
+      {
+        InputStream inputStream = url.openStream();
+        dataIn = tryAsGzipSource(inputStream);
+        dataName = fileStr;
+        return false;
+      } catch (Exception ex)
+      {
+        e = ex;
       }
     }
 
-    try {
+    try
+    {
       dataIn = new BufferedReader(new InputStreamReader(url.openStream()));
-    } catch (IOException q) {
-      if (e!=null)
+    } catch (IOException q)
+    {
+      if (e != null)
       {
-        throw new IOException("Failed to resolve GZIP stream", e);
+        throw new IOException(MessageManager.getString("exception.failed_to_resolve_gzip_stream"), e);
       }
       throw q;
     }
@@ -251,14 +264,12 @@ public class FileParse
         {
           if (checkFileSource(suffixLess))
           {
-            throw new IOException("Problem opening " + inFile
-                    + " (also tried " + suffixLess + ") : " + errormessage);
+            throw new IOException(MessageManager.formatMessage("exception.problem_opening_file_also_tried", new String[]{inFile.getName(),suffixLess,errormessage}));
           }
         }
         else
         {
-          throw new IOException("Problem opening " + inFile + " : "
-                  + errormessage);
+          throw new IOException(MessageManager.formatMessage("exception.problem_opening_file", new String[]{inFile.getName(),errormessage}));
         }
       }
     }
@@ -333,8 +344,7 @@ public class FileParse
     if (dataIn == null || error)
     {
       // pass up the reason why we have no source to read from
-      throw new IOException("Failed to read data from source:\n"
-              + errormessage);
+      throw new IOException(MessageManager.formatMessage("exception.failed_to_read_data_from_source", new String[]{errormessage}));
     }
     error = false;
     dataIn.mark(READAHEAD_LIMIT);
@@ -354,7 +364,7 @@ public class FileParse
     }
     else
     {
-      throw new IOException("Unitialised Source Stream");
+      throw new IOException(MessageManager.getString("exception.no_init_source_stream"));
     }
   }
 
@@ -362,7 +372,7 @@ public class FileParse
   {
     if (!error)
       return dataIn.readLine();
-    throw new IOException("Invalid Source Stream:" + errormessage);
+    throw new IOException(MessageManager.formatMessage("exception.invalid_source_stream", new String[]{errormessage}));
   }
 
   public boolean isValid()
@@ -394,8 +404,7 @@ public class FileParse
     }
     else
     {
-      throw new IOException(
-              "Implementation Error: Reset called for invalid source.");
+      throw new IOException(MessageManager.getString("error.implementation_error_reset_called_for_invalid_source"));
     }
   }
 
index bb1608d..c2a317a 100755 (executable)
@@ -1,23 +1,26 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io;
 
+import jalview.api.AlignViewportI;
 import jalview.datamodel.*;
 
 /**
@@ -197,7 +200,8 @@ public class FormatAdapter extends AppletFormatAdapter
     {
       // TODO consider using AlignmentView to prune to visible region
       // TODO prune sequence annotation and groups to visible region
-      // TODO: JAL-1486 - set start and end for output correctly. basically, AlignmentView.getVisibleContigs does this.
+      // TODO: JAL-1486 - set start and end for output correctly. basically,
+      // AlignmentView.getVisibleContigs does this.
       Alignment alv = new Alignment(replaceStrings(
               alignment.getSequencesArray(), omitHidden));
       AlignmentAnnotation[] ala = alignment.getAlignmentAnnotation();
@@ -244,4 +248,16 @@ public class FormatAdapter extends AppletFormatAdapter
     }
     return AppletFormatAdapter.isValidFormat(format, forwriting);
   }
+
+  /**
+   * Create a flat file representation of a given view or selected region of a view
+   * @param format
+   * @param av
+   * @return String containing flat file
+   */
+  public String formatSequences(String format, AlignViewportI av, boolean selectedOnly)
+  {
+    return formatSequences(format, getCacheSuffixDefault(format), av, selectedOnly);
+  }
+
 }
index 4b4dd93..50b07e4 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io;
@@ -51,7 +53,7 @@ public class HTMLOutput
             { "HTML files" }, "HTML files");
 
     chooser.setFileView(new JalviewFileView());
-    chooser.setDialogTitle("Save as HTML");
+    chooser.setDialogTitle(MessageManager.getString("label.save_as_html"));
     chooser.setToolTipText(MessageManager.getString("action.save"));
 
     int value = chooser.showSaveDialog(null);
index 7ed7cbd..9c7478b 100755 (executable)
@@ -1,28 +1,30 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
- * 
+ *
  * This file is part of Jalview.
- * 
+ *
  * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *
+ * Jalview is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR
  * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io;
 
-import java.io.*;
+import java.io.IOException;
 
 /**
  * DOCUMENT ME!
- * 
+ *
  * @author $author$
  * @version $Revision$
  */
@@ -30,10 +32,10 @@ public class IdentifyFile
 {
   /**
    * Identify a datasource's file content.
-   * 
+   *
    * @note Do not use this method for stream sources - create a FileParse object
    *       instead.
-   * 
+   *
    * @param file
    *          DOCUMENT ME!
    * @param protocol
@@ -58,7 +60,9 @@ public class IdentifyFile
       emessage = e.getMessage();
     }
     if (parser != null)
+    {
       return parser.errormessage;
+    }
     return emessage;
   }
 
@@ -71,7 +75,7 @@ public class IdentifyFile
   /**
    * Identify contents of source, closing it or resetting source to start
    * afterwards.
-   * 
+   *
    * @param source
    * @param closeSource
    * @return filetype string
@@ -133,6 +137,13 @@ public class IdentifyFile
           break;
         }
 
+        if ((data.indexOf("<") > -1))
+        {
+          reply = "RNAML";
+
+          break;
+        }
+
         if ((data.length() < 1) || (data.indexOf("#") == 0))
         {
           lineswereskipped = true;
@@ -160,6 +171,7 @@ public class IdentifyFile
 
           break;
         }
+
         else if (data.indexOf(">") > -1)
         {
           // FASTA, PIR file or BLC file
@@ -188,13 +200,16 @@ public class IdentifyFile
               starterm = (data1 != null && data1.indexOf("*") > -1)
                       || (data2 != null && data2.indexOf("*") > -1);
             }
-            if (data2 != null && (c1=data.indexOf("*")) > -1)
+            if (data2 != null && (c1 = data.indexOf("*")) > -1)
             {
-              if (c1==0 && c1 == data2.indexOf("*"))
+              if (c1 == 0 && c1 == data2.indexOf("*"))
               {
                 reply = "BLC";
-              } else {
-                reply = "FASTA"; // possibly a bad choice - may be recognised as PIR 
+              }
+              else
+              {
+                reply = "FASTA"; // possibly a bad choice - may be recognised as
+                // PIR
               }
               // otherwise can still possibly be a PIR file
             }
@@ -254,18 +269,24 @@ public class IdentifyFile
           reply = "PDB";
           break;
         }
+        else if (data.matches("\\s*\\d+\\s+\\d+\\s*"))
+        {
+          reply = PhylipFile.FILE_DESC;
+          break;
+        }
+
         /*
          * // TODO comment out SimpleBLAST identification for Jalview 2.4.1 else
          * if (!lineswereskipped && data.indexOf("BLAST")<4) { reply =
          * "SimpleBLAST"; break;
-         * 
+         *
          * } // end comments for Jalview 2.4.1
          */
         else if (!lineswereskipped && data.charAt(0) != '*'
                 && data.charAt(0) != ' '
                 && data.indexOf(":") < data.indexOf(",")) // &&
-        // data.indexOf(",")<data.indexOf(",",
-        // data.indexOf(",")))
+          // data.indexOf(",")<data.indexOf(",",
+          // data.indexOf(",")))
         {
           // file looks like a concise JNet file
           reply = "JnetFile";
@@ -291,7 +312,7 @@ public class IdentifyFile
     if (length == 0)
     {
       System.err
-              .println("File Identification failed! - Empty file was read.");
+      .println("File Identification failed! - Empty file was read.");
       return "EMPTY DATA FILE";
     }
     return reply;
diff --git a/src/jalview/io/InputStreamParser.java b/src/jalview/io/InputStreamParser.java
new file mode 100644 (file)
index 0000000..b5b5671
--- /dev/null
@@ -0,0 +1,57 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
+package jalview.io;
+
+import java.io.BufferedReader;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.io.Reader;
+
+public class InputStreamParser extends FileParse
+{
+
+  public InputStreamParser(InputStream is, String dataName)
+          throws IOException
+  {
+    super();
+    setDataName(dataName);
+    dataIn = new BufferedReader(new InputStreamReader(is));
+    error = false;
+  }
+
+  public InputStreamParser(Reader isreader, String dataName)
+          throws IOException
+  {
+    super();
+    setDataName(dataName);
+    dataIn = new BufferedReader(isreader);
+    error = false;
+  }
+
+  @Override
+  protected void finalize() throws Throwable
+  {
+    dataIn = null;
+    super.finalize();
+  }
+
+}
index a334b4f..ca74f2c 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 /**
@@ -27,6 +29,7 @@ import java.io.*;
 import java.util.*;
 
 import jalview.datamodel.*;
+import jalview.util.MessageManager;
 
 /**
  * Parser for the JPred/JNet concise format. This is a series of CSV lines, each
@@ -291,9 +294,7 @@ public class JPredFile extends AlignFile
 
       if (maxLength != seq_entries.elementAt(i).toString().length())
       {
-        throw new IOException("JPredConcise: Entry ("
-                + ids.elementAt(i).toString()
-                + ") has an unexpected number of columns");
+        throw new IOException(MessageManager.formatMessage("exception.jpredconcide_entry_has_unexpected_number_of_columns", new String[]{ids.elementAt(i).toString()}));
       }
 
       if ((newSeq.getName().startsWith("QUERY") || newSeq.getName()
@@ -317,9 +318,7 @@ public class JPredFile extends AlignFile
       } catch (Exception e)
       {
         tal = null;
-        IOException ex = new IOException(
-                "Couldn't parse concise annotation for prediction profile.\n"
-                        + e);
+        IOException ex = new IOException(MessageManager.formatMessage("exception.couldnt_parse_concise_annotation_for_prediction", new String[]{e.getMessage()}));
         e.printStackTrace(); // java 1.1 does not have :
                              // ex.setStackTrace(e.getStackTrace());
         throw ex;
index a8aa8d4..df8decf 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
- * 
+ *
  * This file is part of Jalview.
- * 
+ *
  * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *
+ * Jalview is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR
  * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 //////////////////////////////////////////////////////////////////
@@ -21,21 +23,31 @@ package jalview.io;
 
 import jalview.util.MessageManager;
 
-import java.io.*;
-import java.util.*;
-
-import java.awt.*;
-import java.awt.event.*;
-import javax.swing.*;
+import java.awt.Component;
+import java.awt.Dimension;
+import java.awt.EventQueue;
+import java.awt.HeadlessException;
+import java.awt.event.MouseAdapter;
+import java.awt.event.MouseEvent;
+import java.io.File;
+import java.util.StringTokenizer;
+import java.util.Vector;
+
+import javax.swing.DefaultListCellRenderer;
+import javax.swing.JFileChooser;
+import javax.swing.JList;
+import javax.swing.JOptionPane;
+import javax.swing.JPanel;
+import javax.swing.JScrollPane;
 
 /**
  * Enhanced file chooser dialog box.
- * 
+ *
  * NOTE: bug on Windows systems when filechooser opened on directory to view
  * files with colons in title.
- * 
+ *
  * @author AMW
- * 
+ *
  */
 public class JalviewFileChooser extends JFileChooser
 {
@@ -102,6 +114,7 @@ public class JalviewFileChooser extends JFileChooser
     setAccessory(new RecentlyOpened());
   }
 
+  @Override
   public void setFileFilter(javax.swing.filechooser.FileFilter filter)
   {
     super.setFileFilter(filter);
@@ -120,6 +133,7 @@ public class JalviewFileChooser extends JFileChooser
 
         EventQueue.invokeLater(new Thread()
         {
+          @Override
           public void run()
           {
             String currentName = ui.getFileName();
@@ -174,10 +188,15 @@ public class JalviewFileChooser extends JFileChooser
     {
       format = "PFAM";
     }
+    else if (format.toUpperCase().startsWith(PhylipFile.FILE_DESC))
+    {
+      format = PhylipFile.FILE_DESC;
+    }
 
     return format;
   }
 
+  @Override
   public int showSaveDialog(Component parent) throws HeadlessException
   {
     this.setAccessory(null);
@@ -203,7 +222,7 @@ public class JalviewFileChooser extends JFileChooser
             && getSelectedFile().exists())
     {
       int confirm = JOptionPane.showConfirmDialog(parent,
-              "Overwrite existing file?", "File exists",
+              MessageManager.getString("label.overwrite_existing_file"), MessageManager.getString("label.file_already_exists"),
               JOptionPane.YES_NO_OPTION);
 
       if (confirm != JOptionPane.YES_OPTION)
@@ -263,13 +282,14 @@ public class JalviewFileChooser extends JFileChooser
 
       list.addMouseListener(new MouseAdapter()
       {
+        @Override
         public void mousePressed(MouseEvent evt)
         {
           recentListSelectionChanged(list.getSelectedValue());
         }
       });
 
-      this.setBorder(new javax.swing.border.TitledBorder("Recently Opened"));
+      this.setBorder(new javax.swing.border.TitledBorder(MessageManager.getString("label.recently_opened")));
 
       final JScrollPane scroller = new JScrollPane(list);
       scroller.setPreferredSize(new Dimension(130, 200));
@@ -277,6 +297,7 @@ public class JalviewFileChooser extends JFileChooser
 
       javax.swing.SwingUtilities.invokeLater(new Runnable()
       {
+        @Override
         public void run()
         {
           scroller.getHorizontalScrollBar().setValue(
index 2f2499b..2a8f078 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io;
index 03d7c59..65581c3 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io;
@@ -30,7 +32,8 @@ public class JalviewFileView extends FileView
 
   static
   {
-    // TODO: these names should come from the FormatAdapter lists for readable/writable extensions 
+    // TODO: these names should come from the FormatAdapter lists for
+    // readable/writable extensions
     alignSuffix.put("amsa", "AMSA file");
     alignSuffix.put("fasta", "Fasta file");
     alignSuffix.put("fa", "Fasta file");
index 8ffcaf7..5c95a3f 100755 (executable)
@@ -1,24 +1,27 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io;
 
 import jalview.datamodel.*;
+import jalview.util.MessageManager;
 
 public class JnetAnnotationMaker
 {
@@ -58,13 +61,12 @@ public class JnetAnnotationMaker
     if ((delMap != null && delMap.length > width)
             || (delMap == null && gapmap.length != width))
     {
-      throw (new Exception("Number of residues in "
-              + (delMap == null ? "" : " mapped ")
-              + "supposed query sequence ('"
-              + al.getSequenceAt(firstSeq).getName() + "'\n"
-              + al.getSequenceAt(firstSeq).getSequenceAsString()
-              + ")\ndiffer from number of prediction sites in prediction ("
-              + width + ")"));
+      throw (new Exception(MessageManager.formatMessage("exception.number_of_residues_in_query_sequence_differ_from_prediction", new String[]{
+                 (delMap == null ? "" : MessageManager.getString("label.mapped")),
+                 al.getSequenceAt(firstSeq).getName(),
+                 al.getSequenceAt(firstSeq).getSequenceAsString(),
+                 Integer.valueOf(width).toString()
+      })));
     }
 
     AlignmentAnnotation annot;
index 9b6fc89..05765e3 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io;
index 09e150c..09077d2 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io;
index fd28956..b0371f9 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io;
index b86c170..f2a29ea 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 // NewickFile.java
@@ -28,6 +30,7 @@ import java.io.*;
 import java.util.StringTokenizer;
 
 import jalview.datamodel.*;
+import jalview.util.MessageManager;
 
 /**
  * Parse a new hanpshire style tree Caveats: NHX files are NOT supported and the
@@ -293,7 +296,7 @@ public class NewickFile extends FileParse
 
     int nextcp = 0;
     int ncp = cp;
-    boolean parsednodename=false;
+    boolean parsednodename = false;
     while (majorsyms.searchFrom(nf, cp) && (Error == null))
     {
       int fcp = majorsyms.matchedFrom();
@@ -359,12 +362,13 @@ public class NewickFile extends FileParse
           nodename = new String(qnodename.stringMatched().substring(1,
                   nl - 1));
           // unpack any escaped colons
-          com.stevesoft.pat.Regex xpandquotes = com.stevesoft.pat.Regex.perlCode("s/''/'/");
+          com.stevesoft.pat.Regex xpandquotes = com.stevesoft.pat.Regex
+                  .perlCode("s/''/'/");
           String widernodename = xpandquotes.replaceAll(nodename);
-          nodename=widernodename;
+          nodename = widernodename;
           // jump to after end of quoted nodename
           nextcp = fcp + nl + 1;
-          parsednodename=true;
+          parsednodename = true;
         }
         else
         {
@@ -433,7 +437,8 @@ public class NewickFile extends FileParse
         com.stevesoft.pat.Regex ndist = new com.stevesoft.pat.Regex(
                 ":([-0-9Ee.+]+)");
 
-        if (!parsednodename && uqnodename.search(fstring)
+        if (!parsednodename
+                && uqnodename.search(fstring)
                 && ((uqnodename.matchedFrom(1) == 0) || (fstring
                         .charAt(uqnodename.matchedFrom(1) - 1) != ':'))) // JBPNote
         // HACK!
@@ -592,7 +597,7 @@ public class NewickFile extends FileParse
         distance = DefDistance;
         bootstrap = DefBootstrap;
         commentString2 = null;
-        parsednodename=false;
+        parsednodename = false;
       }
       if (nextcp == 0)
       {
@@ -607,11 +612,11 @@ public class NewickFile extends FileParse
 
     if (Error != null)
     {
-      throw (new IOException("NewickFile: " + Error + "\n"));
+      throw (new IOException(MessageManager.formatMessage("exception.newfile", new String[]{Error.toString()})));
     }
     if (root == null)
     {
-      throw (new IOException("NewickFile: No Tree read in\n"));
+        throw (new IOException(MessageManager.formatMessage("exception.newfile", new String[]{MessageManager.getString("label.no_tree_read_in")})));
     }
     // THe next line is failing for topali trees - not sure why yet. if
     // (root.right()!=null && root.isDummy())
index 6db8cd4..28f553a 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io;
index 6b617f8..7d4baa2 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io;
@@ -98,7 +100,7 @@ public class PfamFile extends AlignFile
 
     if (noSeqs < 1)
     {
-      throw new IOException("No sequences found (PFAM input)");
+      throw new IOException(MessageManager.getString("exception.pfam_no_sequences_found"));
     }
 
     for (i = 0; i < headers.size(); i++)
diff --git a/src/jalview/io/PhylipFile.java b/src/jalview/io/PhylipFile.java
new file mode 100644 (file)
index 0000000..ce65eea
--- /dev/null
@@ -0,0 +1,320 @@
+/**
+ *
+ */
+package jalview.io;
+
+import jalview.datamodel.Alignment;
+import jalview.datamodel.Sequence;
+import jalview.datamodel.SequenceI;
+
+import java.io.IOException;
+
+/**
+ * <p>
+ * Parser and exporter for PHYLIP file format, as defined <a
+ * href="http://evolution.genetics.washington.edu/phylip/doc/main.html">in the
+ * documentation</a>. The parser imports PHYLIP files in both sequential and
+ * interleaved format, and (currently) exports in interleaved format (using 60
+ * characters per matrix for the sequence).
+ * <p>
+ *
+ * <p>
+ * The following assumptions have been made for input
+ * <ul>
+ * <li>Sequences are expressed as letters, not real numbers with decimal points
+ * separated by blanks (which is a valid option according to the specification)</li>
+ * </ul>
+ *
+ * The following assumptions have been made for output
+ * <ul>
+ * <li>Interleaved format is used, with each matrix consisting of 60 characters;
+ * </li>
+ * <li>a blank line is added between each matrix;</li>
+ * <li>no spacing is added between the sequence characters.</li>
+ * </ul>
+ *
+ *
+ * </p>
+ *
+ * @author David Corsar
+ *
+ *
+ */
+public class PhylipFile extends AlignFile
+{
+
+  // Define file extension and description to save repeating it elsewhere
+  public static final String FILE_EXT = "phy";
+
+  public static final String FILE_DESC = "PHYLIP";
+
+  /**
+   * 
+   * @see {@link AlignFile#AlignFile()}
+   */
+  public PhylipFile()
+  {
+    super();
+  }
+
+  /**
+   * 
+   * @param source
+   * @throws IOException
+   */
+  public PhylipFile(FileParse source) throws IOException
+  {
+    super(source);
+  }
+
+  /**
+   * @param inFile
+   * @param type
+   * @throws IOException
+   * @see {@link AlignFile#AlignFile(FileParse)}
+   */
+  public PhylipFile(String inFile, String type) throws IOException
+  {
+    super(inFile, type);
+  }
+
+  /**
+   * Parses the input source
+   * 
+   * @see {@link AlignFile#parse()}
+   */
+  @Override
+  public void parse() throws IOException
+  {
+    try
+    {
+      // First line should contain number of species and number of
+      // characters, separated by blanks
+      String line = nextLine();
+      String[] lineElements = line.trim().split("\\s+");
+      if (lineElements.length < 2)
+      {
+        throw new IOException(
+                "First line must contain the number of specifies and number of characters");
+      }
+
+      int numberSpecies = Integer.parseInt(lineElements[0]), numberCharacters = Integer
+              .parseInt(lineElements[1]);
+
+      if (numberSpecies <= 0)
+      {
+        // there are no sequences in this file so exit a nothing to
+        // parse
+        return;
+      }
+
+      SequenceI[] sequenceElements = new Sequence[numberSpecies];
+      StringBuffer[] sequences = new StringBuffer[numberSpecies];
+
+      // if file is in sequential format there is only one data matrix,
+      // else there are multiple
+
+      // read the first data matrix
+      for (int i = 0; i < numberSpecies; i++)
+      {
+        line = nextLine();
+        // lines start with the name - a maximum of 10 characters
+        // if less, then padded out or terminated with a tab
+        String potentialName = line.substring(0, 10);
+        int tabIndex = potentialName.indexOf('\t');
+        if (tabIndex == -1)
+        {
+          sequenceElements[i] = parseId(validateName(potentialName));
+          sequences[i] = new StringBuffer(
+                  removeWhitespace(line.substring(10)));
+        }
+        else
+        {
+          sequenceElements[i] = parseId(validateName(potentialName
+                  .substring(0, tabIndex)));
+          sequences[i] = new StringBuffer(
+                  removeWhitespace(line.substring(tabIndex)));
+        }
+      }
+
+      // determine if interleaved
+      if ((sequences[0]).length() != numberCharacters)
+      {
+        // interleaved file, so have to read the remainder
+        int i = 0;
+        for (line = nextLine(); line != null; line = nextLine())
+        {
+          // ignore blank lines, as defined by the specification
+          if (line.length() > 0)
+          {
+            sequences[i++].append(removeWhitespace(line));
+          }
+          // reached end of matrix, so get ready for the next one
+          if (i == sequences.length)
+          {
+            i = 0;
+          }
+        }
+      }
+
+      // file parsed completely, now store sequences
+      for (int i = 0; i < numberSpecies; i++)
+      {
+        // first check sequence is the expected length
+        if (sequences[i].length() != numberCharacters)
+        {
+          throw new IOException(sequenceElements[i].getName()
+                  + " sequence is incorrect length - should be "
+                  + numberCharacters + " but is " + sequences[i].length());
+        }
+        sequenceElements[i].setSequence(sequences[i].toString());
+        seqs.add(sequenceElements[i]);
+      }
+
+      // create an alignment based on the sequences
+      Alignment a = new Alignment(sequenceElements);
+      // add annotations - although comments say addAnnotations
+      // is used by AppletFormatAdapter, it doesn't say other
+      // classes should/can not use it
+      addAnnotations(a);
+
+    } catch (IOException e)
+    {
+      System.err.println("Exception parsing PHYLIP file " + e);
+      e.printStackTrace(System.err);
+      throw e;
+    }
+
+  }
+
+  /**
+   * Removes any whitespace from txt, used to strip and spaces added to
+   * sequences to improve human readability
+   * 
+   * @param txt
+   * @return
+   */
+  private String removeWhitespace(String txt)
+  {
+    return txt.replaceAll("\\s*", "");
+  }
+
+  /**
+   * According to the specification, the name cannot have parentheses, square
+   * brackets, colon, semicolon, comma
+   * 
+   * @param name
+   * @return
+   * @throws IOException
+   */
+  private String validateName(String name) throws IOException
+  {
+    char[] invalidCharacters = new char[]
+    { '(', ')', '[', ']', ':', ';', ',' };
+    for (char c : invalidCharacters)
+    {
+      if (name.indexOf(c) > -1)
+      {
+        throw new IOException("Species name contains illegal character "
+                + c);
+      }
+    }
+    return name;
+  }
+
+  /**
+   * <p>
+   * Prints the seqs in interleaved format, with each matrix consisting of 60
+   * characters; a blank line is added between each matrix; no spacing is added
+   * between the sequence characters.
+   * </p>
+   * 
+   * 
+   * @see {@link AlignFile#print()}
+   */
+  @Override
+  public String print()
+  {
+
+    StringBuffer sb = new StringBuffer(Integer.toString(seqs.size()));
+    sb.append(" ");
+    // if there are no sequences, then define the number of characters as 0
+    sb.append(
+            (seqs.size() > 0) ? Integer
+                    .toString(seqs.get(0).getSequence().length) : "0")
+            .append(newline);
+
+    // Due to how IO is handled, there doesn't appear to be a way to store
+    // if the original file was sequential or interleaved; if there is, then
+    // use that to set the value of the following variable
+    boolean sequential = false;
+
+    // maximum number of columns for each row of interleaved format
+    int numInterleavedColumns = 60;
+
+    int sequenceLength = 0;
+    for (SequenceI s : seqs)
+    {
+
+      // ensure name is only 10 characters
+      String name = s.getName();
+      if (name.length() > 10)
+      {
+        name = name.substring(0, 10);
+      }
+      else
+      {
+        // add padding 10 characters
+        name = String.format("%1$-" + 10 + "s", s.getName());
+      }
+      sb.append(name);
+
+      // sequential has the entire sequence following the name
+      if (sequential)
+      {
+        sb.append(s.getSequence());
+      }
+      else
+      {
+        // Jalview ensures all sequences are of same length so no need
+        // to keep track of min/max length
+        sequenceLength = s.getSequence().length;
+        // interleaved breaks the sequence into chunks for
+        // interleavedColumns characters
+        sb.append(s.getSequence(0,
+                Math.min(numInterleavedColumns, sequenceLength)));
+      }
+      sb.append(newline);
+    }
+
+    // add the remaining matrixes if interleaved and there is something to
+    // add
+    if (!sequential && sequenceLength > numInterleavedColumns)
+    {
+      // determine number of remaining matrixes
+      int numMatrics = sequenceLength / numInterleavedColumns;
+      if ((sequenceLength % numInterleavedColumns) > 0)
+      {
+        numMatrics++;
+      }
+
+      // start i = 1 as first matrix has already been printed
+      for (int i = 1; i < numMatrics; i++)
+      {
+        // add blank line to separate this matrix from previous
+        sb.append(newline);
+        int start = i * numInterleavedColumns;
+        for (SequenceI s : seqs)
+        {
+          sb.append(
+                  s.getSequence(start, Math.min(start
+                          + numInterleavedColumns, sequenceLength)))
+                  .append(newline);
+        }
+      }
+
+    }
+
+    return sb.toString();
+  }
+}
\ No newline at end of file
index 24c4239..2a902b4 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io;
diff --git a/src/jalview/io/RnamlFile.java b/src/jalview/io/RnamlFile.java
new file mode 100644 (file)
index 0000000..d366edc
--- /dev/null
@@ -0,0 +1,216 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
+package jalview.io;
+
+import java.io.BufferedReader;
+import java.io.FileNotFoundException;
+import java.io.FileReader;
+import java.io.IOException;
+import java.util.ArrayList;
+
+import jalview.analysis.SecStrConsensus.SimpleBP;
+import jalview.datamodel.AlignmentAnnotation;
+import jalview.datamodel.Annotation;
+import jalview.datamodel.Sequence;
+import jalview.datamodel.SequenceI;
+import jalview.util.MessageManager;
+
+import fr.orsay.lri.varna.exceptions.ExceptionFileFormatOrSyntax;
+import fr.orsay.lri.varna.exceptions.ExceptionLoadingFailed;
+import fr.orsay.lri.varna.exceptions.ExceptionPermissionDenied;
+import fr.orsay.lri.varna.factories.RNAFactory;
+import fr.orsay.lri.varna.models.rna.RNA;
+
+public class RnamlFile extends AlignFile
+{
+  public String id;
+
+  protected ArrayList<RNA> result;
+
+  public RnamlFile()
+  {
+    super();
+
+  }
+
+  public RnamlFile(String inFile, String type) throws IOException
+  {
+    super(inFile, type);
+
+  }
+
+  public RnamlFile(FileParse source) throws IOException
+  {
+    super(source);
+
+  }
+
+  public BufferedReader CreateReader() throws FileNotFoundException
+  {
+    FileReader fr = null;
+    fr = new FileReader(inFile);
+
+    BufferedReader r = new BufferedReader(fr);
+    return r;
+  }
+
+  /*
+   * (non-Javadoc)
+   * 
+   * @see jalview.io.AlignFile#parse()
+   */
+  public void parse() throws IOException
+  {
+    if (System.getProperty("java.version").indexOf("1.6") > -1
+            || System.getProperty("java.version").indexOf("1.5") > -1)
+    {
+      // patch for 'This parser does not support specification "null" version
+      // "null"' error
+      // this hack ensures we get a properly updated SAXParserFactory on older
+      // JVMs
+      // thanks to Stefan Birkner over at https://coderwall.com/p/kqsrrw
+      System.setProperty("javax.xml.parsers.SAXParserFactory",
+              "com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl");
+    }
+    // rather than lose exception semantics whilst parsing RNAML with VARNA we
+    // wrap the routine and catch all exceptions before passing them up the
+    // chain as an IOException
+    try
+    {
+      _parse();
+    } catch (ExceptionPermissionDenied pdx)
+    {
+      errormessage = MessageManager.formatMessage("exception.rnaml_couldnt_access_datasource", new String[]{pdx.getMessage()});
+      throw new IOException(pdx);
+    } catch (ExceptionLoadingFailed lf)
+    {
+      errormessage = MessageManager.formatMessage("exception.ranml_couldnt_process_data", new String[]{lf.getMessage()});
+      throw new IOException(lf);
+    } catch (ExceptionFileFormatOrSyntax iff)
+    {
+        errormessage = MessageManager.formatMessage("exception.ranml_invalid_file", new String[]{iff.getMessage()});
+      throw new IOException(iff);
+    } catch (Exception x)
+    {
+      error = true;
+      errormessage = MessageManager.formatMessage("exception.ranml_problem_parsing_data", new String[]{x.getMessage()});
+      throw new IOException(errormessage , x);
+    }
+  }
+
+  @SuppressWarnings("unchecked")
+  public void _parse() throws FileNotFoundException,
+          ExceptionPermissionDenied, ExceptionLoadingFailed,
+          ExceptionFileFormatOrSyntax
+  {
+
+    result = RNAFactory.loadSecStrRNAML(getReader());
+
+    ArrayList<ArrayList> allarray = new ArrayList();
+    ArrayList<ArrayList<SimpleBP>> BP = new ArrayList();
+    ArrayList strucinarray = new ArrayList();
+    SequenceI[] seqs = new SequenceI[result.size()];
+
+    for (int i = 0; i < result.size(); i++)
+    {
+
+      RNA current = result.get(i);
+      String rna = current.getStructDBN(true);
+      String seq = current.getSeq();
+      int begin = 1;
+      int end = seq.length();
+
+      id = current.getName();
+      seqs[i] = new Sequence(id, seq, begin, end);
+
+      seqs[i].setEnd(seqs[i].findPosition(seqs[i].getLength()));
+      String[] annot = new String[rna.length()];
+      Annotation[] ann = new Annotation[rna.length()];
+
+      for (int j = 0; j < rna.length(); j++)
+      {
+        annot[j] = "" + rna.charAt(j);
+
+      }
+      for (int k = 0; k < rna.length(); k++)
+      {
+        ann[k] = new Annotation(annot[k], "",
+                jalview.schemes.ResidueProperties.getRNASecStrucState(
+                        annot[k]).charAt(0), 0f);
+      }
+
+      AlignmentAnnotation align = new AlignmentAnnotation("Sec. str.",
+              current.getID(), ann);
+
+      seqs[i].addAlignmentAnnotation(align);
+      seqs[i].setRNA(result.get(i));
+
+      allarray.add(strucinarray);
+
+      annotations.addElement(align);
+      BP.add(align.bps);
+
+    }
+
+    setSeqs(seqs);
+  }
+
+  public static String print(SequenceI[] s)
+  {
+    return "not yet implemented";
+  }
+
+  public String print()
+  {
+    System.out.print("print :");
+    return print(getSeqsAsArray());
+  }
+
+  public ArrayList getRNA()
+  {
+    return result;
+  }
+
+  // public static void main(String[] args) {
+  // Pattern p= Pattern.compile("(.+)[.][^.]+");
+  // Matcher m = p.matcher("toto.xml.zip");
+  // System.out.println(m.matches());
+  // System.out.println(m.group(1));
+  // }
+  /**
+   * make a friendly ID string.
+   * 
+   * @param dataName
+   * @return truncated dataName to after last '/'
+   */
+  private String safeName(String dataName)
+  {
+    int b = 0;
+    while ((b = dataName.indexOf("/")) > -1 && b < dataName.length())
+    {
+      dataName = dataName.substring(b + 1).trim();
+
+    }
+    int e = (dataName.length() - dataName.indexOf(".")) + 1;
+    dataName = dataName.substring(1, e).trim();
+    return dataName;
+  }
+}
index 74cfa86..6fba9c6 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io;
index 70ccb26..d0bf651 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io;
index 9b5a5cd..0a18be0 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 /*
  */
 package jalview.io;
 
-import java.io.*;
-import java.util.*;
-
-import com.stevesoft.pat.*;
-import jalview.datamodel.*;
+import jalview.datamodel.AlignmentI;
+import jalview.datamodel.AlignmentAnnotation;
+import jalview.datamodel.AlignmentI;
+import jalview.datamodel.Annotation;
+import jalview.datamodel.DBRefEntry;
+import jalview.datamodel.Mapping;
+import jalview.datamodel.Sequence;
+import jalview.datamodel.SequenceFeature;
+import jalview.datamodel.SequenceI;
 import jalview.util.Format;
+import jalview.util.MessageManager;
+
+import java.io.BufferedReader;
+import java.io.FileReader;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Enumeration;
+import java.util.Hashtable;
+import java.util.List;
+import java.util.StringTokenizer;
+import java.util.Vector;
+
+import com.stevesoft.pat.Regex;
+
+import fr.orsay.lri.varna.exceptions.ExceptionUnmatchedClosingParentheses;
+import fr.orsay.lri.varna.factories.RNAFactory;
+import fr.orsay.lri.varna.models.rna.RNA;
 
 // import org.apache.log4j.*;
 
@@ -39,12 +62,18 @@ import jalview.util.Format;
  * into Jalview's local representation.
  * 
  * @author bsb at sanger.ac.uk
+ * @author Natasha Shersnev (Dundee, UK) (Stockholm file writer)
+ * @author Lauren Lui (UCSC, USA) (RNA secondary structure annotation import as
+ *         stockholm)
+ * @author Anne Menard (Paris, FR) (VARNA parsing of Stockholm file data)
  * @version 0.3 + jalview mods
  * 
  */
 public class StockholmFile extends AlignFile
 {
   // static Logger logger = Logger.getLogger("jalview.io.StockholmFile");
+  protected ArrayList<RNA> result;
+
   StringBuffer out; // output buffer
 
   AlignmentI al;
@@ -77,6 +106,71 @@ public class StockholmFile extends AlignFile
   }
 
   /**
+   * Parse a file in Stockholm format into Jalview's data model using VARNA
+   * 
+   * @throws IOException
+   *           If there is an error with the input file
+   */
+  public void parse_with_VARNA(java.io.File inFile) throws IOException
+  {
+    FileReader fr = null;
+    fr = new FileReader(inFile);
+
+    BufferedReader r = new BufferedReader(fr);
+    result = null;
+    try
+    {
+      result = RNAFactory.loadSecStrStockholm(r);
+    } catch (ExceptionUnmatchedClosingParentheses umcp)
+    {
+      errormessage = "Unmatched parentheses in annotation. Aborting ("
+              + umcp.getMessage() + ")";
+      throw new IOException(umcp);
+    }
+    // DEBUG System.out.println("this is the secondary scructure:"
+    // +result.size());
+    SequenceI[] seqs = new SequenceI[result.size()];
+    String id = null;
+    for (int i = 0; i < result.size(); i++)
+    {
+      // DEBUG System.err.println("Processing i'th sequence in Stockholm file")
+      RNA current = result.get(i);
+
+      String seq = current.getSeq();
+      String rna = current.getStructDBN(true);
+      // DEBUG System.out.println(seq);
+      // DEBUG System.err.println(rna);
+      int begin = 0;
+      int end = seq.length() - 1;
+      id = safeName(getDataName());
+      seqs[i] = new Sequence(id, seq, begin, end);
+      String[] annot = new String[rna.length()];
+      Annotation[] ann = new Annotation[rna.length()];
+      for (int j = 0; j < rna.length(); j++)
+      {
+        annot[j] = rna.substring(j, j + 1);
+
+      }
+
+      for (int k = 0; k < rna.length(); k++)
+      {
+        ann[k] = new Annotation(annot[k], "",
+                jalview.schemes.ResidueProperties.getRNASecStrucState(
+                        annot[k]).charAt(0), 0f);
+
+      }
+      AlignmentAnnotation align = new AlignmentAnnotation("Sec. str.",
+              current.getID(), ann);
+
+      seqs[i].addAlignmentAnnotation(align);
+      seqs[i].setRNA(result.get(i));
+      this.annotations.addElement(align);
+    }
+    this.setSeqs(seqs);
+
+  }
+
+  /**
    * Parse a file in Stockholm format into Jalview's data model. The file has to
    * be passed at construction time
    * 
@@ -94,22 +188,22 @@ public class StockholmFile extends AlignFile
     Hashtable seqAnn = new Hashtable(); // Sequence related annotations
     Hashtable seqs = new Hashtable();
     Regex p, r, rend, s, x;
-
     // Temporary line for processing RNA annotation
     // String RNAannot = "";
 
     // ------------------ Parsing File ----------------------
     // First, we have to check that this file has STOCKHOLM format, i.e. the
     // first line must match
+
     r = new Regex("# STOCKHOLM ([\\d\\.]+)");
     if (!r.search(nextLine()))
     {
-      throw new IOException(
-              "This file is not in valid STOCKHOLM format: First line does not contain '# STOCKHOLM'");
+      throw new IOException(MessageManager.getString("exception.stockholm_invalid_format"));
     }
     else
     {
       version = r.stringMatched(1);
+
       // logger.debug("Stockholm version: " + version);
     }
 
@@ -147,7 +241,7 @@ public class StockholmFile extends AlignFile
         // End of the alignment, pass stuff back
         this.noSeqs = seqs.size();
 
-        String seqdb,dbsource = null;
+        String seqdb, dbsource = null;
         Regex pf = new Regex("PF[0-9]{5}(.*)"); // Finds AC for Pfam
         Regex rf = new Regex("RF[0-9]{5}(.*)"); // Finds AC for Rfam
         if (getAlignmentProperty("AC") != null)
@@ -205,7 +299,6 @@ public class StockholmFile extends AlignFile
             String desc = (String) accAnnotations.get("DE");
             seqO.setDescription((desc == null) ? "" : desc);
           }
-
           // Add DB References (if any)
           if (accAnnotations != null && accAnnotations.containsKey("DR"))
           {
@@ -225,12 +318,15 @@ public class StockholmFile extends AlignFile
               String dbr = (String) accAnnotations.get("AC");
               if (dbr != null)
               {
-                // we could get very clever here - but for now - just try to guess accession type from source of alignment plus structure of accession
+                // we could get very clever here - but for now - just try to
+                // guess accession type from source of alignment plus structure
+                // of accession
                 guessDatabaseFor(seqO, dbr, dbsource);
-                
+
               }
-            } 
-            // else - do what ?  add the data anyway and prompt the user to specify what references these are ?
+            }
+            // else - do what ? add the data anyway and prompt the user to
+            // specify what references these are ?
           }
 
           Hashtable features = null;
@@ -320,7 +416,7 @@ public class StockholmFile extends AlignFile
         if (!x.search(line))
         {
           // logger.error("Could not parse sequence line: " + line);
-          throw new IOException("Could not parse sequence line: " + line);
+          throw new IOException(MessageManager.formatMessage("exception.couldnt_parse_sequence_line", new String[]{line}));
         }
         String ns = (String) seqs.get(x.stringMatched(1));
         if (ns == null)
@@ -432,7 +528,7 @@ public class StockholmFile extends AlignFile
           }
           else
           {
-            throw new IOException("Error parsing " + line);
+            throw new IOException(MessageManager.formatMessage("exception.error_parsing_line", new String[]{line}));
           }
         }
         else if (annType.equals("GC"))
@@ -528,6 +624,8 @@ public class StockholmFile extends AlignFile
             }
             ns += seq;
             content.put(description, ns);
+
+            // if(type.equals("SS")){
             Hashtable strucAnn;
             if (seqAnn.containsKey(acc))
             {
@@ -540,9 +638,11 @@ public class StockholmFile extends AlignFile
 
             Vector newStruc = new Vector();
             parseAnnotationRow(newStruc, type, ns);
+
             strucAnn.put(type, newStruc);
             seqAnn.put(acc, strucAnn);
           }
+          // }
           else
           {
             System.err
@@ -553,8 +653,7 @@ public class StockholmFile extends AlignFile
         }
         else
         {
-          throw new IOException("Unknown annotation detected: " + annType
-                  + " " + annContent);
+          throw new IOException(MessageManager.formatMessage("exception.unknown_annotation_detected", new String[]{annType,annContent}));
         }
       }
     }
@@ -569,40 +668,49 @@ public class StockholmFile extends AlignFile
   }
 
   /**
-   * Demangle an accession string and guess the originating sequence database for a given sequence
-   * @param seqO sequence to be annotated
-   * @param dbr Accession string for sequence
-   * @param dbsource source database for alignment (PFAM or RFAM)
+   * Demangle an accession string and guess the originating sequence database
+   * for a given sequence
+   * 
+   * @param seqO
+   *          sequence to be annotated
+   * @param dbr
+   *          Accession string for sequence
+   * @param dbsource
+   *          source database for alignment (PFAM or RFAM)
    */
   private void guessDatabaseFor(Sequence seqO, String dbr, String dbsource)
   {
-    DBRefEntry dbrf=null;
-    List<DBRefEntry> dbrs=new ArrayList<DBRefEntry>();
-    String seqdb="Unknown",sdbac=""+dbr;
-    int st=-1,en=-1,p;
-    if ((st=sdbac.indexOf("/"))>-1)
+    DBRefEntry dbrf = null;
+    List<DBRefEntry> dbrs = new ArrayList<DBRefEntry>();
+    String seqdb = "Unknown", sdbac = "" + dbr;
+    int st = -1, en = -1, p;
+    if ((st = sdbac.indexOf("/")) > -1)
     {
-      String num,range=sdbac.substring(st+1);
-      sdbac = sdbac.substring(0,st);
-      if ((p=range.indexOf("-"))>-1)
+      String num, range = sdbac.substring(st + 1);
+      sdbac = sdbac.substring(0, st);
+      if ((p = range.indexOf("-")) > -1)
       {
         p++;
-        if (p<range.length())
+        if (p < range.length())
         {
-        num = range.substring(p).trim();
-        try {
-          en = Integer.parseInt(num);
-        } catch (NumberFormatException x)
-        {
-          // could warn here that index is invalid
-          en = -1;
-        }
+          num = range.substring(p).trim();
+          try
+          {
+            en = Integer.parseInt(num);
+          } catch (NumberFormatException x)
+          {
+            // could warn here that index is invalid
+            en = -1;
+          }
         }
-      } else {
-        p=range.length();
       }
-      num=range.substring(0,p).trim();
-      try {
+      else
+      {
+        p = range.length();
+      }
+      num = range.substring(0, p).trim();
+      try
+      {
         st = Integer.parseInt(num);
       } catch (NumberFormatException x)
       {
@@ -610,47 +718,57 @@ public class StockholmFile extends AlignFile
         st = -1;
       }
     }
-    if (dbsource.equals("PFAM")) {
+    if (dbsource.equals("PFAM"))
+    {
       seqdb = "UNIPROT";
-      if (sdbac.indexOf(".")>-1)
+      if (sdbac.indexOf(".") > -1)
       {
         // strip of last subdomain
-        sdbac = sdbac.substring(0,sdbac.indexOf("."));
-        dbrf = jalview.util.DBRefUtils.parseToDbRef(seqO, seqdb, dbsource, sdbac);
-        if (dbrf!=null)
+        sdbac = sdbac.substring(0, sdbac.indexOf("."));
+        dbrf = jalview.util.DBRefUtils.parseToDbRef(seqO, seqdb, dbsource,
+                sdbac);
+        if (dbrf != null)
         {
           dbrs.add(dbrf);
         }
       }
-      dbrf = jalview.util.DBRefUtils.parseToDbRef(seqO, dbsource, dbsource, dbr);
-      if (dbr!=null)
+      dbrf = jalview.util.DBRefUtils.parseToDbRef(seqO, dbsource, dbsource,
+              dbr);
+      if (dbr != null)
       {
         dbrs.add(dbrf);
       }
-    } else {
-      seqdb = "EMBL"; // total guess - could be ENA, or something else these days
-      if (sdbac.indexOf(".")>-1)
+    }
+    else
+    {
+      seqdb = "EMBL"; // total guess - could be ENA, or something else these
+                      // days
+      if (sdbac.indexOf(".") > -1)
       {
         // strip off last subdomain
-        sdbac = sdbac.substring(0,sdbac.indexOf("."));
-        dbrf = jalview.util.DBRefUtils.parseToDbRef(seqO, seqdb, dbsource, sdbac);
-        if (dbrf!=null)
+        sdbac = sdbac.substring(0, sdbac.indexOf("."));
+        dbrf = jalview.util.DBRefUtils.parseToDbRef(seqO, seqdb, dbsource,
+                sdbac);
+        if (dbrf != null)
         {
           dbrs.add(dbrf);
         }
       }
-      
-      dbrf = jalview.util.DBRefUtils.parseToDbRef(seqO, dbsource, dbsource, dbr);
-      if (dbrf!=null)
+
+      dbrf = jalview.util.DBRefUtils.parseToDbRef(seqO, dbsource, dbsource,
+              dbr);
+      if (dbrf != null)
       {
         dbrs.add(dbrf);
       }
     }
-    if (st!=-1 && en!=-1)
+    if (st != -1 && en != -1)
     {
-      for (DBRefEntry d:dbrs)
+      for (DBRefEntry d : dbrs)
       {
-        jalview.util.MapList mp = new jalview.util.MapList(new int[] { seqO.getStart(),seqO.getEnd()},new int[] { st,en},1,1);
+        jalview.util.MapList mp = new jalview.util.MapList(new int[]
+        { seqO.getStart(), seqO.getEnd() }, new int[]
+        { st, en }, 1, 1);
         jalview.datamodel.Mapping mping = new Mapping(mp);
         d.setMap(mping);
       }
@@ -1009,38 +1127,23 @@ public class StockholmFile extends AlignFile
             + type);
     return key;
   }
+
   /**
-   * //ssline is complete secondary structure line private AlignmentAnnotation
-   * addHelices(Vector annotation, String label, String ssline) {
-   * 
-   * // decide on secondary structure or not. Annotation[] els = new
-   * Annotation[ssline.length()]; for (int i = 0; i < ssline.length(); i++) {
-   * String pos = ssline.substring(i, i + 1); Annotation ann; ann = new
-   * Annotation(pos, "", ' ', 0f); // 0f is 'valid' null - will not
-   * 
-   * ann.secondaryStructure =
-   * jalview.schemes.ResidueProperties.getRNAssState(pos).charAt(0);
-   * 
-   * ann.displayCharacter = "x" + ann.displayCharacter;
-   * 
-   * System.out.println(ann.displayCharacter);
+   * make a friendly ID string.
    * 
-   * els[i] = ann; } AlignmentAnnotation helicesAnnot = null; Enumeration e =
-   * annotation.elements(); while (e.hasMoreElements()) { helicesAnnot =
-   * (AlignmentAnnotation) e.nextElement(); if (helicesAnnot.label.equals(type))
-   * break; helicesAnnot = null; } if (helicesAnnot == null) { helicesAnnot =
-   * new AlignmentAnnotation(type, type, els);
-   * annotation.addElement(helicesAnnot); } else { Annotation[] anns = new
-   * Annotation[helicesAnnot.annotations.length + els.length];
-   * System.arraycopy(helicesAnnot.annotations, 0, anns, 0,
-   * helicesAnnot.annotations.length); System.arraycopy(els, 0, anns,
-   * helicesAnnot.annotations.length, els.length); helicesAnnot.annotations =
-   * anns; }
-   * 
-   * helicesAnnot.features = Rna.GetBasePairs(ssline);
-   * Rna.HelixMap(helicesAnnot.features);
-   * 
-   * 
-   * return helicesAnnot; }
+   * @param dataName
+   * @return truncated dataName to after last '/'
    */
+  private String safeName(String dataName)
+  {
+    int b = 0;
+    while ((b = dataName.indexOf("/")) > -1 && b < dataName.length())
+    {
+      dataName = dataName.substring(b + 1).trim();
+
+    }
+    int e = (dataName.length() - dataName.indexOf(".")) + 1;
+    dataName = dataName.substring(1, e).trim();
+    return dataName;
+  }
 }
index 274f532..d437bd8 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io;
@@ -89,7 +91,6 @@ import java.util.regex.Pattern;
  */
 public class TCoffeeScoreFile extends AlignFile
 {
-
   public TCoffeeScoreFile(String inFile, String type) throws IOException
   {
     super(inFile, type);
@@ -396,8 +397,9 @@ public class TCoffeeScoreFile extends AlignFile
     }
   }
 
-  static Pattern SCORES_WITH_RESIDUE_NUMS = Pattern.compile("^\\d+\\s([^\\s]+)\\s+\\d+$");
-  
+  static Pattern SCORES_WITH_RESIDUE_NUMS = Pattern
+          .compile("^\\d+\\s([^\\s]+)\\s+\\d+$");
+
   /**
    * Read a scores block ihe provided stream.
    * 
@@ -458,10 +460,11 @@ public class TCoffeeScoreFile extends AlignFile
       String val = line.substring(p + 1).trim();
 
       Matcher m = SCORES_WITH_RESIDUE_NUMS.matcher(val);
-      if( m.matches() ) {
-         val = m.group(1);
+      if (m.matches())
+      {
+        val = m.group(1);
       }
-      
+
       result.items.put(id, val);
 
     } while ((line = reader.nextLine()) != null);
@@ -550,8 +553,11 @@ public class TCoffeeScoreFile extends AlignFile
   {
     if (al.getHeight() != getHeight() || al.getWidth() != getWidth())
     {
-      String info = String.format("align w: %s, h: %s; score: w: %s; h: %s ", al.getWidth(), al.getHeight(), getWidth(), getHeight() );
-      warningMessage = "Alignment shape does not match T-Coffee score file shape -- " + info;
+      String info = String.format(
+              "align w: %s, h: %s; score: w: %s; h: %s ", al.getWidth(),
+              al.getHeight(), getWidth(), getHeight());
+      warningMessage = "Alignment shape does not match T-Coffee score file shape -- "
+              + info;
       return false;
     }
     boolean added = false;
index 8d1c275..6293a1b 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io;
@@ -31,6 +33,8 @@ import jalview.io.vamsas.Datasetsequence;
 import jalview.io.vamsas.DatastoreItem;
 import jalview.io.vamsas.DatastoreRegistry;
 import jalview.io.vamsas.Rangetype;
+import jalview.util.MessageManager;
+
 import java.io.IOException;
 import java.util.Enumeration;
 import java.util.HashMap;
@@ -220,8 +224,7 @@ public class VamsasAppDatastore
     {
       Cache.log.debug(
               "Warning? Overwriting existing vamsas id binding for "
-                      + vobj.getVorbaId(), new Exception(
-                      "Overwriting vamsas id binding."));
+                      + vobj.getVorbaId(), new Exception(MessageManager.getString("exception.overwriting_vamsas_id_binding")));
     }
     else if (jv2vobj.containsKey(jvobj)
             && !((VorbaId) jv2vobj.get(jvobj)).equals(vobj.getVorbaId()))
@@ -308,8 +311,7 @@ public class VamsasAppDatastore
                 if (vbound.getV_parent() != null
                         && dataset != vbound.getV_parent())
                 {
-                  throw new Error(
-                          "IMPLEMENTATION ERROR: Cannot map an alignment of sequences from different datasets into a single alignment in the vamsas document.");
+                  throw new Error(MessageManager.getString("error.implementation_error_cannot_map_alignment_sequences"));
                   // This occurs because the dataset for the alignment we are
                   // trying to
                 }
@@ -1471,9 +1473,7 @@ public class VamsasAppDatastore
     {
       // NOTE: this happens if user deletes object in one session then updates
       // from another client
-      throw new Error(
-              "IMPLEMENTATION ERROR: old jalview object is not bound ! ("
-                      + oldjvobject + ")");
+      throw new Error(MessageManager.formatMessage("error.implementation_error_old_jalview_object_not_bound", new String[]{oldjvobject.toString()}));
     }
     if (newjvobject != null)
     {
@@ -2415,8 +2415,7 @@ public class VamsasAppDatastore
       int[] se = null;
       if (dseta.getSegCount() > 0 && dseta.getPosCount() > 0)
       {
-        throw new Error(
-                "Invalid vamsas RangeType - cannot resolve both lists of Pos and Seg from choice!");
+        throw new Error(MessageManager.getString("error.invalid_vamsas_rangetype_cannot_resolve_lists"));
       }
       if (dseta.getSegCount() > 0)
       {
@@ -2474,8 +2473,7 @@ public class VamsasAppDatastore
       int[] se = null;
       if (dseta.getSegCount() > 0 && dseta.getPosCount() > 0)
       {
-        throw new Error(
-                "Invalid vamsas RangeType - cannot resolve both lists of Pos and Seg from choice!");
+          throw new Error(MessageManager.getString("error.invalid_vamsas_rangetype_cannot_resolve_lists"));
       }
       if (dseta.getSegCount() > 0)
       {
@@ -2731,8 +2729,7 @@ public class VamsasAppDatastore
       }
     } catch (Exception e)
     {
-      throw new Exception("Couldn't store sequence mappings for " + title,
-              e);
+      throw new Exception(MessageManager.formatMessage("exception.couldnt_store_sequence_mappings", new String[]{title}),e);
     }
   }
 
index df15b5e..4f0d802 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io;
@@ -58,10 +60,12 @@ public class WSWUBlastClient
   {
     this.ap = ap;
     this.al = al;
-    output.setText(MessageManager.getString("label.wswublast_client_credits"));
+    output.setText(MessageManager
+            .getString("label.wswublast_client_credits"));
 
-    Desktop.addInternalFrame(output,
-            MessageManager.getString("label.blasting_for_unidentified_sequence"), 800, 300);
+    Desktop.addInternalFrame(output, MessageManager
+            .getString("label.blasting_for_unidentified_sequence"), 800,
+            300);
 
     for (int i = 0; i < ids.size(); i++)
     {
@@ -204,8 +208,7 @@ public class WSWUBlastClient
           imageIndex++;
           imageIndex %= 9;
           output.setFrameIcon(imageIcon[imageIndex]);
-          output.setTitle("BLASTing for unidentified sequences - "
-                  + jobsRunning + " jobs running.");
+          output.setTitle(MessageManager.formatMessage("label.blasting_for_unidentified_sequence_jobs_running", new String[]{Integer.valueOf(jobsRunning).toString()}));
         } catch (Exception ex)
         {
         }
index c50c69a..95b434f 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io.packed;
index 40c80a6..69cefce 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io.packed;
index 3130b9e..df1acf1 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io.packed;
index fdfd019..1a1a24f 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io.packed;
index 841d357..6b449ee 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io.vamsas;
index 65ccec1..2a070e8 100644 (file)
@@ -1,25 +1,28 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io.vamsas;
 
 import jalview.bin.Cache;
 import jalview.io.VamsasAppDatastore;
+import jalview.util.MessageManager;
 
 import java.util.Enumeration;
 import java.util.Hashtable;
@@ -129,16 +132,14 @@ public abstract class DatastoreItem
     {
       Cache.log.debug(
               "Warning? Overwriting existing vamsas id binding for "
-                      + vobj.getVorbaId(), new Exception(
-                      "Overwriting vamsas id binding."));
+                      + vobj.getVorbaId(), new Exception(MessageManager.getString("exception.overwriting_vamsas_id_binding")));
     }
     else if (jv2vobj.containsKey(jvobj)
             && !((VorbaId) jv2vobj.get(jvobj)).equals(vobj.getVorbaId()))
     {
       Cache.log.debug(
               "Warning? Overwriting existing jalview object binding for "
-                      + jvobj, new Exception(
-                      "Overwriting jalview object binding."));
+                      + jvobj, new Exception(MessageManager.getString("exception.overwriting_jalview_id_binding")));
     }
     /*
      * Cache.log.error("Attempt to make conflicting object binding! "+vobj+" id "
@@ -188,9 +189,7 @@ public abstract class DatastoreItem
     Object vobject = jv2vobj.remove(oldjvobject);
     if (vobject == null)
     {
-      throw new Error(
-              "IMPLEMENTATION ERROR: old jalview object is not bound ! ("
-                      + oldjvobject + ")");
+      throw new Error(MessageManager.formatMessage("error.implementation_error_old_jalview_object_not_bound", new String[]{oldjvobject.toString()}));
     }
     if (newjvobject != null)
     {
@@ -229,9 +228,8 @@ public abstract class DatastoreItem
     tojalview = true;
     if (jvobj != null && !(boundType.isAssignableFrom(jvobj.getClass())))
     {
-      throw new Error("Implementation Error: Vamsas Document Class "
-              + vobj.getClass() + " should bind to a " + boundType
-              + " (found a " + jvobj.getClass() + ")");
+      throw new Error(MessageManager.formatMessage("error.implementation_error_vamsas_doc_class_should_bind_to_type"
+                       , new String[]{vobj.getClass().toString(),boundType.toString(),jvobj.getClass().toString()}));
     }
     dsReg.registerDsObj(this);
   }
@@ -257,9 +255,8 @@ public abstract class DatastoreItem
     vobj = getjv2vObj(jvobj);
     if (vobj != null && !(boundToType.isAssignableFrom(vobj.getClass())))
     {
-      throw new Error("Implementation Error: Jalview Class "
-              + jvobj2.getClass() + " should bind to a " + boundToType
-              + " (found a " + vobj.getClass() + ")");
+        throw new Error(MessageManager.formatMessage("error.implementation_error_vamsas_doc_class_should_bind_to_type"
+                       , new String[]{jvobj2.getClass().toString(),boundToType.toString(),vobj.getClass().toString()}));
     }
     dsReg.registerDsObj(this);
   }
index 0d76285..732af96 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io.vamsas;
index 0f43bc3..66560b1 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io.vamsas;
index 2c7bfe0..030793d 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io.vamsas;
index fb16f55..3cc977f 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io.vamsas;
@@ -27,6 +29,7 @@ import uk.ac.vamsas.objects.core.Mapped;
 import uk.ac.vamsas.objects.core.RangeType;
 import uk.ac.vamsas.objects.core.Seg;
 import jalview.io.VamsasAppDatastore;
+import jalview.util.MessageManager;
 
 /**
  * Enhances DatastoreItem objects with additional functions to do with RangeType
@@ -73,8 +76,7 @@ public abstract class Rangetype extends DatastoreItem
       int[] se = null;
       if (dseta.getSegCount() > 0 && dseta.getPosCount() > 0)
       {
-        throw new Error(
-                "Invalid vamsas RangeType - cannot resolve both lists of Pos and Seg from choice!");
+        throw new Error(MessageManager.getString("error.invalid_vamsas_rangetype_cannot_resolve_lists"));
       }
       if (dseta.getSegCount() > 0)
       {
@@ -132,8 +134,7 @@ public abstract class Rangetype extends DatastoreItem
       int[] se = null;
       if (dseta.getSegCount() > 0 && dseta.getPosCount() > 0)
       {
-        throw new Error(
-                "Invalid vamsas RangeType - cannot resolve both lists of Pos and Seg from choice!");
+        throw new Error(MessageManager.getString("error.invalid_vamsas_rangetype_cannot_resolve_lists"));
       }
       if (dseta.getSegCount() > 0)
       {
@@ -180,8 +181,7 @@ public abstract class Rangetype extends DatastoreItem
       int[] se = null;
       if (range.getSegCount() > 0 && range.getPosCount() > 0)
       {
-        throw new Error(
-                "Invalid vamsas RangeType - cannot resolve both lists of Pos and Seg from choice!");
+        throw new Error(MessageManager.getString("error.invalid_vamsas_rangetype_cannot_resolve_lists"));
       }
       if (range.getSegCount() > 0)
       {
@@ -297,8 +297,7 @@ public abstract class Rangetype extends DatastoreItem
   {
     if (ml == null)
     {
-      throw new Error(
-              "Implementation error. MapList is null for initMapType.");
+      throw new Error(MessageManager.getString("error.implementation_error_maplist_is_null"));
     }
     maprange.setLocal(new Local());
     maprange.setMapped(new Mapped());
index 9cde411..4eef152 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io.vamsas;
index 5dcf4e8..3878a0a 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io.vamsas;
index 27aacce..dbfaf37 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io.vamsas;
index 34d1d2e..788b28f 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.javascript;
index 6878fac..e200280 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.javascript;
index 9320538..16c01a6 100644 (file)
@@ -1,22 +1,25 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.javascript;
+
 public interface JsCallBack
 {
   public jalview.appletgui.AlignFrame getAlignFrame();
index 7ecd675..d9e1b98 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.javascript;
index 4115a9e..19f7b11 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.javascript;
index 766393e..465a672 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.javascript;
index 6e98f74..e122f21 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.jbgui;
@@ -141,6 +143,8 @@ public class GAlignFrame extends JInternalFrame
 
   protected JRadioButtonMenuItem purinePyrimidineColour = new JRadioButtonMenuItem();
 
+  protected JRadioButtonMenuItem RNAInteractionColour = new JRadioButtonMenuItem();
+
   // protected JRadioButtonMenuItem covariationColour = new
   // JRadioButtonMenuItem();
 
@@ -183,8 +187,9 @@ public class GAlignFrame extends JInternalFrame
   public JCheckBoxMenuItem showSeqFeaturesHeight = new JCheckBoxMenuItem();
 
   JMenuItem deleteGroups = new JMenuItem();
-  
+
   JMenuItem createGroup = new JMenuItem();
+
   JMenuItem unGroup = new JMenuItem();
 
   JMenuItem delete = new JMenuItem();
@@ -242,7 +247,7 @@ public class GAlignFrame extends JInternalFrame
   protected JMenuItem showTranslation = new JMenuItem();
 
   protected JMenuItem extractScores = new JMenuItem();
-  
+
   protected JMenuItem expandAlignment = new JMenuItem();
 
   protected JMenu showProducts = new JMenu();
@@ -411,8 +416,10 @@ public class GAlignFrame extends JInternalFrame
 
               int option = JOptionPane.showInternalConfirmDialog(
                       jalview.gui.Desktop.desktop,
-                      MessageManager.getString("label.remove_from_default_list"),
-                      MessageManager.getString("label.remove_user_defined_colour"),
+                      MessageManager
+                              .getString("label.remove_from_default_list"),
+                      MessageManager
+                              .getString("label.remove_user_defined_colour"),
                       JOptionPane.YES_NO_OPTION);
               if (option == JOptionPane.YES_OPTION)
               {
@@ -460,7 +467,7 @@ public class GAlignFrame extends JInternalFrame
     colours.add(purinePyrimidineColour);
     // colours.add(covariationColour);
     colours.add(tcoffeeColour);
-
+    colours.add(RNAInteractionColour);
     setColourSelected(jalview.bin.Cache
             .getDefault("DEFAULT_COLOUR", "None"));
 
@@ -538,6 +545,11 @@ public class GAlignFrame extends JInternalFrame
         purinePyrimidineColour.setSelected(true);
 
         break;
+
+      case ColourSchemeProperty.RNAINTERACTION:
+        RNAInteractionColour.setSelected(true);
+
+        break;
       /*
        * case ColourSchemeProperty.COVARIATION:
        * covariationColour.setSelected(true);
@@ -589,7 +601,8 @@ public class GAlignFrame extends JInternalFrame
     colourMenu.setText(MessageManager.getString("action.colour"));
     calculateMenu.setText(MessageManager.getString("action.calculate"));
     webService.setText(MessageManager.getString("action.web_service"));
-    selectAllSequenceMenuItem.setText(MessageManager.getString("action.select_all"));
+    selectAllSequenceMenuItem.setText(MessageManager
+            .getString("action.select_all"));
     selectAllSequenceMenuItem.setAccelerator(javax.swing.KeyStroke
             .getKeyStroke(java.awt.event.KeyEvent.VK_A, Toolkit
                     .getDefaultToolkit().getMenuShortcutKeyMask(), false));
@@ -601,7 +614,8 @@ public class GAlignFrame extends JInternalFrame
                 selectAllSequenceMenuItem_actionPerformed(e);
               }
             });
-    deselectAllSequenceMenuItem.setText(MessageManager.getString("action.deselect_all"));
+    deselectAllSequenceMenuItem.setText(MessageManager
+            .getString("action.deselect_all"));
     deselectAllSequenceMenuItem.setAccelerator(javax.swing.KeyStroke
             .getKeyStroke(java.awt.event.KeyEvent.VK_ESCAPE, 0, false));
     deselectAllSequenceMenuItem
@@ -612,7 +626,8 @@ public class GAlignFrame extends JInternalFrame
                 deselectAllSequenceMenuItem_actionPerformed(e);
               }
             });
-    invertSequenceMenuItem.setText(MessageManager.getString("action.invert_sequence_selection"));
+    invertSequenceMenuItem.setText(MessageManager
+            .getString("action.invert_sequence_selection"));
     invertSequenceMenuItem.setAccelerator(javax.swing.KeyStroke
             .getKeyStroke(java.awt.event.KeyEvent.VK_I, Toolkit
                     .getDefaultToolkit().getMenuShortcutKeyMask(), false));
@@ -624,7 +639,8 @@ public class GAlignFrame extends JInternalFrame
                 invertSequenceMenuItem_actionPerformed(e);
               }
             });
-    grpsFromSelection.setText(MessageManager.getString("action.make_groups_selection"));
+    grpsFromSelection.setText(MessageManager
+            .getString("action.make_groups_selection"));
     grpsFromSelection.addActionListener(new java.awt.event.ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -632,16 +648,20 @@ public class GAlignFrame extends JInternalFrame
         makeGrpsFromSelection_actionPerformed(e);
       }
     });
-    expandAlignment.setText(MessageManager.getString("action.view_flanking_regions"));
-    expandAlignment.setToolTipText(MessageManager.getString("label.view_flanking_regions"));
-    expandAlignment.addActionListener(new java.awt.event.ActionListener() {
+    expandAlignment.setText(MessageManager
+            .getString("action.view_flanking_regions"));
+    expandAlignment.setToolTipText(MessageManager
+            .getString("label.view_flanking_regions"));
+    expandAlignment.addActionListener(new java.awt.event.ActionListener()
+    {
       @Override
       public void actionPerformed(ActionEvent e)
       {
         expand_newalign(e);
       }
     });
-    remove2LeftMenuItem.setText(MessageManager.getString("action.remove_left"));
+    remove2LeftMenuItem.setText(MessageManager
+            .getString("action.remove_left"));
     remove2LeftMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
             java.awt.event.KeyEvent.VK_L, Toolkit.getDefaultToolkit()
                     .getMenuShortcutKeyMask(), false));
@@ -653,7 +673,8 @@ public class GAlignFrame extends JInternalFrame
                 remove2LeftMenuItem_actionPerformed(e);
               }
             });
-    remove2RightMenuItem.setText(MessageManager.getString("action.remove_right"));
+    remove2RightMenuItem.setText(MessageManager
+            .getString("action.remove_right"));
     remove2RightMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
             java.awt.event.KeyEvent.VK_R, Toolkit.getDefaultToolkit()
                     .getMenuShortcutKeyMask(), false));
@@ -665,7 +686,8 @@ public class GAlignFrame extends JInternalFrame
                 remove2RightMenuItem_actionPerformed(e);
               }
             });
-    removeGappedColumnMenuItem.setText(MessageManager.getString("action.remove_empty_columns"));
+    removeGappedColumnMenuItem.setText(MessageManager
+            .getString("action.remove_empty_columns"));
     removeGappedColumnMenuItem.setAccelerator(javax.swing.KeyStroke
             .getKeyStroke(java.awt.event.KeyEvent.VK_E, Toolkit
                     .getDefaultToolkit().getMenuShortcutKeyMask(), false));
@@ -677,7 +699,8 @@ public class GAlignFrame extends JInternalFrame
                 removeGappedColumnMenuItem_actionPerformed(e);
               }
             });
-    removeAllGapsMenuItem.setText(MessageManager.getString("action.remove_all_gaps"));
+    removeAllGapsMenuItem.setText(MessageManager
+            .getString("action.remove_all_gaps"));
     removeAllGapsMenuItem.setAccelerator(javax.swing.KeyStroke
             .getKeyStroke(java.awt.event.KeyEvent.VK_E, Toolkit
                     .getDefaultToolkit().getMenuShortcutKeyMask()
@@ -690,7 +713,8 @@ public class GAlignFrame extends JInternalFrame
                 removeAllGapsMenuItem_actionPerformed(e);
               }
             });
-    justifyLeftMenuItem.setText(MessageManager.getString("action.left_justify_alignment"));
+    justifyLeftMenuItem.setText(MessageManager
+            .getString("action.left_justify_alignment"));
     justifyLeftMenuItem
             .addActionListener(new java.awt.event.ActionListener()
             {
@@ -699,7 +723,8 @@ public class GAlignFrame extends JInternalFrame
                 justifyLeftMenuItem_actionPerformed(e);
               }
             });
-    justifyRightMenuItem.setText(MessageManager.getString("action.right_justify_alignment"));
+    justifyRightMenuItem.setText(MessageManager
+            .getString("action.right_justify_alignment"));
     justifyRightMenuItem
             .addActionListener(new java.awt.event.ActionListener()
             {
@@ -726,7 +751,8 @@ public class GAlignFrame extends JInternalFrame
         viewTextMenuItem_actionPerformed(e);
       }
     });
-    showNonconservedMenuItem.setText(MessageManager.getString("label.show_non_conversed"));
+    showNonconservedMenuItem.setText(MessageManager
+            .getString("label.show_non_conversed"));
     showNonconservedMenuItem.setState(false);
     showNonconservedMenuItem
             .addActionListener(new java.awt.event.ActionListener()
@@ -736,7 +762,8 @@ public class GAlignFrame extends JInternalFrame
                 showUnconservedMenuItem_actionPerformed(e);
               }
             });
-    sortPairwiseMenuItem.setText(MessageManager.getString("action.by_pairwise_id"));
+    sortPairwiseMenuItem.setText(MessageManager
+            .getString("action.by_pairwise_id"));
     sortPairwiseMenuItem
             .addActionListener(new java.awt.event.ActionListener()
             {
@@ -753,7 +780,8 @@ public class GAlignFrame extends JInternalFrame
         sortIDMenuItem_actionPerformed(e);
       }
     });
-    sortLengthMenuItem.setText(MessageManager.getString("action.by_length"));
+    sortLengthMenuItem
+            .setText(MessageManager.getString("action.by_length"));
     sortLengthMenuItem
             .addActionListener(new java.awt.event.ActionListener()
             {
@@ -770,7 +798,8 @@ public class GAlignFrame extends JInternalFrame
         sortGroupMenuItem_actionPerformed(e);
       }
     });
-    removeRedundancyMenuItem.setText(MessageManager.getString("action.remove_redundancy"));
+    removeRedundancyMenuItem.setText(MessageManager
+            .getString("action.remove_redundancy").concat("..."));
     removeRedundancyMenuItem.setAccelerator(javax.swing.KeyStroke
             .getKeyStroke(java.awt.event.KeyEvent.VK_D, Toolkit
                     .getDefaultToolkit().getMenuShortcutKeyMask(), false));
@@ -782,7 +811,8 @@ public class GAlignFrame extends JInternalFrame
                 removeRedundancyMenuItem_actionPerformed(e);
               }
             });
-    pairwiseAlignmentMenuItem.setText(MessageManager.getString("action.pairwise_alignment"));
+    pairwiseAlignmentMenuItem.setText(MessageManager
+            .getString("action.pairwise_alignment"));
     pairwiseAlignmentMenuItem
             .addActionListener(new java.awt.event.ActionListener()
             {
@@ -791,7 +821,8 @@ public class GAlignFrame extends JInternalFrame
                 pairwiseAlignmentMenuItem_actionPerformed(e);
               }
             });
-    PCAMenuItem.setText(MessageManager.getString("label.principal_component_analysis"));
+    PCAMenuItem.setText(MessageManager
+            .getString("label.principal_component_analysis"));
     PCAMenuItem.addActionListener(new java.awt.event.ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -799,8 +830,8 @@ public class GAlignFrame extends JInternalFrame
         PCAMenuItem_actionPerformed(e);
       }
     });
-    averageDistanceTreeMenuItem
-            .setText(MessageManager.getString("label.average_distance_identity"));
+    averageDistanceTreeMenuItem.setText(MessageManager
+            .getString("label.average_distance_identity"));
     averageDistanceTreeMenuItem
             .addActionListener(new java.awt.event.ActionListener()
             {
@@ -809,7 +840,8 @@ public class GAlignFrame extends JInternalFrame
                 averageDistanceTreeMenuItem_actionPerformed(e);
               }
             });
-    neighbourTreeMenuItem.setText(MessageManager.getString("label.neighbour_joining_identity"));
+    neighbourTreeMenuItem.setText(MessageManager
+            .getString("label.neighbour_joining_identity"));
     neighbourTreeMenuItem
             .addActionListener(new java.awt.event.ActionListener()
             {
@@ -824,7 +856,8 @@ public class GAlignFrame extends JInternalFrame
     statusBar.setFont(new java.awt.Font("Verdana", 0, 11));
     statusBar.setBorder(BorderFactory.createLineBorder(Color.black));
     statusBar.setText(MessageManager.getString("label.status_bar"));
-    outputTextboxMenu.setText(MessageManager.getString("label.out_to_textbox"));
+    outputTextboxMenu.setText(MessageManager
+            .getString("label.out_to_textbox"));
     clustalColour.setText(MessageManager.getString("label.clustalx"));
 
     clustalColour.addActionListener(new java.awt.event.ActionListener()
@@ -850,7 +883,8 @@ public class GAlignFrame extends JInternalFrame
         taylorColour_actionPerformed(e);
       }
     });
-    hydrophobicityColour.setText(MessageManager.getString("label.hydrophobicity"));
+    hydrophobicityColour.setText(MessageManager
+            .getString("label.hydrophobicity"));
     hydrophobicityColour
             .addActionListener(new java.awt.event.ActionListener()
             {
@@ -867,7 +901,8 @@ public class GAlignFrame extends JInternalFrame
         helixColour_actionPerformed(e);
       }
     });
-    strandColour.setText(MessageManager.getString("label.strand_propensity"));
+    strandColour.setText(MessageManager
+            .getString("label.strand_propensity"));
     strandColour.addActionListener(new java.awt.event.ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -891,7 +926,8 @@ public class GAlignFrame extends JInternalFrame
         buriedColour_actionPerformed(e);
       }
     });
-    userDefinedColour.setText(MessageManager.getString("action.user_defined"));
+    userDefinedColour.setText(MessageManager
+            .getString("action.user_defined"));
     userDefinedColour.addActionListener(new java.awt.event.ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -899,7 +935,8 @@ public class GAlignFrame extends JInternalFrame
         userDefinedColour_actionPerformed(e);
       }
     });
-    PIDColour.setText(MessageManager.getString("label.percentage_identity"));
+    PIDColour
+            .setText(MessageManager.getString("label.percentage_identity"));
     PIDColour.addActionListener(new java.awt.event.ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -907,7 +944,8 @@ public class GAlignFrame extends JInternalFrame
         PIDColour_actionPerformed(e);
       }
     });
-    BLOSUM62Colour.setText(MessageManager.getString("label.blosum62_score"));
+    BLOSUM62Colour
+            .setText(MessageManager.getString("label.blosum62_score"));
     BLOSUM62Colour.addActionListener(new java.awt.event.ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -924,7 +962,8 @@ public class GAlignFrame extends JInternalFrame
       }
     });
 
-    purinePyrimidineColour.setText(MessageManager.getString("label.purine_pyrimidine"));
+    purinePyrimidineColour.setText(MessageManager
+            .getString("label.purine_pyrimidine"));
     purinePyrimidineColour
             .addActionListener(new java.awt.event.ActionListener()
             {
@@ -933,6 +972,16 @@ public class GAlignFrame extends JInternalFrame
                 purinePyrimidineColour_actionPerformed(e);
               }
             });
+
+    RNAInteractionColour.setText("RNA Interaction type");
+    RNAInteractionColour
+            .addActionListener(new java.awt.event.ActionListener()
+            {
+              public void actionPerformed(ActionEvent e)
+              {
+                RNAInteractionColour_actionPerformed(e);
+              }
+            });
     /*
      * covariationColour.setText("Covariation");
      * covariationColour.addActionListener(new java.awt.event.ActionListener() {
@@ -940,7 +989,8 @@ public class GAlignFrame extends JInternalFrame
      * covariationColour_actionPerformed(e); } });
      */
 
-    avDistanceTreeBlosumMenuItem.setText(MessageManager.getString("label.average_distance_bloslum62"));
+    avDistanceTreeBlosumMenuItem.setText(MessageManager
+            .getString("label.average_distance_bloslum62"));
     avDistanceTreeBlosumMenuItem
             .addActionListener(new java.awt.event.ActionListener()
             {
@@ -949,7 +999,8 @@ public class GAlignFrame extends JInternalFrame
                 avTreeBlosumMenuItem_actionPerformed(e);
               }
             });
-    njTreeBlosumMenuItem.setText(MessageManager.getString("label.neighbour_blosum62"));
+    njTreeBlosumMenuItem.setText(MessageManager
+            .getString("label.neighbour_blosum62"));
     njTreeBlosumMenuItem
             .addActionListener(new java.awt.event.ActionListener()
             {
@@ -959,7 +1010,8 @@ public class GAlignFrame extends JInternalFrame
               }
             });
     annotationPanelMenuItem.setActionCommand("");
-    annotationPanelMenuItem.setText(MessageManager.getString("label.show_annotations"));
+    annotationPanelMenuItem.setText(MessageManager
+            .getString("label.show_annotations"));
     annotationPanelMenuItem.setState(jalview.bin.Cache.getDefault(
             "SHOW_ANNOTATIONS", true));
     annotationPanelMenuItem
@@ -970,7 +1022,8 @@ public class GAlignFrame extends JInternalFrame
                 annotationPanelMenuItem_actionPerformed(e);
               }
             });
-    colourTextMenuItem.setText(MessageManager.getString("label.colour_text"));
+    colourTextMenuItem.setText(MessageManager
+            .getString("label.colour_text"));
     colourTextMenuItem
             .addActionListener(new java.awt.event.ActionListener()
             {
@@ -987,7 +1040,8 @@ public class GAlignFrame extends JInternalFrame
         htmlMenuItem_actionPerformed(e);
       }
     });
-    overviewMenuItem.setText(MessageManager.getString("label.overview_window"));
+    overviewMenuItem.setText(MessageManager
+            .getString("label.overview_window"));
     overviewMenuItem.addActionListener(new java.awt.event.ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1019,7 +1073,8 @@ public class GAlignFrame extends JInternalFrame
         redoMenuItem_actionPerformed(e);
       }
     });
-    conservationMenuItem.setText(MessageManager.getString("action.by_conservation"));
+    conservationMenuItem.setText(MessageManager
+            .getString("action.by_conservation"));
     conservationMenuItem
             .addActionListener(new java.awt.event.ActionListener()
             {
@@ -1055,7 +1110,8 @@ public class GAlignFrame extends JInternalFrame
         printMenuItem_actionPerformed(e);
       }
     });
-    renderGapsMenuItem.setText(MessageManager.getString("action.show_gaps"));
+    renderGapsMenuItem
+            .setText(MessageManager.getString("action.show_gaps"));
     renderGapsMenuItem.setState(true);
     renderGapsMenuItem
             .addActionListener(new java.awt.event.ActionListener()
@@ -1076,7 +1132,8 @@ public class GAlignFrame extends JInternalFrame
         findMenuItem_actionPerformed(e);
       }
     });
-    abovePIDThreshold.setText(MessageManager.getString("label.above_identity_threshold"));
+    abovePIDThreshold.setText(MessageManager
+            .getString("label.above_identity_threshold"));
     abovePIDThreshold.addActionListener(new java.awt.event.ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1084,7 +1141,8 @@ public class GAlignFrame extends JInternalFrame
         abovePIDThreshold_actionPerformed(e);
       }
     });
-    showSeqFeatures.setText(MessageManager.getString("label.show_sequence_features"));
+    showSeqFeatures.setText(MessageManager
+            .getString("label.show_sequence_features"));
     showSeqFeatures.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent actionEvent)
@@ -1098,7 +1156,8 @@ public class GAlignFrame extends JInternalFrame
      * void actionPerformed(ActionEvent actionEvent) {
      * showSeqFeaturesHeight_actionPerformed(actionEvent); } });
      */
-    showDbRefsMenuitem.setText(MessageManager.getString("label.show_database_refs"));
+    showDbRefsMenuitem.setText(MessageManager
+            .getString("label.show_database_refs"));
     showDbRefsMenuitem.addActionListener(new ActionListener()
     {
 
@@ -1108,7 +1167,8 @@ public class GAlignFrame extends JInternalFrame
       }
 
     });
-    showNpFeatsMenuitem.setText(MessageManager.getString("label.show_non_positional_features"));
+    showNpFeatsMenuitem.setText(MessageManager
+            .getString("label.show_non_positional_features"));
     showNpFeatsMenuitem.addActionListener(new ActionListener()
     {
 
@@ -1118,7 +1178,8 @@ public class GAlignFrame extends JInternalFrame
       }
 
     });
-    showGroupConservation.setText(MessageManager.getString("label.group_conservation"));
+    showGroupConservation.setText(MessageManager
+            .getString("label.group_conservation"));
     showGroupConservation.addActionListener(new ActionListener()
     {
 
@@ -1129,7 +1190,8 @@ public class GAlignFrame extends JInternalFrame
 
     });
 
-    showGroupConsensus.setText(MessageManager.getString("label.group_consensus"));
+    showGroupConsensus.setText(MessageManager
+            .getString("label.group_consensus"));
     showGroupConsensus.addActionListener(new ActionListener()
     {
 
@@ -1139,7 +1201,8 @@ public class GAlignFrame extends JInternalFrame
       }
 
     });
-    showConsensusHistogram.setText(MessageManager.getString("label.show_consensus_histogram"));
+    showConsensusHistogram.setText(MessageManager
+            .getString("label.show_consensus_histogram"));
     showConsensusHistogram.addActionListener(new ActionListener()
     {
 
@@ -1149,7 +1212,8 @@ public class GAlignFrame extends JInternalFrame
       }
 
     });
-    showSequenceLogo.setText(MessageManager.getString("label.show_consensus_logo"));
+    showSequenceLogo.setText(MessageManager
+            .getString("label.show_consensus_logo"));
     showSequenceLogo.addActionListener(new ActionListener()
     {
 
@@ -1159,7 +1223,8 @@ public class GAlignFrame extends JInternalFrame
       }
 
     });
-    normaliseSequenceLogo.setText(MessageManager.getString("label.norm_consensus_logo"));
+    normaliseSequenceLogo.setText(MessageManager
+            .getString("label.norm_consensus_logo"));
     normaliseSequenceLogo.addActionListener(new ActionListener()
     {
 
@@ -1169,7 +1234,8 @@ public class GAlignFrame extends JInternalFrame
       }
 
     });
-    applyAutoAnnotationSettings.setText(MessageManager.getString("label.apply_all_groups"));
+    applyAutoAnnotationSettings.setText(MessageManager
+            .getString("label.apply_all_groups"));
     applyAutoAnnotationSettings.setState(false);
     applyAutoAnnotationSettings.setVisible(true);
     applyAutoAnnotationSettings.addActionListener(new ActionListener()
@@ -1203,7 +1269,8 @@ public class GAlignFrame extends JInternalFrame
       }
     });
 
-    deleteGroups.setText(MessageManager.getString("action.undefine_groups"));
+    deleteGroups
+            .setText(MessageManager.getString("action.undefine_groups"));
     deleteGroups.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
             java.awt.event.KeyEvent.VK_U, Toolkit.getDefaultToolkit()
                     .getMenuShortcutKeyMask(), false));
@@ -1227,8 +1294,9 @@ public class GAlignFrame extends JInternalFrame
     });
     unGroup.setText(MessageManager.getString("action.remove_group"));
     unGroup.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
-            java.awt.event.KeyEvent.VK_G,Toolkit.getDefaultToolkit()
-                    .getMenuShortcutKeyMask() | java.awt.event.KeyEvent.SHIFT_MASK, false));
+            java.awt.event.KeyEvent.VK_G, Toolkit.getDefaultToolkit()
+                    .getMenuShortcutKeyMask()
+                    | java.awt.event.KeyEvent.SHIFT_MASK, false));
     unGroup.addActionListener(new java.awt.event.ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1293,7 +1361,8 @@ public class GAlignFrame extends JInternalFrame
         pasteThis_actionPerformed(e);
       }
     });
-    applyToAllGroups.setText(MessageManager.getString("label.apply_colour_to_all_groups"));
+    applyToAllGroups.setText(MessageManager
+            .getString("label.apply_colour_to_all_groups"));
     applyToAllGroups.addActionListener(new java.awt.event.ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1308,7 +1377,8 @@ public class GAlignFrame extends JInternalFrame
         createPNG(null);
       }
     });
-    createPNG.setActionCommand(MessageManager.getString("label.save_png_image"));
+    createPNG.setActionCommand(MessageManager
+            .getString("label.save_png_image"));
     createPNG.setText("PNG");
     font.setText(MessageManager.getString("action.font"));
     font.addActionListener(new java.awt.event.ActionListener()
@@ -1319,7 +1389,8 @@ public class GAlignFrame extends JInternalFrame
       }
     });
 
-    seqLimits.setText(MessageManager.getString("label.show_sequence_limits"));
+    seqLimits.setText(MessageManager
+            .getString("label.show_sequence_limits"));
     seqLimits.setState(jalview.bin.Cache.getDefault("SHOW_JVSUFFIX", true));
     seqLimits.addActionListener(new java.awt.event.ActionListener()
     {
@@ -1336,8 +1407,10 @@ public class GAlignFrame extends JInternalFrame
         createEPS(null);
       }
     });
-    LoadtreeMenuItem.setActionCommand(MessageManager.getString("label.load_tree_for_sequence_set"));
-    LoadtreeMenuItem.setText(MessageManager.getString("label.load_associated_tree"));
+    LoadtreeMenuItem.setActionCommand(MessageManager
+            .getString("label.load_tree_for_sequence_set"));
+    LoadtreeMenuItem.setText(MessageManager
+            .getString("label.load_associated_tree"));
     LoadtreeMenuItem.addActionListener(new java.awt.event.ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1377,7 +1450,8 @@ public class GAlignFrame extends JInternalFrame
     });
     centreColumnLabelsMenuItem.setVisible(true);
     centreColumnLabelsMenuItem.setState(false);
-    centreColumnLabelsMenuItem.setText(MessageManager.getString("label.centre_column_labels"));
+    centreColumnLabelsMenuItem.setText(MessageManager
+            .getString("label.centre_column_labels"));
     centreColumnLabelsMenuItem
             .addActionListener(new java.awt.event.ActionListener()
             {
@@ -1388,7 +1462,8 @@ public class GAlignFrame extends JInternalFrame
             });
     followHighlightMenuItem.setVisible(true);
     followHighlightMenuItem.setState(true);
-    followHighlightMenuItem.setText(MessageManager.getString("label.automatic_scrolling"));
+    followHighlightMenuItem.setText(MessageManager
+            .getString("label.automatic_scrolling"));
     followHighlightMenuItem.addActionListener(new ActionListener()
     {
 
@@ -1399,7 +1474,8 @@ public class GAlignFrame extends JInternalFrame
 
     });
 
-    modifyPID.setText(MessageManager.getString("label.modify_identity_thereshold"));
+    modifyPID.setText(MessageManager
+            .getString("label.modify_identity_thereshold"));
     modifyPID.addActionListener(new java.awt.event.ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1407,7 +1483,8 @@ public class GAlignFrame extends JInternalFrame
         modifyPID_actionPerformed(e);
       }
     });
-    modifyConservation.setText(MessageManager.getString("label.modify_conservation_thereshold"));
+    modifyConservation.setText(MessageManager
+            .getString("label.modify_conservation_thereshold"));
     modifyConservation
             .addActionListener(new java.awt.event.ActionListener()
             {
@@ -1416,7 +1493,8 @@ public class GAlignFrame extends JInternalFrame
                 modifyConservation_actionPerformed(e);
               }
             });
-    sortByTreeMenu.setText(MessageManager.getString("action.by_tree_order"));
+    sortByTreeMenu
+            .setText(MessageManager.getString("action.by_tree_order"));
     sort.setText(MessageManager.getString("action.sort"));
     sort.addMenuListener(new MenuListener()
     {
@@ -1433,7 +1511,8 @@ public class GAlignFrame extends JInternalFrame
       {
       }
     });
-    sortByAnnotScore.setText(MessageManager.getString("label.sort_by_score"));
+    sortByAnnotScore.setText(MessageManager
+            .getString("label.sort_by_score"));
     sort.add(sortByAnnotScore);
     sortByAnnotScore.addMenuListener(new javax.swing.event.MenuListener()
     {
@@ -1453,7 +1532,8 @@ public class GAlignFrame extends JInternalFrame
     });
     sortByAnnotScore.setVisible(false);
 
-    calculateTree.setText(MessageManager.getString("action.calculate_tree"));
+    calculateTree
+            .setText(MessageManager.getString("action.calculate_tree"));
 
     jMenu2.setText(MessageManager.getString("label.export_image"));
     padGapsMenuitem.setText(MessageManager.getString("label.pad_gaps"));
@@ -1475,7 +1555,8 @@ public class GAlignFrame extends JInternalFrame
         vamsasStore_actionPerformed(e);
       }
     });
-    showTranslation.setText(MessageManager.getString("label.translate_cDNA"));
+    showTranslation.setText(MessageManager
+            .getString("label.translate_cDNA"));
     showTranslation.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1483,7 +1564,8 @@ public class GAlignFrame extends JInternalFrame
         showTranslation_actionPerformed(e);
       }
     });
-    extractScores.setText(MessageManager.getString("label.extract_scores") + "...");
+    extractScores.setText(MessageManager.getString("label.extract_scores")
+            + "...");
     extractScores.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1500,7 +1582,8 @@ public class GAlignFrame extends JInternalFrame
      * public void actionPerformed(ActionEvent e) {
      * showProducts_actionPerformed(e); } });
      */
-    openFeatureSettings.setText(MessageManager.getString("label.feature_settings"));
+    openFeatureSettings.setText(MessageManager
+            .getString("label.feature_settings"));
     openFeatureSettings.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1508,7 +1591,8 @@ public class GAlignFrame extends JInternalFrame
         featureSettings_actionPerformed(e);
       }
     });
-    fetchSequence.setText(MessageManager.getString("label.fetch_sequences"));
+    fetchSequence
+            .setText(MessageManager.getString("label.fetch_sequences"));
     fetchSequence.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1517,7 +1601,8 @@ public class GAlignFrame extends JInternalFrame
       }
     });
 
-    annotationColour.setText(MessageManager.getString("action.by_annotation"));
+    annotationColour.setText(MessageManager
+            .getString("action.by_annotation"));
     annotationColour.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1526,7 +1611,8 @@ public class GAlignFrame extends JInternalFrame
       }
     });
 
-    rnahelicesColour.setText(MessageManager.getString("action.by_rna_helixes"));
+    rnahelicesColour.setText(MessageManager
+            .getString("action.by_rna_helixes"));
     rnahelicesColour.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1535,7 +1621,8 @@ public class GAlignFrame extends JInternalFrame
       }
     });
 
-    associatedData.setText(MessageManager.getString("label.load_features_annotations"));
+    associatedData.setText(MessageManager
+            .getString("label.load_features_annotations"));
     associatedData.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1543,7 +1630,8 @@ public class GAlignFrame extends JInternalFrame
         associatedData_actionPerformed(e);
       }
     });
-    autoCalculate.setText(MessageManager.getString("label.autocalculate_consensus"));
+    autoCalculate.setText(MessageManager
+            .getString("label.autocalculate_consensus"));
     autoCalculate.setState(jalview.bin.Cache.getDefault(
             "AUTO_CALC_CONSENSUS", true));
     autoCalculate.addActionListener(new ActionListener()
@@ -1553,9 +1641,12 @@ public class GAlignFrame extends JInternalFrame
         autoCalculate_actionPerformed(e);
       }
     });
-    sortByTree.setText(MessageManager.getString("label.sort_alignment_new_tree"));
+    sortByTree.setText(MessageManager
+            .getString("label.sort_alignment_new_tree"));
     sortByTree
-            .setToolTipText("<html>" + MessageManager.getString("label.enable_automatically_sort_alignment_when_open_new_tree"));
+            .setToolTipText("<html>"
+                    + MessageManager
+                            .getString("label.enable_automatically_sort_alignment_when_open_new_tree"));
     sortByTree
             .setState(jalview.bin.Cache.getDefault("SORT_BY_TREE", false));
     sortByTree.addActionListener(new ActionListener()
@@ -1566,9 +1657,12 @@ public class GAlignFrame extends JInternalFrame
       }
     });
 
-    listenToViewSelections.setText(MessageManager.getString("label.listen_for_selections"));
+    listenToViewSelections.setText(MessageManager
+            .getString("label.listen_for_selections"));
     listenToViewSelections
-            .setToolTipText("<html>" + MessageManager.getString("label.selections_mirror_selections_made_same_sequences_other_views"));
+            .setToolTipText("<html>"
+                    + MessageManager
+                            .getString("label.selections_mirror_selections_made_same_sequences_other_views"));
     listenToViewSelections.setState(false);
     listenToViewSelections.addActionListener(new ActionListener()
     {
@@ -1578,7 +1672,8 @@ public class GAlignFrame extends JInternalFrame
       }
     });
 
-    addSequenceMenu.setText(MessageManager.getString("label.add_sequences"));
+    addSequenceMenu
+            .setText(MessageManager.getString("label.add_sequences"));
     addFromFile.setText(MessageManager.getString("label.from_file"));
     addFromFile.addActionListener(new ActionListener()
     {
@@ -1603,7 +1698,8 @@ public class GAlignFrame extends JInternalFrame
         addFromURL_actionPerformed(e);
       }
     });
-    exportFeatures.setText(MessageManager.getString("label.export_features"));
+    exportFeatures.setText(MessageManager
+            .getString("label.export_features"));
     exportFeatures.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1611,7 +1707,8 @@ public class GAlignFrame extends JInternalFrame
         exportFeatures_actionPerformed(e);
       }
     });
-    exportAnnotations.setText(MessageManager.getString("label.export_annotations"));
+    exportAnnotations.setText(MessageManager
+            .getString("label.export_annotations"));
     exportAnnotations.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1622,7 +1719,8 @@ public class GAlignFrame extends JInternalFrame
     statusPanel.setLayout(gridLayout1);
     jMenu3.setText(MessageManager.getString("action.show"));
     showAllSeqs.setText(MessageManager.getString("label.all_sequences"));
-    showAllSeqs.setToolTipText(MessageManager.getString("label.toggle_sequence_visibility"));
+    showAllSeqs.setToolTipText(MessageManager
+            .getString("label.toggle_sequence_visibility"));
     showAllSeqs.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1631,7 +1729,8 @@ public class GAlignFrame extends JInternalFrame
       }
     });
     showAllColumns.setText(MessageManager.getString("label.all_columns"));
-    showAllColumns.setToolTipText(MessageManager.getString("label.toggle_columns_visibility"));
+    showAllColumns.setToolTipText(MessageManager
+            .getString("label.toggle_columns_visibility"));
     showAllColumns.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1640,8 +1739,10 @@ public class GAlignFrame extends JInternalFrame
       }
     });
     hideMenu.setText(MessageManager.getString("action.hide"));
-    hideSelSequences.setText(MessageManager.getString("label.selected_sequences"));
-    hideSelSequences.setToolTipText(MessageManager.getString("label.toggle_sequence_visibility"));
+    hideSelSequences.setText(MessageManager
+            .getString("label.selected_sequences"));
+    hideSelSequences.setToolTipText(MessageManager
+            .getString("label.toggle_sequence_visibility"));
     hideSelSequences.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1649,8 +1750,10 @@ public class GAlignFrame extends JInternalFrame
         hideSelSequences_actionPerformed(e);
       }
     });
-    hideSelColumns.setText(MessageManager.getString("label.selected_columns"));
-    hideSelColumns.setToolTipText(MessageManager.getString("label.toggle_columns_visibility"));
+    hideSelColumns.setText(MessageManager
+            .getString("label.selected_columns"));
+    hideSelColumns.setToolTipText(MessageManager
+            .getString("label.toggle_columns_visibility"));
     hideSelColumns.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1658,7 +1761,8 @@ public class GAlignFrame extends JInternalFrame
         hideSelColumns_actionPerformed(e);
       }
     });
-    hideAllSelection.setText(MessageManager.getString("label.selected_region"));
+    hideAllSelection.setText(MessageManager
+            .getString("label.selected_region"));
     hideAllSelection.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1667,7 +1771,8 @@ public class GAlignFrame extends JInternalFrame
       }
     });
     // TODO: should be hidden if no selection exists.
-    hideAllButSelection.setText(MessageManager.getString("label.all_but_selected_region"));
+    hideAllButSelection.setText(MessageManager
+            .getString("label.all_but_selected_region"));
     hideAllButSelection.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1675,9 +1780,10 @@ public class GAlignFrame extends JInternalFrame
         hideAllButSelection_actionPerformed(e);
       }
     });
-    showAllhidden.setText(MessageManager.getString("label.all_sequences_columns"));
-    showAllhidden
-            .setToolTipText(MessageManager.getString("label.toggles_visibility_hidden_selected_regions"));
+    showAllhidden.setText(MessageManager
+            .getString("label.all_sequences_columns"));
+    showAllhidden.setToolTipText(MessageManager
+            .getString("label.toggles_visibility_hidden_selected_regions"));
     showAllhidden.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1686,7 +1792,8 @@ public class GAlignFrame extends JInternalFrame
       }
     });
 
-    hiddenMarkers.setText(MessageManager.getString("action.show_hidden_markers"));
+    hiddenMarkers.setText(MessageManager
+            .getString("action.show_hidden_markers"));
     hiddenMarkers.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1694,7 +1801,8 @@ public class GAlignFrame extends JInternalFrame
         hiddenMarkers_actionPerformed(e);
       }
     });
-    invertColSel.setText(MessageManager.getString("action.invert_column_selection"));
+    invertColSel.setText(MessageManager
+            .getString("action.invert_column_selection"));
     invertColSel.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
             java.awt.event.KeyEvent.VK_I, Toolkit.getDefaultToolkit()
                     .getMenuShortcutKeyMask()
@@ -1760,8 +1868,11 @@ public class GAlignFrame extends JInternalFrame
         newView_actionPerformed(e);
       }
     });
-    tabbedPane.setToolTipText("<html><i>" + MessageManager.getString("label.rename_tab_eXpand_reGroup") + "</i></html>");
-    textColour.setText(MessageManager.getString("label.colour_text") + "...");
+    tabbedPane.setToolTipText("<html><i>"
+            + MessageManager.getString("label.rename_tab_eXpand_reGroup")
+            + "</i></html>");
+    textColour.setText(MessageManager.getString("label.colour_text")
+            + "...");
     textColour.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1771,7 +1882,8 @@ public class GAlignFrame extends JInternalFrame
     });
     formatMenu.setText(MessageManager.getString("action.format"));
     selectMenu.setText(MessageManager.getString("action.select"));
-    idRightAlign.setText(MessageManager.getString("label.right_align_sequence_id"));
+    idRightAlign.setText(MessageManager
+            .getString("label.right_align_sequence_id"));
     idRightAlign.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1801,7 +1913,8 @@ public class GAlignFrame extends JInternalFrame
         expandViews_actionPerformed(e);
       }
     });
-    pageSetup.setText(MessageManager.getString("action.page_setup") + "...");
+    pageSetup
+            .setText(MessageManager.getString("action.page_setup") + "...");
     pageSetup.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -1809,7 +1922,8 @@ public class GAlignFrame extends JInternalFrame
         pageSetup_actionPerformed(e);
       }
     });
-    alignmentProperties.setText(MessageManager.getString("label.alignment_props") + "...");
+    alignmentProperties.setText(MessageManager
+            .getString("label.alignment_props") + "...");
     alignmentProperties.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent actionEvent)
@@ -1817,8 +1931,10 @@ public class GAlignFrame extends JInternalFrame
         alignmentProperties();
       }
     });
-    tooltipSettingsMenu.setText(MessageManager.getString("label.sequence_id_tooltip"));
-    autoAnnMenu.setText(MessageManager.getString("label.autocalculated_annotation"));
+    tooltipSettingsMenu.setText(MessageManager
+            .getString("label.sequence_id_tooltip"));
+    autoAnnMenu.setText(MessageManager
+            .getString("label.autocalculated_annotation"));
     alignFrameMenuBar.add(fileMenu);
     alignFrameMenuBar.add(editMenu);
     alignFrameMenuBar.add(selectMenu);
@@ -1909,6 +2025,7 @@ public class GAlignFrame extends JInternalFrame
     colourMenu.add(buriedColour);
     colourMenu.add(nucleotideColour);
     colourMenu.add(purinePyrimidineColour);
+    colourMenu.add(RNAInteractionColour);
     // colourMenu.add(covariationColour);
     colourMenu.add(tcoffeeColour);
     colourMenu.add(userDefinedColour);
@@ -1931,7 +2048,8 @@ public class GAlignFrame extends JInternalFrame
     calculateMenu.add(sortByTree);
     calculateMenu.addSeparator();
     calculateMenu.add(extractScores);
-    webServiceNoServices = new JMenuItem(MessageManager.getString("label.no_services"));
+    webServiceNoServices = new JMenuItem(
+            MessageManager.getString("label.no_services"));
     webService.add(webServiceNoServices);
     pasteMenu.add(pasteNew);
     pasteMenu.add(pasteThis);
@@ -2303,6 +2421,10 @@ public class GAlignFrame extends JInternalFrame
   {
   }
 
+  protected void RNAInteractionColour_actionPerformed(ActionEvent e)
+  {
+  }
+
   /*
    * protected void covariationColour_actionPerformed(ActionEvent e) { }
    */
@@ -2342,11 +2464,11 @@ public class GAlignFrame extends JInternalFrame
   protected void deleteGroups_actionPerformed(ActionEvent e)
   {
   }
-  
+
   protected void createGroup_actionPerformed(ActionEvent e)
   {
   }
-  
+
   protected void unGroup_actionPerformed(ActionEvent e)
   {
   }
@@ -2627,6 +2749,6 @@ public class GAlignFrame extends JInternalFrame
   protected void expand_newalign(ActionEvent e)
   {
     // TODO Auto-generated method stub
-    
+
   }
 }
index 6a7ab97..370d016 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.jbgui;
index 5f74844..bc05d8c 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.jbgui;
@@ -163,9 +165,10 @@ public class GCutAndPasteHtmlTransfer extends JInternalFrame
         copyItem_actionPerformed(e);
       }
     });
-    displaySource.setText(MessageManager.getString("action.show_html_source"));
-    displaySource
-            .setToolTipText(MessageManager.getString("label.select_copy_raw_html"));
+    displaySource.setText(MessageManager
+            .getString("action.show_html_source"));
+    displaySource.setToolTipText(MessageManager
+            .getString("label.select_copy_raw_html"));
     displaySource.addActionListener(new ActionListener()
     {
 
index 4149c85..0a48d7e 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.jbgui;
index b16c013..185ce13 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.jbgui;
@@ -42,7 +44,8 @@ public class GDasSourceBrowser extends JPanel
   private void jbInit() throws Exception
   {
     this.setLayout(gridBagLayout1);
-    refresh.setText(MessageManager.getString("label.refresh_available_sources"));
+    refresh.setText(MessageManager
+            .getString("label.refresh_available_sources"));
     refresh.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -142,7 +145,8 @@ public class GDasSourceBrowser extends JPanel
 
   protected JEditorPane fullDetails = new JEditorPane("text/html", "");
 
-  TitledBorder titledBorder1 = new TitledBorder(MessageManager.getString("label.available_das_sources"));
+  TitledBorder titledBorder1 = new TitledBorder(
+          MessageManager.getString("label.available_das_sources"));
 
   protected JButton refresh = new JButton();
 
@@ -150,7 +154,8 @@ public class GDasSourceBrowser extends JPanel
 
   protected JScrollPane scrollPane = new JScrollPane();
 
-  TitledBorder titledBorder2 = new TitledBorder(MessageManager.getString("label.full_details"));
+  TitledBorder titledBorder2 = new TitledBorder(
+          MessageManager.getString("label.full_details"));
 
   protected JScrollPane fullDetailsScrollpane = new JScrollPane();
 
@@ -178,11 +183,14 @@ public class GDasSourceBrowser extends JPanel
 
   GridBagLayout gridBagLayout1 = new GridBagLayout();
 
-  TitledBorder titledBorder3 = new TitledBorder(MessageManager.getString("label.authority") + ":");
+  TitledBorder titledBorder3 = new TitledBorder(
+          MessageManager.getString("label.authority") + ":");
 
-  TitledBorder titledBorder4 = new TitledBorder(MessageManager.getString("label.type") + ":");
+  TitledBorder titledBorder4 = new TitledBorder(
+          MessageManager.getString("label.type") + ":");
 
-  TitledBorder titledBorder5 = new TitledBorder(MessageManager.getString("label.label") + ":");
+  TitledBorder titledBorder5 = new TitledBorder(
+          MessageManager.getString("label.label") + ":");
 
   JButton reset = new JButton();
 
index ab9a0a3..4751d25 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.jbgui;
@@ -66,7 +68,7 @@ public class GDesktop extends JFrame
   JMenuItem saveState = new JMenuItem();
 
   JMenuItem loadState = new JMenuItem();
-
+  
   JMenu inputMenu = new JMenu();
 
   protected JMenuItem vamsasStart = new JMenuItem();
@@ -92,7 +94,8 @@ public class GDesktop extends JFrame
   protected JCheckBoxMenuItem showConsole = new JCheckBoxMenuItem();
 
   protected JCheckBoxMenuItem showNews = new JCheckBoxMenuItem();
-
+  
+  protected JMenuItem snapShotWindow = new JMenuItem();
   /**
    * Creates a new GDesktop object.
    */
@@ -129,13 +132,17 @@ public class GDesktop extends JFrame
    */
   private void jbInit() throws Exception
   {
+
     FileMenu.setText(MessageManager.getString("action.file"));
     HelpMenu.setText(MessageManager.getString("action.help"));
     VamsasMenu.setText("Vamsas");
-    VamsasMenu.setToolTipText(MessageManager.getString("label.share_data_vamsas_applications"));
+    VamsasMenu.setToolTipText(MessageManager
+            .getString("label.share_data_vamsas_applications"));
     VamsasStMenu.setText(MessageManager.getString("label.connect_to"));
-    VamsasStMenu.setToolTipText(MessageManager.getString("label.join_existing_vamsas_session"));
-    inputLocalFileMenuItem.setText(MessageManager.getString("label.load_tree_from_file"));
+    VamsasStMenu.setToolTipText(MessageManager
+            .getString("label.join_existing_vamsas_session"));
+    inputLocalFileMenuItem.setText(MessageManager
+            .getString("label.load_tree_from_file"));
     inputLocalFileMenuItem.setAccelerator(javax.swing.KeyStroke
             .getKeyStroke(java.awt.event.KeyEvent.VK_O, Toolkit
                     .getDefaultToolkit().getMenuShortcutKeyMask(), false));
@@ -155,7 +162,8 @@ public class GDesktop extends JFrame
         inputURLMenuItem_actionPerformed(null);
       }
     });
-    inputTextboxMenuItem.setText(MessageManager.getString("label.from_textbox"));
+    inputTextboxMenuItem.setText(MessageManager
+            .getString("label.from_textbox"));
     inputTextboxMenuItem
             .addActionListener(new java.awt.event.ActionListener()
             {
@@ -180,7 +188,8 @@ public class GDesktop extends JFrame
         aboutMenuItem_actionPerformed(e);
       }
     });
-    documentationMenuItem.setText(MessageManager.getString("label.documentation"));
+    documentationMenuItem.setText(MessageManager
+            .getString("label.documentation"));
     documentationMenuItem.setAccelerator(javax.swing.KeyStroke
             .getKeyStroke(java.awt.event.KeyEvent.VK_F1, 0, false));
     documentationMenuItem
@@ -193,7 +202,8 @@ public class GDesktop extends JFrame
             });
     this.getContentPane().setLayout(flowLayout1);
     windowMenu.setText(MessageManager.getString("label.window"));
-    preferences.setText(MessageManager.getString("label.preferences") + "...");
+    preferences.setText(MessageManager.getString("label.preferences")
+            + "...");
     preferences.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -219,7 +229,8 @@ public class GDesktop extends JFrame
       }
     });
     inputMenu.setText(MessageManager.getString("label.input_alignment"));
-    vamsasStart.setText(MessageManager.getString("label.new_vamsas_session") + "...");
+    vamsasStart.setText(MessageManager
+            .getString("label.new_vamsas_session") + "...");
     vamsasStart.setVisible(false);
     vamsasStart.addActionListener(new ActionListener()
     {
@@ -228,7 +239,8 @@ public class GDesktop extends JFrame
         vamsasStart_actionPerformed(e);
       }
     });
-    vamsasImport.setText(MessageManager.getString("label.load_vamsas_session") + "...");
+    vamsasImport.setText(MessageManager
+            .getString("label.load_vamsas_session") + "...");
     vamsasImport.setVisible(false);
     vamsasImport.addActionListener(new ActionListener()
     {
@@ -237,7 +249,8 @@ public class GDesktop extends JFrame
         vamsasImport_actionPerformed(e);
       }
     });
-    vamsasSave.setText(MessageManager.getString("label.save_vamsas_session") + "...");
+    vamsasSave.setText(MessageManager
+            .getString("label.save_vamsas_session") + "...");
     vamsasSave.setVisible(false);
     vamsasSave.addActionListener(new ActionListener()
     {
@@ -246,7 +259,8 @@ public class GDesktop extends JFrame
         vamsasSave_actionPerformed(e);
       }
     });
-    inputSequence.setText(MessageManager.getString("label.fetch_sequences") + "...");
+    inputSequence.setText(MessageManager.getString("label.fetch_sequences")
+            + "...");
     inputSequence.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -254,7 +268,8 @@ public class GDesktop extends JFrame
         inputSequence_actionPerformed(e);
       }
     });
-    vamsasStop.setText(MessageManager.getString("label.stop_vamsas_session"));
+    vamsasStop.setText(MessageManager
+            .getString("label.stop_vamsas_session"));
     vamsasStop.setVisible(false);
     vamsasStop.addActionListener(new ActionListener()
     {
@@ -271,7 +286,8 @@ public class GDesktop extends JFrame
         closeAll_actionPerformed(e);
       }
     });
-    raiseRelated.setText(MessageManager.getString("action.raise_associated_windows"));
+    raiseRelated.setText(MessageManager
+            .getString("action.raise_associated_windows"));
     raiseRelated.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -279,7 +295,8 @@ public class GDesktop extends JFrame
         raiseRelated_actionPerformed(e);
       }
     });
-    minimizeAssociated.setText(MessageManager.getString("action.minimize_associated_windows"));
+    minimizeAssociated.setText(MessageManager
+            .getString("action.minimize_associated_windows"));
     minimizeAssociated.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -287,7 +304,8 @@ public class GDesktop extends JFrame
         minimizeAssociated_actionPerformed(e);
       }
     });
-    garbageCollect.setText(MessageManager.getString("label.collect_garbage"));
+    garbageCollect.setText(MessageManager
+            .getString("label.collect_garbage"));
     garbageCollect.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -295,7 +313,8 @@ public class GDesktop extends JFrame
         garbageCollect_actionPerformed(e);
       }
     });
-    showMemusage.setText(MessageManager.getString("label.show_memory_usage"));
+    showMemusage.setText(MessageManager
+            .getString("label.show_memory_usage"));
     showMemusage.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -303,7 +322,8 @@ public class GDesktop extends JFrame
         showMemusage_actionPerformed(e);
       }
     });
-    showConsole.setText(MessageManager.getString("label.show_java_console"));
+    showConsole
+            .setText(MessageManager.getString("label.show_java_console"));
     showConsole.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -319,6 +339,15 @@ public class GDesktop extends JFrame
         showNews_actionPerformed(e);
       }
     });
+    snapShotWindow.setText(MessageManager.getString("label.take_snapshot"));
+    snapShotWindow.addActionListener(new ActionListener()
+    {
+      public void actionPerformed(ActionEvent e)
+      {
+        snapShotWindow_actionPerformed(e);
+      }
+    });
+    
     desktopMenubar.add(FileMenu);
     desktopMenubar.add(toolsMenu);
     VamsasMenu.setVisible(false);
@@ -345,6 +374,7 @@ public class GDesktop extends JFrame
     toolsMenu.add(showConsole);
     toolsMenu.add(showNews);
     toolsMenu.add(garbageCollect);
+    toolsMenu.add(snapShotWindow);
     inputMenu.add(inputLocalFileMenuItem);
     inputMenu.add(inputURLMenuItem);
     inputMenu.add(inputTextboxMenuItem);
@@ -355,6 +385,12 @@ public class GDesktop extends JFrame
     // inputMenu.add(vamsasLoad);
   }
 
+  protected void snapShotWindow_actionPerformed(ActionEvent e)
+  {
+    // TODO Auto-generated method stub
+    
+  }
+
   protected void showConsole_actionPerformed(ActionEvent e)
   {
     // TODO Auto-generated method stub
index 08fdf39..7705259 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.jbgui;
index 6985972..17ed4ad 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.jbgui;
@@ -189,7 +191,8 @@ public class GFontChooser extends JPanel
     monospaced.setEnabled(false);
     monospaced.setFont(JvSwingUtils.getLabelFont());
     monospaced.setOpaque(false);
-    monospaced.setToolTipText(MessageManager.getString("label.monospaced_fonts_faster_to_render"));
+    monospaced.setToolTipText(MessageManager
+            .getString("label.monospaced_fonts_faster_to_render"));
     monospaced.setText(MessageManager.getString("label.monospaced_font"));
     jPanel4.setOpaque(false);
     jPanel4.setBounds(new Rectangle(24, 92, 259, 35));
index 3fe76ac..ed2dc7d 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.jbgui;
@@ -53,7 +55,7 @@ public class GPCAPanel extends JInternalFrame
   JMenu fileMenu = new JMenu();
 
   JMenu saveMenu = new JMenu();
-  
+
   protected JMenu scoreMatrixMenu = new JMenu();
 
   JMenuItem eps = new JMenuItem();
@@ -192,7 +194,8 @@ public class GPCAPanel extends JInternalFrame
         outputPoints_actionPerformed(e);
       }
     });
-    outputProjPoints.setText(MessageManager.getString("label.output_transformed_points") + "...");
+    outputProjPoints.setText(MessageManager
+            .getString("label.output_transformed_points") + "...");
     outputProjPoints.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -223,7 +226,8 @@ public class GPCAPanel extends JInternalFrame
       {
       }
     });
-    scoreMatrixMenu.setText(MessageManager.getString("label.select_score_model"));
+    scoreMatrixMenu.setText(MessageManager
+            .getString("label.select_score_model"));
     scoreMatrixMenu.addMenuListener(new MenuListener()
     {
       public void menuSelected(MenuEvent e)
@@ -248,7 +252,8 @@ public class GPCAPanel extends JInternalFrame
       }
     });
     print.setText(MessageManager.getString("action.print"));
-    bgcolour.setText(MessageManager.getString("label.background_colour") + "...");
+    bgcolour.setText(MessageManager.getString("label.background_colour")
+            + "...");
     bgcolour.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -264,9 +269,11 @@ public class GPCAPanel extends JInternalFrame
         originalSeqData_actionPerformed(e);
       }
     });
-    associateViewsMenu.setText(MessageManager.getString("label.associate_nodes_with"));
+    associateViewsMenu.setText(MessageManager
+            .getString("label.associate_nodes_with"));
     calcSettings.setText(MessageManager.getString("action.change_params"));
-    nuclSetting.setText(MessageManager.getString("label.nucleotide_matrix"));
+    nuclSetting
+            .setText(MessageManager.getString("label.nucleotide_matrix"));
     protSetting.setText(MessageManager.getString("label.protein_matrix"));
     nuclSetting.addActionListener(new ActionListener()
     {
@@ -286,7 +293,8 @@ public class GPCAPanel extends JInternalFrame
         protSetting_actionPerfomed(arg0);
       }
     });
-    jvVersionSetting.setText(MessageManager.getString("label.jalview_pca_calculation"));
+    jvVersionSetting.setText(MessageManager
+            .getString("label.jalview_pca_calculation"));
     jvVersionSetting.addActionListener(new ActionListener()
     {
       @Override
@@ -334,7 +342,7 @@ public class GPCAPanel extends JInternalFrame
   protected void scoreMatrix_menuSelected()
   {
     // TODO Auto-generated method stub
-    
+
   }
 
   protected void resetButton_actionPerformed(ActionEvent e)
index 57e1348..aa88a92 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.jbgui;
@@ -69,7 +71,8 @@ public class GPairwiseAlignPanel extends JPanel
     textarea.setText("");
     textarea.setWrapStyleWord(false);
     viewInEditorButton.setFont(new java.awt.Font("Verdana", 0, 12));
-    viewInEditorButton.setText(MessageManager.getString("label.view_alignment_editor"));
+    viewInEditorButton.setText(MessageManager
+            .getString("label.view_alignment_editor"));
     viewInEditorButton
             .addActionListener(new java.awt.event.ActionListener()
             {
index d1df38d..bf01a01 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.jbgui;
@@ -131,9 +133,11 @@ public class GPreferences extends JPanel
 
   JPanel jPanel1 = new JPanel();
 
-  TitledBorder titledBorder1 = new TitledBorder(MessageManager.getString("label.proxy_server"));
+  TitledBorder titledBorder1 = new TitledBorder(
+          MessageManager.getString("label.proxy_server"));
 
-  TitledBorder titledBorder2 = new TitledBorder(MessageManager.getString("label.file_output"));
+  TitledBorder titledBorder2 = new TitledBorder(
+          MessageManager.getString("label.file_output"));
 
   GridBagLayout gridBagLayout2 = new GridBagLayout();
 
@@ -300,9 +304,11 @@ public class GPreferences extends JPanel
     quality.setHorizontalTextPosition(SwingConstants.LEFT);
     quality.setSelected(true);
     quality.setText(MessageManager.getString("label.quality"));
-    visualTab.setBorder(new TitledBorder(MessageManager.getString("action.open_new_aligmnent")));
+    visualTab.setBorder(new TitledBorder(MessageManager
+            .getString("action.open_new_aligmnent")));
     visualTab.setLayout(null);
-    visual2Tab.setBorder(new TitledBorder(MessageManager.getString("action.open_new_aligmnent")));
+    visual2Tab.setBorder(new TitledBorder(MessageManager
+            .getString("action.open_new_aligmnent")));
     visual2Tab.setLayout(new FlowLayout());
     fullScreen.setFont(verdana11);
     fullScreen.setHorizontalAlignment(SwingConstants.RIGHT);
@@ -323,17 +329,20 @@ public class GPreferences extends JPanel
     showGroupbits.setFont(verdana11);
     showGroupbits.setHorizontalAlignment(SwingConstants.RIGHT);
     showGroupbits.setHorizontalTextPosition(SwingConstants.LEFT);
-    showGroupbits.setText(MessageManager.getString("action.show_group") + ":");
+    showGroupbits.setText(MessageManager.getString("action.show_group")
+            + ":");
     showConsensbits.setFont(verdana11);
     showConsensbits.setHorizontalAlignment(SwingConstants.RIGHT);
     showConsensbits.setHorizontalTextPosition(SwingConstants.LEFT);
-    showConsensbits.setText(MessageManager.getString("label.consensus") + ":");
+    showConsensbits.setText(MessageManager.getString("label.consensus")
+            + ":");
     showConsensHistogram.setEnabled(false);
     showConsensHistogram.setFont(verdana11);
     showConsensHistogram.setHorizontalAlignment(SwingConstants.RIGHT);
     showConsensHistogram.setHorizontalTextPosition(SwingConstants.LEFT);
     showConsensHistogram.setSelected(true);
-    showConsensHistogram.setText(MessageManager.getString("label.histogram"));
+    showConsensHistogram.setText(MessageManager
+            .getString("label.histogram"));
     showConsensLogo.setEnabled(false);
     showConsensLogo.setFont(verdana11);
     showConsensLogo.setHorizontalAlignment(SwingConstants.RIGHT);
@@ -351,19 +360,22 @@ public class GPreferences extends JPanel
     showGroupConservation.setHorizontalAlignment(SwingConstants.RIGHT);
     showGroupConservation.setHorizontalTextPosition(SwingConstants.LEFT);
     showGroupConservation.setSelected(true);
-    showGroupConservation.setText(MessageManager.getString("label.conservation"));
+    showGroupConservation.setText(MessageManager
+            .getString("label.conservation"));
     showNpTooltip.setEnabled(true);
     showNpTooltip.setFont(verdana11);
     showNpTooltip.setHorizontalAlignment(SwingConstants.RIGHT);
     showNpTooltip.setHorizontalTextPosition(SwingConstants.LEFT);
     showNpTooltip.setSelected(true);
-    showNpTooltip.setText(MessageManager.getString("label.non_positional_features"));
+    showNpTooltip.setText(MessageManager
+            .getString("label.non_positional_features"));
     showDbRefTooltip.setEnabled(true);
     showDbRefTooltip.setFont(verdana11);
     showDbRefTooltip.setHorizontalAlignment(SwingConstants.RIGHT);
     showDbRefTooltip.setHorizontalTextPosition(SwingConstants.LEFT);
     showDbRefTooltip.setSelected(true);
-    showDbRefTooltip.setText(MessageManager.getString("label.database_references"));
+    showDbRefTooltip.setText(MessageManager
+            .getString("label.database_references"));
     annotations.setFont(verdana11);
     annotations.setHorizontalAlignment(SwingConstants.RIGHT);
     annotations.setHorizontalTextPosition(SwingConstants.LEADING);
@@ -395,7 +407,8 @@ public class GPreferences extends JPanel
     showUnconserved.setHorizontalAlignment(SwingConstants.RIGHT);
     showUnconserved.setHorizontalTextPosition(SwingConstants.LEFT);
     showUnconserved.setSelected(true);
-    showUnconserved.setText(MessageManager.getString("action.show_unconserved"));
+    showUnconserved.setText(MessageManager
+            .getString("action.show_unconserved"));
     showUnconserved.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -408,13 +421,15 @@ public class GPreferences extends JPanel
     shareSelections.setHorizontalAlignment(SwingConstants.RIGHT);
     shareSelections.setHorizontalTextPosition(SwingConstants.LEFT);
     shareSelections.setSelected(true);
-    shareSelections.setText(MessageManager.getString("label.share_selection_across_views"));
+    shareSelections.setText(MessageManager
+            .getString("label.share_selection_across_views"));
     followHighlight.setFont(verdana11);
     followHighlight.setHorizontalAlignment(SwingConstants.RIGHT);
     followHighlight.setHorizontalTextPosition(SwingConstants.LEFT);
     // showUnconserved.setBounds(new Rectangle(169, 40, 200, 23));
     followHighlight.setSelected(true);
-    followHighlight.setText(MessageManager.getString("label.scroll_highlighted_regions"));
+    followHighlight.setText(MessageManager
+            .getString("label.scroll_highlighted_regions"));
 
     gapLabel.setFont(verdana11);
     gapLabel.setHorizontalAlignment(SwingConstants.RIGHT);
@@ -423,7 +438,8 @@ public class GPreferences extends JPanel
     colour.setBounds(new Rectangle(172, 225, 155, 21));
     colourLabel.setFont(verdana11);
     colourLabel.setHorizontalAlignment(SwingConstants.RIGHT);
-    colourLabel.setText(MessageManager.getString("label.alignment_colour") + " ");
+    colourLabel.setText(MessageManager.getString("label.alignment_colour")
+            + " ");
     fontLabel.setFont(verdana11);
     fontLabel.setHorizontalAlignment(SwingConstants.RIGHT);
     fontLabel.setText(MessageManager.getString("label.font"));
@@ -491,18 +507,22 @@ public class GPreferences extends JPanel
     portLabel.setText(MessageManager.getString("label.port"));
     browserLabel.setFont(new java.awt.Font("SansSerif", 0, 11));
     browserLabel.setHorizontalAlignment(SwingConstants.TRAILING);
-    browserLabel.setText(MessageManager.getString("label.default_browser_unix"));
+    browserLabel.setText(MessageManager
+            .getString("label.default_browser_unix"));
     defaultBrowser.setFont(verdana11);
     defaultBrowser.setText("");
-    usagestats.setText(MessageManager.getString("label.send_usage_statistics"));
+    usagestats.setText(MessageManager
+            .getString("label.send_usage_statistics"));
     usagestats.setFont(verdana11);
     usagestats.setHorizontalAlignment(SwingConstants.RIGHT);
     usagestats.setHorizontalTextPosition(SwingConstants.LEADING);
-    questionnaire.setText(MessageManager.getString("label.check_for_questionnaires"));
+    questionnaire.setText(MessageManager
+            .getString("label.check_for_questionnaires"));
     questionnaire.setFont(verdana11);
     questionnaire.setHorizontalAlignment(SwingConstants.RIGHT);
     questionnaire.setHorizontalTextPosition(SwingConstants.LEADING);
-    versioncheck.setText(MessageManager.getString("label.check_for_latest_version"));
+    versioncheck.setText(MessageManager
+            .getString("label.check_for_latest_version"));
     versioncheck.setFont(verdana11);
     versioncheck.setHorizontalAlignment(SwingConstants.RIGHT);
     versioncheck.setHorizontalTextPosition(SwingConstants.LEADING);
@@ -550,7 +570,8 @@ public class GPreferences extends JPanel
     });
 
     linkScrollPane.setBorder(null);
-    linkPanel.setBorder(new TitledBorder(MessageManager.getString("label.url_linkfrom_sequence_id")));
+    linkPanel.setBorder(new TitledBorder(MessageManager
+            .getString("label.url_linkfrom_sequence_id")));
     linkPanel.setLayout(borderLayout2);
     editLinkButtons.setLayout(gridLayout1);
     gridLayout1.setRows(3);
@@ -607,7 +628,7 @@ public class GPreferences extends JPanel
     clustaljv.setText(MessageManager.getString("label.clustal") + "     ");
     blcjv.setText(MessageManager.getString("label.blc") + "     ");
     fastajv.setText(MessageManager.getString("label.fasta") + "     ");
-    msfjv.setText(MessageManager.getString("label.msf")+ "     ");
+    msfjv.setText(MessageManager.getString("label.msf") + "     ");
     pfamjv.setText(MessageManager.getString("label.pfam") + "     ");
     pileupjv.setText(MessageManager.getString("label.pileup") + "     ");
     msfjv.setFont(verdana11);
@@ -638,24 +659,25 @@ public class GPreferences extends JPanel
     smoothFont.setText(MessageManager.getString("label.smooth_font"));
     calcTab.setLayout(null);
     autoCalculateConsCheck.setFont(JvSwingUtils.getLabelFont());
-    autoCalculateConsCheck.setText(MessageManager.getString("label.autocalculate_consensus"));
+    autoCalculateConsCheck.setText(MessageManager
+            .getString("label.autocalculate_consensus"));
     autoCalculateConsCheck.setBounds(new Rectangle(21, 52, 209, 23));
     padGaps.setFont(JvSwingUtils.getLabelFont());
     padGaps.setText(MessageManager.getString("label.pad_gaps_when_editing"));
     padGaps.setBounds(new Rectangle(22, 94, 168, 23));
     sortByTree.setFont(JvSwingUtils.getLabelFont());
-    sortByTree.setText(MessageManager.getString("label.sort_with_new_tree"));
     sortByTree
-            .setToolTipText(MessageManager.getString("label.any_trees_calculated_or_loaded_alignment_automatically_sort"));
+            .setText(MessageManager.getString("label.sort_with_new_tree"));
+    sortByTree
+            .setToolTipText(MessageManager
+                    .getString("label.any_trees_calculated_or_loaded_alignment_automatically_sort"));
     sortByTree.setBounds(new Rectangle(22, 136, 168, 23));
 
     autoIdWidth.setFont(JvSwingUtils.getLabelFont());
-    autoIdWidth.setText(MessageManager.getString("label.automatically_set_id_width"));
+    autoIdWidth.setText(MessageManager
+            .getString("label.automatically_set_id_width"));
     autoIdWidth
-            .setToolTipText("<html>"
-                    + JvSwingUtils
-                            .wrapTooltip("Adjusts the width of the generated EPS or PNG file to ensure even the longest sequence ID or annotation label is displayed")
-                    + "</html>");
+            .setToolTipText(JvSwingUtils.wrapTooltip(true, MessageManager.getString("label.adjusts_width_generated_eps_png")));
     autoIdWidth.setBounds(new Rectangle(228, 96, 188, 23));
     autoIdWidth.addActionListener(new ActionListener()
     {
@@ -667,17 +689,12 @@ public class GPreferences extends JPanel
       }
     });
     userIdWidthlabel.setFont(JvSwingUtils.getLabelFont());
-    userIdWidthlabel.setText(MessageManager.getString("label.figure_id_column_width"));
+    userIdWidthlabel.setText(MessageManager
+            .getString("label.figure_id_column_width"));
     userIdWidth
-            .setToolTipText("<html>"
-                    + JvSwingUtils
-                            .wrapTooltip("Manually specify the width of the left hand column where sequence IDs and annotation labels will be rendered in exported alignment figures. This setting will be ignored if 'Automatically set ID width' is set")
-                    + "</html>");
+            .setToolTipText(JvSwingUtils.wrapTooltip(true, MessageManager.getString("label.manually_specify_width_left_column")));
     userIdWidthlabel
-            .setToolTipText("<html>"
-                    + JvSwingUtils
-                            .wrapTooltip("Manually specify the width of the left hand column where sequence IDs and annotation labels will be rendered in exported alignment figures. This setting will be ignored if 'Automatically set ID width' is set")
-                    + "</html>");
+            .setToolTipText(JvSwingUtils.wrapTooltip(true, MessageManager.getString("label.manually_specify_width_left_column")));
     userIdWidthlabel.setBounds(new Rectangle(236, 120, 168, 23));
     userIdWidth.setFont(JvSwingUtils.getTextAreaFont());
     userIdWidth.setText("");
@@ -692,7 +709,8 @@ public class GPreferences extends JPanel
       }
     });
     modellerOutput.setFont(JvSwingUtils.getLabelFont());
-    modellerOutput.setText(MessageManager.getString("label.use_modeller_output"));
+    modellerOutput.setText(MessageManager
+            .getString("label.use_modeller_output"));
     modellerOutput.setBounds(new Rectangle(228, 226, 168, 23));
 
     dasPanel.setLayout(borderLayout4);
@@ -709,9 +727,11 @@ public class GPreferences extends JPanel
     idItalics.setFont(JvSwingUtils.getLabelFont());
     idItalics.setHorizontalAlignment(SwingConstants.RIGHT);
     idItalics.setHorizontalTextPosition(SwingConstants.LEADING);
-    idItalics.setText(MessageManager.getString("label.sequence_name_italics"));
+    idItalics.setText(MessageManager
+            .getString("label.sequence_name_italics"));
     openoverv.setFont(JvSwingUtils.getLabelFont());
-    openoverv.setActionCommand(MessageManager.getString("label.open_overview"));
+    openoverv.setActionCommand(MessageManager
+            .getString("label.open_overview"));
     openoverv.setHorizontalAlignment(SwingConstants.RIGHT);
     openoverv.setHorizontalTextPosition(SwingConstants.LEFT);
     openoverv.setText(MessageManager.getString(("label.open_overview")));
@@ -765,24 +785,26 @@ public class GPreferences extends JPanel
     autoAnnotSettings3.add(showConsensLogo);
 
     JPanel tooltipSettings = new JPanel();
-    tooltipSettings.setBorder(new TitledBorder(MessageManager.getString("label.sequence_id_tooltip")));
+    tooltipSettings.setBorder(new TitledBorder(MessageManager
+            .getString("label.sequence_id_tooltip")));
     tooltipSettings.setBounds(173, 130, 200, 62);
     tooltipSettings.setLayout(new GridLayout(2, 1));
     tooltipSettings.add(showDbRefTooltip);
     tooltipSettings.add(showNpTooltip);
     visualTab.add(tooltipSettings);
     visualTab.add(jPanel2);
-    JvSwingUtils.addtoLayout(visual2Tab,
-           MessageManager.getString("label.default_colour_scheme_for_alignment"), colourLabel, colour);
+    JvSwingUtils.addtoLayout(visual2Tab, MessageManager
+            .getString("label.default_colour_scheme_for_alignment"),
+            colourLabel, colour);
     JPanel annotationShding = new JPanel();
-    annotationShding.setBorder(new TitledBorder(
-            MessageManager.getString("label.annotation_shading_default")));
+    annotationShding.setBorder(new TitledBorder(MessageManager
+            .getString("label.annotation_shading_default")));
     annotationShding.setLayout(new GridLayout(1, 2));
-    JvSwingUtils.addtoLayout(annotationShding,
-            MessageManager.getString("label.default_minimum_colour_annotation_shading"),
+    JvSwingUtils.addtoLayout(annotationShding, MessageManager
+            .getString("label.default_minimum_colour_annotation_shading"),
             mincolourLabel, minColour);
-    JvSwingUtils.addtoLayout(annotationShding,
-            MessageManager.getString("label.default_maximum_colour_annotation_shading"),
+    JvSwingUtils.addtoLayout(annotationShding, MessageManager
+            .getString("label.default_maximum_colour_annotation_shading"),
             maxcolourLabel, maxColour);
     visual2Tab.add(annotationShding); // , FlowLayout.LEFT);
 
@@ -846,7 +868,8 @@ public class GPreferences extends JPanel
 
     tabbedPane.add(visualTab, MessageManager.getString("label.visual"));
     tabbedPane.add(visual2Tab, MessageManager.getString("label.colours"));
-    tabbedPane.add(connectTab, MessageManager.getString("label.connections"));
+    tabbedPane.add(connectTab,
+            MessageManager.getString("label.connections"));
     tabbedPane.add(exportTab, MessageManager.getString("label.output"));
     jPanel11.add(jLabel1);
     jPanel11.add(blcjv);
@@ -865,7 +888,8 @@ public class GPreferences extends JPanel
     calcTab.add(padGaps);
     calcTab.add(sortByTree);
 
-    tabbedPane.add(dasPanel, MessageManager.getString("label.das_settings"));
+    tabbedPane
+            .add(dasPanel, MessageManager.getString("label.das_settings"));
     tabbedPane.add(wsPanel, MessageManager.getString("label.web_services"));
 
     exportTab.add(epsLabel);
index f1ce039..f91d8b2 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.jbgui;
@@ -96,16 +98,20 @@ public class GRestInputParamEditDialog
     optionsPanel = new JPanel(new MigLayout("", "[fill]", "[fill]"));
     JScrollPane optionView = new JScrollPane();
     optionView.setViewportView(options);
-    JvSwingUtils.mgAddtoLayout(dpane, MessageManager.getString("label.input_parameter_name"), new JLabel(
-            MessageManager.getString("label.name")), tok, "grow,spanx 3,wrap");
+    JvSwingUtils.mgAddtoLayout(dpane,
+            MessageManager.getString("label.input_parameter_name"),
+            new JLabel(MessageManager.getString("label.name")), tok,
+            "grow,spanx 3,wrap");
     JPanel paramsType = new JPanel(new MigLayout("", "[grow 100,fill]",
             "[grow 100,fill]"));
-    paramsType.setBorder(new TitledBorder(MessageManager.getString("label.select_input_type")));
+    paramsType.setBorder(new TitledBorder(MessageManager
+            .getString("label.select_input_type")));
     JScrollPane jlistScroller = new JScrollPane();
     jlistScroller.setViewportView(typeList);
     paramsType.add(jlistScroller, "spanx 2,spany 2");
     dpane.add(paramsType);
-    optionsPanel.setBorder(new TitledBorder(MessageManager.getString("label.set_options_for_type")));
+    optionsPanel.setBorder(new TitledBorder(MessageManager
+            .getString("label.set_options_for_type")));
     optionsPanel.add(optionView);
     dpane.add(optionsPanel, "wrap");
     okcancel = new JPanel(new MigLayout("", "[center][center]", "[]"));
index 50048aa..e14e96b 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.jbgui;
@@ -107,48 +109,46 @@ public class GRestServiceEditorPane extends JPanel
     cpanel = details;
     name = new JTextArea(1, 12);
 
-    JvSwingUtils.mgAddtoLayout(cpanel,
-            MessageManager.getString("label.short_descriptive_name_for_service"), new JLabel(MessageManager.getString("label.name")),
-            name, "wrap");
+    JvSwingUtils.mgAddtoLayout(cpanel, MessageManager
+            .getString("label.short_descriptive_name_for_service"),
+            new JLabel(MessageManager.getString("label.name")), name,
+            "wrap");
     action = new JComboBox();
-    JvSwingUtils
-            .mgAddtoLayout(
-                    cpanel,
-                    MessageManager.getString("label.function_service_performs"),
-                    new JLabel(MessageManager.getString("label.service_action")), action, "wrap");
+    JvSwingUtils.mgAddtoLayout(cpanel,
+            MessageManager.getString("label.function_service_performs"),
+            new JLabel(MessageManager.getString("label.service_action")),
+            action, "wrap");
     descr = new JTextArea(4, 60);
     descrVp = new JScrollPane();
     descrVp.setViewportView(descr);
-    JvSwingUtils.mgAddtoLayout(cpanel, MessageManager.getString("label.brief_description_service"),
-            new JLabel(MessageManager.getString("label.description")), descrVp, "wrap");
+    JvSwingUtils.mgAddtoLayout(cpanel,
+            MessageManager.getString("label.brief_description_service"),
+            new JLabel(MessageManager.getString("label.description")),
+            descrVp, "wrap");
 
     url = new JTextArea(2, 60);
     urlVp = new JScrollPane();
     urlVp.setViewportView(url);
-    JvSwingUtils
-            .mgAddtoLayout(
-                    cpanel,
-                    MessageManager.getString("label.url_post_data_service"),
-                    new JLabel(MessageManager.getString("label.post_url")), urlVp, "wrap");
+    JvSwingUtils.mgAddtoLayout(cpanel,
+            MessageManager.getString("label.url_post_data_service"),
+            new JLabel(MessageManager.getString("label.post_url")), urlVp,
+            "wrap");
 
     urlsuff = new JTextArea();
     urlsuff.setColumns(60);
 
-    JvSwingUtils
-            .mgAddtoLayout(
-                    cpanel,
-                    MessageManager.getString("label.optional_suffix"),
-                    new JLabel(MessageManager.getString("label.url_suffix")), urlsuff, "wrap");
+    JvSwingUtils.mgAddtoLayout(cpanel, MessageManager
+            .getString("label.optional_suffix"),
+            new JLabel(MessageManager.getString("label.url_suffix")),
+            urlsuff, "wrap");
 
     // input options
     // details.add(cpanel = new JPanel(), BorderLayout.CENTER);
     // cpanel.setLayout(new FlowLayout());
     hSeparable = new JCheckBox(MessageManager.getString("label.per_seq"));
     hSeparable
-            .setToolTipText("<html>"
-                    + JvSwingUtils
-                            .wrapTooltip("When checked, a job is created for every sequence in the current selection.")
-                    + "<html>");
+            .setToolTipText(JvSwingUtils
+                            .wrapTooltip(false, MessageManager.getString("label.job_created_when_checked")));
     hSeparable.addActionListener(new ActionListener()
     {
 
@@ -159,15 +159,10 @@ public class GRestServiceEditorPane extends JPanel
 
       }
     });
-    vSeparable = new JCheckBox(MessageManager.getString("label.result_vertically_separable"));
+    vSeparable = new JCheckBox(
+            MessageManager.getString("label.result_vertically_separable"));
     vSeparable
-            .setToolTipText("<html>"
-                    + JvSwingUtils
-                            .wrapTooltip("When checked, a single job is created for the visible region and results"
-                                    + " mapped back onto their location in the alignment. Otherwise, a job would be"
-                                    + " created for every contiguous region visible in the alignment or current"
-                                    + " selection (e.g. a multiple alignment).")
-                    + "</html>");
+            .setToolTipText(JvSwingUtils.wrapTooltip(false, MessageManager.getString("label.when_checked_job_visible_region_and_results")));
     vSeparable.addActionListener(new ActionListener()
     {
 
@@ -180,8 +175,9 @@ public class GRestServiceEditorPane extends JPanel
     });
     gapChar = new JComboBox();
     JvSwingUtils.mgAddtoLayout(cpanel,
-            MessageManager.getString("label.preferred_gap_character"), new JLabel(
-                    MessageManager.getString("label.gap_character") + ":"), gapChar, "wrap");
+            MessageManager.getString("label.preferred_gap_character"),
+            new JLabel(MessageManager.getString("label.gap_character")
+                    + ":"), gapChar, "wrap");
 
     cpanel.add(hSeparable);
     cpanel.add(vSeparable);
@@ -189,7 +185,8 @@ public class GRestServiceEditorPane extends JPanel
     // Input and Output lists
     // Inputparams
     JPanel iprmsList = new JPanel();
-    iprmsList.setBorder(new TitledBorder(MessageManager.getString("label.data_input_parameters")));
+    iprmsList.setBorder(new TitledBorder(MessageManager
+            .getString("label.data_input_parameters")));
     iprmsList.setLayout(new MigLayout("", "[grow 90, fill][]"));
     iprmVp = new JScrollPane();
     iprmVp.getViewport().setView(iprms = new JList());
@@ -239,7 +236,8 @@ public class GRestServiceEditorPane extends JPanel
     JPanel iprmButs = new JPanel();
     iprmButs.setLayout(new MigLayout());
 
-    iprmsAdd = JvSwingUtils.makeButton("+", MessageManager.getString("action.add_input_parameter"),
+    iprmsAdd = JvSwingUtils.makeButton("+",
+            MessageManager.getString("action.add_input_parameter"),
             new ActionListener()
             {
 
@@ -251,7 +249,8 @@ public class GRestServiceEditorPane extends JPanel
               }
             });
     iprmsRem = JvSwingUtils.makeButton("-",
-            MessageManager.getString("action.remove_input_parameter"), new ActionListener()
+            MessageManager.getString("action.remove_input_parameter"),
+            new ActionListener()
             {
 
               @Override
@@ -269,7 +268,8 @@ public class GRestServiceEditorPane extends JPanel
 
     // Return Parameters
 
-    rdataAdd = JvSwingUtils.makeButton("+", MessageManager.getString("action.add_return_datatype"),
+    rdataAdd = JvSwingUtils.makeButton("+",
+            MessageManager.getString("action.add_return_datatype"),
             new ActionListener()
             {
 
@@ -280,7 +280,8 @@ public class GRestServiceEditorPane extends JPanel
 
               }
             });
-    rdataRem = JvSwingUtils.makeButton("-", MessageManager.getString("action.remove_return_datatype"),
+    rdataRem = JvSwingUtils.makeButton("-",
+            MessageManager.getString("action.remove_return_datatype"),
             new ActionListener()
             {
 
@@ -291,8 +292,10 @@ public class GRestServiceEditorPane extends JPanel
 
               }
             });
-    rdataNup = JvSwingUtils.makeButton(MessageManager.getString("action.move_up"),
-            MessageManager.getString("label.move_return_type_up_order"), new ActionListener()
+    rdataNup = JvSwingUtils.makeButton(
+            MessageManager.getString("action.move_up"),
+            MessageManager.getString("label.move_return_type_up_order"),
+            new ActionListener()
             {
 
               @Override
@@ -302,8 +305,10 @@ public class GRestServiceEditorPane extends JPanel
 
               }
             });
-    rdataNdown = JvSwingUtils.makeButton(MessageManager.getString("action.move_down"),
-            MessageManager.getString("label.move_return_type_down_order"), new ActionListener()
+    rdataNdown = JvSwingUtils.makeButton(
+            MessageManager.getString("action.move_down"),
+            MessageManager.getString("label.move_return_type_down_order"),
+            new ActionListener()
             {
 
               @Override
@@ -315,10 +320,12 @@ public class GRestServiceEditorPane extends JPanel
             });
 
     JPanel rparamList = new JPanel();
-    rparamList.setBorder(new TitledBorder(MessageManager.getString("label.data_returned_by_service")));
+    rparamList.setBorder(new TitledBorder(MessageManager
+            .getString("label.data_returned_by_service")));
     rparamList.setLayout(new MigLayout("", "[grow 90, fill][]"));
     rdata = new JList();
-    rdata.setToolTipText(MessageManager.getString("label.right_click_to_edit_currently_selected_parameter"));
+    rdata.setToolTipText(MessageManager
+            .getString("label.right_click_to_edit_currently_selected_parameter"));
     rdata.addMouseListener(new MouseListener()
     {
 
@@ -381,13 +388,12 @@ public class GRestServiceEditorPane extends JPanel
     JPanel urldescPane = new JPanel();
     urldescPane.setLayout(new MigLayout("", "[grow 100, fill]",
             "[grow 100, fill]"));
-    urldescPane.setBorder(new TitledBorder(MessageManager.getString("label.rsbs_encoded_service")));
+    urldescPane.setBorder(new TitledBorder(MessageManager
+            .getString("label.rsbs_encoded_service")));
     urldescPane.add(urldescVp, "span");
     paste.add(urldescPane, "span");
     urldescPane
-            .setToolTipText("<html>"
-                    + JvSwingUtils
-                            .wrapTooltip("Flat file representation of this rest service using the Really Simple Bioinformatics Service formalism"));
+            .setToolTipText(JvSwingUtils.wrapTooltip(false, MessageManager.getString("label.flat_file_representation")));
 
     parseRes = new JTextArea();
     parseResVp = new JScrollPane();
@@ -396,27 +402,27 @@ public class GRestServiceEditorPane extends JPanel
     parseRes.setColumns(60);
     parseWarnings = new JPanel(new MigLayout("", "[grow 100, fill]",
             "[grow 100, fill]"));
-    parseWarnings.setBorder(new TitledBorder(MessageManager.getString("label.parsing_errors")));
+    parseWarnings.setBorder(new TitledBorder(MessageManager
+            .getString("label.parsing_errors")));
     parseWarnings
-            .setToolTipText("<html>"
-                    + JvSwingUtils
-                            .wrapTooltip("Results of parsing the RSBS representation")
-                    + "</html>");
+            .setToolTipText(JvSwingUtils.wrapTooltip(false, MessageManager.getString("label.result_of_parsing_rsbs")));
     parseWarnings.add(parseResVp, "center");
     parseRes.setEditable(false);
     paste.add(parseWarnings, "span");
     setLayout(new BorderLayout());
     add(panels, BorderLayout.CENTER);
-    okButton = JvSwingUtils.makeButton(MessageManager.getString("action.ok"), "", new ActionListener()
-    {
+    okButton = JvSwingUtils.makeButton(
+            MessageManager.getString("action.ok"), "", new ActionListener()
+            {
 
-      @Override
-      public void actionPerformed(ActionEvent e)
-      {
-        ok_actionPerformed();
-      }
-    });
-    cancelButton = JvSwingUtils.makeButton(MessageManager.getString("action.cancel"), "",
+              @Override
+              public void actionPerformed(ActionEvent e)
+              {
+                ok_actionPerformed();
+              }
+            });
+    cancelButton = JvSwingUtils.makeButton(
+            MessageManager.getString("action.cancel"), "",
             new ActionListener()
             {
 
index 9e72a13..90fd530 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.jbgui;
index d3b9c54..3e6f91a 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.jbgui;
@@ -70,10 +72,10 @@ public class GSequenceLink extends Panel
     jLabel2.setText(MessageManager.getString("label.url"));
     jLabel2.setBounds(new Rectangle(17, 37, 54, 27));
     jLabel3.setFont(new java.awt.Font("Verdana", Font.ITALIC, 11));
-    jLabel3.setText("Use $SEQUENCE_ID$ or $SEQUENCE_ID=/<regex>/=$");
+    jLabel3.setText(MessageManager.getString("label.use_sequence_id_1"));
     jLabel3.setBounds(new Rectangle(21, 72, 351, 15));
     jLabel4.setFont(new java.awt.Font("Verdana", Font.ITALIC, 11));
-    jLabel4.setText("\nto embed sequence id in URL");
+    jLabel4.setText(MessageManager.getString("label.use_sequence_id_2"));
     jLabel4.setBounds(new Rectangle(21, 93, 351, 15));
     jPanel1.setBorder(BorderFactory.createEtchedBorder());
     jPanel1.setLayout(null);
@@ -119,8 +121,8 @@ public class GSequenceLink extends Panel
     JOptionPane
             .showInternalMessageDialog(
                     jalview.gui.Desktop.desktop,
-                    "Sequence URL must contain $SEQUENCE_ID$ or a regex $SEQUENCE_ID=/<regex>/=$",
-                    "URL not valid", JOptionPane.WARNING_MESSAGE);
+                    MessageManager.getString("warn.url_must_contain"),
+                    MessageManager.getString("label.invalid_url"), JOptionPane.WARNING_MESSAGE);
     return false;
   }
 
index 4c5edf5..b11fb7f 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.jbgui;
@@ -138,7 +140,8 @@ public class GSliderPanel extends JPanel
     allGroupsCheck.setEnabled(false);
     allGroupsCheck.setFont(new java.awt.Font("Verdana", 0, 11));
     allGroupsCheck.setOpaque(false);
-    allGroupsCheck.setText(MessageManager.getString("action.apply_all_groups"));
+    allGroupsCheck.setText(MessageManager
+            .getString("action.apply_all_groups"));
     allGroupsCheck.addActionListener(new java.awt.event.ActionListener()
     {
       public void actionPerformed(ActionEvent e)
index 720138a..f6c4e05 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.jbgui;
@@ -78,7 +80,8 @@ public class GStructureViewer extends JInternalFrame
     viewMenu.setText(MessageManager.getString("action.view"));
     chainMenu.setText(MessageManager.getString("action.show_chain"));
     colourMenu.setText(MessageManager.getString("label.colours"));
-    backGround.setText(MessageManager.getString("label.background_colour") + "...");
+    backGround.setText(MessageManager.getString("label.background_colour")
+            + "...");
     backGround.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent actionEvent)
@@ -135,7 +138,8 @@ public class GStructureViewer extends JInternalFrame
         hydroColour_actionPerformed(actionEvent);
       }
     });
-    strandColour.setText(MessageManager.getString("label.strand_propensity"));
+    strandColour.setText(MessageManager
+            .getString("label.strand_propensity"));
     strandColour.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent actionEvent)
@@ -167,7 +171,8 @@ public class GStructureViewer extends JInternalFrame
         buriedColour_actionPerformed(actionEvent);
       }
     });
-    purinePyrimidineColour.setText(MessageManager.getString("label.purine_pyrimidine"));
+    purinePyrimidineColour.setText(MessageManager
+            .getString("label.purine_pyrimidine"));
     purinePyrimidineColour.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent actionEvent)
@@ -186,7 +191,8 @@ public class GStructureViewer extends JInternalFrame
     });
     jmolColour.setSelected(false);
     jmolColour.setText(MessageManager.getString("label.colour_with_jmol"));
-    jmolColour.setToolTipText(MessageManager.getString("label.let_jmol_manage_structure_colours"));
+    jmolColour.setToolTipText(MessageManager
+            .getString("label.let_jmol_manage_structure_colours"));
     jmolColour.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent actionEvent)
@@ -203,7 +209,8 @@ public class GStructureViewer extends JInternalFrame
         jmolHelp_actionPerformed(actionEvent);
       }
     });
-    alignStructs.setText(MessageManager.getString("label.align_structures"));
+    alignStructs
+            .setText(MessageManager.getString("label.align_structures"));
     alignStructs.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent actionEvent)
index 1b35d51..b492c21 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.jbgui;
@@ -116,7 +118,8 @@ public class GTreePanel extends JInternalFrame
       {
       }
     });
-    sortAssocViews.setText(MessageManager.getString("label.sort_alignment_by_tree"));
+    sortAssocViews.setText(MessageManager
+            .getString("label.sort_alignment_by_tree"));
     sortAssocViews.addActionListener(new java.awt.event.ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -132,7 +135,8 @@ public class GTreePanel extends JInternalFrame
         font_actionPerformed(e);
       }
     });
-    bootstrapMenu.setText(MessageManager.getString("label.show_bootstrap_values"));
+    bootstrapMenu.setText(MessageManager
+            .getString("label.show_bootstrap_values"));
     bootstrapMenu.addActionListener(new java.awt.event.ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -175,8 +179,10 @@ public class GTreePanel extends JInternalFrame
     });
     saveAsMenu.setText(MessageManager.getString("action.save_as"));
     placeholdersMenu
-            .setToolTipText(MessageManager.getString("label.marks_leaves_tree_not_associated_with_sequence"));
-    placeholdersMenu.setText(MessageManager.getString("label.mark_unlinked_leaves"));
+            .setToolTipText(MessageManager
+                    .getString("label.marks_leaves_tree_not_associated_with_sequence"));
+    placeholdersMenu.setText(MessageManager
+            .getString("label.mark_unlinked_leaves"));
     placeholdersMenu.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -184,7 +190,8 @@ public class GTreePanel extends JInternalFrame
         placeholdersMenu_actionPerformed(e);
       }
     });
-    textbox.setText(MessageManager.getString("label.out_to_textbox") + "...");
+    textbox.setText(MessageManager.getString("label.out_to_textbox")
+            + "...");
     textbox.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -200,7 +207,8 @@ public class GTreePanel extends JInternalFrame
         originalSeqData_actionPerformed(e);
       }
     });
-    associateLeavesMenu.setText(MessageManager.getString("label.associate_leaves_with"));
+    associateLeavesMenu.setText(MessageManager
+            .getString("label.associate_leaves_with"));
     this.getContentPane().add(scrollPane, BorderLayout.CENTER);
     jMenuBar1.add(fileMenu);
     jMenuBar1.add(viewMenu);
index 1f4fc9d..7a485fd 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.jbgui;
@@ -23,7 +25,9 @@ import jalview.util.MessageManager;
 
 import java.awt.*;
 import java.awt.event.*;
+
 import javax.swing.*;
+import javax.swing.colorchooser.AbstractColorChooserPanel;
 
 /**
  * DOCUMENT ME!
@@ -181,7 +185,11 @@ public class GUserDefinedColours extends JPanel
     label.setFont(new java.awt.Font("Verdana", Font.ITALIC, 10));
     label.setOpaque(false);
     label.setPreferredSize(new Dimension(260, 34));
-    label.setText(MessageManager.formatMessage("label.html_content", new String[]{MessageManager.getString("label.save_colour_scheme_with_unique_name_added_to_colour_menu")}));
+    label.setText(MessageManager.formatMessage(
+            "label.html_content",
+            new String[]
+            { MessageManager
+                    .getString("label.save_colour_scheme_with_unique_name_added_to_colour_menu") }));
     caseSensitive.setText(MessageManager.getString("label.case_sensitive"));
     caseSensitive.addActionListener(new ActionListener()
     {
@@ -190,7 +198,8 @@ public class GUserDefinedColours extends JPanel
         caseSensitive_actionPerformed(e);
       }
     });
-    lcaseColour.setText(MessageManager.getString("label.lower_case_colour"));
+    lcaseColour
+            .setText(MessageManager.getString("label.lower_case_colour"));
     lcaseColour.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -220,6 +229,13 @@ public class GUserDefinedColours extends JPanel
     jPanel4.add(panel1, java.awt.BorderLayout.CENTER);
     this.add(jPanel4, java.awt.BorderLayout.CENTER);
     this.add(colorChooser, java.awt.BorderLayout.EAST);
+    
+    AbstractColorChooserPanel[] choosers = colorChooser.getChooserPanels();
+    // JAL-1360 larger JColorChooser in Java 7 overwrites AA panel; restrict to swatch picker only
+    if (choosers.length > 3) {
+       // Java 7 default has 5 options rather than 3 for choosing colours; keep the first only
+       colorChooser.setChooserPanels(new AbstractColorChooserPanel[]{choosers[0]});
+    }
   }
 
   /**
index 0d99704..910768e 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.jbgui;
@@ -107,7 +109,8 @@ public class GWebserviceInfo extends JPanel
     });
     buttonPanel.setLayout(gridBagLayout1);
     buttonPanel.setOpaque(false);
-    showResultsNewFrame.setText(MessageManager.getString("label.new_window"));
+    showResultsNewFrame.setText(MessageManager
+            .getString("label.new_window"));
     mergeResults.setText(MessageManager.getString("action.merge_results"));
     this.setBackground(Color.white);
     this.add(jPanel1, BorderLayout.NORTH);
index cae8232..ff171c9 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.jbgui;
@@ -53,7 +55,8 @@ public class GWsPreferences extends JPanel
   protected JList sbrsList = new JList();
 
   protected TitledBorder sbrsListTitleBorder = new TitledBorder(
-          MessageManager.getString("label.simple_bioinformatics_rest_services"));
+          MessageManager
+                  .getString("label.simple_bioinformatics_rest_services"));
 
   protected JButton newSbrsUrl = new JButton();
 
@@ -160,8 +163,8 @@ public class GWsPreferences extends JPanel
     });
     indexByHost.setFont(new java.awt.Font("Verdana", Font.PLAIN, 10));
     indexByHost.setText(MessageManager.getString("label.index_by_host"));
-    indexByHost
-            .setToolTipText(MessageManager.getString("label.index_web_services_menu_by_host_site"));
+    indexByHost.setToolTipText(MessageManager
+            .getString("label.index_web_services_menu_by_host_site"));
     indexByHost.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -180,7 +183,8 @@ public class GWsPreferences extends JPanel
     });
     enableJws2Services
             .setFont(new java.awt.Font("Verdana", Font.PLAIN, 10));
-    enableJws2Services.setText(MessageManager.getString("label.enable_jabaws_services"));
+    enableJws2Services.setText(MessageManager
+            .getString("label.enable_jabaws_services"));
     enableJws2Services.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -189,9 +193,12 @@ public class GWsPreferences extends JPanel
       }
     });
     displayWsWarning.setFont(new java.awt.Font("Verdana", Font.PLAIN, 10));
-    displayWsWarning.setText(MessageManager.getString("label.display_warnings"));
+    displayWsWarning.setText(MessageManager
+            .getString("label.display_warnings"));
     displayWsWarning
-            .setToolTipText("<html>" + MessageManager.getString("label.option_want_informed_web_service_URL_cannot_be_accessed_jalview_when_starts_up"));
+            .setToolTipText("<html>"
+                    + MessageManager
+                            .getString("label.option_want_informed_web_service_URL_cannot_be_accessed_jalview_when_starts_up"));
     displayWsWarning.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -219,7 +226,8 @@ public class GWsPreferences extends JPanel
     });
 
     deleteWsUrl.setFont(new java.awt.Font("Verdana", Font.PLAIN, 10));
-    deleteWsUrl.setText(MessageManager.getString("label.delete_service_url"));
+    deleteWsUrl.setText(MessageManager
+            .getString("label.delete_service_url"));
     deleteWsUrl.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -229,7 +237,8 @@ public class GWsPreferences extends JPanel
     });
     moveWsUrlUp.setFont(new java.awt.Font("Verdana", Font.PLAIN, 10));
     moveWsUrlUp.setText(MessageManager.getString("action.move_up"));
-    moveWsUrlUp.setToolTipText(MessageManager.getString("label.move_url_up"));
+    moveWsUrlUp.setToolTipText(MessageManager
+            .getString("label.move_url_up"));
     moveWsUrlUp.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -239,7 +248,8 @@ public class GWsPreferences extends JPanel
     });
     moveWsUrlDown.setFont(new java.awt.Font("Verdana", Font.PLAIN, 10));
     moveWsUrlDown.setText(MessageManager.getString("action.move_down"));
-    moveWsUrlDown.setToolTipText(MessageManager.getString("label.move_url_down"));
+    moveWsUrlDown.setToolTipText(MessageManager
+            .getString("label.move_url_down"));
     moveWsUrlDown.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -248,7 +258,8 @@ public class GWsPreferences extends JPanel
       }
     });
     newSbrsUrl.setFont(new java.awt.Font("Verdana", Font.PLAIN, 10));
-    newSbrsUrl.setText(MessageManager.getString("label.add_sbrs_definition"));
+    newSbrsUrl.setText(MessageManager
+            .getString("label.add_sbrs_definition"));
     newSbrsUrl.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -257,7 +268,8 @@ public class GWsPreferences extends JPanel
       }
     });
     editSbrsUrl.setFont(new java.awt.Font("Verdana", Font.PLAIN, 10));
-    editSbrsUrl.setText(MessageManager.getString("label.edit_sbrs_definition"));
+    editSbrsUrl.setText(MessageManager
+            .getString("label.edit_sbrs_definition"));
     editSbrsUrl.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -267,7 +279,8 @@ public class GWsPreferences extends JPanel
     });
 
     deleteSbrsUrl.setFont(new java.awt.Font("Verdana", Font.PLAIN, 10));
-    deleteSbrsUrl.setText(MessageManager.getString("label.delete_sbrs_definition"));
+    deleteSbrsUrl.setText(MessageManager
+            .getString("label.delete_sbrs_definition"));
     deleteSbrsUrl.addActionListener(new ActionListener()
     {
       public void actionPerformed(ActionEvent e)
index 87b0ef3..acd83a8 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.math;
@@ -48,7 +50,7 @@ public class Matrix
   public double[] e; // off diagonal
 
   /**
-   * maximum number of iterations for tqli 
+   * maximum number of iterations for tqli
    * 
    */
   int maxIter = 45; // fudge - add 15 iterations, just in case
@@ -348,7 +350,7 @@ public class Matrix
       }
     }
   }
-  
+
   /**
    * DOCUMENT ME!
    */
@@ -401,7 +403,7 @@ public class Matrix
 
           if (iter == maxIter)
           {
-            throw new Exception("Too many iterations in tqli ("+maxIter+")");
+            throw new Exception(MessageManager.formatMessage("exception.matrix_too_many_iteration", new String[]{"tqli", Integer.valueOf(maxIter).toString()}));
           }
           else
           {
@@ -650,7 +652,7 @@ public class Matrix
 
           if (iter == maxIter)
           {
-            throw new Exception ("Too many iterations in tqli2 (max is "+maxIter+")");
+              throw new Exception(MessageManager.formatMessage("exception.matrix_too_many_iteration", new String[]{"tqli2", Integer.valueOf(maxIter).toString()}));
           }
           else
           {
index a4c2940..179c790 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.math;
index 5a53b71..e731910 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.renderer;
@@ -52,13 +54,17 @@ public class AnnotationRenderer
   {
     this(false);
   }
+
   /**
    * Create a new annotation Renderer
-   * @param debugRedraw flag indicating if timing and redraw parameter info should be output
+   * 
+   * @param debugRedraw
+   *          flag indicating if timing and redraw parameter info should be
+   *          output
    */
   public AnnotationRenderer(boolean debugRedraw)
   {
-    this.debugRedraw=debugRedraw;
+    this.debugRedraw = debugRedraw;
   }
 
   public void drawStemAnnot(Graphics g, Annotation[] row_annotations,
@@ -83,6 +89,7 @@ public class AnnotationRenderer
     // If a closing base pair half of the stem, display a backward arrow
     if (column > 0 && closeparen.search(dc))
     {
+
       if (diffupstream)
       // if (validRes && column>1 && row_annotations[column-2]!=null &&
       // dc.equals(row_annotations[column-2].displayCharacter))
@@ -99,6 +106,7 @@ public class AnnotationRenderer
     }
     else
     {
+
       // display a forward arrow
       if (diffdownstream)
       {
@@ -155,23 +163,90 @@ public class AnnotationRenderer
    * width of image to render in panel
    */
   private int imgWidth;
+
   /**
    * offset to beginning of visible area
    */
   private int sOffset;
+
   /**
    * offset to end of visible area
    */
   private int visHeight;
+
   /**
-   * indicate if the renderer should only render the visible portion of the annotation given the current view settings
+   * indicate if the renderer should only render the visible portion of the
+   * annotation given the current view settings
    */
-  private boolean useClip=true;
+  private boolean useClip = true;
+
   /**
-   * master flag indicating if renderer should ever try to clip. not enabled for jalview 2.8.1 
+   * master flag indicating if renderer should ever try to clip. not enabled for
+   * jalview 2.8.1
    */
-  private boolean canClip=false;
-  
+  private boolean canClip = false;
+
+  public void drawNotCanonicalAnnot(Graphics g, Color nonCanColor,
+          Annotation[] row_annotations, int lastSSX, int x, int y,
+          int iconOffset, int startRes, int column, boolean validRes,
+          boolean validEnd)
+  {
+    // System.out.println(nonCanColor);
+
+    g.setColor(nonCanColor);
+    int sCol = (lastSSX / charWidth) + startRes;
+    int x1 = lastSSX;
+    int x2 = (x * charWidth);
+    Regex closeparen = new Regex("}|]|<|[a-z]");
+
+    String dc = (column == 0 || row_annotations[column - 1] == null) ? ""
+            : row_annotations[column - 1].displayCharacter;
+
+    boolean diffupstream = sCol == 0 || row_annotations[sCol - 1] == null
+            || !dc.equals(row_annotations[sCol - 1].displayCharacter);
+    boolean diffdownstream = !validRes || !validEnd
+            || row_annotations[column] == null
+            || !dc.equals(row_annotations[column].displayCharacter);
+    // System.out.println("Column "+column+" diff up: "+diffupstream+" down:"+diffdownstream);
+    // If a closing base pair half of the stem, display a backward arrow
+    if (column > 0 && closeparen.search(dc))// closeletter_b.search(dc)||closeletter_c.search(dc)||closeletter_d.search(dc)||closecrochet.search(dc))
+                                            // )
+    {
+
+      if (diffupstream)
+      // if (validRes && column>1 && row_annotations[column-2]!=null &&
+      // dc.equals(row_annotations[column-2].displayCharacter))
+      {
+        g.fillPolygon(new int[]
+        { lastSSX + 5, lastSSX + 5, lastSSX }, new int[]
+        { y + iconOffset, y + 14 + iconOffset, y + 8 + iconOffset }, 3);
+        x1 += 5;
+      }
+      if (diffdownstream)
+      {
+        x2 -= 1;
+      }
+    }
+    else
+    {
+
+      // display a forward arrow
+      if (diffdownstream)
+      {
+        g.fillPolygon(new int[]
+        { x2 - 5, x2 - 5, x2 }, new int[]
+        { y + iconOffset, y + 14 + iconOffset, y + 8 + iconOffset }, 3);
+        x2 -= 5;
+      }
+      if (diffupstream)
+      {
+        x1 += 1;
+      }
+    }
+    // draw arrow body
+    g.fillRect(x1, y + 4 + iconOffset, x2 - x1, 7);
+  }
+
   // public void updateFromAnnotationPanel(FontMetrics annotFM, AlignViewportI
   // av)
   public void updateFromAwtRenderPanel(AwtRenderPanelI annotPanel,
@@ -182,19 +257,23 @@ public class AnnotationRenderer
     fadedImage = annotPanel.getFadedImage();
     imgWidth = annotPanel.getFadedImageWidth();
     // visible area for rendering
-    int[] bounds=annotPanel.getVisibleVRange();
-    if (bounds!=null)
+    int[] bounds = annotPanel.getVisibleVRange();
+    if (bounds != null)
     {
       sOffset = bounds[0];
       visHeight = bounds[1];
-      if (visHeight==0)
+      if (visHeight == 0)
       {
-        useClip=false;
-      } else {
-        useClip=canClip;
+        useClip = false;
       }
-    } else {
-      useClip=false;
+      else
+      {
+        useClip = canClip;
+      }
+    }
+    else
+    {
+      useClip = false;
     }
 
     updateFromAlignViewport(av);
@@ -218,6 +297,7 @@ public class AnnotationRenderer
       profcolour = av.getAlignment().isNucleotide() ? new jalview.schemes.NucleotideColourScheme()
               : new jalview.schemes.ZappoColourScheme();
     }
+    boolean rna = av.getAlignment().isNucleotide();
     columnSelection = av.getColumnSelection();
     hconsensus = av.getSequenceConsensusHash();// hconsensus;
     hStrucConsensus = av.getRnaStructureConsensusHash(); // hStrucConsensus;
@@ -274,6 +354,8 @@ public class AnnotationRenderer
     return null;
   }
 
+  boolean rna = false;
+
   /**
    * Render the annotation rows associated with an alignment.
    * 
@@ -296,7 +378,7 @@ public class AnnotationRenderer
           AlignViewportI av, Graphics g, int activeRow, int startRes,
           int endRes)
   {
-    long stime=System.currentTimeMillis();
+    long stime = System.currentTimeMillis();
     boolean usedFaded = false;
     // NOTES:
     // AnnotationPanel needs to implement: ImageObserver, access to
@@ -304,7 +386,8 @@ public class AnnotationRenderer
     updateFromAwtRenderPanel(annotPanel, av);
     fm = g.getFontMetrics();
     AlignmentAnnotation[] aa = av.getAlignment().getAlignmentAnnotation();
-    if (aa==null)
+    int temp = 0;
+    if (aa == null)
     {
       return false;
     }
@@ -319,8 +402,10 @@ public class AnnotationRenderer
     boolean centreColLabels, centreColLabelsDef = av
             .getCentreColumnLabels();
     boolean scaleColLabel = false;
-    AlignmentAnnotation consensusAnnot=av.getAlignmentConsensusAnnotation(),structConsensusAnnot=av.getAlignmentStrucConsensusAnnotation();
-    boolean renderHistogram = true, renderProfile = true, normaliseProfile = false;
+    AlignmentAnnotation consensusAnnot = av
+            .getAlignmentConsensusAnnotation(), structConsensusAnnot = av
+            .getAlignmentStrucConsensusAnnotation();
+    boolean renderHistogram = true, renderProfile = true, normaliseProfile = false, isRNA = rna;
 
     BitSet graphGroupDrawn = new BitSet();
     int charOffset = 0; // offset for a label
@@ -329,13 +414,15 @@ public class AnnotationRenderer
     Font ofont = g.getFont();
     // \u03B2 \u03B1
     // debug ints
-    int yfrom=0,f_i=0,yto=0,f_to=0;
-    boolean clipst=false,clipend=false;
+    int yfrom = 0, f_i = 0, yto = 0, f_to = 0;
+    boolean clipst = false, clipend = false;
     for (int i = 0; i < aa.length; i++)
     {
       AlignmentAnnotation row = aa[i];
+      isRNA = row.isRNA();
       {
-        // check if this is a consensus annotation row and set the display settings appropriately
+        // check if this is a consensus annotation row and set the display
+        // settings appropriately
         // TODO: generalise this to have render styles for consensus/profile
         // data
         if (row.groupRef != null && row == row.groupRef.getConsensus())
@@ -349,9 +436,12 @@ public class AnnotationRenderer
           renderHistogram = av_renderHistogram;
           renderProfile = av_renderProfile;
           normaliseProfile = av_normaliseProfile;
-        } else {
+        }
+        else
+        {
           renderHistogram = true;
-          // don't need to set render/normaliseProfile since they are not currently used in any other annotation track renderer
+          // don't need to set render/normaliseProfile since they are not
+          // currently used in any other annotation track renderer
         }
       }
       Annotation[] row_annotations = row.annotations;
@@ -364,348 +454,542 @@ public class AnnotationRenderer
       scaleColLabel = row.scaleColLabel;
       lastSS = ' ';
       lastSSX = 0;
-      
-      if (!useClip || ((y-charHeight)<visHeight && (y+row.height+charHeight*2)>=sOffset)) 
+
+      if (!useClip
+              || ((y - charHeight) < visHeight && (y + row.height + charHeight * 2) >= sOffset))
       {// if_in_visible_region
         if (!clipst)
         {
-          clipst=true;
-          yfrom=y;
-          f_i=i;
+          clipst = true;
+          yfrom = y;
+          f_i = i;
         }
         yto = y;
-        f_to=i;
-      if (row.graph > 0)
-      {
-        if (row.graphGroup > -1 && graphGroupDrawn.get(row.graphGroup)) {
-          continue;
-        }
-
-        // this is so that we draw the characters below the graph
-        y += row.height;
-
-        if (row.hasText)
+        f_to = i;
+        if (row.graph > 0)
         {
-          iconOffset = charHeight - fm.getDescent();
-          y -= charHeight;
-        }
-      }
-      else if (row.hasText)
-      {
-        iconOffset = charHeight - fm.getDescent();
-
-      }
-      else
-      {
-        iconOffset = 0;
-      }
+          if (row.graphGroup > -1 && graphGroupDrawn.get(row.graphGroup))
+          {
+            continue;
+          }
 
-      if (row.autoCalculated && av.isCalculationInProgress(row))
-      {
-        y += charHeight;
-        usedFaded = true;
-        g.drawImage(fadedImage, 0, y - row.height, imgWidth, y, 0, y
-                - row.height, imgWidth, y, annotationPanel);
-        g.setColor(Color.black);
-        // g.drawString("Calculating "+aa[i].label+"....",20, y-row.height/2);
+          // this is so that we draw the characters below the graph
+          y += row.height;
 
-        continue;
-      }
-
-      /*
-       * else if (annotationPanel.av.updatingConservation &&
-       * aa[i].label.equals("Conservation")) {
-       * 
-       * y += charHeight; g.drawImage(annotationPanel.fadedImage, 0, y -
-       * row.height, annotationPanel.imgWidth, y, 0, y - row.height,
-       * annotationPanel.imgWidth, y, annotationPanel);
-       * 
-       * g.setColor(Color.black); //
-       * g.drawString("Calculating Conservation.....",20, y-row.height/2);
-       * 
-       * continue; } else if (annotationPanel.av.updatingConservation &&
-       * aa[i].label.equals("Quality")) {
-       * 
-       * y += charHeight; g.drawImage(annotationPanel.fadedImage, 0, y -
-       * row.height, annotationPanel.imgWidth, y, 0, y - row.height,
-       * annotationPanel.imgWidth, y, annotationPanel); g.setColor(Color.black);
-       * // / g.drawString("Calculating Quality....",20, y-row.height/2);
-       * 
-       * continue; }
-       */
-      // first pass sets up state for drawing continuation from left-hand column
-      // of startRes
-      x = (startRes == 0) ? 0 : -1;
-      while (x < endRes - startRes)
-      {
-        if (hasHiddenColumns)
-        {
-          column = columnSelection.adjustForHiddenColumns(startRes + x);
-          if (column > row_annotations.length - 1)
+          if (row.hasText)
           {
-            break;
+            iconOffset = charHeight - fm.getDescent();
+            y -= charHeight;
           }
         }
-        else
+        else if (row.hasText)
         {
-          column = startRes + x;
-        }
+          iconOffset = charHeight - fm.getDescent();
 
-        if ((row_annotations == null) || (row_annotations.length <= column)
-                || (row_annotations[column] == null))
-        {
-          validRes = false;
         }
         else
         {
-          validRes = true;
+          iconOffset = 0;
         }
-        if (x > -1)
+
+        if (row.autoCalculated && av.isCalculationInProgress(row))
         {
-          if (activeRow == i)
-          {
-            g.setColor(Color.red);
+          y += charHeight;
+          usedFaded = true;
+          g.drawImage(fadedImage, 0, y - row.height, imgWidth, y, 0, y
+                  - row.height, imgWidth, y, annotationPanel);
+          g.setColor(Color.black);
+          // g.drawString("Calculating "+aa[i].label+"....",20, y-row.height/2);
 
-            if (columnSelection != null)
-            {
-              for (int n = 0; n < columnSelection.size(); n++)
-              {
-                int v = columnSelection.columnAt(n);
+          continue;
+        }
 
-                if (v == column)
-                {
-                  g.fillRect(x * charWidth, y, charWidth, charHeight);
-                }
-              }
+        /*
+         * else if (annotationPanel.av.updatingConservation &&
+         * aa[i].label.equals("Conservation")) {
+         * 
+         * y += charHeight; g.drawImage(annotationPanel.fadedImage, 0, y -
+         * row.height, annotationPanel.imgWidth, y, 0, y - row.height,
+         * annotationPanel.imgWidth, y, annotationPanel);
+         * 
+         * g.setColor(Color.black); //
+         * g.drawString("Calculating Conservation.....",20, y-row.height/2);
+         * 
+         * continue; } else if (annotationPanel.av.updatingConservation &&
+         * aa[i].label.equals("Quality")) {
+         * 
+         * y += charHeight; g.drawImage(annotationPanel.fadedImage, 0, y -
+         * row.height, annotationPanel.imgWidth, y, 0, y - row.height,
+         * annotationPanel.imgWidth, y, annotationPanel);
+         * g.setColor(Color.black); // /
+         * g.drawString("Calculating Quality....",20, y-row.height/2);
+         * 
+         * continue; }
+         */
+        // first pass sets up state for drawing continuation from left-hand
+        // column
+        // of startRes
+        x = (startRes == 0) ? 0 : -1;
+        while (x < endRes - startRes)
+        {
+          if (hasHiddenColumns)
+          {
+            column = columnSelection.adjustForHiddenColumns(startRes + x);
+            if (column > row_annotations.length - 1)
+            {
+              break;
             }
           }
-          if (!row.isValidStruc())
+          else
           {
-            g.setColor(Color.orange);
-            g.fillRect((int) row.getInvalidStrucPos() * charWidth, y,
-                    charWidth, charHeight);
+            column = startRes + x;
           }
-          if (validCharWidth
-                  && validRes
-                  && row_annotations[column].displayCharacter != null
-                  && (row_annotations[column].displayCharacter.length() > 0))
-          {
 
-            if (centreColLabels || scaleColLabel)
+          if ((row_annotations == null)
+                  || (row_annotations.length <= column)
+                  || (row_annotations[column] == null))
+          {
+            validRes = false;
+          }
+          else
+          {
+            validRes = true;
+          }
+          if (x > -1)
+          {
+            if (activeRow == i)
             {
-              fmWidth = fm.charsWidth(
-                      row_annotations[column].displayCharacter
-                              .toCharArray(), 0,
-                      row_annotations[column].displayCharacter.length());
+              g.setColor(Color.red);
 
-              if (scaleColLabel)
+              if (columnSelection != null)
               {
-                // justify the label and scale to fit in column
-                if (fmWidth > charWidth)
+                for (int n = 0; n < columnSelection.size(); n++)
                 {
-                  // scale only if the current font isn't already small enough
-                  fmScaling = charWidth;
-                  fmScaling /= fmWidth;
-                  g.setFont(ofont.deriveFont(AffineTransform
-                          .getScaleInstance(fmScaling, 1.0)));
-                  // and update the label's width to reflect the scaling.
-                  fmWidth = charWidth;
+                  int v = columnSelection.columnAt(n);
+
+                  if (v == column)
+                  {
+                    g.fillRect(x * charWidth, y, charWidth, charHeight);
+                  }
                 }
               }
             }
-            else
+            if (!row.isValidStruc())
             {
-              fmWidth = fm
-                      .charWidth(row_annotations[column].displayCharacter
-                              .charAt(0));
+              g.setColor(Color.orange);
+              g.fillRect((int) row.getInvalidStrucPos() * charWidth, y,
+                      charWidth, charHeight);
             }
-            charOffset = (int) ((charWidth - fmWidth) / 2f);
+            if (validCharWidth
+                    && validRes
+                    && row_annotations[column].displayCharacter != null
+                    && (row_annotations[column].displayCharacter.length() > 0))
+            {
 
-            if (row_annotations[column].colour == null)
-              g.setColor(Color.black);
-            else
-              g.setColor(row_annotations[column].colour);
+              if (centreColLabels || scaleColLabel)
+              {
+                fmWidth = fm.charsWidth(
+                        row_annotations[column].displayCharacter
+                                .toCharArray(), 0,
+                        row_annotations[column].displayCharacter.length());
 
-            if (column == 0 || row.graph > 0)
-            {
-              g.drawString(row_annotations[column].displayCharacter,
-                      (x * charWidth) + charOffset, y + iconOffset);
-            }
-            else if (row_annotations[column - 1] == null
-                    || (labelAllCols
-                            || !row_annotations[column].displayCharacter
-                                    .equals(row_annotations[column - 1].displayCharacter) || (row_annotations[column].displayCharacter
-                            .length() < 2 && row_annotations[column].secondaryStructure == ' ')))
-            {
-              g.drawString(row_annotations[column].displayCharacter, x
-                      * charWidth + charOffset, y + iconOffset);
+                if (scaleColLabel)
+                {
+                  // justify the label and scale to fit in column
+                  if (fmWidth > charWidth)
+                  {
+                    // scale only if the current font isn't already small enough
+                    fmScaling = charWidth;
+                    fmScaling /= fmWidth;
+                    g.setFont(ofont.deriveFont(AffineTransform
+                            .getScaleInstance(fmScaling, 1.0)));
+                    // and update the label's width to reflect the scaling.
+                    fmWidth = charWidth;
+                  }
+                }
+              }
+              else
+              {
+                fmWidth = fm
+                        .charWidth(row_annotations[column].displayCharacter
+                                .charAt(0));
+              }
+              charOffset = (int) ((charWidth - fmWidth) / 2f);
+
+              if (row_annotations[column].colour == null)
+                g.setColor(Color.black);
+              else
+                g.setColor(row_annotations[column].colour);
+
+              if (column == 0 || row.graph > 0)
+              {
+                g.drawString(row_annotations[column].displayCharacter,
+                        (x * charWidth) + charOffset, y + iconOffset);
+              }
+              else if (row_annotations[column - 1] == null
+                      || (labelAllCols
+                              || !row_annotations[column].displayCharacter
+                                      .equals(row_annotations[column - 1].displayCharacter) || (row_annotations[column].displayCharacter
+                              .length() < 2 && row_annotations[column].secondaryStructure == ' ')))
+              {
+                g.drawString(row_annotations[column].displayCharacter, x
+                        * charWidth + charOffset, y + iconOffset);
+              }
+              g.setFont(ofont);
             }
-            g.setFont(ofont);
           }
-        }
-        if (row.hasIcons)
-        {
-          char ss = validRes ? row_annotations[column].secondaryStructure
-                  : ' ';
-          if (ss == 'S')
+          if (row.hasIcons)
           {
-            // distinguish between forward/backward base-pairing
-            if (row_annotations[column].displayCharacter.indexOf(')') > -1)
+            char ss = validRes ? row_annotations[column].secondaryStructure
+                    : '-';
+
+            if (ss == '(')
             {
-              ss = 's';
+              // distinguish between forward/backward base-pairing
+              if (row_annotations[column].displayCharacter.indexOf(')') > -1)
+              {
+
+                ss = ')';
+
+              }
             }
-          }
-          if (!validRes || (ss != lastSS))
-          {
-            if (x > -1)
+            if (ss == '[')
             {
-              switch (lastSS)
+              if ((row_annotations[column].displayCharacter.indexOf(']') > -1))
               {
-              case 'H':
-                drawHelixAnnot(g, row_annotations, lastSSX, x, y,
-                        iconOffset, startRes, column, validRes, validEnd);
-                break;
-
-              case 'E':
-                drawSheetAnnot(g, row_annotations, lastSSX, x, y,
-                        iconOffset, startRes, column, validRes, validEnd);
-                break;
-
-              case 'S': // Stem case for RNA secondary structure
-              case 's': // and opposite direction
-                drawStemAnnot(g, row_annotations, lastSSX, x, y,
-                        iconOffset, startRes, column, validRes, validEnd);
-                break;
-
-              default:
-                g.setColor(Color.gray);
-                g.fillRect(lastSSX, y + 6 + iconOffset, (x * charWidth)
-                        - lastSSX, 2);
-
-                break;
+                ss = ']';
+
               }
             }
-            if (validRes)
+            if (ss == '{')
             {
-              lastSS = ss;
+              // distinguish between forward/backward base-pairing
+              if (row_annotations[column].displayCharacter.indexOf('}') > -1)
+              {
+                ss = '}';
+
+              }
             }
-            else
+            if (ss == '<')
             {
-              lastSS = ' ';
+              // distinguish between forward/backward base-pairing
+              if (row_annotations[column].displayCharacter.indexOf('<') > -1)
+              {
+                ss = '>';
+
+              }
             }
-            if (x > -1)
+            if (ss >= 65)
             {
-              lastSSX = (x * charWidth);
+              // distinguish between forward/backward base-pairing
+              if (row_annotations[column].displayCharacter.indexOf(ss + 32) > -1)
+              {
+
+                ss = (char) (ss + 32);
+
+              }
+            }
+
+            if (!validRes || (ss != lastSS))
+            {
+
+              if (x > -1)
+              {
+
+                int nb_annot = x - temp;
+                // System.out.println("\t type :"+lastSS+"\t x :"+x+"\t nbre annot :"+nb_annot);
+                switch (lastSS)
+                {
+                case '(': // Stem case for RNA secondary structure
+                case ')': // and opposite direction
+                  drawStemAnnot(g, row_annotations, lastSSX, x, y,
+                          iconOffset, startRes, column, validRes, validEnd);
+                  temp = x;
+                  break;
+
+                case 'H':
+                  if (!isRNA)
+                  {
+                    drawHelixAnnot(g, row_annotations, lastSSX, x, y,
+                            iconOffset, startRes, column, validRes,
+                            validEnd);
+                    break;
+                  }
+
+                case 'E':
+                  if (!isRNA)
+                  {
+                    drawSheetAnnot(g, row_annotations, lastSSX, x, y,
+                            iconOffset, startRes, column, validRes,
+                            validEnd);
+                    break;
+                  }
+
+                case '{':
+                case '}':
+                case '[':
+                case ']':
+                case '>':
+                case '<':
+                case 'A':
+                case 'a':
+                case 'B':
+                case 'b':
+                case 'C':
+                case 'c':
+                case 'D':
+                case 'd':
+                case 'e':
+                case 'F':
+                case 'f':
+                case 'G':
+                case 'g':
+                case 'h':
+                case 'I':
+                case 'i':
+                case 'J':
+                case 'j':
+                case 'K':
+                case 'k':
+                case 'L':
+                case 'l':
+                case 'M':
+                case 'm':
+                case 'N':
+                case 'n':
+                case 'O':
+                case 'o':
+                case 'P':
+                case 'p':
+                case 'Q':
+                case 'q':
+                case 'R':
+                case 'r':
+                case 'S':
+                case 's':
+                case 'T':
+                case 't':
+                case 'U':
+                case 'u':
+                case 'V':
+                case 'v':
+                case 'W':
+                case 'w':
+                case 'X':
+                case 'x':
+                case 'Y':
+                case 'y':
+                case 'Z':
+                case 'z':
+
+                  Color nonCanColor = getNotCanonicalColor(lastSS);
+                  drawNotCanonicalAnnot(g, nonCanColor, row_annotations,
+                          lastSSX, x, y, iconOffset, startRes, column,
+                          validRes, validEnd);
+                  temp = x;
+                  break;
+                default:
+                  g.setColor(Color.gray);
+                  g.fillRect(lastSSX, y + 6 + iconOffset, (x * charWidth)
+                          - lastSSX, 2);
+                  temp = x;
+                  break;
+                }
+              }
+              if (validRes)
+              {
+                lastSS = ss;
+              }
+              else
+              {
+                lastSS = ' ';
+              }
+              if (x > -1)
+              {
+                lastSSX = (x * charWidth);
+              }
             }
           }
+          column++;
+          x++;
+        }
+        if (column >= row_annotations.length)
+        {
+          column = row_annotations.length - 1;
+          validEnd = false;
+        }
+        else
+        {
+          validEnd = true;
+        }
+        if ((row_annotations == null) || (row_annotations.length <= column)
+                || (row_annotations[column] == null))
+        {
+          validRes = false;
+        }
+        else
+        {
+          validRes = true;
         }
-        column++;
-        x++;
-      }
-      if (column >= row_annotations.length)
-      {
-        column = row_annotations.length - 1;
-        validEnd = false;
-      }
-      else
-      {
-        validEnd = true;
-      }
-      if ((row_annotations == null) || (row_annotations.length <= column)
-              || (row_annotations[column] == null))
-      {
-        validRes = false;
-      }
-      else
-      {
-        validRes = true;
-      }
 
-      // x ++;
+        // x ++;
 
-      if (row.hasIcons)
-      {
-        switch (lastSS)
+        if (row.hasIcons)
         {
-        case 'H':
-          drawHelixAnnot(g, row_annotations, lastSSX, x, y, iconOffset,
-                  startRes, column, validRes, validEnd);
-          break;
-
-        case 'E':
-          drawSheetAnnot(g, row_annotations, lastSSX, x, y, iconOffset,
-                  startRes, column, validRes, validEnd);
-          break;
-        case 's':
-        case 'S': // Stem case for RNA secondary structure
-          drawStemAnnot(g, row_annotations, lastSSX, x, y, iconOffset,
-                  startRes, column, validRes, validEnd);
-          break;
-        default:
-          drawGlyphLine(g, row_annotations, lastSSX, x, y, iconOffset,
-                  startRes, column, validRes, validEnd);
-          break;
+          switch (lastSS)
+          {
+
+          case 'H':
+            if (!isRNA)
+            {
+              drawHelixAnnot(g, row_annotations, lastSSX, x, y, iconOffset,
+                      startRes, column, validRes, validEnd);
+              break;
+            }
+
+          case 'E':
+            if (!isRNA)
+            {
+              drawSheetAnnot(g, row_annotations, lastSSX, x, y, iconOffset,
+                      startRes, column, validRes, validEnd);
+              break;
+            }
+
+          case '(':
+          case ')': // Stem case for RNA secondary structure
+
+            drawStemAnnot(g, row_annotations, lastSSX, x, y, iconOffset,
+                    startRes, column, validRes, validEnd);
+
+            break;
+          case '{':
+          case '}':
+          case '[':
+          case ']':
+          case '>':
+          case '<':
+          case 'A':
+          case 'a':
+          case 'B':
+          case 'b':
+          case 'C':
+          case 'c':
+          case 'D':
+          case 'd':
+          case 'e':
+          case 'F':
+          case 'f':
+          case 'G':
+          case 'g':
+          case 'h':
+          case 'I':
+          case 'i':
+          case 'J':
+          case 'j':
+          case 'K':
+          case 'k':
+          case 'L':
+          case 'l':
+          case 'M':
+          case 'm':
+          case 'N':
+          case 'n':
+          case 'O':
+          case 'o':
+          case 'P':
+          case 'p':
+          case 'Q':
+          case 'q':
+          case 'R':
+          case 'r':
+          case 'T':
+          case 't':
+          case 'U':
+          case 'u':
+          case 'V':
+          case 'v':
+          case 'W':
+          case 'w':
+          case 'X':
+          case 'x':
+          case 'Y':
+          case 'y':
+          case 'Z':
+          case 'z':
+            // System.out.println(lastSS);
+            Color nonCanColor = getNotCanonicalColor(lastSS);
+            drawNotCanonicalAnnot(g, nonCanColor, row_annotations, lastSSX,
+                    x, y, iconOffset, startRes, column, validRes, validEnd);
+            break;
+          default:
+            drawGlyphLine(g, row_annotations, lastSSX, x, y, iconOffset,
+                    startRes, column, validRes, validEnd);
+            break;
+          }
         }
-      }
 
-      if (row.graph > 0 && row.graphHeight > 0)
-      {
-        if (row.graph == AlignmentAnnotation.LINE_GRAPH)
+        if (row.graph > 0 && row.graphHeight > 0)
         {
-          if (row.graphGroup > -1 && !graphGroupDrawn.get(row.graphGroup))
+          if (row.graph == AlignmentAnnotation.LINE_GRAPH)
           {
-            // TODO: JAL-1291 revise rendering model so the graphGroup map is computed efficiently for all visible labels
-            float groupmax = -999999, groupmin = 9999999;
-            for (int gg = 0; gg < aa.length; gg++)
+            if (row.graphGroup > -1 && !graphGroupDrawn.get(row.graphGroup))
             {
-              if (aa[gg].graphGroup != row.graphGroup)
+              // TODO: JAL-1291 revise rendering model so the graphGroup map is
+              // computed efficiently for all visible labels
+              float groupmax = -999999, groupmin = 9999999;
+              for (int gg = 0; gg < aa.length; gg++)
               {
-                continue;
-              }
+                if (aa[gg].graphGroup != row.graphGroup)
+                {
+                  continue;
+                }
 
-              if (aa[gg] != row)
-              {
-                aa[gg].visible = false;
-              }
-              if (aa[gg].graphMax > groupmax)
-              {
-                groupmax = aa[gg].graphMax;
+                if (aa[gg] != row)
+                {
+                  aa[gg].visible = false;
+                }
+                if (aa[gg].graphMax > groupmax)
+                {
+                  groupmax = aa[gg].graphMax;
+                }
+                if (aa[gg].graphMin < groupmin)
+                {
+                  groupmin = aa[gg].graphMin;
+                }
               }
-              if (aa[gg].graphMin < groupmin)
+
+              for (int gg = 0; gg < aa.length; gg++)
               {
-                groupmin = aa[gg].graphMin;
+                if (aa[gg].graphGroup == row.graphGroup)
+                {
+                  drawLineGraph(g, aa[gg], aa[gg].annotations, startRes,
+                          endRes, y, groupmin, groupmax, row.graphHeight);
+                }
               }
-            }
 
-            for (int gg = 0; gg < aa.length; gg++)
+              graphGroupDrawn.set(row.graphGroup);
+            }
+            else
             {
-              if (aa[gg].graphGroup == row.graphGroup)
-              {
-                drawLineGraph(g, aa[gg], aa[gg].annotations, startRes,
-                        endRes, y, groupmin, groupmax, row.graphHeight);
-              }
+              drawLineGraph(g, row, row_annotations, startRes, endRes, y,
+                      row.graphMin, row.graphMax, row.graphHeight);
             }
-
-            graphGroupDrawn.set(row.graphGroup);
           }
-          else
+          else if (row.graph == AlignmentAnnotation.BAR_GRAPH)
           {
-            drawLineGraph(g, row, row_annotations, startRes, endRes, y,
-                    row.graphMin, row.graphMax, row.graphHeight);
+            drawBarGraph(g, row, row_annotations, startRes, endRes,
+                    row.graphMin, row.graphMax, y, renderHistogram,
+                    renderProfile, normaliseProfile);
           }
         }
-        else if (row.graph == AlignmentAnnotation.BAR_GRAPH)
-        {
-          drawBarGraph(g, row, row_annotations, startRes, endRes,
-                  row.graphMin, row.graphMax, y, renderHistogram,renderProfile,normaliseProfile);
-        }
       }
-    } else {
-      if (clipst && !clipend)
+      else
       {
-        clipend = true;
-      }
-    }// end if_in_visible_region
+        if (clipst && !clipend)
+        {
+          clipend = true;
+        }
+      }// end if_in_visible_region
       if (row.graph > 0 && row.hasText)
       {
         y += charHeight;
@@ -740,13 +1024,15 @@ public class AnnotationRenderer
     return !usedFaded;
   }
 
-  private final Color GLYPHLINE_COLOR = Color.gray;
+  public static final Color GLYPHLINE_COLOR = Color.gray;
 
-  private final Color SHEET_COLOUR = Color.green;
+  public static final Color SHEET_COLOUR = Color.green;
 
-  private final Color HELIX_COLOUR = Color.red;
+  public static final Color HELIX_COLOUR = Color.red;
 
-  private final Color STEM_COLOUR = Color.blue;
+  public static final Color STEM_COLOUR = Color.blue;
+
+  private Color sdNOTCANONICAL_COLOUR;
 
   public void drawGlyphLine(Graphics g, Annotation[] row, int lastSSX,
           int x, int y, int iconOffset, int startRes, int column,
@@ -756,8 +1042,9 @@ public class AnnotationRenderer
     g.fillRect(lastSSX, y + 6 + iconOffset, (x * charWidth) - lastSSX, 2);
   }
 
-  public void drawSheetAnnot(Graphics g, Annotation[] row, int lastSSX,
-          int x, int y, int iconOffset, int startRes, int column,
+  public void drawSheetAnnot(Graphics g, Annotation[] row,
+
+  int lastSSX, int x, int y, int iconOffset, int startRes, int column,
           boolean validRes, boolean validEnd)
   {
     g.setColor(SHEET_COLOUR);
@@ -933,7 +1220,8 @@ public class AnnotationRenderer
 
   public void drawBarGraph(Graphics g, AlignmentAnnotation _aa,
           Annotation[] aa_annotations, int sRes, int eRes, float min,
-          float max, int y, boolean renderHistogram,boolean renderProfile,boolean normaliseProfile)
+          float max, int y, boolean renderHistogram, boolean renderProfile,
+          boolean normaliseProfile)
   {
     if (sRes > aa_annotations.length)
     {
@@ -1111,4 +1399,131 @@ public class AnnotationRenderer
       x += charWidth;
     }
   }
+
+  Color getNotCanonicalColor(char lastss)
+  {
+    switch (lastss)
+    {
+    case '{':
+    case '}':
+      return new Color(255, 125, 5);
+
+    case '[':
+    case ']':
+      return new Color(245, 115, 10);
+
+    case '>':
+    case '<':
+      return new Color(235, 135, 15);
+
+    case 'A':
+    case 'a':
+      return new Color(225, 105, 20);
+
+    case 'B':
+    case 'b':
+      return new Color(215, 145, 30);
+
+    case 'C':
+    case 'c':
+      return new Color(205, 95, 35);
+
+    case 'D':
+    case 'd':
+      return new Color(195, 155, 45);
+
+    case 'E':
+    case 'e':
+      return new Color(185, 85, 55);
+
+    case 'F':
+    case 'f':
+      return new Color(175, 165, 65);
+
+    case 'G':
+    case 'g':
+      return new Color(170, 75, 75);
+
+    case 'H':
+    case 'h':
+      return new Color(160, 175, 85);
+
+    case 'I':
+    case 'i':
+      return new Color(150, 65, 95);
+
+    case 'J':
+    case 'j':
+      return new Color(140, 185, 105);
+
+    case 'K':
+    case 'k':
+      return new Color(130, 55, 110);
+
+    case 'L':
+    case 'l':
+      return new Color(120, 195, 120);
+
+    case 'M':
+    case 'm':
+      return new Color(110, 45, 130);
+
+    case 'N':
+    case 'n':
+      return new Color(100, 205, 140);
+
+    case 'O':
+    case 'o':
+      return new Color(90, 35, 150);
+
+    case 'P':
+    case 'p':
+      return new Color(85, 215, 160);
+
+    case 'Q':
+    case 'q':
+      return new Color(75, 25, 170);
+
+    case 'R':
+    case 'r':
+      return new Color(65, 225, 180);
+
+    case 'S':
+    case 's':
+      return new Color(55, 15, 185);
+
+    case 'T':
+    case 't':
+      return new Color(45, 235, 195);
+
+    case 'U':
+    case 'u':
+      return new Color(35, 5, 205);
+
+    case 'V':
+    case 'v':
+      return new Color(25, 245, 215);
+
+    case 'W':
+    case 'w':
+      return new Color(15, 0, 225);
+
+    case 'X':
+    case 'x':
+      return new Color(10, 255, 235);
+
+    case 'Y':
+    case 'y':
+      return new Color(5, 150, 245);
+
+    case 'Z':
+    case 'z':
+      return new Color(0, 80, 255);
+
+    default:
+      System.out.println("This is not a interaction : " + lastss);
+      return null;
+
+    }
+  }
 }
index 1d46ae3..ab601da 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.renderer;
@@ -44,6 +46,7 @@ public interface AwtRenderPanelI extends ImageObserver
 
   /**
    * height of visible area on to the image - used to draw only what is visible.
+   * 
    * @return [start, end of visible region]
    */
   int[] getVisibleVRange();
index 8fd8e28..a28c76a 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
index fd16b40..ea0d410 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
index cf48788..c7d2f17 100644 (file)
@@ -1,35 +1,31 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
 //- Imported classes and packages -/
 //---------------------------------/
 
+import jalview.util.MessageManager;
+
 import org.exolab.castor.xml.Marshaller;
 import org.exolab.castor.xml.Unmarshaller;
 
@@ -165,9 +161,11 @@ public class AlcodonFrame implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._alcodMapList.size())
     {
-      throw new IndexOutOfBoundsException("getAlcodMap: Index value '"
-              + index + "' not in range [0.."
-              + (this._alcodMapList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "getAlcodMap",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._alcodMapList.size() - 1)).toString()
+        })); 
     }
 
     return (jalview.schemabinding.version2.AlcodMap) _alcodMapList
@@ -215,9 +213,11 @@ public class AlcodonFrame implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._alcodonList.size())
     {
-      throw new IndexOutOfBoundsException("getAlcodon: Index value '"
-              + index + "' not in range [0.."
-              + (this._alcodonList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "getAlcodon",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._alcodonList.size() - 1)).toString()
+        })); 
     }
 
     return (jalview.schemabinding.version2.Alcodon) _alcodonList.get(index);
@@ -384,9 +384,11 @@ public class AlcodonFrame implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._alcodMapList.size())
     {
-      throw new IndexOutOfBoundsException("setAlcodMap: Index value '"
-              + index + "' not in range [0.."
-              + (this._alcodMapList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "setAlcodMap",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._alcodonList.size() - 1)).toString()
+          })); 
     }
 
     this._alcodMapList.set(index, vAlcodMap);
@@ -424,9 +426,11 @@ public class AlcodonFrame implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._alcodonList.size())
     {
-      throw new IndexOutOfBoundsException("setAlcodon: Index value '"
-              + index + "' not in range [0.."
-              + (this._alcodonList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "setAlcodon",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._alcodonList.size() - 1)).toString()
+        })); 
     }
 
     this._alcodonList.set(index, vAlcodon);
index 1c0de1e..0741387 100644 (file)
@@ -1,35 +1,31 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
 //- Imported classes and packages -/
 //---------------------------------/
 
+import jalview.util.MessageManager;
+
 import org.exolab.castor.xml.Marshaller;
 import org.exolab.castor.xml.Unmarshaller;
 
@@ -379,10 +375,11 @@ public class Annotation implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._annotationElementList.size())
     {
-      throw new IndexOutOfBoundsException(
-              "getAnnotationElement: Index value '" + index
-                      + "' not in range [0.."
-                      + (this._annotationElementList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "getAnnotationElement",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._annotationElementList.size() - 1)).toString()
+          })); 
     }
 
     return (jalview.schemabinding.version2.AnnotationElement) _annotationElementList
@@ -941,10 +938,11 @@ public class Annotation implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._annotationElementList.size())
     {
-      throw new IndexOutOfBoundsException(
-              "setAnnotationElement: Index value '" + index
-                      + "' not in range [0.."
-                      + (this._annotationElementList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "setAnnotationElement",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._annotationElementList.size() - 1)).toString()
+        })); 
     }
 
     this._annotationElementList.set(index, vAnnotationElement);
index ca7fbc9..6167df8 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
index 9f2eada..586c695 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
index 26dbe15..5d85349 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
index dd4b584..079e83f 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
index 4933206..a0d242b 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
index 27e1018..4443606 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
index 130d515..bbc5f67 100644 (file)
@@ -1,35 +1,31 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
 //- Imported classes and packages -/
 //---------------------------------/
 
+import jalview.util.MessageManager;
+
 import org.exolab.castor.xml.Marshaller;
 import org.exolab.castor.xml.Unmarshaller;
 
@@ -230,9 +226,11 @@ public class Feature implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._otherDataList.size())
     {
-      throw new IndexOutOfBoundsException("getOtherData: Index value '"
-              + index + "' not in range [0.."
-              + (this._otherDataList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "getOtherData",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._otherDataList.size() - 1)).toString()
+          })); 
     }
 
     return (jalview.schemabinding.version2.OtherData) _otherDataList
@@ -473,9 +471,11 @@ public class Feature implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._otherDataList.size())
     {
-      throw new IndexOutOfBoundsException("setOtherData: Index value '"
-              + index + "' not in range [0.."
-              + (this._otherDataList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "setOtherData",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._otherDataList.size() - 1)).toString()
+        })); 
     }
 
     this._otherDataList.set(index, vOtherData);
index e975554..14d9844 100644 (file)
@@ -1,35 +1,31 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
 //- Imported classes and packages -/
 //---------------------------------/
 
+import jalview.util.MessageManager;
+
 import org.exolab.castor.xml.Marshaller;
 import org.exolab.castor.xml.Unmarshaller;
 
@@ -164,8 +160,11 @@ public class FeatureSettings implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._groupList.size())
     {
-      throw new IndexOutOfBoundsException("getGroup: Index value '" + index
-              + "' not in range [0.." + (this._groupList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "getGroup",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._groupList.size() - 1)).toString()
+          })); 
     }
 
     return (jalview.schemabinding.version2.Group) _groupList.get(index);
@@ -212,9 +211,11 @@ public class FeatureSettings implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._settingList.size())
     {
-      throw new IndexOutOfBoundsException("getSetting: Index value '"
-              + index + "' not in range [0.."
-              + (this._settingList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "getSetting",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._settingList.size() - 1)).toString()
+        })); 
     }
 
     return (jalview.schemabinding.version2.Setting) _settingList.get(index);
@@ -380,8 +381,11 @@ public class FeatureSettings implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._groupList.size())
     {
-      throw new IndexOutOfBoundsException("setGroup: Index value '" + index
-              + "' not in range [0.." + (this._groupList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "setGroup",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._groupList.size() - 1)).toString()
+          })); 
     }
 
     this._groupList.set(index, vGroup);
@@ -419,9 +423,11 @@ public class FeatureSettings implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._settingList.size())
     {
-      throw new IndexOutOfBoundsException("setSetting: Index value '"
-              + index + "' not in range [0.."
-              + (this._settingList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "setSetting",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._settingList.size() - 1)).toString()
+        })); 
     }
 
     this._settingList.set(index, vSetting);
index d66d8e8..e482625 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
index c16d352..713acae 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
index 811ad33..68ce92c 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
index a1f62bc..3a8dab2 100644 (file)
@@ -1,35 +1,31 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
 //- Imported classes and packages -/
 //---------------------------------/
 
+import jalview.util.MessageManager;
+
 import org.exolab.castor.xml.Marshaller;
 import org.exolab.castor.xml.Unmarshaller;
 
@@ -541,8 +537,11 @@ public class JGroup implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._seqList.size())
     {
-      throw new IndexOutOfBoundsException("getSeq: Index value '" + index
-              + "' not in range [0.." + (this._seqList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "getSeq",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._seqList.size() - 1)).toString()
+          })); 
     }
 
     return (java.lang.String) _seqList.get(index);
@@ -1137,8 +1136,11 @@ public class JGroup implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._seqList.size())
     {
-      throw new IndexOutOfBoundsException("setSeq: Index value '" + index
-              + "' not in range [0.." + (this._seqList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "setSeq",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._seqList.size() - 1)).toString()
+        })); 
     }
 
     this._seqList.set(index, vSeq);
index aa38064..31a128e 100644 (file)
@@ -1,35 +1,31 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
 //- Imported classes and packages -/
 //---------------------------------/
 
+import jalview.util.MessageManager;
+
 import org.exolab.castor.xml.Marshaller;
 import org.exolab.castor.xml.Unmarshaller;
 
@@ -302,9 +298,11 @@ public class JSeq implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._featuresList.size())
     {
-      throw new IndexOutOfBoundsException("getFeatures: Index value '"
-              + index + "' not in range [0.."
-              + (this._featuresList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "getFeatures",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._featuresList.size() - 1)).toString()
+          })); 
     }
 
     return (jalview.schemabinding.version2.Features) _featuresList
@@ -361,10 +359,11 @@ public class JSeq implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._hiddenSequencesList.size())
     {
-      throw new IndexOutOfBoundsException(
-              "getHiddenSequences: Index value '" + index
-                      + "' not in range [0.."
-                      + (this._hiddenSequencesList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "getHiddenSequences",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._hiddenSequencesList.size() - 1)).toString()
+        })); 
     }
 
     return ((java.lang.Integer) _hiddenSequencesList.get(index)).intValue();
@@ -423,9 +422,11 @@ public class JSeq implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._pdbidsList.size())
     {
-      throw new IndexOutOfBoundsException("getPdbids: Index value '"
-              + index + "' not in range [0.."
-              + (this._pdbidsList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "getPdbids",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._pdbidsList.size() - 1)).toString()
+          })); 
     }
 
     return (jalview.schemabinding.version2.Pdbids) _pdbidsList.get(index);
@@ -708,9 +709,11 @@ public class JSeq implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._featuresList.size())
     {
-      throw new IndexOutOfBoundsException("setFeatures: Index value '"
-              + index + "' not in range [0.."
-              + (this._featuresList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "setFeatures",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._featuresList.size() - 1)).toString()
+        })); 
     }
 
     this._featuresList.set(index, vFeatures);
@@ -759,10 +762,11 @@ public class JSeq implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._hiddenSequencesList.size())
     {
-      throw new IndexOutOfBoundsException(
-              "setHiddenSequences: Index value '" + index
-                      + "' not in range [0.."
-                      + (this._hiddenSequencesList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "setHiddenSequences",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._hiddenSequencesList.size() - 1)).toString()
+          })); 
     }
 
     this._hiddenSequencesList.set(index, new java.lang.Integer(
@@ -812,9 +816,11 @@ public class JSeq implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._pdbidsList.size())
     {
-      throw new IndexOutOfBoundsException("setPdbids: Index value '"
-              + index + "' not in range [0.."
-              + (this._pdbidsList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "setPdbids",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._pdbidsList.size() - 1)).toString()
+        })); 
     }
 
     this._pdbidsList.set(index, vPdbids);
index 6ab4caf..b4c35c1 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
index 7fd186b..790a1ca 100644 (file)
@@ -1,35 +1,31 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
 //- Imported classes and packages -/
 //---------------------------------/
 
+import jalview.util.MessageManager;
+
 import org.exolab.castor.xml.Marshaller;
 import org.exolab.castor.xml.Unmarshaller;
 
@@ -315,9 +311,11 @@ public class JalviewModelSequence implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._JGroupList.size())
     {
-      throw new IndexOutOfBoundsException("getJGroup: Index value '"
-              + index + "' not in range [0.."
-              + (this._JGroupList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "getJGroup",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._JGroupList.size() - 1)).toString()
+          })); 
     }
 
     return (jalview.schemabinding.version2.JGroup) _JGroupList.get(index);
@@ -364,8 +362,11 @@ public class JalviewModelSequence implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._JSeqList.size())
     {
-      throw new IndexOutOfBoundsException("getJSeq: Index value '" + index
-              + "' not in range [0.." + (this._JSeqList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "getJSeq",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._JSeqList.size() - 1)).toString()
+        })); 
     }
 
     return (jalview.schemabinding.version2.JSeq) _JSeqList.get(index);
@@ -412,8 +413,11 @@ public class JalviewModelSequence implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._treeList.size())
     {
-      throw new IndexOutOfBoundsException("getTree: Index value '" + index
-              + "' not in range [0.." + (this._treeList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "getJgetTreeSeq",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._treeList.size() - 1)).toString()
+          })); 
     }
 
     return (jalview.schemabinding.version2.Tree) _treeList.get(index);
@@ -460,9 +464,11 @@ public class JalviewModelSequence implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._userColoursList.size())
     {
-      throw new IndexOutOfBoundsException("getUserColours: Index value '"
-              + index + "' not in range [0.."
-              + (this._userColoursList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "getUserColours",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._userColoursList.size() - 1)).toString()
+        })); 
     }
 
     return (jalview.schemabinding.version2.UserColours) _userColoursList
@@ -510,9 +516,11 @@ public class JalviewModelSequence implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._viewportList.size())
     {
-      throw new IndexOutOfBoundsException("getViewport: Index value '"
-              + index + "' not in range [0.."
-              + (this._viewportList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "getViewport",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._viewportList.size() - 1)).toString()
+          })); 
     }
 
     return (jalview.schemabinding.version2.Viewport) _viewportList
@@ -787,9 +795,11 @@ public class JalviewModelSequence implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._JGroupList.size())
     {
-      throw new IndexOutOfBoundsException("setJGroup: Index value '"
-              + index + "' not in range [0.."
-              + (this._JGroupList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "setJGroup",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._JGroupList.size() - 1)).toString()
+        })); 
     }
 
     this._JGroupList.set(index, vJGroup);
@@ -827,8 +837,11 @@ public class JalviewModelSequence implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._JSeqList.size())
     {
-      throw new IndexOutOfBoundsException("setJSeq: Index value '" + index
-              + "' not in range [0.." + (this._JSeqList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "setJSeq",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._JSeqList.size() - 1)).toString()
+          })); 
     }
 
     this._JSeqList.set(index, vJSeq);
@@ -865,8 +878,11 @@ public class JalviewModelSequence implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._treeList.size())
     {
-      throw new IndexOutOfBoundsException("setTree: Index value '" + index
-              + "' not in range [0.." + (this._treeList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "setTree",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._treeList.size() - 1)).toString()
+        })); 
     }
 
     this._treeList.set(index, vTree);
@@ -903,9 +919,11 @@ public class JalviewModelSequence implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._userColoursList.size())
     {
-      throw new IndexOutOfBoundsException("setUserColours: Index value '"
-              + index + "' not in range [0.."
-              + (this._userColoursList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "setUserColours",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._userColoursList.size() - 1)).toString()
+          })); 
     }
 
     this._userColoursList.set(index, vUserColours);
@@ -943,9 +961,11 @@ public class JalviewModelSequence implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._viewportList.size())
     {
-      throw new IndexOutOfBoundsException("setViewport: Index value '"
-              + index + "' not in range [0.."
-              + (this._viewportList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "setViewport",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._viewportList.size() - 1)).toString()
+        })); 
     }
 
     this._viewportList.set(index, vViewport);
index ccb0963..e6ced25 100644 (file)
@@ -1,35 +1,31 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
 //- Imported classes and packages -/
 //---------------------------------/
 
+import jalview.util.MessageManager;
+
 import org.exolab.castor.xml.Marshaller;
 import org.exolab.castor.xml.Unmarshaller;
 
@@ -126,9 +122,11 @@ public class JalviewUserColours implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._colourList.size())
     {
-      throw new IndexOutOfBoundsException("getColour: Index value '"
-              + index + "' not in range [0.."
-              + (this._colourList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "getColour",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._colourList.size() - 1)).toString()
+          })); 
     }
 
     return (Colour) _colourList.get(index);
@@ -280,9 +278,11 @@ public class JalviewUserColours implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._colourList.size())
     {
-      throw new IndexOutOfBoundsException("setColour: Index value '"
-              + index + "' not in range [0.."
-              + (this._colourList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "setColour",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._colourList.size() - 1)).toString()
+        })); 
     }
 
     this._colourList.set(index, vColour);
index 2817fd6..d9986c7 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
index f185d87..a66d8d4 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
index 04de497..32e8ce2 100644 (file)
@@ -1,35 +1,31 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
 //- Imported classes and packages -/
 //---------------------------------/
 
+import jalview.util.MessageManager;
+
 import org.exolab.castor.xml.Marshaller;
 import org.exolab.castor.xml.Unmarshaller;
 
@@ -226,9 +222,11 @@ public class MapListType implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._mapListFromList.size())
     {
-      throw new IndexOutOfBoundsException("getMapListFrom: Index value '"
-              + index + "' not in range [0.."
-              + (this._mapListFromList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "getMapListFrom",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._mapListFromList.size() - 1)).toString()
+          })); 
     }
 
     return (jalview.schemabinding.version2.MapListFrom) _mapListFromList
@@ -276,9 +274,11 @@ public class MapListType implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._mapListToList.size())
     {
-      throw new IndexOutOfBoundsException("getMapListTo: Index value '"
-              + index + "' not in range [0.."
-              + (this._mapListToList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "getMapListTo",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._mapListToList.size() - 1)).toString()
+        })); 
     }
 
     return (jalview.schemabinding.version2.MapListTo) _mapListToList
@@ -498,9 +498,11 @@ public class MapListType implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._mapListFromList.size())
     {
-      throw new IndexOutOfBoundsException("setMapListFrom: Index value '"
-              + index + "' not in range [0.."
-              + (this._mapListFromList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "setMapListFrom",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._mapListFromList.size() - 1)).toString()
+          })); 
     }
 
     this._mapListFromList.set(index, vMapListFrom);
@@ -538,9 +540,11 @@ public class MapListType implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._mapListToList.size())
     {
-      throw new IndexOutOfBoundsException("setMapListTo: Index value '"
-              + index + "' not in range [0.."
-              + (this._mapListToList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "setMapListTo",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._mapListToList.size() - 1)).toString()
+        })); 
     }
 
     this._mapListToList.set(index, vMapListTo);
index 91d03d9..255fc3e 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
index 614efba..ee7ae0f 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
index 2e5772d..24b6b11 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
index f207ddc..a558e12 100644 (file)
@@ -1,35 +1,31 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
 //- Imported classes and packages -/
 //---------------------------------/
 
+import jalview.util.MessageManager;
+
 import org.exolab.castor.xml.Marshaller;
 import org.exolab.castor.xml.Unmarshaller;
 
@@ -154,9 +150,11 @@ public class Pdbentry implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._items.size())
     {
-      throw new IndexOutOfBoundsException("getPdbentryItem: Index value '"
-              + index + "' not in range [0.." + (this._items.size() - 1)
-              + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "getPdbentryItem",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._items.size() - 1)).toString()
+          })); 
     }
 
     return (jalview.schemabinding.version2.PdbentryItem) _items.get(index);
@@ -322,9 +320,11 @@ public class Pdbentry implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._items.size())
     {
-      throw new IndexOutOfBoundsException("setPdbentryItem: Index value '"
-              + index + "' not in range [0.." + (this._items.size() - 1)
-              + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "setPdbentryItem",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._items.size() - 1)).toString()
+        })); 
     }
 
     this._items.set(index, vPdbentryItem);
index 84aef38..b1bbf11 100644 (file)
@@ -1,31 +1,27 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
+import jalview.util.MessageManager;
+
 /**
  * Class PdbentryItem.
  * 
@@ -112,9 +108,11 @@ public class PdbentryItem implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._propertyList.size())
     {
-      throw new IndexOutOfBoundsException("getProperty: Index value '"
-              + index + "' not in range [0.."
-              + (this._propertyList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "getProperty",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._propertyList.size() - 1)).toString()
+          })); 
     }
 
     return (jalview.schemabinding.version2.Property) _propertyList
@@ -195,9 +193,11 @@ public class PdbentryItem implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._propertyList.size())
     {
-      throw new IndexOutOfBoundsException("setProperty: Index value '"
-              + index + "' not in range [0.."
-              + (this._propertyList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "setProperty",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._propertyList.size() - 1)).toString()
+        })); 
     }
 
     this._propertyList.set(index, vProperty);
index 5e3f13a..bf700f9 100644 (file)
@@ -1,35 +1,31 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
 //- Imported classes and packages -/
 //---------------------------------/
 
+import jalview.util.MessageManager;
+
 import org.exolab.castor.xml.Marshaller;
 import org.exolab.castor.xml.Unmarshaller;
 
@@ -121,10 +117,11 @@ public class Pdbids extends jalview.schemabinding.version2.Pdbentry
     // check bounds for index
     if (index < 0 || index >= this._structureStateList.size())
     {
-      throw new IndexOutOfBoundsException(
-              "getStructureState: Index value '" + index
-                      + "' not in range [0.."
-                      + (this._structureStateList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "getStructureState",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._structureStateList.size() - 1)).toString()
+          })); 
     }
 
     return (jalview.schemabinding.version2.StructureState) _structureStateList
@@ -261,10 +258,11 @@ public class Pdbids extends jalview.schemabinding.version2.Pdbentry
     // check bounds for index
     if (index < 0 || index >= this._structureStateList.size())
     {
-      throw new IndexOutOfBoundsException(
-              "setStructureState: Index value '" + index
-                      + "' not in range [0.."
-                      + (this._structureStateList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "setStructureState",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._structureStateList.size() - 1)).toString()
+        })); 
     }
 
     this._structureStateList.set(index, vStructureState);
index 34e0d57..4dcbfc5 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
index 50ca919..54f2e30 100644 (file)
@@ -1,35 +1,31 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
 //- Imported classes and packages -/
 //---------------------------------/
 
+import jalview.util.MessageManager;
+
 import org.exolab.castor.xml.Marshaller;
 import org.exolab.castor.xml.Unmarshaller;
 
@@ -126,8 +122,11 @@ public class Sequence extends jalview.schemabinding.version2.SequenceType
     // check bounds for index
     if (index < 0 || index >= this._DBRefList.size())
     {
-      throw new IndexOutOfBoundsException("getDBRef: Index value '" + index
-              + "' not in range [0.." + (this._DBRefList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "getDBRef",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._DBRefList.size() - 1)).toString()
+          })); 
     }
 
     return (jalview.schemabinding.version2.DBRef) _DBRefList.get(index);
@@ -273,8 +272,11 @@ public class Sequence extends jalview.schemabinding.version2.SequenceType
     // check bounds for index
     if (index < 0 || index >= this._DBRefList.size())
     {
-      throw new IndexOutOfBoundsException("setDBRef: Index value '" + index
-              + "' not in range [0.." + (this._DBRefList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "setDBRef",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._DBRefList.size() - 1)).toString()
+        })); 
     }
 
     this._DBRefList.set(index, vDBRef);
index 568df1f..d058ad5 100644 (file)
@@ -1,35 +1,31 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
 //- Imported classes and packages -/
 //---------------------------------/
 
+import jalview.util.MessageManager;
+
 import org.exolab.castor.xml.Marshaller;
 import org.exolab.castor.xml.Unmarshaller;
 
@@ -270,9 +266,11 @@ public class SequenceSet implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._alcodonFrameList.size())
     {
-      throw new IndexOutOfBoundsException("getAlcodonFrame: Index value '"
-              + index + "' not in range [0.."
-              + (this._alcodonFrameList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "getAlcodonFrame",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._alcodonFrameList.size() - 1)).toString()
+          })); 
     }
 
     return (jalview.schemabinding.version2.AlcodonFrame) _alcodonFrameList
@@ -320,9 +318,11 @@ public class SequenceSet implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._annotationList.size())
     {
-      throw new IndexOutOfBoundsException("getAnnotation: Index value '"
-              + index + "' not in range [0.."
-              + (this._annotationList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "getAnnotation",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._alcodonFrameList.size() - 1)).toString()
+        })); 
     }
 
     return (jalview.schemabinding.version2.Annotation) _annotationList
@@ -393,9 +393,11 @@ public class SequenceSet implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._sequenceList.size())
     {
-      throw new IndexOutOfBoundsException("getSequence: Index value '"
-              + index + "' not in range [0.."
-              + (this._sequenceList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "getSequence",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._sequenceList.size() - 1)).toString()
+          })); 
     }
 
     return (jalview.schemabinding.version2.Sequence) _sequenceList
@@ -444,10 +446,11 @@ public class SequenceSet implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._sequenceSetPropertiesList.size())
     {
-      throw new IndexOutOfBoundsException(
-              "getSequenceSetProperties: Index value '" + index
-                      + "' not in range [0.."
-                      + (this._sequenceSetPropertiesList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "getSequenceSetProperties",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._sequenceSetPropertiesList.size() - 1)).toString()
+        })); 
     }
 
     return (jalview.schemabinding.version2.SequenceSetProperties) _sequenceSetPropertiesList
@@ -683,9 +686,11 @@ public class SequenceSet implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._alcodonFrameList.size())
     {
-      throw new IndexOutOfBoundsException("setAlcodonFrame: Index value '"
-              + index + "' not in range [0.."
-              + (this._alcodonFrameList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "setAlcodonFrame",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._alcodonFrameList.size() - 1)).toString()
+          })); 
     }
 
     this._alcodonFrameList.set(index, vAlcodonFrame);
@@ -723,9 +728,11 @@ public class SequenceSet implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._annotationList.size())
     {
-      throw new IndexOutOfBoundsException("setAnnotation: Index value '"
-              + index + "' not in range [0.."
-              + (this._annotationList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "setAnnotation",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._annotationList.size() - 1)).toString()
+        })); 
     }
 
     this._annotationList.set(index, vAnnotation);
@@ -788,9 +795,11 @@ public class SequenceSet implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._sequenceList.size())
     {
-      throw new IndexOutOfBoundsException("setSequence: Index value '"
-              + index + "' not in range [0.."
-              + (this._sequenceList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "setSequence",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._sequenceList.size() - 1)).toString()
+          })); 
     }
 
     this._sequenceList.set(index, vSequence);
@@ -829,10 +838,11 @@ public class SequenceSet implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._sequenceSetPropertiesList.size())
     {
-      throw new IndexOutOfBoundsException(
-              "setSequenceSetProperties: Index value '" + index
-                      + "' not in range [0.."
-                      + (this._sequenceSetPropertiesList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "setSequenceSetProperties",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._sequenceSetPropertiesList.size() - 1)).toString()
+        })); 
     }
 
     this._sequenceSetPropertiesList.set(index, vSequenceSetProperties);
index d01f875..4924a5c 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
index 157c83e..209c03a 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
index 58779c5..d20ec15 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
index 82e3e7b..92fb2f7 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
index 5d5c376..f5dab4d 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
index a459edc..175c852 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
index 3625d87..55c0024 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
index 2a223d4..76f0ad9 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
index 2c56862..7f0c216 100644 (file)
@@ -1,35 +1,31 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
 //- Imported classes and packages -/
 //---------------------------------/
 
+import jalview.util.MessageManager;
+
 import org.exolab.castor.xml.Marshaller;
 import org.exolab.castor.xml.Unmarshaller;
 
@@ -162,9 +158,11 @@ public class VAMSAS implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._sequenceSetList.size())
     {
-      throw new IndexOutOfBoundsException("getSequenceSet: Index value '"
-              + index + "' not in range [0.."
-              + (this._sequenceSetList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "getSequenceSet",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._sequenceSetList.size() - 1)).toString()
+          })); 
     }
 
     return (jalview.schemabinding.version2.SequenceSet) _sequenceSetList
@@ -211,8 +209,11 @@ public class VAMSAS implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._treeList.size())
     {
-      throw new IndexOutOfBoundsException("getTree: Index value '" + index
-              + "' not in range [0.." + (this._treeList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "getTree",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._treeList.size() - 1)).toString()
+        })); 
     }
 
     return (java.lang.String) _treeList.get(index);
@@ -376,9 +377,11 @@ public class VAMSAS implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._sequenceSetList.size())
     {
-      throw new IndexOutOfBoundsException("setSequenceSet: Index value '"
-              + index + "' not in range [0.."
-              + (this._sequenceSetList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "setSequenceSet",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._sequenceSetList.size() - 1)).toString()
+          })); 
     }
 
     this._sequenceSetList.set(index, vSequenceSet);
@@ -415,8 +418,11 @@ public class VAMSAS implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._treeList.size())
     {
-      throw new IndexOutOfBoundsException("setTree: Index value '" + index
-              + "' not in range [0.." + (this._treeList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "setTree",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._treeList.size() - 1)).toString()
+        })); 
     }
 
     this._treeList.set(index, vTree);
index ffde324..f0228a0 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
index 8dbb94b..1faf480 100644 (file)
@@ -1,35 +1,31 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
 //- Imported classes and packages -/
 //---------------------------------/
 
+import jalview.util.MessageManager;
+
 import org.exolab.castor.xml.Marshaller;
 import org.exolab.castor.xml.Unmarshaller;
 
@@ -851,9 +847,11 @@ public class Viewport implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._calcIdParamList.size())
     {
-      throw new IndexOutOfBoundsException("getCalcIdParam: Index value '"
-              + index + "' not in range [0.."
-              + (this._calcIdParamList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "getCalcIdParam",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._calcIdParamList.size() - 1)).toString()
+          })); 
     }
 
     return (jalview.schemabinding.version2.CalcIdParam) _calcIdParamList
@@ -1001,9 +999,11 @@ public class Viewport implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._hiddenColumnsList.size())
     {
-      throw new IndexOutOfBoundsException("getHiddenColumns: Index value '"
-              + index + "' not in range [0.."
-              + (this._hiddenColumnsList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "getHiddenColumns",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._hiddenColumnsList.size() - 1)).toString()
+        })); 
     }
 
     return (jalview.schemabinding.version2.HiddenColumns) _hiddenColumnsList
@@ -2127,9 +2127,11 @@ public class Viewport implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._calcIdParamList.size())
     {
-      throw new IndexOutOfBoundsException("setCalcIdParam: Index value '"
-              + index + "' not in range [0.."
-              + (this._calcIdParamList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "setCalcIdParam",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._calcIdParamList.size() - 1)).toString()
+          })); 
     }
 
     this._calcIdParamList.set(index, vCalcIdParam);
@@ -2286,9 +2288,11 @@ public class Viewport implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._hiddenColumnsList.size())
     {
-      throw new IndexOutOfBoundsException("setHiddenColumns: Index value '"
-              + index + "' not in range [0.."
-              + (this._hiddenColumnsList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "setHiddenColumns",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._hiddenColumnsList.size() - 1)).toString()
+        })); 
     }
 
     this._hiddenColumnsList.set(index, vHiddenColumns);
index 481c0ce..822a175 100644 (file)
@@ -1,35 +1,31 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2;
 
 //---------------------------------/
 //- Imported classes and packages -/
 //---------------------------------/
 
+import jalview.util.MessageManager;
+
 import org.exolab.castor.xml.Marshaller;
 import org.exolab.castor.xml.Unmarshaller;
 
@@ -189,9 +185,11 @@ public class WebServiceParameterSet implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._serviceURLList.size())
     {
-      throw new IndexOutOfBoundsException("getServiceURL: Index value '"
-              + index + "' not in range [0.."
-              + (this._serviceURLList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                         "getServiceURL",
+                         Integer.valueOf(index).toString(),
+                         Integer.valueOf((this._serviceURLList.size() - 1)).toString()
+          })); 
     }
 
     return (java.lang.String) _serviceURLList.get(index);
@@ -379,9 +377,11 @@ public class WebServiceParameterSet implements java.io.Serializable
     // check bounds for index
     if (index < 0 || index >= this._serviceURLList.size())
     {
-      throw new IndexOutOfBoundsException("setServiceURL: Index value '"
-              + index + "' not in range [0.."
-              + (this._serviceURLList.size() - 1) + "]");
+        throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{
+                 "setServiceURL",
+                 Integer.valueOf(index).toString(),
+                 Integer.valueOf((this._serviceURLList.size() - 1)).toString()
+        })); 
     }
 
     this._serviceURLList.set(index, vServiceURL);
index f20ad7a..6601bfa 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index 171b8af..79c9abe 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index 7ff61af..2557a6a 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index 870a90d..ee5b714 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index 7ddb280..d0ff7b8 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index fdb7d00..8cfdbc8 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index 83a9941..7c71cef 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index 7117178..c87e9de 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index 493347d..4f384b1 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index 3b5f1dc..7399831 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index 4fd913f..ebad366 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index 3f41d5d..9ff05db 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index cdc2b0a..316777b 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index d2ffed1..bad65ce 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index a5fdfa0..916a92c 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index 47917d6..aa7cbe9 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index ba1c904..547597d 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index 22d130f..d310ae9 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index b1ff133..ff95611 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index 34f4d98..d28378a 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index 05a7ccc..1efb210 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index 96bfee6..27ee1c7 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index a84177b..0c14ecf 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index 4498c7a..60c5b1f 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index 24520c8..81c24ee 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index 057a804..4595408 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index afb41ba..e3952dc 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index 5f823dc..a44445f 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index 24108d4..c7dc025 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index a231d17..2a5817b 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index a4e83f4..bee6cb2 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index e9e0cb8..9a35b35 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index 06ee93d..dcdc8e4 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index 8e60014..8b2aa09 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index 38c5fcf..ea40444 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index b687586..80629f8 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index 96cf9c7..87c6196 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index 6d92ec3..69b4841 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index b4253f6..474daad 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index 0c27408..e190888 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index e35407c..4cc6bfc 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index 60ab87e..00139d4 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index f995afa..3e3ee2d 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index 396379f..e57d45b 100644 (file)
@@ -1,29 +1,23 @@
-/*******************************************************************************
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  
- * If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
- ******************************************************************************/
-/*
- * This class was automatically generated with 
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
  */
-
 package jalview.schemabinding.version2.descriptors;
 
 //---------------------------------/
index 301eb73..e975884 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.schemes;
@@ -52,13 +54,16 @@ public class AnnotationColourGradient extends FollowerColourScheme
   private boolean seqAssociated = false;
 
   IdentityHashMap<SequenceI, AlignmentAnnotation> seqannot = null;
+
   @Override
   public ColourSchemeI applyTo(AnnotatedCollectionI sg,
           Map<SequenceI, SequenceCollectionI> hiddenRepSequences)
   {
-    AnnotationColourGradient acg = new AnnotationColourGradient(annotation, colourScheme, aboveAnnotationThreshold);
+    AnnotationColourGradient acg = new AnnotationColourGradient(annotation,
+            colourScheme, aboveAnnotationThreshold);
     acg.thresholdIsMinMax = thresholdIsMinMax;
-    acg.annotationThreshold = (annotationThreshold==null) ? null : new GraphLine(annotationThreshold);
+    acg.annotationThreshold = (annotationThreshold == null) ? null
+            : new GraphLine(annotationThreshold);
     acg.r1 = r1;
     acg.g1 = g1;
     acg.b1 = b1;
@@ -70,9 +75,10 @@ public class AnnotationColourGradient extends FollowerColourScheme
     acg.db = db;
     acg.predefinedColours = predefinedColours;
     acg.seqAssociated = seqAssociated;
-    
+
     return acg;
   }
+
   /**
    * Creates a new AnnotationColourGradient object.
    */
@@ -139,7 +145,8 @@ public class AnnotationColourGradient extends FollowerColourScheme
         seqannot = new IdentityHashMap<SequenceI, AlignmentAnnotation>();
       }
       // resolve the context containing all the annotation for the sequence
-      AnnotatedCollectionI alcontext = alignment instanceof AlignmentI ? alignment : alignment.getContext();
+      AnnotatedCollectionI alcontext = alignment instanceof AlignmentI ? alignment
+              : alignment.getContext();
       for (AlignmentAnnotation alan : alcontext.findAnnotation(annotation
               .getCalcId()))
       {
@@ -220,19 +227,26 @@ public class AnnotationColourGradient extends FollowerColourScheme
     }
     if ((threshold == 0) || aboveThreshold(c, j))
     {
-      if (annotation.annotations!=null && j < annotation.annotations.length
+      if (annotation.annotations != null
+              && j < annotation.annotations.length
               && annotation.annotations[j] != null
               && !jalview.util.Comparison.isGap(c))
       {
 
-        if (predefinedColours)
+        if (annotation.annotations[j].colour != null)
         {
-          if (annotation.annotations[j].colour != null)
+          if (predefinedColours || annotation.hasIcons)
+          {
             return annotation.annotations[j].colour;
-          else
+          }
+        }
+        else
+        {
+          if (predefinedColours)
+          {
             return currentColour;
+          }
         }
-
         if (aboveAnnotationThreshold == NO_THRESHOLD
                 || (annotationThreshold != null
                         && aboveAnnotationThreshold == ABOVE_THRESHOLD && annotation.annotations[j].value >= annotationThreshold.value)
@@ -266,7 +280,7 @@ public class AnnotationColourGradient extends FollowerColourScheme
           {
             currentColour = colourScheme.findColour(c, j, seq);
           }
-          else 
+          else
           {
             dr = rr * range + r1;
             dg = gg * range + g1;
index 8d8eba0..41f7781 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.schemes;
@@ -92,10 +94,11 @@ public class Blosum62ColourScheme extends ResidueColourScheme
 
     return currentColour;
   }
+
   @Override
   public ColourSchemeI applyTo(AnnotatedCollectionI sg,
           Map<SequenceI, SequenceCollectionI> hiddenRepSequences)
-  { 
+  {
     ColourSchemeI newcs = super.applyTo(sg, hiddenRepSequences);
     return newcs;
   }
index f7b186f..e9220b2 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.schemes;
index 30addb0..92d2dd7 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.schemes;
@@ -327,11 +329,13 @@ public class ClustalxColourScheme extends ResidueColourScheme // implements
   {
     this.includeGaps = includeGaps;
   }
+
   @Override
   public ColourSchemeI applyTo(AnnotatedCollectionI sg,
           Map<SequenceI, SequenceCollectionI> hiddenRepSequences)
   {
-    ClustalxColourScheme css= new ClustalxColourScheme(sg, hiddenRepSequences);
+    ClustalxColourScheme css = new ClustalxColourScheme(sg,
+            hiddenRepSequences);
     css.includeGaps = includeGaps;
     return css;
   }
index 66be80d..67d23ea 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.schemes;
@@ -38,10 +40,14 @@ public interface ColourSchemeI
 
   /**
    * 
-   * @param c - sequence symbol or gap
-   * @param j - position in seq
-   * @param seq - sequence being coloured
-   * @return context dependent colour for the given symbol at the position in the given sequence
+   * @param c
+   *          - sequence symbol or gap
+   * @param j
+   *          - position in seq
+   * @param seq
+   *          - sequence being coloured
+   * @return context dependent colour for the given symbol at the position in
+   *         the given sequence
    */
   public Color findColour(char c, int j, SequenceI seq);
 
@@ -52,15 +58,18 @@ public interface ColourSchemeI
 
   /**
    * assign the given conservation to the colourscheme
+   * 
    * @param c
    */
   public void setConservation(jalview.analysis.Conservation c);
 
   /**
    * enable or disable conservation shading for this colourscheme
-   * @param conservationApplied 
+   * 
+   * @param conservationApplied
    */
   public void setConservationApplied(boolean conservationApplied);
+
   /**
    * 
    * @return true if conservation shading is enabled for this colourscheme
@@ -69,13 +78,14 @@ public interface ColourSchemeI
 
   /**
    * set scale factor for bleaching of colour in unconserved regions
+   * 
    * @param i
    */
   public void setConservationInc(int i);
 
   /**
    * 
-   * @return scale factor for bleaching colour in unconserved regions 
+   * @return scale factor for bleaching colour in unconserved regions
    */
   public int getConservationInc();
 
@@ -86,14 +96,20 @@ public interface ColourSchemeI
   public int getThreshold();
 
   /**
-   * set percentage identity threshold and type of %age identity calculation for shading
-   * @param ct 0..100 percentage identity for applying this colourscheme
-   * @param ignoreGaps when true, calculate PID without including gapped positions
+   * set percentage identity threshold and type of %age identity calculation for
+   * shading
+   * 
+   * @param ct
+   *          0..100 percentage identity for applying this colourscheme
+   * @param ignoreGaps
+   *          when true, calculate PID without including gapped positions
    */
   public void setThreshold(int ct, boolean ignoreGaps);
 
   /**
-   * recalculate dependent data using the given sequence collection, taking account of hidden rows
+   * recalculate dependent data using the given sequence collection, taking
+   * account of hidden rows
+   * 
    * @param alignment
    * @param hiddenReps
    */
@@ -101,7 +117,9 @@ public interface ColourSchemeI
           Map<SequenceI, SequenceCollectionI> hiddenReps);
 
   /**
-   * create a new instance of the colourscheme configured to colour the given connection
+   * create a new instance of the colourscheme configured to colour the given
+   * connection
+   * 
    * @param sg
    * @param hiddenRepSequences
    * @return copy of current scheme with any inherited settings transfered
index 04ffbe9..cc303d6 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.schemes;
@@ -86,15 +88,17 @@ public class ColourSchemeProperty
   public static final int COVARIATION = 14;
 
   public static final int TCOFFEE = 15;
-  
+
   public static final int RNAHELIX = 16;
 
+  public static final int RNAINTERACTION = 17;
+
   /**
    * index of first colourscheme (includes 'None')
    */
   public static final int FIRST_COLOUR = NONE;
 
-  public static final int LAST_COLOUR = RNAHELIX;
+  public static final int LAST_COLOUR = RNAINTERACTION;
 
   /**
    * DOCUMENT ME!
@@ -169,6 +173,10 @@ public class ColourSchemeProperty
     {
       ret = PURINEPYRIMIDINE;
     }
+    else if (name.equalsIgnoreCase("RNA Interaction type"))
+    {
+      ret = RNAINTERACTION;
+    }
     else if (name.equalsIgnoreCase("RNA Helices"))
     {
       ret = RNAHELIX;
@@ -344,6 +352,11 @@ public class ColourSchemeProperty
       ret = "T-Coffee Scores";
 
       break;
+
+    case RNAINTERACTION:
+      ret = "RNA Interaction type";
+
+      break;
     case RNAHELIX:
       ret = "RNA Helices";
 
@@ -500,15 +513,14 @@ public class ColourSchemeProperty
     case TCOFFEE:
       cs = new TCoffeeColourScheme(coll);
       break;
-    
+
     case RNAHELIX:
       cs = new RNAHelicesColour(coll);
       break;
-      
-      // case COVARIATION:
-      // cs = new CovariationColourScheme(annotation);
 
-      // break;
+    // case COVARIATION:
+    // cs = new CovariationColourScheme(annotation);
+    // break;
 
     case USER_DEFINED:
       Color[] col = new Color[24];
index b5cfcc9..1016ccb 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.schemes;
index 62d0b7b..e0521f4 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.schemes;
index 32e9316..54b0848 100644 (file)
@@ -1,3 +1,23 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
 package jalview.schemes;
 
 import jalview.analysis.Conservation;
@@ -6,8 +26,9 @@ import java.util.Hashtable;
 
 /**
  * Colourscheme that takes its colours from some other colourscheme
+ * 
  * @author jimp
- *
+ * 
  */
 public class FollowerColourScheme extends ResidueColourScheme
 {
@@ -22,7 +43,7 @@ public class FollowerColourScheme extends ResidueColourScheme
   @Override
   public void setConsensus(Hashtable[] consensus)
   {
-    if (colourScheme!=null)
+    if (colourScheme != null)
     {
       colourScheme.setConsensus(consensus);
     }
@@ -31,7 +52,7 @@ public class FollowerColourScheme extends ResidueColourScheme
   @Override
   public void setConservation(Conservation cons)
   {
-    if (colourScheme!=null)
+    if (colourScheme != null)
     {
       colourScheme.setConservation(cons);
     }
@@ -40,7 +61,7 @@ public class FollowerColourScheme extends ResidueColourScheme
   @Override
   public void setConservationInc(int i)
   {
-    if (colourScheme!=null)
+    if (colourScheme != null)
     {
       colourScheme.setConservationInc(i);
     }
index 665a78b..e8bf483 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.schemes;
index b060788..466ff0b 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.schemes;
index 4674aed..50e297a 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.schemes;
index 6b1ac51..f32e291 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.schemes;
index 57a5023..bccf964 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.schemes;
index 0a088c6..6bc28ac 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.schemes;
index 0a37052..152ad9a 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.schemes;
@@ -65,6 +67,7 @@ public class RNAHelicesColour extends ResidueColourScheme
     this.annotation = annotation;
     refresh();
   }
+
   public RNAHelicesColour(AnnotatedCollectionI alignment)
   {
     super(ResidueProperties.nucleotideIndex);
@@ -77,28 +80,31 @@ public class RNAHelicesColour extends ResidueColourScheme
   {
 
     // This loop will find the first rna structure annotation by which to colour
-    //  the sequences.
+    // the sequences.
     AlignmentAnnotation[] annotations = alignment.getAlignmentAnnotation();
-    for (int i = 0; i < annotations.length; i++) {
-        
-        // is this a sensible way of determining type of annotation?
-        if (annotations[i].getRNAStruc() != null) { 
-                annotation = annotations[i];
-                break;
-        }
+    for (int i = 0; i < annotations.length; i++)
+    {
+
+      // is this a sensible way of determining type of annotation?
+      if (annotations[i].getRNAStruc() != null)
+      {
+        annotation = annotations[i];
+        break;
+      }
     }
 
     refresh();
 
   }
+
   private long lastrefresh = -1;
 
   public void refresh()
   {
-    
-    if (annotation!=null && ((annotation._rnasecstr == null
-               || lastrefresh != annotation._rnasecstr.hashCode())
-            && annotation.isValidStruc()))
+
+    if (annotation != null
+            && ((annotation._rnasecstr == null || lastrefresh != annotation._rnasecstr
+                    .hashCode()) && annotation.isValidStruc()))
     {
       annotation.getRNAStruc();
       lastrefresh = annotation._rnasecstr.hashCode();
index cfa20f4..a7bdd8e 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.schemes;
diff --git a/src/jalview/schemes/RNAInteractionColourScheme.java b/src/jalview/schemes/RNAInteractionColourScheme.java
new file mode 100644 (file)
index 0000000..6ecc418
--- /dev/null
@@ -0,0 +1,85 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
+package jalview.schemes;
+
+import jalview.datamodel.SequenceI;
+
+import java.awt.Color;
+
+public class RNAInteractionColourScheme extends ResidueColourScheme
+{
+  public RNAInteractionColourScheme()
+  {
+    super();
+  }
+
+  /**
+   * DOCUMENT ME!
+   * 
+   * @param n
+   *          DOCUMENT ME!
+   * 
+   * @return DOCUMENT ME!
+   */
+  @Override
+  public Color findColour(char c)
+  {
+    // System.out.println("called"); log.debug
+    return colors[ResidueProperties.nucleotideIndex[c]];
+  }
+
+  /**
+   * DOCUMENT ME!
+   * 
+   * @param n
+   *          DOCUMENT ME!
+   * @param j
+   *          DOCUMENT ME!
+   * 
+   * @return DOCUMENT ME!
+   */
+  @Override
+  public Color findColour(char c, int j, SequenceI seq)
+  {
+    Color currentColour;
+    if ((threshold == 0) || aboveThreshold(c, j))
+    {
+      try
+      {
+        currentColour = colors[ResidueProperties.nucleotideIndex[c]];
+      } catch (Exception ex)
+      {
+        return Color.white;
+      }
+    }
+    else
+    {
+      return Color.white;
+    }
+
+    if (conservationColouring)
+    {
+      currentColour = applyConservation(currentColour, j);
+    }
+
+    return currentColour;
+  }
+}
index 4eefcda..47b8fbd 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.schemes;
@@ -23,6 +25,7 @@ import jalview.analysis.Conservation;
 import jalview.datamodel.AnnotatedCollectionI;
 import jalview.datamodel.SequenceCollectionI;
 import jalview.datamodel.SequenceI;
+import jalview.util.MessageManager;
 
 import java.awt.Color;
 import java.util.Hashtable;
@@ -194,6 +197,7 @@ public class ResidueColourScheme implements ColourSchemeI
   {
     return conservationColouring;
   }
+
   @Override
   public void setConservationApplied(boolean conservationApplied)
   {
@@ -315,12 +319,12 @@ public class ResidueColourScheme implements ColourSchemeI
   public ColourSchemeI applyTo(AnnotatedCollectionI sg,
           Map<SequenceI, SequenceCollectionI> hiddenRepSequences)
   {
-    try {
+    try
+    {
       return getClass().newInstance();
-    }
-    catch (Exception q)
+    } catch (Exception q)
     {
-      throw new Error("Serious implementation error: cannot duplicate colourscheme "+getClass().getName(), q);
+      throw new Error(MessageManager.formatMessage("error.implementation_error_cannot_duplicate_colour_scheme", new String[]{getClass().getName()}), q);
     }
   }
 }
index 0cd4cba..7ec9e1c 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.schemes;
@@ -27,7 +29,7 @@ import java.awt.*;
 
 public class ResidueProperties
 {
-  public static Hashtable<String,ScoreModelI> scoreMatrices = new Hashtable();
+  public static Hashtable<String, ScoreModelI> scoreMatrices = new Hashtable();
 
   // Stores residue codes/names and colours and other things
   public static final int[] aaIndex; // aaHash version 2.1.1 and below
@@ -695,19 +697,20 @@ public class ResidueProperties
   }
 
   /**
-   * Nucleotide Ambiguity Codes 
+   * Nucleotide Ambiguity Codes
    */
-  public static final Hashtable<String,String[]> ambiguityCodes=new Hashtable<String,String[]>();
+  public static final Hashtable<String, String[]> ambiguityCodes = new Hashtable<String, String[]>();
+
   /**
-   * Codon triplets with additional symbols for unambiguous codons that include ambiguity codes
+   * Codon triplets with additional symbols for unambiguous codons that include
+   * ambiguity codes
    */
-  public static final Hashtable<String,String> codonHash2 = new Hashtable<String,String>();
-  
+  public static final Hashtable<String, String> codonHash2 = new Hashtable<String, String>();
+
   /**
    * all ambiguity codes for a given base
    */
-  public final static Hashtable<String,List<String>> _ambiguityCodes = new Hashtable<String,List<String>>();
-
+  public final static Hashtable<String, List<String>> _ambiguityCodes = new Hashtable<String, List<String>>();
 
   static
   {
@@ -892,10 +895,10 @@ public class ResidueProperties
 
     codonHash2.put("TTC", "F");
     codonHash2.put("TTT", "F");
-    
+
     buildAmbiguityCodonSet();
   }
-  
+
   /**
    * programmatic generation of codons including ambiguity codes
    */
@@ -931,7 +934,8 @@ public class ResidueProperties
     }
     // and programmatically add in the ambiguity codes that yield the same amino
     // acid
-    String[] unambcodons = codonHash2.keySet().toArray(new String[codonHash2.size()]);
+    String[] unambcodons = codonHash2.keySet().toArray(
+            new String[codonHash2.size()]);
     for (String codon : unambcodons)
     {
       String residue = codonHash2.get(codon);
@@ -966,7 +970,7 @@ public class ResidueProperties
         char _anuc;
         for (ipos = 0; ipos < tpos.length; ipos++)
         {
-          if (acodon[ipos].length==0 || tpos[ipos] < 0)
+          if (acodon[ipos].length == 0 || tpos[ipos] < 0)
           {
             _acodon += codon.charAt(ipos);
             allres[ipos] = new char[]
@@ -998,7 +1002,7 @@ public class ResidueProperties
             _codon += allres[j][cpos[j]];
           }
           String tr = codonHash2.get(_codon);
-          if (valid = (tr!=null && tr.equals(residue)))
+          if (valid = (tr != null && tr.equals(residue)))
           {
             // advance to next combination
             ipos = acodon.length - 1;
@@ -1012,14 +1016,14 @@ public class ResidueProperties
         if (valid)
         {
           // Add this to the set of codons we will translate
-//          System.out.println("Adding ambiguity codon: " + _acodon + " for "
-//                  + residue);
+          // System.out.println("Adding ambiguity codon: " + _acodon + " for "
+          // + residue);
           codonHash2.put(_acodon, residue);
         }
         else
         {
-//          System.err.println("Rejecting ambiguity codon: " + _acodon
-//                  + " for " + residue);
+          // System.err.println("Rejecting ambiguity codon: " + _acodon
+          // + " for " + residue);
         }
         // next combination
         ipos = acodon.length - 1;
@@ -1420,62 +1424,75 @@ public class ResidueProperties
   }
   static
   {
-    int[][] propMatrixF = new int[maxProteinIndex][maxProteinIndex],
-            propMatrixPos = new int[maxProteinIndex][maxProteinIndex],
-            propMatrixEpos = new int[maxProteinIndex][maxProteinIndex];
-    for (int i=0;i<maxProteinIndex;i++)
+    int[][] propMatrixF = new int[maxProteinIndex][maxProteinIndex], propMatrixPos = new int[maxProteinIndex][maxProteinIndex], propMatrixEpos = new int[maxProteinIndex][maxProteinIndex];
+    for (int i = 0; i < maxProteinIndex; i++)
     {
-      int maxF=0,maxP=0,maxEP=0;
-      String ic="";
-      if (aa.length>i) {
-        ic+=aa[i];
+      int maxF = 0, maxP = 0, maxEP = 0;
+      String ic = "";
+      if (aa.length > i)
+      {
+        ic += aa[i];
       }
-      else {ic = "-";}
-      for (int j=i+1;j<maxProteinIndex; j++)
+      else
       {
-        String jc="";
-        if (aa.length>j) {
-          jc+=aa[j];
+        ic = "-";
+      }
+      for (int j = i + 1; j < maxProteinIndex; j++)
+      {
+        String jc = "";
+        if (aa.length > j)
+        {
+          jc += aa[j];
         }
-        else {jc = "-";}
-        propMatrixF[i][j]=0;
-        propMatrixPos[i][j]=0;
-        propMatrixEpos[i][j]=0;
-        for (Enumeration<String> en= (Enumeration<String>)propHash.keys(); en.hasMoreElements(); )
+        else
+        {
+          jc = "-";
+        }
+        propMatrixF[i][j] = 0;
+        propMatrixPos[i][j] = 0;
+        propMatrixEpos[i][j] = 0;
+        for (Enumeration<String> en = (Enumeration<String>) propHash.keys(); en
+                .hasMoreElements();)
         {
           String ph = en.nextElement();
-          Map<String,Integer> pph=(Map<String,Integer>)propHash.get(ph);
-          if (pph.get(ic)!=null && pph.get(jc)!=null) {
-            int icp=pph.get(ic).intValue(),jcp=pph.get(jc).intValue();
+          Map<String, Integer> pph = (Map<String, Integer>) propHash
+                  .get(ph);
+          if (pph.get(ic) != null && pph.get(jc) != null)
+          {
+            int icp = pph.get(ic).intValue(), jcp = pph.get(jc).intValue();
             // Still working on these definitions.
-            propMatrixPos[i][j] += icp == jcp && icp>0 ? 2 : 0;
-            propMatrixPos[j][i] += icp == jcp && icp>0 ? 2 : 0;
+            propMatrixPos[i][j] += icp == jcp && icp > 0 ? 2 : 0;
+            propMatrixPos[j][i] += icp == jcp && icp > 0 ? 2 : 0;
             propMatrixF[i][j] += icp == jcp ? 2 : 0;
             propMatrixF[j][i] += icp == jcp ? 2 : 0;
-            propMatrixEpos[i][j] += icp == jcp ? (1+icp * 2) : 0;
-            propMatrixEpos[j][i] += icp == jcp ? (1+icp * 2) : 0;
-        }}
-        if (maxF<propMatrixF[i][j])
+            propMatrixEpos[i][j] += icp == jcp ? (1 + icp * 2) : 0;
+            propMatrixEpos[j][i] += icp == jcp ? (1 + icp * 2) : 0;
+          }
+        }
+        if (maxF < propMatrixF[i][j])
         {
-          maxF=propMatrixF[i][j];
+          maxF = propMatrixF[i][j];
         }
-        if (maxP<propMatrixPos[i][j])
+        if (maxP < propMatrixPos[i][j])
         {
-          maxP=propMatrixPos[i][j];
+          maxP = propMatrixPos[i][j];
         }
-        if (maxEP<propMatrixEpos[i][j])
+        if (maxEP < propMatrixEpos[i][j])
         {
-          maxEP=propMatrixEpos[i][j];
+          maxEP = propMatrixEpos[i][j];
         }
       }
-      propMatrixF[i][i]=maxF;
-      propMatrixPos[i][i]=maxP;
-      propMatrixEpos[i][i]=maxEP;
+      propMatrixF[i][i] = maxF;
+      propMatrixPos[i][i] = maxP;
+      propMatrixEpos[i][i] = maxEP;
     }
     // JAL-1512 comment out physicochemical score matrices for 2.8.1 release
-    //scoreMatrices.put("Conservation Pos", new ScoreMatrix("Conservation Pos",propMatrixPos,0));
-    //scoreMatrices.put("Conservation Both", new ScoreMatrix("Conservation Both",propMatrixF,0));
-    //scoreMatrices.put("Conservation EnhPos", new ScoreMatrix("Conservation EnhPos",propMatrixEpos,0));
+    // scoreMatrices.put("Conservation Pos", new
+    // ScoreMatrix("Conservation Pos",propMatrixPos,0));
+    // scoreMatrices.put("Conservation Both", new
+    // ScoreMatrix("Conservation Both",propMatrixF,0));
+    // scoreMatrices.put("Conservation EnhPos", new
+    // ScoreMatrix("Conservation EnhPos",propMatrixEpos,0));
     scoreMatrices.put("PID", new PIDScoreModel());
   }
 
@@ -1553,12 +1570,13 @@ public class ResidueProperties
       return _codonTranslate(lccodon);
     }
     String cdn = codonHash2.get(lccodon.toUpperCase());
-    if (cdn!=null && cdn.equals("*"))
+    if (cdn != null && cdn.equals("*"))
     {
       return "STOP";
     }
     return cdn;
   }
+
   public static String _codonTranslate(String lccodon)
   {
     String codon = lccodon.toUpperCase();
@@ -1608,6 +1626,7 @@ public class ResidueProperties
     }
     return null;
   }
+
   /**
    * get a ScoreModel based on its string name
    * 
@@ -1679,9 +1698,68 @@ public class ResidueProperties
   public static Hashtable toRNAssState;
   static
   {
-    toRNAssState = new Hashtable();
-    toRNAssState.put(")", "S");
-    toRNAssState.put("(", "S");
+    toRNAssState = new Hashtable<String, String>();
+    toRNAssState.put(")", "(");
+    toRNAssState.put("(", "(");
+    toRNAssState.put("]", "[");
+    toRNAssState.put("[", "[");
+    toRNAssState.put("{", "{");
+    toRNAssState.put("}", "{");
+    toRNAssState.put(">", ">");
+    toRNAssState.put("<", ">");
+    toRNAssState.put("A", "A");
+    toRNAssState.put("a", "A");
+    toRNAssState.put("B", "B");
+    toRNAssState.put("b", "B");
+    toRNAssState.put("C", "C");
+    toRNAssState.put("c", "C");
+    toRNAssState.put("D", "D");
+    toRNAssState.put("d", "D");
+    toRNAssState.put("E", "E");
+    toRNAssState.put("e", "E");
+    toRNAssState.put("F", "F");
+    toRNAssState.put("f", "F");
+    toRNAssState.put("G", "G");
+    toRNAssState.put("g", "G");
+    toRNAssState.put("H", "H");
+    toRNAssState.put("h", "H");
+    toRNAssState.put("I", "I");
+    toRNAssState.put("i", "I");
+    toRNAssState.put("J", "J");
+    toRNAssState.put("j", "J");
+    toRNAssState.put("K", "K");
+    toRNAssState.put("k", "K");
+    toRNAssState.put("L", "L");
+    toRNAssState.put("l", "L");
+    toRNAssState.put("M", "M");
+    toRNAssState.put("m", "M");
+    toRNAssState.put("N", "N");
+    toRNAssState.put("n", "N");
+    toRNAssState.put("O", "O");
+    toRNAssState.put("o", "O");
+    toRNAssState.put("P", "P");
+    toRNAssState.put("p", "P");
+    toRNAssState.put("Q", "Q");
+    toRNAssState.put("q", "Q");
+    toRNAssState.put("R", "R");
+    toRNAssState.put("r", "R");
+    toRNAssState.put("S", "S");
+    toRNAssState.put("s", "S");
+    toRNAssState.put("T", "T");
+    toRNAssState.put("t", "T");
+    toRNAssState.put("U", "U");
+    toRNAssState.put("u", "U");
+    toRNAssState.put("V", "V");
+    toRNAssState.put("v", "V");
+    toRNAssState.put("W", "W");
+    toRNAssState.put("w", "W");
+    toRNAssState.put("X", "X");
+    toRNAssState.put("x", "X");
+    toRNAssState.put("Y", "Y");
+    toRNAssState.put("y", "Y");
+    toRNAssState.put("Z", "Z");
+    toRNAssState.put("z", "Z");
+
   }
 
   /**
index 6eef929..2a377a2 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.schemes;
index 88b0f9c..ac02ee5 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.schemes;
@@ -21,10 +23,11 @@ package jalview.schemes;
 import jalview.analysis.scoremodels.PairwiseSeqScoreModel;
 import jalview.api.analysis.ScoreModelI;
 
-public class ScoreMatrix extends PairwiseSeqScoreModel implements ScoreModelI
+public class ScoreMatrix extends PairwiseSeqScoreModel implements
+        ScoreModelI
 {
   String name;
-  
+
   @Override
   public String getName()
   {
@@ -40,11 +43,15 @@ public class ScoreMatrix extends PairwiseSeqScoreModel implements ScoreModelI
    * 0 for Protein Score matrix. 1 for dna score matrix
    */
   int type;
+
   /**
    * 
-   * @param name Unique, human readable name for the matrix
-   * @param matrix Pairwise scores indexed according to appropriate symbol alphabet
-   * @param type 0 for Protein, 1 for NA
+   * @param name
+   *          Unique, human readable name for the matrix
+   * @param matrix
+   *          Pairwise scores indexed according to appropriate symbol alphabet
+   * @param type
+   *          0 for Protein, 1 for NA
    */
   ScoreMatrix(String name, int[][] matrix, int type)
   {
@@ -58,6 +65,7 @@ public class ScoreMatrix extends PairwiseSeqScoreModel implements ScoreModelI
   {
     return type == 1;
   }
+
   @Override
   public boolean isProtein()
   {
index 6b4b597..e7f8ae8 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.schemes;
index cd2681b..b5c24ce 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.schemes;
@@ -85,7 +87,8 @@ public class TCoffeeColourScheme extends ResidueColourScheme
     // Search alignment to get all tcoffee annotation and pick one set of
     // annotation to use to colour seqs.
     seqMap = new IdentityHashMap<SequenceI, Color[]>();
-    AnnotatedCollectionI alcontext = alignment instanceof AlignmentI ? alignment : alignment.getContext();
+    AnnotatedCollectionI alcontext = alignment instanceof AlignmentI ? alignment
+            : alignment.getContext();
     int w = 0;
     for (AlignmentAnnotation al : alcontext
             .findAnnotation(TCoffeeScoreFile.TCOFFEE_SCORE))
@@ -130,7 +133,7 @@ public class TCoffeeColourScheme extends ResidueColourScheme
     }
     return cols[j];
   }
-  
+
   @Override
   public ColourSchemeI applyTo(AnnotatedCollectionI sg,
           Map<SequenceI, SequenceCollectionI> hiddenRepSequences)
index 80cb1fe..59d696d 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.schemes;
index 1cc297a..ce676b4 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.schemes;
index 08b7abf..8ca0b86 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.schemes;
@@ -42,18 +44,22 @@ public class UserColourScheme extends ResidueColourScheme
     super(ResidueProperties.aaIndex);
     colors = newColors;
   }
+
   @Override
   public ColourSchemeI applyTo(AnnotatedCollectionI sg,
           Map<SequenceI, SequenceCollectionI> hiddenRepSequences)
   {
     UserColourScheme usc = new UserColourScheme(colors);
-    if (lowerCaseColours!=null) {
+    if (lowerCaseColours != null)
+    {
       usc.schemeName = new String(schemeName);
       usc.lowerCaseColours = new Color[lowerCaseColours.length];
-      System.arraycopy(lowerCaseColours, 0, usc.lowerCaseColours, 0, lowerCaseColours.length);
+      System.arraycopy(lowerCaseColours, 0, usc.lowerCaseColours, 0,
+              lowerCaseColours.length);
     }
     return usc;
   }
+
   public UserColourScheme(String colour)
   {
     super(ResidueProperties.aaIndex);
@@ -158,7 +164,8 @@ public class UserColourScheme extends ResidueColourScheme
 
   public void parseAppletParameter(String paramValue)
   {
-    // TODO: need a function to generate appletParameter colour string from a UCS
+    // TODO: need a function to generate appletParameter colour string from a
+    // UCS
     StringTokenizer st = new StringTokenizer(paramValue, ";");
     StringTokenizer st2;
     String token = null, colour, residues;
index d2cdde9..f4aef2a 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.schemes;
index 2dcc4d0..ebebc6a 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.structure;
index c01e0dd..2402f87 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.structure;
index 7c5f450..ec7aed1 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.structure;
index 1e28bd4..0c54ebf 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.structure;
index bf53258..83a9fd0 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.structure;
index eef46a7..8ac002b 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.structure;
index d28446f..d2dcb34 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.structure;
index a0eaf7b..0901680 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.structure;
index bf14000..73a5905 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.structure;
@@ -26,6 +28,7 @@ import jalview.analysis.*;
 import jalview.api.AlignmentViewPanel;
 import jalview.api.StructureSelectionManagerProvider;
 import jalview.datamodel.*;
+import jalview.util.MessageManager;
 
 public class StructureSelectionManager
 {
@@ -54,18 +57,20 @@ public class StructureSelectionManager
   }
 
   Hashtable mappingData = new Hashtable();
+
   private static StructureSelectionManager nullProvider = null;
+
   public static StructureSelectionManager getStructureSelectionManager(
           StructureSelectionManagerProvider context)
   {
-    if (context==null) { 
+    if (context == null)
+    {
       if (nullProvider == null)
       {
         if (instances != null)
         {
-          throw new Error(
-                  "Implementation error. Structure selection manager's context is 'null'",
-                  new NullPointerException("SSM context is null"));
+          throw new Error(MessageManager.getString("error.implementation_error_structure_selection_manager_null"),
+                  new NullPointerException(MessageManager.getString("exception.ssm_context_is_null")));
         }
         else
         {
@@ -81,10 +86,12 @@ public class StructureSelectionManager
     StructureSelectionManager instance = instances.get(context);
     if (instance == null)
     {
-      if (nullProvider!=null)
+      if (nullProvider != null)
       {
         instance = nullProvider;
-      } else {
+      }
+      else
+      {
         instance = new StructureSelectionManager();
       }
       instances.put(context, instance);
index 145d2d5..26ebdc1 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.structure;
index cab0c23..3c8ec56 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.structure;
diff --git a/src/jalview/structures/models/SequenceStructureBindingModel.java b/src/jalview/structures/models/SequenceStructureBindingModel.java
new file mode 100644 (file)
index 0000000..7d023a8
--- /dev/null
@@ -0,0 +1,72 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
+package jalview.structures.models;
+
+import jalview.api.SequenceStructureBinding;
+
+public class SequenceStructureBindingModel implements
+        SequenceStructureBinding
+{
+
+  /**
+   * set if Structure Viewer state is being restored from some source -
+   * instructs binding not to apply default display style when structure set is
+   * updated for first time.
+   */
+  private boolean loadingFromArchive = false;
+
+  /**
+   * second flag to indicate if the Structure viewer should ignore sequence
+   * colouring events from the structure manager because the GUI is still
+   * setting up
+   */
+  private boolean loadingFinished = true;
+
+  @Override
+  public void setLoadingFromArchive(boolean loadingFromArchive)
+  {
+    this.loadingFromArchive = loadingFromArchive;
+  }
+
+  /**
+   * 
+   * @return true if Jmol is still restoring state or loading is still going on
+   *         (see setFinsihedLoadingFromArchive)
+   */
+  @Override
+  public boolean isLoadingFromArchive()
+  {
+    return loadingFromArchive && !loadingFinished;
+  }
+
+  @Override
+  public boolean isLoadingFinished()
+  {
+    return loadingFinished;
+  }
+
+  @Override
+  public void setFinishedLoadingFromArchive(boolean finishedLoading)
+  {
+    loadingFinished = finishedLoading;
+  }
+
+}
index 3ac2927..871b480 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.util;
@@ -221,8 +223,7 @@ public class AWTConsole extends WindowAdapter implements WindowListener,
       } catch (InterruptedException ie)
       {
       }
-      throw new NullPointerException(
-              "Application test: throwing an NullPointerException It should arrive at the console");
+      throw new NullPointerException(MessageManager.getString("exception.application_test_npe"));
     }
 
   }
index cf898b7..60e2fed 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.util;
@@ -700,14 +702,14 @@ public class BrowserLauncher
   {
     if (!loadedWithoutErrors)
     {
-      throw new IOException("Exception in finding browser: " + errorMessage);
+      throw new IOException(MessageManager.formatMessage("exception.browser_not_found", new String[]{errorMessage}));
     }
 
     Object browser = locateBrowser();
 
     if (browser == null)
     {
-      throw new IOException("Unable to locate browser: " + errorMessage);
+        throw new IOException(MessageManager.formatMessage("exception.browser_unable_to_locate", new String[]{errorMessage}));
     }
 
     switch (jvm)
@@ -726,19 +728,13 @@ public class BrowserLauncher
         {});
       } catch (InvocationTargetException ite)
       {
-        throw new IOException(
-                "InvocationTargetException while creating AEDesc: "
-                        + ite.getMessage());
+        throw new IOException(MessageManager.formatMessage("exception.invocation_target_exception_creating_aedesc", new String[]{ite.getMessage()}));
       } catch (IllegalAccessException iae)
       {
-        throw new IOException(
-                "IllegalAccessException while building AppleEvent: "
-                        + iae.getMessage());
+         throw new IOException(MessageManager.formatMessage("exception.illegal_access_building_apple_evt", new String[]{iae.getMessage()}));
       } catch (InstantiationException ie)
       {
-        throw new IOException(
-                "InstantiationException while creating AEDesc: "
-                        + ie.getMessage());
+         throw new IOException(MessageManager.formatMessage("exception.illegal_access_building_apple_evt", new String[]{ie.getMessage()}));
       } finally
       {
         aeDesc = null; // Encourage it to get disposed if it was created
@@ -776,13 +772,12 @@ public class BrowserLauncher
         }
         else
         {
-          throw new IOException("Unable to launch URL: " + result);
+          throw new IOException(MessageManager.formatMessage("exception.unable_to_launch_url", new String[]{Integer.valueOf(result).toString()}));
         }
       }
       else
       {
-        throw new IOException(
-                "Unable to create an Internet Config instance: " + result);
+        throw new IOException(MessageManager.formatMessage("exception.unable_to_create_internet_config", new String[]{Integer.valueOf(result).toString()}));
       }
 
       break;
@@ -795,14 +790,10 @@ public class BrowserLauncher
         { url });
       } catch (InvocationTargetException ite)
       {
-        throw new IOException(
-                "InvocationTargetException while calling openURL: "
-                        + ite.getMessage());
+        throw new IOException(MessageManager.formatMessage("exception.invocation_target_calling_url", new String[]{ite.getMessage()}));
       } catch (IllegalAccessException iae)
       {
-        throw new IOException(
-                "IllegalAccessException while calling openURL: "
-                        + iae.getMessage());
+          throw new IOException(MessageManager.formatMessage("exception.illegal_access_calling_url", new String[]{iae.getMessage()}));
       }
 
       break;
@@ -827,9 +818,7 @@ public class BrowserLauncher
         process.exitValue();
       } catch (InterruptedException ie)
       {
-        throw new IOException(
-                "InterruptedException while launching browser: "
-                        + ie.getMessage());
+          throw new IOException(MessageManager.formatMessage("exception.interrupted_launching_browser", new String[]{ie.getMessage()}));
       }
 
       break;
@@ -868,9 +857,7 @@ public class BrowserLauncher
         }
       } catch (InterruptedException ie)
       {
-        throw new IOException(
-                "InterruptedException while launching browser: "
-                        + ie.getMessage());
+          throw new IOException(MessageManager.formatMessage("exception.interrupted_launching_browser", new String[]{ie.getMessage()}));
       }
 
       break;
index 1ab6361..fd76086 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 /**
@@ -57,4 +59,28 @@ public class ColorUtils
 
   }
 
+  /**
+   * Returns a colour three shades darker. Note you can't guarantee that
+   * brighterThan reverses this, as darkerThan may result in black.
+   * 
+   * @param col
+   * @return
+   */
+  public static Color darkerThan(Color col)
+  {
+    return col == null ? null : col.darker().darker().darker();
+  }
+
+  /**
+   * Returns a colour three shades brighter. Note you can't guarantee that
+   * darkerThan reverses this, as brighterThan may result in white.
+   * 
+   * @param col
+   * @return
+   */
+  public static Color brighterThan(Color col)
+  {
+    return col == null ? null : col.brighter().brighter().brighter();
+  }
+
 }
index 4f2c0a7..8931b23 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.util;
index 884af30..4cc888d 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.util;
@@ -416,11 +418,15 @@ public class DBRefUtils
         // check for chaincode and mapping
         // PFAM style stockhom PDB citation
         com.stevesoft.pat.Regex r = new com.stevesoft.pat.Regex(
-                "([0-9][0-9A-Za-z]{3})\\s*(.?)\\s*;([0-9]+)-([0-9]+)");
+                "([0-9][0-9A-Za-z]{3})\\s*(.?)\\s*;\\s*([0-9]+)-([0-9]+)");
         if (r.search(acn.trim()))
         {
           String pdbid = r.stringMatched(1);
           String chaincode = r.stringMatched(2);
+          if (chaincode==null)
+          {
+            chaincode = " ";
+          }
           String mapstart = r.stringMatched(3);
           String mapend = r.stringMatched(4);
           if (chaincode.equals(" "))
@@ -431,7 +437,11 @@ public class DBRefUtils
           ref = new DBRefEntry(locsrc, version, pdbid + chaincode);
           PDBEntry pdbr = new PDBEntry();
           pdbr.setId(pdbid);
+          pdbr.setProperty(new Hashtable());
+          pdbr.getProperty().put("CHAIN", chaincode);
           seq.addPDBId(pdbr);
+        } else {
+          System.err.println("Malformed PDB DR line:"+acn);
         }
       }
       else
index 5bab738..a7b311b 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 /**
index 4642ad8..e8af4cd 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.util;
@@ -394,8 +396,7 @@ public class GroupUrlLink
     { dsstring });
     if (idstrings.length != seqstrings.length)
     {
-      throw new Error(
-              "idstrings and seqstrings contain one string each per sequence.");
+      throw new Error(MessageManager.getString("error.idstring_seqstrings_only_one_per_sequence"));
     }
     return rstrings;
   }
@@ -485,18 +486,14 @@ public class GroupUrlLink
         {
           if (maxs != idseq[i].length)
           {
-            throw new Error(
-                    "Cannot have mixed length replacement vectors. Replacement vector for "
-                            + (mtch[i]) + " is " + idseq[i].length
-                            + " strings long, and have already seen a "
-                            + maxs + " length vector.");
+            throw new Error(MessageManager.formatMessage("error.cannot_have_mixed_length_replacement_vectors",
+                               new String[]{(mtch[i]), Integer.valueOf(idseq[i].length).toString(),Integer.valueOf(maxs).toString()}));
           }
         }
       }
       else
       {
-        throw new Error(
-                "Cannot have zero length vector of replacement strings - either 1 value or n values.");
+        throw new Error(MessageManager.getString("error.cannot_have_zero_length_vector_replacement_strings"));
       }
     }
     // iterate through input, collating segments to be inserted into url
index 7c429f3..c93f8e8 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.util;
index c7a32f7..eb414b9 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.util;
index 0ba7566..cd885f0 100644 (file)
@@ -1,3 +1,23 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
 package jalview.util;
 
 import java.text.MessageFormat;
@@ -11,77 +31,91 @@ import java.util.logging.Logger;
  * @author David Roldan Martinez
  * @author Thomas Abeel
  * 
- *
+ * 
  */
-public class MessageManager {
+public class MessageManager
+{
 
-       private static ResourceBundle rb;    
-               
-       private static Logger log=Logger.getLogger(MessageManager.class.getCanonicalName());
-       
-       private static Locale loc;
-       
-       
-       
-    static{
-      try {
-       /* Localize Java dialogs */
-        loc = Locale.getDefault();
-       // Locale.setDefault(loc);
-       /* Getting messages for GV */
-       log.info("Getting messages for lang: "+loc);
-        rb = ResourceBundle.getBundle("lang.Messages", loc);
-        if (log.isLoggable(Level.FINEST)) {
-          // this might take a while, so we only do it if it will be shown
-          log.finest("Language keys: "+rb.keySet());
-        }
-      } catch (Exception q) {
-        log.warning("Exception when initting Locale for i18n messages\n"+q.getMessage());
-        q.printStackTrace();
-      }
-      catch (Error v)
+  private static ResourceBundle rb;
+
+  private static Logger log = Logger.getLogger(MessageManager.class
+          .getCanonicalName());
+
+  private static Locale loc;
+
+  static
+  {
+    try
+    {
+      /* Localize Java dialogs */
+      loc = Locale.getDefault();
+      // Locale.setDefault(loc);
+      /* Getting messages for GV */
+      log.info("Getting messages for lang: " + loc);
+      rb = ResourceBundle.getBundle("lang.Messages", loc);
+      if (log.isLoggable(Level.FINEST))
       {
-        log.warning("Error when initting Locale for i18n messages\n"+v.getMessage());
-        v.printStackTrace();
+        // this might take a while, so we only do it if it will be shown
+        log.finest("Language keys: " + rb.keySet());
       }
-      
-     
+    } catch (Exception q)
+    {
+      log.warning("Exception when initting Locale for i18n messages\n"
+              + q.getMessage());
+      q.printStackTrace();
+    } catch (Error v)
+    {
+      log.warning("Error when initting Locale for i18n messages\n"
+              + v.getMessage());
+      v.printStackTrace();
     }
-    
-    public static String getString(String key){
-       String value = "[missing key] " + key;
-       try{
-               value = rb.getString(key);
-       }catch(Exception e){
-         log.warning("I18N missing: "+loc+"\t"+key);
-       }
-       return value;
+
+  }
+
+  public static String getString(String key)
+  {
+    String value = "[missing key] " + key;
+    try
+    {
+      value = rb.getString(key);
+    } catch (Exception e)
+    {
+      log.warning("I18N missing: " + loc + "\t" + key);
     }
-    
-       public static Locale getLocale() {
-               return loc;
-       }
-       public static String formatMessage(String key, Object... params){
-               return MessageFormat.format(rb.getString(key), (Object[]) params);
-       }
+    return value;
+  }
+
+  public static Locale getLocale()
+  {
+    return loc;
+  }
+
+  public static String formatMessage(String key, Object... params)
+  {
+    return MessageFormat.format(rb.getString(key), (Object[]) params);
+  }
 
   /**
-   * lookup and return a key given a root and a human-readable(ish) name that when combined might resolve to an i18n string.
-   * If the key doesn't resolve, then name is returned.if the key doesn't exist.
-   * Use this for programatically constructed keys that have have a human readable alternative used in the program (e.g. BLOSUM62 and label.score_blosum62) 
+   * lookup and return a key given a root and a human-readable(ish) name that
+   * when combined might resolve to an i18n string. If the key doesn't resolve,
+   * then name is returned.if the key doesn't exist. Use this for
+   * programatically constructed keys that have have a human readable
+   * alternative used in the program (e.g. BLOSUM62 and label.score_blosum62)
+   * 
    * @param keyroot
    * @param name
    * @return
    */
   public static String getStringOrReturn(String keyroot, String name)
   {
-    String smkey = keyroot
-            + name.toLowerCase().replaceAll(" ", "");
-    try {
-      name = rb.getString(smkey); 
-    }
-    catch (Exception x) {
-      log.finest("I18N missing key with root "+keyroot+": "+loc+"\t"+smkey);
+    String smkey = keyroot + name.toLowerCase().replaceAll(" ", "");
+    try
+    {
+      name = rb.getString(smkey);
+    } catch (Exception x)
+    {
+      log.finest("I18N missing key with root " + keyroot + ": " + loc
+              + "\t" + smkey);
     }
     return name;
   }
index 102bead..2330cca 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.util;
index 8c406a9..21decf3 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.util;
index 1d9d8ec..e3bb514 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.util;
index 3c0683a..2b3a8a4 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.util;
index 3352cbb..496ce5a 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.util;
index 2936ac3..c716110 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.util;
index 76e612f..86bf0eb 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.util;
index e25818e..0fa4a3c 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.viewmodel;
@@ -212,15 +214,18 @@ public abstract class AlignmentViewport implements AlignViewportI
     // calculation till later or to do all calculations in thread.
     // via changecolour
     globalColourScheme = cs;
-    boolean recalc=false;
-    if (cs!=null)
+    boolean recalc = false;
+    if (cs != null)
     {
       cs.setConservationApplied(recalc = getConservationSelected());
-      if (getAbovePIDThreshold() || cs instanceof PIDColourScheme || cs instanceof Blosum62ColourScheme)
+      if (getAbovePIDThreshold() || cs instanceof PIDColourScheme
+              || cs instanceof Blosum62ColourScheme)
       {
         recalc = true;
         cs.setThreshold(threshold, ignoreGapsInConsensusCalculation);
-      } else {
+      }
+      else
+      {
         cs.setThreshold(0, ignoreGapsInConsensusCalculation);
       }
       if (recalc)
@@ -245,7 +250,7 @@ public abstract class AlignmentViewport implements AlignViewportI
                 || cs instanceof Blosum62ColourScheme)
         {
           sg.cs.setThreshold(threshold, getIgnoreGapsConsensus());
-          recalc=true;
+          recalc = true;
         }
         else
         {
@@ -255,16 +260,19 @@ public abstract class AlignmentViewport implements AlignViewportI
         if (getConservationSelected())
         {
           sg.cs.setConservationApplied(true);
-          recalc=true;
+          recalc = true;
         }
         else
         {
           sg.cs.setConservation(null);
           // sg.cs.setThreshold(0, getIgnoreGapsConsensus());
         }
-        if (recalc) {
+        if (recalc)
+        {
           sg.recalcConservation();
-        } else {
+        }
+        else
+        {
           sg.cs.alignmentChanged(sg, hiddenRepSequences);
         }
       }
@@ -300,13 +308,15 @@ public abstract class AlignmentViewport implements AlignViewportI
    * view
    */
   protected Hashtable[] hStrucConsensus = null;
-  
+
   protected Conservation hconservation = null;
+
   @Override
   public void setConservation(Conservation cons)
   {
     hconservation = cons;
   }
+
   /**
    * percentage gaps allowed in a column before all amino acid properties should
    * be considered unconserved
@@ -1233,6 +1243,28 @@ public abstract class AlignmentViewport implements AlignViewportI
 
   }
 
+  @Override
+  public List<AlignmentAnnotation> getVisibleAlignmentAnnotation(boolean selectedOnly)
+  {
+    ArrayList<AlignmentAnnotation> ala = new ArrayList<AlignmentAnnotation>();
+    AlignmentAnnotation[] aa;
+    if ((aa=alignment.getAlignmentAnnotation())!=null)
+    {
+      for (AlignmentAnnotation annot:aa)
+      {
+        AlignmentAnnotation clone = new AlignmentAnnotation(annot);
+        if (selectedOnly && selectionGroup!=null)
+        {
+          colSel.makeVisibleAnnotation(selectionGroup.getStartRes(), selectionGroup.getEndRes(),clone);
+        } else {
+          colSel.makeVisibleAnnotation(clone);
+        }
+        ala.add(clone);
+      }
+    }
+    return ala;
+  }
+
   /**
    * @return the padGaps
    */
@@ -1371,15 +1403,15 @@ public abstract class AlignmentViewport implements AlignViewportI
       {
         conservation = new AlignmentAnnotation("Conservation",
                 "Conservation of total alignment less than "
-                        + getConsPercGaps() + "% gaps",
-                new Annotation[1], 0f, 11f,
-                AlignmentAnnotation.BAR_GRAPH);
+                        + getConsPercGaps() + "% gaps", new Annotation[1],
+                0f, 11f, AlignmentAnnotation.BAR_GRAPH);
         conservation.hasText = true;
         conservation.autoCalculated = true;
         alignment.addAnnotation(conservation);
       }
     }
   }
+
   private void initQuality()
   {
     if (showQuality)
@@ -1388,21 +1420,20 @@ public abstract class AlignmentViewport implements AlignViewportI
       {
         quality = new AlignmentAnnotation("Quality",
                 "Alignment Quality based on Blosum62 scores",
-                new Annotation[1], 0f, 11f,
-                AlignmentAnnotation.BAR_GRAPH);
+                new Annotation[1], 0f, 11f, AlignmentAnnotation.BAR_GRAPH);
         quality.hasText = true;
         quality.autoCalculated = true;
         alignment.addAnnotation(quality);
       }
     }
   }
+
   private void initRNAStructure()
   {
-    if (alignment.hasRNAStructure() && strucConsensus==null)
+    if (alignment.hasRNAStructure() && strucConsensus == null)
     {
       strucConsensus = new AlignmentAnnotation("StrucConsensus", "PID",
-              new Annotation[1], 0f, 100f,
-              AlignmentAnnotation.BAR_GRAPH);
+              new Annotation[1], 0f, 100f, AlignmentAnnotation.BAR_GRAPH);
       strucConsensus.hasText = true;
       strucConsensus.autoCalculated = true;
 
@@ -1412,6 +1443,7 @@ public abstract class AlignmentViewport implements AlignViewportI
       }
     }
   }
+
   /*
    * (non-Javadoc)
    * 
@@ -1512,7 +1544,7 @@ public abstract class AlignmentViewport implements AlignViewportI
         if (aan[an].autoCalculated && aan[an].groupRef != null)
         {
           oldrfs.add(aan[an].groupRef);
-          alignment.deleteAnnotation(aan[an],false);
+          alignment.deleteAnnotation(aan[an], false);
         }
       }
     }
@@ -1552,11 +1584,12 @@ public abstract class AlignmentViewport implements AlignViewportI
   @Override
   public Color getSequenceColour(SequenceI seq)
   {
-    Color sqc=Color.white;
+    Color sqc = Color.white;
     if (sequenceColours != null)
     {
       sqc = (Color) sequenceColours.get(seq);
-      if (sqc == null) {
+      if (sqc == null)
+      {
         sqc = Color.white;
       }
     }
index a9c8787..2983851 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.viewmodel;
@@ -45,7 +47,7 @@ public class PCAModel
   AlignmentView seqstrings;
 
   SequenceI[] seqs;
-  
+
   /**
    * Score matrix used to calculate PC
    */
@@ -68,7 +70,8 @@ public class PCAModel
   public void run()
   {
 
-    pca = new PCA(seqstrings.getSequenceStrings(' '), nucleotide, score_matrix);
+    pca = new PCA(seqstrings.getSequenceStrings(' '), nucleotide,
+            score_matrix);
     pca.setJvCalcMode(jvCalcMode);
     pca.run();
 
@@ -239,5 +242,5 @@ public class PCAModel
   {
     this.score_matrix = score_matrix;
   }
-  
+
 }
index 6a2d6ee..24de71e 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.workers;
index 18bff53..a54fb83 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.workers;
index 735b97f..69bdd24 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.workers;
@@ -33,7 +35,7 @@ import java.util.Hashtable;
 public class ConsensusThread extends AlignCalcWorker implements
         AlignCalcWorkerI
 {
-  private long nseq=-1;
+  private long nseq = -1;
 
   public ConsensusThread(AlignViewportI alignViewport,
           AlignmentViewPanel alignPanel)
@@ -100,8 +102,8 @@ public class ConsensusThread extends AlignCalcWorker implements
       {
         SequenceI aseqs[] = alignment.getSequencesArray();
         nseq = aseqs.length;
-        AAFrequency.calculate(aseqs, 0,
-                alignment.getWidth(), hconsensus, true);
+        AAFrequency.calculate(aseqs, 0, alignment.getWidth(), hconsensus,
+                true);
       } catch (ArrayIndexOutOfBoundsException x)
       {
         // this happens due to a race condition -
index cae430f..7ed50d8 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.workers;
index 1fc6d01..72d26ff 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.workers;
@@ -42,7 +44,7 @@ public class StrucConsensusThread extends AlignCalcWorker implements
 
   Hashtable[] hStrucConsensus;
 
-  private long nseq=-1;
+  private long nseq = -1;
 
   @Override
   public void run()
@@ -111,11 +113,10 @@ public class StrucConsensusThread extends AlignCalcWorker implements
 
       try
       {
-        final SequenceI[] arr=
-                alignment.getSequencesArray();
+        final SequenceI[] arr = alignment.getSequencesArray();
         nseq = arr.length;
-        jalview.analysis.StructureFrequency.calculate(arr, 0, alignment.getWidth(),
-                hStrucConsensus, true, rnaStruc);
+        jalview.analysis.StructureFrequency.calculate(arr, 0,
+                alignment.getWidth(), hStrucConsensus, true, rnaStruc);
       } catch (ArrayIndexOutOfBoundsException x)
       {
         calcMan.workerComplete(this);
index 37d064d..edb56a9 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws;
@@ -27,6 +29,7 @@ import jalview.datamodel.SequenceI;
 import jalview.gui.AlignFrame;
 import jalview.gui.WebserviceInfo;
 import jalview.gui.FeatureRenderer.FeatureRendererSettings;
+import jalview.util.MessageManager;
 
 public abstract class AWSThread extends Thread
 {
@@ -121,8 +124,8 @@ public abstract class AWSThread extends Thread
           } catch (Exception ex)
           {
             // Deal with Transaction exceptions
-            wsInfo.appendProgressText(jobs[j].jobnum, "\n" + WebServiceName
-                    + " Server exception!\n" + ex.getMessage());
+            wsInfo.appendProgressText(jobs[j].jobnum, 
+                       MessageManager.formatMessage("info.server_exception", new String[]{WebServiceName,ex.getMessage()}));
             // always output the exception's stack trace to the log
             Cache.log.warn(WebServiceName + " job(" + jobs[j].jobnum
                     + ") Server exception.");
@@ -187,7 +190,7 @@ public abstract class AWSThread extends Thread
       Cache.log
               .debug("WebServiceJob poll loop finished with no jobs created.");
       wsInfo.setStatus(wsInfo.STATE_STOPPED_ERROR);
-      wsInfo.appendProgressText("No jobs ran.");
+      wsInfo.appendProgressText(MessageManager.getString("info.no_jobs_ran"));
       wsInfo.setFinishedNoResults();
     }
   }
index 91f9644..7362f22 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws;
index 7b06a71..f5789ea 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws;
@@ -79,9 +81,10 @@ public class DBRefFetcher implements Runnable
   private SequenceI[] alseqs;
 
   /**
-   * when true - retrieved sequences will be trimmed to cover longest derived alignment sequence 
+   * when true - retrieved sequences will be trimmed to cover longest derived
+   * alignment sequence
    */
-  private boolean trimDsSeqs=true;
+  private boolean trimDsSeqs = true;
 
   public DBRefFetcher()
   {
@@ -129,7 +132,8 @@ public class DBRefFetcher implements Runnable
     this.dataset = ds;
     // TODO Jalview 2.5 lots of this code should be in the gui package!
     sfetcher = jalview.gui.SequenceFetcher.getSequenceFetcherSingleton(af);
-    // set default behaviour for transferring excess sequence data to the dataset 
+    // set default behaviour for transferring excess sequence data to the
+    // dataset
     trimDsSeqs = Cache.getDefault("TRIM_FETCHED_DATASET_SEQS", true);
     if (sources == null)
     {
@@ -279,11 +283,11 @@ public class DBRefFetcher implements Runnable
   {
     if (dbSources == null)
     {
-      throw new Error("Implementation error. Must initialise dbSources");
+      throw new Error(MessageManager.getString("error.implementation_error_must_init_dbsources"));
     }
     running = true;
     long startTime = System.currentTimeMillis();
-    af.setProgressBar("Fetching db refs", startTime);
+    af.setProgressBar(MessageManager.getString("status.fetching_db_refs"), startTime);
     try
     {
       if (Cache.getDefault("DBREFFETCH_USEPICR", false))
@@ -379,7 +383,7 @@ public class DBRefFetcher implements Runnable
             if (retrieved != null)
             {
               transferReferences(sdataset, dbsource.getDbSource(),
-                      retrieved,trimDsSeqs);
+                      retrieved, trimDsSeqs);
             }
           }
           else
@@ -458,15 +462,20 @@ public class DBRefFetcher implements Runnable
     } // all databases have been queries.
     if (sbuffer.length() > 0)
     {
-      output.setText(MessageManager.getString("label.your_sequences_have_been_verified")
+      output.setText(MessageManager
+              .getString("label.your_sequences_have_been_verified")
               + sbuffer.toString());
-      Desktop.addInternalFrame(output, MessageManager.getString("label.sequence_names_updated"), 600, 300);
+      Desktop.addInternalFrame(output,
+              MessageManager.getString("label.sequence_names_updated"),
+              600, 300);
       // The above is the dataset, we must now find out the index
       // of the viewed sequence
 
     }
 
-    af.setProgressBar(MessageManager.getString("label.dbref_search_completed"), startTime);
+    af.setProgressBar(
+            MessageManager.getString("label.dbref_search_completed"),
+            startTime);
     // promptBeforeBlast();
 
     running = false;
@@ -476,14 +485,15 @@ public class DBRefFetcher implements Runnable
   /**
    * Verify local sequences in seqRefs against the retrieved sequence database
    * records.
-   * @param trimDatasetSeqs 
+   * 
+   * @param trimDatasetSeqs
    * 
    */
   void transferReferences(Vector sdataset, String dbSource,
           AlignmentI retrievedAl, boolean trimDatasetSeqs) // File
   // file)
   {
-    System.out.println("trimming ? "+trimDatasetSeqs);
+    System.out.println("trimming ? " + trimDatasetSeqs);
     if (retrievedAl == null || retrievedAl.getHeight() == 0)
     {
       return;
@@ -658,7 +668,8 @@ public class DBRefFetcher implements Runnable
         // unknownSequences.remove(sequence);
         int absEnd = absStart + nonGapped.length();
         absStart += 1;
-        if (!trimDatasetSeqs) {
+        if (!trimDatasetSeqs)
+        {
           // insert full length sequence from record
           sequence.setSequence(entry.getSequenceAsString());
           sequence.setStart(entry.getStart());
@@ -666,7 +677,8 @@ public class DBRefFetcher implements Runnable
         if (updateRefFrame)
         {
           // finally, update local sequence reference frame if we're allowed
-          if (trimDatasetSeqs) {
+          if (trimDatasetSeqs)
+          {
             // just fix start/end
             sequence.setStart(absStart);
             sequence.setEnd(absEnd);
index 08070db..8a7bcbc 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws;
@@ -25,6 +27,7 @@ import jalview.datamodel.SequenceI;
 import jalview.gui.AlignFrame;
 import jalview.gui.Desktop;
 import jalview.gui.FeatureSettings;
+import jalview.util.MessageManager;
 import jalview.util.UrlLink;
 import jalview.ws.dbsources.das.api.DasSourceRegistryI;
 import jalview.ws.dbsources.das.api.jalviewSourceI;
@@ -202,9 +205,8 @@ public class DasSequenceFeatureFetcher
         reply = JOptionPane
                 .showInternalConfirmDialog(
                         Desktop.desktop,
-                        "Do you want Jalview to find\n"
-                                + "Uniprot Accession ids for given sequence names?",
-                        "Find Uniprot Accession Ids",
+                        MessageManager.getString("info.you_want_jalview_to_find_uniprot_accessions"),
+                        MessageManager.getString("label.find_uniprot_accession_ids"),
                         JOptionPane.YES_NO_OPTION,
                         JOptionPane.QUESTION_MESSAGE);
       }
@@ -262,7 +264,7 @@ public class DasSequenceFeatureFetcher
     startTime = System.currentTimeMillis();
     if (af != null)
     {
-      af.setProgressBar("Fetching DAS Sequence Features", startTime);
+      af.setProgressBar(MessageManager.getString("status.fetching_das_sequence_features"), startTime);
     }
     if (sourceRegistry == null)
     {
@@ -535,7 +537,7 @@ public class DasSequenceFeatureFetcher
 
     if (af != null)
     {
-      af.setProgressBar("No DAS Sources Active", startTime);
+      af.setProgressBar(MessageManager.getString("status.no_das_sources_active"), startTime);
     }
     if (getFeatSettings() != null)
     {
@@ -565,7 +567,7 @@ public class DasSequenceFeatureFetcher
   {
     if (af != null)
     {
-      af.setProgressBar("DAS Feature Fetching Cancelled", startTime);
+      af.setProgressBar(MessageManager.getString("status.das_feature_fetching_cancelled"), startTime);
     }
     cancelled = true;
   }
@@ -580,7 +582,7 @@ public class DasSequenceFeatureFetcher
     if (!cancelled && af != null)
     {
       // only update the progress bar if we've completed the fetch normally
-      af.setProgressBar("DAS Feature Fetching Complete", startTime);
+      af.setProgressBar(MessageManager.getString("status.das_feature_fetching_complete"), startTime);
     }
 
     if (af != null && af.featureSettings != null)
index edc7fb7..693c888 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws;
@@ -26,6 +28,7 @@ import jalview.gui.AlignFrame;
 import jalview.gui.Desktop;
 import jalview.gui.JvSwingUtils;
 import jalview.util.GroupUrlLink;
+import jalview.util.MessageManager;
 import jalview.util.GroupUrlLink.UrlStringTooLongException;
 
 import java.awt.Component;
@@ -57,6 +60,7 @@ import com.lowagie.text.html.HtmlEncoder;
  * Lightweight runnable to discover dynamic 'one way' group URL services
  * 
  * as of Jalview 2.8.1 this class is mothballed and will be dropped in v3.
+ * 
  * @author JimP
  * @deprecated
  * 
@@ -331,12 +335,7 @@ public class EnfinEnvision2OneWay extends DefaultHandler implements
     {
       dbname = "";
     }
-    item.setToolTipText("<html>"
-            + JvSwingUtils.wrapTooltip("Submit " + i + " " + dbname + " "
-                    + (seqsorids ? "sequence" : "sequence id")
-                    + (i > 1 ? "s" : "")
-
-                    + " to<br/>" + descr) + "</html>");
+    item.setToolTipText(JvSwingUtils.wrapTooltip(true, MessageManager.formatMessage("label.submit_sequence", new String[]{Integer.valueOf(i).toString(), dbname, (seqsorids ? "sequence" : "sequence id"), (i > 1 ? "s" : "")})));
     item.addActionListener(new java.awt.event.ActionListener()
     {
       public void actionPerformed(ActionEvent e)
@@ -377,9 +376,8 @@ public class EnfinEnvision2OneWay extends DefaultHandler implements
       JOptionPane
               .showInternalMessageDialog(
                       Desktop.desktop,
-                      "Unixers: Couldn't find default web browser."
-                              + "\nAdd the full path to your browser in Preferences.",
-                      "Web browser not found", JOptionPane.WARNING_MESSAGE);
+                      MessageManager.getString("label.web_browser_not_found_unix"),
+                      MessageManager.getString("label.web_browser_not_found"), JOptionPane.WARNING_MESSAGE);
 
       ex.printStackTrace();
     }
@@ -438,7 +436,7 @@ public class EnfinEnvision2OneWay extends DefaultHandler implements
     // menu appears asap
     // sequence only URLs
     // ID/regex match URLs
-    JMenu groupLinksMenu = new JMenu("Group Link");
+    JMenu groupLinksMenu = new JMenu(MessageManager.getString("action.group_link"));
     String[][] idandseqs = GroupUrlLink.formStrings(seqs);
     Hashtable commonDbrefs = new Hashtable();
     for (int sq = 0; sq < seqs.length; sq++)
@@ -537,8 +535,8 @@ public class EnfinEnvision2OneWay extends DefaultHandler implements
         // three types of url that might be
         // created.
         wflinkMenus = new JMenu[]
-        { null, new JMenu("IDS"), new JMenu("Sequences"),
-            new JMenu("IDS and Sequences") };
+        { null, new JMenu(MessageManager.getString("action.ids")), new JMenu(MessageManager.getString("action.sequences")),
+            new JMenu(MessageManager.getString("action.ids_sequences")) };
         gurlMenus.put(label, wflinkMenus);
       }
 
diff --git a/src/jalview/ws/HttpClientUtils.java b/src/jalview/ws/HttpClientUtils.java
new file mode 100644 (file)
index 0000000..229fa4e
--- /dev/null
@@ -0,0 +1,151 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
+package jalview.ws;
+
+import java.io.BufferedReader;
+import java.io.File;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.util.List;
+
+import org.apache.http.HttpEntity;
+import org.apache.http.HttpResponse;
+import org.apache.http.NameValuePair;
+import org.apache.http.client.ClientProtocolException;
+import org.apache.http.client.HttpClient;
+import org.apache.http.client.entity.UrlEncodedFormEntity;
+import org.apache.http.client.methods.HttpPost;
+import org.apache.http.entity.mime.HttpMultipartMode;
+import org.apache.http.entity.mime.MultipartEntity;
+import org.apache.http.entity.mime.content.FileBody;
+import org.apache.http.entity.mime.content.InputStreamBody;
+import org.apache.http.entity.mime.content.StringBody;
+import org.apache.http.impl.client.DefaultHttpClient;
+
+/**
+ * Helpful procedures for working with services via HTTPClient
+ * 
+ * @author jimp
+ * 
+ */
+public class HttpClientUtils
+{
+  /**
+   * do a minimal HTTP post with URL-Encoded parameters passed in the Query
+   * string
+   * 
+   * @param postUrl
+   * @param vals
+   * @return Reader containing content, if any, or null if no entity returned.
+   * @throws IOException
+   * @throws ClientProtocolException
+   * @throws Exception
+   */
+  public static BufferedReader doHttpUrlPost(String postUrl,
+          List<NameValuePair> vals) throws ClientProtocolException,
+          IOException
+  {
+    HttpClient httpclient = new DefaultHttpClient();
+    HttpPost httppost = new HttpPost(postUrl);
+    UrlEncodedFormEntity ue = new UrlEncodedFormEntity(vals, "UTF-8");
+    httppost.setEntity(ue);
+    HttpResponse response = httpclient.execute(httppost);
+    HttpEntity resEntity = response.getEntity();
+
+    if (resEntity != null)
+    {
+      BufferedReader r = new BufferedReader(new InputStreamReader(
+              resEntity.getContent()));
+      return r;
+    }
+    else
+    {
+      return null;
+    }
+  }
+
+  public static BufferedReader doHttpMpartFilePost(String postUrl,
+          List<NameValuePair> vals, String fparm, File file, String mtype)
+          throws ClientProtocolException, IOException
+  {
+    HttpClient httpclient = new DefaultHttpClient();
+    HttpPost httppost = new HttpPost(postUrl);
+    MultipartEntity mpe = new MultipartEntity(
+            HttpMultipartMode.BROWSER_COMPATIBLE);
+    for (NameValuePair nvp : vals)
+    {
+      mpe.addPart(nvp.getName(), new StringBody(nvp.getValue()));
+    }
+
+    FileBody fb = new FileBody(file, mtype != null ? mtype
+            : "application/octet-stream");
+    mpe.addPart(fparm, fb);
+    UrlEncodedFormEntity ue = new UrlEncodedFormEntity(vals, "UTF-8");
+    httppost.setEntity(ue);
+    HttpResponse response = httpclient.execute(httppost);
+    HttpEntity resEntity = response.getEntity();
+
+    if (resEntity != null)
+    {
+      BufferedReader r = new BufferedReader(new InputStreamReader(
+              resEntity.getContent()));
+      return r;
+    }
+    else
+    {
+      return null;
+    }
+  }
+
+  public static BufferedReader doHttpMpartInputstreamPost(String postUrl,
+          List<NameValuePair> vals, String fparm, String fname,
+          InputStream is, String mtype) throws ClientProtocolException,
+          IOException
+  {
+    HttpClient httpclient = new DefaultHttpClient();
+    HttpPost httppost = new HttpPost(postUrl);
+    MultipartEntity mpe = new MultipartEntity(HttpMultipartMode.STRICT);
+    for (NameValuePair nvp : vals)
+    {
+      mpe.addPart(nvp.getName(), new StringBody(nvp.getValue()));
+    }
+
+    InputStreamBody fb = (mtype != null) ? new InputStreamBody(is, fname,
+            mtype) : new InputStreamBody(is, fname);
+    mpe.addPart(fparm, fb);
+    UrlEncodedFormEntity ue = new UrlEncodedFormEntity(vals, "UTF-8");
+    httppost.setEntity(ue);
+    HttpResponse response = httpclient.execute(httppost);
+    HttpEntity resEntity = response.getEntity();
+
+    if (resEntity != null)
+    {
+      BufferedReader r = new BufferedReader(new InputStreamReader(
+              resEntity.getContent()));
+      return r;
+    }
+    else
+    {
+      return null;
+    }
+  }
+}
index dd68f93..d0f6d7d 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws;
@@ -77,11 +79,11 @@ public class JobStateSummary
   {
     if (j.cancelled)
     {
-        cancelled++;
-        j.subjobComplete=true;
-        wsInfo.setStatus(j.jobnum, WebserviceInfo.STATE_CANCELLED_OK);
-        return;
-    } 
+      cancelled++;
+      j.subjobComplete = true;
+      wsInfo.setStatus(j.jobnum, WebserviceInfo.STATE_CANCELLED_OK);
+      return;
+    }
     if (j.submitted)
     {
       String progheader = "";
index ecaa57a..caf5b5e 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws;
@@ -50,6 +52,7 @@ public class SequenceFetcher extends ASequenceFetcher
   {
     this(true);
   }
+
   public SequenceFetcher(boolean addDas)
   {
     addDBRefSourceImpl(jalview.ws.dbsources.EmblSource.class);
@@ -64,7 +67,8 @@ public class SequenceFetcher extends ASequenceFetcher
     // PFAM
     addDBRefSourceImpl(jalview.ws.dbsources.RfamFull.class);
     addDBRefSourceImpl(jalview.ws.dbsources.RfamSeed.class);
-    if (addDas) {
+    if (addDas)
+    {
       registerDasSequenceSources();
     }
   }
@@ -222,13 +226,14 @@ public class SequenceFetcher extends ASequenceFetcher
             + "With one argument, the argument will be resolved to one or more db sources and each will be queried with their test accession only.\n"
             + "If given two arguments, SequenceFetcher will try to find the DbFetcher corresponding to <DBNAME> and retrieve <ACCNO> from it.\n"
             + "The -nodas option will exclude DAS sources from the database fetchers Jalview will try to use.";
-    boolean withDas=true;
-    if (argv!=null && argv.length>0 && argv[0].toLowerCase().startsWith("-nodas"))
+    boolean withDas = true;
+    if (argv != null && argv.length > 0
+            && argv[0].toLowerCase().startsWith("-nodas"))
     {
-      withDas=false;
-      String targs[] = new String[argv.length-1];
+      withDas = false;
+      String targs[] = new String[argv.length - 1];
       System.arraycopy(argv, 1, targs, 0, targs.length);
-      argv=targs;
+      argv = targs;
     }
     if (argv != null && argv.length > 0)
     {
@@ -242,11 +247,13 @@ public class SequenceFetcher extends ASequenceFetcher
           AlignmentI al = null;
           try
           {
-            al = sp.getSequenceRecords(argv.length>1 ? argv[1] : sp.getTestQuery());
+            al = sp.getSequenceRecords(argv.length > 1 ? argv[1] : sp
+                    .getTestQuery());
           } catch (Exception e)
           {
             e.printStackTrace();
-            System.err.println("Error when retrieving " + (argv.length>1 ? argv[1] : sp.getTestQuery())
+            System.err.println("Error when retrieving "
+                    + (argv.length > 1 ? argv[1] : sp.getTestQuery())
                     + " from " + argv[0] + "\nUsage: " + usage);
           }
           SequenceI[] prod = al.getSequencesArray();
index c41a2f7..34b3eb9 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws;
index e2aa3c7..051d306 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws;
index 0cfb238..49bc1e0 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws;
index 9e1a848..1672381 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.dbsources;
index a317fa4..a4423b3 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.dbsources;
index 5e54f1b..e5f0c62 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.dbsources;
index 89d9f05..ec5c62d 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.dbsources;
@@ -22,6 +24,7 @@ import jalview.datamodel.Alignment;
 import jalview.datamodel.AlignmentI;
 import jalview.datamodel.SequenceI;
 import jalview.datamodel.xdb.embl.EmblEntry;
+import jalview.util.MessageManager;
 import jalview.ws.ebi.EBIFetchClient;
 
 import java.io.File;
@@ -63,8 +66,7 @@ public abstract class EmblXmlSource extends EbiFileRetrievedProxy
     } catch (Exception e)
     {
       stopQuery();
-      throw new Exception("EBI EMBL XML retrieval failed on "
-              + emprefx.toLowerCase() + ":" + query.trim(), e);
+      throw new Exception(MessageManager.formatMessage("exception.ebiembl_retrieval_failed_on", new String[]{emprefx.toLowerCase(),query.trim()}), e);
     }
     return getEmblSequenceRecords(emprefx, query, reply);
   }
@@ -96,8 +98,7 @@ public abstract class EmblXmlSource extends EbiFileRetrievedProxy
       }
       else
       {
-        result.append("# No EMBL record retrieved for "
-                + emprefx.toLowerCase() + ":" + query.trim());
+        result.append(MessageManager.formatMessage("label.no_embl_record_found", new String[]{emprefx.toLowerCase(),query.trim()}));
       }
     }
     if (efile != null)
@@ -151,8 +152,7 @@ public abstract class EmblXmlSource extends EbiFileRetrievedProxy
     if (seqs != null && seqs.length > 0)
     {
       al = new Alignment(seqs);
-      result.append("# Successfully parsed the " + emprefx
-              + " queries into an Alignment");
+      result.append(MessageManager.formatMessage("label.embl_successfully_parsed", new String[]{emprefx}));
       results = result;
     }
     stopQuery();
index 77ff992..6fbc081 100644 (file)
@@ -1,24 +1,25 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.dbsources;
 
-
 import com.stevesoft.pat.Regex;
 
 import jalview.datamodel.AlignmentI;
@@ -119,6 +120,7 @@ public class GeneDbSource extends EmblXmlSource implements DbSourceProxy
   {
     return "GeneDB"; // getDbSource();
   }
+
   @Override
   public int getTier()
   {
index af8676f..f222aaa 100644 (file)
@@ -1,28 +1,34 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.dbsources;
 
 import jalview.datamodel.Alignment;
+import jalview.datamodel.AlignmentAnnotation;
 import jalview.datamodel.DBRefEntry;
 import jalview.datamodel.DBRefSource;
+import jalview.datamodel.PDBEntry;
 import jalview.datamodel.SequenceI;
 
+import java.util.ArrayList;
+import java.util.List;
 import java.util.Vector;
 
 import MCview.PDBChain;
@@ -31,6 +37,8 @@ import MCview.PDBfile;
 import com.stevesoft.pat.Regex;
 
 import jalview.datamodel.AlignmentI;
+import jalview.io.FormatAdapter;
+import jalview.util.MessageManager;
 import jalview.ws.ebi.EBIFetchClient;
 import jalview.ws.seqfetcher.DbSourceProxy;
 
@@ -94,7 +102,7 @@ public class Pdb extends EbiFileRetrievedProxy implements DbSourceProxy
    */
   public AlignmentI getSequenceRecords(String queries) throws Exception
   {
-
+    AlignmentI pdbfile = null;
     Vector result = new Vector();
     String chain = null;
     String id = null;
@@ -128,62 +136,85 @@ public class Pdb extends EbiFileRetrievedProxy implements DbSourceProxy
     try
     {
 
-      PDBfile pdbfile = new PDBfile(file,
-              jalview.io.AppletFormatAdapter.FILE);
-      for (int i = 0; i < pdbfile.chains.size(); i++)
+      pdbfile = new FormatAdapter().readFile(file,
+              jalview.io.AppletFormatAdapter.FILE, "PDB");
+      if (pdbfile != null)
       {
-        if (chain == null
-                || ((PDBChain) pdbfile.chains.elementAt(i)).id
-                        .toUpperCase().equals(chain))
+        List<SequenceI> toremove = new ArrayList<SequenceI>();
+        for (SequenceI pdbcs : pdbfile.getSequences())
+        {
+          String chid = null;
+          // Mapping map=null;
+          for (PDBEntry pid : (Vector<PDBEntry>) pdbcs.getPDBId())
+          {
+            if (pid.getFile() == file)
+            {
+              chid = (String) pid.getProperty().get("CHAIN");
+
+            }
+            ;
+
+          }
+          if (chain == null
+                  || (chid != null && (chid.equals(chain)
+                          || chid.trim().equals(chain.trim()) || (chain
+                          .trim().length() == 0 && chid.equals("_")))))
+          {
+            pdbcs.setName(jalview.datamodel.DBRefSource.PDB + "|" + id
+                    + "|" + pdbcs.getName());
+            // Might need to add more metadata to the PDBEntry object
+            // like below
+            /*
+             * PDBEntry entry = new PDBEntry(); // Construct the PDBEntry
+             * entry.setId(id); if (entry.getProperty() == null)
+             * entry.setProperty(new Hashtable());
+             * entry.getProperty().put("chains", pdbchain.id + "=" +
+             * sq.getStart() + "-" + sq.getEnd());
+             * sq.getDatasetSequence().addPDBId(entry);
+             */
+            // Add PDB DB Refs
+            // We make a DBRefEtntry because we have obtained the PDB file from
+            // a
+            // verifiable source
+            // JBPNote - PDB DBRefEntry should also carry the chain and mapping
+            // information
+            DBRefEntry dbentry = new DBRefEntry(getDbSource(),
+                    getDbVersion(), (chid == null ? id : id + chid));
+            // dbentry.setMap()
+            pdbcs.addDBRef(dbentry);
+          }
+          else
+          {
+            // mark this sequence to be removed from the alignment
+            // - since it's not from the right chain
+            toremove.add(pdbcs);
+          }
+        }
+        // now remove marked sequences
+        for (SequenceI pdbcs : toremove)
         {
-          PDBChain pdbchain = (PDBChain) pdbfile.chains.elementAt(i);
-          // Get the Chain's Sequence - who's dataset includes any special
-          // features added from the PDB file
-          SequenceI sq = pdbchain.sequence;
-          // Specially formatted name for the PDB chain sequences retrieved from
-          // the PDB
-          sq.setName(jalview.datamodel.DBRefSource.PDB + "|" + id + "|"
-                  + sq.getName());
-          // Might need to add more metadata to the PDBEntry object
-          // like below
-          /*
-           * PDBEntry entry = new PDBEntry(); // Construct the PDBEntry
-           * entry.setId(id); if (entry.getProperty() == null)
-           * entry.setProperty(new Hashtable());
-           * entry.getProperty().put("chains", pdbchain.id + "=" + sq.getStart()
-           * + "-" + sq.getEnd()); sq.getDatasetSequence().addPDBId(entry);
-           */
-          // Add PDB DB Refs
-          // We make a DBRefEtntry because we have obtained the PDB file from a
-          // verifiable source
-          // JBPNote - PDB DBRefEntry should also carry the chain and mapping
-          // information
-          DBRefEntry dbentry = new DBRefEntry(getDbSource(),
-                  getDbVersion(), id + pdbchain.id);
-          sq.addDBRef(dbentry);
-          // and add seuqence to the retrieved set
-          result.addElement(sq.deriveSequence());
+          pdbfile.deleteSequence(pdbcs);
+          if (pdbcs.getAnnotation()!=null)
+          {
+            for (AlignmentAnnotation aa: pdbcs.getAnnotation())
+            {
+              pdbfile.deleteAnnotation(aa);
+            }
+          }
         }
       }
 
-      if (result.size() < 1)
+      if (pdbfile == null || pdbfile.getHeight() < 1)
       {
-        throw new Exception("No PDB Records for " + id + " chain "
-                + ((chain == null) ? "' '" : chain));
+        throw new Exception(MessageManager.formatMessage("exception.no_pdb_records_for_chain", new String[]{id, ((chain == null) ? "' '" : chain)}));
       }
+
     } catch (Exception ex) // Problem parsing PDB file
     {
       stopQuery();
       throw (ex);
     }
-
-    SequenceI[] results = new SequenceI[result.size()];
-    for (int i = 0, j = result.size(); i < j; i++)
-    {
-      results[i] = (SequenceI) result.elementAt(i);
-      result.setElementAt(null, i);
-    }
-    return new Alignment(results);
+    return pdbfile;
   }
 
   /*
index 3f0ec11..489db1f 100644 (file)
@@ -1,24 +1,25 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.dbsources;
 
-
 import com.stevesoft.pat.Regex;
 
 import jalview.datamodel.AlignmentI;
index 162f1fa..9b4587e 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.dbsources;
@@ -66,7 +68,7 @@ public class PfamFull extends Pfam implements DbSourceProxy
     return null;
   }
 
-   @Override
+  @Override
   public int getTier()
   {
     return 0;
index 71667ed..bc12360 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.dbsources;
index f5d77ab..3a115f1 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.dbsources;
index 1eb3215..483114c 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.dbsources;
index 47ba60d..1896eb4 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.dbsources;
index 1deb272..359f2b1 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.dbsources;
index c45357c..2f65b12 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.dbsources;
index 756ca1b..d76bbb5 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.dbsources;
index 7bd5bca..622bf06 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.dbsources.das.api;
index d23a128..681faa4 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.dbsources.das.api;
@@ -77,6 +79,7 @@ public interface jalviewSourceI
 
   /**
    * test if the source is a reference source for the authority
+   * 
    * @return
    */
   boolean isReferenceSource();
index 980dc81..cb5705e 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.dbsources.das.datamodel;
@@ -37,6 +39,7 @@ import org.biodas.jdas.schema.sources.VERSION;
 
 import com.stevesoft.pat.Regex;
 
+import jalview.util.MessageManager;
 import jalview.ws.dbsources.das.api.jalviewSourceI;
 import jalview.ws.seqfetcher.*;
 import jalview.bin.Cache;
@@ -71,9 +74,10 @@ public class DasSequenceSource extends DbSourceProxyImpl implements
   protected MultipleConnectionPropertyProviderI connprops = null;
 
   /**
-   * DAS sources are tier 1 - if we have a direct DB connection then we should prefer it
+   * DAS sources are tier 1 - if we have a direct DB connection then we should
+   * prefer it
    */
-  private int tier=1;
+  private int tier = 1;
 
   /**
    * create a new DbSource proxy for a DAS 1 source
@@ -97,10 +101,9 @@ public class DasSequenceSource extends DbSourceProxyImpl implements
     if (!(jsrc = new JalviewSource(source, connprops, false))
             .isSequenceSource())
     {
-      throw new Exception("Source " + source.getTitle()
-              + " does not support the sequence command.");
+      throw new Exception(MessageManager.formatMessage("exception.das_source_doesnt_support_sequence_command", new String[]{source.getTitle()}));
     }
-    this.tier = 1+((jsrc.isLocal() || jsrc.isReferenceSource()) ? 0 : 1);
+    this.tier = 1 + ((jsrc.isLocal() || jsrc.isReferenceSource()) ? 0 : 1);
     this.source = source;
     this.dbname = dbname;
     this.dbrefname = dbrefname.toUpperCase();
index 04a1b60..08e14e8 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.dbsources.das.datamodel;
index b48616b..c994fd5 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.dbsources.das.datamodel;
@@ -35,6 +37,7 @@ import org.biodas.jdas.schema.sources.PROP;
 import org.biodas.jdas.schema.sources.SOURCE;
 import org.biodas.jdas.schema.sources.VERSION;
 
+import jalview.util.MessageManager;
 import jalview.ws.dbsources.das.api.jalviewSourceI;
 import jalview.ws.seqfetcher.DbSourceProxy;
 
@@ -344,7 +347,7 @@ public class JalviewSource implements jalviewSourceI
         int p = cap.getQueryUri().lastIndexOf(capname);
         if (p < -1)
         {
-          throw new Exception("Invalid das source: " + source.getUri());
+          throw new Exception(MessageManager.formatMessage("exception.invalid_das_source", new String[]{source.getUri()}));
         }
         if (cap.getQueryUri().charAt(p) == '/')
         {
@@ -371,7 +374,8 @@ public class JalviewSource implements jalviewSourceI
   @Override
   public boolean isReferenceSource()
   {
-    // TODO check source object for indication that we are the primary for a DAS coordinate system
+    // TODO check source object for indication that we are the primary for a DAS
+    // coordinate system
     return false;
   }
 }
index 074b76c..fe9e28f 100644 (file)
@@ -1,23 +1,27 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.ebi;
 
+import jalview.util.MessageManager;
+
 import java.io.BufferedInputStream;
 import java.io.BufferedReader;
 import java.io.File;
@@ -54,7 +58,7 @@ public class EBIFetchClient
   public String[] getSupportedDBs()
   {
     // TODO - implement rest call for dbfetch getSupportedDBs
-    throw new Error("Not yet implemented");
+    throw new Error(MessageManager.getString("error.not_yet_implemented"));
   }
 
   /**
@@ -65,7 +69,7 @@ public class EBIFetchClient
   public String[] getSupportedFormats()
   {
     // TODO - implement rest call for dbfetch getSupportedFormats
-    throw new Error("Not yet implemented");
+    throw new Error(MessageManager.getString("error.not_yet_implemented"));
   }
 
   /**
@@ -76,7 +80,7 @@ public class EBIFetchClient
   public String[] getSupportedStyles()
   {
     // TODO - implement rest call for dbfetch getSupportedStyles
-    throw new Error("Not yet implemented");
+    throw new Error(MessageManager.getString("error.not_yet_implemented"));
   }
 
   public File fetchDataAsFile(String ids, String f, String s)
@@ -219,10 +223,9 @@ public class EBIFetchClient
       return null;
     } finally
     {
-      //System.err.println("Took " + (System.currentTimeMillis() - time)
-      //        / 1000 + " secs for one call.");
+      // System.err.println("Took " + (System.currentTimeMillis() - time)
+      // / 1000 + " secs for one call.");
     }
     return null;
   }
 }
-
index 72c858a..4b53cf6 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.io.mime;
index 1b5965c..3675a7f 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.io.mime;
index 6c12b02..40248cf 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.io.mime;
diff --git a/src/jalview/ws/jws1/Annotate3D.java b/src/jalview/ws/jws1/Annotate3D.java
new file mode 100644 (file)
index 0000000..4502b39
--- /dev/null
@@ -0,0 +1,281 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
+package jalview.ws.jws1;
+
+import jalview.datamodel.Alignment;
+import jalview.datamodel.AlignmentI;
+import jalview.io.FileParse;
+import jalview.io.FormatAdapter;
+import jalview.io.InputStreamParser;
+import jalview.util.MessageManager;
+
+import java.io.BufferedReader;
+import java.io.FileReader;
+import java.io.IOException;
+import java.io.InputStreamReader;
+import java.io.Reader;
+import java.net.MalformedURLException;
+import java.net.URL;
+import java.net.URLEncoder;
+import java.util.Iterator;
+
+public class Annotate3D
+{
+  // protected BufferedReader in;
+  // protected BufferedWriter out;
+
+  public Annotate3D()
+  {
+    System.out.println("Annotate3D");
+    // try {
+    // Create a URL for the desired page
+    // String id = "1HR2";
+    // URL url = new
+    // URL("http://paradise-ibmc.u-strasbg.fr/webservices/annotate3d?pdbid="+id);
+    // in = new BufferedReader(new InputStreamReader(url.openStream()));
+    // String str;
+    // OutputStream out1 = null;
+    // out = new BufferedWriter(new OutputStreamWriter(out1, "temp.rnaml"));
+    // while ((str = in.readLine()) != null) {
+    // System.out.println(str);
+    // out.write(str);
+    // }
+    // in.close();
+    // out.close();
+    // } catch (MalformedURLException e) {
+    // } catch (IOException e) {
+    // }
+  }
+
+  public AlignmentI getRNAMLFor(final FileParse source) throws IOException
+  {
+    try
+    {
+      StringBuffer sb = new StringBuffer();
+
+      Reader fpr = source.getReader();
+      int p = 0;
+      char[] cbuff = new char[2048];
+      while ((p = fpr.read(cbuff)) > 0)
+      {
+        for (int i = 0; i < p; i++)
+        {
+          sb.append(cbuff[i]);
+        }
+      }
+      Iterator<Reader> r = jalview.ext.paradise.Annotate3D
+              .getRNAMLForPDBFileAsString(sb.toString());
+      AlignmentI al = null;
+      while (r.hasNext())
+      {
+        FileParse fp = new InputStreamParser(r.next(), source.getDataName());
+        AlignmentI nal = new FormatAdapter().readFromFile(fp, "RNAML");
+        if (al == null)
+        {
+          al = nal;
+        }
+        else
+        {
+          al.append(nal);
+        }
+      }
+      return al;
+    } catch (Throwable x)
+    {
+      if (x instanceof IOException)
+      {
+        throw ((IOException) x);
+      }
+      else
+      {
+        throw new IOException(MessageManager.getString("exception.unexpected_handling_rnaml_translation_for_pdb"),
+                x);
+      }
+    }
+  }
+
+  public Annotate3D(String path) throws InterruptedException
+  {
+    System.out.println("Annotate3D");
+    try
+    {
+      // //URL url = new
+      // URL("http://paradise-ibmc.u-strasbg.fr/webservices/annotate3d?data="+inFile);
+      // System.out.println("Step1");
+      // FileReader r = new FileReader(inFile);
+      // BufferedReader in = new BufferedReader(r);
+      // StringBuffer content = new StringBuffer();
+      // System.out.println("Step2");
+      // while(in.readLine()!=null){
+      // content.append(in.readLine());
+      // //System.out.println("Step3"+in.readLine());
+      // }
+      //
+      // String data = URLEncoder.encode("data", "UTF-8") + "=" +
+      // URLEncoder.encode(content.toString(), "UTF-8");
+      // for (int i=0;i<data.length();i++)
+      // {
+      // System.out.print(data.charAt(i));
+      // }
+
+      // String data = "width=50&height=100";
+
+      // // Send the request
+      // FileReader r = new FileReader(path);
+      // BufferedReader in = new BufferedReader(r);
+      // StringBuffer content = new StringBuffer();
+      // System.out.println("Step1");
+      // while(in.readLine()!=null){
+      // content.append(in.readLine());
+      //
+      // }
+      // System.out.println("Step2");
+      // String data = URLEncoder.encode("data", "UTF-8") + "=" +
+      // URLEncoder.encode(content.toString(), "UTF-8");
+      // System.out.println("Step2");
+      // URL url = new
+      // URL("http://paradise-ibmc.u-strasbg.fr/webservices/annotate3d?data="+data);
+      // DataInputStream is = new DataInputStream(url.openStream());
+      // String str;
+      // while ((str = is.readLine()) != null) {
+      // System.out.println(str);
+      // //out.write(str);
+      // }
+      FileReader r = new FileReader(path);
+      BufferedReader in = new BufferedReader(r);
+      String content = "";
+      String str;
+
+      while ((str = in.readLine()) != null)
+      {
+        // System.out.println(str);
+
+        content = content + str;
+      }
+      System.out.println("pdbfile=" + content.toString());
+      System.out.println("capacité=" + content.length());
+      String paramfile = URLEncoder.encode(content.toString(), "UTF-8");
+      System.out.println("param=" + paramfile);
+      URL url = new URL(
+              "http://paradise-ibmc.u-strasbg.fr/webservices/annotate3d?data="
+                      + content);
+      BufferedReader is = new BufferedReader(new InputStreamReader(
+              url.openStream()));
+      String str4;
+      while ((str4 = is.readLine()) != null)
+      {
+        System.out.println(str4);
+        // out.write(str);
+      }
+      in.close();
+      is.close();
+
+      // HttpURLConnection connection = (HttpURLConnection)url.openConnection();
+      // connection.setRequestMethod("POST" );
+      // connection.setRequestProperty("data", path );
+      // //connection.setRequestProperty("nomDuChamp2", "valeurDuChamp2" );
+      // BufferedReader input = new BufferedReader(new
+      // InputStreamReader(connection.getInputStream()));
+      // //DataInputStream input = new
+      // DataInputStream(connection.getInputStream());
+      // String c;
+      // while((c=input.readLine())!=null){
+      // System.out.print(c);
+      // }
+      // input.close();
+      // BufferedReader in1 = new BufferedReader(is);
+
+      // OutputStream out1 = null;
+      // System.out.println("Step3");
+      // BufferedWriter out = new BufferedWriter(new OutputStreamWriter(out1,
+      // "temp.rnaml"));
+      //
+      // in.close();
+      // out.close();
+
+      // return;
+
+      // System.out.println(data.length());
+      // System.out.println("step2");
+      // URL url = new
+      // URL("http://paradise-ibmc.u-strasbg.fr/webservices/annotate3d?data="+data);
+      // System.out.println("step3");
+      // URLConnection conn = url.openConnection();
+      // conn.setDoOutput(true);
+      // OutputStreamWriter writer = new
+      // OutputStreamWriter(conn.getOutputStream());
+
+      // write parameters
+      // writer.write(data);
+      // writer.flush();
+
+      // Get the response
+      // StringBuffer answer = new StringBuffer();
+      // //BufferedReader reader = new BufferedReader(new
+      // InputStreamReader(conn.getInputStream()));
+      // //String line;
+      // while ((line = reader.readLine()) != null) {
+      // answer.append(line);
+      // System.out.println(line);
+      // }
+      // writer.close();
+      // reader.close();
+
+      // Output the response
+
+    } catch (MalformedURLException ex)
+    {
+      ex.printStackTrace();
+    } catch (IOException ex)
+    {
+      ex.printStackTrace();
+    }
+  }
+
+  // in = new BufferedReader(new InputStreamReader(url.openStream()));
+
+  // String str;
+
+  // out = new FileOutputStream("temp.rnaml");
+  // out = new BufferedWriter(new FileWriter("temp.rnaml"));
+
+  // while ((str = in.readLine()) != null) {
+  // System.out.println(str);
+  // out.write(str);
+  // System.out.println(str);
+  // in.close();
+
+  // out.close();
+  // } catch (MalformedURLException e) {
+  // } catch (IOException e) {
+  // }
+  //
+  // }
+
+  // public BufferedWriter getReader()
+  // {
+  // System.out.println("The buffer");
+
+  // return out;
+
+  // }
+
+}
index 48ee9af..629b3d6 100644 (file)
@@ -1,23 +1,27 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.jws1;
 
+import jalview.util.MessageManager;
+
 import java.util.*;
 
 import javax.swing.*;
@@ -190,21 +194,21 @@ public class Discoverer implements Runnable
                     "Edgar, Robert C. (2004), MUSCLE: multiple sequence alignment "
                             + "with high accuracy and high throughput, Nucleic Acids Research 32(5), 1792-97.",
                     "http://www.compbio.dundee.ac.uk/JalviewWS/services/MuscleWS",
-                    "Muscle Multiple Protein Sequence Alignment"),
+                    MessageManager.getString("label.muscle_multiple_protein_sequence_alignment")),
             new ServiceHandle(
                     "MsaWS",
                     "Katoh, K., K. Kuma, K., Toh, H.,  and Miyata, T. (2005) "
                             + "\"MAFFT version 5: improvement in accuracy of multiple sequence alignment.\""
                             + " Nucleic Acids Research, 33 511-518",
                     "http://www.compbio.dundee.ac.uk/JalviewWS/services/MafftWS",
-                    "MAFFT Multiple Sequence Alignment"),
+                    MessageManager.getString("label.mafft_multiple_sequence_alignment")),
             new ServiceHandle(
                     "MsaWS",
                     "Thompson, J.D., Higgins, D.G. and Gibson, T.J. (1994) CLUSTAL W: improving the sensitivity of progressive multiple"
                             + " sequence alignment through sequence weighting, position specific gap penalties and weight matrix choice."
                             + " Nucleic Acids Research, 22 4673-4680",
                     "http://www.compbio.dundee.ac.uk/JalviewWS/services/ClustalWS",
-                    "ClustalW Multiple Sequence Alignment"),
+                    MessageManager.getString("label.clustalw_multiple_sequence_alignment")),
             new ServiceHandle(
                     "SecStrPred",
                     "Cole C., Barber J. D., Barton G.J (2008) "
@@ -246,8 +250,8 @@ public class Discoverer implements Runnable
           JOptionPane
                   .showMessageDialog(
                           jalview.gui.Desktop.desktop,
-                          "Please set up your proxy settings in the 'Connections' tab of the Preferences window",
-                          "Proxy Authorization Failed",
+                          MessageManager.getString("label.set_proxy_settings"),
+                          MessageManager.getString("label.proxy_authorization_failed"),
                           JOptionPane.WARNING_MESSAGE);
         }
       }
index 4358fac..1a96464 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.jws1;
@@ -29,6 +31,7 @@ import jalview.analysis.*;
 import jalview.bin.*;
 import jalview.datamodel.*;
 import jalview.gui.*;
+import jalview.util.MessageManager;
 
 public class JPredClient extends WS1Client
 {
@@ -141,8 +144,7 @@ public class JPredClient extends WS1Client
     {
       if (!msa && msf.length > 1)
       {
-        throw new Error(
-                "Implementation Error! Multiple single sequence prediction jobs are not yet supported.");
+        throw new Error(MessageManager.getString("error.implementation_error_multiple_single_sequence_prediction_jobs_not_supported"));
       }
 
       String altitle = getPredictionName(WebServiceName) + " for "
@@ -282,7 +284,7 @@ public class JPredClient extends WS1Client
   private WebserviceInfo setWebService()
   {
     WebServiceName = "JNetWS";
-    WebServiceJobTitle = "JNet secondary structure prediction";
+    WebServiceJobTitle = MessageManager.getString("label.jnet_secondary_structure_prediction");
     WebServiceReference = "\"Cuff J. A and Barton G.J (2000) Application of "
             + "multiple sequence alignment profiles to improve protein secondary structure prediction, "
             + "Proteins 40:502-511\".";
@@ -309,12 +311,11 @@ public class JPredClient extends WS1Client
     } catch (Exception ex)
     {
       JOptionPane.showMessageDialog(Desktop.desktop,
-              "The Secondary Structure Prediction Service named "
-                      + WebServiceName + " at " + WsURL
-                      + " couldn't be located.", "Internal Jalview Error",
+                 MessageManager.formatMessage("label.secondary_structure_prediction_service_couldnt_be_located", new String[]{WebServiceName,WsURL}),
+                 MessageManager.getString("label.internal_jalview_error"),
               JOptionPane.WARNING_MESSAGE);
-      wsInfo.setProgressText("Serious! " + WebServiceName
-              + " Service location failed\nfor URL :" + WsURL + "\n"
+      wsInfo.setProgressText(MessageManager.formatMessage("label.secondary_structure_prediction_service_couldnt_be_located", new String[]{WebServiceName,WsURL})
+                 + "\n"
               + ex.getMessage());
       wsInfo.setStatus(WebserviceInfo.STATE_STOPPED_SERVERERROR);
 
index 509e020..85969fc 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.jws1;
@@ -138,8 +140,7 @@ class JPredThread extends JWS1Thread implements WSClientI
             if (!jalview.analysis.SeqsetUtils.deuniquify(
                     (Hashtable) SequenceInfo, sqs))
             {
-              throw (new Exception(
-                      "Couldn't recover sequence properties for alignment."));
+              throw (new Exception(MessageManager.getString("exception.couldnt_recover_sequence_properties_for_alignment")));
             }
           }
           FirstSeq = 0;
@@ -151,8 +152,7 @@ class JPredThread extends JWS1Thread implements WSClientI
         }
         else
         {
-          throw (new Exception("Unknown format " + format
-                  + " for file : \n" + result.getAligfile()));
+          throw (new Exception(MessageManager.formatMessage("exception.unknown_format_for_file", new String[]{format,result.getAligfile()})));
         }
       }
       else
@@ -166,14 +166,13 @@ class JPredThread extends JWS1Thread implements WSClientI
                   .getAlignmentAndColumnSelection(gc))[0];
           if (this.msaIndex >= sqs.length)
           {
-            throw new Error(
-                    "Implementation Error! Invalid msaIndex for JPredJob on parent MSA input object!");
+            throw new Error(MessageManager.getString("error.implementation_error_invalid_msa_index_for_job"));
           }
 
           // ///
           // Uses RemoveGapsCommand
           // ///
-          new jalview.commands.RemoveGapsCommand("Remove Gaps",
+          new jalview.commands.RemoveGapsCommand(MessageManager.getString("label.remove_gaps"),
                   new SequenceI[]
                   { sqs[msaIndex] }, currentView);
 
@@ -184,8 +183,7 @@ class JPredThread extends JWS1Thread implements WSClientI
         if (!jalview.analysis.SeqsetUtils.SeqCharacterUnhash(
                 al.getSequenceAt(FirstSeq), SequenceInfo))
         {
-          throw (new Exception(
-                  "Couldn't recover sequence properties for JNet Query sequence!"));
+          throw (new Exception(MessageManager.getString("exception.couldnt_recover_sequence_props_for_jnet_query")));
         }
         else
         {
@@ -355,9 +353,7 @@ class JPredThread extends JWS1Thread implements WSClientI
   {
     if (!(j instanceof JPredJob))
     {
-      throw new Error(
-              "Implementation error - StartJob(JpredJob) called on "
-                      + j.getClass());
+      throw new Error(MessageManager.formatMessage("error.implementation_error_startjob_called", new String[]{j.getClass().toString()}));
     }
     try
     {
@@ -378,7 +374,7 @@ class JPredThread extends JWS1Thread implements WSClientI
         {
           job.result = (vamsas.objects.simple.Result) new JpredResult();
           job.result.setInvalid(true);
-          job.result.setStatus("Submission " + job.getJobId());
+          job.result.setStatus(MessageManager.formatMessage("label.submission_params", new String[]{job.getJobId().toString()}));
           throw new Exception(job.getJobId());
         }
         else
@@ -390,7 +386,7 @@ class JPredThread extends JWS1Thread implements WSClientI
       }
       else
       {
-        throw new Exception("Server timed out - try again later\n");
+        throw new Exception(MessageManager.getString("exception.server_timeout_try_later"));
       }
     } catch (Exception e)
     {
@@ -414,9 +410,7 @@ class JPredThread extends JWS1Thread implements WSClientI
       {
         wsInfo.setStatus(j.getJobnum(), WebserviceInfo.STATE_STOPPED_ERROR);
         // JBPNote - this could be a popup informing the user of the problem.
-        wsInfo.appendProgressText(j.getJobnum(),
-                "Failed to submit the prediction:\n" + e.getMessage()
-                        + wsInfo.getProgressText());
+        wsInfo.appendProgressText(j.getJobnum(), MessageManager.formatMessage("info.failed_to_submit_prediction", new String[]{e.getMessage(),wsInfo.getProgressText()}));
 
         jalview.bin.Cache.log.debug(
                 "Failed Submission of job " + j.getJobnum(), e);
@@ -506,8 +500,7 @@ class JPredThread extends JWS1Thread implements WSClientI
             else
             {
               // do merge with other job results
-              throw new Error(
-                      "Multiple JNet subjob merging not yet implemented.");
+              throw new Error(MessageManager.getString("error.multiple_jnet_subjob_merge_not_implemented"));
             }
           } catch (Exception e)
           {
@@ -515,9 +508,7 @@ class JPredThread extends JWS1Thread implements WSClientI
                     "JNet Client: JPred Annotation Parse Error", e);
             wsInfo.setStatus(j.getJobnum(),
                     WebserviceInfo.STATE_STOPPED_ERROR);
-            wsInfo.appendProgressText(j.getJobnum(), OutputHeader + "\n"
-                    + j.result.getStatus()
-                    + "\nInvalid JNet job result data!\n" + e.getMessage());
+            wsInfo.appendProgressText(j.getJobnum(), MessageManager.formatMessage("info.invalid_jnet_job_result_data", new String[]{OutputHeader.toString(),j.result.getStatus(), e.getMessage() }));
             j.result.setBroken(true);
           }
         }
@@ -585,7 +576,7 @@ class JPredThread extends JWS1Thread implements WSClientI
 
   public void cancelJob()
   {
-    throw new Error("Implementation error!");
+    throw new Error(MessageManager.getString("error.implementation_error"));
   }
 
   public boolean canMergeResults()
index 4be4f83..161a022 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.jws1;
index 270b95c..5d84286 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.jws1;
@@ -26,6 +28,7 @@ import javax.swing.*;
 import ext.vamsas.*;
 import jalview.datamodel.*;
 import jalview.gui.*;
+import jalview.util.MessageManager;
 
 /**
  * DOCUMENT ME!
@@ -70,10 +73,8 @@ public class MsaWSClient extends WS1Client
       JOptionPane
               .showMessageDialog(
                       Desktop.desktop,
-                      "The Service called \n"
-                              + sh.getName()
-                              + "\nis not a \nMultiple Sequence Alignment Service !",
-                      "Internal Jalview Error", JOptionPane.WARNING_MESSAGE);
+                      MessageManager.formatMessage("label.service_called_is_not_msa_service", new String[]{sh.getName()}),
+                      MessageManager.getString("label.internal_jalview_error"), JOptionPane.WARNING_MESSAGE);
 
       return;
     }
@@ -82,9 +83,8 @@ public class MsaWSClient extends WS1Client
     {
       JOptionPane.showMessageDialog(
               Desktop.desktop,
-              "The Multiple Sequence Alignment Service named "
-                      + sh.getName() + " is unknown",
-              "Internal Jalview Error", JOptionPane.WARNING_MESSAGE);
+              MessageManager.formatMessage("label.msa_service_is_unknown", new String[]{sh.getName()}),
+              MessageManager.getString("label.internal_jalview_error"), JOptionPane.WARNING_MESSAGE);
 
       return;
     }
index 168a808..a6ba751 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.jws1;
@@ -24,6 +26,7 @@ import jalview.analysis.*;
 import jalview.bin.*;
 import jalview.datamodel.*;
 import jalview.gui.*;
+import jalview.util.MessageManager;
 import jalview.ws.AWsJob;
 import jalview.ws.JobStateSummary;
 import jalview.ws.WSClientI;
@@ -61,7 +64,7 @@ class MsaWSThread extends JWS1Thread implements WSClientI
         subjobComplete = true;
         result = new MsaResult();
         result.setFinished(true);
-        result.setStatus("Job never ran - input returned to user.");
+        result.setStatus(MessageManager.getString("label.job_never_ran"));
       }
 
     }
@@ -84,8 +87,7 @@ class MsaWSThread extends JWS1Thread implements WSClientI
       int nseqs = 0;
       if (minlen < 0)
       {
-        throw new Error(
-                "Implementation error: minlen must be zero or more.");
+        throw new Error(MessageManager.getString("error.implementation_error_minlen_must_be_greater_zero"));
       }
       for (int i = 0; i < seqs.length; i++)
       {
@@ -429,8 +431,7 @@ class MsaWSThread extends JWS1Thread implements WSClientI
   {
     if (!(job instanceof MsaWSJob))
     {
-      throw new Error("StartJob(MsaWSJob) called on a WSJobInstance "
-              + job.getClass());
+      throw new Error(MessageManager.formatMessage("error.implementation_error_msawbjob_called", new String[]{job.getClass().toString()}));
     }
     MsaWSJob j = (MsaWSJob) job;
     if (j.isSubmitted())
@@ -448,7 +449,7 @@ class MsaWSThread extends JWS1Thread implements WSClientI
       j.setSubmitted(true);
       j.result = new MsaResult();
       j.result.setFinished(true);
-      j.result.setStatus("Empty Alignment Job");
+      j.result.setStatus(MessageManager.getString("label.empty_alignment_job"));
       ((MsaResult) j.result).setMsa(null);
     }
     try
@@ -466,10 +467,7 @@ class MsaWSThread extends JWS1Thread implements WSClientI
       {
         if (jobsubmit == null)
         {
-          throw new Exception(
-                  "Server at "
-                          + WsUrl
-                          + " returned null object, it probably cannot be contacted. Try again later ?");
+          throw new Exception(MessageManager.formatMessage("exception.web_service_returned_null_try_later", new String[]{WsUrl}));
         }
 
         throw new Exception(jobsubmit.getJobId());
@@ -489,9 +487,7 @@ class MsaWSThread extends JWS1Thread implements WSClientI
               WebserviceInfo.STATE_STOPPED_SERVERERROR);
       wsInfo.appendProgressText(
               j.getJobnum(),
-              "Failed to submit sequences for alignment.\n"
-                      + "It is most likely that there is a problem with the server.\n"
-                      + "Just close the window\n");
+              MessageManager.getString("info.failed_to_submit_sequences_for_alignment"));
 
       // e.printStackTrace(); // TODO: JBPNote DEBUG
     }
@@ -537,7 +533,7 @@ class MsaWSThread extends JWS1Thread implements WSClientI
           if (valign != null)
           {
             wsInfo.appendProgressText(jobs[j].getJobnum(),
-                    "\nAlignment Object Method Notes\n");
+                    MessageManager.getString("info.alignment_object_method_notes"));
             String[] lines = valign.getMethod();
             for (int line = 0; line < lines.length; line++)
             {
index 7d3976d..c1935b4 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.jws1;
@@ -31,6 +33,7 @@ import javax.swing.*;
 import ext.vamsas.*;
 import jalview.datamodel.*;
 import jalview.gui.*;
+import jalview.util.MessageManager;
 
 /**
  * DOCUMENT ME!
@@ -74,9 +77,8 @@ public class SeqSearchWSClient extends WS1Client
     if (!sh.getAbstractName().equals(this.getServiceActionKey()))
     {
       JOptionPane.showMessageDialog(Desktop.desktop,
-              "The Service called \n" + sh.getName()
-                      + "\nis not a \nSequence Search Service !",
-              "Internal Jalview Error", JOptionPane.WARNING_MESSAGE);
+                 MessageManager.formatMessage("label.service_called_is_not_seq_search_service", new String[]{sh.getName()}),
+              MessageManager.getString("label.internal_jalview_error"), JOptionPane.WARNING_MESSAGE);
 
       return;
     }
@@ -84,8 +86,8 @@ public class SeqSearchWSClient extends WS1Client
     if ((wsInfo = setWebService(sh)) == null)
     {
       JOptionPane.showMessageDialog(Desktop.desktop,
-              "The Sequence Search Service named " + sh.getName()
-                      + " is unknown", "Internal Jalview Error",
+                 MessageManager.formatMessage("label.seq_search_service_is_unknown", new String[]{sh.getName()}),
+              MessageManager.getString("label.internal_jalview_error"),
               JOptionPane.WARNING_MESSAGE);
 
       return;
@@ -206,7 +208,7 @@ public class SeqSearchWSClient extends WS1Client
     }
     if (!locateWebService())
     {
-      throw new Exception("Cannot contact service endpoint at " + WsURL);
+      throw new Exception(MessageManager.formatMessage("exception.cannot_contact_service_endpoint_at", new String[]{WsURL}));
     }
     String database = server.getDatabase();
     if (database == null)
index 108a586..7c2ea49 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.jws1;
@@ -25,6 +27,7 @@ import jalview.bin.*;
 import jalview.datamodel.*;
 import jalview.gui.*;
 import jalview.io.NewickFile;
+import jalview.util.MessageManager;
 import jalview.ws.AWsJob;
 import jalview.ws.JobStateSummary;
 import jalview.ws.WSClientI;
@@ -59,7 +62,7 @@ class SeqSearchWSThread extends JWS1Thread implements WSClientI
         subjobComplete = true;
         result = new MsaResult();
         result.setFinished(true);
-        result.setStatus("Job never ran - input returned to user.");
+        result.setStatus(MessageManager.getString("label.job_never_ran"));
       }
 
     }
@@ -82,8 +85,7 @@ class SeqSearchWSThread extends JWS1Thread implements WSClientI
       int nseqs = 0;
       if (minlen < 0)
       {
-        throw new Error(
-                "Implementation error: minlen must be zero or more.");
+          throw new Error(MessageManager.getString("error.implementation_error_minlen_must_be_greater_zero"));
       }
       for (int i = 0; i < seqs.length; i++)
       {
@@ -444,8 +446,7 @@ class SeqSearchWSThread extends JWS1Thread implements WSClientI
   {
     if (!(job instanceof SeqSearchWSJob))
     {
-      throw new Error("StartJob(MsaWSJob) called on a WSJobInstance "
-              + job.getClass());
+        throw new Error(MessageManager.formatMessage("error.implementation_error_msawbjob_called", new String[]{job.getClass().toString()}));
     }
     SeqSearchWSJob j = (SeqSearchWSJob) job;
     if (j.isSubmitted())
@@ -463,7 +464,7 @@ class SeqSearchWSThread extends JWS1Thread implements WSClientI
       j.setSubmitted(true);
       j.result = new MsaResult();
       j.result.setFinished(true);
-      j.result.setStatus("Empty Alignment Job");
+      j.result.setStatus(MessageManager.getString("label.empty_alignment_job"));
       ((MsaResult) j.result).setMsa(null);
     }
     try
@@ -482,10 +483,7 @@ class SeqSearchWSThread extends JWS1Thread implements WSClientI
       {
         if (jobsubmit == null)
         {
-          throw new Exception(
-                  "Server at "
-                          + WsUrl
-                          + " returned null object, it probably cannot be contacted. Try again later ?");
+          throw new Exception(MessageManager.formatMessage("exception.web_service_returned_null_try_later", new String[]{WsUrl}));
         }
 
         throw new Exception(jobsubmit.getJobId());
@@ -505,9 +503,7 @@ class SeqSearchWSThread extends JWS1Thread implements WSClientI
               WebserviceInfo.STATE_STOPPED_SERVERERROR);
       wsInfo.appendProgressText(
               j.getJobnum(),
-              "Failed to submit sequences for alignment.\n"
-                      + "It is most likely that there is a problem with the server.\n"
-                      + "Just close the window\n");
+              MessageManager.getString("info.failed_to_submit_sequences_for_alignment"));
 
       // e.printStackTrace(); // TODO: JBPNote DEBUG
     }
@@ -546,7 +542,7 @@ class SeqSearchWSThread extends JWS1Thread implements WSClientI
           if (valign != null)
           {
             wsInfo.appendProgressText(jobs[j].getJobnum(),
-                    "\nAlignment Object Method Notes\n");
+                    MessageManager.getString("info.alignment_object_method_notes"));
             String[] lines = valign.getMethod();
             for (int line = 0; line < lines.length; line++)
             {
@@ -646,7 +642,7 @@ class SeqSearchWSThread extends JWS1Thread implements WSClientI
               AlignFrame.DEFAULT_WIDTH, AlignFrame.DEFAULT_HEIGHT);
       if (nf != null)
       {
-        af.ShowNewickTree(nf, "Tree from " + this.alTitle);
+        af.ShowNewickTree(nf, MessageManager.formatMessage("label.tree_from", new String[]{this.alTitle}));
       }
       // initialise with same renderer settings as in parent alignframe.
       af.getFeatureRenderer().transferSettings(this.featureSettings);
index 11e299a..210e520 100644 (file)
@@ -1,25 +1,28 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.jws1;
 
 import jalview.gui.AlignFrame;
 import jalview.gui.WebserviceInfo;
+import jalview.util.MessageManager;
 import jalview.ws.WSClient;
 import jalview.ws.WSMenuEntryProviderI;
 
@@ -107,8 +110,7 @@ public abstract class WS1Client extends WSClient implements
   {
     if (serviceHandle == null)
     {
-      throw new Error(
-              "IMPLEMENTATION ERROR: cannot attach WS Menu Entry without service handle reference!");
+      throw new Error(MessageManager.getString("error.implementation_error_cannot_attach_ws_menu_entry"));
     }
     attachWSMenuEntry(wsmenu, serviceHandle, alignFrame);
   }
index e25f0a7..d687368 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.jws1;
index aba9222..66338b1 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.jws2;
@@ -32,10 +34,11 @@ import java.util.Map;
 import java.util.Set;
 import java.util.TreeSet;
 
+import compbio.data.sequence.FastaSequence;
 import compbio.data.sequence.Score;
 import compbio.metadata.Argument;
 
-public class AAConClient extends JabawsAlignCalcWorker
+public class AAConClient extends JabawsCalcWorker
 {
 
   public AAConClient(Jws2Instance service, AlignFrame alignFrame,
@@ -100,11 +103,18 @@ public class AAConClient extends JabawsAlignCalcWorker
   }
 
   @Override
+  boolean checkValidInputSeqs(boolean dynamic, List<FastaSequence> seqs)
+  {
+    return (seqs.size() > 1);
+  }
+
+  @Override
   public String getCalcId()
   {
     return CALC_ID;
   }
-  private static String CALC_ID="jabaws2.AACon";
+
+  private static String CALC_ID = "jabaws2.AACon";
 
   public static AlignAnalysisUIText getAlignAnalysisUITest()
   {
index e5a39a7..83eebdf 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.jws2;
@@ -38,6 +40,7 @@ import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
 
+import compbio.data.sequence.FastaSequence;
 import compbio.data.sequence.Range;
 import compbio.data.sequence.Score;
 import compbio.data.sequence.ScoreManager.ScoreHolder;
@@ -48,6 +51,7 @@ public class AADisorderClient extends JabawsCalcWorker implements
 {
 
   private static final String THRESHOLD = "THRESHOLD";
+
   private static final String RANGE = "RANGE";
 
   String typeName;
@@ -79,6 +83,12 @@ public class AADisorderClient extends JabawsCalcWorker implements
     return "Submitting amino acid sequences for disorder prediction.";
   }
 
+  @Override
+  boolean checkValidInputSeqs(boolean dynamic, List<FastaSequence> seqs)
+  {
+    return (seqs.size() > 0);
+  }
+
   private static Map<String, Map<String, String[]>> featureMap;
 
   private static Map<String, Map<String, Map<String, Object>>> annotMap;
@@ -121,7 +131,7 @@ public class AADisorderClient extends JabawsCalcWorker implements
     amap.get("Dydx").put(THRESHOLD, new double[]
     { 1, 0 });
     amap.get("Dydx").put(RANGE, new float[]
-            { -1, +1 });
+    { -1, +1 });
 
     amap.put("SmoothedScore", new HashMap<String, Object>());
     amap.get("SmoothedScore").put(INVISIBLE, INVISIBLE);
@@ -135,17 +145,16 @@ public class AADisorderClient extends JabawsCalcWorker implements
     amap.get("COILS").put(THRESHOLD, new double[]
     { 1, 0.516 });
     amap.get("COILS").put(RANGE, new float[]
-            { 0, 1 });
+    { 0, 1 });
 
     amap.get("HOTLOOPS").put(THRESHOLD, new double[]
     { 1, 0.6 });
     amap.get("HOTLOOPS").put(RANGE, new float[]
-            { 0, 1 });
+    { 0, 1 });
     amap.get("REM465").put(THRESHOLD, new double[]
     { 1, 0.1204 });
     amap.get("REM465").put(RANGE, new float[]
-            { 0, 1 });
-
+    { 0, 1 });
 
     annotMap.put(compbio.ws.client.Services.IUPredWS.toString(),
             amap = new HashMap<String, Map<String, Object>>());
@@ -154,18 +163,18 @@ public class AADisorderClient extends JabawsCalcWorker implements
     amap.get("Long").put(THRESHOLD, new double[]
     { 1, 0.5 });
     amap.get("Long").put(RANGE, new float[]
-            { 0, 1 });
+    { 0, 1 });
     amap.get("Short").put(THRESHOLD, new double[]
     { 1, 0.5 });
     amap.get("Short").put(RANGE, new float[]
-            { 0, 1 });
+    { 0, 1 });
     annotMap.put(compbio.ws.client.Services.JronnWS.toString(),
             amap = new HashMap<String, Map<String, Object>>());
     amap.put("JRonn", new HashMap<String, Object>());
     amap.get("JRonn").put(THRESHOLD, new double[]
     { 1, 0.5 });
     amap.get("JRonn").put(RANGE, new float[]
-            { 0, 1 });
+    { 0, 1 });
   }
 
   @Override
@@ -201,14 +210,15 @@ public class AADisorderClient extends JabawsCalcWorker implements
       {
         boolean sameGroup = false;
         SequenceI dseq, aseq, seq = seqNames.get(seqId);
-        int base = seq.findPosition(start)-1;
+        int base = seq.findPosition(start) - 1;
         aseq = seq;
         while ((dseq = seq).getDatasetSequence() != null)
         {
           seq = seq.getDatasetSequence();
         }
         ScoreHolder scores = null;
-        try {
+        try
+        {
           scores = scoremanager.getAnnotationForSequence(seqId);
         } catch (Exception q)
         {
@@ -216,12 +226,14 @@ public class AADisorderClient extends JabawsCalcWorker implements
                   .info("Couldn't recover disorder prediction for sequence "
                           + seq.getName()
                           + "(Prediction name was "
-                          + seqId+")"
+                          + seqId
+                          + ")"
                           + "\nSee http://issues.jalview.org/browse/JAL-1319 for one possible reason why disorder predictions might fail.");
         }
         float last = Float.NaN, val = Float.NaN;
         int lastAnnot = ourAnnot.size();
-        if (scores!=null && scores.scores!=null) {
+        if (scores != null && scores.scores != null)
+        {
           for (Score scr : scores.scores)
           {
 
@@ -273,21 +285,21 @@ public class AADisorderClient extends JabawsCalcWorker implements
                       service.getServiceTypeURI() + "/" + scr.getMethod(),
                       aseq, base + 1, scr);
               annot.graph = AlignmentAnnotation.LINE_GRAPH;
-              
-              Map<String,Object> styleMap = (annotTypeMap == null) ? null : annotTypeMap.get(scr.getMethod());
-              
+
+              Map<String, Object> styleMap = (annotTypeMap == null) ? null
+                      : annotTypeMap.get(scr.getMethod());
+
               annot.visible = (styleMap == null || styleMap.get(INVISIBLE) == null);
-              double[] thrsh = (styleMap==null) ? null
-                      : (double[]) styleMap.get(
-                              THRESHOLD);
-              float[] range = (styleMap==null) ? null : (float[]) styleMap.get(
-                      RANGE);
-              if (range!=null)
+              double[] thrsh = (styleMap == null) ? null
+                      : (double[]) styleMap.get(THRESHOLD);
+              float[] range = (styleMap == null) ? null
+                      : (float[]) styleMap.get(RANGE);
+              if (range != null)
               {
                 annot.graphMin = range[0];
                 annot.graphMax = range[1];
               }
-              if (styleMap==null || styleMap.get(DONTCOMBINE) == null)
+              if (styleMap == null || styleMap.get(DONTCOMBINE) == null)
               {
                 {
                   if (!sameGroup)
@@ -369,4 +381,11 @@ public class AADisorderClient extends JabawsCalcWorker implements
     }
   }
 
+  @Override
+  public String getCalcId()
+  {
+    // Disorder predictions are not dynamically updated so we return null
+    return null;
+  }
+
 }
index a98da76..16f943c 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.jws2;
diff --git a/src/jalview/ws/jws2/AbstractJabaCalcWorker.java b/src/jalview/ws/jws2/AbstractJabaCalcWorker.java
new file mode 100644 (file)
index 0000000..a7cc5b6
--- /dev/null
@@ -0,0 +1,599 @@
+package jalview.ws.jws2;
+
+import jalview.analysis.AlignSeq;
+import jalview.analysis.SeqsetUtils;
+import jalview.api.AlignViewportI;
+import jalview.api.AlignmentViewPanel;
+import jalview.datamodel.AlignmentAnnotation;
+import jalview.datamodel.AlignmentI;
+import jalview.datamodel.AnnotatedCollectionI;
+import jalview.datamodel.SequenceI;
+import jalview.gui.AlignFrame;
+import jalview.gui.IProgressIndicator;
+import jalview.workers.AlignCalcWorker;
+import jalview.ws.jws2.dm.AAConSettings;
+import jalview.ws.jws2.dm.JabaWsParamSet;
+import jalview.ws.jws2.jabaws2.Jws2Instance;
+import jalview.ws.params.WsParamSetI;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import compbio.data.sequence.FastaSequence;
+import compbio.metadata.Argument;
+import compbio.metadata.ChunkHolder;
+import compbio.metadata.JobStatus;
+import compbio.metadata.JobSubmissionException;
+import compbio.metadata.Option;
+import compbio.metadata.ResultNotAvailableException;
+
+public abstract class AbstractJabaCalcWorker extends AlignCalcWorker
+{
+
+  protected Jws2Instance service;
+
+  protected WsParamSetI preset;
+
+  protected List<Argument> arguments;
+
+  protected IProgressIndicator guiProgress;
+
+  protected boolean submitGaps = true;
+
+  /**
+   * Recover any existing parameters for this service
+   */
+  protected void initViewportParams()
+  {
+    if (getCalcId() != null)
+    {
+      ((jalview.gui.AlignViewport) alignViewport).setCalcIdSettingsFor(
+              getCalcId(),
+              new AAConSettings(true, service, this.preset,
+                      (arguments != null) ? JabaParamStore
+                              .getJwsArgsfromJaba(arguments) : null), true);
+    }
+  }
+
+  /**
+   * 
+   * @return null or a string used to recover all annotation generated by this
+   *         worker
+   */
+  public abstract String getCalcId();
+
+  public WsParamSetI getPreset()
+  {
+    return preset;
+  }
+
+  public List<Argument> getArguments()
+  {
+    return arguments;
+  }
+
+  /**
+   * reconfigure and restart the AAConClient. This method will spawn a new
+   * thread that will wait until any current jobs are finished, modify the
+   * parameters and restart the conservation calculation with the new values.
+   * 
+   * @param newpreset
+   * @param newarguments
+   */
+  public void updateParameters(final WsParamSetI newpreset,
+          final List<Argument> newarguments)
+  {
+    preset = newpreset;
+    arguments = newarguments;
+    calcMan.startWorker(this);
+    initViewportParams();
+  }
+
+  public List<Option> getJabaArguments()
+  {
+    List<Option> newargs = new ArrayList<Option>();
+    if (preset != null && preset instanceof JabaWsParamSet)
+    {
+      newargs.addAll(((JabaWsParamSet) preset).getjabaArguments());
+    }
+    if (arguments != null && arguments.size() > 0)
+    {
+      for (Argument rg : arguments)
+      {
+        if (Option.class.isAssignableFrom(rg.getClass()))
+        {
+          newargs.add((Option) rg);
+        }
+      }
+    }
+    return newargs;
+  }
+
+  protected boolean alignedSeqs = true;
+
+  protected boolean nucleotidesAllowed = false;
+
+  protected boolean proteinAllowed = false;
+
+  /**
+   * record sequences for mapping result back to afterwards
+   */
+  protected boolean bySequence = false;
+
+  protected Map<String, SequenceI> seqNames;
+
+  protected boolean[] gapMap;
+
+  int realw;
+
+  protected int start;
+
+  int end;
+
+  public AbstractJabaCalcWorker(AlignViewportI alignViewport,
+          AlignmentViewPanel alignPanel)
+  {
+    super(alignViewport, alignPanel);
+  }
+
+  public AbstractJabaCalcWorker(Jws2Instance service,
+          AlignFrame alignFrame, WsParamSetI preset, List<Argument> paramset)
+  {
+    this(alignFrame.getCurrentView(), alignFrame.alignPanel);
+    this.guiProgress = alignFrame;
+    this.preset = preset;
+    this.arguments = paramset;
+    this.service = service;
+  }
+
+  /**
+   * 
+   * @return true if the submission thread should attempt to submit data
+   */
+  abstract boolean hasService();
+
+  volatile String rslt = "JOB NOT DEFINED";
+
+  @Override
+  public void run()
+  {
+    if (!hasService())
+    {
+      return;
+    }
+    long progressId = -1;
+
+    int serverErrorsLeft = 3;
+
+    StringBuffer msg = new StringBuffer();
+    try
+    {
+      if (checkDone())
+      {
+        return;
+      }
+      List<compbio.data.sequence.FastaSequence> seqs = getInputSequences(
+              alignViewport.getAlignment(),
+              bySequence ? alignViewport.getSelectionGroup() : null);
+
+      if (seqs == null || !checkValidInputSeqs(true, seqs))
+      {
+        calcMan.workerComplete(this);
+        return;
+      }
+
+      AlignmentAnnotation[] aa = alignViewport.getAlignment()
+              .getAlignmentAnnotation();
+      if (guiProgress != null)
+      {
+        guiProgress.setProgressBar("JABA " + getServiceActionText(),
+                progressId = System.currentTimeMillis());
+      }
+      rslt = submitToService(seqs);
+
+      boolean finished = false;
+      long rpos = 0;
+      do
+      {
+        JobStatus status = getJobStatus(rslt);
+        if (status.equals(JobStatus.FINISHED))
+        {
+          finished = true;
+        }
+        if (calcMan.isPending(this) && isInteractiveUpdate())
+        {
+          finished = true;
+          // cancel this job and yield to the new job
+          try
+          {
+            if (cancelJob(rslt))
+            {
+              System.err.println("Cancelled AACon job: " + rslt);
+            }
+            else
+            {
+              System.err.println("FAILED TO CANCEL AACon job: " + rslt);
+            }
+
+          } catch (Exception x)
+          {
+
+          }
+          rslt = "CANCELLED JOB";
+          return;
+        }
+        long cpos;
+        ChunkHolder stats = null;
+        do
+        {
+          cpos = rpos;
+          boolean retry = false;
+          do
+          {
+            try
+            {
+              stats = pullExecStatistics(rslt, rpos);
+            } catch (Exception x)
+            {
+
+              if (x.getMessage().contains(
+                      "Position in a file could not be negative!"))
+              {
+                // squash index out of bounds exception- seems to happen for
+                // disorder predictors which don't (apparently) produce any
+                // progress information and JABA server throws an exception
+                // because progress length is -1.
+                stats = null;
+              }
+              else
+              {
+                if (--serverErrorsLeft > 0)
+                {
+                  retry = true;
+                  try
+                  {
+                    Thread.sleep(200);
+                  } catch (InterruptedException q)
+                  {
+                  }
+                  ;
+                }
+                else
+                {
+                  throw x;
+                }
+              }
+            }
+          } while (retry);
+          if (stats != null)
+          {
+            System.out.print(stats.getChunk());
+            msg.append(stats);
+            rpos = stats.getNextPosition();
+          }
+        } while (stats != null && rpos > cpos);
+
+        if (!finished && status.equals(JobStatus.FAILED))
+        {
+          try
+          {
+            Thread.sleep(200);
+          } catch (InterruptedException x)
+          {
+          }
+          ;
+        }
+      } while (!finished);
+      if (serverErrorsLeft > 0)
+      {
+        try
+        {
+          Thread.sleep(200);
+        } catch (InterruptedException x)
+        {
+        }
+        if (collectAnnotationResultsFor(rslt))
+        {
+          jalview.bin.Cache.log
+                  .debug("Updating result annotation from Job " + rslt
+                          + " at " + service.getUri());
+          updateResultAnnotation(true);
+          ap.adjustAnnotationHeight();
+        }
+      }
+    }
+
+    catch (JobSubmissionException x)
+    {
+
+      System.err.println("submission error with " + getServiceActionText()
+              + " :");
+      x.printStackTrace();
+      calcMan.workerCannotRun(this);
+    } catch (ResultNotAvailableException x)
+    {
+      System.err.println("collection error:\nJob ID: " + rslt);
+      x.printStackTrace();
+      calcMan.workerCannotRun(this);
+
+    } catch (OutOfMemoryError error)
+    {
+      calcMan.workerCannotRun(this);
+
+      // consensus = null;
+      // hconsensus = null;
+      ap.raiseOOMWarning(getServiceActionText(), error);
+    } catch (Exception x)
+    {
+      calcMan.workerCannotRun(this);
+
+      // consensus = null;
+      // hconsensus = null;
+      System.err
+              .println("Blacklisting worker due to unexpected exception:");
+      x.printStackTrace();
+    } finally
+    {
+
+      calcMan.workerComplete(this);
+      if (ap != null)
+      {
+        calcMan.workerComplete(this);
+        if (guiProgress != null && progressId != -1)
+        {
+          guiProgress.setProgressBar("", progressId);
+        }
+        ap.paintAlignment(true);
+      }
+      if (msg.length() > 0)
+      {
+        // TODO: stash message somewhere in annotation or alignment view.
+        // code below shows result in a text box popup
+        /*
+         * jalview.gui.CutAndPasteTransfer cap = new
+         * jalview.gui.CutAndPasteTransfer(); cap.setText(msg.toString());
+         * jalview.gui.Desktop.addInternalFrame(cap,
+         * "Job Status for "+getServiceActionText(), 600, 400);
+         */
+      }
+    }
+
+  }
+
+  /**
+   * validate input for dynamic/non-dynamic update context
+   * @param dynamic
+   * @param seqs
+   * @return true if input is valid
+   */
+  abstract boolean checkValidInputSeqs(boolean dynamic, List<FastaSequence> seqs);
+
+  abstract String submitToService(
+          List<compbio.data.sequence.FastaSequence> seqs)
+          throws JobSubmissionException;
+
+  abstract boolean cancelJob(String rslt) throws Exception;
+
+  abstract JobStatus getJobStatus(String rslt) throws Exception;
+
+  abstract ChunkHolder pullExecStatistics(String rslt, long rpos);
+
+  abstract boolean collectAnnotationResultsFor(String rslt)
+          throws ResultNotAvailableException;
+
+  public void cancelCurrentJob()
+  {
+    try
+    {
+      String id = rslt;
+      if (cancelJob(rslt))
+      {
+        System.err.println("Cancelled job "+id);
+      }
+      else 
+      {
+        System.err.println("Job "+id+" couldn't be cancelled.");
+      }
+    } catch (Exception q)
+    {
+      q.printStackTrace();
+    }
+  }
+
+  /**
+   * Interactive updating. Analysis calculations that work on the currently
+   * displayed alignment data should cancel existing jobs when the input data
+   * has changed.
+   * 
+   * @return true if a running job should be cancelled because new input data is
+   *         available for analysis
+   */
+  abstract boolean isInteractiveUpdate();
+
+  public List<FastaSequence> getInputSequences(AlignmentI alignment,
+          AnnotatedCollectionI inputSeqs)
+  {
+    if (alignment == null || alignment.getWidth() <= 0
+            || alignment.getSequences() == null || alignment.isNucleotide() ? !nucleotidesAllowed
+            : !proteinAllowed)
+    {
+      return null;
+    }
+    if (inputSeqs == null || inputSeqs.getWidth() <= 0
+            || inputSeqs.getSequences() == null
+            || inputSeqs.getSequences().size() < 1)
+    {
+      inputSeqs = alignment;
+    }
+
+    List<compbio.data.sequence.FastaSequence> seqs = new ArrayList<compbio.data.sequence.FastaSequence>();
+
+    int minlen = 10;
+    int ln = -1;
+    if (bySequence)
+    {
+      seqNames = new HashMap<String, SequenceI>();
+    }
+    gapMap = new boolean[0];
+    start = inputSeqs.getStartRes();
+    end = inputSeqs.getEndRes();
+
+    for (SequenceI sq : ((List<SequenceI>) inputSeqs.getSequences()))
+    {
+      if (bySequence ? sq.findPosition(end + 1)
+              - sq.findPosition(start + 1) > minlen - 1 : sq.getEnd()
+              - sq.getStart() > minlen - 1)
+      {
+        String newname = SeqsetUtils.unique_name(seqs.size() + 1);
+        // make new input sequence with or without gaps
+        if (seqNames != null)
+        {
+          seqNames.put(newname, sq);
+        }
+        FastaSequence seq;
+        if (submitGaps)
+        {
+          seqs.add(seq = new compbio.data.sequence.FastaSequence(newname,
+                  sq.getSequenceAsString()));
+          if (gapMap == null || gapMap.length < seq.getSequence().length())
+          {
+            boolean[] tg = gapMap;
+            gapMap = new boolean[seq.getLength()];
+            System.arraycopy(tg, 0, gapMap, 0, tg.length);
+            for (int p = tg.length; p < gapMap.length; p++)
+            {
+              gapMap[p] = false; // init as a gap
+            }
+          }
+          for (int apos : sq.gapMap())
+          {
+            gapMap[apos] = true; // aligned.
+          }
+        }
+        else
+        {
+          seqs.add(seq = new compbio.data.sequence.FastaSequence(newname,
+                  AlignSeq.extractGaps(jalview.util.Comparison.GapChars,
+                          sq.getSequenceAsString(start, end + 1))));
+        }
+        if (seq.getSequence().length() > ln)
+        {
+          ln = seq.getSequence().length();
+        }
+      }
+    }
+    if (alignedSeqs && submitGaps)
+    {
+      realw = 0;
+      for (int i = 0; i < gapMap.length; i++)
+      {
+        if (gapMap[i])
+        {
+          realw++;
+        }
+      }
+      // try real hard to return something submittable
+      // TODO: some of AAcon measures need a minimum of two or three amino
+      // acids at each position, and AAcon doesn't gracefully degrade.
+      for (int p = 0; p < seqs.size(); p++)
+      {
+        FastaSequence sq = seqs.get(p);
+        int l = sq.getSequence().length();
+        // strip gapped columns
+        char[] padded = new char[realw], orig = sq.getSequence()
+                .toCharArray();
+        for (int i = 0, pp = 0; i < realw; pp++)
+        {
+          if (gapMap[pp])
+          {
+            if (orig.length > pp)
+            {
+              padded[i++] = orig[pp];
+            }
+            else
+            {
+              padded[i++] = '-';
+            }
+          }
+        }
+        seqs.set(p, new compbio.data.sequence.FastaSequence(sq.getId(),
+                new String(padded)));
+      }
+    }
+    return seqs;
+  }
+
+  @Override
+  public void updateAnnotation()
+  {
+    updateResultAnnotation(false);
+  }
+
+  public abstract void updateResultAnnotation(boolean immediate);
+
+  public abstract String getServiceActionText();
+
+  /**
+   * notify manager that we have started, and wait for a free calculation slot
+   * 
+   * @return true if slot is obtained and work still valid, false if another
+   *         thread has done our work for us.
+   */
+  protected boolean checkDone()
+  {
+    calcMan.notifyStart(this);
+    ap.paintAlignment(false);
+    while (!calcMan.notifyWorking(this))
+    {
+      if (calcMan.isWorking(this))
+      {
+        return true;
+      }
+      try
+      {
+        if (ap != null)
+        {
+          ap.paintAlignment(false);
+        }
+
+        Thread.sleep(200);
+      } catch (Exception ex)
+      {
+        ex.printStackTrace();
+      }
+    }
+    if (alignViewport.isClosed())
+    {
+      abortAndDestroy();
+      return true;
+    }
+    return false;
+  }
+
+  protected void updateOurAnnots(List<AlignmentAnnotation> ourAnnot)
+  {
+    List<AlignmentAnnotation> our = ourAnnots;
+    ourAnnots = ourAnnot;
+    AlignmentI alignment = alignViewport.getAlignment();
+    if (our != null)
+    {
+      if (our.size() > 0)
+      {
+        for (AlignmentAnnotation an : our)
+        {
+          if (!ourAnnots.contains(an))
+          {
+            // remove the old annotation
+            alignment.deleteAnnotation(an);
+          }
+        }
+      }
+      our.clear();
+
+      ap.adjustAnnotationHeight();
+    }
+  }
+
+}
diff --git a/src/jalview/ws/jws2/JPred301Client.java b/src/jalview/ws/jws2/JPred301Client.java
new file mode 100644 (file)
index 0000000..8328d45
--- /dev/null
@@ -0,0 +1,295 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
+package jalview.ws.jws2;
+
+import jalview.api.AlignCalcWorkerI;
+import jalview.datamodel.AlignmentAnnotation;
+import jalview.datamodel.Annotation;
+import jalview.gui.AlignFrame;
+import jalview.ws.jws2.jabaws2.Jws2Instance;
+import jalview.ws.params.ArgumentI;
+import jalview.ws.params.OptionI;
+import jalview.ws.params.WsParamSetI;
+import jalview.ws.uimodel.AlignAnalysisUIText;
+
+import java.awt.Color;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+
+import compbio.data.sequence.FastaSequence;
+import compbio.data.sequence.JpredAlignment;
+import compbio.metadata.Argument;
+
+public class JPred301Client extends JabawsMsaInterfaceAlignCalcWorker
+        implements AlignCalcWorkerI
+{
+
+  /**
+   * 
+   * @return default args for this service when run as dynamic web service
+   */
+  public List<Argument> selectDefaultArgs()
+  {
+    List<ArgumentI> rgs = new ArrayList<ArgumentI>();
+    for (ArgumentI argi : service.getParamStore().getServiceParameters())
+    {
+      if (argi instanceof OptionI)
+      {
+        List<String> o = ((OptionI) argi).getPossibleValues();
+        if (o.contains("-pred-nohits"))
+        {
+          OptionI cpy = ((OptionI) argi).copy();
+          cpy.setValue("-pred-nohits");
+          rgs.add(cpy);
+        }
+      }
+    }
+    return JabaParamStore.getJabafromJwsArgs(rgs);
+  }
+
+  public JPred301Client(Jws2Instance service, AlignFrame alignFrame,
+          WsParamSetI preset, List<Argument> paramset)
+  {
+    super(service, alignFrame, preset, paramset);
+    submitGaps = true;
+    alignedSeqs = true;
+    nucleotidesAllowed = false;
+    proteinAllowed = true;
+    gapMap = new boolean[0];
+    updateParameters(null, selectDefaultArgs());
+  }
+
+  @Override
+  boolean checkValidInputSeqs(boolean dynamic, List<FastaSequence> seqs)
+  {
+    return (seqs.size() > 1);
+  }
+
+  public String getServiceActionText()
+  {
+    return "calculating consensus secondary structure prediction using JPred service";
+  }
+
+  private static HashMap<String, String[]> jpredRowLabels = new HashMap<String, String[]>();
+
+  private static HashSet<String> jpredRes_graph, jpredRes_ssonly;
+  {
+    jpredRes_ssonly = new HashSet();
+    jpredRes_ssonly.add("jnetpred".toLowerCase());
+    jpredRes_ssonly.add("jnetpssm".toLowerCase());
+    jpredRes_ssonly.add("jnethmm".toLowerCase());
+    jpredRes_graph = new HashSet();
+    jpredRes_graph.add("jnetconf".toLowerCase());
+    jpredRes_graph.add("jnet burial".toLowerCase());
+  }
+
+  /**
+   * update the consensus annotation from the sequence profile data using
+   * current visualization settings.
+   */
+  public void updateResultAnnotation(boolean immediate)
+  {
+    if (immediate || !calcMan.isWorking(this) && msascoreset != null)
+    {
+      if (msascoreset instanceof compbio.data.sequence.JpredAlignment)
+      {
+        JpredAlignment jpres = (JpredAlignment) msascoreset;
+        int alWidth = alignViewport.getAlignment().getWidth();
+        ArrayList<AlignmentAnnotation> ourAnnot = new ArrayList<AlignmentAnnotation>();
+        char[] sol = new char[jpres.getJpredSequences().get(0).getLength()];
+        boolean firstsol = true;
+        for (FastaSequence fsq : jpres.getJpredSequences())
+        {
+          String[] k = jpredRowLabels.get(fsq.getId());
+          if (k == null)
+          {
+            k = new String[]
+            { fsq.getId(), "JNet Output" };
+          }
+          if (fsq.getId().startsWith("JNETSOL"))
+          {
+            char amnt = (fsq.getId().endsWith("25") ? "3" : fsq.getId()
+                    .endsWith("5") ? "6" : "9").charAt(0);
+            char[] vseq = fsq.getSequence().toCharArray();
+            for (int spos = 0, sposL = fsq.getLength(); spos < sposL; spos++)
+            {
+              if (firstsol)
+              {
+                sol[spos] = '0';
+              }
+              if (vseq[spos] == 'B' && (sol[spos]=='0' || sol[spos] < amnt))
+              {
+                sol[spos] = amnt;
+              }
+            }
+            firstsol = false;
+          }
+          else
+          {
+            createAnnotationRowFromString(
+                    ourAnnot,
+                    getCalcId(),
+                    alWidth,
+                    k[0],
+                    k[1],
+                    jpredRes_graph.contains(fsq.getId()) ? AlignmentAnnotation.BAR_GRAPH
+                            : AlignmentAnnotation.NO_GRAPH, 0f, 9f,
+                    fsq.getSequence());
+          }
+
+        }
+        createAnnotationRowFromString(
+                ourAnnot,
+                getCalcId(),
+                alWidth,
+                "Jnet Burial",
+                "<html>Prediction of Solvent Accessibility<br/>levels are<ul><li>0 - Exposed</li><li>3 - 25% or more S.A. accessible</li><li>6 - 5% or more S.A. accessible</li><li>9 - Buried (<5% exposed)</li></ul>",
+                AlignmentAnnotation.BAR_GRAPH, 0f, 9f, new String(sol));
+        for (FastaSequence fsq : jpres.getSequences())
+        {
+          if (fsq.getId().equalsIgnoreCase("QUERY"))
+          {
+            createAnnotationRowFromString(ourAnnot, getCalcId(), alWidth,
+                    "Query", "JPred Reference Sequence",
+                    AlignmentAnnotation.NO_GRAPH, 0f, 0f, fsq.getSequence());
+          }
+        }
+        if (ourAnnot.size() > 0)
+        {
+          updateOurAnnots(ourAnnot);
+        }
+      }
+    }
+  }
+
+  private void createAnnotationRowFromString(
+          ArrayList<AlignmentAnnotation> ourAnnot, String calcId,
+          int alWidth, String label, String descr, int rowType, float min,
+          float max, String jpredPrediction)
+  {
+    // simple annotation row
+    AlignmentAnnotation annotation = alignViewport.getAlignment()
+            .findOrCreateAnnotation(label, calcId, true, null, null);
+    if (alWidth == gapMap.length) // scr.getScores().size())
+    {
+      annotation.label = new String(label);
+      annotation.description = new String(descr);
+      annotation.graph = rowType;
+      annotation.graphMin = min;
+      annotation.graphMax = max;
+      if (constructAnnotationFromString(annotation, jpredPrediction,
+              alWidth, rowType))
+      {
+        // created a valid annotation from the data
+        ourAnnot.add(annotation);
+        // annotation.validateRangeAndDisplay();
+      }
+    }
+  }
+
+  private boolean constructAnnotationFromString(
+          AlignmentAnnotation annotation, String sourceData, int alWidth,
+          int rowType)
+  {
+    if (sourceData.length() == 0 && alWidth > 0)
+    {
+      return false;
+    }
+    Annotation[] elm = new Annotation[alWidth];
+    boolean ssOnly = jpredRes_ssonly.contains(annotation.label
+            .toLowerCase());
+    boolean graphOnly = rowType != AlignmentAnnotation.NO_GRAPH;
+    if (!ssOnly && !graphOnly)
+    {
+      // for burial 'B'
+      annotation.showAllColLabels = true;
+    }
+
+    for (int i = 0, iSize = sourceData.length(); i < iSize; i++)
+    {
+      char annot = sourceData.charAt(i);
+      // if we're at a gapped column then skip to next ungapped position
+      if (gapMap != null && gapMap.length > 0)
+      {
+        while (!gapMap[i])
+        {
+          elm[i++] = new Annotation("", "", ' ', Float.NaN);
+        }
+      }
+      switch (rowType)
+      {
+      case AlignmentAnnotation.NO_GRAPH:
+        elm[i] = ssOnly ? new Annotation("", "", annot, Float.NaN,
+                colourSS(annot)) : new Annotation("" + annot, "" + annot,
+                '\0', Float.NaN);
+        break;
+      default:
+        try
+        {
+          elm[i] = new Annotation("" + annot, "" + annot, annot,
+                  Integer.valueOf(""+annot));
+        } catch (Exception x)
+        {
+          System.err.println("Expected numeric value in character '"
+                  + annot + "'");
+        }
+      }
+    }
+
+    annotation.annotations = elm;
+    annotation.belowAlignment = true;
+    annotation.validateRangeAndDisplay();
+    return true;
+  }
+
+  private Color colourSS(char annot)
+  {
+    switch (annot)
+    {
+    case 'H':
+      return jalview.renderer.AnnotationRenderer.HELIX_COLOUR;
+    case 'E':
+      return jalview.renderer.AnnotationRenderer.SHEET_COLOUR;
+    }
+    return jalview.renderer.AnnotationRenderer.GLYPHLINE_COLOR;
+  }
+
+  @Override
+  public String getCalcId()
+  {
+    return CALC_ID;
+  }
+
+  private static String CALC_ID = "jabaws21.JPred3Cons";
+
+  public static AlignAnalysisUIText getAlignAnalysisUITest()
+  {
+    return new AlignAnalysisUIText(
+            compbio.ws.client.Services.JpredWS.toString(),
+            jalview.ws.jws2.JPred301Client.class, CALC_ID, false, true,
+            true, "JPred Consensus",
+            "When checked, JPred consensus is updated automatically.",
+            "Change JPred Settings...",
+            "Modify settings for JPred calculations.");
+  }
+}
index 23e131b..aeb2626 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.jws2;
index 7ce1115..7c0eabd 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.jws2;
@@ -33,6 +35,7 @@ import compbio.metadata.Preset;
 import compbio.metadata.PresetManager;
 import compbio.metadata.RunnerConfig;
 
+import jalview.util.MessageManager;
 import jalview.ws.jws2.dm.JabaOption;
 import jalview.ws.jws2.dm.JabaParameter;
 import jalview.ws.jws2.dm.JabaWsParamSet;
@@ -164,9 +167,7 @@ public class JabaParamStore implements ParamDatastoreI
       }
       if (narg == null)
       {
-        throw new Error(
-                "Implementation Error: Cannot handle Jaba parameter object "
-                        + rg.getClass());
+        throw new Error(MessageManager.formatMessage("error.implementation_error_cannot_handle_jaba_param", new String[]{rg.getClass().toString()}));
       }
       else
       {
@@ -182,12 +183,12 @@ public class JabaParamStore implements ParamDatastoreI
     String[] rgssorton = rgnames.toArray(new String[rgs.size()]);
     jalview.util.QuickSort.sort(rgssorton, rgssort);
     ArgumentI tmp1;
-    int i=0;
-    while (rgssort.length-i>i)
+    int i = 0;
+    while (rgssort.length - i > i)
     {
-      tmp1=rgssort[rgssort.length-i-1];
-      rgssort[rgssort.length-i-1] = rgssort[i];
-      rgssort[i++]=tmp1;
+      tmp1 = rgssort[rgssort.length - i - 1];
+      rgssort[rgssort.length - i - 1] = rgssort[i];
+      rgssort[i++] = tmp1;
     }
     return Arrays.asList(rgssort);
   }
@@ -201,9 +202,7 @@ public class JabaParamStore implements ParamDatastoreI
               .getOption() : null;
       if (narg == null)
       {
-        throw new Error(
-                "Implementation Error: Cannot handle Jaba parameter object "
-                        + rg.getClass());
+          throw new Error(MessageManager.formatMessage("error.implementation_error_cannot_handle_jaba_param", new String[]{rg.getClass().toString()}));
       }
       else
       {
@@ -241,8 +240,7 @@ public class JabaParamStore implements ParamDatastoreI
     }
     if (servicePresets.containsKey(name))
     {
-      throw new Error(
-              "Implementation error: Attempt to delete a service preset!");
+      throw new Error(MessageManager.getString("error.implementation_error_attempt_to_delete_service_preset"));
     }
   }
 
@@ -268,9 +266,7 @@ public class JabaParamStore implements ParamDatastoreI
             : getPreset(presetName));
     if (jps == null)
     {
-      throw new Error("Implementation error: Can't locate either oldname ("
-              + oldName + ") or presetName (" + presetName
-              + "in the datastore!");
+      throw new Error(MessageManager.formatMessage("error.implementation_error_cannot_locate_oldname_presetname", new String[]{oldName,presetName}));
     }
     jps.setName(presetName);
     jps.setDescription(text);
@@ -320,8 +316,7 @@ public class JabaParamStore implements ParamDatastoreI
   {
     if (!involves(urls))
     {
-      throw new IOException(
-              "Implementation error: Cannot find service url in the given url set!");
+      throw new IOException(MessageManager.getString("error.implementation_error_cannot_find_service_url_in_given_set"));
 
     }
     JabaWsParamSet wsp = new JabaWsParamSet();
@@ -346,15 +341,11 @@ public class JabaParamStore implements ParamDatastoreI
   {
     if (!involves(pset.getApplicableUrls()))
     {
-      throw new IOException(
-              "Implementation error: Cannot find service url in the given url set for this service parameter store ("
-                      + service.getUri() + ") !");
-
+      throw new IOException(MessageManager.formatMessage("error.implementation_error_cannot_find_service_url_in_given_set_param_store", new String[]{service.getUri()}));
     }
     if (!(pset instanceof JabaWsParamSet))
     {
-      throw new Error(
-              "Implementation error: JabaWsParamSets can only be handled by JabaParamStore");
+      throw new Error(MessageManager.getString("error.implementation_error_jabaws_param_set_only_handled_by"));
     }
 
     StringBuffer rslt = new StringBuffer();
index 5df106d..c47c63a 100644 (file)
@@ -1,23 +1,26 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.jws2;
 
+import jalview.util.MessageManager;
 import jalview.ws.jws2.jabaws2.Jws2Instance;
 import jalview.ws.params.ArgumentI;
 import jalview.ws.params.WsParamSetI;
@@ -72,7 +75,7 @@ public class JabaPreset implements WsParamSetI
   @Override
   public void setSourceFile(String newfile)
   {
-    throw new Error("Cannot set source file for " + getClass());
+    throw new Error(MessageManager.formatMessage("error.cannot_set_source_file_for", new String[]{getClass().toString()}));
   }
 
   @Override
@@ -85,14 +88,13 @@ public class JabaPreset implements WsParamSetI
     } catch (Exception e)
     {
       e.printStackTrace();
-      throw new Error(
-              "Probable mismatch between service instance and preset!");
+      throw new Error(MessageManager.getString("error.mismatch_service_instance_preset"));
     }
   }
 
   @Override
   public void setArguments(List<ArgumentI> args)
   {
-    throw new Error("Cannot set Parameters for a Jaba Web service's preset");
+    throw new Error(MessageManager.getString("error.cannot_set_params_for_ws_preset"));
   }
 }
index 7248d7c..2eb484b 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 /**
@@ -117,14 +119,16 @@ public class JabaWsServerQuery implements Runnable
 
             jabasws2 = true;
             srv_set = registry.getSupportedServices();
-            
+
             // dan test
-            System.out.println("registry.getSupportedServices: " + srv_set.toString());
-            
+            System.out.println("registry.getSupportedServices: "
+                    + srv_set.toString());
+
             svccategories = registry.getServiceCategories();
-            
+
             // dan test
-//            System.out.println("registry.getServiceCategories: " + svccategories.toString());
+            // System.out.println("registry.getServiceCategories: " +
+            // svccategories.toString());
 
           }
         } catch (Exception ex)
@@ -179,13 +183,14 @@ public class JabaWsServerQuery implements Runnable
 
                 String description = registry.getServiceDescription(srv);
 
-                svc = Jws2InstanceFactory.newJws2Instance(jwsservers, srv.toString(),
-                        cat.name, description, service);
+                svc = Jws2InstanceFactory.newJws2Instance(jwsservers,
+                        srv.toString(), cat.name, description, service);
               }
               if (svc == null)
               {
-                svc = Jws2InstanceFactory.newJws2Instance(jwsservers, srv.toString(),
-                        cat.name, "JABAWS 1 Alignment Service", service);
+                svc = Jws2InstanceFactory.newJws2Instance(jwsservers,
+                        srv.toString(), cat.name,
+                        "JABAWS 1 Alignment Service", service);
               }
               jws2Discoverer.addService(jwsservers, svc);
             }
diff --git a/src/jalview/ws/jws2/JabawsAlignCalcWorker.java b/src/jalview/ws/jws2/JabawsAlignCalcWorker.java
deleted file mode 100644 (file)
index 6bfeddf..0000000
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
- */
-package jalview.ws.jws2;
-
-import jalview.api.AlignViewportI;
-import jalview.api.AlignmentViewPanel;
-import jalview.gui.AlignFrame;
-import jalview.ws.jws2.dm.AAConSettings;
-import jalview.ws.jws2.jabaws2.Jws2Instance;
-import jalview.ws.params.WsParamSetI;
-
-import java.util.List;
-
-import compbio.metadata.Argument;
-
-public abstract class JabawsAlignCalcWorker extends JabawsCalcWorker
-{
-
-  public JabawsAlignCalcWorker(AlignViewportI alignViewport,
-          AlignmentViewPanel alignPanel)
-  {
-    super(alignViewport, alignPanel);
-  }
-  
-  
-  
-  
-  public JabawsAlignCalcWorker(Jws2Instance service, AlignFrame alignFrame,
-          WsParamSetI preset, List<Argument> paramset)
-  {
-    super(service, alignFrame, preset, paramset);
-  }
-
-  /**
-   * Recover any existing parameters for this service 
-   */
-  protected void initViewportParams()
-  {
-    ((jalview.gui.AlignViewport) alignViewport).setCalcIdSettingsFor(
-            getCalcId(),
-            new AAConSettings(true, service, this.preset,
-                    (arguments != null) ? JabaParamStore
-                            .getJwsArgsfromJaba(arguments) : null), true);
-  }
-
-  /**
-   * 
-   * @return
-   */
-  public abstract String getCalcId();
-
-
-
-
-  @Override
-  public void updateParameters(WsParamSetI newpreset, java.util.List<Argument> newarguments)
-  {
-    super.updateParameters(newpreset, newarguments);
-    initViewportParams();
-  }
-}
index f585732..e966886 100644 (file)
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
 package jalview.ws.jws2;
 
-import java.util.ArrayList;
-import java.util.HashMap;
+import jalview.datamodel.AlignmentAnnotation;
+import jalview.datamodel.Annotation;
+import jalview.datamodel.SequenceI;
+import jalview.gui.AlignFrame;
+import jalview.util.MessageManager;
+import jalview.ws.jws2.jabaws2.Jws2Instance;
+import jalview.ws.params.WsParamSetI;
+
 import java.util.Iterator;
 import java.util.List;
-import java.util.Map;
 
 import compbio.data.msa.SequenceAnnotation;
-import compbio.data.sequence.FastaSequence;
 import compbio.data.sequence.Score;
 import compbio.data.sequence.ScoreManager;
 import compbio.metadata.Argument;
 import compbio.metadata.ChunkHolder;
 import compbio.metadata.JobStatus;
 import compbio.metadata.JobSubmissionException;
-import compbio.metadata.Option;
 import compbio.metadata.ResultNotAvailableException;
 import compbio.metadata.WrongParameterException;
-import jalview.analysis.AlignSeq;
-import jalview.analysis.SeqsetUtils;
-import jalview.api.AlignViewportI;
-import jalview.api.AlignmentViewPanel;
-import jalview.datamodel.AlignmentAnnotation;
-import jalview.datamodel.AlignmentI;
-import jalview.datamodel.AnnotatedCollectionI;
-import jalview.datamodel.Annotation;
-import jalview.datamodel.SequenceI;
-import jalview.gui.AlignFrame;
-import jalview.gui.IProgressIndicator;
-import jalview.workers.AlignCalcWorker;
-import jalview.ws.jws2.dm.JabaWsParamSet;
-import jalview.ws.jws2.jabaws2.Jws2Instance;
-import jalview.ws.params.WsParamSetI;
 
-public abstract class JabawsCalcWorker extends AlignCalcWorker
+public abstract class JabawsCalcWorker extends AbstractJabaCalcWorker
 {
 
-  protected Jws2Instance service;
   @SuppressWarnings("unchecked")
   protected SequenceAnnotation aaservice;
-  protected ScoreManager scoremanager;
-  protected WsParamSetI preset;
-  protected List<Argument> arguments;
-  protected IProgressIndicator guiProgress;
 
-  public JabawsCalcWorker(AlignViewportI alignViewport,
-          AlignmentViewPanel alignPanel)
-  {
-    super(alignViewport, alignPanel);
-  }
+  protected ScoreManager scoremanager;
 
   public JabawsCalcWorker(Jws2Instance service, AlignFrame alignFrame,
           WsParamSetI preset, List<Argument> paramset)
   {
-    this(alignFrame.getCurrentView(), alignFrame.alignPanel);
-    this.guiProgress = alignFrame;
-    this.preset = preset;
-    this.arguments = paramset;
-    this.service = service;
+    super(service, alignFrame, preset, paramset);
     aaservice = (SequenceAnnotation) service.service;
-
   }
 
-  public WsParamSetI getPreset()
+  @Override
+  ChunkHolder pullExecStatistics(String rslt, long rpos)
   {
-    return preset;
+    return aaservice.pullExecStatistics(rslt, rpos);
   }
 
-  public List<Argument> getArguments()
+  @Override
+  boolean collectAnnotationResultsFor(String rslt)
+          throws ResultNotAvailableException
   {
-    return arguments;
+    scoremanager = aaservice.getAnnotation(rslt);
+    if (scoremanager != null)
+    {
+      return true;
+    }
+    return false;
   }
 
-  /**
-   * reconfigure and restart the AAConClient. This method will spawn a new
-   * thread that will wait until any current jobs are finished, modify the
-   * parameters and restart the conservation calculation with the new values.
-   * 
-   * @param newpreset
-   * @param newarguments
-   */
-  public void updateParameters(final WsParamSetI newpreset, final List<Argument> newarguments)
+  @Override
+  boolean cancelJob(String rslt) throws Exception
   {
-    preset = newpreset;
-    arguments = newarguments;
-    calcMan.startWorker(this);
+    return aaservice.cancelJob(rslt);
   }
 
-  public List<Option> getJabaArguments()
+  @Override
+  protected JobStatus getJobStatus(String rslt) throws Exception
   {
-    List<Option> newargs = new ArrayList<Option>();
-    if (preset != null && preset instanceof JabaWsParamSet)
-    {
-      newargs.addAll(((JabaWsParamSet) preset).getjabaArguments());
-    }
-    if (arguments != null && arguments.size() > 0)
-    {
-      for (Argument rg : arguments)
-      {
-        if (Option.class.isAssignableFrom(rg.getClass()))
-        {
-          newargs.add((Option) rg);
-        }
-      }
-    }
-    return newargs;
+    return aaservice.getJobStatus(rslt);
   }
 
   @Override
-  public void run()
+  boolean hasService()
   {
-    if (aaservice == null)
-    {
-      return;
-    }
-    long progressId = -1;
-  
-    int serverErrorsLeft = 3;
-  
-    String rslt = "JOB NOT DEFINED";
-    StringBuffer msg = new StringBuffer();
-    try
-    {
-      if (checkDone())
-      {
-        return;
-      }
-      List<compbio.data.sequence.FastaSequence> seqs = getInputSequences(alignViewport
-              .getAlignment(), bySequence ? alignViewport.getSelectionGroup() : null);
-  
-      if (seqs == null)
-      {
-        calcMan.workerComplete(this);
-        return;
-      }
-  
-      AlignmentAnnotation[] aa = alignViewport.getAlignment()
-              .getAlignmentAnnotation();
-      if (guiProgress != null)
-      {
-        guiProgress.setProgressBar("JABA " + getServiceActionText(),
-                progressId = System.currentTimeMillis());
-      }
-      if (preset == null && arguments == null)
-      {
-        rslt = aaservice.analize(seqs);
-      }
-      else
-      {
-        try
-        {
-          rslt = aaservice.customAnalize(seqs, getJabaArguments());
-        } catch (WrongParameterException x)
-        {
-          throw new JobSubmissionException(
-                  "Invalid parameter set. Check Jalview implementation.", x);
-  
-        }
-      }
-      boolean finished = false;
-      long rpos = 0;
-      do
-      {
-        JobStatus status = aaservice.getJobStatus(rslt);
-        if (status.equals(JobStatus.FINISHED))
-        {
-          finished = true;
-        }
-        if (calcMan.isPending(this) && this instanceof AAConClient)
-        {
-          finished = true;
-          // cancel this job and yield to the new job
-          try
-          {
-            if (aaservice.cancelJob(rslt))
-            {
-              System.err.println("Cancelled AACon job: " + rslt);
-            }
-            else
-            {
-              System.err.println("FAILED TO CANCEL AACon job: " + rslt);
-            }
-  
-          } catch (Exception x)
-          {
-  
-          }
-  
-          return;
-        }
-        long cpos;
-        ChunkHolder stats = null;
-        do
-        {
-          cpos = rpos;
-          boolean retry = false;
-          do
-          {
-            try
-            {
-              stats = aaservice.pullExecStatistics(rslt, rpos);
-            } catch (Exception x)
-            {
-  
-              if (x.getMessage().contains(
-                      "Position in a file could not be negative!"))
-              {
-                // squash index out of bounds exception- seems to happen for
-                // disorder predictors which don't (apparently) produce any
-                // progress information and JABA server throws an exception
-                // because progress length is -1.
-                stats = null;
-              }
-              else
-              {
-                if (--serverErrorsLeft > 0)
-                {
-                  retry = true;
-                  try
-                  {
-                    Thread.sleep(200);
-                  } catch (InterruptedException q)
-                  {
-                  }
-                  ;
-                }
-                else
-                {
-                  throw x;
-                }
-              }
-            }
-          } while (retry);
-          if (stats != null)
-          {
-            System.out.print(stats.getChunk());
-            msg.append(stats);
-            rpos = stats.getNextPosition();
-          }
-        } while (stats != null && rpos > cpos);
-  
-        if (!finished && status.equals(JobStatus.FAILED))
-        {
-          try
-          {
-            Thread.sleep(200);
-          } catch (InterruptedException x)
-          {
-          }
-          ;
-        }
-      } while (!finished);
-      if (serverErrorsLeft > 0)
-      {
-        try
-        {
-          Thread.sleep(200);
-        } catch (InterruptedException x)
-        {
-        }
-        ;
-        scoremanager = aaservice.getAnnotation(rslt);
-        if (scoremanager != null)
-        {
-          jalview.bin.Cache.log
-                  .debug("Updating result annotation from Job " + rslt
-                          + " at " + service.getUri());
-          updateResultAnnotation(true);
-          ap.adjustAnnotationHeight();
-        }
-      }
-    }
-  
-    catch (JobSubmissionException x)
-    {
-  
-      System.err.println("submission error with " + getServiceActionText()
-              + " :");
-      x.printStackTrace();
-      calcMan.workerCannotRun(this);
-    } catch (ResultNotAvailableException x)
-    {
-      System.err.println("collection error:\nJob ID: " + rslt);
-      x.printStackTrace();
-      calcMan.workerCannotRun(this);
-  
-    } catch (OutOfMemoryError error)
-    {
-      calcMan.workerCannotRun(this);
-  
-      // consensus = null;
-      // hconsensus = null;
-      ap.raiseOOMWarning(getServiceActionText(), error);
-    } catch (Exception x)
-    {
-      calcMan.workerCannotRun(this);
-  
-      // consensus = null;
-      // hconsensus = null;
-      System.err
-              .println("Blacklisting worker due to unexpected exception:");
-      x.printStackTrace();
-    } finally
-    {
-  
-      calcMan.workerComplete(this);
-      if (ap != null)
-      {
-        calcMan.workerComplete(this);
-        if (guiProgress != null && progressId != -1)
-        {
-          guiProgress.setProgressBar("", progressId);
-        }
-        ap.paintAlignment(true);
-      }
-      if (msg.length() > 0)
-      {
-        // TODO: stash message somewhere in annotation or alignment view.
-        // code below shows result in a text box popup
-        /*
-         * jalview.gui.CutAndPasteTransfer cap = new
-         * jalview.gui.CutAndPasteTransfer(); cap.setText(msg.toString());
-         * jalview.gui.Desktop.addInternalFrame(cap,
-         * "Job Status for "+getServiceActionText(), 600, 400);
-         */
-      }
-    }
-  
+    return aaservice != null;
   }
 
   @Override
-  public void updateAnnotation()
+  protected boolean isInteractiveUpdate()
   {
-    updateResultAnnotation(false);
+    return this instanceof AAConClient;
   }
 
-  public abstract void updateResultAnnotation(boolean immediate);
-
-  public abstract String getServiceActionText();
-
-  protected boolean submitGaps = true;
-  protected boolean alignedSeqs = true;
-  protected boolean nucleotidesAllowed = false;
-  protected boolean proteinAllowed = false;
-  /**
-   * record sequences for mapping result back to afterwards
-   */
-  protected boolean bySequence = false;
-  protected Map<String, SequenceI> seqNames;
-  protected boolean[] gapMap;
-  int realw;
-  int start,end;
-
-  public List<FastaSequence> getInputSequences(AlignmentI alignment, AnnotatedCollectionI inputSeqs)
+  @Override
+  protected String submitToService(
+          List<compbio.data.sequence.FastaSequence> seqs)
+          throws JobSubmissionException
   {
-    if (alignment == null || alignment.getWidth() <= 0
-            || alignment.getSequences() == null
-            || alignment.isNucleotide() ? !nucleotidesAllowed
-            : !proteinAllowed)
+    String rslt;
+    if (preset == null && arguments == null)
     {
-      return null;
+      rslt = aaservice.analize(seqs);
     }
-    if (inputSeqs==null || inputSeqs.getWidth()<=0 || inputSeqs.getSequences()==null || inputSeqs.getSequences().size()<1)
+    else
     {
-      inputSeqs = alignment;
-    }
-    
-    List<compbio.data.sequence.FastaSequence> seqs = new ArrayList<compbio.data.sequence.FastaSequence>();
-
-    int minlen = 10;
-    int ln = -1;
-    if (bySequence)
-    {
-      seqNames = new HashMap<String, SequenceI>();
-    }
-    gapMap = new boolean[0];
-    start=inputSeqs.getStartRes();
-    end=inputSeqs.getEndRes();
-    
-
-    for (SequenceI sq : ((List<SequenceI>) inputSeqs.getSequences()))
-    {
-      if (bySequence ? sq.findPosition(end+1) -sq.findPosition(start+1) > minlen - 1 : sq.getEnd() - sq.getStart() > minlen - 1)
-      {
-        String newname = SeqsetUtils.unique_name(seqs.size() + 1);
-        // make new input sequence with or without gaps
-        if (seqNames != null)
-        {
-          seqNames.put(newname, sq);
-        }
-        FastaSequence seq;
-        if (submitGaps)
-        {
-          seqs.add(seq = new compbio.data.sequence.FastaSequence(newname,
-                  sq.getSequenceAsString()));
-          if (gapMap == null || gapMap.length < seq.getSequence().length())
-          {
-            boolean[] tg = gapMap;
-            gapMap = new boolean[seq.getLength()];
-            System.arraycopy(tg, 0, gapMap, 0, tg.length);
-            for (int p = tg.length; p < gapMap.length; p++)
-            {
-              gapMap[p] = false; // init as a gap
-            }
-          }
-          for (int apos : sq.gapMap())
-          {
-            gapMap[apos] = true; // aligned.
-          }
-        }
-        else
-        {
-          seqs.add(seq = new compbio.data.sequence.FastaSequence(newname,
-                  AlignSeq.extractGaps(jalview.util.Comparison.GapChars,
-                          sq.getSequenceAsString(start,end+1))));
-        }
-        if (seq.getSequence().length() > ln)
-        {
-          ln = seq.getSequence().length();
-        }
-      }
-    }
-    if (alignedSeqs && submitGaps)
-    {
-      realw = 0;
-      for (int i = 0; i < gapMap.length; i++)
-      {
-        if (gapMap[i])
-        {
-          realw++;
-        }
-      }
-      // try real hard to return something submittable
-      // TODO: some of AAcon measures need a minimum of two or three amino
-      // acids at each position, and AAcon doesn't gracefully degrade.
-      for (int p = 0; p < seqs.size(); p++)
-      {
-        FastaSequence sq = seqs.get(p);
-        int l = sq.getSequence().length();
-        // strip gapped columns
-        char[] padded = new char[realw], orig = sq.getSequence()
-                .toCharArray();
-        for (int i = 0, pp = 0; i < realw; pp++)
-        {
-          if (gapMap[pp])
-          {
-            if (orig.length > pp)
-            {
-              padded[i++] = orig[pp];
-            }
-            else
-            {
-              padded[i++] = '-';
-            }
-          }
-        }
-        seqs.set(p, new compbio.data.sequence.FastaSequence(sq.getId(),
-                new String(padded)));
-      }
-    }
-    return seqs;
-  }
-
-  /**
-   * notify manager that we have started, and wait for a free calculation slot
-   * 
-   * @return true if slot is obtained and work still valid, false if another
-   *         thread has done our work for us.
-   */
-  boolean checkDone()
-  {
-    calcMan.notifyStart(this);
-    ap.paintAlignment(false);
-    while (!calcMan.notifyWorking(this))
-    {
-      if (calcMan.isWorking(this))
-      {
-        return true;
-      }
       try
       {
-        if (ap != null)
-        {
-          ap.paintAlignment(false);
-        }
-  
-        Thread.sleep(200);
-      } catch (Exception ex)
+        rslt = aaservice.customAnalize(seqs, getJabaArguments());
+      } catch (WrongParameterException x)
       {
-        ex.printStackTrace();
+        throw new JobSubmissionException(MessageManager.getString("exception.jobsubmission_invalid_params_set"), x);
+
       }
     }
-    if (alignViewport.isClosed())
-    {
-      abortAndDestroy();
-      return true;
-    }
-    return false;
+    return rslt;
   }
 
-  protected void createAnnotationRowsForScores(List<AlignmentAnnotation> ourAnnot, String calcId,
-          int alWidth, Score scr)
+  protected void createAnnotationRowsForScores(
+          List<AlignmentAnnotation> ourAnnot, String calcId, int alWidth,
+          Score scr)
   {
     // simple annotation row
     AlignmentAnnotation annotation = alignViewport.getAlignment()
@@ -513,7 +137,8 @@ public abstract class JabawsCalcWorker extends AlignCalcWorker
     }
   }
 
-  protected AlignmentAnnotation createAnnotationRowsForScores(List<AlignmentAnnotation> ourAnnot, String typeName,
+  protected AlignmentAnnotation createAnnotationRowsForScores(
+          List<AlignmentAnnotation> ourAnnot, String typeName,
           String calcId, SequenceI dseq, int base, Score scr)
   {
     System.out.println("Creating annotation on dseq:" + dseq.getStart()
@@ -533,8 +158,8 @@ public abstract class JabawsCalcWorker extends AlignCalcWorker
     return annotation;
   }
 
-  private void constructAnnotationFromScore(AlignmentAnnotation annotation, int base,
-          int alWidth, Score scr)
+  private void constructAnnotationFromScore(AlignmentAnnotation annotation,
+          int base, int alWidth, Score scr)
   {
     Annotation[] elm = new Annotation[alWidth];
     Iterator<Float> vals = scr.getScores().iterator();
@@ -569,7 +194,7 @@ public abstract class JabawsCalcWorker extends AlignCalcWorker
       }
       elm[i] = new Annotation("", "" + val, ' ', val);
     }
-  
+
     annotation.annotations = elm;
     annotation.belowAlignment = true;
     if (x < 0)
@@ -582,28 +207,4 @@ public abstract class JabawsCalcWorker extends AlignCalcWorker
     annotation.validateRangeAndDisplay();
   }
 
-  protected void updateOurAnnots(List<AlignmentAnnotation> ourAnnot)
-  {
-    List<AlignmentAnnotation> our = ourAnnots;
-    ourAnnots = ourAnnot;
-    AlignmentI alignment = alignViewport.getAlignment();
-    if (our != null)
-    {
-      if (our.size() > 0)
-      {
-        for (AlignmentAnnotation an : our)
-        {
-          if (!ourAnnots.contains(an))
-          {
-            // remove the old annotation
-            alignment.deleteAnnotation(an);
-          }
-        }
-      }
-      our.clear();
-  
-      ap.adjustAnnotationHeight();
-    }
-  }
-
 }
diff --git a/src/jalview/ws/jws2/JabawsMsaInterfaceAlignCalcWorker.java b/src/jalview/ws/jws2/JabawsMsaInterfaceAlignCalcWorker.java
new file mode 100644 (file)
index 0000000..3f0e47d
--- /dev/null
@@ -0,0 +1,224 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
+package jalview.ws.jws2;
+
+import java.util.Iterator;
+import java.util.List;
+
+import compbio.data.msa.MsaWS;
+import compbio.data.msa.SequenceAnnotation;
+import compbio.data.sequence.Alignment;
+import compbio.data.sequence.Score;
+import compbio.data.sequence.ScoreManager;
+import compbio.metadata.Argument;
+import compbio.metadata.ChunkHolder;
+import compbio.metadata.JobStatus;
+import compbio.metadata.JobSubmissionException;
+import compbio.metadata.ResultNotAvailableException;
+import compbio.metadata.WrongParameterException;
+import jalview.api.AlignViewportI;
+import jalview.api.AlignmentViewPanel;
+import jalview.datamodel.AlignmentAnnotation;
+import jalview.datamodel.Annotation;
+import jalview.datamodel.SequenceI;
+import jalview.gui.AlignFrame;
+import jalview.util.MessageManager;
+import jalview.workers.AlignCalcWorker;
+import jalview.ws.jws2.jabaws2.Jws2Instance;
+import jalview.ws.params.WsParamSetI;
+
+public abstract class JabawsMsaInterfaceAlignCalcWorker extends AbstractJabaCalcWorker
+{
+
+  @SuppressWarnings("unchecked")
+  protected MsaWS msaservice;
+
+  protected Alignment msascoreset;
+
+  public JabawsMsaInterfaceAlignCalcWorker(AlignViewportI alignViewport,
+          AlignmentViewPanel alignPanel)
+  {
+    super(alignViewport, alignPanel);
+  }
+
+  public JabawsMsaInterfaceAlignCalcWorker(Jws2Instance service, AlignFrame alignFrame,
+          WsParamSetI preset, List<Argument> paramset)
+  {
+    this(alignFrame.getCurrentView(), alignFrame.alignPanel);
+    this.guiProgress = alignFrame;
+    this.preset = preset;
+    this.arguments = paramset;
+    this.service = service;
+    msaservice = (MsaWS) service.service;
+
+  }
+
+  @Override
+  ChunkHolder pullExecStatistics(String rslt, long rpos)
+  {
+    return msaservice.pullExecStatistics(rslt, rpos);
+  }
+
+  @Override
+  boolean collectAnnotationResultsFor(String rslt)
+          throws ResultNotAvailableException
+  {
+    msascoreset = msaservice.getResult(rslt);
+    if (msascoreset != null)
+    {
+      return true;
+    }
+    return false;
+  }
+
+  @Override
+  boolean cancelJob(String rslt) throws Exception
+  {
+    return msaservice.cancelJob(rslt);
+  }
+
+  @Override
+  protected JobStatus getJobStatus(String rslt) throws Exception
+  {
+    return msaservice.getJobStatus(rslt);
+  }
+
+  @Override
+  boolean hasService()
+  {
+    return msaservice != null;
+  }
+
+  @Override
+  protected boolean isInteractiveUpdate()
+  {
+    return false; // this instanceof AAConClient;
+  }
+
+  @Override
+  protected String submitToService(
+          List<compbio.data.sequence.FastaSequence> seqs)
+          throws JobSubmissionException
+  {
+    String rslt;
+    if (preset == null && arguments == null)
+    {
+      rslt = msaservice.align(seqs);
+    }
+    else
+    {
+      try
+      {
+        rslt = msaservice.customAlign(seqs, getJabaArguments());
+      } catch (WrongParameterException x)
+      {
+          throw new JobSubmissionException(MessageManager.getString("exception.jobsubmission_invalid_params_set"), x);
+      }
+    }
+    return rslt;
+  }
+
+  protected void createAnnotationRowsForScores(
+          List<AlignmentAnnotation> ourAnnot, String calcId, int alWidth,
+          Score scr)
+  {
+    // simple annotation row
+    AlignmentAnnotation annotation = alignViewport.getAlignment()
+            .findOrCreateAnnotation(scr.getMethod(), calcId, true, null,
+                    null);
+    if (alWidth == gapMap.length) // scr.getScores().size())
+    {
+      constructAnnotationFromScore(annotation, 0, alWidth, scr);
+      ourAnnot.add(annotation);
+    }
+  }
+
+  protected AlignmentAnnotation createAnnotationRowsForScores(
+          List<AlignmentAnnotation> ourAnnot, String typeName,
+          String calcId, SequenceI dseq, int base, Score scr)
+  {
+    System.out.println("Creating annotation on dseq:" + dseq.getStart()
+            + " base is " + base + " and length=" + dseq.getLength()
+            + " == " + scr.getScores().size());
+    // AlignmentAnnotation annotation = new AlignmentAnnotation(
+    // scr.getMethod(), typeName, new Annotation[]
+    // {}, 0, -1, AlignmentAnnotation.LINE_GRAPH);
+    // annotation.setCalcId(calcId);
+    AlignmentAnnotation annotation = alignViewport.getAlignment()
+            .findOrCreateAnnotation(typeName, calcId, false, dseq, null);
+    constructAnnotationFromScore(annotation, 0, dseq.getLength(), scr);
+    annotation.createSequenceMapping(dseq, base, false);
+    annotation.adjustForAlignment();
+    dseq.addAlignmentAnnotation(annotation);
+    ourAnnot.add(annotation);
+    return annotation;
+  }
+
+  private void constructAnnotationFromScore(AlignmentAnnotation annotation,
+          int base, int alWidth, Score scr)
+  {
+    Annotation[] elm = new Annotation[alWidth];
+    Iterator<Float> vals = scr.getScores().iterator();
+    float m = 0f, x = 0f;
+    for (int i = 0; vals.hasNext(); i++)
+    {
+      float val = vals.next().floatValue();
+      if (i == 0)
+      {
+        m = val;
+        x = val;
+      }
+      else
+      {
+        if (m > val)
+        {
+          m = val;
+        }
+        ;
+        if (x < val)
+        {
+          x = val;
+        }
+      }
+      // if we're at a gapped column then skip to next ungapped position
+      if (gapMap != null && gapMap.length > 0)
+      {
+        while (!gapMap[i])
+        {
+          elm[i++] = new Annotation("", "", ' ', Float.NaN);
+        }
+      }
+      elm[i] = new Annotation("", "" + val, ' ', val);
+    }
+
+    annotation.annotations = elm;
+    annotation.belowAlignment = true;
+    if (x < 0)
+    {
+      x = 0;
+    }
+    x += (x - m) * 0.1;
+    annotation.graphMax = x;
+    annotation.graphMin = m;
+    annotation.validateRangeAndDisplay();
+  }
+
+}
index fa43e7c..afefe65 100644 (file)
@@ -1,37 +1,49 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.jws2;
 
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
 import java.util.List;
 
+import javax.swing.JCheckBoxMenuItem;
 import javax.swing.JMenu;
+import javax.swing.JMenuItem;
+import javax.swing.event.MenuEvent;
+import javax.swing.event.MenuListener;
 
 import compbio.metadata.Argument;
-
+import jalview.api.AlignCalcWorkerI;
+import jalview.bin.Cache;
 import jalview.gui.AlignFrame;
 import jalview.gui.Desktop;
+import jalview.gui.JvSwingUtils;
 import jalview.gui.WebserviceInfo;
 import jalview.gui.WsJobParameters;
 import jalview.util.MessageManager;
+import jalview.ws.jws2.dm.AAConSettings;
 import jalview.ws.jws2.dm.JabaWsParamSet;
 import jalview.ws.jws2.jabaws2.Jws2Instance;
 import jalview.ws.params.WsParamSetI;
+import jalview.ws.uimodel.AlignAnalysisUIText;
 
 /**
  * provides metadata for a jabaws2 service instance - resolves names, etc.
@@ -65,8 +77,7 @@ public abstract class Jws2Client extends jalview.ws.WSClient
          * arguments. for (Argument opt : arguments) { newargs.add(opt); } }
          * paramset = newargs; } else {
          */
-        throw new Error(
-                "Implementation error: Can only instantiate Jaba parameter sets.");
+        throw new Error(MessageManager.getString("error.implementation_error_can_only_instantiate_jaba_param_sets"));
       }
     }
     else
@@ -97,7 +108,8 @@ public abstract class Jws2Client extends jalview.ws.WSClient
               : new WsJobParameters(sh, preset);
       if (adjustingExisting)
       {
-        jobParams.setName(MessageManager.getString("label.adjusting_parameters_for_calculation"));
+        jobParams.setName(MessageManager
+                .getString("label.adjusting_parameters_for_calculation"));
       }
       if (!jobParams.showRunDialog())
       {
@@ -161,5 +173,250 @@ public abstract class Jws2Client extends jalview.ws.WSClient
    */
   abstract void attachWSMenuEntry(JMenu wsmenu, final Jws2Instance service,
           final AlignFrame alignFrame);
+  
+
+  protected boolean registerAAConWSInstance(final JMenu wsmenu,
+          final Jws2Instance service, final AlignFrame alignFrame)
+  {
+    final AlignAnalysisUIText aaui = service.getAlignAnalysisUI(); // null ; //
+                                                                   // AlignAnalysisUIText.aaConGUI.get(service.serviceType.toString());
+    if (aaui == null)
+    {
+      // not an instantaneous calculation GUI type service
+      return false;
+    }
+    // create the instaneous calculation GUI bits and update state if existing
+    // GUI elements already present
+
+    JCheckBoxMenuItem _aaConEnabled = null;
+    for (int i = 0; i < wsmenu.getItemCount(); i++)
+    {
+      JMenuItem item = wsmenu.getItem(i);
+      if (item instanceof JCheckBoxMenuItem
+              && item.getText().equals(aaui.getAAconToggle()))
+      {
+        _aaConEnabled = (JCheckBoxMenuItem) item;
+      }
+    }
+    // is there an aaCon worker already present - if so, set it to use the
+    // given service handle
+    {
+      List<AlignCalcWorkerI> aaconClient = alignFrame.getViewport()
+              .getCalcManager()
+              .getRegisteredWorkersOfClass(aaui.getClient());
+      if (aaconClient != null && aaconClient.size() > 0)
+      {
+        AbstractJabaCalcWorker worker = (AbstractJabaCalcWorker) aaconClient
+                .get(0);
+        if (!worker.service.hosturl.equals(service.hosturl))
+        {
+          // javax.swing.SwingUtilities.invokeLater(new Runnable()
+          {
+            // @Override
+            // public void run()
+            {
+              removeCurrentAAConWorkerFor(aaui, alignFrame);
+              buildCurrentAAConWorkerFor(aaui, alignFrame, service);
+            }
+          }// );
+        }
+      }
+    }
+
+    // is there a service already registered ? there shouldn't be if we are
+    // being called correctly
+    if (_aaConEnabled == null)
+    {
+      final JCheckBoxMenuItem aaConEnabled = new JCheckBoxMenuItem(
+              aaui.getAAconToggle());
+
+      aaConEnabled.setToolTipText(JvSwingUtils.wrapTooltip(true, aaui.getAAconToggleTooltip()));
+      aaConEnabled.addActionListener(new ActionListener()
+      {
+        @Override
+        public void actionPerformed(ActionEvent arg0)
+        {
+          List<AlignCalcWorkerI> aaconClient = alignFrame.getViewport()
+                  .getCalcManager()
+                  .getRegisteredWorkersOfClass(aaui.getClient());
+          if (aaconClient != null && aaconClient.size() > 0)
+          {
+            removeCurrentAAConWorkerFor(aaui, alignFrame);
+          }
+          else
+          {
+            buildCurrentAAConWorkerFor(aaui, alignFrame);
+
+          }
+        }
+
+      });
+      wsmenu.add(aaConEnabled);
+      final JMenuItem modifyParams = new JMenuItem(aaui.getAAeditSettings());
+      modifyParams.setToolTipText("<html><p>"
+              + JvSwingUtils.wrapTooltip(false, aaui.getAAeditSettingsTooltip()
+                      + "</p>") + "</html>");
+      modifyParams.addActionListener(new ActionListener()
+      {
+
+        @Override
+        public void actionPerformed(ActionEvent arg0)
+        {
+          showAAConAnnotationSettingsFor(aaui, alignFrame);
+        }
+      });
+      wsmenu.add(modifyParams);
+      wsmenu.addMenuListener(new MenuListener()
+      {
+
+        @Override
+        public void menuSelected(MenuEvent arg0)
+        {
+          // TODO: refactor to the implementing class.
+          if (alignFrame.getViewport().getAlignment().isNucleotide() ? aaui
+                  .isNa() : aaui.isPr())
+          {
+            aaConEnabled.setEnabled(true);
+            modifyParams.setEnabled(true);
+          }
+          else
+          {
+            aaConEnabled.setEnabled(false);
+            modifyParams.setEnabled(false);
+          }
+          List<AlignCalcWorkerI> aaconClient = alignFrame.getViewport()
+                  .getCalcManager()
+                  .getRegisteredWorkersOfClass(aaui.getClient());
+          if (aaconClient != null && aaconClient.size() > 0)
+          {
+            aaConEnabled.setSelected(true);
+          }
+          else
+          {
+            aaConEnabled.setSelected(false);
+          }
+        }
+
+        @Override
+        public void menuDeselected(MenuEvent arg0)
+        {
+          // TODO Auto-generated method stub
+
+        }
+
+        @Override
+        public void menuCanceled(MenuEvent arg0)
+        {
+          // TODO Auto-generated method stub
+
+        }
+      });
+
+    }
+    return true;
+  }
+
+  private static void showAAConAnnotationSettingsFor(
+          final AlignAnalysisUIText aaui, AlignFrame alignFrame)
+  {
+    /*
+     * preferred settings Whether AACon is automatically recalculated Which
+     * AACon server to use What parameters to use
+     */
+    // could actually do a class search for this too
+    AAConSettings fave = (AAConSettings) alignFrame.getViewport()
+            .getCalcIdSettingsFor(aaui.getCalcId());
+    if (fave == null)
+    {
+      fave = createDefaultAAConSettings(aaui);
+    }
+    new SequenceAnnotationWSClient(fave, alignFrame, true);
+
+  }
+
+  private static void buildCurrentAAConWorkerFor(
+          final AlignAnalysisUIText aaui, AlignFrame alignFrame)
+  {
+    buildCurrentAAConWorkerFor(aaui, alignFrame, null);
+  }
+
+  private static void buildCurrentAAConWorkerFor(
+          final AlignAnalysisUIText aaui, AlignFrame alignFrame,
+          Jws2Instance service)
+  {
+    /*
+     * preferred settings Whether AACon is automatically recalculated Which
+     * AACon server to use What parameters to use
+     */
+    AAConSettings fave = (AAConSettings) alignFrame.getViewport()
+            .getCalcIdSettingsFor(aaui.getCalcId());
+    if (fave == null)
+    {
+      fave = createDefaultAAConSettings(aaui, service);
+    }
+    else
+    {
+      if (service != null
+              && !fave.getService().hosturl.equals(service.hosturl))
+      {
+        Cache.log.debug("Changing AACon service to " + service.hosturl
+                + " from " + fave.getService().hosturl);
+        fave.setService(service);
+      }
+    }
+    new SequenceAnnotationWSClient(fave, alignFrame, false);
+  }
+
+  private static AAConSettings createDefaultAAConSettings(
+          AlignAnalysisUIText aaui)
+  {
+    return createDefaultAAConSettings(aaui, null);
+  }
+
+  private static AAConSettings createDefaultAAConSettings(
+          AlignAnalysisUIText aaui, Jws2Instance service)
+  {
+    if (service != null)
+    {
+      if (!service.serviceType.toString().equals(
+              compbio.ws.client.Services.AAConWS.toString()))
+      {
+        Cache.log
+                .warn("Ignoring invalid preferred service for AACon calculations (service type was "
+                        + service.serviceType + ")");
+        service = null;
+      }
+      else
+      {
+        // check service is actually in the list of currently avaialable
+        // services
+        if (!Jws2Discoverer.getDiscoverer().getServices().contains(service))
+        {
+          // it isn't ..
+          service = null;
+        }
+      }
+    }
+    if (service == null)
+    {
+      // get the default service for AACon
+      service = Jws2Discoverer.getDiscoverer().getPreferredServiceFor(null,
+              aaui.getServiceType());
+    }
+    if (service == null)
+    {
+      // TODO raise dialog box explaining error, and/or open the JABA
+      // preferences menu.
+      throw new Error(MessageManager.getString("error.no_aacon_service_found"));
+    }
+    return new AAConSettings(true, service, null, null);
+  }
+
+  private static void removeCurrentAAConWorkerFor(AlignAnalysisUIText aaui,
+          AlignFrame alignFrame)
+  {
+    alignFrame.getViewport().getCalcManager()
+            .removeRegisteredWorkersOfClass(aaui.getClient());
+  }
 
 }
index 66179a0..910b749 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.jws2;
@@ -22,6 +24,7 @@ import jalview.bin.Cache;
 import jalview.gui.AlignFrame;
 import jalview.gui.Desktop;
 import jalview.gui.JvSwingUtils;
+import jalview.util.MessageManager;
 import jalview.ws.WSMenuEntryProviderI;
 import jalview.ws.jws2.jabaws2.Jws2Instance;
 import jalview.ws.params.ParamDatastoreI;
@@ -129,15 +132,16 @@ public class Jws2Discoverer implements Runnable, WSMenuEntryProviderI
       Cache.log.debug("Old discovery thread has finished.");
     }
     running = true;
-    
+
     // first set up exclusion list if needed
     final Set<String> ignoredServices = new HashSet<String>();
-    for (String ignored:jalview.bin.Cache.getDefault("IGNORED_JABAWS_SERVICETYPES", Services.JpredWS.toString()).split("\\|"))
+    for (String ignored : jalview.bin.Cache.getDefault(
+            "IGNORED_JABAWS_SERVICETYPES", "")
+            .split("\\|"))
     {
       ignoredServices.add(ignored);
     }
 
-    
     changeSupport.firePropertyChange("services", services, new Vector());
     oldthread = Thread.currentThread();
     try
@@ -204,8 +208,9 @@ public class Jws2Discoverer implements Runnable, WSMenuEntryProviderI
       ;
       for (JabaWsServerQuery squery : qrys)
       {
-        if (squery.isRunning()){
-          finished=false;
+        if (squery.isRunning())
+        {
+          finished = false;
         }
       }
       if (aborted)
@@ -383,14 +388,14 @@ public class Jws2Discoverer implements Runnable, WSMenuEntryProviderI
         }
       });
       hitm.setToolTipText(JvSwingUtils
-              .wrapTooltip("Opens the JABAWS server's homepage in web browser"));
+              .wrapTooltip(false, MessageManager.getString("label.open_jabaws_web_page ")));
 
       service.attachWSMenuEntry(atpoint, alignFrame);
       if (alternates.containsKey(service.serviceType))
       {
-        atpoint.add(hitm = new JMenu("Switch server"));
+        atpoint.add(hitm = new JMenu(MessageManager.getString("label.switch_server")));
         hitm.setToolTipText(JvSwingUtils
-                .wrapTooltip("Choose a server for running this service"));
+                .wrapTooltip(false, MessageManager.getString("label.choose_jabaws_server")));
         for (final Jws2Instance sv : alternates.get(service.serviceType))
         {
           JMenuItem itm;
@@ -479,7 +484,7 @@ public class Jws2Discoverer implements Runnable, WSMenuEntryProviderI
           atpoint = JvSwingUtils.findOrCreateMenu(atpoint, host);
           if (atpoint.getToolTipText() == null)
           {
-            atpoint.setToolTipText("Services at " + host);
+            atpoint.setToolTipText(MessageManager.formatMessage("label.services_at", new String[]{host}));
           }
         }
         if (bytype)
@@ -524,7 +529,7 @@ public class Jws2Discoverer implements Runnable, WSMenuEntryProviderI
               }
             });
             hitm.setToolTipText(JvSwingUtils
-                    .wrapTooltip("Opens the JABAWS server's homepage in web browser"));
+                    .wrapTooltip(true, MessageManager.getString("label.open_jabaws_web_page")));
             lasthostFor.put(service.action, host);
           }
           hostLabels.add(host + service.serviceType
index 7bc0ece..9ddc69a 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.jws2;
@@ -99,10 +101,8 @@ public class MsaWSClient extends Jws2Client
       JOptionPane
               .showMessageDialog(
                       Desktop.desktop,
-                      "The Service called \n"
-                              + sh.serviceType
-                              + "\nis not a \nMultiple Sequence Alignment Service !",
-                      "Internal Jalview Error", JOptionPane.WARNING_MESSAGE);
+                      MessageManager.formatMessage("label.service_called_is_not_msa_service", new String[]{sh.serviceType}),
+                      MessageManager.getString("label.internal_jalview_error"), JOptionPane.WARNING_MESSAGE);
 
       return;
     }
@@ -110,9 +110,8 @@ public class MsaWSClient extends Jws2Client
     if ((wsInfo = setWebService(sh, false)) == null)
     {
       JOptionPane.showMessageDialog(Desktop.desktop,
-              "The Multiple Sequence Alignment Service named "
-                      + sh.serviceType + " is unknown",
-              "Internal Jalview Error", JOptionPane.WARNING_MESSAGE);
+                 MessageManager.formatMessage("label.msa_service_is_unknown", new String[]{sh.serviceType}),
+                 MessageManager.getString("label.internal_jalview_error"), JOptionPane.WARNING_MESSAGE);
 
       return;
     }
@@ -191,6 +190,11 @@ public class MsaWSClient extends Jws2Client
   public void attachWSMenuEntry(JMenu rmsawsmenu,
           final Jws2Instance service, final AlignFrame alignFrame)
   {
+    if (registerAAConWSInstance(rmsawsmenu, service, alignFrame))
+    {
+      // Alignment dependent analysis calculation WS gui
+      return;
+    }
     setWebService(service, true); // headless
     boolean finished = true, submitGaps = false;
     JMenu msawsmenu = rmsawsmenu;
@@ -213,15 +217,21 @@ public class MsaWSClient extends Jws2Client
       if (submitGaps == true)
       {
         action = "Realign ";
-        msawsmenu = new JMenu(MessageManager.formatMessage("label.realign_with_params", new String[]{svcname}));
-        msawsmenu
-                .setToolTipText(MessageManager.getString("label.align_sequences_to_existing_alignment"));
+        msawsmenu = new JMenu(MessageManager.formatMessage(
+                "label.realign_with_params", new String[]
+                { svcname }));
+        msawsmenu.setToolTipText(MessageManager
+                .getString("label.align_sequences_to_existing_alignment"));
         rmsawsmenu.add(msawsmenu);
       }
       final boolean withGaps = submitGaps;
 
-      JMenuItem method = new JMenuItem(MessageManager.formatMessage("label.calcname_with_default_settings", new String[]{calcName}));
-      method.setToolTipText(MessageManager.formatMessage("label.action_with_default_settings", new String[]{action}));
+      JMenuItem method = new JMenuItem(MessageManager.formatMessage(
+              "label.calcname_with_default_settings", new String[]
+              { calcName }));
+      method.setToolTipText(MessageManager.formatMessage(
+              "label.action_with_default_settings", new String[]
+              { action }));
 
       method.addActionListener(new ActionListener()
       {
@@ -239,8 +249,10 @@ public class MsaWSClient extends Jws2Client
       {
         // only add these menu options if the service has user-modifiable
         // arguments
-        method = new JMenuItem(MessageManager.getString("label.edit_settings_and_run"));
-        method.setToolTipText(MessageManager.getString("label.view_and_change_parameters_before_alignment"));
+        method = new JMenuItem(
+                MessageManager.getString("label.edit_settings_and_run"));
+        method.setToolTipText(MessageManager
+                .getString("label.view_and_change_parameters_before_alignment"));
 
         method.addActionListener(new ActionListener()
         {
@@ -257,16 +269,17 @@ public class MsaWSClient extends Jws2Client
         List<WsParamSetI> presets = service.getParamStore().getPresets();
         if (presets != null && presets.size() > 0)
         {
-          JMenu presetlist = new JMenu(MessageManager.formatMessage("label.run_with_preset_params", new String[]{calcName}));
+          JMenu presetlist = new JMenu(MessageManager.formatMessage(
+                  "label.run_with_preset_params", new String[]
+                  { calcName }));
 
           for (final WsParamSetI preset : presets)
           {
             final JMenuItem methodR = new JMenuItem(preset.getName());
-            methodR.setToolTipText("<html><p>"
-                    + JvSwingUtils.wrapTooltip("<strong>"
-                            + (preset.isModifiable() ? "User Preset"
-                                    : "Service Preset") + "</strong><br/>"
-                            + preset.getDescription() + "</p>") + "</html>");
+            methodR.setToolTipText(JvSwingUtils.wrapTooltip(true, "<p><strong>"
+                            + (preset.isModifiable() ? MessageManager.getString("label.user_preset")
+                                    : MessageManager.getString("label.service_preset")) + "</strong><br/>"
+                            + preset.getDescription() + "</p>"));
             methodR.addActionListener(new ActionListener()
             {
               public void actionPerformed(ActionEvent e)
index e5c3752..5e8cb98 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.jws2;
@@ -30,6 +32,7 @@ import jalview.analysis.*;
 import jalview.bin.*;
 import jalview.datamodel.*;
 import jalview.gui.*;
+import jalview.util.MessageManager;
 import jalview.ws.AWsJob;
 import jalview.ws.WSClientI;
 import jalview.ws.JobStateSummary;
@@ -107,8 +110,7 @@ class MsaWSThread extends AWS2Thread implements WSClientI
       int nseqs = 0;
       if (minlen < 0)
       {
-        throw new Error(
-                "Implementation error: minlen must be zero or more.");
+        throw new Error(MessageManager.getString("error.implementation_error_minlen_must_be_greater_zero"));
       }
       for (int i = 0; i < seqs.length; i++)
       {
@@ -545,11 +547,14 @@ class MsaWSThread extends AWS2Thread implements WSClientI
           }
           wsInfo.setProgressText(jobs[job].getJobnum(), OutputHeader
                   + cancelledMessage + "\n");
-        } else {
+        }
+        else
+        {
           // if we hadn't submitted then just mark the job as cancelled.
           jobs[job].setSubjobComplete(true);
-          wsInfo.setStatus(jobs[job].getJobnum(), WebserviceInfo.STATE_CANCELLED_OK);
-          
+          wsInfo.setStatus(jobs[job].getJobnum(),
+                  WebserviceInfo.STATE_CANCELLED_OK);
+
         }
       }
       if (cancelled)
@@ -620,8 +625,7 @@ class MsaWSThread extends AWS2Thread implements WSClientI
     // boiler plate template
     if (!(job instanceof MsaWSJob))
     {
-      throw new Error("StartJob(MsaWSJob) called on a WSJobInstance "
-              + job.getClass());
+      throw new Error(MessageManager.formatMessage("error.implementation_error_msawbjob_called", new String[]{job.getClass().toString()}));
     }
     MsaWSJob j = (MsaWSJob) job;
     if (j.isSubmitted())
@@ -639,7 +643,7 @@ class MsaWSThread extends AWS2Thread implements WSClientI
     {
       // special case - selection consisted entirely of empty sequences...
       j.setjobStatus(JobStatus.FINISHED);
-      j.setStatus("Empty Alignment Job");
+      j.setStatus(MessageManager.getString("label.empty_alignment_job"));
     }
     try
     {
@@ -667,35 +671,28 @@ class MsaWSThread extends AWS2Thread implements WSClientI
       }
       else
       {
-        throw new Exception(
-                "Server at "
-                        + WsUrl
-                        + " returned null string for job id, it probably cannot be contacted. Try again later ?");
+        throw new Exception(MessageManager.formatMessage("exception.web_service_returned_null_try_later", new String[]{WsUrl}));
       }
     } catch (compbio.metadata.UnsupportedRuntimeException _lex)
     {
       lex = _lex;
-      wsInfo.appendProgressText("Job could not be run because the server doesn't support this program.\n"
-              + _lex.getMessage());
-      wsInfo.warnUser(_lex.getMessage(), "Service not supported!");
+      wsInfo.appendProgressText(MessageManager.formatMessage("info.job_couldnt_be_run_server_doesnt_support_program", new String[]{_lex.getMessage()}));
+      wsInfo.warnUser(_lex.getMessage(), MessageManager.getString("warn.service_not_supported"));
       wsInfo.setStatus(WebserviceInfo.STATE_STOPPED_SERVERERROR);
       wsInfo.setStatus(j.getJobnum(),
               WebserviceInfo.STATE_STOPPED_SERVERERROR);
     } catch (compbio.metadata.LimitExceededException _lex)
     {
       lex = _lex;
-      wsInfo.appendProgressText("Job could not be run because it exceeded a hard limit on the server.\n"
-              + _lex.getMessage());
-      wsInfo.warnUser(_lex.getMessage(), "Input is too big!");
+      wsInfo.appendProgressText(MessageManager.formatMessage("info.job_couldnt_be_run_exceeded_hard_limit", new String[]{_lex.getMessage()}));
+      wsInfo.warnUser(_lex.getMessage(), MessageManager.getString("warn.input_is_too_big"));
       wsInfo.setStatus(WebserviceInfo.STATE_STOPPED_ERROR);
       wsInfo.setStatus(j.getJobnum(), WebserviceInfo.STATE_STOPPED_ERROR);
     } catch (compbio.metadata.WrongParameterException _lex)
     {
       lex = _lex;
-      wsInfo.warnUser(_lex.getMessage(), "Invalid job parameter set!");
-      wsInfo.appendProgressText("Job could not be run because some of the parameter settings are not supported by the server.\n"
-              + _lex.getMessage()
-              + "\nPlease check to make sure you have used the correct parameter set for this service!\n");
+      wsInfo.warnUser(_lex.getMessage(), MessageManager.getString("warn.invalid_job_param_set"));
+      wsInfo.appendProgressText(MessageManager.formatMessage("info.job_couldnt_be_run_incorrect_param_setting", new String[]{_lex.getMessage()}));
       wsInfo.setStatus(WebserviceInfo.STATE_STOPPED_ERROR);
       wsInfo.setStatus(j.getJobnum(), WebserviceInfo.STATE_STOPPED_ERROR);
     } catch (Error e)
@@ -729,8 +726,7 @@ class MsaWSThread extends AWS2Thread implements WSClientI
 
         j.setAllowedServerExceptions(0);
         wsInfo.appendProgressText(j.getJobnum(),
-                "Failed to submit sequences for alignment.\n"
-                        + "Just close the window\n");
+                MessageManager.getString("info.failed_to_submit_sequences_for_alignment"));
       }
     }
   }
@@ -738,7 +734,7 @@ class MsaWSThread extends AWS2Thread implements WSClientI
   public void parseResult()
   {
     long progbar = System.currentTimeMillis();
-    wsInfo.setProgressBar("Collecting job results.", progbar);
+    wsInfo.setProgressBar(MessageManager.getString("status.collecting_job_results"), progbar);
     int results = 0; // number of result sets received
     JobStateSummary finalState = new JobStateSummary();
     try
index be90458..8916be9 100644 (file)
@@ -1,23 +1,27 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.jws2;
 
+import jalview.util.MessageManager;
+
 import java.net.MalformedURLException;
 import java.util.ArrayList;
 import java.util.HashSet;
@@ -179,8 +183,7 @@ public class ParameterUtils
     } catch (Exception e)
     {
       e.printStackTrace();
-      throw new Error(
-              "Implementation error: could not copy ValueConstrain!");
+      throw new Error(MessageManager.getString("error.implementation_error_couldnt_copy_value_constraint"));
     }
   }
 
index c7d8efd..253a797 100644 (file)
@@ -1,3 +1,23 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
 package jalview.ws.jws2;
 
 import jalview.api.AlignCalcWorkerI;
@@ -17,6 +37,7 @@ import java.util.TreeSet;
 import java.util.regex.Pattern;
 
 import compbio.data.sequence.RNAStructReader.AlifoldResult;
+import compbio.data.sequence.FastaSequence;
 import compbio.data.sequence.RNAStructScoreManager;
 import compbio.data.sequence.Range;
 import compbio.data.sequence.Score;
@@ -24,11 +45,12 @@ import compbio.metadata.Argument;
 
 /**
  * Client for the JABA RNA Alifold Service
+ * 
  * @author daluke - Daniel Barton
- *
+ * 
  */
 
-public class RNAalifoldClient extends JabawsAlignCalcWorker implements
+public class RNAalifoldClient extends JabawsCalcWorker implements
         AlignCalcWorkerI
 {
 
@@ -44,24 +66,21 @@ public class RNAalifoldClient extends JabawsAlignCalcWorker implements
           WsParamSetI preset, List<Argument> paramset)
   {
     super(sh, alignFrame, preset, paramset);
-
-    //if (arguments == null)
-    //  arguments = new ArrayList<Argument>();
-
     af = alignFrame;
     methodName = sh.serviceType;
-    alignedSeqs=true;
-    submitGaps=true;
+    alignedSeqs = true;
+    submitGaps = true;
     nucleotidesAllowed = true;
     proteinAllowed = false;
     initViewportParams();
   }
-  
+
   public String getCalcId()
   {
     return CALC_ID;
   }
-  private static String CALC_ID="jalview.ws.jws2.RNAalifoldClient";
+
+  private static String CALC_ID = "jalview.ws.jws2.RNAalifoldClient";
 
   public static AlignAnalysisUIText getAlignAnalysisUITest()
   {
@@ -87,6 +106,12 @@ public class RNAalifoldClient extends JabawsAlignCalcWorker implements
   }
 
   @Override
+  boolean checkValidInputSeqs(boolean dynamic, List<FastaSequence> seqs)
+  {
+    return (seqs.size() > 1);
+  }
+
+  @Override
   public void updateResultAnnotation(boolean immediate)
   {
 
@@ -198,7 +223,8 @@ public class RNAalifoldClient extends JabawsAlignCalcWorker implements
   private AlignmentAnnotation constructAnnotationFromScoreHolder(
           AlignmentAnnotation annotation, String struct, TreeSet<Score> data)
   {
-    Annotation[] anns = new Annotation[gapMap!= null ? gapMap.length+1 : struct.length()];
+    Annotation[] anns = new Annotation[gapMap != null ? gapMap.length + 1
+            : struct.length()];
 
     if (data != null
             && data.size() > 1
@@ -216,10 +242,10 @@ public class RNAalifoldClient extends JabawsAlignCalcWorker implements
         basePairs.put(score.getRanges().first(), new Float(score
                 .getScores().get(0)));
       }
-      
-      for (int i = 0,ri=0,iEnd=struct.length();i<iEnd; i++,ri++)
+
+      for (int i = 0, ri = 0, iEnd = struct.length(); i < iEnd; i++, ri++)
       {
-        if (gapMap!=null)
+        if (gapMap != null)
         {
           // skip any gapped columns in the input data
           while (!gapMap[ri])
@@ -256,16 +282,16 @@ public class RNAalifoldClient extends JabawsAlignCalcWorker implements
     }
     else if (data == null || data.size() == 1)
     {
-      for (int i = 0,ri=0,iEnd=struct.length();i<iEnd; i++,ri++)
+      for (int i = 0, ri = 0, iEnd = struct.length(); i < iEnd; i++, ri++)
       {
-        if (gapMap!=null)
+        if (gapMap != null)
         {
           // skip any gapped columns in the input data
-          while (!gapMap[ri] && ri<gapMap.length)
+          while (!gapMap[ri] && ri < gapMap.length)
           {
             ri++;
           }
-          if (ri==gapMap.length)
+          if (ri == gapMap.length)
           {
             break;
           }
index fb5f823..3976678 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.jws2;
@@ -61,59 +63,58 @@ public class SequenceAnnotationWSClient extends Jws2Client
     initSequenceAnnotationWSClient(sh, alignFrame, preset, editParams);
   }
 
-  // dan think. Do I need to change this method to run RNAalifold through the GUI
-  
+  // dan think. Do I need to change this method to run RNAalifold through the
+  // GUI
+
   public void initSequenceAnnotationWSClient(final Jws2Instance sh,
           AlignFrame alignFrame, WsParamSetI preset, boolean editParams)
   {
-       // dan changed! dan test. comment out if conditional
-//    if (alignFrame.getViewport().getAlignment().isNucleotide())
-//    {
-//      JOptionPane.showMessageDialog(Desktop.desktop, sh.serviceType
-//              + " can only be used\nfor amino acid alignments.",
-//              "Wrong type of sequences!", JOptionPane.WARNING_MESSAGE);
-//      return;
-//
-//    }
+    // dan changed! dan test. comment out if conditional
+    // if (alignFrame.getViewport().getAlignment().isNucleotide())
+    // {
+    // JOptionPane.showMessageDialog(Desktop.desktop, sh.serviceType
+    // + " can only be used\nfor amino acid alignments.",
+    // "Wrong type of sequences!", JOptionPane.WARNING_MESSAGE);
+    // return;
+    //
+    // }
     AlignAnalysisUIText aaui = sh.getAlignAnalysisUI();
-    if (aaui!=null)
+    if (aaui != null)
     {
       Class clientClass = aaui.getClient();
-      
+
       // Build an AACon style client - take alignment, return annotation for
       // columns
 
       List<AlignCalcWorkerI> clnts = alignFrame.getViewport()
-              .getCalcManager()
-              .getRegisteredWorkersOfClass(clientClass);
-      JabawsAlignCalcWorker worker;
+              .getCalcManager().getRegisteredWorkersOfClass(clientClass);
+      AbstractJabaCalcWorker worker;
       if (clnts == null || clnts.size() == 0)
       {
         if (!processParams(sh, editParams))
         {
           return;
         }
-        try {
-          worker = (JabawsAlignCalcWorker) (clientClass.getConstructor(
-                  new Class[] { Jws2Instance.class, 
-                          AlignFrame.class, WsParamSetI.class, 
-                          List.class }).newInstance(new Object[] { sh, alignFrame, this.preset, paramset}));
+        try
+        {
+          worker = (AbstractJabaCalcWorker) (clientClass
+                  .getConstructor(new Class[]
+                  { Jws2Instance.class, AlignFrame.class,
+                      WsParamSetI.class, List.class })
+                  .newInstance(new Object[]
+                  { sh, alignFrame, this.preset, paramset }));
         } catch (Exception x)
         {
           x.printStackTrace();
-          throw new Error("Implementation error",x);
+          throw new Error(MessageManager.getString("error.implementation_error"), x);
         }
-        alignFrame
-                .getViewport()
-                .getCalcManager()
-                .registerWorker(
-                        worker);
+        alignFrame.getViewport().getCalcManager().registerWorker(worker);
         alignFrame.getViewport().getCalcManager().startWorker(worker);
 
       }
       else
       {
-        worker = (JabawsAlignCalcWorker) clnts.get(0);
+        worker = (AbstractJabaCalcWorker) clnts.get(0);
         if (editParams)
         {
           paramset = worker.getArguments();
@@ -164,7 +165,8 @@ public class SequenceAnnotationWSClient extends Jws2Client
   public void attachWSMenuEntry(JMenu wsmenu, final Jws2Instance service,
           final AlignFrame alignFrame)
   {
-    if (registerAAConWSInstance(wsmenu, service, alignFrame)) {
+    if (registerAAConWSInstance(wsmenu, service, alignFrame))
+    {
       // Alignment dependent analysis calculation WS gui
       return;
     }
@@ -173,7 +175,9 @@ public class SequenceAnnotationWSClient extends Jws2Client
     String calcName = service.serviceType.substring(0,
             service.serviceType.length() - 2);
 
-    JMenuItem annotservice = new JMenuItem(MessageManager.formatMessage("label.calcname_with_default_settings", new String[]{calcName}));
+    JMenuItem annotservice = new JMenuItem(MessageManager.formatMessage(
+            "label.calcname_with_default_settings", new String[]
+            { calcName }));
     annotservice.addActionListener(new ActionListener()
     {
 
@@ -188,9 +192,11 @@ public class SequenceAnnotationWSClient extends Jws2Client
     {
       // only add these menu options if the service has user-modifiable
       // arguments
-      annotservice = new JMenuItem(MessageManager.getString("label.edit_settings_and_run"));
+      annotservice = new JMenuItem(
+              MessageManager.getString("label.edit_settings_and_run"));
       annotservice
-              .setToolTipText(MessageManager.getString("label.view_and_change_parameters_before_running_calculation"));
+              .setToolTipText(MessageManager
+                      .getString("label.view_and_change_parameters_before_running_calculation"));
 
       annotservice.addActionListener(new ActionListener()
       {
@@ -203,16 +209,15 @@ public class SequenceAnnotationWSClient extends Jws2Client
       List<WsParamSetI> presets = service.getParamStore().getPresets();
       if (presets != null && presets.size() > 0)
       {
-        JMenu presetlist = new JMenu("Run " + calcName + "with preset");
+        JMenu presetlist = new JMenu(MessageManager.formatMessage("label.run_with_preset", new String[]{calcName}));
 
         for (final WsParamSetI preset : presets)
         {
           final JMenuItem methodR = new JMenuItem(preset.getName());
-          methodR.setToolTipText("<html><p>"
-                  + JvSwingUtils.wrapTooltip("<strong>"
-                          + (preset.isModifiable() ? "User Preset"
-                                  : "Service Preset") + "</strong><br/>"
-                          + preset.getDescription() + "</p>") + "</html>");
+          methodR.setToolTipText(JvSwingUtils.wrapTooltip(true, "<strong>"
+                          + (preset.isModifiable() ? MessageManager.getString("label.user_preset")
+                                  : MessageManager.getString("label.service_preset")) + "</strong><br/>"
+                          + preset.getDescription()));
           methodR.addActionListener(new ActionListener()
           {
             public void actionPerformed(ActionEvent e)
@@ -230,7 +235,8 @@ public class SequenceAnnotationWSClient extends Jws2Client
     }
     else
     {
-      annotservice = new JMenuItem(MessageManager.getString("label.view_documentation"));
+      annotservice = new JMenuItem(
+              MessageManager.getString("label.view_documentation"));
       if (service.docUrl != null)
       {
         annotservice.addActionListener(new ActionListener()
@@ -242,249 +248,9 @@ public class SequenceAnnotationWSClient extends Jws2Client
             Desktop.instance.showUrl(service.docUrl);
           }
         });
-        annotservice.setToolTipText("<html>"
-                + JvSwingUtils.wrapTooltip("View <a href=\""
-                        + service.docUrl + "\">" + service.docUrl + "</a>")
-                + "</html>");
+        annotservice.setToolTipText(JvSwingUtils.wrapTooltip(true, MessageManager.formatMessage("label.view_service_doc_url", new String[]{service.docUrl,service.docUrl})));
         wsmenu.add(annotservice);
       }
     }
   }
-
-  
-  private boolean registerAAConWSInstance(final JMenu wsmenu,
-          final Jws2Instance service, final AlignFrame alignFrame)
-  {
-    final AlignAnalysisUIText aaui = service.getAlignAnalysisUI(); // null ; // AlignAnalysisUIText.aaConGUI.get(service.serviceType.toString());
-    if (aaui==null)
-    {
-      // not an instantaneous calculation GUI type service
-      return false;
-    }
-    // create the instaneous calculation GUI bits and update state if existing GUI elements already present
-    
-    JCheckBoxMenuItem _aaConEnabled = null;
-    for (int i = 0; i < wsmenu.getItemCount(); i++)
-    {
-      JMenuItem item = wsmenu.getItem(i);
-      if (item instanceof JCheckBoxMenuItem
-              && item.getText().equals(aaui.getAAconToggle()))
-      {
-        _aaConEnabled = (JCheckBoxMenuItem) item;
-      }
-    }
-    // is there an aaCon worker already present - if so, set it to use the
-    // given service handle
-    {
-      List<AlignCalcWorkerI> aaconClient = alignFrame.getViewport()
-              .getCalcManager()
-              .getRegisteredWorkersOfClass(aaui.getClient());
-      if (aaconClient != null && aaconClient.size() > 0)
-      {
-        JabawsAlignCalcWorker worker = (JabawsAlignCalcWorker) aaconClient.get(0);
-        if (!worker.service.hosturl.equals(service.hosturl))
-        {
-          // javax.swing.SwingUtilities.invokeLater(new Runnable()
-          {
-            // @Override
-            // public void run()
-            {
-              removeCurrentAAConWorkerFor(aaui, alignFrame);
-              buildCurrentAAConWorkerFor(aaui, alignFrame, service);
-            }
-          }// );
-        }
-      }
-    }
-
-    // is there a service already registered ? there shouldn't be if we are
-    // being called correctly
-    if (_aaConEnabled == null)
-    {
-      final JCheckBoxMenuItem aaConEnabled = new JCheckBoxMenuItem(
-              aaui.getAAconToggle());
-
-      aaConEnabled.setToolTipText("<html><p>"
-              + JvSwingUtils.wrapTooltip(aaui.getAAconToggleTooltip() + "</p>")
-              + "</html>");
-      aaConEnabled.addActionListener(new ActionListener()
-      {
-        @Override
-        public void actionPerformed(ActionEvent arg0)
-        {
-          List<AlignCalcWorkerI> aaconClient = alignFrame.getViewport()
-                  .getCalcManager()
-                  .getRegisteredWorkersOfClass(aaui.getClient());
-          if (aaconClient != null && aaconClient.size() > 0)
-          {
-            removeCurrentAAConWorkerFor(aaui, alignFrame);
-          }
-          else
-          {
-            buildCurrentAAConWorkerFor(aaui, alignFrame);
-
-          }
-        }
-
-      });
-      wsmenu.add(aaConEnabled);
-      final JMenuItem modifyParams = new JMenuItem(aaui.getAAeditSettings());
-      modifyParams.setToolTipText("<html><p>"
-              + JvSwingUtils.wrapTooltip(aaui.getAAeditSettingsTooltip() + "</p>")
-              + "</html>");
-      modifyParams.addActionListener(new ActionListener()
-      {
-
-        @Override
-        public void actionPerformed(ActionEvent arg0)
-        {
-          showAAConAnnotationSettingsFor(aaui, alignFrame);
-        }
-      });
-      wsmenu.add(modifyParams);
-      wsmenu.addMenuListener(new MenuListener()
-      {
-
-        @Override
-        public void menuSelected(MenuEvent arg0)
-        {
-          // TODO: refactor to the implementing class.
-          if (alignFrame.getViewport().getAlignment()
-                  .isNucleotide() ? aaui.isNa() : aaui.isPr()) {
-            aaConEnabled.setEnabled(true);
-            modifyParams.setEnabled(true);
-          }
-          else {
-            aaConEnabled.setEnabled(false);
-            modifyParams.setEnabled(false);
-          }
-          List<AlignCalcWorkerI> aaconClient = alignFrame.getViewport()
-                  .getCalcManager()
-                  .getRegisteredWorkersOfClass(aaui.getClient());
-          if (aaconClient != null && aaconClient.size() > 0)
-          {
-            aaConEnabled.setSelected(true);
-          }
-          else
-          {
-            aaConEnabled.setSelected(false);
-          }
-        }
-
-        @Override
-        public void menuDeselected(MenuEvent arg0)
-        {
-          // TODO Auto-generated method stub
-
-        }
-
-        @Override
-        public void menuCanceled(MenuEvent arg0)
-        {
-          // TODO Auto-generated method stub
-
-        }
-      });
-
-    }
-    return true;
-  }
-
-  private static void showAAConAnnotationSettingsFor(final AlignAnalysisUIText aaui, AlignFrame alignFrame)
-  {
-    /*
-     * preferred settings Whether AACon is automatically recalculated Which
-     * AACon server to use What parameters to use
-     */
-    // could actually do a class search for this too
-    AAConSettings fave = (AAConSettings) alignFrame.getViewport()
-            .getCalcIdSettingsFor(aaui.getCalcId());
-    if (fave == null)
-    {
-      fave = createDefaultAAConSettings(aaui);
-    }
-    new SequenceAnnotationWSClient(fave, alignFrame, true);
-
-  }
-
-  private static void buildCurrentAAConWorkerFor(final AlignAnalysisUIText aaui, AlignFrame alignFrame)
-  {
-    buildCurrentAAConWorkerFor(aaui, alignFrame, null);
-  }
-
-  private static void buildCurrentAAConWorkerFor(final AlignAnalysisUIText aaui, AlignFrame alignFrame,
-          Jws2Instance service)
-  {
-    /*
-     * preferred settings Whether AACon is automatically recalculated Which
-     * AACon server to use What parameters to use
-     */
-    AAConSettings fave = (AAConSettings) alignFrame.getViewport()
-            .getCalcIdSettingsFor(aaui.getCalcId());
-    if (fave == null)
-    {
-      fave = createDefaultAAConSettings(aaui, service);
-    }
-    else
-    {
-      if (service != null
-              && !fave.getService().hosturl.equals(service.hosturl))
-      {
-        Cache.log.debug("Changing AACon service to " + service.hosturl
-                + " from " + fave.getService().hosturl);
-        fave.setService(service);
-      }
-    }
-    new SequenceAnnotationWSClient(fave, alignFrame, false);
-  }
-
-  private static AAConSettings createDefaultAAConSettings(AlignAnalysisUIText aaui)
-  {
-    return createDefaultAAConSettings(aaui, null);
-  }
-
-  private static AAConSettings createDefaultAAConSettings(AlignAnalysisUIText aaui,
-          Jws2Instance service)
-  {
-    if (service != null)
-    {
-      if (!service.serviceType.toString().equals(
-              compbio.ws.client.Services.AAConWS.toString()))
-      {
-        Cache.log
-                .warn("Ignoring invalid preferred service for AACon calculations (service type was "
-                        + service.serviceType + ")");
-        service = null;
-      }
-      else
-      {
-        // check service is actually in the list of currently avaialable
-        // services
-        if (!Jws2Discoverer.getDiscoverer().getServices().contains(service))
-        {
-          // it isn't ..
-          service = null;
-        }
-      }
-    }
-    if (service == null)
-    {
-      // get the default service for AACon
-      service = Jws2Discoverer.getDiscoverer().getPreferredServiceFor(null,
-              aaui.getServiceType());
-    }
-    if (service == null)
-    {
-      // TODO raise dialog box explaining error, and/or open the JABA
-      // preferences menu.
-      throw new Error("No AACon service found.");
-    }
-    return new AAConSettings(true, service, null, null);
-  }
-
-  private static void removeCurrentAAConWorkerFor(AlignAnalysisUIText aaui, AlignFrame alignFrame)
-  {
-    alignFrame.getViewport().getCalcManager()
-            .removeRegisteredWorkersOfClass(aaui.getClient());
-  }
 }
index eff2128..e78172e 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.jws2.dm;
@@ -24,6 +26,7 @@ import java.util.List;
 import compbio.metadata.Argument;
 import compbio.metadata.Option;
 
+import jalview.util.MessageManager;
 import jalview.ws.jws2.JabaParamStore;
 import jalview.ws.jws2.JabaPreset;
 import jalview.ws.jws2.ParameterUtils;
@@ -90,7 +93,7 @@ public class AAConSettings extends jalview.ws.params.AutoCalcSetting
         return;
       }
       // Try even harder to migrate arguments.
-      throw new Error("Parameter migration not implemented yet");
+      throw new Error(MessageManager.getString("error.parameter_migration_not_implemented_yet"));
     }
   }
 
index f6202e1..995af35 100644 (file)
@@ -1,23 +1,26 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.jws2.dm;
 
+import jalview.util.MessageManager;
 import jalview.ws.jws2.ParameterUtils;
 import jalview.ws.params.OptionI;
 
@@ -51,13 +54,15 @@ public class JabaOption implements jalview.ws.params.OptionI
   @Override
   public URL getFurtherDetails()
   {
-    try {
-    return new URL(opt.getBasicURL().toExternalForm()+"/"+opt.getFurtherDetails());
-    }
-    catch (NullPointerException q) {}
-    catch (MalformedURLException q)
+    try
+    {
+      return new URL(opt.getBasicURL().toExternalForm() + "/"
+              + opt.getFurtherDetails());
+    } catch (NullPointerException q)
     {
-      
+    } catch (MalformedURLException q)
+    {
+
     }
     return null;
   }
@@ -90,8 +95,7 @@ public class JabaOption implements jalview.ws.params.OptionI
     } catch (Exception e)
     {
       e.printStackTrace();
-      throw new Error(
-              "Implementation error: cannot set Jaba Option to a value outside its allowed value range!");
+      throw new Error(MessageManager.getString("error.implementation_error_cannot_set_jaba_option"));
     }
   }
 
index 02cc167..dac8648 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.jws2.dm;
index dd07c9d..920b73e 100644 (file)
@@ -1,25 +1,28 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.jws2.dm;
 
 import compbio.metadata.ValueConstrain;
 
+import jalview.util.MessageManager;
 import jalview.ws.params.ValueConstrainI;
 
 public class JabaValueConstrain implements ValueConstrainI
@@ -43,9 +46,7 @@ public class JabaValueConstrain implements ValueConstrainI
     {
       return ValueType.Integer;
     }
-    throw new Error(
-            "IMPLEMENTATION ERROR: jalview.ws.params.ValueConstrainI.ValueType does not support the JABAWS type :"
-                    + vc.toString());
+    throw new Error(MessageManager.formatMessage("error.implementation_error_valuetype_doesnt_support_jabaws_type", new String[]{vc.toString()}));
   }
 
   @Override
index 5cd93e6..d6d1d5c 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.jws2.dm;
@@ -23,6 +25,7 @@ import java.util.List;
 
 import compbio.metadata.Option;
 
+import jalview.util.MessageManager;
 import jalview.ws.jws2.JabaParamStore;
 import jalview.ws.params.ArgumentI;
 import jalview.ws.params.WsParamSetI;
@@ -51,8 +54,7 @@ public class JabaWsParamSet implements WsParamSetI
       {
         if (!allJaba(jobParams))
         {
-          throw new Error(
-                  "Cannot create a JabaWSParamSet from non-JabaWS parameters");
+          throw new Error(MessageManager.getString("error.cannot_create_jabaws_param_set"));
         }
         else
         {
@@ -175,8 +177,7 @@ public class JabaWsParamSet implements WsParamSetI
   {
     if (!allJaba(args))
     {
-      throw new Error(
-              "Cannot set arguments to a JabaWSParamSet that are not JabaWS arguments");
+      throw new Error(MessageManager.getString("error.cannot_set_arguments_to_jabaws_param_set"));
     }
     jabaArguments = new ArrayList<Option>();
     for (ArgumentI rg : args)
index f21c29d..120ce27 100644 (file)
@@ -1,25 +1,28 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.jws2.jabaws2;
 
 import jalview.gui.AlignFrame;
 import jalview.gui.Desktop;
+import jalview.util.MessageManager;
 import jalview.ws.jws2.JabaParamStore;
 import jalview.ws.jws2.MsaWSClient;
 import jalview.ws.jws2.SequenceAnnotationWSClient;
@@ -51,11 +54,17 @@ public class Jws2Instance
 
   /**
    * 
-   * @param hosturl Service endpoint
-   * @param serviceType Category for this service's analysis
-   * @param action text describing their action that service performs (eg 'aligning', 'analysing')
-   * @param description Description from JABAWS registry
-   * @param service JABAWS registry ID for service
+   * @param hosturl
+   *          Service endpoint
+   * @param serviceType
+   *          Category for this service's analysis
+   * @param action
+   *          text describing their action that service performs (eg 'aligning',
+   *          'analysing')
+   * @param description
+   *          Description from JABAWS registry
+   * @param service
+   *          JABAWS registry ID for service
    */
   public Jws2Instance(String hosturl, String serviceType, String action,
           String description, JABAService service)
@@ -148,9 +157,7 @@ public class Jws2Instance
     {
       return ((SequenceAnnotation) service).getRunnerOptions();
     }
-    throw new Error(
-            "Implementation Error: Runner Config not available for a JABAWS service of type "
-                    + serviceType + " (" + service.getClass() + ")");
+    throw new Error(MessageManager.formatMessage("error.implementation_error_runner_config_not_available", new String[]{serviceType,service.getClass().toString()}));
   }
 
   @Override
@@ -233,7 +240,9 @@ public class Jws2Instance
   {
     return "java:" + serviceType;
   }
+
   jalview.ws.uimodel.AlignAnalysisUIText aaui;
+
   public jalview.ws.uimodel.AlignAnalysisUIText getAlignAnalysisUI()
   {
     return aaui;
index 5907713..bcc7735 100644 (file)
@@ -1,20 +1,43 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
 package jalview.ws.jws2.jabaws2;
 
 import java.util.HashMap;
 
 import compbio.data.msa.JABAService;
-
 import jalview.ws.jws2.AAConClient;
+import jalview.ws.jws2.JPred301Client;
 import jalview.ws.jws2.RNAalifoldClient;
 import jalview.ws.uimodel.AlignAnalysisUIText;
 
 public class Jws2InstanceFactory
 {
   private static HashMap<String, AlignAnalysisUIText> aaConGUI;
+
   private static String category_rewrite(String cat_name)
   {
-    return (cat_name != null && cat_name.equals("Prediction")) ? "Secondary Structure Prediction" : cat_name;
+    return (cat_name != null && cat_name.equals("Prediction")) ? "Secondary Structure Prediction"
+            : cat_name;
   }
+
   private static void init()
   {
     if (aaConGUI == null)
@@ -24,6 +47,8 @@ public class Jws2InstanceFactory
               AAConClient.getAlignAnalysisUITest());
       aaConGUI.put(compbio.ws.client.Services.RNAalifoldWS.toString(),
               RNAalifoldClient.getAlignAnalysisUITest());
+      aaConGUI.put(compbio.ws.client.Services.JpredWS.toString(),
+              JPred301Client.getAlignAnalysisUITest());
     }
   }
 
@@ -43,9 +68,9 @@ public class Jws2InstanceFactory
           JABAService service)
   {
     init();
-    Jws2Instance svc = new Jws2Instance(jwsservers, serviceType, category_rewrite(name),
-            description, service);
-    
+    Jws2Instance svc = new Jws2Instance(jwsservers, serviceType,
+            category_rewrite(name), description, service);
+
     svc.aaui = aaConGUI.get(serviceType.toString());
     return svc;
   }
index 7d13d8b..b2a247f 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.params;
index 1a28326..fe7c4a0 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.params;
index ac5e135..f2adbd2 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.params;
index 2aca4b9..17e2f01 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.params;
index 3074ad4..0d653af 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.params;
index e067228..60bee66 100644 (file)
@@ -1,24 +1,25 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.params;
 
-
 /**
  * Interface implemented by classes for maintaining user's parameters in a
  * Jalview session
index 678047c..0dd3b0c 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.params;
index ed4080b..eaba0a4 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.params;
index c1be913..2dc2c71 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.params;
index d4076ff..d0ae16a 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.params.simple;
index 94a054b..7a13b41 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.params.simple;
index 0ce9f09..5378dbd 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.params.simple;
index 40bf6fa..7bd64be 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.params.simple;
index 3f3a3cf..399441f 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.params.simple;
index df7573b..da583fd 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.rest;
index 3654620..5af6b32 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.rest;
@@ -24,6 +26,7 @@ import jalview.io.packed.DataProvider;
 import jalview.io.packed.ParsePackedSet;
 import jalview.io.packed.SimpleDataProvider;
 import jalview.io.packed.DataProvider.JvDataType;
+import jalview.util.MessageManager;
 import jalview.ws.io.mime.JalviewMimeContentHandler;
 
 import java.io.BufferedReader;
@@ -108,8 +111,7 @@ public class HttpResultSet extends FileParse
 
     if (en == null)
     {
-      throw new Error(
-              "Implementation Error: need to have an HttpResponse to process.");
+      throw new Error(MessageManager.getString("error.implementation_error_need_to_have_httpresponse"));
     }
     jalview.io.packed.JalviewDataset ds = restJob.newJalviewDataset();
     // Decide how we deal with content.
index a0ef868..c3faf9d 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.rest;
index a332c40..69fe7f2 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.rest;
index ceb2809..cd4bb23 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.rest;
@@ -37,6 +39,7 @@ import jalview.gui.AlignmentPanel;
 import jalview.gui.Desktop;
 import jalview.gui.WebserviceInfo;
 import jalview.io.packed.DataProvider.JvDataType;
+import jalview.util.MessageManager;
 import jalview.ws.WSClient;
 import jalview.ws.WSClientI;
 import jalview.ws.WSMenuEntryProviderI;
@@ -79,8 +82,11 @@ public class RestClient extends WSClient implements WSClientI,
   {
     this(service2, alignFrame, false);
   }
+
   boolean headless = false;
-  public RestClient(RestServiceDescription service2, AlignFrame alignFrame, boolean nogui)
+
+  public RestClient(RestServiceDescription service2, AlignFrame alignFrame,
+          boolean nogui)
   {
     service = service2;
     af = alignFrame;
@@ -91,8 +97,7 @@ public class RestClient extends WSClient implements WSClientI,
 
   public void setWebserviceInfo(boolean headless)
   {
-    WebServiceJobTitle = service.details.Action + " using "
-            + service.details.Name;
+    WebServiceJobTitle = MessageManager.formatMessage("label.webservice_job_title", new String[]{service.details.Action,service.details.Name});
     WebServiceName = service.details.Name;
     WebServiceReference = "No reference - go to url for more info";
     if (service.details.description != null)
@@ -135,8 +140,7 @@ public class RestClient extends WSClient implements WSClientI,
           final AlignFrame alignFrame)
   {
     JMenuItem submit = new JMenuItem(service.details.Name);
-    submit.setToolTipText(service.details.Action + " using "
-            + service.details.Name);
+    submit.setToolTipText(MessageManager.formatMessage("label.rest_client_submit", new String[]{service.details.Action,service.details.Name}));
     submit.addActionListener(new ActionListener()
     {
 
@@ -226,6 +230,7 @@ public class RestClient extends WSClient implements WSClientI,
    * informative name for results
    */
   public String viewTitle;
+
   protected void constructJob()
   {
     service.setInvolvesFlags();
@@ -252,9 +257,7 @@ public class RestClient extends WSClient implements WSClientI,
           _input = new AlignmentView(av.getAlignment(),
                   av.getColumnSelection(), av.getSelectionGroup(),
                   av.hasHiddenColumns(), true, true);
-          viewTitle = "selected "
-                  + (av.hasHiddenColumns() ? "visible" : "")
-                  + " region of " + af.getTitle();
+          viewTitle = MessageManager.formatMessage("label.select_visible_region_of", new String[]{(av.hasHiddenColumns() ? MessageManager.getString("label.visible") : ""),af.getTitle()});
         }
         else
         {
@@ -263,9 +266,7 @@ public class RestClient extends WSClient implements WSClientI,
                   av.getColumnSelection(), av.getSelectionGroup(),
                   av.hasHiddenColumns(), false, true);
         }
-        viewTitle = "select and unselected "
-                + (av.hasHiddenColumns() ? "visible" : "")
-                + " regions from " + af.getTitle();
+        viewTitle = MessageManager.formatMessage("label.select_unselect_visible_regions_from", new String[]{(av.hasHiddenColumns() ? MessageManager.getString("label.visible") : ""),af.getTitle()});
       }
       else
       {
@@ -273,8 +274,7 @@ public class RestClient extends WSClient implements WSClientI,
         _input = new AlignmentView(av.getAlignment(),
                 av.getColumnSelection(), av.getSelectionGroup(),
                 av.hasHiddenColumns(), true, true);
-        viewTitle = "selected " + (av.hasHiddenColumns() ? "visible" : "")
-                + " region of " + af.getTitle();
+        viewTitle = MessageManager.formatMessage("label.select_visible_region_of", new String[]{(av.hasHiddenColumns() ? MessageManager.getString("label.visible") : ""),af.getTitle()});
       }
     }
     else
@@ -283,7 +283,7 @@ public class RestClient extends WSClient implements WSClientI,
       _input = new AlignmentView(av.getAlignment(),
               av.getColumnSelection(), null, av.hasHiddenColumns(), false,
               true);
-      viewTitle = "" + (av.hasHiddenColumns() ? "visible region of " : "")
+      viewTitle = "" + (av.hasHiddenColumns() ? (new StringBuffer(" ").append(MessageManager.getString("label.visible_region_of")).toString()) : "")
               + af.getTitle();
     }
 
@@ -292,7 +292,8 @@ public class RestClient extends WSClient implements WSClientI,
     if (jobsthread.isValid())
     {
       setWebserviceInfo(headless);
-      if (!headless) {
+      if (!headless)
+      {
         wsInfo.setthisService(this);
         jobsthread.setWebServiceInfo(wsInfo);
       }
@@ -305,15 +306,15 @@ public class RestClient extends WSClient implements WSClientI,
               .showMessageDialog(
                       Desktop.desktop,
                       (jobsthread.hasWarnings() ? jobsthread.getWarnings()
-                              : "The Job couldn't be started. Please check your input, and the Jalview console for any warning messages."),
-                      "Unable to start web service analysis",
+                              : MessageManager.getString("label.job_couldnt_be_started_check_input")),
+                      MessageManager.getString("label.unable_start_web_service_analysis"),
                       JOptionPane.WARNING_MESSAGE);
     }
   }
 
   public static RestClient makeShmmrRestClient()
   {
-    String action = "Analysis", description = "Sequence Harmony and Multi-Relief (Brandt et al. 2010)", name = "Multi-Harmony";
+    String action = "Analysis", description = "Sequence Harmony and Multi-Relief (Brandt et al. 2010)", name = MessageManager.getString("label.multiharmony");
     Hashtable<String, InputType> iparams = new Hashtable<String, InputType>();
     jalview.ws.rest.params.JobConstant toolp;
     // toolp = new jalview.ws.rest.JobConstant("tool","jalview");
index d41cfc0..c4afd0c 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.rest;
@@ -88,13 +90,15 @@ public class RestJob extends AWsJob
     // get sequences for the alignmentI
     // get groups trimmed to alignment columns
     // get any annotation trimmed to start/end columns, too.
-    squniq = jalview.analysis.SeqsetUtils.uniquify(_input.getSequencesArray(), true);
+    squniq = jalview.analysis.SeqsetUtils.uniquify(
+            _input.getSequencesArray(), true);
     // prepare input
     // form alignment+groups+annotation,preprocess and then record references
     // for formatters
     ArrayList<InputType> alinp = new ArrayList<InputType>();
     int paramsWithData = 0;
-    // TODO: JAL-715 - generalise the following validation logic for all parameter types
+    // TODO: JAL-715 - generalise the following validation logic for all
+    // parameter types
     // we cheat for moment - since we know a-priori what data is available and
     // what inputs we have implemented so far
     for (Map.Entry<String, InputType> prm : rsd.inputParams.entrySet())
@@ -111,7 +115,9 @@ public class RestJob extends AWsJob
                   && _input.getGroups() != null
                   && _input.getGroups().size() >= -1 + prm.getValue().min)
           {
-            // the test above is not rigorous but fixes JAL-1298, since submission will fail if the partition set doesn't contain at least one partition
+            // the test above is not rigorous but fixes JAL-1298, since
+            // submission will fail if the partition set doesn't contain at
+            // least one partition
             alinp.add(prm.getValue());
           }
           else
index 2aa071d..738d5dd 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.rest;
@@ -34,6 +36,7 @@ import jalview.gui.WebserviceInfo;
 import jalview.io.NewickFile;
 import jalview.io.packed.JalviewDataset;
 import jalview.io.packed.JalviewDataset.AlignmentSet;
+import jalview.util.MessageManager;
 import jalview.ws.AWSThread;
 import jalview.ws.AWsJob;
 
@@ -803,7 +806,7 @@ public class RestJobThread extends AWSThread
               destAls.add(destAl);
               destColsel.add(destCs);
               resultDest.add(AddDataTo.newAlignment);
-              throw new Error("Impl. Error! TODO: ");
+              throw new Error(MessageManager.getString("error.implementation_error")+"TODO: ");
             }
           }
           /**
@@ -1039,9 +1042,7 @@ public class RestJobThread extends AWSThread
     {
       AlignmentI destal;
       ColumnSelection destcs;
-      String alTitle = restClient.service.details.Action + " using "
-              + restClient.service.details.Name + " on "
-              + restClient.viewTitle;
+      String alTitle = MessageManager.formatMessage("label.webservice_job_title_on", new String[]{restClient.service.details.Action,restClient.service.details.Name,restClient.viewTitle});
       switch (action)
       {
       case newAlignment:
index 02c0bbf..6f304a9 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.rest;
index d6af1c4..e6905ee 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.rest.params;
index 9aeeb9a..0268c35 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.rest.params;
index 968011c..0bade86 100644 (file)
@@ -1,23 +1,26 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.rest.params;
 
+import jalview.util.MessageManager;
 import jalview.ws.params.OptionI;
 import jalview.ws.rest.InputType;
 import jalview.ws.rest.NoValidInputDataException;
@@ -77,7 +80,7 @@ public class JobConstant extends InputType
         prm.add(URLEncoder.encode(value, "UTF-8"));
       } catch (UnsupportedEncodingException ex)
       {
-        throw new Error("Couldn't encode '" + value + "' as UTF-8.", ex);
+        throw new Error(MessageManager.formatMessage("error.couldnt_encode_as_utf8", new String[]{value}), ex);
 
       }
     }
index 87a1d9a..70686c5 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.rest.params;
@@ -21,6 +23,7 @@ package jalview.ws.rest.params;
 import jalview.datamodel.AlignmentI;
 import jalview.datamodel.SequenceGroup;
 import jalview.datamodel.SequenceI;
+import jalview.util.MessageManager;
 import jalview.ws.params.OptionI;
 import jalview.ws.params.simple.IntegerParameter;
 import jalview.ws.params.simple.Option;
@@ -89,7 +92,7 @@ public class SeqGroupIndexVector extends InputType implements
     // assume that alignment is properly ordered so groups form consecutive
     // blocks
     ArrayList<int[]> gl = new ArrayList<int[]>();
-    int p = 0,lowest=al.getHeight(), highest=0;
+    int p = 0, lowest = al.getHeight(), highest = 0;
     List<SequenceGroup> sgs;
     synchronized (sgs = al.getGroups())
     {
@@ -97,8 +100,7 @@ public class SeqGroupIndexVector extends InputType implements
       {
         if (sg.getSize() < minsize)
         {
-          throw new NoValidInputDataException("Group contains less than "
-                  + minsize + " sequences.");
+          throw new NoValidInputDataException(MessageManager.formatMessage("exception.notvaliddata_group_contains_less_than_min_seqs", new String[]{Integer.valueOf(minsize).toString()}));
         }
         // TODO: refactor to sequenceGroup for efficiency -
         // getAlignmentRowInterval(AlignmentI al)
@@ -106,13 +108,13 @@ public class SeqGroupIndexVector extends InputType implements
         for (SequenceI sq : sg.getSequencesInOrder(al))
         {
           p = al.findIndex(sq);
-          if (lowest>p)
+          if (lowest > p)
           {
-            lowest=p;
+            lowest = p;
           }
-          if (highest<p)
+          if (highest < p)
           {
-            highest=p;
+            highest = p;
           }
           if (se == null)
           {
@@ -137,14 +139,15 @@ public class SeqGroupIndexVector extends InputType implements
     // remaining group ? - these might be at the start or the end
     if (gl.size() > 0)
     {
-      if (lowest-1>minsize)
+      if (lowest - 1 > minsize)
       {
         gl.add(0, new int[]
-          { 0, lowest-2});
+        { 0, lowest - 2 });
       }
-      if ((al.getHeight()-1-highest)>minsize)
+      if ((al.getHeight() - 1 - highest) > minsize)
       {
-        gl.add(new int[] { highest+1, al.getHeight()-1});
+        gl.add(new int[]
+        { highest + 1, al.getHeight() - 1 });
       }
     }
     else
index 05acb23..cee0ce2 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.rest.params;
index 8dd5dfd..ff33bb5 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.rest.params;
index db4ce8b..2c58ed8 100644 (file)
@@ -1,23 +1,26 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.rest.params;
 
+import jalview.util.MessageManager;
 import jalview.ws.params.OptionI;
 import jalview.ws.rest.InputType;
 import jalview.ws.rest.RestJob;
@@ -51,7 +54,7 @@ public class Tree extends InputType
     /*
      * rj.getTreeForInput(token); return new StringBody(new )
      */
-    throw new Error("Tree InputType not yet implemented");
+    throw new Error(MessageManager.getString("error.tree_inputtype_not_yet_implemented"));
     // return null;
   }
 
index 8b63184..ba7e062 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.seqfetcher;
@@ -22,6 +24,7 @@ import jalview.datamodel.AlignmentI;
 import jalview.datamodel.DBRefEntry;
 import jalview.datamodel.SequenceI;
 import jalview.util.DBRefUtils;
+import jalview.util.MessageManager;
 
 import java.util.ArrayList;
 import java.util.Enumeration;
@@ -273,10 +276,11 @@ public class ASequenceFetcher
       DbSourceProxy[] l = dblist.values().toArray(new DbSourceProxy[0]);
       int i = 0;
       String[] nm = new String[l.length];
-      // make sure standard dbs appear first, followed by reference das sources, followed by anything else.
+      // make sure standard dbs appear first, followed by reference das sources,
+      // followed by anything else.
       for (DbSourceProxy s : l)
       {
-        nm[i++] = ""+s.getTier()+s.getDbName().toLowerCase();
+        nm[i++] = "" + s.getTier() + s.getDbName().toLowerCase();
       }
       jalview.util.QuickSort.sort(nm, l);
       dbs = new ArrayList<DbSourceProxy>();
@@ -323,7 +327,7 @@ public class ASequenceFetcher
     } catch (Exception e)
     {
       // Serious problems if this happens.
-      throw new Error("DBRefSource Implementation Exception", e);
+      throw new Error(MessageManager.getString("error.dbrefsource_implementation_exception"), e);
     }
     addDbRefSourceImpl(proxy);
   }
@@ -391,9 +395,7 @@ public class ASequenceFetcher
   {
     if (!jalview.ws.seqfetcher.DbSourceProxy.class.isAssignableFrom(class1))
     {
-      throw new Error(
-              "Implmentation Error - getDbInstances must be given a class that implements jalview.ws.seqfetcher.DbSourceProxy (was given '"
-                      + class1 + "')");
+      throw new Error(MessageManager.formatMessage("error.implementation_error_dbinstance_must_implement_interface", new String[]{class1.toString()}));
     }
     if (FETCHABLEDBS == null)
     {
index 3a50fb5..c45a465 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.seqfetcher;
@@ -138,7 +140,7 @@ public interface DbSourceProxy
 
   /**
    * Tier for this data source
-   *  
+   * 
    * @return 0 - primary datasource, 1 - das primary source, 2 - secondary
    */
   public int getTier();
index bdd21fd..120f1b2 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.seqfetcher;
index 0d018a3..d937f15 100644 (file)
@@ -1,3 +1,23 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
 package jalview.ws.uimodel;
 
 import java.util.HashMap;
@@ -112,4 +132,4 @@ public class AlignAnalysisUIText
     AAeditSettingsTooltip = aAeditSettingsTooltip;
   }
 
-}
\ No newline at end of file
+}
index 0674d05..617542f 100755 (executable)
@@ -1,21 +1,27 @@
 /*
- Copyright Paul James Mutton, 2001-2004, http://www.jibble.org/
-
- This file is part of EpsGraphics2D.
-
- This software is dual-licensed, allowing you to choose between the GNU
- General Public License (GPL) and the www.jibble.org Commercial License.
- Since the GPL may be too restrictive for use in a proprietary application,
- a commercial license is also provided. Full license information can be
- found at http://www.jibble.org/licenses/
-
- $Author$
- $Id$
-
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
-
 package org.jibble.epsgraphics;
 
+import jalview.util.MessageManager;
+
 import java.io.*;
 import java.util.*;
 
@@ -153,7 +159,7 @@ public class EpsDocument
       _bufferedWriter.write(line + "\n");
     } catch (IOException e)
     {
-      throw new EpsException("Could not write to the output file: " + e);
+      throw new EpsException(MessageManager.formatMessage("exception.eps_coudnt_write_output_file", new String[]{e.getMessage()}));
     }
   }
 
index c860500..68147da 100755 (executable)
@@ -1,19 +1,23 @@
 /*
- Copyright Paul James Mutton, 2001-2004, http://www.jibble.org/
-
- This file is part of EpsGraphics2D.
-
- This software is dual-licensed, allowing you to choose between the GNU
- General Public License (GPL) and the www.jibble.org Commercial License.
- Since the GPL may be too restrictive for use in a proprietary application,
- a commercial license is also provided. Full license information can be
- found at http://www.jibble.org/licenses/
-
- $Author$
- $Id$
-
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
-
 package org.jibble.epsgraphics;
 
 public class EpsException extends RuntimeException
@@ -24,4 +28,4 @@ public class EpsException extends RuntimeException
     super(message);
   }
 
-}
\ No newline at end of file
+}
index 63b10d9..ca1b304 100755 (executable)
@@ -1,21 +1,27 @@
 /*
- Copyright Paul James Mutton, 2001-2004, http://www.jibble.org/
-
- This file is part of EpsGraphics2D.
-
- This software is dual-licensed, allowing you to choose between the GNU
- General Public License (GPL) and the www.jibble.org Commercial License.
- Since the GPL may be too restrictive for use in a proprietary application,
- a commercial license is also provided. Full license information can be
- found at http://www.jibble.org/licenses/
-
- $Author$
- $Id$
-
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
-
 package org.jibble.epsgraphics;
 
+import jalview.util.MessageManager;
+
 import java.io.*;
 import java.text.*;
 import java.util.*;
@@ -157,9 +163,7 @@ public class EpsGraphics2D extends java.awt.Graphics2D
    */
   private void methodNotSupported()
   {
-    EpsException e = new EpsException(
-            "Method not currently supported by EpsGraphics2D version "
-                    + VERSION);
+    EpsException e = new EpsException(MessageManager.formatMessage("exception.eps_method_not_supported", new String[]{VERSION}));
     e.printStackTrace(System.err);
   }
 
@@ -991,8 +995,7 @@ public class EpsGraphics2D extends java.awt.Graphics2D
         return t.createTransformedShape(_clip);
       } catch (Exception e)
       {
-        throw new EpsException("Unable to get inverse of matrix: "
-                + _transform);
+        throw new EpsException(MessageManager.formatMessage("exception.eps_unable_to_get_inverse_matrix", new String[]{_transform.toString()}));
       }
     }
   }
@@ -1310,7 +1313,7 @@ public class EpsGraphics2D extends java.awt.Graphics2D
       matrix = matrix.createInverse();
     } catch (Exception e)
     {
-      throw new EpsException("Unable to get inverse of matrix: " + matrix);
+        throw new EpsException(MessageManager.formatMessage("exception.eps_unable_to_get_inverse_matrix", new String[]{matrix.toString()}));
     }
     matrix.scale(1, -1);
     matrix.getMatrix(m);
@@ -1441,4 +1444,4 @@ public class EpsGraphics2D extends java.awt.Graphics2D
 
   private static FontRenderContext _fontRenderContext = new FontRenderContext(
           null, false, true);
-}
\ No newline at end of file
+}
index 2469db5..b181d55 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package uk.ac.ebi.picr.model;
index 65a1092..f119d96 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package uk.ac.ebi.picr.model;
index 8a82575..6dd4a03 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package uk.ac.ebi.picr.model;
index 54da470..a45d8ce 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package uk.ac.ebi.picr.model;
index 29206cc..77e7438 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package uk.ac.ebi.www;
index a6a57f5..c95ba3c 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package uk.ac.ebi.www;
index 1cb0841..3a3b57e 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package uk.ac.ebi.www;
index 9b891a8..9bd24ef 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package uk.ac.ebi.www;
index 5bb0475..1ca8782 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package uk.ac.ebi.www;
index 5e5ba13..2dcbe26 100755 (executable)
@@ -1,23 +1,27 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package uk.ac.ebi.www;
 
+import jalview.util.MessageManager;
+
 public class WSWUBlastServiceLocator extends org.apache.axis.client.Service
         implements uk.ac.ebi.www.WSWUBlastService
 {
@@ -93,10 +97,7 @@ public class WSWUBlastServiceLocator extends org.apache.axis.client.Service
     {
       throw new javax.xml.rpc.ServiceException(t);
     }
-    throw new javax.xml.rpc.ServiceException(
-            "There is no stub implementation for the interface:  "
-                    + (serviceEndpointInterface == null ? "null"
-                            : serviceEndpointInterface.getName()));
+    throw new javax.xml.rpc.ServiceException(MessageManager.formatMessage("exception.no_stub_implementation_for_interface", new String[]{(serviceEndpointInterface == null ? "null": serviceEndpointInterface.getName())}));
   }
 
   /**
index 5059842..fe4e4c5 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package uk.ac.ebi.www;
index 235508b..25d1fdd 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package uk.ac.ebi.www.picr.AccessionMappingService;
index b199ee8..09cbf21 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package uk.ac.ebi.www.picr.AccessionMappingService;
index 02ea047..03c3ea3 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package uk.ac.ebi.www.picr.AccessionMappingService;
index 1336c78..855c1fe 100644 (file)
@@ -1,23 +1,27 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package uk.ac.ebi.www.picr.AccessionMappingService;
 
+import jalview.util.MessageManager;
+
 public class AccessionMapperServiceLocator extends
         org.apache.axis.client.Service implements
         uk.ac.ebi.www.picr.AccessionMappingService.AccessionMapperService
@@ -109,10 +113,7 @@ public class AccessionMapperServiceLocator extends
     {
       throw new javax.xml.rpc.ServiceException(t);
     }
-    throw new javax.xml.rpc.ServiceException(
-            "There is no stub implementation for the interface:  "
-                    + (serviceEndpointInterface == null ? "null"
-                            : serviceEndpointInterface.getName()));
+    throw new javax.xml.rpc.ServiceException(MessageManager.formatMessage("exception.no_stub_implementation_for_interface", new String[]{(serviceEndpointInterface == null ? "null": serviceEndpointInterface.getName())}));
   }
 
   /**
@@ -173,8 +174,7 @@ public class AccessionMapperServiceLocator extends
     }
     else
     { // Unknown Port Name
-      throw new javax.xml.rpc.ServiceException(
-              " Cannot set Endpoint Address for Unknown Port" + portName);
+      throw new javax.xml.rpc.ServiceException(MessageManager.formatMessage("exception.cannot_set_endpoint_address_unknown_port", new String[]{portName}));
     }
   }
 
index 9c05ef5..5012168 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package vamsas;
index e03b768..ad004b0 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package vamsas.objects.simple;
index 0c9e127..a53d579 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package vamsas.objects.simple;
index a6f3877..e0d7021 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package vamsas.objects.simple;
index b2baf3f..db902c7 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package vamsas.objects.simple;
index 939c4c4..99cab57 100755 (executable)
@@ -1,38 +1,22 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
- */
-/*
- * Jalview - A Sequence Alignment Editor and Viewer
- * Copyright (C) 2007 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package vamsas.objects.simple;
 
index c9f5ea1..b607bfb 100755 (executable)
@@ -1,39 +1,24 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
- */
-/*
- * Jalview - A Sequence Alignment Editor and Viewer
- * Copyright (C) 2007 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
+
 package vamsas.objects.simple;
 
 public class MsaResult_Helper
index 5aaf0db..03cb186 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package vamsas.objects.simple;
index c50c5be..547eb3d 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package vamsas.objects.simple;
index 5e491d6..c66e7d3 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package vamsas.objects.simple;
index a45718b..6c84b04 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package vamsas.objects.simple;
index d0ac976..7c09741 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package vamsas.objects.simple;
index d2d4960..a9a0a37 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package vamsas.objects.simple;
index 1a14efb..9ec9294 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package vamsas.objects.simple;
index b7f059b..7980d9d 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package vamsas.objects.simple;
index 058830d..6e878a3 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package vamsas.objects.simple;
index 7076c33..a4ae4b8 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package vamsas.objects.simple;
index 2f6d742..52770ad 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package vamsas.objects.simple;
index 9aaca58..d72419f 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package vamsas.objects.simple;
index 181be98..6f6b042 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package vamsas.objects.simple;
index 9f56351..116ae42 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package vamsas.objects.simple;
index 476df91..ba514f5 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package vamsas.objects.simple;
index 5d9f216..363189a 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package vamsas.objects.simple;
index 2104d4a..18b4252 100644 (file)
@@ -1,3 +1,23 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
 package jalview.analysis;
 
 import static org.junit.Assert.assertTrue;
index da2fac4..708ee21 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.analysis;
@@ -87,7 +89,6 @@ public class DnaTranslation
           + "GCTACAACCATCCCTTCAGACAGGATCAGAAGAACTTAAATCATTATATAATACAGTAGCAACCCTCTATTG\n"
           + "TGTACATCAAAGGATAGAGATAAAAGACACCAAGGAAGCTTTAGAA\n";
 
-  
   @Test
   public void translationWithUntranslatableCodonsTest()
   {
@@ -96,8 +97,9 @@ public class DnaTranslation
     jalview.datamodel.AlignmentI alf = null;
     try
     {
-      alf = new jalview.io.FormatAdapter().readFile(JAL_1312_example_align_fasta,
-              jalview.io.FormatAdapter.PASTE, "FASTA");
+      alf = new jalview.io.FormatAdapter().readFile(
+              JAL_1312_example_align_fasta, jalview.io.FormatAdapter.PASTE,
+              "FASTA");
     } catch (IOException x)
     {
       x.printStackTrace();
diff --git a/test/jalview/analysis/TestAlignSeq.java b/test/jalview/analysis/TestAlignSeq.java
new file mode 100644 (file)
index 0000000..ca4f18d
--- /dev/null
@@ -0,0 +1,77 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
+package jalview.analysis;
+
+import static org.junit.Assert.*;
+import jalview.datamodel.Mapping;
+import jalview.datamodel.Sequence;
+import jalview.datamodel.SequenceI;
+
+import org.junit.Before;
+import org.junit.Test;
+
+/**
+ * Test the alignment -> Mapping routines
+ * 
+ * @author jimp
+ * 
+ */
+public class TestAlignSeq
+{
+
+  SequenceI s1, s2, s3;
+
+  /**
+   * @throws java.lang.Exception
+   */
+  @Before
+  public void setUp() throws Exception
+  {
+    s1 = new Sequence("Seq1", "ASDFAQQQRRRSSS");
+    s1.setStart(3);
+    s2 = new Sequence("Seq2", "ASDFA");
+    s2.setStart(5);
+    s3 = new Sequence("Seq1", "SDFAQQQSSS");
+
+  }
+
+  @Test
+  /**
+   * simple test that mapping from alignment corresponds identical positions.
+   */
+  public void TestGetMappingForS1()
+  {
+    jalview.analysis.AlignSeq as = jalview.analysis.AlignSeq
+            .doGlobalNWAlignment(s1, s2, AlignSeq.PEP);
+    System.out.println("s1: " + as.getAStr1());
+    System.out.println("s2: " + as.getAStr2());
+
+    Mapping s1tos2 = as.getMappingFromS1(false);
+    System.out.println(s1tos2.getMap().toString());
+    for (int i = s2.getStart(); i < s2.getEnd(); i++)
+    {
+      System.out.println("Position in s2: " + i
+              + " maps to position in s1: " + s1tos2.getPosition(i));
+      assertTrue("", s2.getCharAt(i) == s1.getCharAt(s1tos2.getPosition(i)));
+    }
+  }
+
+}
index a1c41c7..b86eebd 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.0b1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.bin;
@@ -41,30 +43,46 @@ public class CommandLineOperations
   public static void tearDownAfterClass() throws Exception
   {
   }
-/***
- * from http://stackoverflow.com/questions/808276/how-to-add-a-timeout-value-when-using-javas-runtime-exec
- * @author jimp
- *
- */
-private static class Worker extends Thread {
-  private final Process process;
-  private Integer exit;
-  private Worker(Process process) {
-    this.process = process;
-  }
-  public void run() {
-    try { 
-      exit = process.waitFor();
-    } catch (InterruptedException ignore) {
-      return;
+
+  /***
+   * from
+   * http://stackoverflow.com/questions/808276/how-to-add-a-timeout-value-when
+   * -using-javas-runtime-exec
+   * 
+   * @author jimp
+   * 
+   */
+  private static class Worker extends Thread
+  {
+    private final Process process;
+
+    private Integer exit;
+
+    private Worker(Process process)
+    {
+      this.process = process;
+    }
+
+    public void run()
+    {
+      try
+      {
+        exit = process.waitFor();
+      } catch (InterruptedException ignore)
+      {
+        return;
+      }
     }
   }
-}
-private Worker jalviewDesktopRunner(boolean withAwt, String cmd, int timeout) throws InterruptedException, IOException
+
+  private Worker jalviewDesktopRunner(boolean withAwt, String cmd,
+          int timeout) throws InterruptedException, IOException
   {
-    String _cmd = "java "+(withAwt ? "-Djava.awt.headless=true":"")+" -Djava.ext.dirs=./lib -classpath ./classes jalview.bin.Jalview ";
-    System.out.println("###############Jalview CMD: " + _cmd+cmd);
-    Process ls2_proc = Runtime.getRuntime().exec(_cmd+cmd);
+    String _cmd = "java "
+            + (withAwt ? "-Djava.awt.headless=true" : "")
+            + " -Djava.ext.dirs=./lib -classpath ./classes jalview.bin.Jalview ";
+    System.out.println("###############Jalview CMD: " + _cmd + cmd);
+    Process ls2_proc = Runtime.getRuntime().exec(_cmd + cmd);
     BufferedReader outputReader = new BufferedReader(new InputStreamReader(
             ls2_proc.getInputStream()));
 
@@ -87,52 +105,66 @@ private Worker jalviewDesktopRunner(boolean withAwt, String cmd, int timeout) th
     }
     return worker;
   }
+
   @Test
   public void testHeadlessModeEPS() throws Exception
   {
-    String[] headlessArgs=new String[] { "nodisplay","headless","nogui"};
-    for (String _harg:headlessArgs)
+    String[] headlessArgs = new String[]
+    { "nodisplay", "headless", "nogui" };
+    for (String _harg : headlessArgs)
     {
-      boolean _switch=false,withAwt=false;
-      do {
+      boolean _switch = false, withAwt = false;
+      do
+      {
         if (_switch)
         {
-          withAwt=true;
+          withAwt = true;
+        }
+        _switch = true;
+        String jalview_input = "examples/uniref50.fa";
+        String jalview_output = "test_uniref50_out.eps";
+        String cmd = "" + _harg + " -open " + jalview_input + " -eps "
+                + jalview_output;
+        String harg = _harg
+                + (withAwt ? "-Djava.awt.headless=true"
+                        : " NO AWT.HEADLESS");
+        System.out.println("Testing with Headless argument: '" + harg
+                + "'\n");
+        Worker worker = jalviewDesktopRunner(withAwt, cmd, 9000);
+        assertTrue("Didn't create an output EPS file.[" + harg + "]",
+                new File("test_uniref50_out.eps").exists());
+        assertTrue("Didn't create an EPS file with any content[" + harg
+                + "]", new File("test_uniref50_out.eps").length() > 4096);
+        if (worker.exit == null)
+        {
+          worker.interrupt();
+          Thread.currentThread().interrupt();
+          worker.process.destroy();
+          fail("Jalview did not exit after EPS generation (try running test again to verify - timeout at 9000ms). ["
+                  + harg + "]");
         }
-        _switch=true;
-    String jalview_input = "examples/uniref50.fa";
-    String jalview_output = "test_uniref50_out.eps";
-    String cmd = ""+_harg+" -open "+ jalview_input + " -eps " + jalview_output;
-    String harg = _harg+(withAwt ? "-Djava.awt.headless=true":" NO AWT.HEADLESS");
-    System.out.println("Testing with Headless argument: '"+harg+"'\n");
-    Worker worker = jalviewDesktopRunner(withAwt, cmd, 9000);
-    assertTrue("Didn't create an output EPS file.["+harg+"]", new File("test_uniref50_out.eps").exists());
-    assertTrue("Didn't create an EPS file with any content["+harg+"]", new File("test_uniref50_out.eps").length()>4096);
-    if (worker.exit == null){
-      worker.interrupt();
-      Thread.currentThread().interrupt();
-      worker.process.destroy();
-      fail("Jalview did not exit after EPS generation (try running test again to verify - timeout at 9000ms). ["+harg+"]");
+      } while (!withAwt);
     }
-    } while (!withAwt);
-    } 
   }
-//  @Test
-//  public void testJalview2XMLDataset() throws Exception
-//  {
-//    String jalview_input = "examples/uniref50.fa";
-//    String jalview_output = "test_uniref50_out.eps";
-//    String cmd = ""+" -open "+ jalview_input + " -eps " + jalview_output;
-//    //String harg = _harg+(withAwt ? "-Djava.awt.headless=true":" NO AWT.HEADLESS");
-//    System.out.println("Testing with Headless argument: '"+harg+"'\n");
-//    Worker worker = jalviewDesktopRunner(withAwt, cmd, 9000);
-//    assertTrue("Didn't create an output EPS file.["+harg+"]", new File("test_uniref50_out.eps").exists());
-//    assertTrue("Didn't create an EPS file with any content["+harg+"]", new File("test_uniref50_out.eps").length()>4096);
-//    if (worker.exit == null){
-//      worker.interrupt();
-//      Thread.currentThread().interrupt();
-//      worker.process.destroy();
-//      fail("Jalview did not exit after EPS generation (try running test again to verify - timeout at 9000ms). ["+harg+"]");
-//    }
-//  }
+  // @Test
+  // public void testJalview2XMLDataset() throws Exception
+  // {
+  // String jalview_input = "examples/uniref50.fa";
+  // String jalview_output = "test_uniref50_out.eps";
+  // String cmd = ""+" -open "+ jalview_input + " -eps " + jalview_output;
+  // //String harg = _harg+(withAwt ?
+  // "-Djava.awt.headless=true":" NO AWT.HEADLESS");
+  // System.out.println("Testing with Headless argument: '"+harg+"'\n");
+  // Worker worker = jalviewDesktopRunner(withAwt, cmd, 9000);
+  // assertTrue("Didn't create an output EPS file.["+harg+"]", new
+  // File("test_uniref50_out.eps").exists());
+  // assertTrue("Didn't create an EPS file with any content["+harg+"]", new
+  // File("test_uniref50_out.eps").length()>4096);
+  // if (worker.exit == null){
+  // worker.interrupt();
+  // Thread.currentThread().interrupt();
+  // worker.process.destroy();
+  // fail("Jalview did not exit after EPS generation (try running test again to verify - timeout at 9000ms). ["+harg+"]");
+  // }
+  // }
 }
diff --git a/test/jalview/ext/jmol/PDBFileWithJmolTest.java b/test/jalview/ext/jmol/PDBFileWithJmolTest.java
new file mode 100644 (file)
index 0000000..d561acb
--- /dev/null
@@ -0,0 +1,117 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
+package jalview.ext.jmol;
+
+import static org.junit.Assert.*;
+
+import java.util.Vector;
+
+import jalview.datamodel.Alignment;
+import jalview.datamodel.AlignmentI;
+import jalview.datamodel.SequenceI;
+import jalview.gui.AlignFrame;
+import jalview.io.AppletFormatAdapter;
+import jalview.io.FileLoader;
+
+import org.junit.Test;
+
+/**
+ * @author jimp
+ * 
+ */
+public class PDBFileWithJmolTest
+{
+  String[] testFile = new String[]
+  { "./examples/1GAQ.txt" }; // ,
+
+  // "./examples/DNMT1_MOUSE.pdb"
+  // };
+
+  @Test
+  public void testAlignmentLoader() throws Exception
+  {
+    for (String f : testFile)
+    {
+      FileLoader fl = new jalview.io.FileLoader(false);
+      AlignFrame af = fl
+              .LoadFileWaitTillLoaded(f, AppletFormatAdapter.FILE);
+      validateSecStrRows(af.getViewport().getAlignment());
+    }
+  }
+
+  @Test
+  public void testFileParser() throws Exception
+  {
+    for (String pdbStr : testFile)
+    {
+      PDBFileWithJmol jtest = new PDBFileWithJmol(pdbStr,
+              jalview.io.AppletFormatAdapter.FILE);
+      Vector<SequenceI> seqs = jtest.getSeqs();
+
+      assertTrue(
+              "No sequences extracted from testfile\n"
+                      + (jtest.hasWarningMessage() ? jtest.getWarningMessage()
+                              : "(No warnings raised)"), seqs != null
+                      && seqs.size() > 0);
+      for (SequenceI sq : seqs)
+      {
+        AlignmentI al = new Alignment(new SequenceI[]
+        { sq });
+        validateSecStrRows(al);
+      }
+    }
+  }
+
+  private void validateSecStrRows(AlignmentI al)
+  {
+    if (!al.isNucleotide())
+    {
+      for (SequenceI asq : al.getSequences())
+      {
+        SequenceI sq = asq;
+        boolean hasDs = false;
+        while (sq.getDatasetSequence() != null
+                && sq.getAnnotation() == null)
+        {
+          sq = sq.getDatasetSequence();
+          hasDs = true;
+        }
+        checkFirstAAIsAssoc(sq);
+        if (hasDs)
+        {
+          // also verify if alignment sequence has annotation on it
+          // that is correctly mapped
+          checkFirstAAIsAssoc(asq);
+        }
+      }
+    }
+  }
+
+  private void checkFirstAAIsAssoc(SequenceI sq)
+  {
+    assertTrue("No secondary structure assigned for protein sequence.",
+            sq.getAnnotation() != null && sq.getAnnotation().length >= 1
+                    && sq.getAnnotation()[0].hasIcons);
+    assertTrue(
+            "Secondary structure not associated for sequence "
+                    + sq.getName(), sq.getAnnotation()[0].sequenceRef == sq);
+  }
+}
diff --git a/test/jalview/ext/paradise/TestAnnotate3D.java b/test/jalview/ext/paradise/TestAnnotate3D.java
new file mode 100644 (file)
index 0000000..6635f0d
--- /dev/null
@@ -0,0 +1,161 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
+package jalview.ext.paradise;
+
+import static org.junit.Assert.assertTrue;
+
+import jalview.datamodel.AlignmentI;
+import jalview.datamodel.SequenceI;
+import jalview.ext.paradise.Annotate3D;
+import jalview.io.FastaFile;
+import jalview.io.FormatAdapter;
+
+import java.io.BufferedReader;
+import java.io.File;
+import java.io.Reader;
+import java.util.Iterator;
+
+import org.junit.Assert;
+import org.junit.Test;
+
+import MCview.PDBfile;
+
+import compbio.util.FileUtil;
+
+public class TestAnnotate3D
+{
+
+  @Test
+  public void test1GIDbyId() throws Exception
+  {
+    // use same ID as standard tests given at
+    // https://bitbucket.org/fjossinet/pyrna-rest-clients
+    Iterator<Reader> ids = Annotate3D.getRNAMLForPDBId("1GID");
+    assertTrue("Didn't retrieve 1GID by id.", ids != null);
+    testRNAMLcontent(ids, null);
+  }
+
+  @Test
+  public void testIdVsContent2GIS() throws Exception
+  {
+    Iterator<Reader> ids = Annotate3D.getRNAMLForPDBId("2GIS");
+    assertTrue("Didn't retrieve 2GIS by id.", ids != null);
+    Iterator<Reader> files = Annotate3D.getRNAMLForPDBFileAsString(FileUtil
+            .readFileToString(new File("examples/2GIS.pdb")));
+    assertTrue("Didn't retrieve using examples/2GIS.pdb.", files != null);
+    int i = 0;
+    while (ids.hasNext() && files.hasNext())
+    {
+      BufferedReader file = new BufferedReader(files.next()), id = new BufferedReader(
+              ids.next());
+      String iline, fline;
+      do
+      {
+        iline = id.readLine();
+        fline = file.readLine();
+        if (iline != null)
+          System.out.println(iline);
+        if (fline != null)
+          System.out.println(fline);
+        // next assert fails for latest RNAview - because the XMLID entries
+        // change between file and ID based RNAML generation.
+        assertTrue(
+                "Results differ for ID and file upload based retrieval (chain entry "
+                        + (++i) + ")",
+                ((iline == fline && iline == null) || (iline != null
+                        && fline != null && iline.equals(fline))));
+
+      } while (iline != null);
+    }
+  }
+
+  /**
+   * test to demonstrate JAL-1142 - compare sequences in RNAML returned from
+   * Annotate3d vs those extracted by Jalview from the originl PDB file
+   * 
+   * @throws Exception
+   */
+  @Test
+  public void testPDBfileVsRNAML() throws Exception
+  {
+    PDBfile pdbf = new PDBfile("examples/2GIS.pdb", FormatAdapter.FILE);
+    Assert.assertTrue(pdbf.isValid());
+    // Comment - should add new FileParse constructor like new FileParse(Reader
+    // ..). for direct reading
+    Iterator<Reader> readers = Annotate3D
+            .getRNAMLForPDBFileAsString(FileUtil.readFileToString(new File(
+                    "examples/2GIS.pdb")));
+    testRNAMLcontent(readers, pdbf);
+  }
+
+  private void testRNAMLcontent(Iterator<Reader> readers, PDBfile pdbf)
+          throws Exception
+  {
+    StringBuffer sb = new StringBuffer();
+    int r = 0;
+    while (readers.hasNext())
+    {
+      System.out.println("Testing RNAML input number " + (++r));
+      BufferedReader br = new BufferedReader(readers.next());
+      String line;
+      while ((line = br.readLine()) != null)
+      {
+        sb.append(line + "\n");
+      }
+      assertTrue("No data returned by Annotate3D", sb.length() > 0);
+      AlignmentI al = new FormatAdapter().readFile(sb.toString(),
+              FormatAdapter.PASTE, "RNAML");
+      if (al == null || al.getHeight() == 0)
+      {
+        System.out.println(sb.toString());
+      }
+      assertTrue("No alignment returned.", al != null);
+      assertTrue("No sequences in returned alignment.", al.getHeight() > 0);
+      if (pdbf != null)
+      {
+        for (SequenceI sq : al.getSequences())
+        {
+          {
+            SequenceI struseq = null;
+            String sq_ = new String(sq.getSequence()).toLowerCase();
+            for (SequenceI _struseq : pdbf.getSeqsAsArray())
+            {
+              if (new String(_struseq.getSequence()).toLowerCase().equals(
+                      sq_))
+              {
+                struseq = _struseq;
+                break;
+              }
+            }
+            if (struseq == null)
+            {
+              Assert.fail("Couldn't find this sequence in original input:\n"
+                      + new FastaFile().print(new SequenceI[]
+                      { sq })
+                      + "\n\nOriginal input:\n"
+                      + new FastaFile().print(pdbf.getSeqsAsArray()) + "\n");
+            }
+          }
+        }
+      }
+    }
+  }
+}
diff --git a/test/jalview/ext/rbvi/chimera/AllTests.java b/test/jalview/ext/rbvi/chimera/AllTests.java
new file mode 100644 (file)
index 0000000..1d14751
--- /dev/null
@@ -0,0 +1,13 @@
+package jalview.ext.rbvi.chimera;
+
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
+import org.junit.runners.Suite.SuiteClasses;
+
+@RunWith(Suite.class)
+@SuiteClasses(
+{})
+public class AllTests
+{
+
+}
diff --git a/test/jalview/ext/rbvi/chimera/ChimeraConnect.java b/test/jalview/ext/rbvi/chimera/ChimeraConnect.java
new file mode 100644 (file)
index 0000000..be4e5ea
--- /dev/null
@@ -0,0 +1,38 @@
+package jalview.ext.rbvi.chimera;
+
+import static org.junit.Assert.*;
+
+import java.util.Arrays;
+import java.util.Collection;
+
+import org.junit.Test;
+
+import ext.edu.ucsf.rbvi.strucviz2.*;
+
+public class ChimeraConnect
+{
+
+  @Test
+  public void test()
+  {
+    StructureManager csm; 
+            ext.edu.ucsf.rbvi.strucviz2.ChimeraManager cm = new ChimeraManager(csm = new ext.edu.ucsf.rbvi.strucviz2.StructureManager(true));
+    assertTrue("Couldn't launch chimera",cm.launchChimera(csm.getChimeraPaths()));
+    int n=0;
+    while (n++<100)
+    {
+      try { 
+        Thread.sleep(1000);
+      } catch (Exception q)
+      {
+        
+      }
+      Collection<ChimeraModel> cms = cm.getChimeraModels();
+      for (ChimeraModel cmod :cms) {
+        System.out.println(cmod.getModelName());
+      }
+    }
+    cm.exitChimera();
+  }
+
+}
diff --git a/test/jalview/ext/rbvi/chimera/JalviewChimeraView.java b/test/jalview/ext/rbvi/chimera/JalviewChimeraView.java
new file mode 100644 (file)
index 0000000..1736af5
--- /dev/null
@@ -0,0 +1,82 @@
+package jalview.ext.rbvi.chimera;
+
+import static org.junit.Assert.*;
+import jalview.datamodel.PDBEntry;
+import jalview.datamodel.SequenceI;
+import jalview.gui.AlignFrame;
+import jalview.gui.StructureViewer;
+import jalview.gui.StructureViewer.Viewer;
+import jalview.io.FormatAdapter;
+
+import java.awt.Desktop;
+import java.io.File;
+
+import org.junit.After;
+import org.junit.AfterClass;
+import org.junit.Before;
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+public class JalviewChimeraView
+{
+
+  /**
+   * @throws java.lang.Exception
+   */
+  @BeforeClass
+  public static void setUpBeforeClass() throws Exception
+  {
+    jalview.bin.Jalview.main(new String[]
+    { "-noquestionnaire -nonews -props", "test/src/jalview/ext/rbvi/chimera/testProps.jvprops" });
+  }
+
+  /**
+   * @throws java.lang.Exception
+   */
+  @AfterClass
+  public static void tearDownAfterClass() throws Exception
+  {
+    jalview.gui.Desktop.instance.closeAll_actionPerformed(null);
+
+  }
+
+
+  @Test
+  public void testSingleSeqView()
+  {
+    String inFile = "examples/1gaq.txt";
+    AlignFrame af = new jalview.io.FileLoader().LoadFileWaitTillLoaded(
+            inFile, FormatAdapter.FILE);
+    assertTrue("Didn't read input file " + inFile, af != null);
+    for (SequenceI sq:af.getViewport().getAlignment().getSequences())
+    {
+      SequenceI dsq=sq.getDatasetSequence();
+      while (dsq.getDatasetSequence()!=null)
+      {
+        dsq=dsq.getDatasetSequence();
+      }
+      if (dsq.getPDBId()!=null && dsq.getPDBId().size()>0) {
+        for (int q=0;q<dsq.getPDBId().size();q++) 
+        {
+          new StructureViewer(af.getViewport().getStructureSelectionManager()).viewStructures(Viewer.JMOL,
+                  af.getCurrentView().getAlignPanel(),
+                  new PDBEntry[] { (PDBEntry)dsq.getPDBId().elementAt(q) },
+                  new SequenceI[][] { new SequenceI[] { sq } });
+
+          new StructureViewer(af.getViewport().getStructureSelectionManager()).viewStructures(Viewer.CHIMERA,
+                  af.getCurrentView().getAlignPanel(),
+                  new PDBEntry[] { (PDBEntry)dsq.getPDBId().elementAt(q) },
+                  new SequenceI[][] { new SequenceI[] { sq } });
+          break;
+        }
+        break;
+      }
+   }
+    try {
+      Thread.sleep(200000);
+    } catch (InterruptedException q)
+    {
+      
+    }
+  }
+}
diff --git a/test/jalview/ext/rbvi/chimera/testProps.jvprops b/test/jalview/ext/rbvi/chimera/testProps.jvprops
new file mode 100644 (file)
index 0000000..d5a6c4c
--- /dev/null
@@ -0,0 +1,84 @@
+#---JalviewX Properties File---
+#Fri Apr 25 09:54:25 BST 2014
+SCREEN_Y=768
+SCREEN_X=936
+SHOW_WSDISCOVERY_ERRORS=true
+LATEST_VERSION=2.8.0b1
+SHOW_CONSERVATION=true
+JALVIEW_RSS_WINDOW_SCREEN_WIDTH=550
+JAVA_CONSOLE_SCREEN_WIDTH=450
+LAST_DIRECTORY=/Volumes/Data/Users/jimp/Documents/testing/Jalview/examples
+ID_ITALICS=true
+SORT_ALIGNMENT=No sort
+SHOW_IDENTITY=true
+WSMENU_BYHOST=false
+SEQUENCE_LINKS=EMBL-EBI Search|http\://www.ebi.ac.uk/ebisearch/search.ebi?db\=allebi&query\=$SEQUENCE_ID$
+SHOW_FULLSCREEN=false
+RECENT_URL=http\://www.jalview.org/examples/exampleFile_2_7.jar
+FONT_NAME=SansSerif
+BLC_JVSUFFIX=true
+VERSION_CHECK=false
+YEAR=2011
+SHOW_DBREFS_TOOLTIP=true
+MSF_JVSUFFIX=true
+SCREENGEOMETRY_HEIGHT=1600
+JAVA_CONSOLE_SCREEN_Y=475
+JAVA_CONSOLE_SCREEN_X=830
+PFAM_JVSUFFIX=true
+PIR_JVSUFFIX=true
+STARTUP_FILE=http\://www.jalview.org/examples/exampleFile_2_3.jar
+JAVA_CONSOLE_SCREEN_HEIGHT=162
+PIR_MODELLER=false
+GAP_SYMBOL=-
+SHOW_QUALITY=true
+SHOW_GROUP_CONSERVATION=false
+SHOW_JWS2_SERVICES=true
+SHOW_NPFEATS_TOOLTIP=true
+FONT_STYLE=plain
+ANTI_ALIAS=false
+SORT_BY_TREE=false
+RSBS_SERVICES=|Multi-Harmony|Analysis|Sequence Harmony and Multi-Relief (Brandt et al. 2010)|hseparable,gapCharacter\='-',returns\='ANNOTATION'|?tool\=jalview|http\://zeus.few.vu.nl/programs/shmrwww/index.php?tool\=jalview&groups\=$PARTITION\:min\='2',minsize\='2',sep\=' '$&ali_file\=$ALIGNMENT\:format\='FASTA',writeasfile$
+AUTHORFNAMES=Jim Procter, Andrew Waterhouse, Jan Engelhardt, Lauren Lui, Michele Clamp, James Cuff, Steve Searle, David Martin & Geoff Barton
+JALVIEW_RSS_WINDOW_SCREEN_HEIGHT=328
+SHOW_GROUP_CONSENSUS=false
+SHOW_CONSENSUS_HISTOGRAM=true
+SHOW_OVERVIEW=false
+AUTHORS=J Procter, AM Waterhouse, LM Lui, J Engelhardt, G Barton, M Clamp, S Searle
+FIGURE_AUTOIDWIDTH=false
+SCREEN_WIDTH=900
+ANNOTATIONCOLOUR_MIN=ffc800
+SHOW_STARTUP_FILE=false
+RECENT_FILE=examples/uniref50.fa\t/Volumes/Data/Users/jimp/Documents/testing/Jalview/examples/RF00031_folded.stk\t/Volumes/Data/Users/jimp/bs_ig_mult.out
+DEFAULT_FILE_FORMAT=FASTA
+SHOW_JAVA_CONSOLE=false
+VERSION=2.8b1
+FIGURE_USERIDWIDTH=
+WSMENU_BYTYPE=false
+DEFAULT_COLOUR=None
+NOQUESTIONNAIRES=true
+JALVIEW_NEWS_RSS_LASTMODIFIED=Apr 23, 2014 2\:53\:26 PM
+BUILD_DATE=01 November 2013
+PILEUP_JVSUFFIX=true
+SHOW_CONSENSUS_LOGO=false
+SCREENGEOMETRY_WIDTH=2560
+SHOW_ANNOTATIONS=true
+JALVIEW_RSS_WINDOW_SCREEN_Y=0
+USAGESTATS=false
+JALVIEW_RSS_WINDOW_SCREEN_X=0
+SHOW_UNCONSERVED=false
+SHOW_JVSUFFIX=true
+DAS_LOCAL_SOURCE=
+SCREEN_HEIGHT=650
+ANNOTATIONCOLOUR_MAX=ff0000
+AUTO_CALC_CONSENSUS=true
+FASTA_JVSUFFIX=true
+DAS_ACTIVE_SOURCE=uniprot\t
+JWS2HOSTURLS=http\://www.compbio.dundee.ac.uk/jabaws
+PAD_GAPS=false
+CLUSTAL_JVSUFFIX=true
+SHOW_ENFIN_SERVICES=true
+FONT_SIZE=10
+RIGHT_ALIGN_IDS=false
+USE_PROXY=false
+WRAP_ALIGNMENT=false
+DAS_REGISTRY_URL=http\://www.dasregistry.org/das/
index 486c098..438a208 100644 (file)
@@ -1,3 +1,23 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
 package jalview.gui;
 
 import static org.junit.Assert.*;
@@ -34,7 +54,8 @@ public class JAL1353bugdemo
   public static void tearDownAfterClass() throws Exception
   {
   }
-  volatile boolean finish=false;
+
+  volatile boolean finish = false;
 
   @Test
   public void test()
@@ -42,85 +63,93 @@ public class JAL1353bugdemo
     Cache.initLogger();
     // final Desktop foo = new Desktop();
     final JFrame cfoo = new JFrame("Crash Java");
-    final JDesktopPane foo=new JDesktopPane();
-    foo.setPreferredSize(new Dimension(600,800));
+    final JDesktopPane foo = new JDesktopPane();
+    foo.setPreferredSize(new Dimension(600, 800));
     cfoo.setSize(600, 800);
     final JInternalFrame cont = new JInternalFrame("My Frame");
     JTextArea evt;
     cont.setPreferredSize(new Dimension(400, 300));
-    cont.add(evt=new JTextArea("Click here and drag text over this window to freeze java.\n\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\n"));
+    cont.add(evt = new JTextArea(
+            "Click here and drag text over this window to freeze java.\n\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\n"));
     cont.pack();
-    foo.add("A frame",cont);
+    foo.add("A frame", cont);
     foo.setVisible(true);
     foo.setEnabled(true);
     foo.doLayout();
     cfoo.add(foo);
     final JMenu jm = new JMenu("Do");
-    JMenuItem jmi=new JMenuItem("this");
+    JMenuItem jmi = new JMenuItem("this");
     jm.add(jmi);
     evt.addMouseListener(new MouseListener()
     {
-      
+
       @Override
       public void mouseReleased(MouseEvent e)
       {
       }
-      
+
       @Override
       public void mousePressed(MouseEvent e)
       {
         // TODO Auto-generated method stub
-        
+
       }
-      
+
       @Override
       public void mouseExited(MouseEvent e)
       {
         // TODO Auto-generated method stub
-        
+
       }
-      
+
       @Override
       public void mouseEntered(MouseEvent e)
       {
         // TODO Auto-generated method stub
-        
+
       }
-      
+
       @Override
       public void mouseClicked(MouseEvent e)
       {
-//        JFrame parent = new JFrame();
-//        parent.setBounds(foo.getBounds());
-//        JPanel oo = new JPanel();
-//        parent.add(oo);
-//        oo.setVisible(true);
-//        parent.setVisible(true);
-        EditNameDialog end =new EditNameDialog("Sequence Name", "Sequence Description","label 1", "Label 2", "Try and drag between the two text fields", foo);//);cont.getRootPane());
-        assert(end!=null);
-        finish=true;
+        // JFrame parent = new JFrame();
+        // parent.setBounds(foo.getBounds());
+        // JPanel oo = new JPanel();
+        // parent.add(oo);
+        // oo.setVisible(true);
+        // parent.setVisible(true);
+        EditNameDialog end = new EditNameDialog("Sequence Name",
+                "Sequence Description", "label 1", "Label 2",
+                "Try and drag between the two text fields", foo);// );cont.getRootPane());
+        assert (end != null);
+        finish = true;
       }
     });
     cont.setVisible(true);
 
     jmi.addActionListener(new ActionListener()
     {
-      
+
       @Override
       public void actionPerformed(ActionEvent arg0)
       {
-        EditNameDialog end =new EditNameDialog("Sequence Name", "Sequence Description","label 1", "Label 2", "Try and drag between the two text fields", cont);
-        assert(end!=null);
-        finish=true;
+        EditNameDialog end = new EditNameDialog("Sequence Name",
+                "Sequence Description", "label 1", "Label 2",
+                "Try and drag between the two text fields", cont);
+        assert (end != null);
+        finish = true;
       }
     });
     foo.setVisible(true);
     cfoo.setVisible(true);
     while (!finish)
     {
-      try {
+      try
+      {
         Thread.sleep(100);
-      } catch (InterruptedException x) {}
+      } catch (InterruptedException x)
+      {
+      }
     }
   }
 
index 7d6a15f..18e008e 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.0b1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io;
@@ -47,9 +49,10 @@ public class AnnotationFileIOTest
   @Test
   public void exampleAnnotationFileIO() throws Exception
   {
-    for (String[] testPair:TestFiles)
+    for (String[] testPair : TestFiles)
     {
-      testAnnotationFileIO(testPair[0], new File(testPair[1]), new File(testPair[2]));
+      testAnnotationFileIO(testPair[0], new File(testPair[1]), new File(
+              testPair[2]));
     }
   }
 
@@ -63,11 +66,12 @@ public class AnnotationFileIOTest
 
       AlignmentI al = rf.readFile(ff, AppletFormatAdapter.FILE,
               new IdentifyFile().Identify(ff, AppletFormatAdapter.FILE));
-      
+
       // make sure dataset is initialised ? not sure about this
       for (int i = 0; i < al.getSequencesArray().length; ++i)
       {
-        al.getSequenceAt(i).setDatasetSequence(al.getSequenceAt(i).createDatasetSequence());
+        al.getSequenceAt(i).setDatasetSequence(
+                al.getSequenceAt(i).createDatasetSequence());
       }
       assertNotNull("Couldn't read supplied alignment data.", al);
       return al;
@@ -75,9 +79,10 @@ public class AnnotationFileIOTest
     {
       e.printStackTrace();
     }
-    fail("Couln't read the alignment in file '"+f.toString()+"'");
+    fail("Couln't read the alignment in file '" + f.toString() + "'");
     return null;
   }
+
   /**
    * test alignment data in given file can be imported, exported and reimported
    * with no dataloss
@@ -88,25 +93,48 @@ public class AnnotationFileIOTest
    *          - label for IO class used to write and read back in the data from
    *          f
    */
-  public static void testAnnotationFileIO(String testname, File f, File annotFile)
+  public static void testAnnotationFileIO(String testname, File f,
+          File annotFile)
   {
-    System.out.println("Test: "+testname+"\nReading annotation file '"+annotFile+"' onto : " + f);
+    System.out.println("Test: " + testname + "\nReading annotation file '"
+            + annotFile + "' onto : " + f);
     String af = annotFile.getPath();
     try
     {
       AlignmentI al = readAlignmentFile(f);
-      
-      assertTrue("Test "+testname+"\nAlignment was not annotated - annotation file not imported.",new AnnotationFile().readAnnotationFile(al, af, FormatAdapter.FILE));
-      
-      String anfileout = new AnnotationFile().printAnnotations(al.getAlignmentAnnotation(), al.getGroups(), al.getProperties());
-      assertTrue("Test "+testname+"\nAlignment annotation file was not regenerated. Null string",anfileout!=null);
-      assertTrue("Test "+testname+"\nAlignment annotation file was not regenerated. Empty string",anfileout.length()>"JALVIEW_ANNOTATION".length());
 
-      System.out.println("Output annotation file:\n"+anfileout+"\n<<EOF\n");
-      
+      assertTrue(
+              "Test "
+                      + testname
+                      + "\nAlignment was not annotated - annotation file not imported.",
+              new AnnotationFile().readAnnotationFile(al, af,
+                      FormatAdapter.FILE));
+
+      String anfileout = new AnnotationFile().printAnnotations(
+              al.getAlignmentAnnotation(), al.getGroups(),
+              al.getProperties());
+      assertTrue(
+              "Test "
+                      + testname
+                      + "\nAlignment annotation file was not regenerated. Null string",
+              anfileout != null);
+      assertTrue(
+              "Test "
+                      + testname
+                      + "\nAlignment annotation file was not regenerated. Empty string",
+              anfileout.length() > "JALVIEW_ANNOTATION".length());
+
+      System.out.println("Output annotation file:\n" + anfileout
+              + "\n<<EOF\n");
+
       AlignmentI al_new = readAlignmentFile(f);
-      assertTrue("Test "+testname+"\nregenerated annotation file did not annotate alignment.",new AnnotationFile().readAnnotationFile(al_new, anfileout, FormatAdapter.PASTE));
-      
+      assertTrue(
+              "Test "
+                      + testname
+                      + "\nregenerated annotation file did not annotate alignment.",
+              new AnnotationFile().readAnnotationFile(al_new, anfileout,
+                      FormatAdapter.PASTE));
+
       // test for consistency in io
       StockholmFileTest.testAlignmentEquivalence(al, al_new);
       return;
@@ -114,6 +142,9 @@ public class AnnotationFileIOTest
     {
       e.printStackTrace();
     }
-    fail("Test "+testname+"\nCouldn't complete Annotation file roundtrip input/output/input test for '"+annotFile+"'.");
+    fail("Test "
+            + testname
+            + "\nCouldn't complete Annotation file roundtrip input/output/input test for '"
+            + annotFile + "'.");
   }
 }
index 5d10c35..7f0e72f 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.0b1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io;
@@ -29,7 +31,7 @@ import org.junit.Test;
 
 /**
  * @author jimp
- *
+ * 
  */
 public class FileIOTester
 {
@@ -49,38 +51,53 @@ public class FileIOTester
   public static void tearDownAfterClass() throws Exception
   {
   }
+
   // TODO: make a better/more comprehensive test harness for identify/io
-  
-  final static File ALIGN_FILE = new File("test/jalview/io/test_gz_fasta.gz");
-  final static File NOTGZALIGN_FILE = new File("test/jalview/io/test_gz_fasta_notgz.gz");
-  final static File STARS_FA_FILE1 = new File("test/jalview/io/test_fasta_stars.fa");
-  final static File STARS_FA_FILE2 = new File("test/jalview/io/test_fasta_stars2.fa");
+
+  final static File ALIGN_FILE = new File(
+          "test/jalview/io/test_gz_fasta.gz");
+
+  final static File NOTGZALIGN_FILE = new File(
+          "test/jalview/io/test_gz_fasta_notgz.gz");
+
+  final static File STARS_FA_FILE1 = new File(
+          "test/jalview/io/test_fasta_stars.fa");
+
+  final static File STARS_FA_FILE2 = new File(
+          "test/jalview/io/test_fasta_stars2.fa");
 
   private void assertValidFormat(String fmt, String src, FileParse fp)
   {
-    assertTrue("Couldn't resolve "+src+" as a valid file",fp.isValid());
+    assertTrue("Couldn't resolve " + src + " as a valid file", fp.isValid());
     String type = new IdentifyFile().Identify(fp);
-    assertTrue("Data from '"+src+"' Expected to be '"+fmt+"' identified as '"+type+"'",type.equalsIgnoreCase(fmt));
+    assertTrue("Data from '" + src + "' Expected to be '" + fmt
+            + "' identified as '" + type + "'", type.equalsIgnoreCase(fmt));
   }
+
   @Test
   public void testStarsInFasta1() throws IOException
   {
     String uri;
-    FileParse fp = new FileParse(uri=STARS_FA_FILE1.getAbsoluteFile().toString(),AppletFormatAdapter.FILE);
+    FileParse fp = new FileParse(uri = STARS_FA_FILE1.getAbsoluteFile()
+            .toString(), AppletFormatAdapter.FILE);
     assertValidFormat("FASTA", uri, fp);
   }
+
   @Test
   public void testStarsInFasta2() throws IOException
   {
     String uri;
-    FileParse fp = new FileParse(uri=STARS_FA_FILE2.getAbsoluteFile().toString(),AppletFormatAdapter.FILE);
+    FileParse fp = new FileParse(uri = STARS_FA_FILE2.getAbsoluteFile()
+            .toString(), AppletFormatAdapter.FILE);
     assertValidFormat("FASTA", uri, fp);
   }
+
   @Test
   public void testGzipIo() throws IOException
-  {     
+  {
     String uri;
-    FileParse fp = new FileParse(uri=ALIGN_FILE.getAbsoluteFile().toURI().toString(),AppletFormatAdapter.URL);
+    FileParse fp = new FileParse(uri = ALIGN_FILE.getAbsoluteFile().toURI()
+            .toString(), AppletFormatAdapter.URL);
     assertValidFormat("FASTA", uri, fp);
   }
 
@@ -88,21 +105,26 @@ public class FileIOTester
   public void testGziplocalFileIO() throws IOException
   {
     String filepath;
-    FileParse fp = new FileParse(filepath=ALIGN_FILE.getAbsoluteFile().toString(), AppletFormatAdapter.FILE);
-    assertValidFormat("FASTA",filepath, fp);
+    FileParse fp = new FileParse(filepath = ALIGN_FILE.getAbsoluteFile()
+            .toString(), AppletFormatAdapter.FILE);
+    assertValidFormat("FASTA", filepath, fp);
   }
+
   @Test
   public void testNonGzipURLIO() throws IOException
   {
     String uri;
-    FileParse fp = new FileParse(uri=NOTGZALIGN_FILE.getAbsoluteFile().toURI().toString(),AppletFormatAdapter.URL);
-    assertValidFormat("FASTA",uri, fp);
+    FileParse fp = new FileParse(uri = NOTGZALIGN_FILE.getAbsoluteFile()
+            .toURI().toString(), AppletFormatAdapter.URL);
+    assertValidFormat("FASTA", uri, fp);
   }
+
   @Test
   public void testNonGziplocalFileIO() throws IOException
   {
     String filepath;
-    FileParse fp = new FileParse(filepath=NOTGZALIGN_FILE.getAbsoluteFile().toString(), AppletFormatAdapter.FILE);
-    assertValidFormat("FASTA",filepath, fp);
+    FileParse fp = new FileParse(filepath = NOTGZALIGN_FILE
+            .getAbsoluteFile().toString(), AppletFormatAdapter.FILE);
+    assertValidFormat("FASTA", filepath, fp);
   }
 }
index fbfff74..6dfa729 100644 (file)
@@ -1,3 +1,23 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
 package jalview.io;
 
 import static org.junit.Assert.*;
@@ -24,7 +44,8 @@ public class Jalview2xmlTests
   @BeforeClass
   public static void setUpBeforeClass() throws Exception
   {
-    jalview.bin.Jalview.main(new String[] {"-props","test/src/jalview/io/testProps.jvprops"});
+    jalview.bin.Jalview.main(new String[]
+    { "-props", "test/src/jalview/io/testProps.jvprops" });
   }
 
   /**
@@ -34,12 +55,14 @@ public class Jalview2xmlTests
   public static void tearDownAfterClass() throws Exception
   {
     jalview.gui.Desktop.instance.closeAll_actionPerformed(null);
-    
+
   }
+
   public int countDsAnn(jalview.viewmodel.AlignmentViewport avp)
   {
-    int numdsann=0;
-    for (SequenceI sq: avp.getAlignment().getDataset().getSequences()) {
+    int numdsann = 0;
+    for (SequenceI sq : avp.getAlignment().getDataset().getSequences())
+    {
       if (sq.getAnnotation() != null)
       {
         for (AlignmentAnnotation dssa : sq.getAnnotation())
@@ -53,35 +76,52 @@ public class Jalview2xmlTests
     }
     return numdsann;
   }
+
   @Test
   public void testRNAStructureRecovery() throws Exception
   {
     String inFile = "examples/RF00031_folded.stk";
-    String tfile = File.createTempFile("JalviewTest", ".jvp").getAbsolutePath();
-    AlignFrame af = new jalview.io.FileLoader().LoadFileWaitTillLoaded(inFile, FormatAdapter.FILE);
-    assertTrue("Didn't read input file "+inFile, af!=null);
-    int olddsann=countDsAnn(af.getViewport());
-    assertTrue("Didn't find any dataset annotations",olddsann>0);
+    String tfile = File.createTempFile("JalviewTest", ".jvp")
+            .getAbsolutePath();
+    AlignFrame af = new jalview.io.FileLoader().LoadFileWaitTillLoaded(
+            inFile, FormatAdapter.FILE);
+    assertTrue("Didn't read input file " + inFile, af != null);
+    int olddsann = countDsAnn(af.getViewport());
+    assertTrue("Didn't find any dataset annotations", olddsann > 0);
     af.rnahelicesColour_actionPerformed(null);
-    assertTrue("Couldn't apply RNA helices colourscheme",af.getViewport().getGlobalColourScheme() instanceof jalview.schemes.RNAHelicesColour);
-    assertTrue("Failed to store as a project.",af.saveAlignment(tfile, "Jalview"));
+    assertTrue(
+            "Couldn't apply RNA helices colourscheme",
+            af.getViewport().getGlobalColourScheme() instanceof jalview.schemes.RNAHelicesColour);
+    assertTrue("Failed to store as a project.",
+            af.saveAlignment(tfile, "Jalview"));
     af.closeMenuItem_actionPerformed(true);
-    af=null;
-    af = new jalview.io.FileLoader().LoadFileWaitTillLoaded(tfile, FormatAdapter.FILE);
-    assertTrue("Failed to import new project", af!=null);
-    int newdsann=countDsAnn(af.getViewport());
-    assertTrue("Differing numbers of dataset sequence annotation\nOriginally "+olddsann+" and now "+newdsann,olddsann==newdsann);
-    System.out.println("Read in same number of annotations as originally present ("+olddsann+")");
-    assertTrue("RNA helices colourscheme was not applied on import.",af.getViewport().getGlobalColourScheme() instanceof jalview.schemes.RNAHelicesColour);
+    af = null;
+    af = new jalview.io.FileLoader().LoadFileWaitTillLoaded(tfile,
+            FormatAdapter.FILE);
+    assertTrue("Failed to import new project", af != null);
+    int newdsann = countDsAnn(af.getViewport());
+    assertTrue(
+            "Differing numbers of dataset sequence annotation\nOriginally "
+                    + olddsann + " and now " + newdsann,
+            olddsann == newdsann);
+    System.out
+            .println("Read in same number of annotations as originally present ("
+                    + olddsann + ")");
+    assertTrue(
+            "RNA helices colourscheme was not applied on import.",
+            af.getViewport().getGlobalColourScheme() instanceof jalview.schemes.RNAHelicesColour);
   }
+
   @Test
   public void testTCoffeeScores() throws Exception
   {
-    String inFile = "examples/uniref50.fa",inAnnot="examples/uniref50.score_ascii";
-    String tfile = File.createTempFile("JalviewTest", ".jvp").getAbsolutePath();
-    AlignFrame af = new jalview.io.FileLoader().LoadFileWaitTillLoaded(inFile, FormatAdapter.FILE);
-    assertTrue("Didn't read input file "+inFile, af!=null);
-    af.loadJalviewDataFile(inAnnot, FormatAdapter.FILE, null,null);
+    String inFile = "examples/uniref50.fa", inAnnot = "examples/uniref50.score_ascii";
+    String tfile = File.createTempFile("JalviewTest", ".jvp")
+            .getAbsolutePath();
+    AlignFrame af = new jalview.io.FileLoader().LoadFileWaitTillLoaded(
+            inFile, FormatAdapter.FILE);
+    assertTrue("Didn't read input file " + inFile, af != null);
+    af.loadJalviewDataFile(inAnnot, FormatAdapter.FILE, null, null);
     assertTrue(
             "Didn't set T-coffee colourscheme",
             af.getViewport().getGlobalColourScheme().getClass()
@@ -93,26 +133,40 @@ public class Jalview2xmlTests
                     jalview.schemes.ColourSchemeProperty.getColourName(af
                             .getViewport().getGlobalColourScheme())) != null);
 
-    assertTrue("Failed to store as a project.",af.saveAlignment(tfile, "Jalview"));
+    assertTrue("Failed to store as a project.",
+            af.saveAlignment(tfile, "Jalview"));
     af.closeMenuItem_actionPerformed(true);
-    af=null;
-    af = new jalview.io.FileLoader().LoadFileWaitTillLoaded(tfile, FormatAdapter.FILE);
-    assertTrue("Failed to import new project", af!=null);
-    assertTrue("Didn't set T-coffee colourscheme for imported project.",af.getViewport().getGlobalColourScheme().getClass().equals(jalview.schemes.TCoffeeColourScheme.class));
-    System.out.println("T-Coffee score shading successfully recovered from project.");
+    af = null;
+    af = new jalview.io.FileLoader().LoadFileWaitTillLoaded(tfile,
+            FormatAdapter.FILE);
+    assertTrue("Failed to import new project", af != null);
+    assertTrue(
+            "Didn't set T-coffee colourscheme for imported project.",
+            af.getViewport().getGlobalColourScheme().getClass()
+                    .equals(jalview.schemes.TCoffeeColourScheme.class));
+    System.out
+            .println("T-Coffee score shading successfully recovered from project.");
   }
+
   @Test
   public void testColourByAnnotScores() throws Exception
   {
-    String inFile = "examples/uniref50.fa",inAnnot="examples/testdata/uniref50_iupred.jva";
-    String tfile = File.createTempFile("JalviewTest", ".jvp").getAbsolutePath();
-    AlignFrame af = new jalview.io.FileLoader().LoadFileWaitTillLoaded(inFile, FormatAdapter.FILE);
-    assertTrue("Didn't read input file "+inFile, af!=null);
-    af.loadJalviewDataFile(inAnnot, FormatAdapter.FILE, null,null);
-    AlignmentAnnotation[] aa = af.getViewport().getAlignment().getSequenceAt(0).getAnnotation("IUPredWS (Short)");
-    assertTrue("Didn't find any IUPred annotation to use to shade alignment.",aa!=null && aa.length>0);
-    AnnotationColourGradient cs = new jalview.schemes.AnnotationColourGradient(aa[0], null, AnnotationColourGradient.ABOVE_THRESHOLD);
-    AnnotationColourGradient gcs = new jalview.schemes.AnnotationColourGradient(aa[0], null, AnnotationColourGradient.BELOW_THRESHOLD);
+    String inFile = "examples/uniref50.fa", inAnnot = "examples/testdata/uniref50_iupred.jva";
+    String tfile = File.createTempFile("JalviewTest", ".jvp")
+            .getAbsolutePath();
+    AlignFrame af = new jalview.io.FileLoader().LoadFileWaitTillLoaded(
+            inFile, FormatAdapter.FILE);
+    assertTrue("Didn't read input file " + inFile, af != null);
+    af.loadJalviewDataFile(inAnnot, FormatAdapter.FILE, null, null);
+    AlignmentAnnotation[] aa = af.getViewport().getAlignment()
+            .getSequenceAt(0).getAnnotation("IUPredWS (Short)");
+    assertTrue(
+            "Didn't find any IUPred annotation to use to shade alignment.",
+            aa != null && aa.length > 0);
+    AnnotationColourGradient cs = new jalview.schemes.AnnotationColourGradient(
+            aa[0], null, AnnotationColourGradient.ABOVE_THRESHOLD);
+    AnnotationColourGradient gcs = new jalview.schemes.AnnotationColourGradient(
+            aa[0], null, AnnotationColourGradient.BELOW_THRESHOLD);
     cs.setSeqAssociated(true);
     gcs.setSeqAssociated(true);
     af.changeColour(cs);
@@ -124,56 +178,71 @@ public class Jalview2xmlTests
     sg.addSequence(af.getViewport().getAlignment().getSequenceAt(1), false);
     sg.addSequence(af.getViewport().getAlignment().getSequenceAt(2), true);
     af.alignPanel.alignmentChanged();
-    assertTrue("Failed to store as a project.",af.saveAlignment(tfile, "Jalview"));
+    assertTrue("Failed to store as a project.",
+            af.saveAlignment(tfile, "Jalview"));
     af.closeMenuItem_actionPerformed(true);
-    af=null;
-    af = new jalview.io.FileLoader().LoadFileWaitTillLoaded(tfile, FormatAdapter.FILE);
-    assertTrue("Failed to import new project", af!=null);
-    
+    af = null;
+    af = new jalview.io.FileLoader().LoadFileWaitTillLoaded(tfile,
+            FormatAdapter.FILE);
+    assertTrue("Failed to import new project", af != null);
+
     // check for group and alignment colourschemes
-    
-    ColourSchemeI _rcs=af.getViewport().getGlobalColourScheme();
-    ColourSchemeI _rgcs=af.getViewport().getAlignment().getGroups().get(0).cs;
-    assertTrue("Didn't recover global colourscheme",_rcs!=null); 
-    assertTrue("Didn't recover annotation colour global scheme",_rcs instanceof AnnotationColourGradient);
+
+    ColourSchemeI _rcs = af.getViewport().getGlobalColourScheme();
+    ColourSchemeI _rgcs = af.getViewport().getAlignment().getGroups()
+            .get(0).cs;
+    assertTrue("Didn't recover global colourscheme", _rcs != null);
+    assertTrue("Didn't recover annotation colour global scheme",
+            _rcs instanceof AnnotationColourGradient);
     AnnotationColourGradient __rcs = (AnnotationColourGradient) _rcs;
-    assertTrue("Annotation colourscheme wasn't sequence associated",__rcs.isSeqAssociated());
+    assertTrue("Annotation colourscheme wasn't sequence associated",
+            __rcs.isSeqAssociated());
 
-    
-    boolean diffseqcols=false,diffgseqcols=false;
-    SequenceI[] sqs=af.getViewport().getAlignment().getSequencesArray();
-    for (int p=0,pSize=af.getViewport().getAlignment().getWidth();p<pSize && (!diffseqcols || !diffgseqcols);p++)
+    boolean diffseqcols = false, diffgseqcols = false;
+    SequenceI[] sqs = af.getViewport().getAlignment().getSequencesArray();
+    for (int p = 0, pSize = af.getViewport().getAlignment().getWidth(); p < pSize
+            && (!diffseqcols || !diffgseqcols); p++)
     {
-      if (_rcs.findColour(sqs[0].getCharAt(p), p, sqs[0])!=_rcs.findColour(sqs[5].getCharAt(p), p, sqs[5]))
+      if (_rcs.findColour(sqs[0].getCharAt(p), p, sqs[0]) != _rcs
+              .findColour(sqs[5].getCharAt(p), p, sqs[5]))
       {
         diffseqcols = true;
       }
     }
     assertTrue("Got Different sequence colours", diffseqcols);
-    System.out.println("Per sequence colourscheme (Background) successfully applied and recovered.");
-    
-    assertTrue("Didn't recover group colourscheme",_rgcs!=null); 
-    assertTrue("Didn't recover annotation colour group colourscheme",_rgcs instanceof AnnotationColourGradient);
+    System.out
+            .println("Per sequence colourscheme (Background) successfully applied and recovered.");
+
+    assertTrue("Didn't recover group colourscheme", _rgcs != null);
+    assertTrue("Didn't recover annotation colour group colourscheme",
+            _rgcs instanceof AnnotationColourGradient);
     __rcs = (AnnotationColourGradient) _rgcs;
-    assertTrue("Group Annotation colourscheme wasn't sequence associated",__rcs.isSeqAssociated());
-    
-    for (int p=0,pSize=af.getViewport().getAlignment().getWidth();p<pSize && (!diffseqcols || !diffgseqcols);p++)
+    assertTrue("Group Annotation colourscheme wasn't sequence associated",
+            __rcs.isSeqAssociated());
+
+    for (int p = 0, pSize = af.getViewport().getAlignment().getWidth(); p < pSize
+            && (!diffseqcols || !diffgseqcols); p++)
     {
-    if (_rgcs.findColour(sqs[1].getCharAt(p), p, sqs[1])!=_rgcs.findColour(sqs[2].getCharAt(p), p, sqs[2]))
+      if (_rgcs.findColour(sqs[1].getCharAt(p), p, sqs[1]) != _rgcs
+              .findColour(sqs[2].getCharAt(p), p, sqs[2]))
       {
         diffgseqcols = true;
       }
     }
     assertTrue("Got Different group sequence colours", diffgseqcols);
-    System.out.println("Per sequence (Group) colourscheme successfully applied and recovered.");
+    System.out
+            .println("Per sequence (Group) colourscheme successfully applied and recovered.");
   }
+
   @Test
   public void gatherViewsHere() throws Exception
   {
     int origCount = Desktop.getAlignframes().length;
-    AlignFrame af = new jalview.io.FileLoader().LoadFileWaitTillLoaded("examples/exampleFile_2_7.jar", FormatAdapter.FILE);
-    assertTrue("Didn't read in the example file correctly.",af!=null);
-    assertTrue("Didn't gather the views in the example file.", Desktop.getAlignframes().length==1+origCount);
-    
+    AlignFrame af = new jalview.io.FileLoader().LoadFileWaitTillLoaded(
+            "examples/exampleFile_2_7.jar", FormatAdapter.FILE);
+    assertTrue("Didn't read in the example file correctly.", af != null);
+    assertTrue("Didn't gather the views in the example file.",
+            Desktop.getAlignframes().length == 1 + origCount);
+
   }
 }
index 561ab26..07672c8 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.0b1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io;
@@ -52,7 +54,7 @@ public class NewickFileTests
     return Arrays
             .asList(new Object[][]
             {
-                    
+
                 new String[]
                 {
                     "Simple uniref50 newick",
diff --git a/test/jalview/io/PhylipFileTests.java b/test/jalview/io/PhylipFileTests.java
new file mode 100644 (file)
index 0000000..70e3f2c
--- /dev/null
@@ -0,0 +1,166 @@
+package jalview.io;
+
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertTrue;
+import jalview.datamodel.Alignment;
+import jalview.datamodel.SequenceI;
+
+import java.io.IOException;
+import java.util.HashMap;
+import java.util.Map;
+
+import org.junit.Test;
+
+/**
+ * Test file for {@link PhylipFile}.
+ *
+ * Tests use example data obtained from <a
+ * href="http://www.molecularevolution.org/resources/fileformats"
+ * >molecularrevolution.org<a>.
+ *
+ * @author David Corsar
+ *
+ */
+public class PhylipFileTests
+{
+
+  // interleaved file from
+  // http://www.molecularevolution.org/molevolfiles/fileformats/dna.phy.dat
+  // sequential file is the interleave file converted into sequential format
+
+  static String sequentialFile = "examples/dna_sequential.phy",
+          interleavedFile = "examples/dna_interleaved.phy";
+
+  /**
+   * Creates a name:sequence map for the data in the above files
+   * 
+   * @return
+   */
+  private static Map<String, String> getTestData()
+  {
+    Map<String, String> data = new HashMap<String, String>();
+    data.put(
+            "Cow",
+            "ATGGCATATCCCATACAACTAGGATTCCAAGATGCAACATCACCAATCATAGAAGAACTACTTCACTTTCATGACCACACGCTAATAATTGTCTTCTTAATTAGCTCATTAGTACTTTACATTATTTCACTAATACTAACGACAAAGCTGACCCATACAAGCACGATAGATGCACAAGAAGTAGAGACAATCTGAACCATTCTGCCCGCCATCATCTTAATTCTAATTGCTCTTCCTTCTTTACGAATTCTATACATAATAGATGAAATCAATAACCCATCTCTTACAGTAAAAACCATAGGACATCAGTGATACTGAAGCTATGAGTATACAGATTATGAGGACTTAAGCTTCGACTCCTACATAATTCCAACATCAGAATTAAAGCCAGGGGAGCTACGACTATTAGAAGTCGATAATCGAGTTGTACTACCAATAGAAATAACAATCCGAATGTTAGTCTCCTCTGAAGACGTATTACACTCATGAGCTGTGCCCTCTCTAGGACTAAAAACAGACGCAATCCCAGGCCGTCTAAACCAAACAACCCTTATATCGTCCCGTCCAGGCTTATATTACGGTCAATGCTCAGAAATTTGCGGGTCAAACCACAGTTTCATACCCATTGTCCTTGAGTTAGTCCCACTAAAGTACTTTGAAAAATGATCTGCGTCAATATTA---------------------TAA");
+    data.put(
+            "Carp",
+            "ATGGCACACCCAACGCAACTAGGTTTCAAGGACGCGGCCATACCCGTTATAGAGGAACTTCTTCACTTCCACGACCACGCATTAATAATTGTGCTCCTAATTAGCACTTTAGTTTTATATATTATTACTGCAATGGTATCAACTAAACTTACTAATAAATATATTCTAGACTCCCAAGAAATCGAAATCGTATGAACCATTCTACCAGCCGTCATTTTAGTACTAATCGCCCTGCCCTCCCTACGCATCCTGTACCTTATAGACGAAATTAACGACCCTCACCTGACAATTAAAGCAATAGGACACCAATGATACTGAAGTTACGAGTATACAGACTATGAAAATCTAGGATTCGACTCCTATATAGTACCAACCCAAGACCTTGCCCCCGGACAATTCCGACTTCTGGAAACAGACCACCGAATAGTTGTTCCAATAGAATCCCCAGTCCGTGTCCTAGTATCTGCTGAAGACGTGCTACATTCTTGAGCTGTTCCATCCCTTGGCGTAAAAATGGACGCAGTCCCAGGACGACTAAATCAAGCCGCCTTTATTGCCTCACGCCCAGGGGTCTTTTACGGACAATGCTCTGAAATTTGTGGAGCTAATCACAGCTTTATACCAATTGTAGTTGAAGCAGTACCTCTCGAACACTTCGAAAACTGATCCTCATTAATACTAGAAGACGCCTCGCTAGGAAGCTAA");
+    data.put(
+            "Chicken",
+            "ATGGCCAACCACTCCCAACTAGGCTTTCAAGACGCCTCATCCCCCATCATAGAAGAGCTCGTTGAATTCCACGACCACGCCCTGATAGTCGCACTAGCAATTTGCAGCTTAGTACTCTACCTTCTAACTCTTATACTTATAGAAAAACTATCA---TCAAACACCGTAGATGCCCAAGAAGTTGAACTAATCTGAACCATCCTACCCGCTATTGTCCTAGTCCTGCTTGCCCTCCCCTCCCTCCAAATCCTCTACATAATAGACGAAATCGACGAACCTGATCTCACCCTAAAAGCCATCGGACACCAATGATACTGAACCTATGAATACACAGACTTCAAGGACCTCTCATTTGACTCCTACATAACCCCAACAACAGACCTCCCCCTAGGCCACTTCCGCCTACTAGAAGTCGACCATCGCATTGTAATCCCCATAGAATCCCCCATTCGAGTAATCATCACCGCTGATGACGTCCTCCACTCATGAGCCGTACCCGCCCTCGGGGTAAAAACAGACGCAATCCCTGGACGACTAAATCAAACCTCCTTCATCACCACTCGACCAGGAGTGTTTTACGGACAATGCTCAGAAATCTGCGGAGCTAACCACAGCTACATACCCATTGTAGTAGAGTCTACCCCCCTAAAACACTTTGAAGCCTGATCCTCACTA------------------CTGTCATCTTAA");
+    data.put(
+            "Human",
+            "ATGGCACATGCAGCGCAAGTAGGTCTACAAGACGCTACTTCCCCTATCATAGAAGAGCTTATCACCTTTCATGATCACGCCCTCATAATCATTTTCCTTATCTGCTTCCTAGTCCTGTATGCCCTTTTCCTAACACTCACAACAAAACTAACTAATACTAACATCTCAGACGCTCAGGAAATAGAAACCGTCTGAACTATCCTGCCCGCCATCATCCTAGTCCTCATCGCCCTCCCATCCCTACGCATCCTTTACATAACAGACGAGGTCAACGATCCCTCCCTTACCATCAAATCAATTGGCCACCAATGGTACTGAACCTACGAGTACACCGACTACGGCGGACTAATCTTCAACTCCTACATACTTCCCCCATTATTCCTAGAACCAGGCGACCTGCGACTCCTTGACGTTGACAATCGAGTAGTACTCCCGATTGAAGCCCCCATTCGTATAATAATTACATCACAAGACGTCTTGCACTCATGAGCTGTCCCCACATTAGGCTTAAAAACAGATGCAATTCCCGGACGTCTAAACCAAACCACTTTCACCGCTACACGACCGGGGGTATACTACGGTCAATGCTCTGAAATCTGTGGAGCAAACCACAGTTTCATGCCCATCGTCCTAGAATTAATTCCCCTAAAAATCTTTGAAATA---------------------GGGCCCGTATTTACCCTATAG");
+    data.put(
+            "Loach",
+            "ATGGCACATCCCACACAATTAGGATTCCAAGACGCGGCCTCACCCGTAATAGAAGAACTTCTTCACTTCCATGACCATGCCCTAATAATTGTATTTTTGATTAGCGCCCTAGTACTTTATGTTATTATTACAACCGTCTCAACAAAACTCACTAACATATATATTTTGGACTCACAAGAAATTGAAATCGTATGAACTGTGCTCCCTGCCCTAATCCTCATTTTAATCGCCCTCCCCTCACTACGAATTCTATATCTTATAGACGAGATTAATGACCCCCACCTAACAATTAAGGCCATGGGGCACCAATGATACTGAAGCTACGAGTATACTGATTATGAAAACTTAAGTTTTGACTCCTACATAATCCCCACCCAGGACCTAACCCCTGGACAATTCCGGCTACTAGAGACAGACCACCGAATGGTTGTTCCCATAGAATCCCCTATTCGCATTCTTGTTTCCGCCGAAGATGTACTACACTCCTGGGCCCTTCCAGCCATGGGGGTAAAGATAGACGCGGTCCCAGGACGCCTTAACCAAACCGCCTTTATTGCCTCCCGCCCCGGGGTATTCTATGGGCAATGCTCAGAAATCTGTGGAGCAAACCACAGCTTTATACCCATCGTAGTAGAAGCGGTCCCACTATCTCACTTCGAAAACTGGTCCACCCTTATACTAAAAGACGCCTCACTAGGAAGCTAA");
+    data.put(
+            "Mouse",
+            "ATGGCCTACCCATTCCAACTTGGTCTACAAGACGCCACATCCCCTATTATAGAAGAGCTAATAAATTTCCATGATCACACACTAATAATTGTTTTCCTAATTAGCTCCTTAGTCCTCTATATCATCTCGCTAATATTAACAACAAAACTAACACATACAAGCACAATAGATGCACAAGAAGTTGAAACCATTTGAACTATTCTACCAGCTGTAATCCTTATCATAATTGCTCTCCCCTCTCTACGCATTCTATATATAATAGACGAAATCAACAACCCCGTATTAACCGTTAAAACCATAGGGCACCAATGATACTGAAGCTACGAATATACTGACTATGAAGACCTATGCTTTGATTCATATATAATCCCAACAAACGACCTAAAACCTGGTGAACTACGACTGCTAGAAGTTGATAACCGAGTCGTTCTGCCAATAGAACTTCCAATCCGTATATTAATTTCATCTGAAGACGTCCTCCACTCATGAGCAGTCCCCTCCCTAGGACTTAAAACTGATGCCATCCCAGGCCGACTAAATCAAGCAACAGTAACATCAAACCGACCAGGGTTATTCTATGGCCAATGCTCTGAAATTTGTGGATCTAACCATAGCTTTATGCCCATTGTCCTAGAAATGGTTCCACTAAAATATTTCGAAAACTGATCTGCTTCAATAATT---------------------TAA");
+    data.put(
+            "Rat",
+            "ATGGCTTACCCATTTCAACTTGGCTTACAAGACGCTACATCACCTATCATAGAAGAACTTACAAACTTTCATGACCACACCCTAATAATTGTATTCCTCATCAGCTCCCTAGTACTTTATATTATTTCACTAATACTAACAACAAAACTAACACACACAAGCACAATAGACGCCCAAGAAGTAGAAACAATTTGAACAATTCTCCCAGCTGTCATTCTTATTCTAATTGCCCTTCCCTCCCTACGAATTCTATACATAATAGACGAGATTAATAACCCAGTTCTAACAGTAAAAACTATAGGACACCAATGATACTGAAGCTATGAATATACTGACTATGAAGACCTATGCTTTGACTCCTACATAATCCCAACCAATGACCTAAAACCAGGTGAACTTCGTCTATTAGAAGTTGATAATCGGGTAGTCTTACCAATAGAACTTCCAATTCGTATACTAATCTCATCCGAAGACGTCCTGCACTCATGAGCCATCCCTTCACTAGGGTTAAAAACCGACGCAATCCCCGGCCGCCTAAACCAAGCTACAGTCACATCAAACCGACCAGGTCTATTCTATGGCCAATGCTCTGAAATTTGCGGCTCAAATCACAGCTTCATACCCATTGTACTAGAAATAGTGCCTCTAAAATATTTCGAAAACTGATCAGCTTCTATAATT---------------------TAA");
+    data.put(
+            "Seal",
+            "ATGGCATACCCCCTACAAATAGGCCTACAAGATGCAACCTCTCCCATTATAGAGGAGTTACTACACTTCCATGACCACACATTAATAATTGTGTTCCTAATTAGCTCATTAGTACTCTACATTATCTCACTTATACTAACCACGAAACTCACCCACACAAGTACAATAGACGCACAAGAAGTGGAAACGGTGTGAACGATCCTACCCGCTATCATTTTAATTCTCATTGCCCTACCATCATTACGAATCCTCTACATAATGGACGAGATCAATAACCCTTCCTTGACCGTAAAAACTATAGGACATCAGTGATACTGAAGCTATGAGTACACAGACTACGAAGACCTGAACTTTGACTCATATATGATCCCCACACAAGAACTAAAGCCCGGAGAACTACGACTGCTAGAAGTAGACAATCGAGTAGTCCTCCCAATAGAAATAACAATCCGCATACTAATCTCATCAGAAGATGTACTCCACTCATGAGCCGTACCGTCCCTAGGACTAAAAACTGATGCTATCCCAGGACGACTAAACCAAACAACCCTAATAACCATACGACCAGGACTGTACTACGGTCAATGCTCAGAAATCTGTGGTTCAAACCACAGCTTCATACCTATTGTCCTCGAATTGGTCCCACTATCCCACTTCGAGAAATGATCTACCTCAATGCTT---------------------TAA");
+    data.put(
+            "Whale",
+            "ATGGCATATCCATTCCAACTAGGTTTCCAAGATGCAGCATCACCCATCATAGAAGAGCTCCTACACTTTCACGATCATACACTAATAATCGTTTTTCTAATTAGCTCTTTAGTTCTCTACATTATTACCCTAATGCTTACAACCAAATTAACACATACTAGTACAATAGACGCCCAAGAAGTAGAAACTGTCTGAACTATCCTCCCAGCCATTATCTTAATTTTAATTGCCTTGCCTTCATTACGGATCCTTTACATAATAGACGAAGTCAATAACCCCTCCCTCACTGTAAAAACAATAGGTCACCAATGATATTGAAGCTATGAGTATACCGACTACGAAGACCTAAGCTTCGACTCCTATATAATCCCAACATCAGACCTAAAGCCAGGAGAACTACGATTATTAGAAGTAGATAACCGAGTTGTCTTACCTATAGAAATAACAATCCGAATATTAGTCTCATCAGAAGACGTACTCCACTCATGGGCCGTACCCTCCTTGGGCCTAAAAACAGATGCAATCCCAGGACGCCTAAACCAAACAACCTTAATATCAACACGACCAGGCCTATTTTATGGACAATGCTCAGAGATCTGCGGCTCAAACCACAGTTTCATACCAATTGTCCTAGAACTAGTACCCCTAGAAGTCTTTGAAAAATGATCTGTATCAATACTA---------------------TAA");
+    data.put(
+            "Frog",
+            "ATGGCACACCCATCACAATTAGGTTTTCAAGACGCAGCCTCTCCAATTATAGAAGAATTACTTCACTTCCACGACCATACCCTCATAGCCGTTTTTCTTATTAGTACGCTAGTTCTTTACATTATTACTATTATAATAACTACTAAACTAACTAATACAAACCTAATGGACGCACAAGAGATCGAAATAGTGTGAACTATTATACCAGCTATTAGCCTCATCATAATTGCCCTTCCATCCCTTCGTATCCTATATTTAATAGATGAAGTTAATGATCCACACTTAACAATTAAAGCAATCGGCCACCAATGATACTGAAGCTACGAATATACTAACTATGAGGATCTCTCATTTGACTCTTATATAATTCCAACTAATGACCTTACCCCTGGACAATTCCGGCTGCTAGAAGTTGATAATCGAATAGTAGTCCCAATAGAATCTCCAACCCGACTTTTAGTTACAGCCGAAGACGTCCTCCACTCGTGAGCTGTACCCTCCTTGGGTGTCAAAACAGATGCAATCCCAGGACGACTTCATCAAACATCATTTATTGCTACTCGTCCGGGAGTATTTTACGGACAATGTTCAGAAATTTGCGGAGCAAACCACAGCTTTATACCAATTGTAGTTGAAGCAGTACCGCTAACCGACTTTGAAAACTGATCTTCATCAATACTA---GAAGCATCACTA------AGA");
+    return data;
+  }
+
+  /**
+   * Tests sequential format file is read correctly by comparing read sequence
+   * with that in the test data.
+   * 
+   * @throws Exception
+   */
+  @Test
+  public void testSequentialDataExtraction() throws Exception
+  {
+    testDataExtraction(sequentialFile);
+  }
+
+  /**
+   * Tests interleaved format file is read correctly by comparing read sequence
+   * with that in the test data.
+   * 
+   * @throws Exception
+   */
+  @Test
+  public void testInterleavedDataExtraction() throws Exception
+  {
+    testDataExtraction(interleavedFile);
+  }
+
+  /**
+   * Tests a PHYLIP file is read correctly by comparing read sequence with that
+   * in the test data.
+   * 
+   * @throws Exception
+   */
+  private void testDataExtraction(String file) throws IOException
+  {
+    AppletFormatAdapter rf = new AppletFormatAdapter();
+    Alignment al = rf.readFile(file, AppletFormatAdapter.FILE,
+            PhylipFile.FILE_DESC);
+    assertNotNull("Couldn't read supplied alignment data.", al);
+
+    Map<String, String> data = PhylipFileTests.getTestData();
+    for (SequenceI s : al.getSequencesArray())
+    {
+      assertTrue(s.getName() + " sequence did not match test data.", data
+              .get(s.getName()).equals(s.getSequenceAsString()));
+    }
+  }
+
+  /**
+   * Tests sequential format file reading and writing without data lose using
+   * similar approach to {@link StockholmFileTest}
+   * 
+   * @throws Exception
+   */
+  @Test
+  public void testSequentialIO() throws Exception
+  {
+    testIO(sequentialFile);
+  }
+
+  /**
+   * Tests interleaved format file reading and writing without data lose using
+   * similar approach to {@link StockholmFileTest}
+   * 
+   * @throws Exception
+   */
+  @Test
+  public void testInterleavedIO() throws Exception
+  {
+    testIO(interleavedFile);
+  }
+
+  /**
+   * Uses {@link StockholmFileTest} to test read/write/read
+   * 
+   * @param file
+   * @throws IOException
+   */
+  public void testIO(String file) throws IOException
+  {
+    AppletFormatAdapter rf = new AppletFormatAdapter();
+    Alignment al = rf.readFile(file, AppletFormatAdapter.FILE,
+            PhylipFile.FILE_DESC);
+    assertNotNull("Couldn't read supplied alignment data.", al);
+
+    String outputfile = rf.formatSequences(PhylipFile.FILE_DESC, al, true);
+
+    Alignment al_input = new AppletFormatAdapter().readFile(outputfile,
+            AppletFormatAdapter.PASTE, PhylipFile.FILE_DESC);
+    assertNotNull("Couldn't parse reimported alignment data.", al_input);
+
+    StockholmFileTest.testAlignmentEquivalence(al, al_input);
+
+  }
+}
\ No newline at end of file
diff --git a/test/jalview/io/RNAMLfileTest.java b/test/jalview/io/RNAMLfileTest.java
new file mode 100644 (file)
index 0000000..5839761
--- /dev/null
@@ -0,0 +1,52 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
+package jalview.io;
+
+import static org.junit.Assert.*;
+
+import java.io.File;
+
+import org.junit.AfterClass;
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+public class RNAMLfileTest
+{
+
+  @BeforeClass
+  public static void setUpBeforeClass() throws Exception
+  {
+  }
+
+  @AfterClass
+  public static void tearDownAfterClass() throws Exception
+  {
+  }
+
+  @Test
+  public void testRnamlToStockholmIO()
+  {
+    StockholmFileTest.testFileIOwithFormat(new File(
+            "examples/rna-alignment.xml"), "STH");
+
+  }
+
+}
index fa4c25b..8fece9d 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.0b1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io;
@@ -45,9 +47,11 @@ public class StockholmFileTest
   {
     testFileIOwithFormat(new File(PfamFile), "STH");
   }
+
   @Test
   public void pfamFileDataExtraction() throws Exception
-  {  AppletFormatAdapter af = new AppletFormatAdapter();
+  {
+    AppletFormatAdapter af = new AppletFormatAdapter();
     AlignmentI al = af.readFile(PfamFile, af.FILE,
             new IdentifyFile().Identify(PfamFile, af.FILE));
     int numpdb = 0;
@@ -98,7 +102,8 @@ public class StockholmFileTest
         al.getSequenceAt(i).setDatasetSequence(al.getSequenceAt(i));
       }
       String outputfile = rf.formatSequences(ioformat, al, true);
-      System.out.println("Output file in '"+ioformat+"':\n"+outputfile+"\n<<EOF\n");
+      System.out.println("Output file in '" + ioformat + "':\n"
+              + outputfile + "\n<<EOF\n");
       // test for consistency in io
       Alignment al_input = new AppletFormatAdapter().readFile(outputfile,
               AppletFormatAdapter.PASTE, ioformat);
@@ -153,36 +158,48 @@ public class StockholmFileTest
     // we might want to revise this in future
     int aa_new_size = (aa_new == null ? 0 : aa_new.length), aa_original_size = (aa_original == null ? 0
             : aa_original.length);
-    Map<Integer,java.util.BitSet> orig_groups=new HashMap<Integer,java.util.BitSet>(),new_groups=new HashMap<Integer,java.util.BitSet>();
+    Map<Integer, java.util.BitSet> orig_groups = new HashMap<Integer, java.util.BitSet>(), new_groups = new HashMap<Integer, java.util.BitSet>();
 
     if (aa_new != null && aa_original != null)
     {
       for (int i = 0; i < aa_original.length; i++)
       {
-        if (aa_new.length>i) {
-          assertTrue("Different alignment annotation at position "+i,
-                equalss(aa_original[i], aa_new[i]));
+        if (aa_new.length > i)
+        {
+          assertTrue("Different alignment annotation at position " + i,
+                  equalss(aa_original[i], aa_new[i]));
           // compare graphGroup or graph properties - needed to verify JAL-1299
-          assertTrue("Graph type not identical.",aa_original[i].graph==aa_new[i].graph);
-          assertTrue("Visibility not identical.", aa_original[i].visible==aa_new[i].visible);
+          assertTrue("Graph type not identical.",
+                  aa_original[i].graph == aa_new[i].graph);
+          assertTrue("Visibility not identical.",
+                  aa_original[i].visible == aa_new[i].visible);
           assertTrue(
                   "Threshold line not identical.",
                   aa_original[i].threshold == null ? aa_new[i].threshold == null
                           : aa_original[i].threshold
                                   .equals(aa_new[i].threshold));
           // graphGroup may differ, but pattern should be the same
-          Integer o_ggrp=new Integer(aa_original[i].graphGroup+2),n_ggrp=new Integer(aa_new[i].graphGroup+2);
-          BitSet orig_g=orig_groups.get(o_ggrp),new_g=new_groups.get(n_ggrp);
-          if (orig_g==null) {
-            orig_groups.put(o_ggrp,orig_g= new BitSet());
+          Integer o_ggrp = new Integer(aa_original[i].graphGroup + 2), n_ggrp = new Integer(
+                  aa_new[i].graphGroup + 2);
+          BitSet orig_g = orig_groups.get(o_ggrp), new_g = new_groups
+                  .get(n_ggrp);
+          if (orig_g == null)
+          {
+            orig_groups.put(o_ggrp, orig_g = new BitSet());
           }
-          if (new_g==null) {
-            new_groups.put(n_ggrp, new_g=new BitSet());
+          if (new_g == null)
+          {
+            new_groups.put(n_ggrp, new_g = new BitSet());
           }
-          assertTrue("Graph Group pattern differs at annotation "+i, orig_g.equals(new_g));
-          orig_g.set(i); new_g.set(i);
-        } else {
-          System.err.println("No matching annotation row for "+aa_original[i].toString());
+          assertTrue("Graph Group pattern differs at annotation " + i,
+                  orig_g.equals(new_g));
+          orig_g.set(i);
+          new_g.set(i);
+        }
+        else
+        {
+          System.err.println("No matching annotation row for "
+                  + aa_original[i].toString());
         }
       }
     }
@@ -291,23 +308,28 @@ public class StockholmFileTest
   {
     if (annot_or.annotations.length != annot_new.annotations.length)
     {
-      System.err.println("Different lengths for annotation row elements: "+annot_or.annotations.length +"!="+ annot_new.annotations.length);
+      System.err.println("Different lengths for annotation row elements: "
+              + annot_or.annotations.length + "!="
+              + annot_new.annotations.length);
       return false;
     }
     for (int i = 0; i < annot_or.annotations.length; i++)
     {
-      Annotation an_or=annot_or.annotations[i],an_new=annot_new.annotations[i];
-      if (an_or != null
-              && an_new!= null)
+      Annotation an_or = annot_or.annotations[i], an_new = annot_new.annotations[i];
+      if (an_or != null && an_new != null)
       {
-        if (!an_or.displayCharacter.trim()
-                .equals(an_new.displayCharacter.trim())
-                || !(""+an_or.secondaryStructure).trim().equals((""+an_new.secondaryStructure).trim())
+        if (!an_or.displayCharacter.trim().equals(
+                an_new.displayCharacter.trim())
+                || !("" + an_or.secondaryStructure).trim().equals(
+                        ("" + an_new.secondaryStructure).trim())
                 || (an_or.description != an_new.description && (an_or.description == null
                         || an_new.description == null || !an_or.description
                           .equals(an_new.description))))
         {
-          System.err.println("Annotation Element Mismatch\nElement "+i+" in original: "+annot_or.annotations[i].toString()+"\nElement "+i+" in new: "+annot_new.annotations[i].toString());
+          System.err.println("Annotation Element Mismatch\nElement " + i
+                  + " in original: " + annot_or.annotations[i].toString()
+                  + "\nElement " + i + " in new: "
+                  + annot_new.annotations[i].toString());
           return false;
         }
       }
@@ -318,7 +340,16 @@ public class StockholmFileTest
       }
       else
       {
-        System.err.println("Annotation Element Mismatch\nElement "+i+" in original: "+(annot_or.annotations[i]==null ? "is null" : annot_or.annotations[i].toString())+"\nElement "+i+" in new: "+(annot_new.annotations[i] == null ? "is null" : annot_new.annotations[i].toString()));
+        System.err.println("Annotation Element Mismatch\nElement "
+                + i
+                + " in original: "
+                + (annot_or.annotations[i] == null ? "is null"
+                        : annot_or.annotations[i].toString())
+                + "\nElement "
+                + i
+                + " in new: "
+                + (annot_new.annotations[i] == null ? "is null"
+                        : annot_new.annotations[i].toString()));
         return false;
       }
     }
index 3b6c30a..2558989 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.0b1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.io;
@@ -27,161 +29,227 @@ import java.io.FileNotFoundException;
 import java.io.IOException;
 import java.util.List;
 
+import javax.xml.parsers.ParserConfigurationException;
+
 import org.junit.Test;
+import org.xml.sax.SAXException;
+
+import fr.orsay.lri.varna.exceptions.ExceptionFileFormatOrSyntax;
+import fr.orsay.lri.varna.exceptions.ExceptionLoadingFailed;
+import fr.orsay.lri.varna.exceptions.ExceptionPermissionDenied;
+import fr.orsay.lri.varna.exceptions.ExceptionUnmatchedClosingParentheses;
+
+public class TCoffeeScoreFileTest
+{
+
+  final static File SCORE_FILE = new File(
+          "test/jalview/io/tcoffee.score_ascii");
+
+  final static File ALIGN_FILE = new File(
+          "test/jalview/io/tcoffee.fasta_aln");
+
+  @Test
+  public void testReadHeader() throws IOException
+  {
+
+    TCoffeeScoreFile scoreFile = new TCoffeeScoreFile(SCORE_FILE.getPath(),
+            AppletFormatAdapter.FILE);
+    assertTrue(scoreFile.getWarningMessage(), scoreFile.isValid());
+
+    Header header = scoreFile.header;
+    assertNotNull(header);
+    assertEquals(
+            "T-COFFEE, Version_9.02.r1228 (2012-02-16 18:15:12 - Revision 1228 - Build 336)",
+            header.head);
+    assertEquals(90, header.score);
+    assertEquals(89, header.getScoreFor("1PHT"));
+    assertEquals(90, header.getScoreFor("1BB9"));
+    assertEquals(94, header.getScoreFor("1UHC"));
+    assertEquals(94, header.getScoreFor("1YCS"));
+    assertEquals(93, header.getScoreFor("1OOT"));
+    assertEquals(94, header.getScoreFor("1ABO"));
+    assertEquals(94, header.getScoreFor("1FYN"));
+    assertEquals(94, header.getScoreFor("1QCF"));
+    assertEquals(90, header.getScoreFor("cons"));
+  }
+
+  @Test
+  public void testWrongFile()
+  {
+    try
+    {
+      TCoffeeScoreFile result = new TCoffeeScoreFile(ALIGN_FILE.getPath(),
+              FormatAdapter.FILE);
+      assertFalse(result.isValid());
+    } catch (IOException x)
+    {
+      assertTrue("File not found exception thrown",
+              x instanceof FileNotFoundException);
+    }
+  }
+
+  @Test
+  public void testHeightAndWidth() throws IOException
+  {
+    TCoffeeScoreFile result = new TCoffeeScoreFile(SCORE_FILE.getPath(),
+            FormatAdapter.FILE);
+    assertTrue(result.isValid());
+    assertEquals(8, result.getHeight());
+    assertEquals(83, result.getWidth());
+  }
+
+  @Test
+  public void testReadBlock() throws IOException
+  {
+
+    String BLOCK = "\n" + "\n" + "\n"
+            + "1PHT   999999999999999999999999998762112222543211112134\n"
+            + "1BB9   99999999999999999999999999987-------4322----2234  \n"
+            + "1UHC   99999999999999999999999999987-------5321----2246\n"
+            + "1YCS   99999999999999999999999999986-------4321----1-35\n"
+            + "1OOT   999999999999999999999999999861-------3------1135  \n"
+            + "1ABO   99999999999999999999999999986-------422-------34\n"
+            + "1FYN   99999999999999999999999999985-------32--------35\n"
+            + "1QCF   99999999999999999999999999974-------2---------24\n"
+            + "cons   999999999999999999999999999851000110321100001134\n"
+            + "\n" + "\n";
+    FileParse source = new FileParse(BLOCK, FormatAdapter.PASTE);
+    Block block = TCoffeeScoreFile.readBlock(source, 0);
+
+    assertNotNull(block);
+    assertEquals("999999999999999999999999998762112222543211112134",
+            block.getScoresFor("1PHT"));
+    assertEquals("99999999999999999999999999987-------4322----2234",
+            block.getScoresFor("1BB9"));
+    assertEquals("99999999999999999999999999987-------5321----2246",
+            block.getScoresFor("1UHC"));
+    assertEquals("99999999999999999999999999986-------4321----1-35",
+            block.getScoresFor("1YCS"));
+    assertEquals("999999999999999999999999999861-------3------1135",
+            block.getScoresFor("1OOT"));
+    assertEquals("99999999999999999999999999986-------422-------34",
+            block.getScoresFor("1ABO"));
+    assertEquals("99999999999999999999999999985-------32--------35",
+            block.getScoresFor("1FYN"));
+    assertEquals("99999999999999999999999999974-------2---------24",
+            block.getScoresFor("1QCF"));
+    assertEquals("999999999999999999999999999851000110321100001134",
+            block.getConsensus());
+  }
+
+  @Test
+  public void testParse() throws IOException
+  {
+
+    TCoffeeScoreFile parser = new TCoffeeScoreFile(SCORE_FILE.getPath(),
+            FormatAdapter.FILE);
+
+    assertEquals(
+            "999999999999999999999999998762112222543211112134----------5666642367889999999999889",
+            parser.getScoresFor("1PHT"));
+    assertEquals(
+            "99999999999999999999999999987-------4322----22341111111111676653-355679999999999889",
+            parser.getScoresFor("1BB9"));
+    assertEquals(
+            "99999999999999999999999999987-------5321----2246----------788774--66789999999999889",
+            parser.getScoresFor("1UHC"));
+    assertEquals(
+            "99999999999999999999999999986-------4321----1-35----------78777--356789999999999889",
+            parser.getScoresFor("1YCS"));
+    assertEquals(
+            "999999999999999999999999999861-------3------1135----------78877--356789999999997-67",
+            parser.getScoresFor("1OOT"));
+    assertEquals(
+            "99999999999999999999999999986-------422-------34----------687774--56779999999999889",
+            parser.getScoresFor("1ABO"));
+    assertEquals(
+            "99999999999999999999999999985-------32--------35----------6888842356789999999999889",
+            parser.getScoresFor("1FYN"));
+    assertEquals(
+            "99999999999999999999999999974-------2---------24----------6878742356789999999999889",
+            parser.getScoresFor("1QCF"));
+    assertEquals(
+            "99999999999999999999999999985100011032110000113400100000006877641356789999999999889",
+            parser.getScoresFor("cons"));
+  }
+
+  @Test
+  public void testGetAsList() throws IOException
+  {
+
+    TCoffeeScoreFile parser = new TCoffeeScoreFile(SCORE_FILE.getPath(),
+            FormatAdapter.FILE);
+    assertTrue(parser.getWarningMessage(), parser.isValid());
+    List<String> scores = parser.getScoresList();
+    assertEquals(
+            "999999999999999999999999998762112222543211112134----------5666642367889999999999889",
+            scores.get(0));
+    assertEquals(
+            "99999999999999999999999999987-------4322----22341111111111676653-355679999999999889",
+            scores.get(1));
+    assertEquals(
+            "99999999999999999999999999987-------5321----2246----------788774--66789999999999889",
+            scores.get(2));
+    assertEquals(
+            "99999999999999999999999999986-------4321----1-35----------78777--356789999999999889",
+            scores.get(3));
+    assertEquals(
+            "999999999999999999999999999861-------3------1135----------78877--356789999999997-67",
+            scores.get(4));
+    assertEquals(
+            "99999999999999999999999999986-------422-------34----------687774--56779999999999889",
+            scores.get(5));
+    assertEquals(
+            "99999999999999999999999999985-------32--------35----------6888842356789999999999889",
+            scores.get(6));
+    assertEquals(
+            "99999999999999999999999999974-------2---------24----------6878742356789999999999889",
+            scores.get(7));
+    assertEquals(
+            "99999999999999999999999999985100011032110000113400100000006877641356789999999999889",
+            scores.get(8));
+
+  }
+
+  @Test
+  public void testGetAsArray() throws IOException
+  {
+
+    TCoffeeScoreFile parser = new TCoffeeScoreFile(SCORE_FILE.getPath(),
+            FormatAdapter.FILE);
+    assertTrue(parser.getWarningMessage(), parser.isValid());
+    byte[][] scores = parser.getScoresArray();
+
+    assertEquals(9, scores[0][0]);
+    assertEquals(9, scores[1][0]);
+    assertEquals(9, scores[2][0]);
+    assertEquals(9, scores[3][0]);
+    assertEquals(9, scores[4][0]);
+    assertEquals(9, scores[5][0]);
+    assertEquals(9, scores[6][0]);
+    assertEquals(9, scores[7][0]);
+    assertEquals(9, scores[8][0]);
+
+    assertEquals(5, scores[0][36]);
+    assertEquals(4, scores[1][36]);
+    assertEquals(5, scores[2][36]);
+    assertEquals(4, scores[3][36]);
+    assertEquals(-1, scores[4][36]);
+    assertEquals(4, scores[5][36]);
+    assertEquals(3, scores[6][36]);
+    assertEquals(2, scores[7][36]);
+    assertEquals(3, scores[8][36]);
+
+  }
+
+  @Test
+  public void testHeightAndWidthWithResidueNumbers() throws Exception
+  {
+    String file = "test/jalview/io/tcoffee.score_ascii_with_residue_numbers";
+    TCoffeeScoreFile result = new TCoffeeScoreFile(file, FormatAdapter.FILE);
+    assertTrue(result.isValid());
+    assertEquals(5, result.getHeight());
+    assertEquals(84, result.getWidth());
+  }
 
-public class TCoffeeScoreFileTest {
-
-       final static File SCORE_FILE = new File("test/jalview/io/tcoffee.score_ascii");
-    final static File ALIGN_FILE = new File("test/jalview/io/tcoffee.fasta_aln");
-       
-       @Test
-       public void testReadHeader() throws IOException, FileNotFoundException {
-
-           TCoffeeScoreFile scoreFile = new TCoffeeScoreFile(SCORE_FILE.getPath(),AppletFormatAdapter.FILE);
-           assertTrue(scoreFile.getWarningMessage(),scoreFile.isValid());
-               
-           Header header = scoreFile.header;
-               assertNotNull(header);
-               assertEquals( "T-COFFEE, Version_9.02.r1228 (2012-02-16 18:15:12 - Revision 1228 - Build 336)", header.head );
-               assertEquals( 90, header.score );
-               assertEquals( 89, header.getScoreFor("1PHT") );
-               assertEquals( 90, header.getScoreFor("1BB9") );
-               assertEquals( 94, header.getScoreFor("1UHC") );
-               assertEquals( 94, header.getScoreFor("1YCS") );
-               assertEquals( 93, header.getScoreFor("1OOT") );
-               assertEquals( 94, header.getScoreFor("1ABO") );
-               assertEquals( 94, header.getScoreFor("1FYN") );
-               assertEquals( 94, header.getScoreFor("1QCF") );
-               assertEquals( 90, header.getScoreFor("cons") );
-       }
-       
-       
-       @Test
-       public void testWrongFile() {
-           try {
-                       TCoffeeScoreFile result = new TCoffeeScoreFile(ALIGN_FILE.getPath(), FormatAdapter.FILE);
-                       assertFalse(result.isValid());
-           } 
-           catch (IOException x)
-           {
-             assertTrue("File not found exception thrown",x instanceof FileNotFoundException);
-           }
-       } 
-
-       @Test
-       public void testHeightAndWidth() throws IOException {
-               TCoffeeScoreFile result = new TCoffeeScoreFile(SCORE_FILE.getPath(), FormatAdapter.FILE);
-               assertTrue(result.isValid());
-               assertEquals( 8, result.getHeight() );
-               assertEquals( 83, result.getWidth() );
-       }       
-       
-       @Test
-       public void testReadBlock( ) throws IOException {
-               
-               String BLOCK = "\n" +
-                               "\n" +
-                               "\n" +
-                               "1PHT   999999999999999999999999998762112222543211112134\n" +
-                               "1BB9   99999999999999999999999999987-------4322----2234  \n" +
-                               "1UHC   99999999999999999999999999987-------5321----2246\n" +
-                               "1YCS   99999999999999999999999999986-------4321----1-35\n" +
-                               "1OOT   999999999999999999999999999861-------3------1135  \n" +
-                               "1ABO   99999999999999999999999999986-------422-------34\n" +
-                               "1FYN   99999999999999999999999999985-------32--------35\n" +
-                               "1QCF   99999999999999999999999999974-------2---------24\n" +
-                               "cons   999999999999999999999999999851000110321100001134\n" +
-                               "\n" +
-                               "\n";
-               FileParse source=new FileParse(BLOCK, FormatAdapter.PASTE);
-               Block block = TCoffeeScoreFile.readBlock(source, 0);
-
-                assertNotNull(block);
-               assertEquals( "999999999999999999999999998762112222543211112134", block.getScoresFor("1PHT") );
-               assertEquals( "99999999999999999999999999987-------4322----2234", block.getScoresFor("1BB9") );
-               assertEquals( "99999999999999999999999999987-------5321----2246", block.getScoresFor("1UHC") );
-               assertEquals( "99999999999999999999999999986-------4321----1-35", block.getScoresFor("1YCS") );
-               assertEquals( "999999999999999999999999999861-------3------1135", block.getScoresFor("1OOT") );
-               assertEquals( "99999999999999999999999999986-------422-------34", block.getScoresFor("1ABO") );
-               assertEquals( "99999999999999999999999999985-------32--------35", block.getScoresFor("1FYN") );
-               assertEquals( "99999999999999999999999999974-------2---------24", block.getScoresFor("1QCF") );
-               assertEquals( "999999999999999999999999999851000110321100001134", block.getConsensus() );
-       }
-
-       @Test
-       public void testParse() throws IOException {
-
-               TCoffeeScoreFile parser = new TCoffeeScoreFile(SCORE_FILE.getPath(), FormatAdapter.FILE);
-
-               assertEquals( "999999999999999999999999998762112222543211112134----------5666642367889999999999889", parser.getScoresFor("1PHT") );
-               assertEquals( "99999999999999999999999999987-------4322----22341111111111676653-355679999999999889", parser.getScoresFor("1BB9") );
-               assertEquals( "99999999999999999999999999987-------5321----2246----------788774--66789999999999889", parser.getScoresFor("1UHC") );
-               assertEquals( "99999999999999999999999999986-------4321----1-35----------78777--356789999999999889", parser.getScoresFor("1YCS") );
-               assertEquals( "999999999999999999999999999861-------3------1135----------78877--356789999999997-67", parser.getScoresFor("1OOT") );
-               assertEquals( "99999999999999999999999999986-------422-------34----------687774--56779999999999889", parser.getScoresFor("1ABO") );
-               assertEquals( "99999999999999999999999999985-------32--------35----------6888842356789999999999889", parser.getScoresFor("1FYN") );
-               assertEquals( "99999999999999999999999999974-------2---------24----------6878742356789999999999889", parser.getScoresFor("1QCF") );
-               assertEquals( "99999999999999999999999999985100011032110000113400100000006877641356789999999999889", parser.getScoresFor("cons") );             
-       }
-
-       
-       @Test
-       public void testGetAsList() throws IOException {
-               
-          TCoffeeScoreFile parser = new TCoffeeScoreFile(SCORE_FILE.getPath(),FormatAdapter.FILE);
-          assertTrue(parser.getWarningMessage(),parser.isValid());
-               List<String> scores = parser.getScoresList();
-               assertEquals( "999999999999999999999999998762112222543211112134----------5666642367889999999999889", scores.get(0) );
-               assertEquals( "99999999999999999999999999987-------4322----22341111111111676653-355679999999999889", scores.get(1) );
-               assertEquals( "99999999999999999999999999987-------5321----2246----------788774--66789999999999889", scores.get(2) );
-               assertEquals( "99999999999999999999999999986-------4321----1-35----------78777--356789999999999889", scores.get(3) );
-               assertEquals( "999999999999999999999999999861-------3------1135----------78877--356789999999997-67", scores.get(4) );
-               assertEquals( "99999999999999999999999999986-------422-------34----------687774--56779999999999889", scores.get(5) );
-               assertEquals( "99999999999999999999999999985-------32--------35----------6888842356789999999999889", scores.get(6) );
-               assertEquals( "99999999999999999999999999974-------2---------24----------6878742356789999999999889", scores.get(7) );
-               assertEquals( "99999999999999999999999999985100011032110000113400100000006877641356789999999999889", scores.get(8) );           
-               
-       } 
-       
-       
-       @Test
-       public void testGetAsArray() throws IOException {
-               
-          TCoffeeScoreFile parser = new TCoffeeScoreFile(SCORE_FILE.getPath(),FormatAdapter.FILE);
-          assertTrue(parser.getWarningMessage(),parser.isValid());
-               byte[][] scores = parser.getScoresArray();
-       
-               assertEquals( 9, scores[0][0] );
-               assertEquals( 9, scores[1][0] );
-               assertEquals( 9, scores[2][0] );
-               assertEquals( 9, scores[3][0] );
-               assertEquals( 9, scores[4][0] );
-               assertEquals( 9, scores[5][0] );
-               assertEquals( 9, scores[6][0] );
-               assertEquals( 9, scores[7][0] );
-               assertEquals( 9, scores[8][0] );
-               
-               assertEquals( 5, scores[0][36] );
-               assertEquals( 4, scores[1][36] );
-               assertEquals( 5, scores[2][36] );
-               assertEquals( 4, scores[3][36] );
-               assertEquals( -1, scores[4][36] );
-               assertEquals( 4, scores[5][36] );
-               assertEquals( 3, scores[6][36] );
-               assertEquals( 2, scores[7][36] );
-               assertEquals( 3, scores[8][36] );
-               
-       } 
-       
-       @Test
-       public void testHeightAndWidthWithResidueNumbers() throws IOException {
-               String file = "test/jalview/io/tcoffee.score_ascii_with_residue_numbers";
-               TCoffeeScoreFile result = new TCoffeeScoreFile(file, FormatAdapter.FILE);
-               assertTrue(result.isValid());
-               assertEquals( 5, result.getHeight() );
-               assertEquals( 84, result.getWidth() );
-       }       
-       
-       
-       
 }
diff --git a/test/jalview/io/test_gz_fasta_notgz.gz b/test/jalview/io/test_gz_fasta_notgz.gz
new file mode 100644 (file)
index 0000000..63b12b1
--- /dev/null
@@ -0,0 +1,24 @@
+>1PHT
+YQYRALYDYKKEREEDIDLHLGDILTVNKGSLVALGFSDGQEARPEEI--
+--------GWLNGYNETTGERGDFPGTYVEYIG
+>1BB9
+FKVQAQHDYTATDTDELQLKAGDVVLVIP-------FQNP----EEQDEG
+WLMGVKESDWNQHK-ELEKCRGVFPENFTERVQ
+>1UHC
+QVYFAVYTFKARNPNELSVSANQKLKILE-------FKDV----TGNT--
+--------EWWLAE--VNGKKGYVPSNYIRKTE
+>1YCS
+GVIYALWDYEPQNDDELPMKEGDCMTIIH-------REDE----D-EI--
+--------EWWWA--RLNDKEGYVPRNLLGLYP
+>1OOT
+PKAVALYSFAGEESGDLPFRKGDVITILKK-------S------DSQN--
+--------DWWTG--RVNGREGIFPANYVE-LV
+>1ABO
+NLFVALYDFVASGDNTLSITKGEKLRVLG-------YNH-------NG--
+--------EWCEAQ--TKNGQGWVPSNYITPVN
+>1FYN
+TLFVALYDYEARTEDDLSFHKGEKFQILN-------SS--------EG--
+--------DWWEARSLTTGETGYIPSNYVAPVD
+>1QCF
+IIVVALYDYEAIHHEDLSFQKGDQMVVLE-------E---------SG--
+--------EWWKARSLATRKEGYIPSNYVARVD
\ No newline at end of file
index 490b04d..d8529f8 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.0b1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.schemes;
@@ -39,46 +41,69 @@ public class DnaCodonTests
   @Test
   public void testAmbiguityCodeGeneration()
   {
-    assertTrue(ResidueProperties.ambiguityCodes.size()>0);
+    assertTrue(ResidueProperties.ambiguityCodes.size() > 0);
   }
+
   @Test
-  public void testAmbiguityCodon() {
-    for (String ac:ResidueProperties.ambiguityCodes.keySet())
+  public void testAmbiguityCodon()
+  {
+    for (String ac : ResidueProperties.ambiguityCodes.keySet())
     {
-      assertTrue("Couldn't resolve GGN as glycine codon",ResidueProperties.codonHash2.get("GG"+ac).equals("G"));
+      assertTrue("Couldn't resolve GGN as glycine codon",
+              ResidueProperties.codonHash2.get("GG" + ac).equals("G"));
     }
   }
+
   @Test
-  public void regenerateCodonTable() {
-    for (Map.Entry<String, String> codon:ResidueProperties.codonHash2.entrySet())
+  public void regenerateCodonTable()
+  {
+    for (Map.Entry<String, String> codon : ResidueProperties.codonHash2
+            .entrySet())
     {
-      System.out.println("ResidueProperties.codonHash2.set(\""+codon.getKey()+"\", \""+codon.getValue()+"\");");
+      System.out.println("ResidueProperties.codonHash2.set(\""
+              + codon.getKey() + "\", \"" + codon.getValue() + "\");");
     }
   }
+
   @Test
-  public void checkOldCodonagainstNewCodonTable() {
-    // note - this test will be removed once the old codon table (including Vectors) is removed
-    String additional="",failtrans="",differentTr="";
-    for (Object aa:ResidueProperties.codonHash.keySet())
+  public void checkOldCodonagainstNewCodonTable()
+  {
+    // note - this test will be removed once the old codon table (including
+    // Vectors) is removed
+    String additional = "", failtrans = "", differentTr = "";
+    for (Object aa : ResidueProperties.codonHash.keySet())
     {
-      String amacid=(String) aa;
-      for (Object codons:((Vector)ResidueProperties.codonHash.get(amacid)))
+      String amacid = (String) aa;
+      for (Object codons : ((Vector) ResidueProperties.codonHash
+              .get(amacid)))
       {
         String codon = (String) codons;
         String trans = ResidueProperties.codonTranslate(codon);
         String oldtrans = ResidueProperties._codonTranslate(codon);
-        if (trans==null) {
-          additional+="\nOld translation table includes additional codons for "+amacid+" : "+codon;
+        if (trans == null)
+        {
+          additional += "\nOld translation table includes additional codons for "
+                  + amacid + " : " + codon;
         }
-        if (oldtrans==null) {
-          failtrans+=("\nold translation routine failed for old translation entry (aa was "+amacid+" codon was "+codon+")");
+        if (oldtrans == null)
+        {
+          failtrans += ("\nold translation routine failed for old translation entry (aa was "
+                  + amacid + " codon was " + codon + ")");
         }
         if (!oldtrans.equals(trans))
         {
-          differentTr+=("\nDifferent translation for old and new routines: "+amacid+" "+codon+" => expected "+oldtrans+" and got "+trans);
+          differentTr += ("\nDifferent translation for old and new routines: "
+                  + amacid
+                  + " "
+                  + codon
+                  + " => expected "
+                  + oldtrans
+                  + " and got " + trans);
         }
       }
     }
-    assertTrue(""+additional+"\n"+failtrans+"\n"+differentTr,additional.length()==0 && failtrans.length()==0 && differentTr.length()==0);
+    assertTrue("" + additional + "\n" + failtrans + "\n" + differentTr,
+            additional.length() == 0 && failtrans.length() == 0
+                    && differentTr.length() == 0);
   }
 }
index 2830918..88d234e 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.0b1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.schemes;
@@ -24,27 +26,29 @@ import java.util.Map;
 
 import org.junit.Test;
 
-
-public class ScoreMatrixPrinter 
+public class ScoreMatrixPrinter
 {
   @Test
   public void printAllMatrices()
   {
-    for (Map.Entry<String,ScoreModelI> sm: ResidueProperties.scoreMatrices.entrySet())
+    for (Map.Entry<String, ScoreModelI> sm : ResidueProperties.scoreMatrices
+            .entrySet())
     {
-      System.out.println("Matrix "+sm.getKey());
+      System.out.println("Matrix " + sm.getKey());
       System.out.println(sm.getValue().toString());
     }
   }
+
   @Test
   public void printHTMLMatrices()
   {
-    for (Map.Entry<String,ScoreModelI> _sm: ResidueProperties.scoreMatrices.entrySet())
+    for (Map.Entry<String, ScoreModelI> _sm : ResidueProperties.scoreMatrices
+            .entrySet())
     {
       if (_sm.getValue() instanceof ScoreMatrix)
       {
         ScoreMatrix sm = (ScoreMatrix) _sm.getValue();
-        System.out.println("Matrix "+_sm.getKey());
+        System.out.println("Matrix " + _sm.getKey());
         System.out.println(sm.outputMatrix(true));
       }
     }
diff --git a/test/jalview/util/ColorUtilsTest.java b/test/jalview/util/ColorUtilsTest.java
new file mode 100644 (file)
index 0000000..da2e6ca
--- /dev/null
@@ -0,0 +1,42 @@
+package jalview.util;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNull;
+
+import java.awt.Color;
+
+import org.junit.Test;
+
+public class ColorUtilsTest
+{
+
+  Color paleColour = new Color(97, 203, 111); // pale green
+
+  Color midColour = new Color(135, 57, 41); // mid red
+
+  Color darkColour = new Color(11, 30, 50); // dark blue
+
+  @Test
+  public void testDarkerThan()
+  {
+    assertEquals("Wrong darker shade", new Color(32, 69, 37),
+            ColorUtils.darkerThan(paleColour));
+    assertEquals("Wrong darker shade", new Color(45, 18, 13),
+            ColorUtils.darkerThan(midColour));
+    assertEquals("Wrong darker shade", new Color(2, 9, 16),
+            ColorUtils.darkerThan(darkColour));
+    assertNull(ColorUtils.darkerThan(null));
+  }
+
+  @Test
+  public void testBrighterThan()
+  {
+    assertEquals("Wrong brighter shade", new Color(255, 255, 255), // white
+            ColorUtils.brighterThan(paleColour));
+    assertEquals("Wrong brighter shade", new Color(255, 164, 117),
+            ColorUtils.brighterThan(midColour));
+    assertEquals("Wrong brighter shade", new Color(30, 85, 144),
+            ColorUtils.brighterThan(darkColour));
+    assertNull(ColorUtils.brighterThan(null));
+  }
+}
diff --git a/test/jalview/ws/PDBSequenceFetcherTest.java b/test/jalview/ws/PDBSequenceFetcherTest.java
new file mode 100644 (file)
index 0000000..6f0bf26
--- /dev/null
@@ -0,0 +1,60 @@
+/*\r
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)\r
+ * Copyright (C) 2014 The Jalview Authors\r
+ * \r
+ * This file is part of Jalview.\r
+ * \r
+ * Jalview is free software: you can redistribute it and/or\r
+ * modify it under the terms of the GNU General Public License \r
+ * as published by the Free Software Foundation, either version 3\r
+ * of the License, or (at your option) any later version.\r
+ *  \r
+ * Jalview is distributed in the hope that it will be useful, but \r
+ * WITHOUT ANY WARRANTY; without even the implied warranty \r
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR \r
+ * PURPOSE.  See the GNU General Public License for more details.\r
+ * \r
+ * You should have received a copy of the GNU General Public License\r
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.\r
+ * The Jalview Authors are detailed in the 'AUTHORS' file.\r
+ */\r
+package jalview.ws;\r
+\r
+import static org.junit.Assert.*;\r
+import jalview.datamodel.AlignmentI;\r
+import jalview.datamodel.SequenceI;\r
+import jalview.ws.seqfetcher.DbSourceProxy;\r
+\r
+import java.util.List;\r
+\r
+import org.junit.Before;\r
+import org.junit.Test;\r
+\r
+public class PDBSequenceFetcherTest\r
+{\r
+\r
+  SequenceFetcher sf;\r
+\r
+  @Before\r
+  public void setUp() throws Exception\r
+  {\r
+    sf = new SequenceFetcher(false);\r
+  }\r
+\r
+  @Test\r
+  public void testRnaSeqRetrieve() throws Exception\r
+  {\r
+    List<DbSourceProxy> sps = sf.getSourceProxy("PDB");\r
+    AlignmentI response = sps.get(0).getSequenceRecords("2GIS");\r
+    assertTrue(response != null);\r
+    assertTrue(response.getHeight() == 1);\r
+    for (SequenceI sq : response.getSequences())\r
+    {\r
+      assertTrue("No annotation transfered to sequence.",\r
+              sq.getAnnotation().length > 0);\r
+      assertTrue("No PDBEntry on sequence.", sq.getPDBId().size() > 0);\r
+      assertTrue("No RNA annotation on sequence.", sq.getRNA() != null);\r
+    }\r
+  }\r
+\r
+}\r
index 2427960..1e72fae 100644 (file)
@@ -1,25 +1,28 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.0b1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.gui;
 
 import static org.junit.Assert.*;
 import jalview.gui.WsJobParameters;
+import jalview.util.MessageManager;
 import jalview.ws.jabaws.JalviewJabawsTestUtils;
 import jalview.ws.jws2.JabaPreset;
 import jalview.ws.jws2.Jws2Discoverer;
@@ -59,13 +62,15 @@ public class Jws2ParamView
     serviceTests.add("AAConWS".toLowerCase());
   }
 
-  public static Jws2Discoverer disc=null;
+  public static Jws2Discoverer disc = null;
+
   @BeforeClass
   public static void setUpBeforeClass() throws Exception
   {
     disc = JalviewJabawsTestUtils.getJabawsDiscoverer();
-    
+
   }
+
   @Test
   public void testJws2Gui()
   {
@@ -201,8 +206,7 @@ public class Jws2ParamView
             }
             WsJobParameters pgui = new WsJobParameters(lastserv,
                     new JabaPreset(lastserv, pr));
-            JFrame jf = new JFrame("Parameters for "
-                    + lastserv.getActionText());
+            JFrame jf = new JFrame(MessageManager.formatMessage("label.ws_parameters_for", new String[]{lastserv.getActionText()}));
             JPanel cont = new JPanel(new BorderLayout());
             pgui.validate();
             cont.setPreferredSize(pgui.getPreferredSize());
index bd743e0..db7d505 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.0b1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.jabaws;
@@ -98,16 +100,17 @@ public class DisorderAnnotExportImport
       ;
     } while (af.getViewport().getCalcManager().isWorking());
     AlignmentI orig_alig = af.getViewport().getAlignment();
-    // NOTE: Consensus annotation row cannot be exported and reimported faithfully - so we remove them
+    // NOTE: Consensus annotation row cannot be exported and reimported
+    // faithfully - so we remove them
     List<AlignmentAnnotation> toremove = new ArrayList<AlignmentAnnotation>();
-    for (AlignmentAnnotation aa:orig_alig.getAlignmentAnnotation())
+    for (AlignmentAnnotation aa : orig_alig.getAlignmentAnnotation())
     {
       if (aa.autoCalculated)
       {
         toremove.add(aa);
       }
     }
-    for (AlignmentAnnotation aa:toremove)
+    for (AlignmentAnnotation aa : toremove)
     {
       orig_alig.deleteAnnotation(aa);
     }
index c0b9a23..295c3bf 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.0b1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.jabaws;
@@ -29,7 +31,7 @@ import org.junit.Test;
 
 public class JalviewJabawsTestUtils
 {
-  
+
   @BeforeClass
   public static void setUpBeforeClass() throws Exception
   {
@@ -52,31 +54,39 @@ public class JalviewJabawsTestUtils
     fail("Not yet implemented");
   }
 
-  public static jalview.ws.jws2.Jws2Discoverer getJabawsDiscoverer() {
+  public static jalview.ws.jws2.Jws2Discoverer getJabawsDiscoverer()
+  {
+    return getJabawsDiscoverer(true);
+  }
+  public static Jws2Discoverer getJabawsDiscoverer(boolean localhost)
+  {
     jalview.ws.jws2.Jws2Discoverer disc = jalview.ws.jws2.Jws2Discoverer
             .getDiscoverer();
-    int p = 0;
-    String svcurls="";
-    Vector<String> services = new Vector<String>();
-    for (String url : JalviewJabawsTestUtils.serviceUrls)
+    String svcurls = "";
+    if (localhost)
     {
-      svcurls+=url+"; ";
-      services.add(url);
+      int p = 0;
+      Vector<String> services = new Vector<String>();
+      for (String url : JalviewJabawsTestUtils.serviceUrls)
+      {
+        svcurls += url + "; ";
+        services.add(url);
+      }
+      ;
+      Jws2Discoverer.setServiceUrls(services);
     }
-    ;
-    Jws2Discoverer.setServiceUrls(services);
-  
     try
     {
       disc.run();
     } catch (Exception e)
     {
       e.printStackTrace();
-      fail("Aborting. Problem discovering services. Tried "+svcurls);
+      fail("Aborting. Problem discovering services. Tried " + svcurls);
     }
-    assertTrue("Failed to discover any services at ",
-            disc.getServices().size() > 0);
+    assertTrue("Failed to discover any services at ", disc.getServices()
+            .size() > 0);
     return disc;
   }
 
+
 }
diff --git a/test/jalview/ws/jabaws/JpredJabaStructExportImport.java b/test/jalview/ws/jabaws/JpredJabaStructExportImport.java
new file mode 100644 (file)
index 0000000..f0b8f99
--- /dev/null
@@ -0,0 +1,321 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
+package jalview.ws.jabaws;
+
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
+import jalview.datamodel.AlignmentI;
+import jalview.gui.Jalview2XML;
+import jalview.io.AnnotationFile;
+import jalview.io.FormatAdapter;
+import jalview.io.StockholmFileTest;
+import jalview.ws.jws2.JPred301Client;
+import jalview.ws.jws2.JabaParamStore;
+import jalview.ws.jws2.Jws2Discoverer;
+import jalview.ws.jws2.SequenceAnnotationWSClient;
+import jalview.ws.jws2.jabaws2.Jws2Instance;
+import jalview.ws.params.ArgumentI;
+import jalview.ws.params.AutoCalcSetting;
+
+import java.awt.Component;
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.swing.JMenu;
+import javax.swing.JMenuItem;
+
+import org.junit.AfterClass;
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+import compbio.metadata.Argument;
+import compbio.metadata.WrongParameterException;
+
+public class JpredJabaStructExportImport
+{
+  public static String testseqs = "examples/uniref50.fa";
+
+  public static Jws2Discoverer disc;
+
+  public static Jws2Instance jpredws;
+
+  jalview.ws.jws2.JPred301Client jpredClient;
+
+  public static jalview.gui.AlignFrame af = null;
+
+  @BeforeClass
+  public static void setUpBeforeClass() throws Exception
+  {
+
+    jalview.bin.Cache.initLogger();
+    disc = JalviewJabawsTestUtils.getJabawsDiscoverer(false);
+
+    for (Jws2Instance svc : disc.getServices())
+    {
+
+      if (svc.getServiceTypeURI().toLowerCase().contains("jpred"))
+      {
+        jpredws = svc;
+      }
+    }
+
+    System.out.println("State of jpredws: " + jpredws);
+
+    if (jpredws == null)
+      System.exit(0);
+
+    jalview.io.FileLoader fl = new jalview.io.FileLoader(false);
+
+    af = fl.LoadFileWaitTillLoaded(testseqs, jalview.io.FormatAdapter.FILE);
+
+    assertNotNull("Couldn't load test data ('" + testseqs + "')", af);
+
+  }
+
+  @AfterClass
+  public static void tearDownAfterClass() throws Exception
+  {
+    if (af != null)
+    {
+      af.setVisible(false);
+      af.dispose();
+    }
+  }
+
+  @Test
+  public void testJPredStructOneSeqOnly()
+  {
+    af.selectAllSequenceMenuItem_actionPerformed(null);
+    af.getViewport()
+            .getSelectionGroup()
+            .addOrRemove(
+                    af.getViewport().getSelectionGroup().getSequenceAt(0),
+                    false);
+    af.hideSelSequences_actionPerformed(null);
+    jpredClient = new JPred301Client(jpredws, af, null, null);
+
+    assertTrue(
+            "Didn't find any default args to check for. Buggy implementation of hardwired arguments in client.",
+            jpredClient.selectDefaultArgs().size() > 0);
+
+    boolean success = false;
+    af.getViewport().getCalcManager().startWorker(jpredClient);
+    do
+    {
+      try
+      {
+        Thread.sleep(500);
+        List<Argument> args = JabaParamStore.getJabafromJwsArgs(af
+                .getViewport()
+                .getCalcIdSettingsFor(jpredClient.getCalcId())
+                .getArgumentSet()), defargs = jpredClient
+                .selectDefaultArgs();
+        for (Argument rg : args)
+        {
+          for (Argument defg : defargs)
+          {
+            if (defg.equals(rg))
+            {
+              success = true;
+            }
+          }
+        }
+        if (!success)
+        {
+          jpredClient.cancelCurrentJob();
+          fail("Jpred Client didn't run with hardwired default parameters.");
+        }
+
+      } catch (InterruptedException x)
+      {
+      }
+      ;
+    } while (af.getViewport().getCalcManager().isWorking());
+
+  }
+
+  @Test
+  public void testJPredStructExport()
+  {
+
+    jpredClient = new JPred301Client(jpredws, af, null, null);
+
+    af.getViewport().getCalcManager().startWorker(jpredClient);
+
+    do
+    {
+      try
+      {
+        Thread.sleep(50);
+      } catch (InterruptedException x)
+      {
+      }
+      ;
+    } while (af.getViewport().getCalcManager().isWorking());
+
+    AlignmentI orig_alig = af.getViewport().getAlignment();
+
+    testAnnotationFileIO("Testing JPredWS Annotation IO", orig_alig);
+
+  }
+
+  public static void testAnnotationFileIO(String testname, AlignmentI al)
+  {
+    try
+    {
+      // what format would be appropriate for RNAalifold annotations?
+      String aligfileout = new FormatAdapter().formatSequences("PFAM",
+              al.getSequencesArray());
+
+      String anfileout = new AnnotationFile().printAnnotations(
+              al.getAlignmentAnnotation(), al.getGroups(),
+              al.getProperties());
+      assertTrue(
+              "Test "
+                      + testname
+                      + "\nAlignment annotation file was not regenerated. Null string",
+              anfileout != null);
+      assertTrue(
+              "Test "
+                      + testname
+                      + "\nAlignment annotation file was not regenerated. Empty string",
+              anfileout.length() > "JALVIEW_ANNOTATION".length());
+
+      System.out.println("Output annotation file:\n" + anfileout
+              + "\n<<EOF\n");
+
+      // again what format would be appropriate?
+      AlignmentI al_new = new FormatAdapter().readFile(aligfileout,
+              FormatAdapter.PASTE, "PFAM");
+      assertTrue(
+              "Test "
+                      + testname
+                      + "\nregenerated annotation file did not annotate alignment.",
+              new AnnotationFile().readAnnotationFile(al_new, anfileout,
+                      FormatAdapter.PASTE));
+
+      // test for consistency in io
+      StockholmFileTest.testAlignmentEquivalence(al, al_new);
+      return;
+    } catch (Exception e)
+    {
+      e.printStackTrace();
+    }
+    fail("Test "
+            + testname
+            + "\nCouldn't complete Annotation file roundtrip input/output/input test.");
+  }
+
+  // @Test
+  public void testJpredwsSettingsRecovery()
+  {
+    fail("not implemnented");
+    List<compbio.metadata.Argument> opts = new ArrayList<compbio.metadata.Argument>();
+    for (compbio.metadata.Argument rg : (List<compbio.metadata.Argument>) jpredws
+            .getRunnerConfig().getArguments())
+    {
+      if (rg.getDescription().contains("emperature"))
+      {
+        try
+        {
+          rg.setValue("292");
+        } catch (WrongParameterException q)
+        {
+          fail("Couldn't set the temperature parameter "
+                  + q.getStackTrace());
+        }
+        opts.add(rg);
+      }
+      if (rg.getDescription().contains("max"))
+      {
+        opts.add(rg);
+      }
+    }
+    jpredClient = new JPred301Client(jpredws, af, null, opts);
+
+    af.getViewport().getCalcManager().startWorker(jpredClient);
+
+    do
+    {
+      try
+      {
+        Thread.sleep(50);
+      } catch (InterruptedException x)
+      {
+      }
+      ;
+    } while (af.getViewport().getCalcManager().isWorking());
+    AutoCalcSetting oldacs = af.getViewport().getCalcIdSettingsFor(
+            jpredClient.getCalcId());
+    String oldsettings = oldacs.getWsParamFile();
+    // write out parameters
+    jalview.gui.AlignFrame nalf = null;
+    assertTrue("Couldn't write out the Jar file",
+            new Jalview2XML(false).SaveAlignment(af,
+                    "testJPredWS_param.jar", "trial parameter writeout"));
+    assertTrue("Couldn't read back the Jar file", (nalf = new Jalview2XML(
+            false).LoadJalviewAlign("testJpredWS_param.jar")) != null);
+    if (nalf != null)
+    {
+      AutoCalcSetting acs = af.getViewport().getCalcIdSettingsFor(
+              jpredClient.getCalcId());
+      assertTrue("Calc ID settings not recovered from viewport stash",
+              acs.equals(oldacs));
+      assertTrue(
+              "Serialised Calc ID settings not identical to those recovered from viewport stash",
+              acs.getWsParamFile().equals(oldsettings));
+      JMenu nmenu = new JMenu();
+      new SequenceAnnotationWSClient()
+              .attachWSMenuEntry(nmenu, jpredws, af);
+      assertTrue("Couldn't get menu entry for service",
+              nmenu.getItemCount() > 0);
+      for (Component itm : nmenu.getMenuComponents())
+      {
+        if (itm instanceof JMenuItem)
+        {
+          JMenuItem i = (JMenuItem) itm;
+          if (i.getText().equals(
+                  jpredws.getAlignAnalysisUI().getAAconToggle()))
+          {
+            i.doClick();
+            break;
+          }
+        }
+      }
+      while (af.getViewport().isCalcInProgress())
+      {
+        try
+        {
+          Thread.sleep(200);
+        } catch (Exception x)
+        {
+        }
+        ;
+      }
+      AutoCalcSetting acs2 = af.getViewport().getCalcIdSettingsFor(
+              jpredClient.getCalcId());
+      assertTrue(
+              "Calc ID settings after recalculation has not been recovered.",
+              acs2.getWsParamFile().equals(oldsettings));
+    }
+  }
+}
diff --git a/test/jalview/ws/jabaws/MinJabawsClientTests.java b/test/jalview/ws/jabaws/MinJabawsClientTests.java
new file mode 100644 (file)
index 0000000..a938dd6
--- /dev/null
@@ -0,0 +1,84 @@
+package jalview.ws.jabaws;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.fail;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.function.Consumer;
+
+import org.junit.Test;
+
+import compbio.data.msa.MsaWS;
+import compbio.data.msa.RegistryWS;
+import compbio.data.sequence.FastaSequence;
+import compbio.metadata.JobStatus;
+import compbio.ws.client.Jws2Client;
+import compbio.ws.client.Services;
+
+public class MinJabawsClientTests {
+
+       /**
+        * simple test for the benefit of JAL-1338
+        * @throws Exception
+        */
+       @SuppressWarnings("rawtypes")
+       @Test
+       public void msaTest() throws Exception {
+               String url;
+               RegistryWS registry = Jws2Client
+                               .connectToRegistry(url = "http://www.compbio.dundee.ac.uk/jabaws");
+               if (registry != null) {
+
+                       MsaWS msaservice = null;
+                       for (Services service : registry.getSupportedServices()) {
+                               if (service.equals(Services.ClustalOWS)) {
+                                       msaservice = (MsaWS) Jws2Client.connect(url, service);
+                                       if (msaservice != null) {
+                                               break;
+                                       }
+                               }
+                       }
+                       if (msaservice == null) {
+                               fail("couldn't find a clustalO service on the public registry");
+                       }
+                       FastaSequence fsq = new FastaSequence("seqA",
+                                       "SESESESESESESESSESESSESESESESESESESESESEEEEEESSESESESESSSSESESESESESESE");
+                       List<FastaSequence> iseqs = new ArrayList<FastaSequence>();
+                       for (int i = 0; i < 9; i++) {
+                               iseqs.add(new FastaSequence(fsq.getId() + i, fsq.getSequence()
+                                               + fsq.getSequence().substring(i + 3, i + 3 + i)));
+                       }
+
+                       String jobid = msaservice.align(iseqs);
+                       if (jobid != null) {
+                               JobStatus js = null;
+                               do {
+                                       try {
+                                               Thread.sleep(500);
+                                       } catch (InterruptedException q) {
+                                       }
+                                       ;
+                                       js = msaservice.getJobStatus(jobid);
+                               } while (!js.equals(JobStatus.FAILED)
+                                               && !js.equals(JobStatus.CANCELLED)
+                                               && !js.equals(JobStatus.FINISHED));
+                               assertEquals("Trial alignment failed. State was " + js.name(),
+                                               js, JobStatus.FINISHED);
+                               assertEquals(
+                                               "Mismatch in number of input and result sequences - assume alignment service wasn't interacted with correctly",
+                                               msaservice.getResult(jobid).getSequences().size(),
+                                               iseqs.size());
+                               msaservice.getResult(jobid).getSequences()
+                                               .forEach(new Consumer<FastaSequence>() {
+                                                       @Override
+                                                       public void accept(FastaSequence t) {
+                                                               System.out.println(">"+t.getId());
+                                                               System.out.println(t.getFormattedFasta());
+                                                       }
+                                               });
+                       }
+
+               }
+       }
+}
index 2753e64..9a723ca 100644 (file)
@@ -1,3 +1,23 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
+ * Copyright (C) 2014 The Jalview Authors
+ * 
+ * This file is part of Jalview.
+ * 
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
+ * Jalview is distributed in the hope that it will be useful, but 
+ * WITHOUT ANY WARRANTY; without even the implied warranty 
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
+ * PURPOSE.  See the GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
 package jalview.ws.jabaws;
 
 import static org.junit.Assert.*;
@@ -50,7 +70,7 @@ public class RNAStructExportImport
   {
 
     jalview.bin.Cache.initLogger();
-    disc = JalviewJabawsTestUtils.getJabawsDiscoverer();
+    disc = JalviewJabawsTestUtils.getJabawsDiscoverer(false);
 
     for (Jws2Instance svc : disc.getServices())
     {
@@ -181,9 +201,9 @@ public class RNAStructExportImport
       }
     }
     alifoldClient = new RNAalifoldClient(rnaalifoldws, af, null, opts);
-    
+
     af.getViewport().getCalcManager().startWorker(alifoldClient);
-    
+
     do
     {
       try
@@ -194,39 +214,58 @@ public class RNAStructExportImport
       }
       ;
     } while (af.getViewport().getCalcManager().isWorking());
-    AutoCalcSetting oldacs = af.getViewport().getCalcIdSettingsFor(alifoldClient.getCalcId());
+    AutoCalcSetting oldacs = af.getViewport().getCalcIdSettingsFor(
+            alifoldClient.getCalcId());
     String oldsettings = oldacs.getWsParamFile();
     // write out parameters
-    jalview.gui.AlignFrame nalf=null;
-    assertTrue("Couldn't write out the Jar file",new Jalview2XML(false).SaveAlignment(af, "testRnalifold_param.jar","trial parameter writeout"));
-    assertTrue("Couldn't read back the Jar file",(nalf = new Jalview2XML(false).LoadJalviewAlign("testRnalifold_param.jar"))!=null);
-    if (nalf!=null)
+    jalview.gui.AlignFrame nalf = null;
+    assertTrue("Couldn't write out the Jar file",
+            new Jalview2XML(false).SaveAlignment(af,
+                    "testRnalifold_param.jar", "trial parameter writeout"));
+    assertTrue("Couldn't read back the Jar file", (nalf = new Jalview2XML(
+            false).LoadJalviewAlign("testRnalifold_param.jar")) != null);
+    if (nalf != null)
     {
-      AutoCalcSetting acs = af.getViewport().getCalcIdSettingsFor(alifoldClient.getCalcId());
-      assertTrue("Calc ID settings not recovered from viewport stash", acs.equals(oldacs));
-      assertTrue("Serialised Calc ID settings not identical to those recovered from viewport stash", acs.getWsParamFile().equals(oldsettings));
-      JMenu nmenu=new JMenu();
-      new SequenceAnnotationWSClient().attachWSMenuEntry(nmenu, rnaalifoldws, af);
-      assertTrue("Couldn't get menu entry for service",nmenu.getItemCount()>0);
-      for (Component itm: nmenu.getMenuComponents())
+      AutoCalcSetting acs = af.getViewport().getCalcIdSettingsFor(
+              alifoldClient.getCalcId());
+      assertTrue("Calc ID settings not recovered from viewport stash",
+              acs.equals(oldacs));
+      assertTrue(
+              "Serialised Calc ID settings not identical to those recovered from viewport stash",
+              acs.getWsParamFile().equals(oldsettings));
+      JMenu nmenu = new JMenu();
+      new SequenceAnnotationWSClient().attachWSMenuEntry(nmenu,
+              rnaalifoldws, af);
+      assertTrue("Couldn't get menu entry for service",
+              nmenu.getItemCount() > 0);
+      for (Component itm : nmenu.getMenuComponents())
       {
         if (itm instanceof JMenuItem)
         {
           JMenuItem i = (JMenuItem) itm;
-          if (i.getText().equals(rnaalifoldws.getAlignAnalysisUI().getAAconToggle()))
-                  {
+          if (i.getText().equals(
+                  rnaalifoldws.getAlignAnalysisUI().getAAconToggle()))
+          {
             i.doClick();
             break;
-                  }
+          }
         }
       }
       while (af.getViewport().isCalcInProgress())
       {
-        try { Thread.sleep(200);
-        } catch (Exception x) {};
+        try
+        {
+          Thread.sleep(200);
+        } catch (Exception x)
+        {
+        }
+        ;
       }
-      AutoCalcSetting acs2 = af.getViewport().getCalcIdSettingsFor(alifoldClient.getCalcId());
-      assertTrue("Calc ID settings after recalculation has not been recovered.", acs2.getWsParamFile().equals(oldsettings));
+      AutoCalcSetting acs2 = af.getViewport().getCalcIdSettingsFor(
+              alifoldClient.getCalcId());
+      assertTrue(
+              "Calc ID settings after recalculation has not been recovered.",
+              acs2.getWsParamFile().equals(oldsettings));
     }
   }
 }
index 4c9e3de..6f111d0 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.0b1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.rest;
@@ -54,7 +56,9 @@ public class ShmmrRSBSService
                     "foo=',',min='foo',max='1,2,3',fa=','", ",").length == 4);
     assertTrue("separatorListToArray is faulty.",
             RestServiceDescription.separatorListToArray(
-                    "minsize='2', sep=','", ",").length != 2); // probably should come as 2
+                    "minsize='2', sep=','", ",").length != 2); // probably
+                                                               // should come as
+                                                               // 2
   }
 
   @Test
@@ -66,27 +70,37 @@ public class ShmmrRSBSService
             testRsdExchange("Test using default Shmmr service",
                     RestClient.makeShmmrRestClient().service));
   }
+
   @Test
   public void testShmmrServiceDataprep() throws Exception
   {
     RestClient _rc = RestClient.makeShmmrRestClient();
     assertNotNull(_rc);
-    AlignFrame alf = new jalview.io.FileLoader(false).LoadFileWaitTillLoaded("examples/testdata/smad.fa", jalview.io.FormatAdapter.FILE);
-    assertNotNull("Couldn't find test data.",alf);
+    AlignFrame alf = new jalview.io.FileLoader(false)
+            .LoadFileWaitTillLoaded("examples/testdata/smad.fa",
+                    jalview.io.FormatAdapter.FILE);
+    assertNotNull("Couldn't find test data.", alf);
     alf.loadJalviewDataFile("examples/testdata/smad_groups.jva",
             jalview.io.FormatAdapter.FILE, null, null);
-    assertTrue("Couldn't load the test data's annotation file (should be 5 groups but found "+alf.getViewport().getAlignment().getGroups().size()+").", alf.getViewport().getAlignment().getGroups().size()==5);
-    
+    assertTrue(
+            "Couldn't load the test data's annotation file (should be 5 groups but found "
+                    + alf.getViewport().getAlignment().getGroups().size()
+                    + ").", alf.getViewport().getAlignment().getGroups()
+                    .size() == 5);
+
     RestClient rc = new RestClient(_rc.service, alf, true);
-    
-    
-    
-    assertNotNull("Couldn't creat RestClient job.",rc);
+
+    assertNotNull("Couldn't creat RestClient job.", rc);
     jalview.bin.Cache.initLogger();
-    RestJob rjb = new RestJob(0, new RestJobThread(rc),rc.av.getAlignment(),null);
-    rjb.setAlignmentForInputs(rc.service.getInputParams().values(), rc.av.getAlignment());
-    for (Map.Entry<String,InputType> e:rc.service.getInputParams().entrySet()) {
-      System.out.println("For Input '"+e.getKey()+":\n"+e.getValue().formatForInput(rjb).getContentLength());
+    RestJob rjb = new RestJob(0, new RestJobThread(rc),
+            rc.av.getAlignment(), null);
+    rjb.setAlignmentForInputs(rc.service.getInputParams().values(),
+            rc.av.getAlignment());
+    for (Map.Entry<String, InputType> e : rc.service.getInputParams()
+            .entrySet())
+    {
+      System.out.println("For Input '" + e.getKey() + ":\n"
+              + e.getValue().formatForInput(rjb).getContentLength());
     }
   }
 
index a269ecc..07167bd 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.0b1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.ws.seqfetcher;
@@ -34,7 +36,7 @@ import org.junit.Test;
 
 /**
  * @author jimp
- *
+ * 
  */
 public class DbRefFetcherTest
 {
@@ -59,35 +61,37 @@ public class DbRefFetcherTest
   public void testStandardProtDbs()
   {
     String[] defdb = DBRefSource.PROTEINDBS;
-  List<DbSourceProxy> srces = new ArrayList<DbSourceProxy>();
-  for (String ddb : defdb)
-  {
-    SequenceFetcher sfetcher= new SequenceFetcher();
-    List<DbSourceProxy> srcesfordb = sfetcher.getSourceProxy(ddb);
-    
-    if (srcesfordb != null)
-    {
-      srces.addAll(srcesfordb);
-    }
-  }
-  DbSourceProxy uniprot=null;
-  int i=0;
-  // append the selected sequence sources to the default dbs
-  for (DbSourceProxy s:srces)
-  {
-    if (s.getDbSource().equalsIgnoreCase(DBRefSource.UNIPROT))
+    List<DbSourceProxy> srces = new ArrayList<DbSourceProxy>();
+    for (String ddb : defdb)
     {
-      i++;
+      SequenceFetcher sfetcher = new SequenceFetcher();
+      List<DbSourceProxy> srcesfordb = sfetcher.getSourceProxy(ddb);
+
+      if (srcesfordb != null)
+      {
+        srces.addAll(srcesfordb);
+      }
     }
-    
-    if (s instanceof jalview.ws.dbsources.Uniprot)
+    DbSourceProxy uniprot = null;
+    int i = 0;
+    // append the selected sequence sources to the default dbs
+    for (DbSourceProxy s : srces)
     {
-      uniprot = s;
-      break;
+      if (s.getDbSource().equalsIgnoreCase(DBRefSource.UNIPROT))
+      {
+        i++;
+      }
+
+      if (s instanceof jalview.ws.dbsources.Uniprot)
+      {
+        uniprot = s;
+        break;
+      }
     }
-  }
-          
-  assertTrue("Failed to find Uniprot source as first source amongst "+srces.size()+" sources (source was at position "+i+")", uniprot!=null && i<2);
+
+    assertTrue("Failed to find Uniprot source as first source amongst "
+            + srces.size() + " sources (source was at position " + i + ")",
+            uniprot != null && i < 2);
   }
 
 }
index e34e520..bca0b25 100755 (executable)
@@ -1008,7 +1008,7 @@ and any path to a file to save to the file]]></string>
                                                                <string><![CDATA[664]]></string>
                                                        </property>
                                                        <property name="sourceName">
-                                                               <string><![CDATA[log4j-1.2.8.jar]]></string>
+                                                               <string><![CDATA[slf-api-1.7.7.jar]]></string>
                                                        </property>
                                                        <property name="overrideUnixPermissions">
                                                                <boolean>false</boolean>
@@ -1026,7 +1026,7 @@ and any path to a file to save to the file]]></string>
                                                                <boolean>true</boolean>
                                                        </property>
                                                        <property name="destinationName">
-                                                               <string><![CDATA[log4j-1.2.8.jar]]></string>
+                                                               <string><![CDATA[slf-api-1.7.7.jar]]></string>
                                                        </property>
                                                        <property name="fileSize">
                                                                <long>348699</long>
@@ -1042,6 +1042,110 @@ and any path to a file to save to the file]]></string>
                                                        </property>
                                                </object>
                                        </method>
+          <method name="addElement">
+            <object class="com.zerog.ia.installer.actions.InstallZipfile" objectID="244ffffaa672">
+              <property name="belongsToUninstallPhase">
+                <boolean>false</boolean>
+              </property>
+              <property name="rollbackEnabledCancel">
+                <boolean>true</boolean>
+              </property>
+              <property name="rollbackEnabledError">
+                <boolean>true</boolean>
+              </property>
+              <property name="ruleExpression">
+                <string><![CDATA[]]></string>
+              </property>
+              <property name="unixPermissions">
+                <string><![CDATA[664]]></string>
+              </property>
+              <property name="sourceName">
+                <string><![CDATA[log4j-to-slf4j-2.0-rc2.jar]]></string>
+              </property>
+              <property name="overrideUnixPermissions">
+                <boolean>false</boolean>
+              </property>
+              <property name="sourcePath">
+                <string><![CDATA[/home/cruisecontrol/jalview/lib/]]></string>
+              </property>
+              <property name="shouldUninstall">
+                <boolean>true</boolean>
+              </property>
+              <property name="rollbackEnabledCancel">
+                <boolean>true</boolean>
+              </property>
+              <property name="rollbackEnabledError">
+                <boolean>true</boolean>
+              </property>
+              <property name="destinationName">
+                <string><![CDATA[log4j-to-slf4j-2.0-rc2.jar]]></string>
+              </property>
+              <property name="fileSize">
+                <long>348699</long>
+              </property>
+              <property name="macBinary">
+                <boolean>false</boolean>
+              </property>
+              <property name="targetCheckKind">
+                <int>0</int>
+              </property>
+              <property name="ruleExpression">
+                <string><![CDATA[]]></string>
+              </property>
+            </object>
+          </method>
+          <method name="addElement">
+            <object class="com.zerog.ia.installer.actions.InstallZipfile" objectID="244f00faa672">
+              <property name="belongsToUninstallPhase">
+                <boolean>false</boolean>
+              </property>
+              <property name="rollbackEnabledCancel">
+                <boolean>true</boolean>
+              </property>
+              <property name="rollbackEnabledError">
+                <boolean>true</boolean>
+              </property>
+              <property name="ruleExpression">
+                <string><![CDATA[]]></string>
+              </property>
+              <property name="unixPermissions">
+                <string><![CDATA[664]]></string>
+              </property>
+              <property name="sourceName">
+                <string><![CDATA[slf4j-log4j12-1.7.7.jar]]></string>
+              </property>
+              <property name="overrideUnixPermissions">
+                <boolean>false</boolean>
+              </property>
+              <property name="sourcePath">
+                <string><![CDATA[/home/cruisecontrol/jalview/lib/]]></string>
+              </property>
+              <property name="shouldUninstall">
+                <boolean>true</boolean>
+              </property>
+              <property name="rollbackEnabledCancel">
+                <boolean>true</boolean>
+              </property>
+              <property name="rollbackEnabledError">
+                <boolean>true</boolean>
+              </property>
+              <property name="destinationName">
+                <string><![CDATA[slf4j-log4j12-1.7.7.jar]]></string>
+              </property>
+              <property name="fileSize">
+                <long>348699</long>
+              </property>
+              <property name="macBinary">
+                <boolean>false</boolean>
+              </property>
+              <property name="targetCheckKind">
+                <int>0</int>
+              </property>
+              <property name="ruleExpression">
+                <string><![CDATA[]]></string>
+              </property>
+            </object>
+          </method>
                                        <method name="addElement">
                                                <object class="com.zerog.ia.installer.actions.InstallZipfile" objectID="88d4aff3b0c6">
                                                        <property name="belongsToUninstallPhase">
@@ -1684,7 +1788,7 @@ and any path to a file to save to the file]]></string>
                                                                <string><![CDATA[664]]></string>
                                                        </property>
                                                        <property name="sourceName">
-                                                               <string><![CDATA[VARNAv3-9-dev.jar]]></string>
+                                                               <string><![CDATA[VARNAv3-9.jar]]></string>
                                                        </property>
                                                        <property name="overrideUnixPermissions">
                                                                <boolean>false</boolean>
@@ -1702,7 +1806,7 @@ and any path to a file to save to the file]]></string>
                                                                <boolean>true</boolean>
                                                        </property>
                                                        <property name="destinationName">
-                                                               <string><![CDATA[VARNAv3-9-dev.jar]]></string>
+                                                               <string><![CDATA[VARNAv3-9.jar]]></string>
                                                        </property>
                                                        <property name="fileSize">
                                                                <long>663408</long>
@@ -6029,6 +6133,8 @@ and any path to a file to read from that file]]></string>
                                                                                <object refID="24485f8aa671"/>
                                                                                <object refID="24485f89a672"/>
                                                                                <object refID="24485f8aa672"/>
+                    <object refID="244ffffaa672"/>
+                    <object refID="244f00faa672"/>
                                                                                <object refID="24485f8ba672"/>
                                                                                <object refID="24485f8aa673"/>
                                                                                <object refID="24485f8ba673"/>
@@ -6763,6 +6869,8 @@ and any path to a file to read from that file]]></string>
                                                                                                <object refID="24485f8aa671"/>
                                                                                                <object refID="24485f89a672"/>
                                                                                                <object refID="24485f8aa672"/>
+                        <object refID="244ffffaa672"/>
+                        <object refID="244f00faa672"/>
                                                                                                <object refID="24485f8ba672"/>
                                                                                                <object refID="24485f8aa673"/>
                                                                                                <object refID="24485f8ba673"/>
index ee21e74..de1e865 100644 (file)
@@ -1,6 +1,6 @@
 <?xml version="1.0"?>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
index a73f116..fc961f7 100644 (file)
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
index f3b12d4..de27673 100644 (file)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 import java.io.*;
index 6d90f70..40fe25f 100755 (executable)
@@ -1,6 +1,6 @@
 #!/usr/bin/perl
 ##
-# Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+# Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
 # Copyright (C) 2014 The Jalview Authors
 # 
 # This file is part of Jalview.
index e2e79ac..ef174c4 100755 (executable)
@@ -1,19 +1,21 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
  *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
  * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 import java.io.*;
diff --git a/utils/jalopy/bin/lcp.bat b/utils/jalopy/bin/lcp.bat
deleted file mode 100755 (executable)
index d4ebc44..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-SET _CLASSPATHCOMPONENT=%1\r
-:argCheck\r
-IF %2a==a GOTO gotAllArgs\r
-SHIFT\r
-SET _CLASSPATHCOMPONENT=%_CLASSPATHCOMPONENT% %1\r
-GOTO argCheck\r
-:gotAllArgs\r
-SET LOCALCLASSPATH=%_CLASSPATHCOMPONENT%;%LOCALCLASSPATH%
\ No newline at end of file
diff --git a/utils/jalopy/bin/preferences.bat b/utils/jalopy/bin/preferences.bat
deleted file mode 100755 (executable)
index bc58511..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-@ECHO OFF\r
-IF NOT "%OS%"=="Windows_NT" GOTO win9xStart\r
-\r
-:winNTStart\r
-@setlocal\r
-\r
-REM Need to check if we are using the 4NT shell...\r
-IF "%eval[2+2]" == "4" GOTO setup4NT\r
-\r
-REM On NT/2K grab all arguments at once\r
-SET JALOPY_CMD_LINE_ARGS=%*\r
-GOTO doneStart\r
-\r
-:setup4NT\r
-SET JALOPYY_CMD_LINE_ARGS=%$\r
-GOTO doneStart\r
-\r
-:win9xStart\r
-REM Slurp the command line arguments. This loop allows for an unlimited number\r
-REM of arguments (up to the command line limit, anyway).\r
-SET JALOPY_CMD_LINE_ARGS=\r
-\r
-:setupArgs\r
-IF %1a==a GOTO doneStart\r
-SET JALOPY_CMD_LINE_ARGS=%JALOPY_CMD_LINE_ARGS% %1\r
-SHIFT\r
-GOTO setupArgs\r
-\r
-:doneStart\r
-REM This label provides a place for the argument list loop to break out\r
-REM and for NT handling to skip to.\r
-\r
-:checkJava\r
-SET _JAVACMD=%JAVACMD%\r
-SET LOCALCLASSPATH=\r
-FOR %%i IN ("..\lib\*.jar") do call ".\lcp.bat" %%i\r
-\r
-IF "%JAVA_HOME%" == "" GOTO noJavaHome\r
-IF "%_JAVACMD%" == "" SET _JAVACMD=%JAVA_HOME%\bin\java\r
-GOTO runJalopy\r
-\r
-:noJavaHome\r
-IF "%_JAVACMD%" == "" SET _JAVACMD=java\r
-ECHO.\r
-ECHO Warning: JAVA_HOME environment variable is not set.\r
-ECHO   You may need to set the JAVA_HOME environment variable\r
-ECHO   to the installation directory of Java.\r
-ECHO.\r
-\r
-:runJalopy\r
-"%_JAVACMD%" -classpath "%LOCALCLASSPATH%" de.hunsicker.jalopy.swing.SettingsDialog %JALOPY_CMD_LINE_ARGS%\r
-GOTO end\r
-\r
-:end\r
-SET LOCALCLASSPATH=\r
-SET _JAVACMD=\r
-SET JALOPY_CMD_LINE_ARGS=\r
-\r
-IF NOT "%OS%"=="Windows_NT" GOTO mainEnd\r
-:winNTend\r
-@endlocal\r
-\r
-:mainEnd\r
diff --git a/utils/jalopy/bin/preferences.sh b/utils/jalopy/bin/preferences.sh
deleted file mode 100755 (executable)
index 92593ee..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-#! /bin/sh
-
-# OS specific support. $var _must_ be set to either true or false.
-cygwin=false;
-darwin=false;
-case "`uname`" in
-  CYGWIN*) cygwin=true ;;
-  Darwin*) darwin=true ;;
-esac
-
-if [ -z "$JAVACMD" ] ; then
-  if [ -n "$JAVA_HOME"  ] ; then
-    if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
-      # IBM's JDK on AIX uses strange locations for the executables
-      JAVACMD=$JAVA_HOME/jre/sh/java
-    else
-      JAVACMD=$JAVA_HOME/bin/java
-    fi
-  else
-    JAVACMD=java
-  fi
-fi
-
-if [ ! -x "$JAVACMD" ] ; then
-  echo "Error: JAVA_HOME is not defined correctly."
-  echo "  We cannot execute $JAVACMD"
-  exit
-fi
-
-# add in the dependency .jar files
-# The jar-files are in the same directory as this scriptfile !
-# So remove the name of this script-file from the path and replace it
-#   with *.jar
-DIRLIBS=${0%/*}/../lib/*.jar
-for i in ${DIRLIBS}
-do
-  if [ -z "$LOCALCLASSPATH" ] ; then
-    LOCALCLASSPATH=$i
-  else
-    LOCALCLASSPATH="$i":$LOCALCLASSPATH
-  fi
-done
-
-# For Cygwin, switch paths to Windows format before running java
-if $cygwin; then
-  JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"`
-  LOCALCLASSPATH=`cygpath --path --windows "$LOCALCLASSPATH"`
-fi
-
-$JAVACMD -classpath "$LOCALCLASSPATH" de.hunsicker.jalopy.swing.SettingsDialog
diff --git a/utils/jalopy/docs/acknowledge.html b/utils/jalopy/docs/acknowledge.html
deleted file mode 100755 (executable)
index 71ff9e4..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>Acknowledgements</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="manual.html" title="Jalopy User Manual"><link rel="previous" href="dedication.html" title="Dedication"><link rel="next" href="introduction.html" title="Introduction"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Acknowledgements</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="dedication.html">Prev</a>&nbsp;</td><th width="60%" align="center">&nbsp;</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="introduction.html">Next</a></td></tr></table><hr></div><div class="preface" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="acknowledge"></a>Acknowledgements</h2></div></div><div></div></div><p>
-First and foremost I wish to thank the creators of the free software libraries
-I use. Jalopy includes software developed by the
-<a href="http://www.apache.org/" target="_top">Apache Software Foundation</a>,
-the <a href="http://www.bluej.org/" target="_top">BlueJ Group</a>,
-<a href="http://www.saxproject.org/" target="_top">David Brownell</a>,
-<a href="http://sf.net/projects/saxon/" target="_top">Michael H. Kay</a>,
-the <a href="http://www.jdom.org" target="_top">JDOM group</a>,
-<a href="http://www.saxproject.org/" target="_top">David Megginson</a>,
-<a href="http://www.antlr.org/" target="_top">Terence Parr</a>,
-<a href="http://www.jedit.org/" target="_top">Slava Pestov</a>,
-<a href="http://www.urbanophile.com/~arenn/hacking/download.html" target="_top">Aaron M. Renn</a> and
-<a href="http://java.sun.com/xml/" target="_top">Sun Microsystems, Inc.</a>.
-Please refer to <a href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies">Appendix&nbsp;A, <i>Library Dependencies</i></a> for a more detailed list
-and the individual licensing terms.
-</p><p>
-I would like to say a big thanks to Michael Callum, Frank Klomp, Roman Sarychev,
-David Beutel, Denis N. Antonioli and Kees Kuip who contributed code.
-</p><p>
-Thanks also to all users who provided feedback, submitted bug reports and requested new
-features.
-</p><p>
-A special thanks to Larry Hamel for the initial proof-reading of this manual.
-</p><p>
-Last but not least, I wish to thank the <a href="http://sf.net/" target="_top">SourceForge</a>
-crew for not only hosting the Jalopy web site and providing the collaborative development
-infrastructure but also for their help and support in getting things up and running.
-</p><p>
-And finally, my special thanks to the bright light in the big city, whose love has been
-a home and a foreign country, the best of both worlds.
-</p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="dedication.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="manual.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="introduction.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Dedication&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;Introduction</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/bi01.html b/utils/jalopy/docs/bi01.html
deleted file mode 100755 (executable)
index 24a6ec4..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>Bibliography</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="manual.html" title="Jalopy User Manual"><link rel="previous" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="next" href="ix01.html" title="Index"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Bibliography</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="license-sun-public.html">Prev</a>&nbsp;</td><th width="60%" align="center">&nbsp;</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="ix01.html">Next</a></td></tr></table><hr></div><div class="bibliography"><div class="titlepage"><div><div><h2 class="title"><a name="d0e7903"></a>Bibliography</h2></div></div><div></div></div><div class="biblioentry"><p>[<span class="abbrev"><a name="bloch01"></a>Bloch01</span>] <span class="biblioset"><span class="author"><span class="firstname">Joshua</span> <span class="surname">Bloch</span>. </span><i><a href="http://java.sun.com/docs/books/effective/" target="_top">Effective Java</a></i>. <span class="subtitle">Programming Language Guide. </span><span class="publisher"><span class="publishername">Addison-Wesley, 2001. </span></span>
-  ISBN: <span class="isbn">0-201-31005-8. </span></span></p></div><div class="biblioentry"><p>[<span class="abbrev"><a name="friedl97"></a>Friedl97</span>] <span class="biblioset"><span class="author"><span class="firstname">Jeffrey E. F.</span> <span class="surname">Friedl</span>. </span><i>Mastering Regular Expressions</i>. <span class="publisher"><span class="publishername">O'Reilly, 1997. </span></span>
-  ISBN: <span class="isbn">1-56592-257-3. </span></span></p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="license-sun-public.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="manual.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="ix01.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;Index</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/build.html b/utils/jalopy/docs/build.html
deleted file mode 100755 (executable)
index b4bc167..0000000
+++ /dev/null
@@ -1,141 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>Chapter&nbsp;2.&nbsp;Building</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="previous" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="next" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index"><link rel="subsection" href="build.html#build-prerequisites" title="2.1.&nbsp;Prerequisites"><link rel="subsection" href="build.html#build-build" title="2.2.&nbsp;Building">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter&nbsp;2.&nbsp;Building</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="installation.html">Prev</a>&nbsp;</td><th width="60%" align="center">Part&nbsp;I.&nbsp;Jalopy core</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="usage.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="build"></a>Chapter&nbsp;2.&nbsp;Building</h2></div></div><div></div></div><a class="indexterm" name="d0e706"></a><p>
-Explains the steps involved in building Jalopy from the sources.
-</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="build-prerequisites"></a>2.1.&nbsp;Prerequisites</h4></div></div><div></div></div><a class="indexterm" name="d0e716"></a><p>
-The following software must be installed separately, in order to build from the
-sources:
-</p><div class="table"><a name="tab-build-prerequisites"></a><p class="title"><b>Table&nbsp;2.1.&nbsp;Software needed to build from the sources</b></p><table summary="Software needed to build from the sources" border="0" style="border-collapse: collapse;"><colgroup><col><col></colgroup><tbody><tr><td style="" valign="top">Jakarta Ant</td><td style="">
-Jalopy comes with a simple, Ant-based build system. So you first need to obtain and
-install Ant as outlined in the
-<a href="http://jakarta.apache.org/ant/manual/install.html" target="_top">Ant manual</a>.
-The build system is only tested against the Ant 1.5.4 release, but later
-releases of Ant may also work.
-</td></tr><tr><td style="" valign="top">Oasis DocBook XML DTD</td><td style="">
-All documentation is written using DocBook Version 4.2 markup. You can get the DTD
-from the
-<a href="http://www.oasis-open.org/committees/docbook/xml/4.2/index.shtml" target="_top">OASIS web site</a>.
-Unpack the sources into a folder of your choice and remember this path as it will be
-needed for configuration later on.
-</td></tr><tr><td style="" valign="top">An XSLT processor</td><td style="">
-The DocBook markup needs to be transformed in order to make some user-friendly appearance.
-This is done via XSLT and Michael Kay's Saxon is the processor I found working with the
-Stylesheet package I use. You should download the current stable production
-release from SourceForge (<a href="http://saxon.sf.net" target="_top">http://saxon.sf.net</a>)
-and extract the file <tt class="filename">saxon.jar</tt> into the <tt class="filename">/lib</tt>
-folder of your Ant installation directory.  I also had to setup saxon to use
-Xerces as the XML parser by editing the
-META-INF/services/javax.xml.parsers.SAXParserFactory file inside of
-saxon.jar and replacing the alfred parser with org.apache.xerces.jaxp.SAXParserFactoryImpl
-</td></tr><tr><td style="" valign="top">DocBook XSL Stylesheets</td><td style="">
-To perform the markup translation you need Norman Walsh's XSL Stylesheet package.
-The version that works for me is 1.62.4. You can get it from SourceForge
-(<a href="http://docbook.sf.net" target="_top">http://docbook.sf.net</a>).
-Copy the file <tt class="filename">extensions/saxon651.jar</tt> that
-comes with the distribution into the <tt class="filename">/lib</tt> folder of your
-Ant installation directory as this file is needed for sophisticated table generation.
-</td></tr><tr><td style="" valign="top">A CVS client (optional)</td><td style="">
-If you plan to get the sources directly from CVS you need a CVS client. If your system
-does not come with one pre-installed (most Linux machines at least have the command-line
-client installed by default), you will certainly want to visit any of several good sites
-such as <a href="http://www.cvshome.org/" target="_top">http://www.cvshome.org/</a>
-which <a href="http://www.cvshome.org/dev/codes.html" target="_top">lists</a> available CVS clients
-for different platforms, their strengths and weaknesses. For what it's worth, I prefer
-<a href="http://www.smartcvs.com" target="_top">SmartCVS</a>.
-</td></tr></tbody></table></div><p></p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="build-build"></a>2.2.&nbsp;Building</h4></div></div><div></div></div><p>
-The basic steps to build Jalopy from the sources are:
-</p><div class="orderedlist"><ol type="1"><li><p>
-Get and install the needed software as outlined in <a href="build.html#build-prerequisites" title="2.1.&nbsp;Prerequisites">Section&nbsp;2.1, &#8220;Prerequisites&#8221;</a>.
-Make sure Ant is set up correctly.
-</p></li><li><p>
-Get the sources. Either download and unpack the
-<a href="./download.html#source" target="_top">Jalopy source distribution</a> which
-contains the complete Jalopy sources. Or grab the needed modules directly from the
-<a href="http://sourceforge.net/cvs/?group_id=45216" target="_top">CVS</a> tree.</p></li><li><p>
-Change to the directory where your Jalopy sources reside. You should find a
-directory layout somewhat similar to the following (each directory represents a
-module; the minimal needed modules are printed in <span class="emphasis"><em>bold</em></span>):
-</p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="screen">
- ..
-   ant/                  The Ant Plug-in
-   <span class="bold"><b>build/</b></span>                The Jalopy build system
-   console/
-   <span class="bold"><b>docu/</b></span>                 All documentation sources
-   eclipse/              The Eclipse Plug-in
-   jbuilder/             The JBuilder Plug-in
-   jdeveloper/           The JDeveloper Plug-in
-   jedit/                The jEdit Plug-in
-   <span class="bold"><b>main/</b></span>                 The core Jalopy sources
-   netbeans/             The NetBeans/Sun ONE Studio Plug-in
-</pre></td></tr></table><p>
-Change directory into <tt class="filename">/build</tt> where the master build script
-lurks.
-</p></li><li><p>
-Adjust the global build properties to match your installation. The build
-system uses quite a few properties to control the build process and
-specify additional needed resources. You can find and adjust these properties in the file
-<tt class="filename">build.properties</tt>.
-</p><p>
-Luckily you only have to change some common properties to get things running:
-</p><div class="variablelist"><p class="title"><b>Common build properties</b></p><dl><dt><span class="term">DIR.DOCBOOK.XSL</span></dt><dd><p>
-Specifies the installation directory of the DocBook XSL Stylesheets package.
-Note that you have to specify a protocol, e.g. <tt class="filename">file:///G:/XML/docbook-xsl-1.62.4</tt>.
-</p></dd><dt><span class="term">DIR.DOCBOOK.DTD</span></dt><dd><p>
-Specifies the path where to find the DocBook XSL DTD.
-You have to adjust the default path to match your installation.
-</p></dd><dt><span class="term">LIB.PATH.<i class="replaceable"><tt>&lt;modulename&gt;</tt></i></span></dt><dd><p>
-Specifies additional library path(s) needed to build a certain module.
-You have to adjust the default path(s) to match your installation.
-</p></dd><dt><span class="term">PACKAGE.PATH.<i class="replaceable"><tt>&lt;libraryname&gt;</tt></i></span></dt><dd><p>
-Specifies the location to a directory containing the package-list file for a
-given library. This is optional and only needed by Javadoc to resolve links to
-documentation for externally referenced classes. Change the default path(s)
-to match your installation.
-</p></dd></dl></div></li><li><p>
-Once everything is set up, you can start a build using <span><b class="command">ant</b></span> <i class="parameter"><tt>target</tt></i>
-where <i class="parameter"><tt>target</tt></i> describes one of the main build targets (those with a
-description, use <span><b class="command">ant</b></span> <i class="parameter"><tt>-projecthelp</tt></i> to display
-the available targets). Just typing <span><b class="command">ant</b></span> will build the Jalopy
-core runtime distribution.
-</p></li><li><p>
-When a build is done, you can find the created distribution(s) in the
-<tt class="filename">tmp~/dist</tt> folder. The build system creates and stores all
-intermediate files and subdirectories under the <tt class="filename">tmp~</tt>
-directory.
-</p></li><li><p>
-If you make changes to the source code, just run Ant again; this will perform a
-faster <i class="firstterm">incremental</i> rebuild of the target.
-</p></li></ol></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="installation.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="part-core.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="usage.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Chapter&nbsp;1.&nbsp;Installation&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;Chapter&nbsp;3.&nbsp;Usage</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/comments.html b/utils/jalopy/docs/comments.html
deleted file mode 100755 (executable)
index 5eceab4..0000000
+++ /dev/null
@@ -1,134 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>4.3.6.&nbsp;Comments</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="printer.html" title="4.3.&nbsp;Printer"><link rel="previous" href="separation.html" title="4.3.5.&nbsp;Blank Lines"><link rel="next" href="imports.html" title="4.3.7.&nbsp;Imports"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index"><link rel="subsection" href="comments.html#coments-remove" title="4.3.6.1.&nbsp;Remove"><link rel="subsection" href="comments.html#coments-format" title="4.3.6.2.&nbsp;Format">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4.3.6.&nbsp;Comments</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="separation.html">Prev</a>&nbsp;</td><th width="60%" align="center">4.3.&nbsp;Printer</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="imports.html">Next</a></td></tr></table><hr></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="comments"></a>4.3.6.&nbsp;Comments</h3></div></div><div></div></div><p>
-Controls how Jalopy handles certain types of comments.
-</p><p>
-As far as Jalopy is concerned, there are five types of comments:
-
-</p><div class="orderedlist"><ol type="1"><li><p><a name="comments-single"></a>
-Single-line comments <tt class="literal">// text</tt>
-</p><a class="indexterm" name="d0e3757"></a><a class="indexterm" name="d0e3762"></a><p>
-An <span class="emphasis"><em>end-of-line comment</em></span>: all text from the ASCII characters
-<tt class="literal">//</tt> to the end of the line
-</p><div class="example"><a name="ex-comments-single"></a><p class="title"><b>Example&nbsp;4.130.&nbsp;Single-line comment</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-<span class="bold"><b>// [PENDING] this should be part of the ErrorManager</b></span>
-</pre></td></tr></table></div><p></p></li><li><p><a name="comments-multi"></a>
-Multi-line comments <tt class="literal">/* text */</tt>
-</p><a class="indexterm" name="d0e3788"></a><a class="indexterm" name="d0e3793"></a><p>
-A <span class="emphasis"><em>traditional comment</em></span>: all text from the ASCII characters <tt class="literal">/*</tt>
-to the ASCII characters <tt class="literal">*/</tt>
-</p><div class="example"><a name="ex-comments-multi"></a><p class="title"><b>Example&nbsp;4.131.&nbsp;Multi-line comment</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-<span class="bold"><b>/* public int getSubregionStartOffset(int line, int subregion)
-{
-       ChunkCache.LineInfo[] lineInfos = chunkCache.getLineInfosForPhysicalLine(line);
-       return buffer.getLineStartOffset(lineInfos[subregion].physicalLine)
-               + lineInfos[subregion].offset;
-} */</b></span>
-</pre></td></tr></table></div><p></p></li><li><p><a name="comments-javadoc"></a>
-Javadoc comments <tt class="literal">/** text */</tt>
-</p><a class="indexterm" name="d0e3822"></a><a class="indexterm" name="d0e3827"></a><p>
-A <span class="emphasis"><em>documentation comment</em></span>: actually a special kind of
-multi-line comment as defined by the Sun Javadoc specification;
-all text from the ASCII characters <tt class="literal">/**</tt>
-to the ASCII characters <tt class="literal">*/</tt>
-</p><div class="example"><a name="ex-comments-javadoc"></a><p class="title"><b>Example&nbsp;4.132.&nbsp;Javadoc comment</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-<span class="bold"><b>/**
- * A scroll listener will be notified when the text area is scrolled, either
- * horizontally or vertically.
- *
- * @author Slava Pestov
- * @since jEdit 3.2pre2
- */</b></span>
-</pre></td></tr></table></div><p></p></li><li><p><a name="comments-separator"></a>
-Separator comments <tt class="literal">//~ text</tt>
-</p><a class="indexterm" name="d0e3856"></a><a class="indexterm" name="d0e3861"></a><p>
-A Jalopy-specific <span class="emphasis"><em>separator comment</em></span>: actually a special kind of single-line comment;
-all text from the ASCII characters
-<tt class="literal">//~</tt> to the end of the line
-</p><div class="example"><a name="ex-comments-separator"></a><p class="title"><b>Example&nbsp;4.133.&nbsp;Separator comment</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-<span class="bold"><b>//~ Inner classes .......................................</b></span>
-</pre></td></tr></table></div><p></p></li><li><p><a name="comments-pragma"></a>
-Pragma comments <tt class="literal">//J[directive]</tt>
-</p><a class="indexterm" name="d0e3887"></a><a class="indexterm" name="d0e3892"></a><p>
-A Jalopy-specific <span class="emphasis"><em>control comment</em></span>: actually a special kind of single-line comment;
-all text from the ASCII characters
-<tt class="literal">//J[-|+]</tt> to the end of the line
-</p><div class="example"><a name="ex-comments-control"></a><p class="title"><b>Example&nbsp;4.134.&nbsp;Control comments</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-<span class="bold"><b>//J-</b></span>
-    if {condition()) return value;
-<span class="bold"><b>//J+</b></span>
-</pre></td></tr></table></div><p>
-Currently, Jalopy recognizes two pragma comments: <tt class="literal">//J-</tt> and <tt class="literal">//J+</tt>
-</p><p>
-With these comments you can disable formatting for certain code sections.
-<tt class="literal">//J-</tt> tells Jalopy to disable formatting until <tt class="literal">//J+</tt>
-will enable it again. Note that these comments can only be used in conjunction! Omitting the <tt class="literal">//J+</tt> will certainly produce errors.
-</p></li></ol></div><p>
-</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="coments-remove"></a>4.3.6.1.&nbsp;Remove</h4></div></div><div></div></div><p>
-Controls whether and what types of comments should be removed during the
-formatting process.
-</p><div class="itemizedlist"><ul type="disc"><li><p><a name="comments-remove-single"></a>
-Single-line comments
-</p><a class="indexterm" name="d0e3943"></a><a class="indexterm" name="d0e3948"></a><p>
-If enabled, removes all single-line comments found in a source file.
-</p></li><li><p><a name="comments-remove-multi"></a>
-Multi-line comments
-</p><a class="indexterm" name="d0e3956"></a><a class="indexterm" name="d0e3961"></a><p>
-If enabled, removes all multi-line comments (sometimes called block comments) found in a source file.
-</p></li><li><p><a name="comments-remove-javadoc"></a>
-Javadoc comments
-</p><a class="indexterm" name="d0e3969"></a><a class="indexterm" name="d0e3974"></a><p>
-If enabled, removes all Javadoc comments found in a source file. This may prove
-useful in conjunction with the <a href="javadoc.html#javadoc-generation" title="4.3.9.2.&nbsp;Generation">Javadoc auto-generation capabilities</a>
-to build Javadoc from scratch.
-</p></li></ul></div></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="coments-format"></a>4.3.6.2.&nbsp;Format</h4></div></div><div></div></div><p>
-Controls the reformatting of comments.
-</p><div class="itemizedlist"><ul type="disc"><li><p><a name="comments-format-multi"></a>
-Multi-line comments
-</p><a class="indexterm" name="d0e3991"></a><a class="indexterm" name="d0e3996"></a><p>
-Enables the reformatting of multi-line comments. Only affects the leading
-asterixes of consecutive comment lines as shown in the examples below.
-</p><div class="example"><a name="ex-comments-multi-line"></a><p class="title"><b>Example&nbsp;4.135.&nbsp;Multi-line comment</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-/* Multi-line
-* comment.
-* end.
-*/
-</pre></td></tr></table></div><p></p><div class="example"><a name="ex-comments-multi-line-formatted"></a><p class="title"><b>Example&nbsp;4.136.&nbsp;Multi-line comment (reformatted)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-/* Multi-line
- * comment.
- * end.
- */
-</pre></td></tr></table></div><p></p></li></ul></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="separation.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="printer.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="imports.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4.3.5.&nbsp;Blank Lines&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;4.3.7.&nbsp;Imports</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/contact.html b/utils/jalopy/docs/contact.html
deleted file mode 100755 (executable)
index 38afa69..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>Jalopy - Contact</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><meta name="keywords" content="Java, convention, source, code, formatter, beautifier, pretty, printer, format, beautify, layout, coding, open, style, standard, transform, parser, Sun, ANTLR, Ant, Eclipse, JBuilder, NetBeans, jEdit, jakarta, JDeveloper, generator, generation, JDE, maven">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="center"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-            This page generated: <strong>June 8 2004</strong></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" width="100%" cellspacing="0" cellpadding="5"><tbody><tr><td><div class="article" lang="en"><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="trackers"></a>Trackers</h2></div></div><div></div></div><p>
-Please use the following SourceForge trackers to submit bug reports or post
-feature requests:
-</p><div class="blockquote"><blockquote class="blockquote"><table class="simplelist" border="0" summary="Simple list"><tr><td><a href="http://sf.net/tracker/?func=add&amp;group_id=45216&amp;atid=442212" target="_top">Submit a bug report</a></td></tr><tr><td><a href="http://sf.net/tracker/?func=add&amp;group_id=45216&amp;atid=442215" target="_top">Request a new feature</a></td></tr><tr><td><a href="http://sf.net/tracker/?func=add&amp;group_id=45216&amp;atid=442214" target="_top">Send a patch</a></td></tr><tr><td><a href="http://sf.net/tracker/?func=add&amp;group_id=45216&amp;atid=442213" target="_top">Ask for support</a></td></tr></table></blockquote></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="mailing-lists"></a>Mailing Lists</h2></div></div><div></div></div><p>
-If you want to provide feedback on this software or stay current with the
-latest development, you may want to join one of the Jalopy mailing lists.
-</p><div class="informaltable"><table cellspacing="0" cellpadding="2" border="0" style="border-collapse: collapse;border-top: 0.5pt solid ; border-bottom: 0.5pt solid ; border-left: 0.5pt solid ; border-right: 0.5pt solid ; "><colgroup><col><col><col></colgroup><thead><tr><th style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; ">List</th><th style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; ">Subscribe/Unsubcribe</th><th style="border-bottom: 0.5pt solid ; ">Browse Archives</th></tr></thead><tbody><tr><td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; "><span class="bold"><b>jalopy-announce</b></span><p>A high-level
-announcements list, for things like major release notifications
-or important bug-fixes. This is not a discussion list, and is not open to
-public posting. Traffic is expected to be very low.
-</p><p>
-If you're interested in
-Jalopy, it is recommended you subscribe at a minimum to this list.
-</p></td><td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; "><a href="http://lists.sf.net/mailman/listinfo/jalopy-announce" target="_top">Subscribe/Unsubscribe</a></td><td style="border-bottom: 0.5pt solid ; "><a href="http://sourceforge.net/mailarchive/forum.php?forum=jalopy-announce" target="_top">Browse archives</a></td></tr><tr><td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; "><span class="bold"><b>jalopy-user</b></span><p>
-Intended for
-users to ask questions, share knowledge, and discuss general Jalopy related issues.
-</p></td><td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; "><a href="http://lists.sf.net/mailman/listinfo/jalopy-user" target="_top">Subscribe/Unsubscribe</a></td><td style="border-bottom: 0.5pt solid ; "><a href="http://sourceforge.net/mailarchive/forum.php?forum=jalopy-user" target="_top">Browse archives</a></td></tr><tr><td style="border-right: 0.5pt solid ; "><span class="bold"><b>jalopy-development</b></span><p>
-Hosts development related discussions.
-</p></td><td style="border-right: 0.5pt solid ; "><a href="http://lists.sf.net/mailman/listinfo/jalopy-development" target="_top">Subscribe/Unsubscribe</a></td><td style=""><a href="http://sourceforge.net/mailarchive/forum.php?forum=jalopy-development" target="_top">Browse archives</a></td></tr></tbody></table></div></div></div></td></tr><tr><td height="20"></td></tr></tbody></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2002, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/contributors.html b/utils/jalopy/docs/contributors.html
deleted file mode 100755 (executable)
index 75d4324..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>Jalopy - Contributors</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><meta name="keywords" content="Java, convention, source, code, formatter, beautifier, pretty, printer, format, beautify, layout, coding, open, style, standard, transform, parser, Sun, ANTLR, Ant, Eclipse, JBuilder, NetBeans, jEdit, jakarta, JDeveloper, generator, generation, JDE, maven">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="center"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-            This page generated: <strong>June 8 2004</strong></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" width="100%" cellspacing="0" cellpadding="5"><tbody><tr><td><div class="article" lang="en"><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="contributors"></a>Contributors</h2></div></div><div></div></div><p>
-The following people have contributed to the Jalopy project:
-</p><div class="itemizedlist"><ul type="square"><li style="list-style-type: square">
-Michael Callum
-</li><li style="list-style-type: square">
-Frank Klomp
-</li><li style="list-style-type: square">
-Larry Hamel
-</li><li style="list-style-type: square">
-Roman Sarychev
-</li><li style="list-style-type: square">
-Denis N. Antonioli
-</li><li style="list-style-type: square">
-David Beutel
-</li><li style="list-style-type: square">
-Kees Kuip
-</li></ul></div></div></div></td></tr><tr><td height="20"></td></tr></tbody></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2002, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/dedication.html b/utils/jalopy/docs/dedication.html
deleted file mode 100755 (executable)
index 662188e..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>Dedication</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="manual.html" title="Jalopy User Manual"><link rel="previous" href="manual.html" title="Jalopy User Manual"><link rel="next" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Dedication</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="manual.html">Prev</a>&nbsp;</td><th width="60%" align="center">&nbsp;</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="acknowledge.html">Next</a></td></tr></table><hr></div><div class="preface" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="dedication"></a>Dedication</h2></div></div><div></div></div><p>
-This work is inspired by and dedicated to the poet who writes:
-</p><div class="blockquote"><blockquote class="blockquote"><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e29"></a>Tabacaria</h2></div></div><div></div></div><div class="informaltable"><table border="0" style="border-collapse: collapse;"><colgroup><col></colgroup><tbody><tr><td style="">N&atilde;o sou nada.</td></tr><tr><td style="">Nunca serei nada.</td></tr><tr><td style="">N&atilde;o posso querer ser nada.</td></tr><tr><td style="">&Agrave; parte isso, tenho em mim todos os sonhos do mundo.</td></tr><tr><td style="">&nbsp;</td></tr><tr><td style="">Janelas do meu quarto,</td></tr><tr><td style="">Do meu quarto de um dos milh&otilde;es do mundo que ningu&eacute;m sabe quem &eacute;</td></tr><tr><td style="">(E se soubessem quem &eacute;, o que saberiam?),</td></tr><tr><td style="">&nbsp;</td></tr><tr><td style="">Dais para o mist&eacute;rio de uma rua cruzada constantemente por gente,</td></tr><tr><td style="">Para uma rua inacess&iacute;vel a todos os pensamentos,</td></tr><tr><td style="">Real, impossivelmente real, certa, desconhecidamente certa,</td></tr><tr><td style="">Com o mist&eacute;rio das coisas por baixo das pedras e dos seres,</td></tr><tr><td style="">Com a morte a p&ocirc;r humidade nas paredes e cabelos brancos nos homens,</td></tr><tr><td style="">Com o Destino a conduzir a carro&ccedil;a de tudo pela estrada de nada. </td></tr><tr><td style="">Estou hoje vencido, como se soubesse a verdade. </td></tr><tr><td style="">Estou hoje l&uacute;cido, como se estivesse para morrer, </td></tr><tr><td style="">E n&atilde;o tivesse mais irmandade com as coisas </td></tr><tr><td style="">Sen&atilde;o uma despedida, tornando-se esta casa e este lado da rua</td></tr><tr><td style="">A fileira de carruagens de um comboio, e uma partida apitada</td></tr><tr><td style="">De dentro da minha cabe&ccedil;a, </td></tr><tr><td style="">E uma sacudidela dos meus nervos e um ranger de ossos na ida.</td></tr><tr><td style="">&nbsp;</td></tr><tr><td style="">Estou hoje perplexo como quem pensou e achou e esqueceu.</td></tr><tr><td style="">Estou hoje dividido entre a lealdade que devo </td></tr><tr><td style="">Estou hoje dividido entre a lealdade que devo </td></tr><tr><td style="">E &agrave; sensa&ccedil;&atilde;o de que tudo &eacute; sonho, como coisa real por dentro.</td></tr><tr><td style="">&nbsp;</td></tr><tr><td style="">Falhei em tudo.</td></tr><tr><td style="">Como n&atilde;o fiz prop&oacute;sito nenhum, talvez tudo fosse nada. </td></tr><tr><td style="">A aprendizagem que me deram,</td></tr><tr><td style="">Desci dela pela janela das traseiras da casa, </td></tr><tr><td style="">Fui at&eacute; ao campo com grandes prop&oacute;sitos. </td></tr><tr><td style="">Mas l&aacute; encontrei s&oacute; ervas e &aacute;rvores, </td></tr><tr><td style="">E quando havia gente era igual &agrave; outra. </td></tr><tr><td style="">Saio da janela, sento-me numa cadeira. Em que hei-de pensar? </td></tr><tr><td style="">&nbsp;</td></tr><tr><td style="">Que sei eu do que serei, eu que n&atilde;o sei o que sou? </td></tr><tr><td style="">Ser o que penso? Mas penso ser tanta coisa!</td></tr><tr><td style="">E h&aacute; tantos que pensam ser a mesma coisa que n&atilde;o pode haver tantos!</td></tr><tr><td style="">G&ecirc;nio? Neste momento</td></tr><tr><td style="">Cem mil c&eacute;rebros se concebem em sonho g&ecirc;nios como eu,</td></tr><tr><td style="">E a hist&oacute;ria n&atilde;o marcar&aacute;, quem sabe?, nem um,</td></tr><tr><td style="">Nem haver&aacute; sen&atilde;o estrume de tantas conquistas futuras.</td></tr><tr><td style="">N&atilde;o, n&atilde;o creio em mim.</td></tr><tr><td style="">Em todos os manic&ocirc;mios h&aacute; doidos malucos com tantas certezas!</td></tr><tr><td style="">Eu, que n&atilde;o tenho nenhuma certeza, sou mais certo ou menos certo?</td></tr><tr><td style="">N&atilde;o, nem em mim...</td></tr><tr><td style="">&nbsp;</td></tr><tr><td style="">Em quantas mansardas e n&atilde;o-mansardas do mundo</td></tr><tr><td style="">N&atilde;o est&atilde;o nesta hora g&eacute;nios-para-si-mesmos sonhando?</td></tr><tr><td style="">Quantas aspira&ccedil;&otilde;es altas e nobres e l&uacute;cidas -</td></tr><tr><td style="">Sim, verdadeiramente altas e nobres e l&uacute;cidas -,</td></tr><tr><td style="">E quem sabe se realiz&aacute;veis,</td></tr><tr><td style="">Nunca ver&atilde;o a luz do sol real nem achar&atilde;o ouvidos de gente?</td></tr><tr><td style="">O mundo &eacute; para quem nasce para o conquistar</td></tr><tr><td style="">E n&atilde;o para quem sonha que pode conquist&aacute;-lo, ainda que tenha raz&atilde;o.
-</td></tr><tr><td style="">Tenho sonhado mais que o que Napole&atilde;o fez.</td></tr><tr><td style="">Tenho apertado ao peito hipot&eacute;tico mais humanidades do que Cristo,</td></tr><tr><td style="">Tenho feito filosofias em segredo que nenhum Kant escreveu.</td></tr><tr><td style="">Mas sou, e talvez serei sempre, o da mansarda,</td></tr><tr><td style="">Ainda que n&atilde;o more nela;</td></tr><tr><td style="">Serei sempre o que n&atilde;o nasceu para isso;</td></tr><tr><td style="">Serei sempre s&oacute; o que tinha qualidades;</td></tr><tr><td style="">Serei sempre o que esperou que lhe abrissem a porta ao p&eacute; de uma parede sem porta</td></tr><tr><td style="">E cantou a cantiga do Infinito numa capoeira,</td></tr><tr><td style="">E ouviu a voz de Deus num po&ccedil;o tapado.</td></tr><tr><td style="">Crer em mim? N&atilde;o, nem em nada.</td></tr><tr><td style="">Derrame-me a Natureza sobre a cabe&ccedil;a ardente</td></tr><tr><td style="">O seu sol, a sua chuva, o vento que me acha o cabelo,</td></tr><tr><td style="">E o resto que venha se vier, ou tiver que vir, ou n&atilde;o venha.</td></tr><tr><td style="">Escravos card&iacute;acos das estrelas,</td></tr><tr><td style="">Conquistamos todo o mundo antes de nos levantar da cama;</td></tr><tr><td style="">Mas acordamos e ele &eacute; opaco,</td></tr><tr><td style="">Levantamo-nos e ele &eacute; alheio,</td></tr><tr><td style="">Sa&iacute;mos de casa e ele &eacute; a terra inteira,</td></tr><tr><td style="">Mais o sistema solar e a Via L&aacute;ctea e o Indefinido.</td></tr><tr><td style="">&nbsp;</td></tr><tr><td style="">(Come chocolates, pequena;</td></tr><tr><td style="">Come chocolates!</td></tr><tr><td style="">Olha que n&atilde;o h&aacute; mais metaf&iacute;sica no mundo sen&atilde;o chocolates.</td></tr><tr><td style="">Olha que as religi&otilde;es todas n&atilde;o ensinam mais que a confeitaria.</td></tr><tr><td style="">Come, pequena suja, come!</td></tr><tr><td style="">Pudesse eu comer chocolates com a mesma verdade com que comes!</td></tr><tr><td style="">Mas eu penso e, ao tirar o papel de prata, que &eacute; de folhas de estanho,</td></tr><tr><td style="">Deito tudo para o ch&atilde;o, como tenho deitado a vida.)</td></tr><tr><td style="">&nbsp;</td></tr><tr><td style="">Mas ao menos fica da amargura do que nunca serei</td></tr><tr><td style="">A caligrafia r&aacute;pida destes versos,</td></tr><tr><td style="">P&oacute;rtico partido para o Imposs&iacute;vel.</td></tr><tr><td style="">Mas ao menos consagro a mim mesmo um desprezo sem l&aacute;grimas,</td></tr><tr><td style="">Nobre ao menos no gesto largo com que atiro</td></tr><tr><td style="">A roupa suja que sou, sem rol, pra o decurso das coisas,</td></tr><tr><td style="">E fico em casa sem camisa.</td></tr><tr><td style="">&nbsp;</td></tr><tr><td style="">(Tu, que consolas, que n&atilde;o existes e por isso consolas,</td></tr><tr><td style="">Ou deusa grega, concebida como est&aacute;tua que fosse viva,</td></tr><tr><td style="">Ou patr&iacute;cia romana, impossivelmente nobre e nefasta,</td></tr><tr><td style="">Ou princesa de trovadores, gentil&iacute;ssima e colorida,</td></tr><tr><td style="">Ou marquesa do s&eacute;culo dezoito, decotada e long&iacute;nqua,</td></tr><tr><td style="">Ou cocote c&eacute;lebre do tempo dos nossos pais,</td></tr><tr><td style="">Ou n&atilde;o sei qu&ecirc; moderno - n&atilde;o concebo bem o qu&ecirc; -,</td></tr><tr><td style="">Tudo isso, seja o que for, que sejas, se pode inspirar que inspire!</td></tr><tr><td style="">Meu cora&ccedil;&atilde;o &eacute; um balde despejado.</td></tr><tr><td style="">Como os que invocam esp&iacute;ritos invocam esp&iacute;ritos invoco</td></tr><tr><td style="">A mim mesmo e n&atilde;o encontro nada.</td></tr><tr><td style="">Chego &agrave; janela e vejo a rua com uma nitidez absoluta.</td></tr><tr><td style="">Vejo as lojas, vejo os passeios, vejo os carros que passam,</td></tr><tr><td style="">Vejo os entes vivos vestidos que se cruzam,</td></tr><tr><td style="">Vejo os c&atilde;es que tamb&eacute;m existem,</td></tr><tr><td style="">E tudo isto me pesa como uma condena&ccedil;&atilde;o ao degredo,</td></tr><tr><td style="">E tudo isto &eacute; estrangeiro, como tudo.) </td></tr><tr><td style="">&nbsp;</td></tr><tr><td style="">Vivi, estudei, amei, e at&eacute; cri,</td></tr><tr><td style="">E hoje n&atilde;o h&aacute; mendigo que eu n&atilde;o inveje s&oacute; por n&atilde;o ser eu.</td></tr><tr><td style="">Olho a cada um os andrajos e as chagas e a mentira,</td></tr><tr><td style="">E penso: talvez nunca vivesses nem estudasses nem amasses nem cresses</td></tr><tr><td style="">(Porque &eacute; poss&iacute;vel fazer a realidade de tudo isso sem fazer nada disso);</td></tr><tr><td style="">Talvez tenhas existido apenas, como um lagarto a quem cortam o rabo</td></tr><tr><td style="">E que &eacute; rabo para aqu&eacute;m do lagarto remexidamente.</td></tr><tr><td style="">&nbsp;</td></tr><tr><td style="">Fiz de mim o que n&atilde;o soube,</td></tr><tr><td style="">E o que podia fazer de mim n&atilde;o o fiz.</td></tr><tr><td style="">O domin&oacute; que vesti era errado. Conheceram-me logo por quem n&atilde;o era e n&atilde;o desmenti, e perdi-me.</td></tr><tr><td style="">Quando quis tirar a m&aacute;scara,</td></tr><tr><td style="">Estava pegada &agrave; cara.</td></tr><tr><td style="">Quando a tirei e me vi ao espelho,</td></tr><tr><td style="">J&aacute; tinha envelhecido.</td></tr><tr><td style="">Estava b&ecirc;bado, j&aacute; n&atilde;o sabia vestir o domin&oacute; que n&atilde;o tinha tirado.</td></tr><tr><td style="">Deitei fora a m&aacute;scara e dormi no vesti&aacute;rio</td></tr><tr><td style="">Como um c&atilde;o tolerado pela ger&ecirc;ncia</td></tr><tr><td style="">Por ser inofensivo</td></tr><tr><td style="">E vou escrever esta hist&oacute;ria para provar que sou sublime.</td></tr><tr><td style="">&nbsp;</td></tr><tr><td style="">Ess&ecirc;ncia musical dos meus versos in&uacute;teis,</td></tr><tr><td style="">Quem me dera encontrar-te como coisa que eu fizesse,</td></tr><tr><td style="">E n&atilde;o ficasse sempre defronte da Tabacaria de defronte,</td></tr><tr><td style="">Calcando aos p&eacute;s a consci&ecirc;ncia de estar existindo, Como um tapete em que um b&ecirc;bado trope&ccedil;a</td></tr><tr><td style="">Ou um capacho que os ciganos roubaram e n&atilde;o valia nada.</td></tr><tr><td style="">&nbsp;</td></tr><tr><td style="">Mas o dono da Tabacaria chegou &agrave; porta e ficou &agrave; porta.</td></tr><tr><td style="">Olho-o com o desconforto da cabe&ccedil;a mal voltada</td></tr><tr><td style="">E com o desconforto da alma mal-entendendo.</td></tr><tr><td style="">Ele morrer&aacute; e eu morrerei.</td></tr><tr><td style="">Ele deixar&aacute; a tabuleta, e eu deixarei versos.</td></tr><tr><td style="">A certa altura morrer&aacute; a tabuleta tamb&eacute;m, e os versos tamb&eacute;m.</td></tr><tr><td style="">Depois de certa altura morrer&aacute; a rua onde esteve a tabuleta,</td></tr><tr><td style="">E a l&iacute;ngua em que foram escritos os versos.</td></tr><tr><td style="">Morrer&aacute; depois o planeta girante em que tudo isto se deu.</td></tr><tr><td style="">Em outros sat&eacute;lites de outros sistemas qualquer coisa como gente</td></tr><tr><td style="">Continuar&aacute; fazendo coisas como versos e vivendo por baixo de coisas como tabuletas,</td></tr><tr><td style="">Sempre uma coisa defronte da outra,</td></tr><tr><td style="">Sempre uma coisa t&atilde;o in&uacute;til como a outra, </td></tr><tr><td style="">Sempre o imposs&iacute;vel t&atilde;o est&uacute;pido como o real,</td></tr><tr><td style="">Sempre o mist&eacute;rio do fundo t&atilde;o certo como o sono de mist&eacute;rio da superf&iacute;cie,</td></tr><tr><td style="">Sempre isto ou sempre outra coisa ou nem uma coisa nem outra.</td></tr><tr><td style="">&nbsp;</td></tr><tr><td style="">Mas um homem entrou na Tabacaria (para comprar tabaco?),</td></tr><tr><td style="">E a realidade plaus&iacute;vel cai de repente em cima de mim.</td></tr><tr><td style="">Semiergo-me en&eacute;rgico, convencido, humano,</td></tr><tr><td style="">E vou tencionar escrever estes versos em que digo o contr&aacute;rio.</td></tr><tr><td style="">&nbsp;</td></tr><tr><td style="">Acendo um cigarro ao pensar em escrev&ecirc;-los</td></tr><tr><td style="">E saboreio no cigarro a liberta&ccedil;&atilde;o de todos os pensamentos.</td></tr><tr><td style="">Sigo o fumo como uma rota pr&oacute;pria, </td></tr><tr><td style="">E gozo, num momento sensitivo e competente,</td></tr><tr><td style="">A liberta&ccedil;&atilde;o de todas as especula&ccedil;&otilde;es</td></tr><tr><td style="">E a consci&ecirc;ncia de que a metaf&iacute;sica &eacute; uma consequ&ecirc;ncia de estar mal disposto.</td></tr><tr><td style="">&nbsp;</td></tr><tr><td style="">Depois deito-me para tr&aacute;s na cadeira</td></tr><tr><td style="">E continuo fumando.</td></tr><tr><td style="">Enquanto o Destino mo conceder, continuarei fumando.</td></tr><tr><td style="">&nbsp;</td></tr><tr><td style="">(Se eu casasse com a filha da minha lavadeira  </td></tr><tr><td style="">Talvez fosse feliz.)</td></tr><tr><td style="">Visto isto, levanto-me da cadeira. Vou &agrave; janela.</td></tr><tr><td style="">O homem saiu da Tabacaria (metendo troco na algibeira das cal&ccedil;as?).</td></tr><tr><td style="">Ah, conhe&ccedil;o-o: &eacute; o Esteves sem metaf&iacute;sica.</td></tr><tr><td style="">(O dono da Tabacaria chegou &agrave; porta.)</td></tr><tr><td style="">Como por um instinto divino o Esteves voltou-se e viu-me.</td></tr><tr><td style="">Acenou-me adeus gritei-lhe Adeus &oacute; Esteves!, e o universo</td></tr><tr><td style="">Reconstruiu-se-me sem ideal nem esperan&ccedil;a, e o dono da Tabacaria sorriu.</td></tr></tbody></table></div></div></blockquote></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="manual.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="manual.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="acknowledge.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Jalopy User Manual&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;Acknowledgements</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/dependencies.html b/utils/jalopy/docs/dependencies.html
deleted file mode 100755 (executable)
index 9a95c1d..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>Appendix&nbsp;A.&nbsp;Library Dependencies</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="manual.html" title="Jalopy User Manual"><link rel="previous" href="plugin-netbeans-license.html" title="11.3.&nbsp;License"><link rel="next" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Appendix&nbsp;A.&nbsp;Library Dependencies</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="plugin-netbeans-license.html">Prev</a>&nbsp;</td><th width="60%" align="center">&nbsp;</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="license-bsd.html">Next</a></td></tr></table><hr></div><div class="appendix" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="dependencies"></a>Appendix&nbsp;A.&nbsp;Library Dependencies</h2></div></div><div></div></div><p>
-Depending on the distribution, Jalopy depends on some or all of the following
-freely available libraries:
-</p><div class="table"><a name="tab-library-dependencies"></a><p class="title"><b>Table&nbsp;A.1.&nbsp;Library dependencies</b></p><table summary="Library dependencies" border="0" style="border-collapse: collapse;"><colgroup><col><col></colgroup><tbody><tr><td style="">Name:</td><td style="">AElfred XML Parser 1.2</td></tr><tr><td style="">Author:</td><td style="">David Brownell, Michael H. Kay, Microstar Software Ltd.</td></tr><tr><td style="">License:</td><td style=""><a href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991">GNU General Public License</a></td></tr><tr><td style="">Info:</td><td style="">The parser is taken from the Saxon 6.5.2 release.</td></tr><tr><td style="">URL:</td><td style=""><a href="http://sf.net/projects/saxon/" target="_top">http://sf.net/projects/saxon/</a></td></tr><tr><td style="">&nbsp;</td><td style="">&nbsp;</td></tr><tr><td style="">Name:</td><td style="">ANTLR Parser Generator 2.7.2a2</td></tr><tr><td style="">Author:</td><td style="">jGuru.com (MageLang Institute), project lead by Terence Parr</td></tr><tr><td style="">License:</td><td style=""><a href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS">Custom, Public Domain</a></td></tr><tr><td style="" valign="top">Info:</td><td style="">Contains some changes and fixes to make it work with Jalopy, re-packaged
-to avoid classpath clashes.
-</td></tr><tr><td style="">URL:</td><td style=""><a href="http://www.antlr.org/" target="_top">http://www.antlr.org/</a></td></tr><tr><td style="">&nbsp;</td><td style="">&nbsp;</td></tr><tr><td style="">Name:</td><td style="">GNU getopt Java port 1.0.9</td></tr><tr><td style="">Author:</td><td style="">Aaron M. Renn</td></tr><tr><td style="">License:</td><td style=""><a href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991">GNU General Public License</a></td></tr><tr><td style="">URL:</td><td style=""><a href="http://www.urbanophile.com/~arenn/hacking/download.html" target="_top">http://www.urbanophile.com/~arenn/hacking/download.html</a></td></tr><tr><td style="">&nbsp;</td><td style="">&nbsp;</td></tr><tr><td style="">Name:</td><td style="">JAXP Java API for XML Processing 1.2</td></tr><tr><td style="">Author:</td><td style="">Sun Microsystems, Inc.</td></tr><tr><td style="">License:</td><td style=""><a href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1">Apache Software License</a></td></tr><tr><td style="">URL:</td><td style=""><a href="http://java.sun.com/xml/" target="_top">http://java.sun.com/xml/</a></td></tr><tr><td style="">&nbsp;</td><td style="">&nbsp;</td></tr><tr><td style="">Name:</td><td style="">JDOM XML API 1.0 Beta 8</td></tr><tr><td style="">Author:</td><td style="">JDOM Group, lead by Jason Hunter and Brett McLaughlin</td></tr><tr><td style="">License:</td><td style="">BSD/Apache style</td></tr><tr><td style="">URL:</td><td style=""><a href="http://www.jdom.org/" target="_top">http://www.jdom.org/</a></td></tr><tr><td style="">&nbsp;</td><td style="">&nbsp;</td></tr><tr><td style="">Name:</td><td style="">log4j logging toolkit 1.2.6</td></tr><tr><td style="">Author:</td><td style="">Apache Software Foundation</td></tr><tr><td style="">License:</td><td style=""><a href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1">Apache Software License</a></td></tr><tr><td style="" valign="top">Info:</td><td style="">Jalopy specifically needs 1.2.6 or above as I use an accessor that was
-only introduced with 1.2.6</td></tr><tr><td style="">URL:</td><td style=""><a href="http://jakarta.apache.org/log4j/" target="_top">http://jakarta.apache.org/log4j/</a></td></tr><tr><td style="">&nbsp;</td><td style="">&nbsp;</td></tr><tr><td style="">Name:</td><td style="">Moe Editor 1.2.0</td></tr><tr><td style="">Author:</td><td style="">BlueJ Group at Monash University, Slava Pestov</td></tr><tr><td style="">License:</td><td style="">Public Domain</td></tr><tr><td style="" valign="top">Info:</td><td style="">Jalopy incorporates a stripped down version of the syntax package included in the
-Moe sources
-</td></tr><tr><td style="">URL:</td><td style=""><a href="http://www.bluej.org/" target="_top">http://www.bluej.org/</a></td></tr><tr><td style="">&nbsp;</td><td style="">&nbsp;</td></tr><tr><td style="">Name:</td><td style="">Oro Regular Expressions 2.0.6</td></tr><tr><td style="">Author:</td><td style="">Apache Software Foundation</td></tr><tr><td style="">License:</td><td style=""><a href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1">Apache Software License</a></td></tr><tr><td style="">URL:</td><td style=""><a href="http://jakarta.apache.org/oro/" target="_top">http://jakarta.apache.org/oro/</a></td></tr><tr><td style="">&nbsp;</td><td style="">&nbsp;</td></tr><tr><td style="">Name:</td><td style="">SAX Simple API for XML 2.0.1 </td></tr><tr><td style="">Author:</td><td style="">David Megginson, David Brownell</td></tr><tr><td style="">License:</td><td style="">Public Domain</td></tr><tr><td style="">URL:</td><td style=""><a href="http://www.saxproject.org/" target="_top">http://www.saxproject.org/</a></td></tr><tr><td style="">&nbsp;</td><td style="">&nbsp;</td></tr></tbody></table></div><p></p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="plugin-netbeans-license.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="manual.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="license-bsd.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">11.3.&nbsp;License&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;Appendix&nbsp;B.&nbsp;The Jalopy BSD License</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/docs.html b/utils/jalopy/docs/docs.html
deleted file mode 100755 (executable)
index c5c3cb9..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>Jalopy - Documentation</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><meta name="keywords" content="Java, convention, source, code, formatter, beautifier, pretty, printer, format, beautify, layout, coding, open, style, standard, transform, parser, Sun, ANTLR, Ant, Eclipse, JBuilder, NetBeans, jEdit, jakarta, JDeveloper, generator, generation, JDE, maven">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="center"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table><table cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                        <a href="./history.html" class="navlink2">History</a> |
-                        <a href="./manual.html" class="navlink2">Manual</a> |
-                        <a href="./faq.html" class="navlink2">FAQ</a> |
-                        <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr></tbody></table></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-            This page generated: <strong>June 8 2004</strong></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" width="100%" cellspacing="0" cellpadding="5"><tbody><tr><td><div class="article" lang="en"><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="documentation"></a>Documentation</h2></div></div><div></div></div><p>
-Jalopy comes with a complete and (hopefully) useful manual. It is mostly driven by
-example as I find this the simplest approach to explain the myriad of switches.
-</p><p>
-Note that the documentation is a work-in-progress. It could definitely benefit 
-from your feedback. I'm no native speaker and providing good documentation is 
-the hardest part for me regarding this project. All remarks, corrections, additions... are
-highly welcome.
-</p><p>
-Either use the navigation bar at the top of this page or follow this link to
-access the user manual: <a href="./manual.html" target="_top">http://jalopy.sf.net/manual.html</a>
-</p></div></div></td></tr><tr><td height="20"></td></tr></tbody></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2002, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/download.html b/utils/jalopy/docs/download.html
deleted file mode 100755 (executable)
index 168dd00..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>Jalopy - Downloads</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><meta name="keywords" content="Java, convention, source, code, formatter, beautifier, pretty, printer, format, beautify, layout, coding, open, style, standard, transform, parser, Sun, ANTLR, Ant, Eclipse, JBuilder, NetBeans, jEdit, jakarta, JDeveloper, generator, generation, JDE, maven">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="center"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-            This page generated: <strong>June 8 2004</strong></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" width="100%" cellspacing="0" cellpadding="5"><tbody><tr><td><div class="article" lang="en"><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="downloads"></a>Downloads</h2></div></div><div></div></div><p>
-Download your copy of Jalopy today!
-</p><p>
-Jalopy comes in several flavors. End users most notably want to choose
-between one of the available Plug-in bundles. Each bundle provides the integration
-with exactly one application. Note that starting with 1.0b6 only the Console Plug-in
-provides command line capabilities!
-</p><p>
-Read the <a href="./history.html" target="_top">change history</a> for up-to-date
-information about the changes in the latest release.
-</p><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="plugins"></a>Plug-ins</h2></div></div><div></div></div><div class="informaltable"><table cellspacing="0" cellpadding="2" width="100%" border="0" style="border-collapse: collapse;"><colgroup><col><col><col><col></colgroup><thead><tr><th style="">Packages</th><th style="">Size</th><th style="">Date</th><th style="">Description</th></tr></thead><tbody><tr valign="top"><td style="" valign="top"><a href="http://prdownloads.sourceforge.net/jalopy/jalopy-ant-0.6.2.zip" target="_top">Ant &gt;= 1.4 (.zip)</a></td><td style="" align="center" valign="top">??? KB</td><td style="" align="center" valign="top">06/08/2004</td><td style="" valign="top"><a href="http://jakarta.apache.org/ant/" target="_top">Ant</a> task, contains Jalopy 1.0b11</td></tr><tr valign="top"><td style="" valign="top"><a href="http://prdownloads.sourceforge.net/jalopy/jalopy-console-1.0.4.zip" target="_top">Console (.zip)</a></td><td style="" align="center" valign="top">??? KB</td><td style="" align="center" valign="top">06/08/2004</td><td style="" valign="top">Command line interface, contains Jalopy 1.0b11</td></tr><tr valign="top"><td style="" valign="top"><a href="http://prdownloads.sourceforge.net/jalopy/jalopy-eclipse-0.2.7.zip" target="_top">Eclipse &gt;= 2.0 (.zip)</a></td><td style="" align="center" valign="top">??? KB</td><td style="" align="center" valign="top">06/08/2004</td><td style="" valign="top"><a href="http://www.eclipse.org/" target="_top">Eclipse</a> integration, contains Jalopy 1.0b11</td></tr><tr valign="top"><td style="" valign="top"><a href="http://prdownloads.sourceforge.net/jalopy/jalopy-jbuilder-0.7.7.zip" target="_top">JBuilder &gt;= 5.0 (.zip)</a></td><td style="" align="center" valign="top">??? KB</td><td style="" align="center" valign="top">06/08/2004</td><td style="" valign="top"><a href="http://www.borland.com/jbuilder/" target="_top">JBuilder</a> integration, contains Jalopy 1.0b11</td></tr><tr valign="top"><td style="" valign="top"><a href="http://prdownloads.sourceforge.net/jalopy/jalopy-jdeveloper-1.1.4.zip" target="_top">JDeveloper 9i (.zip)</a></td><td style="" align="center" valign="top">??? KB</td><td style="" align="center" valign="top">06/08/2004</td><td style="" valign="top"><a href="http://otn.oracle.com/products/jdev/" target="_top">JDeveloper</a> integration, contains Jalopy 1.0b11</td></tr><tr valign="top"><td style="" valign="top"><a href="http://prdownloads.sourceforge.net/jalopy/jalopy-jedit-0.3.7.zip" target="_top">jEdit &gt;= 4.1pre1 (.zip)</a></td><td style="" align="center" valign="top">??? KB</td><td style="" align="center" valign="top">06/08/2004</td><td style="" valign="top"><a href="http://www.jedit.org/" target="_top">jEdit</a> integration, contains Jalopy 1.0b11</td></tr><tr valign="top"><td style="" valign="top"><a href="http://prdownloads.sourceforge.net/jalopy/jalopy-netbeans-0.3.5.zip" target="_top">NetBeans &gt;= 3.3 (.zip), Sun ONE Studio 4
-</a></td><td style="" align="center" valign="top">??? KB</td><td style="" align="center" valign="top">06/08/2004</td><td style="" valign="top"><a href="http://www.netbeans.org/" target="_top">NetBeans</a>/<a href="http://wwws.sun.com/software/sundev/jde/index.html" target="_top">Sun ONE Studio</a> integration, contains Jalopy 1.0b11</td></tr></tbody></table></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="source"></a>Sources</h2></div></div><div></div></div><div class="informaltable"><table cellspacing="0" cellpadding="2" border="0" style="border-collapse: collapse;"><colgroup><col><col><col><col></colgroup><thead><tr><th style="">Packages</th><th style="">Size</th><th style="">Date</th><th style="">Description</th></tr></thead><tbody><tr valign="top"><td style="" valign="top"><a href="http://prdownloads.sourceforge.net/jalopy/jalopy-1.0b11.src.tar.gz" target="_top">Jalopy 1.0b11 (.src.tar.gz)</a></td><td style="" align="center" valign="top">??? KB</td><td style="" align="center" valign="top">06/08/2004</td><td style="" valign="top">Contains the complete Jalopy 1.0b11 sources (core runtime + all Plug-ins)</td></tr></tbody></table></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="core"></a>
-Jalopy 1.0
-</h2></div></div><div></div></div><div class="informaltable"><table cellspacing="0" cellpadding="2" width="100%" border="0" style="border-collapse: collapse;"><colgroup><col><col><col><col></colgroup><thead><tr><th style="">Packages</th><th style="">Size</th><th style="">Date</th><th style="">Description</th></tr></thead><tbody><tr valign="top"><td style="" valign="top"><a href="http://prdownloads.sourceforge.net/jalopy/jalopy-1.0b11.zip" target="_top">Jalopy 1.0b11 (.zip)</a></td><td style="" align="center" valign="top">??? KB</td><td style="" align="center" valign="top">06/08/2004</td><td style="" valign="top">Jalopy core runtime, for users who want to integrate Jalopy into their own applications</td></tr></tbody></table></div></div><p>
-Prior versions can be obtained through the SourceForge file release area:
-<a href="http://sourceforge.net/project/showfiles.php?group_id=45216" target="_top">http://sourceforge.net/project/showfiles.php?group_id=45216</a>
-</p></div></div></td></tr><tr><td height="20"></td></tr></tbody></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2002, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/environment.html b/utils/jalopy/docs/environment.html
deleted file mode 100755 (executable)
index d7377f8..0000000
+++ /dev/null
@@ -1,90 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>4.3.8.&nbsp;Environment</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="printer.html" title="4.3.&nbsp;Printer"><link rel="previous" href="imports.html" title="4.3.7.&nbsp;Imports"><link rel="next" href="javadoc.html" title="4.3.9.&nbsp;Javadoc"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index"><link rel="subsection" href="environment.html#environment-user" title="4.3.8.1.&nbsp;User environment variables"><link rel="subsection" href="environment.html#environment-system" title="4.3.8.2.&nbsp;System environment variables"><link rel="subsection" href="environment.html#environment-local" title="4.3.8.3.&nbsp;Local environment variables"><link rel="subsection" href="environment.html#environment-usage" title="4.3.8.4.&nbsp;Usage">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4.3.8.&nbsp;Environment</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="imports.html">Prev</a>&nbsp;</td><th width="60%" align="center">4.3.&nbsp;Printer</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="javadoc.html">Next</a></td></tr></table><hr></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="environment"></a>4.3.8.&nbsp;Environment</h3></div></div><div></div></div><a class="indexterm" name="d0e4252"></a><a class="indexterm" name="d0e4257"></a><a class="indexterm" name="d0e4262"></a><a class="indexterm" name="d0e4265"></a><a class="indexterm" name="d0e4268"></a><p>
-Lets you specify/view environment variables. Environment variables can be used
-in headers, footers and Javadoc templates to form variable expressions that will
-be resolved during printing. I call this process <span class="emphasis"><em>variable interpolation</em></span>.
-</p><p>
-Environment variables are simple key/value pairs. Valid keys take the form
-<tt class="literal">([a-zA-Z_][a-zA-Z0-9_.])+</tt> and are case-sensitive. Values can be
-freely choosen.
-</p><div class="example"><a name="environment-variable-ex"></a><p class="title"><b>Example&nbsp;4.142.&nbsp;Sample environment variables</b></p><div class="variablelist"><dl><dt></dt><dd>
-author = &lt;a href="http://jalopy.sf.net/contact.html"&gt;Marco Hunsicker&lt;/a&gt;
-</dd><dt></dt><dd>
-project = Jalopy Java Source Code Formatter
-</dd></dl></div></div><p></p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="environment-user"></a>4.3.8.1.&nbsp;User environment variables</h4></div></div><div></div></div><p>
-Lets you specify you're user specific environment variables. Use the
-<span><b class="guibutton">Add...</b></span> and <span><b class="guibutton">Remove</b></span> buttons to
-add or remove items to and from the list.
-</p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="environment-system"></a>4.3.8.2.&nbsp;System environment variables</h4></div></div><div></div></div><p>
-All system environment variables are automatically available as well but
-cannot be changed from within Jalopy.
-</p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="environment-local"></a>4.3.8.3.&nbsp;Local environment variables</h4></div></div><div></div></div><p>Additionaly, Jalopy provides some local variables that are automatically set
-depending on the execution context.</p><p>
-The current list of valid local variables reads as follows:
-</p><div class="table"><a name="tab-environment-local"></a><p class="title"><b>Table&nbsp;4.1.&nbsp;Local environment variables</b></p><table summary="Local environment variables" cellspacing="0" cellpadding="3" border="0" style="border-collapse: collapse;"><colgroup><col><col></colgroup><tbody><tr><td style="">file</td><td style="">The absolute path of the currently processed Java file (e.g. <tt class="filename">/usr/projects/test/MyFile.java</tt>)</td></tr><tr><td style="">fileName</td><td style="">The name of the currently processed Java file (e.g. <tt class="filename">MyFile.java</tt>)</td></tr><tr><td style="">fileFormat</td><td style="">A string represention of the file format that will be used to write a file (e.g. UNIX or DOS)</td></tr><tr><td style="">package</td><td style="">The package name of the currently processed Java file (e.g. com.foo.mypackage)</td></tr><tr><td style="">convention</td><td style="">The name of the currently active code convention (as specified in the settings)</td></tr><tr><td style="">tabSize</td><td style="">The current indentation setting (as specified in the settings)</td></tr><tr><td style="">objectType</td><td style="">Only applies to Javadoc templates: Holds the type name of the class for a constructor.</td></tr><tr><td style="">paramType</td><td style="">Only applies to Javadoc templates: Holds the type name of a parameter.</td></tr><tr><td style="">exceptionType</td><td style="">Only applies to Javadoc templates: Holds the type name of a throws clause.</td></tr></tbody></table></div></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="environment-usage"></a>4.3.8.4.&nbsp;Usage</h4></div></div><div></div></div><p>
-Once defined, variables can then be enclosed with the dollar sign to form variable expressions.
-Variable expressions thus take the form <tt class="literal">$([a-zA-Z_][a-zA-Z0-9_.]+)$</tt>.
-</p><p>
-During printing these expressions will be interpolated and
-the value of the variable inserted into the output file.
-</p><div class="example"><a name="ex-environment-header-before"></a><p class="title"><b>Example&nbsp;4.143.&nbsp;Header template with environment variable expressions</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-//==============================================================================
-// file :       $fileName$
-// project:     $project$
-//
-// last change: date:       $Date$
-//              by:         $Author$
-//              revision:   $Revision$
-//------------------------------------------------------------------------------
-// copyright:   BSJT Software License (see class documentation)
-//==============================================================================
-</pre></td></tr></table></div><p></p><div class="example"><a name="ex-environment-header-after"></a><p class="title"><b>Example&nbsp;4.144.&nbsp;Header after interpolation</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-//==============================================================================
-// file :       Byte.java
-// project:     bsjt-rt
-//
-// last change: date:       $Date$
-//              by:         $Author$
-//              revision:   $Revision$
-//------------------------------------------------------------------------------
-// copyright:   BSJT Software License (see class documentation)
-//==============================================================================
-</pre></td></tr></table></div><p>
-As you see with the above example, if a variable is not defined, Jalopy won't
-touch the expression and simply preserve the original content. This way Jalopy
-works nicely with other source code tools and SCM products.
-</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="imports.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="printer.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="javadoc.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4.3.7.&nbsp;Imports&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;4.3.9.&nbsp;Javadoc</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/faq.html b/utils/jalopy/docs/faq.html
deleted file mode 100755 (executable)
index c0bb742..0000000
+++ /dev/null
@@ -1,106 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>Jalopy - FAQ</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><meta name="keywords" content="Java, convention, source, code, formatter, beautifier, pretty, printer, format, beautify, layout, coding, open, style, standard, transform, parser, Sun, ANTLR, Ant, Eclipse, JBuilder, NetBeans, jEdit, jakarta, JDeveloper, generator, generation, JDE, maven">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="center"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table><table cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                        <a href="./history.html" class="navlink2">History</a> |
-                        <a href="./manual.html" class="navlink2">Manual</a> |
-                        <a href="./faq.html" class="navlink2">FAQ</a> |
-                        <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr></tbody></table></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-            This page generated: <strong>June 8 2004</strong></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" width="100%" cellspacing="0" cellpadding="5"><tbody><tr><td><div class="article" lang="en"><div class="simplesect" lang="en"><div class="titlepage"><div></div><div></div></div><div class="qandaset"><table border="0" summary="Q and A Set"><col align="left" width="1%"><tbody><tr class="question"><td align="left" valign="top"><a name="d21e76"></a><a name="report-bugs"></a><b>Q:</b></td><td align="left" valign="top"><p>
-How do I report a bug I have found in Jalopy?
-</p></td></tr><tr class="answer"><td align="left" valign="top"><b>A:</b></td><td align="left" valign="top"><p>
-To be as helpful as possible to the Jalopy developer team and other users, you should use
-the <a href="http://sf.net/tracker/?group_id=45216&amp;atid=442212" target="_top">
-bug tracker database</a> that the Jalopy project maintains on the
-<a href="http://sf.net/" target="_top">SourceForge web site</a>. You do need to be a SourceForge
-member to post a bug report.
-</p><p>
-Before posting a bug report, spend a few moments searching the bug database to see if a
-similar report has already been made. The bug tracker has a search facility that will let
-you search for bug reports using a variety of criteria. If you find a similar bug report,
-and you have additional information to contribute, post a comment to the report. Only if
-you do not find a similar bug report, submit a new one.
-</p></td></tr><tr class="question"><td align="left" valign="top"><a name="d21e91"></a><a name="bug-report"></a><b>Q:</b></td><td align="left" valign="top"><p>
-What information should I include in a bug report?
-</p></td></tr><tr class="answer"><td align="left" valign="top"><b>A:</b></td><td align="left" valign="top"><p>
-The web form in the bug tracker report provides several fields for
-submitting information. If you are unsure about a particular
-item, leave it at the default setting provided in the form.
-</p><p>
-The more important fields are &#8220;<span class="quote">Category</span>&#8221;,
-&#8220;<span class="quote">Summary</span>&#8221; and the &#8220;<span class="quote">Initial comment</span>&#8221;.
-</p><p>
-When you write your initial comment describing the bug, you
-should specify the versions of Jalopy, the Plug-in environment, the Java platform and
-operating system you are using.
-</p><p>
-Be as specific as possible. If you encounter stack traces, attach them. If you have
-problems formatting a specific file, locate the cause of the error and attach
-the code section as a text file. Also attach your code convention as many errors only
-occur with a certain settings combination.
-</p><p>
-A more typical example should look like:
-</p><div class="informalexample"><a name="ex-bug-report"></a><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-I newly installed jalopy-1.0b9 on Windows NT with German locales, Sun JDK 1.3.1_05.
-I upgraded property file from jalopy-1.0b7 via Import/Export.
-
-When starting the jalopy settings dialog, I always have problems
-when I am on the "Sorting" panel. No entries are shown. Maybe
-this is a similar problem.
-
-I tried with different files. Always the same result.
-
-Using the Ant task (0.3.3 with Ant 1.4.1), I get a stack trace as attached. I attached
-my code convention also.
-</pre></td></tr></table></div><p>
-The attached stack trace could read as follows:
-</p><div class="informalexample"><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-[jalopy] Jalopy Java Source Code Formatter 1.0b9
-[jalopy] Format 1 source file
-[jalopy] X:\beans\booking\BookingService.java:0:0:
-Parse
-[jalopy] X:\beans\booking\BookingService.java:0:0:parsing took 170
-[jalopy] X:\beans\booking\BookingService.java:0:0:transform
-[jalopy] X:\beans\booking\BookingService.java:0:0:
-java.lang.NullPointerException
-[jalopy] java.lang.NullPointerException
-at de.hunsicker.jalopy.lang.Transformation.addSiblings(Transformation.java:167)
-at de.hunsicker.jalopy.lang.Transformation.sortDeclarations(Transformation.java:534)
-at de.hunsicker.jalopy.lang.Transformation.sort(Transformation.java:104)
-at de.hunsicker.jalopy.lang.Transformation.apply(Transformation.java:64)
-at de.hunsicker.jalopy.lang.JavaRecognizer.transform(JavaRecognizer.java:451)
-at de.hunsicker.jalopy.lang.JavaRecognizer.getParseTree(Java Recognizer.java:173)
-</pre></td></tr></table></div><p>
-The given information made it quite obvious that the auto-conversion of the code
-convention format from 1.0b7 to 1.0b9 failed for some reason.
-</p><p>
-Looking further at the supplied code convention revealed that the value of the sorting
-key was invalid and the actual cause was easy to spot.
-</p></td></tr></tbody></table></div></div></div></td></tr><tr><td height="20"></td></tr></tbody></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2002, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/features.html b/utils/jalopy/docs/features.html
deleted file mode 100755 (executable)
index b8d3aa5..0000000
+++ /dev/null
@@ -1,106 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>Jalopy - Feature list</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><meta name="keywords" content="Java, convention, source, code, formatter, beautifier, pretty, printer, format, beautify, layout, coding, open, style, standard, transform, parser, Sun, ANTLR, Ant, Eclipse, JBuilder, NetBeans, jEdit, jakarta, JDeveloper, generator, generation, JDE, maven">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="center"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table><table cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                        <a href="./history.html" class="navlink2">History</a> |
-                        <a href="./manual.html" class="navlink2">Manual</a> |
-                        <a href="./faq.html" class="navlink2">FAQ</a> |
-                        <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr></tbody></table></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-            This page generated: <strong>June 8 2004</strong></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" width="100%" cellspacing="0" cellpadding="5"><tbody><tr><td><div class="article" lang="en"><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="featurelist"></a>Feature list</h2></div></div><div></div></div><div class="itemizedlist"><ul type="square"><li style="list-style-type: square">
-distributed settings support - share one code convention across multiple machines/platforms
-</li><li style="list-style-type: square">
-easy switching between several code conventions
-</li><li style="list-style-type: square">
-several pre-configured brace styles (C, Sun, GNU), but fully user-configurable
-</li><li style="list-style-type: square">
-auto-insertion/removal of obsolete braces
-</li><li style="list-style-type: square">
-special empty braces handling
-</li><li style="list-style-type: square">
-wide range of whitespace options for method declarations/calls, brackets, parentheses, operators, delimeters...
-</li><li style="list-style-type: square">
-prepending of leading whitespace before every line
-</li><li style="list-style-type: square">
-powerful indentation/alignment capabilities
-</li><li style="list-style-type: square">
-configurable line wrapping
-</li><li style="list-style-type: square">
-controlable amount of blank lines between certain sections, blocks, statements...
-</li><li style="list-style-type: square">
-comment removal for all sorts of comments
-</li><li style="list-style-type: square">
-special comments to prohibit formatting for certain pieces of code
-(uses the Jindent syntax to retain backward compatibility)
-</li><li style="list-style-type: square">
-auto-insertion of missing Javadoc comments (selectively configurable for the
-different access levels) with variable interpolation
-</li><li style="list-style-type: square">
-auto-removal/insertion/correction of obsolete/missing/wrong Javadoc standard tags
-</li><li style="list-style-type: square">
-auto-insertion of parentheses around expressions to make operator precedence obvious
-</li><li style="list-style-type: square">
-auto-insertion of a serial version UID for serializable classes
-</li><li style="list-style-type: square">
-sorting of class/interface/variable/constructor/method declarations
-</li><li style="list-style-type: square">
-sorting of access modifiers
-</li><li style="list-style-type: square">
-insertion of separation comments between class/interface/variable/constructor/method declarations
-</li><li style="list-style-type: square">
-insertion of custom header/footer templates at the begin/end of every file (with variable interpolation)
-</li><li style="list-style-type: square">
-sorting/grouping of import declarations
-</li><li style="list-style-type: square">
-import optimization: expansion of on-demand import declarations to several
-single-type declarations (and vice versa). As of today only implemented for
-the Ant and JBuilder Plug-in
-</li><li style="list-style-type: square">
-configurable message output
-</li><li style="list-style-type: square">
-numbered backups (1-30)
-</li><li style="list-style-type: square">
-multi-processor support
-</li><li style="list-style-type: square">
-client <a href="./api/index.html" target="_top">API</a> to make integration with other tools easy
-</li><li style="list-style-type: square">
-graphical application to customize the settings (with live-preview)
-</li><li style="list-style-type: square">
-powerful command line interface with regular expression filtering (<a href="./plugins.html" target="_top">Console Plug-in</a>)
-</li><li style="list-style-type: square">
-several <a href="./plugins.html" target="_top">Plug-ins</a> to integrate with common Java applications (current set includes
-<a href="./plugin-ant.html" target="_top">Ant</a>,
-<a href="./plugin-eclipse.html" target="_top">Eclipse</a>,
-<a href="./plugin-jbuilder.html" target="_top">JBuilder</a>,
-<a href="./plugin-jdev.html" target="_top">JDeveloper</a>,
-<a href="./plugin-jedit.html" target="_top">jEdit</a> and
-<a href="./plugin-netbeans.html" target="_top">NetBeans</a>/Sun ONE Studio)
-</li><li style="list-style-type: square">
-"<span class="bold"><b><a href="http://opensource.org/docs/certification_mark.php" target="_top">OSI Certified Open Source Software</a></b></span>"
- software, released under a <a href="./license-bsd.html" target="_top">BSD License</a></li></ul></div></div></div></td></tr><tr><td height="20"></td></tr></tbody></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2002, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/footer.html b/utils/jalopy/docs/footer.html
deleted file mode 100755 (executable)
index f2de4ce..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>4.3.11.&nbsp;Footer</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="printer.html" title="4.3.&nbsp;Printer"><link rel="previous" href="header.html" title="4.3.10.&nbsp;Header"><link rel="next" href="sorting.html" title="4.3.12.&nbsp;Sorting"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4.3.11.&nbsp;Footer</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="header.html">Prev</a>&nbsp;</td><th width="60%" align="center">4.3.&nbsp;Printer</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="sorting.html">Next</a></td></tr></table><hr></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="footer"></a>4.3.11.&nbsp;Footer</h3></div></div><div></div></div><a class="indexterm" name="d0e4834"></a><p>
-Controls the printing of footers. Refer to <a href="header.html" title="4.3.10.&nbsp;Header">Section&nbsp;4.3.10, &#8220;Header&#8221;</a> for an
-explanation of the different options.
-</p><p>
-Note that Jalopy always prints one trailing empty line after the footer.
-</p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="header.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="printer.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="sorting.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4.3.10.&nbsp;Header&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;4.3.12.&nbsp;Sorting</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/header.html b/utils/jalopy/docs/header.html
deleted file mode 100755 (executable)
index 6e39c0c..0000000
+++ /dev/null
@@ -1,115 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>4.3.10.&nbsp;Header</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="printer.html" title="4.3.&nbsp;Printer"><link rel="previous" href="javadoc.html" title="4.3.9.&nbsp;Javadoc"><link rel="next" href="footer.html" title="4.3.11.&nbsp;Footer"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index"><link rel="subsection" href="header.html#header-options" title="4.3.10.1.&nbsp;&#xA;Options&#xA;"><link rel="subsection" href="header.html#d0e4821" title="4.3.10.2.&nbsp;&#xA;Text&#xA;">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4.3.10.&nbsp;Header</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="javadoc.html">Prev</a>&nbsp;</td><th width="60%" align="center">4.3.&nbsp;Printer</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="footer.html">Next</a></td></tr></table><hr></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="header"></a>4.3.10.&nbsp;Header</h3></div></div><div></div></div><p>
-Controls the printing of headers. It is always a good idea (and often a
-recommendation) to include a copyright notice at the top of every source file
-for a given project.
-</p><a class="indexterm" name="d0e4734"></a><a class="indexterm" name="d0e4737"></a><div class="example"><a name="ex-header-template"></a><p class="title"><b>Example&nbsp;4.148.&nbsp;Typical header template</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="screen">
-/*
- *                 Sun Public License Notice
- *
- * The contents of this file are subject to the Sun Public License
- * Version 1.0 (the "License"). You may not use this file except in
- * compliance with the License. A copy of the License is available at
- * http://www.sun.com/
- *
- * The Original Code is NetBeans. The Initial Developer of the Original
- * Code is Sun Microsystems, Inc. Portions Copyright 1997-2000 Sun
- * Microsystems, Inc. All Rights Reserved.
- */
-</pre></td></tr></table></div><div class="caution" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Headers and Javadoc comments</h3><p>
-Be aware that Jalopy currently does not treat the header comments any special.
-If you're going to use a Javadoc comment (see <a href="javadoc.html" title="4.3.9.&nbsp;Javadoc">Section&nbsp;4.3.9, &#8220;Javadoc&#8221;</a>) for
-your header and have the Javadoc parsing enabled, you will see your header
-reformatted. Therefore, you should only use multi-line comments
-(like in the example above).
-</p></div><p></p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="header-options"></a>4.3.10.1.&nbsp;
-Options
-</h4></div></div><div></div></div><p>
-Lets you control the different header options.
-</p><div class="sect4" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="header-general"></a>4.3.10.1.1.&nbsp;General</h5></div></div><div></div></div><div class="itemizedlist"><ul type="disc"><li><p>
-Use Header
-</p><p>
-Enables or disables the insertion of a header template at the top of every
-processed source file.
-</p></li><li><p><a name="header-smart-mode"></a>
-Smart Mode
-</p><a class="indexterm" name="d0e4772"></a><p>
-Lets you specify the number of single-line comments before the first node
-(either a package/import statement or a class/interface declaration) that
-should be recognized as part of a header and therefore removed. A size
-equal to zero, means <span class="emphasis"><em>Smart Mode</em></span> will be disabled.
-</p></li></ul></div></div><div class="sect4" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="header-delete"></a>4.3.10.1.2.&nbsp;Delete Headers</h5></div></div><div></div></div><p>
-To avoid header duplication, you have to specify at least one identify key
-that can be used to uniquely recognize your header template. That way an
-existing header can be removed before a new one is inserted.
-</p><p>
-A good key for the template mentioned above would be
-<i class="firstterm">Sun Public License Notice</i>.
-Most typically this will be your company's name.
-</p><p>
-You can specify several keys to make it easy to switch between headers. Specify
-both a key for the old header that is to be removed and for your new header that
-should be inserted. This way, you are sure that even new additions that happens
-to contain the old header (maybe checked out from some SCM) are
-treated correctly.
-</p><div class="itemizedlist"><ul type="disc"><li><p>
-Add...
-</p><p>
-Adds a new identify key to the list of keys.
-</p></li><li><p>
-Remove
-</p><p>
-Removes the currently selected key from the list.
-</p></li></ul></div></div><div class="sect4" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="header-blank-lines"></a>4.3.10.1.3.&nbsp;Blank lines</h5></div></div><div></div></div><p>
-To separate the header from the rest of the source code, you may want to
-specify the blank lines before and after the header.
-</p><div class="itemizedlist"><ul type="disc"><li><p>
-Before
-</p><p>
-Number of blank lines to insert before the header template.
-</p></li><li><p>
-After
-</p><p>
-Number of blank lines to insert after the header template.
-</p></li></ul></div></div></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="d0e4821"></a>4.3.10.2.&nbsp;
-Text
-</h4></div></div><div></div></div><p>
-Insert your header template here.
-</p><p>
-You can use variable expressions throughout the header text. Read
-<a href="environment.html" title="4.3.8.&nbsp;Environment">Section&nbsp;4.3.8, &#8220;Environment&#8221;</a> for more information about this feature.
-</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="javadoc.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="printer.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="footer.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4.3.9.&nbsp;Javadoc&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;4.3.11.&nbsp;Footer</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/history.html b/utils/jalopy/docs/history.html
deleted file mode 100755 (executable)
index 8537730..0000000
+++ /dev/null
@@ -1,1019 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>Jalopy - Change history</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><meta name="keywords" content="Java, convention, source, code, formatter, beautifier, pretty, printer, format, beautify, layout, coding, open, style, standard, transform, parser, Sun, ANTLR, Ant, Eclipse, JBuilder, NetBeans, jEdit, jakarta, JDeveloper, generator, generation, JDE, maven">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="center"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table><table cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                        <a href="./history.html" class="navlink2">History</a> |
-                        <a href="./manual.html" class="navlink2">Manual</a> |
-                        <a href="./faq.html" class="navlink2">FAQ</a> |
-                        <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr></tbody></table></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-            This page generated: <strong>June 8 2004</strong></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" width="100%" cellspacing="0" cellpadding="5"><tbody><tr><td><div class="article" lang="en"><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d35e75"></a>1.0 Beta 10 (2002-11-14)</h2></div></div><div></div></div><div class="orderedlist"><ol type="i"><li>
-New Features
-
-<div class="itemizedlist"><ul type="square"><li style="list-style-type: square">
-Work started to provide a FAQ. There is currently only one topic: How one should submit a
-bug report
-</li></ul></div><p></p></li><li>
-Bug fixes
-
-<div class="itemizedlist"><ul type="square"><li style="list-style-type: square">
-Newlines after case statements were not printed (as always: only with Sun brace style)
-Reported by Sebastian Eigner
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=638369&amp;group_id=45216" target="_top">#638369</a>)
-</li><li style="list-style-type: square">
-In certain cases the indentation after printing assignments was not correct. Reported by
-Grzegorz Pilarczyk
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=638279&amp;group_id=45216" target="_top">#638279</a>)
-</li><li style="list-style-type: square">
-Array types were not correctly printed when they contained more complicated expressions.
-Reported by Benni Mas
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=638355&amp;group_id=45216" target="_top">#638355</a>)
-</li><li style="list-style-type: square">
-The settings format was not correctly updated from 1.0b7 to 1.0b8. Reported by
-Marc Gerstmair
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=637864&amp;group_id=45216" target="_top">#637864</a>)
-</li><li style="list-style-type: square">
-Code conventions were exported with platform specific encodings which could easily cause
-harm. Additionally no XML declaration was printed. Now <tt class="literal">UTF-8</tt> is used
-and the declaration printed. Reported by Tim Moore
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=637262&amp;group_id=45216" target="_top">#637262</a>)
-</li><li style="list-style-type: square">
-The wrapper scripts only worked when the full pathname to the script-files were used.
-Reported and fixed by Kees Kuip
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=637915&amp;group_id=45216" target="_top">#637915</a>).
-Thanks
-</li><li style="list-style-type: square">
-Blank lines before blocks without associated block statements
-(I call them <span class="emphasis"><em>freestanding blocks</em></span>) were not printed
-</li><li style="list-style-type: square">
-Additional semicolon(s) after the last import statement caused the blank lines logic to
-fail, no blank lines were printed for such a (rare) case
-</li></ul></div><p></p></li><li>
-Changes
-
-<div class="itemizedlist"><ul type="square"><li style="list-style-type: square">
-JBuilder Plug-in: the Plug-in now displays an error message if no compatible log4j version
-could be found in the classpath and shows a workaround for the problem
-</li></ul></div><p></p></li></ol></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d35e135"></a>1.0 Beta 9 (2002-11-12)</h2></div></div><div></div></div><div class="orderedlist"><ol type="i"><li>
-New Features
-
-<div class="itemizedlist"><ul type="square"><li style="list-style-type: square">
-New indentation policy. See
-<a href="./indentation.html#indentation-policy-standard" target="_top">Standard indent</a></li><li style="list-style-type: square">
-New alignment options for the <tt class="literal">operators</tt> and ternary expression. See
-<a href="./indentation.html#indentation-align-method-chains" target="_top">Align Method Call chains</a> and
-<a href="./indentation.html#indentation-align-ternary" target="_top">Align Ternary expressions</a></li><li style="list-style-type: square">
-The wrapping options has been extended. See
-<a href="./wrapping.html#wrap-left-parenthesis" target="_top">Wrap after left parenthesis</a>,
-<a href="./wrapping.html#wrap-right-parenthesis" target="_top">Wrap before right parenthesis</a>,
-<a href="./wrapping.html#wrap-after-assignment" target="_top">Wrap after assignments </a>,
-<a href="./wrapping.html#wrap-grouping-paren" target="_top">Wrap grouping parentheses</a>,
-<a href="./wrapping.html#wrap-always-extends" target="_top">Wrap after extends types when exceed</a>,
-<a href="./wrapping.html#wrap-always-implements" target="_top">Wrap after implements types when exceed</a>,
-<a href="./wrapping.html#wrap-always-throws" target="_top">Wrap after throws types when exceed</a> and
-<a href="./wrapping.html#wrap-always-param" target="_top">After parameters/expressions when exceed</a></li><li style="list-style-type: square">
-New curly brace wrapping option. See
-<a href="./printer.html#braces-different-wrapped" target="_top">Treat class/method block different if wrapped</a></li><li style="list-style-type: square">
-The output style for field Javadoc comments is now configurable. See
-<a href="./javadoc.html#javadoc-misc" target="_top">Field comments in single line</a></li></ul></div><p>
-All aforementioned features were requested, sponsored and thoroughly tested by the German
-<a href="http://www.tk-online.de/" target="_top">Techniker Krankenkasse</a>. Hurray!
-</p><div class="itemizedlist"><ul type="square"><li style="list-style-type: square">
-The sources have been internationalized. If you're willing to provide translations of the
-used message bundles, please <a href="./contact.html" target="_top">contact</a> me
-</li><li style="list-style-type: square">
-Jalopy now contains a simple Code Inspector that is able to inspect your sources for
-naming convention violations and possible code weaknesses. See the
-<a href="./inspector.html" target="_top">Code Inspector</a> chapter in the manual
-</li><li style="list-style-type: square">
-New history methods that uses checksums to better handle change detection for files.
-See <a href="./misc.html#misc-history" target="_top">History section</a>. Very cool feature
-contributed by Michael Callum
-</li><li style="list-style-type: square">
-Javadoc tag checking for <tt class="literal">@throws</tt> tags can now be enabled
-separately. See <a href="./javadoc.html#javadoc-correct-throws" target="_top">Correct @throws tags</a></li><li style="list-style-type: square">
-Array type brackets may now be printed after the identifier.
-See <a href="./misc.html#misc-array-brackets" target="_top">Misc section</a>.
-Requested by John Zukowski
-(<a href="http://sf.net/tracker/?func=detail&amp;aid=599239&amp;group_id=45216&amp;atid=442215" target="_top">#599239</a>)
-</li><li style="list-style-type: square">
-You can now specify whether Jalopy should insert a trailing empty line at the
-end of files in order to avoid problems with certain text formatters and processors.
-See <a href="./misc.html#misc-trailing-newline" target="_top">Misc section</a>. Note that
-Jalopy always inserts a trailing newline after EOF-comments (like footers).
-Requested by David Karr
-(<a href="http://sf.net/tracker/?func=detail&amp;aid=589696&amp;group_id=45216&amp;atid=442215" target="_top">#589696</a>)
-</li><li style="list-style-type: square">
-The order of import statement groups is now user configurable. See <a href="./imports.html" target="_top">Import section</a>.
-Requested by J&uuml;rgen Ebert
-(<a href="http://sf.net/tracker/?func=detail&amp;aid=591904&amp;group_id=45216&amp;atid=442215" target="_top">#591904</a>)
-</li><li style="list-style-type: square">
-The <i class="guilabel">Format</i> menu item now appears in the context menu of the Content
-Pane too
-</li><li style="list-style-type: square">
-Auto-correction for Javadoc <tt class="literal">@throws</tt> tags can now be
-controlled separately. See <a href="./javadoc.html#javadoc-correct-throws" target="_top">Correct <tt class="literal">@throws</tt> tags</a> for insight
-</li><li style="list-style-type: square">
-NetBeans Plug-in: the Format action is now available for Servlet nodes too
-</li><li style="list-style-type: square">
-JBuilder Plug-in: the Format item it now available in the context menu of content tab pane too
-</li><li style="list-style-type: square">
-JBuilder Plug-in: Breakpoints and Bookmarks are restored after formatting
-</li><li style="list-style-type: square">
-JDeveloper Plug-in: the Plug-in has been completely rewritten. Formatting works for
-workspaces too, the message output is displayed in a nice tree view. And the whole thing
-is now compatible with JDeveloper 9.0.3
-</li><li style="list-style-type: square">
-The core engine is now able to track positions. The IDE Plug-ins are therefore now able
-to restore the mouse pointer correctly (it will be positioned before the line with the
-node that was nearest to the last caret position)
-</li></ul></div><p></p></li><li>
-Bug fixes
-
-<div class="itemizedlist"><ul type="square"><li style="list-style-type: square">
-The cleanup of the backup directory could lead to NPE. Reported by Mike Dubman
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=617942&amp;group_id=45216" target="_top">#617942</a>)
-</li><li style="list-style-type: square">
-The output of array initializers has been improved. Reported by Kate Rhodes
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=617684&amp;group_id=45216" target="_top">#617684</a>)
-</li><li style="list-style-type: square">
-Important statements collapsing failed because of incompatible parsetree changes between 1.0b7 and 1.0b8. Reported by Mark Ralph
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=617608&amp;group_id=45216" target="_top">#617608</a>)
-</li><li style="list-style-type: square">
-Handling of Javadoc comments failed for methods/ctors returning an array type. Reported by Magnus Ihse
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=615039&amp;group_id=45216" target="_top">#615039</a>)
-</li><li style="list-style-type: square">
-The problem with wrong indentation after assignments has gone. Reported by Timo Carl
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=612049&amp;group_id=45216" target="_top">#612049</a>)
-</li><li style="list-style-type: square"><span class="emphasis"><em>Treat different</em></span> option has been corrected to work with all styles. Reported by Eric Lamontagne
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=611182&amp;group_id=45216" target="_top">#611182</a>)
-</li><li style="list-style-type: square">
-I've fixed some cases where Jalopy produced trailing whitespace on wrapping lines. There may still be others...
-Reported by Ralf Wiebicke
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=607697&amp;group_id=45216" target="_top">#607697</a>)
-</li><li style="list-style-type: square">
-The Javadoc printer failed to output HTML definition lists correctly. Reportey by
-David Cooper
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=607416&amp;group_id=45216" target="_top">#607416</a>)
-</li><li style="list-style-type: square">
-The Javadoc printer failed to output HTML defintion lists correcty. Reportey by
-David Cooper
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=607416&amp;group_id=45216" target="_top">#607416</a>)
-</li><li style="list-style-type: square">
-Array initializers inside statements were not printed correctly. Reported by
-Dirk Hoffmann
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=607303&amp;group_id=45216" target="_top">#607303</a>)
-</li><li style="list-style-type: square">
-Variable macros did (as documented) not work for names like <tt class="literal">user.name</tt>. Reported by
-Don Johnson
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=606173&amp;group_id=45216" target="_top">#606173</a>)
-</li><li style="list-style-type: square">
-Empty lines in multi-line comments produced trailing whitespace.
-Reported by Ralf Wiebicke
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=605998&amp;group_id=45216" target="_top">#605998</a>)
-</li><li style="list-style-type: square">
-Javadoc trailing comments were ignored. Jalopy will now (again) treat such cases as errors.
-Reported by Ralf Wiebicke
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=604072&amp;group_id=45216" target="_top">#604072</a>)
-</li><li style="list-style-type: square">
-Jalopy duplicated comments in some rare cases. Reported by David Cooper
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=604065&amp;group_id=45216" target="_top">#604065</a>)
-</li><li style="list-style-type: square">
-The console app failed to work on certain platforms due to classloading problems.
-Reported by Benjamin Geer
-<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=604038&amp;group_id=45216" target="_top">#604038</a></li><li style="list-style-type: square">
-No blank lines were kept for <tt class="literal">synchronized</tt> blocks. Reported by Kees Kuip
-<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=603455&amp;group_id=45216" target="_top">#603455</a></li><li style="list-style-type: square">
-Variable interpolation did not work in header or footers. Reported by Daniel Frey
-<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=601901&amp;group_id=45216" target="_top">#601901</a></li><li style="list-style-type: square">
-Jalopy lost trailing comments in certain cases. Reported by Shankar Unni, Steve Corwin, Ray Powell
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=601393&amp;group_id=45216" target="_top">#601393</a>,
-<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=602169&amp;group_id=45216" target="_top">#602169</a>,
-<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=603914&amp;group_id=45216" target="_top">#603914</a>)
-</li><li style="list-style-type: square">
-Jalopy failed to handle empty Javadoc Standard tags. Reported by Henrik Kj&aelig;r and Don Johnson
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=601204&amp;group_id=45216" target="_top">#601204</a>,
-<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=606163&amp;group_id=45216" target="_top">#606163</a>)
-</li><li style="list-style-type: square">
-JBuilder Plug-in: the Plug-in is now compatible with JBuilder 7.0. Reported by Simeon Zverinski
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=596821&amp;group_id=45216" target="_top">#596821</a>)
-</li><li style="list-style-type: square">
-The example Ant task in the manual contained a syntax error.
-Reported by Eric Larson
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=595777&amp;group_id=45216" target="_top">#595777</a>)
-</li><li style="list-style-type: square">
-With generating Javadoc comments enabled, existing
-variable/method/class-level comments were dropped if not in Javadoc style.
-Reported by John Zukowski
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=595164&amp;group_id=45216" target="_top">#595164</a>)
-</li><li style="list-style-type: square">
-Auto-insertion of braces for braceless if-else blocks did not work as expected
-(for Sun brace style). Reported by John Zukowski
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=595160&amp;group_id=45216" target="_top">#595160</a>)
-</li><li style="list-style-type: square">
-@throws tags were wrongly inserted in some cases. Reported by Jarek Sacha
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=594738&amp;group_id=45216" target="_top">#594738</a>)
-</li><li style="list-style-type: square">
-Printing of empty class/interface bodies failed, if cuddling of braces was
-enabled. Reported by Richard Tasker and Benjamin Geer
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=594076&amp;group_id=45216" target="_top">#594076</a>,
-<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=597080&amp;group_id=45216" target="_top">#597080</a>)
-</li><li style="list-style-type: square">
-@version tags were wrapped if max. line length exceeded, and therefore failed to
-be updated by CVS when checked in. Reported by Johnny Cass
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=592504&amp;group_id=45216" target="_top">#592504</a>)
-</li><li style="list-style-type: square">
-Jalopy used to insert two many blank lines before certain statements. Reported by Kees Kuip
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=592496&amp;group_id=45216" target="_top">#592496</a>)
-</li><li style="list-style-type: square"><tt class="filename">jalopy.sh</tt> and <tt class="filename">preferences.sh</tt> failed
-to work (under some unix flavors) because of wrong end-of-line characters.
-Actually a build/CVS problem. Reported and fixed by Kees Kuip
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=592487&amp;group_id=45216" target="_top">#592487</a>)
-</li><li style="list-style-type: square">
-Eclipse Plug-in: upon startup of the IDE <tt class="classname">org.eclipse.swt.SWTException: invalid thread access</tt>
-was thrown. Reportedy by Dirk Jacobs
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=567314&amp;group_id=45216" target="_top">#567314</a>)
-</li><li style="list-style-type: square">
-Backup files were always kept if the output target was not a file
-</li><li style="list-style-type: square">
-jEdit Plug-in: the <i class="guilabel">Format current Buffer</i> menu item was grayed out
-upon start-up if the buffer contained a non-Java file
-</li><li style="list-style-type: square">
-Console Plug-in: specifying several regular expression patterns did not work.
-Reported by Sameer Singh
-</li></ul></div><p></p></li><li>
-Changes
-
-<div class="itemizedlist"><ul type="square"><li style="list-style-type: square">
-The <tt class="filename">.XML</tt> settings format has been revised. It should now be somewhat cleaner. These
-changes are transparent, the old settings format can be imported but only the new format
-will be exportet. Those who use the <tt class="filename">.XML</tt> format should re-export their settings to avoid
-the auto-transformation (and of course, there are many new switches)
-</li><li style="list-style-type: square">
-The <tt class="filename">/bin</tt> directory of the distributions have been renamed to
-<tt class="filename">/lib</tt>. For the Console and Ant Plug-ins the <tt class="filename">/bin</tt>
-now only contains the wrapper scripts and the libaries moved to <tt class="filename">/lib</tt>.
-</li><li style="list-style-type: square">
-Eclipse Plug-in: the <i class="guilabel">Format</i> label in the project view context menu
-no longer appears at the end. Suggested by Davor Cengija and Vincent Massol
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=578331&amp;group_id=45216" target="_top">#578331</a>)
-</li><li style="list-style-type: square">
-JBuilder Plug-in: the <i class="guilabel">Format</i> item in the project view context menu
-is now more context sensitive. It won't pop up for non-Java files. Additionally, when
-formatting the whole Project a confirmation message box appears
-</li><li style="list-style-type: square">
-The <tt class="literal">@todo</tt> tag is now part of the build-in tag list
-</li><li style="list-style-type: square">
-The Tab support has been rewritten. If tabs are enabled, *all* whitespace will
-be realized with tabs (not only leading whitespace as with the former
-implementation)
-</li><li style="list-style-type: square">
-Denis N. Antonioli contributed several patches for the Javadoc parser:
-<div class="itemizedlist"><ul type="circle"><li style="list-style-type: circle">
-The parser is now able to handle left curly braces that are not part of
-an In-line tag
-</li><li style="list-style-type: circle">
-Attributes must not be quoted and numeric attributes may also start with <tt class="literal">%</tt></li><li style="list-style-type: circle">
-The closing tags for &lt;dd&gt;, &lt;dl&gt;, &lt;dir&gt; are now optional
-</li></ul></div>
-Thank you!
-</li><li style="list-style-type: square">
-Parameter alignment of method or constructor declarations now works regardless
-of the indentation settings (it did not work with custom indentation in
-earlier versions)
-</li><li style="list-style-type: square">
-The preview frame no longer uses the (unmaintained) jEdit Public Domain text area but
-rather a standard <tt class="classname">JEditorPane</tt> with a highlighter dereived from
-the <a href="http://www.bluej.org/" target="_top">BlueJ</a> project (and that highlighter is
-again build upon the jEdit Public Domain syntax package). Users of prior betas may
-savely remove the file <tt class="filename">textarea-2.2.3.jar</tt> from their disks
-</li></ul></div><p></p></li></ol></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d35e523"></a>1.0 Beta 8 (2002-08-06)</h2></div></div><div></div></div><div class="orderedlist"><ol type="i"><li>
-New Features
-
-<div class="itemizedlist"><ul type="square"><li style="list-style-type: square">
-Thanks to Frank Klomp from
-<a href="http://www.informatikatelier.com" target="_top">www.informatikatelier.com</a>
-a Plug-in for Oracle JDeveloper 9i is now available.
-See <a href="./plugins.html" target="_top">Plug-in section</a></li><li style="list-style-type: square">
-Jalopy now comes with a simple project manager to make switching between
-several code conventions easier.
-See <a href="./project.html" target="_top">Project section</a></li><li style="list-style-type: square">
-ConsolePlugin: new option <tt class="literal">--force</tt></li><li style="list-style-type: square">
-The line wrapping for chained method calls now works for nested calls too
-</li><li style="list-style-type: square">
-The settings dialog now comes with a live preview. Requested by Erik Dick
-(<a href="http://sf.net/tracker/?func=detail&amp;aid=563215&amp;group_id=45216&amp;atid=442215" target="_top">#563215</a>)
-</li><li style="list-style-type: square">
-Similar to Jindent, Jalopy is now able to perform variable interpolation for
-the header or footer and Javadoc comment templates.
-See <a href="./environment.html" target="_top">Environment variables</a> section.
-Requested by Erik Dick
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442215&amp;aid=563213&amp;group_id=45216" target="_top">#563213</a>)
-</li><li style="list-style-type: square">
-Similar to Jindent, you can now define custom Javadoc templates for
-fields, classes/interfaces, constructor and method comments. See
-<a href="./javadoc.html#javadoc-templates" target="_top">Javadoc Templates</a> section
-</li><li style="list-style-type: square">
-The sorting order for the Java modifiers is now configurable. See
-<a href="./sorting.html#sorting-modifier" target="_top">Sorting</a> section
-</li><li style="list-style-type: square">
-The texts for separator comments are now user configurable. See
-<a href="./separation.html#separation-comment" target="_top">Separation</a> section.
-Requested by Dirk Jacobs
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442215&amp;aid=567322&amp;group_id=45216" target="_top">#567322</a>).
-</li><li style="list-style-type: square">
-The grouping of import statements can now be disabled. See
-<a href="./imports.html#imports-grouping-depth" target="_top">Imports section</a>.
-Requested by Emil A. Lefkof
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442215&amp;aid=562475&amp;group_id=45216" target="_top">#562475</a>).
-</li><li style="list-style-type: square">
-Lowercase "<tt class="literal">l</tt>" as trailing character for literal
-longs will be automatically capitalized during printing
-</li><li style="list-style-type: square">
-The <tt class="literal">abstract</tt> modifier will be automatically removed if found
-for interface or interface method declarations (as these are implicitly
-<span class="emphasis"><em>abstract</em></span>).
-</li><li style="list-style-type: square">
-You can now specify whether Java sources should be parsed as JDK 1.4 compatible
-(the default) or if sources should be parsed without treating
-<tt class="literal">assert</tt> as a reserved keyword (i.e. JDK 1.3 compatible).
-See the <a href="./settings.html#general-compliance" target="_top">General section</a>.
-This change addresses bugs
-<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=565512&amp;group_id=45216" target="_top">#565512</a> and
-<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=576983&amp;group_id=45216" target="_top">#576983</a></li><li style="list-style-type: square">
-The header detection now provides a <span class="emphasis"><em>Smart Mode</em></span> for users
-who want to use singe-line comments for headers. If enabled, Jalopy treats the
-first <tt class="literal">n</tt> number of singe-line comments before the first
-node as part of a header and removes them.
-See the <a href="./header.html#header-smart-mode" target="_top">Header section</a></li><li style="list-style-type: square">
-The element sorting changed: Added was a new category
-<i class="guilabel">Static variables/initializers</i>
-to avoid touching the class initialization as required by the Java language
-specification ("static initializers and class variable initializers are
-executed in textual order"). This partially addresses the feature request
-<a href="http://sf.net/tracker/?func=detail&amp;atid=442215&amp;aid=545603&amp;group_id=45216" target="_top">#545603</a> also.
-Reported by Kirk Wolf
-</li><li style="list-style-type: square">
-The import optimization feature is now available for the Ant Plug-in too. See
-the <a href="./plugin-ant-usage.html" target="_top">Ant Plug-in</a> chapter
-</li></ul></div><p></p></li><li>
-Bugfixes
-
-<div class="itemizedlist"><ul type="square"><li style="list-style-type: square">
-Setting for <i class="guilabel">Space before Brackets</i> didn't take effect
-</li><li style="list-style-type: square">
-Setting for <i class="guilabel">Space Before Brackets in Types</i> didn't take
-effect for something like <tt class="literal">new String[0]</tt></li><li style="list-style-type: square">
-jEdit Plug-in: The integration with the Gobal Options dialog doesn't suffer
-from the resizing problems anymore
-</li><li style="list-style-type: square">
-jEdit Plug-in: Jalopy directed all formatting messages always to the first view
-</li><li style="list-style-type: square">
-Read-only files don't cause exceptions anymore. Jalopy will now display a
-warning message. Reported by Andrew Barkley
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=587068&amp;group_id=45216" target="_top">#587068</a>)
-</li><li style="list-style-type: square">
-Enclosed creator constructs could lead to uncompilable code. Reported by
-Eddy Kivits
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=586450&amp;group_id=45216" target="_top">#586450</a>)
-</li><li style="list-style-type: square"><tt class="literal">do-while</tt> blocks without enclosing braces where not treated correctly.
-Reported by Marcel Toele
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=581394&amp;group_id=45216" target="_top">#581394</a>)
-</li><li style="list-style-type: square">
-The Javadoc printer missed a blank between the <tt class="literal">@link</tt> tag and
-following HTML links. Reportedy by Brian Harriger
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=581299&amp;group_id=45216" target="_top">#581299</a>)
-</li><li style="list-style-type: square">
-EOL characters were not correctly translated for multi-line, special and
-Javadoc comments. Reportedy by Olivier Mengu&eacute;
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=572130&amp;group_id=45216" target="_top">#572130</a>)
-</li><li style="list-style-type: square">
-Enabling the cuddling of empty braces lead to compilation errors if an
-trailing comment appeared before the opening brace. The cuddling is now disabled
-for such a (rare) case. Reported by Kees Kuip
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=568974&amp;group_id=45216" target="_top">#568974</a>)
-</li><li style="list-style-type: square">
-NPE during import that only appeared with certain JDKs. Reportedy by Davor Cengija
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=566205&amp;group_id=45216" target="_top">#566205</a>)
-</li><li style="list-style-type: square">
-The insertion of Javadoc comments did not work for classes/interfaces and
-fields (it was not implemented). Reported by Thomas B&ouml;rkel
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=564255&amp;group_id=45216" target="_top">#564255</a>)
-</li><li style="list-style-type: square">
-After importing settings from a distributed location, Jalopy did not use
-these settings if the host was unavailable on successive invocations (but
-rather the build-in defaults); now the imported settings are used and a
-warning message issued. Reported by Thomas B&ouml;rkel
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=563976&amp;group_id=45216" target="_top">#563976</a>)
-</li><li style="list-style-type: square">
-The Java Language Specification requires every single-line comment to be
-terminated by an end-of-line sequence, but Jalopy allowed a single-line-comment
-to be terminated by an end-of-file. Reported by Thomas B&ouml;rkel
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=563974&amp;group_id=45216" target="_top">#563974</a>)
-</li><li style="list-style-type: square">
-Ant 1.4.1 (or earlier) caused problems because of an incompatibility with the
-bundled AElfred parser. Therefore the parser (and all other 3rd party libraries)
-are no longer bundled to enable you to selectively copy the needed libs into
-the Ant <tt class="filename">/lib</tt> folder. Documentation was updated to explain
-the issue. Reported by Larry Hamel et.al.
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=563385&amp;group_id=45216" target="_top">#563385</a>)
-</li><li style="list-style-type: square">
-The Java parser failed for (strange) code like
-<tt class="literal">if (obj.getClass() == (byte.class))</tt>. Reported by Hui Lin
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=562681&amp;group_id=45216" target="_top">#562681</a>)
-</li><li style="list-style-type: square"><tt class="literal">try</tt>/<tt class="literal">catch</tt> blocks were not correctly
-formatted (again only with Sun brace style). Reported by Emil A. Lefkof
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=562039&amp;group_id=45216" target="_top">#562039</a>)
-</li><li style="list-style-type: square">
-Chained method calls were wrongly wrapped if part of an expression. Reported by Emil A. Lefkof
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=562037&amp;group_id=45216" target="_top">#562037</a>)
-</li><li style="list-style-type: square">
-Fixed some bugs regarding (evil) Sun brace styling. Reported by
-Emil A. Lefkof, Thomas B&ouml;rkel, Larry Hamel and Christian Halstrick, Anders Johansson
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=562034&amp;group_id=45216" target="_top">#562034</a>,
-<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=564247&amp;group_id=45216" target="_top">#564247</a>,
-<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=569306&amp;group_id=45216" target="_top">#569306</a>,
-<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=569031&amp;group_id=45216" target="_top">#569031</a>,
-<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=580600&amp;group_id=45216" target="_top">#580600</a>)
-</li><li style="list-style-type: square">
-The settings format was not correctly updated between 1.0b6 and 1.0b7
-causing an <tt class="classname">IllegalArgumentException</tt> if the history
-feature was disabled. Reported by Martin Spiller
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=561398&amp;group_id=45216" target="_top">#561398</a>,
-<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=561675&amp;group_id=45216" target="_top">#561675</a>)
-</li><li style="list-style-type: square">
-As the comment preserving/printing implementation has been rewritten, trailing
-comment support should now work in nearly all cases. At least all reported
-issues are now treated correctly. Reported by Stephane Houle, Emil A. Lefkof,
-Kees Kuip, John Wilson
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=559222&amp;group_id=45216" target="_top">#559222</a>,
-<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=565820&amp;group_id=45216" target="_top">#565820</a>,
-<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=562034&amp;group_id=45216" target="_top">#562034</a>,
-<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=578664&amp;group_id=45216" target="_top">#578664</a>)
-</li><li style="list-style-type: square">
-The user selected brace style did not take effect for anonymous inner classes.
-Reported by Ian Brown
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=545431&amp;group_id=45216" target="_top">#545431</a>)
-</li><li style="list-style-type: square">
-Fixed a minor GUI bug in the Javadoc panel (column headers did not show up
-using Windows L&amp;F). Reported by Thomas Sauzedde
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=544404&amp;group_id=45216" target="_top">#544404</a>)
-</li></ul></div><p></p></li><li>
-Changes
-
-<div class="itemizedlist"><ul type="square"><li style="list-style-type: square">
-JBuilder Plug-in: it now checks whether the classpath is correctly set up
-(whether all defined libraries exist) and if something seems to be broken,
-the import optimization feature is enabled to avoid errors (a dialog appears to
-inform you about the misconfiguration)
-</li><li style="list-style-type: square">
-JBuilder Plug-in: the <span><b class="guimenuitem">Jalopy Options...</b></span> menu item now
-appears in the Options group of the
-<span><b class="guimenu"><span class="accel">T</span>ools</b></span> menu.
-</li><li style="list-style-type: square">
-jEdit Plug-in: the Plug-in does not use ErrorList anymore, but rather relies
-on the MessageView Plug-in which is bundled with the distribution (as it is not
-yet available through the jEdit Plugin Central)
-</li><li style="list-style-type: square">
-The sorting logic for variable declarations now compares by access modifiers first,
-then (new!) type name and only if these two are equal by name (identifier)
-</li><li style="list-style-type: square">
-The Javadoc printer now inserts a newline after every found &lt;br&gt; tag
-(only happens if Javadoc parsing is enabled). This addresses the "Bug"
-reported by Tony Falabella (that was no bug but rather the behaviour I found
-sufficient)
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=562502&amp;group_id=45216" target="_top">#562502</a>)
-</li><li style="list-style-type: square">
-The default setting for the backup level changed, it is now set to "0"
-(no backups are kept)
-</li><li style="list-style-type: square">
-The settings dialog is no longer a modal dialog (necessary for the live preview)
-</li><li style="list-style-type: square">
-Started from the command line, the settings dialog now appears in the task
-bar (under Win32). Suggested by Knut Wannheden
-</li><li style="list-style-type: square">
-The bundled ANTLR runtime has been repackaged to avoid versioning problems
-</li><li style="list-style-type: square">
-Apart from the ANTLR runtime, the binary distributions no longer bundle the
-needed 3rd party libraries. Thus the installation procedure for some Plug-ins
-requires more care: you have to manually remove outdated 3rd party libraries
-before you copy the <tt class="filename">.jars</tt> provided with Jalopy into the
-Plug-in/module folder of your application (Applies to Ant, Console, JBuilder
- and jEdit, if done manually)
-</li><li style="list-style-type: square">
-Some shipped 3rd party jars we're updated: log4j to 1.2.6, Oro to 2.0.6,
-JAXP to 1.2.
-</li></ul></div><p></p></li></ol></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d35e835"></a>1.0 Beta 7 (2002-05-26)</h2></div></div><div></div></div><div class="orderedlist"><ol type="i"><li>
-New Features
-
-<div class="itemizedlist"><ul type="square"><li style="list-style-type: square">
-The wrapping behaviour for throws clauses is now more configurable. See
-<a href="./wrapping.html#wrap-before-throws" target="_top">Wrapping section</a>.
-Requested by Stephane Houle
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442215&amp;aid=559222&amp;group_id=45216" target="_top">#559222</a>)
-</li><li style="list-style-type: square">
-Indentation for <tt class="classname">extends</tt>, <tt class="classname">implements</tt>
-and <tt class="classname">throws</tt> can now be specified explicitly. See
-<a href="./indentation.html#indentation-sizes" target="_top">Indentation section</a></li><li style="list-style-type: square">
-Chained method calls are now wrapped (if line wrapping is enabled, of course).
-You can either force wrapping after every call
-(Refer to the <a href="./wrapping.html#wrap-call-chained" target="_top">Wrapping section</a>)
-or let wrapping happen automatically. Requested by Stephane Houle
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442215&amp;aid=559222&amp;group_id=45216" target="_top">#559222</a>)
-</li></ul></div><p></p></li><li>
-Bugfixes
-
-<div class="itemizedlist"><ul type="square"><li style="list-style-type: square">
-Sometimes stdin was not formatted. Reported and fixed by Kees Kuip
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=559503&amp;group_id=45216" target="_top">#559503</a>)
-</li><li style="list-style-type: square">
-1.0b6 failed to work with JDK 1.3.0 due to a bug in the handling of the index
-list <tt class="filename">.jar</tt> entry. Ant 1.5beta1 named it "INDEX.LIST" but this JDK expects "Index.list"
-which in turn lead to classloading problems.
-Reported by Steve Bromley
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=559704&amp;group_id=45216" target="_top">#559704</a>)
-and Joel Alaux
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=559240&amp;group_id=45216" target="_top">#559240</a>)
-</li><li style="list-style-type: square">
-Console Plug-in: Parsing a non-valid Java file with stdin always resulted in an
-exitcode "0". It now returns "1" in such cases. Reported by Kees Kuip
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=560709&amp;group_id=45216" target="_top">#560709</a>)
-</li><li style="list-style-type: square">
-The file history failed to work (because of an initialization error)
-</li><li style="list-style-type: square">
-The wrapper scripts for the Console Plug-in failed to work (I forgot to rename
-the startup class that has changed in 1.0b6). Reported by Ronen Rotstain
-</li><li style="list-style-type: square">
-The JBuilder Plug-in is now compatible with jVI. Reported by Rich Kadel
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=559761&amp;group_id=45216" target="_top">#559761</a>)
-</li><li style="list-style-type: square">
-Javadoc tags were (intensionally) only printed if the Javadoc comment belonged to a class/interface or
-method/ctor declaration. Reported by Tony Falabella
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=559357&amp;group_id=45216" target="_top">#559357</a>)
-</li><li style="list-style-type: square">
-Specifying a relative file as input source could lead to a file loss in case
-of RuntimeExceptions during the processing and a backup level of "0".
-Reported by Kees Kuip
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=558353&amp;group_id=45216" target="_top">#558353</a>)
-</li><li style="list-style-type: square">
-The NetBeans module failed to function properly due to a wrong Manifest <tt class="filename">.jar</tt> entry. Reported by Nico Max and Davide Baroncelli
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=558560&amp;group_id=45216" target="_top">#558560</a>)
-</li><li style="list-style-type: square">
-If <i class="guilabel">Space around Shift operators</i> was disabled, Jalopy failed to
-add whitespace around the <tt class="classname">instanceof</tt> operator. Reported by Roger Kemp
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=558482&amp;group_id=45216" target="_top">#558482</a>)
-</li><li style="list-style-type: square">
-Fixed a small but annoying bug regarding the alignment of assignments. Reported by GilloS
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=558638&amp;group_id=45216" target="_top">#558638</a>)
-</li></ul></div><p></p></li><li>
-Changes
-
-<div class="itemizedlist"><ul type="square"><li style="list-style-type: square">
-The detection logic for debug logging calls has been slightly improved. Calls like
-<tt class="literal">Configuration.debug()</tt> won't be treated as logging calls anymore
-</li><li style="list-style-type: square">
-The custom Javadoc tag definitions are not stored in distinct files anymore but
-rather go into the settings file (to make it portable across system bounderies)
-</li><li style="list-style-type: square">
-The Ant task attribute handling changed: if you omit any optional attribute now the
-corresponding settings settings will be used for *all* attributes
-</li></ul></div><p></p></li></ol></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d35e953"></a>1.0 Beta 6 (2002-05-19)</h2></div></div><div></div></div><div class="orderedlist"><ol type="i"><li>
-New Features
-
-<div class="itemizedlist"><ul type="square"><li style="list-style-type: square">
-Thanks to Roman Sarychev, Jalopy now provides the ability to import/export
-settings in an <tt class="filename">.XML</tt> format
-(<a href="http://sf.net/tracker/index.php?func=detail&amp;atid=442215&amp;aid=549177&amp;group_id=45216" target="_top">#549177</a>)
-</li><li style="list-style-type: square">
-Jalopy is now able to keep original blank lines. See <a href="./separation.html#separation-misc-keep" target="_top">Separation section</a> for details
-(<a href="http://sf.net/tracker/index.php?func=detail&amp;atid=442215&amp;aid=555914&amp;group_id=45216" target="_top">#555914</a>)
-</li><li style="list-style-type: square">
-Modifiers of declarations can now be sorted. See <a href="./sorting.html#sorting-general-modifiers" target="_top">Sort section</a> for details
-</li><li style="list-style-type: square">
-You can now enable the auto-insertion of an enclosing conditional for logging calls. See <a href="./misc.html#misc-logging-conditional" target="_top">Misc section</a> for details. Requested by Larry Hamel
-(<a href="http://sf.net/tracker/index.php?func=detail&amp;atid=442215&amp;aid=550336&amp;group_id=45216" target="_top">#550336</a>)
-</li><li style="list-style-type: square">
-Parameters of method definitions can now be aligned. See <a href="./indentation.html#indentation-align-params" target="_top">Indentation section</a>. Requested by Gary Bentley
-(<a href="http://sf.net/tracker/index.php?func=detail&amp;atid=442215&amp;aid=551205&amp;group_id=45216" target="_top">#551205</a>)
-</li><li style="list-style-type: square">
-The default grouping depth is now user configurable. See <a href="./imports.html#imports-grouping" target="_top">Imports section</a>. Requested by Larry Hamel
-</li><li style="list-style-type: square">
-Added new options (before and after curly braces, blocks...) to customize the blank lines behaviour. See <a href="./separation.html" target="_top">Separation section</a></li><li style="list-style-type: square">
-You can now print a blank between array type and initializer. Requested by David Weitzman
-(<a href="http://sf.net/tracker/index.php?func=detail&amp;atid=442215&amp;aid=548888&amp;group_id=45216" target="_top">#548888</a>)
-</li><li style="list-style-type: square">
-Jalopy is now able to load its settings from an Internet address. Refer to the
-<a href="./settings.html#general" target="_top">General section</a> of the manual. Cool feature requested by Sven van't Veer
-</li><li style="list-style-type: square">
-You can now use stdin/stdout redirection from the command line. If no input
-file(s) are specified, Jalopy will start listening on stdin. Note that the
-command line interface is now only available via the Console Plug-in! See
-<a href="./plugin-console-usage.html#plugin-console-usage-example" target="_top">Examples section</a></li><li style="list-style-type: square">
-For array initializers you can now force a specfic number of elements to be
-printed on each line or whether all elements should be printed on one line.
-See <a href="./wrapping.html#wrap-misc-arrays" target="_top">Wrapping section</a></li><li style="list-style-type: square">
-Eclipse Plug-in: the Packages view context menu now contains a formatting menu item
-</li></ul></div><p></p></li><li>
-Bugfixes
-
-
-<div class="itemizedlist"><ul type="square"><li style="list-style-type: square">
-Eclipse Plug-in: Fixed a bug in the shutdown hook. Only occurred if one had not
-formatted several files at once during a session. Reported by Eric Vickery
-</li><li style="list-style-type: square">
-Multi-line comments were not printed correctly if parsing of multi-line comments was
-disabled and the individual lines not starting with a leading asterix. Reported by Tony Falabella
-(<a href="http://sf.net/tracker/?func=detail&amp;atid=442212&amp;aid=554141&amp;group_id=45216" target="_top">#554141</a>)
-</li><li style="list-style-type: square">
-Javadoc generation failed if <i class="guilabel">Parse/Format tags</i> was disabled. Reported by Gary Bentley
-(<a href="http://sf.net/tracker/index.php?func=detail&amp;atid=442212&amp;aid=551194&amp;group_id=45216" target="_top">#551194</a>)
-</li><li style="list-style-type: square">
-Serial version UID check box didn't save. Reported by Kevin Duffey
-(<a href="http://sf.net/tracker/index.php?func=detail&amp;atid=442212&amp;aid=551604&amp;group_id=45216" target="_top">#551604</a>)
-</li><li style="list-style-type: square">
-Formatting an opened file with one of the Plug-ins did not create a backup file. Reported by Warren Nicholls
-(<a href="http://sf.net/tracker/index.php?func=detail&amp;atid=442212&amp;aid=545077&amp;group_id=45216" target="_top">#545077</a>)
-</li><li style="list-style-type: square">
-Custom Javadoc tag definitions are now loaded correctly and thus working. Reported by Arnd Empting
-(<a href="http://sf.net/tracker/index.php?func=detail&amp;atid=442212&amp;aid=547028&amp;group_id=45216" target="_top">#547028</a>)
-</li><li style="list-style-type: square">
-Fixed an trailing comment bug for the Sun brace styling. Reported by Martin Spiller
-(<a href="http://sf.net/tracker/index.php?func=detail&amp;atid=442212&amp;aid=545616&amp;group_id=45216" target="_top">#545616</a>)
-</li><li style="list-style-type: square">
-Eclipse Plug-in: After formatting the active editor, the IBeam cursor was not
-restored but rather the default cursor showed up
-</li><li style="list-style-type: square">
-Line wrapping for while and do-while expression parts now working (I forgot the markers)
-</li><li style="list-style-type: square">
-Fixed a blank lines issue for singe-line comments (printed one extra behind
-left curly braces, this is now user configurable)
-</li><li style="list-style-type: square">
-Fixed another blank lines issue for the Sun brace style (missed one blank
-line between blocks. Reported by Bradley Smith
-(<a href="http://sf.net/tracker/index.php?func=detail&amp;atid=442212&amp;aid=545941&amp;group_id=45216" target="_top">#545941</a>,
-<a href="http://sf.net/tracker/index.php?func=detail&amp;atid=442212&amp;aid=544459&amp;group_id=45216" target="_top">#544459</a>)
-</li><li style="list-style-type: square">
-EOF comments weren't always treated correctly (in case of singe-line comments). Reported by Ian Brown
-(<a href="http://sf.net/tracker/index.php?func=detail&amp;atid=442212&amp;aid=544706&amp;group_id=45216" target="_top">#544706</a>)
-</li><li style="list-style-type: square">
-jEdit Plug-in: Updated to work with 4.0 final. It now won't work with any prior release
-(<a href="http://sf.net/tracker/index.php?func=detail&amp;atid=442212&amp;aid=544100&amp;group_id=45216" target="_top">#544100</a>)
-</li><li style="list-style-type: square">
-NetBeans Plug-in: fixed a build problem causing the <tt class="filename">.nbm</tt>
-file to be missing in the distro archive. Reported by Brian Ewins
-(<a href="http://sf.net/tracker/index.php?func=detail&amp;atid=442212&amp;aid=544162&amp;group_id=45216" target="_top">#544162</a>)
-</li><li style="list-style-type: square">
-Fixed a minor bug in the JavadocPrinter regarding the printing of lists
-</li><li style="list-style-type: square">
-Footers were always removed no matter whether enabled or disabled
-</li><li style="list-style-type: square">
-Left curly brace for array initialization expression now regards the selected brace style
-</li></ul></div><p></p></li><li>
-Changes
-
-<div class="itemizedlist"><ul type="square"><li style="list-style-type: square">
-The license terms have changed. The core runtime and most of the Plug-ins are now
-released under the <a href="license-bsd.html" target="_top">BSD license</a>.
-Due to license restrictions of a 3rd party library,
-the command line interface has been removed from *<span class="bold"><b>ALL</b></span>*
-distributions and a new Plug-in was created: the Console Plug-in.
-</li><li style="list-style-type: square">
-JBuilder Plug-in: switching project does not bring up a blocking progress dialog
-anymore. The class repository is loaded in a background thread
-</li><li style="list-style-type: square">
-All file dialogs are not opened directly anymore but are accessible via an
-intermediate component that provides a history
-</li><li style="list-style-type: square">
-Eclipse Plug-in: Updated the <tt class="filename">plugin.xml</tt> to work with the
-latest stable build (20020416). This change only regards the menu item to
-invoke the Jalopy settings dialog; this item now appears under the 'Window'
-menu as the 'Workbench' menu has been gone
-</li><li style="list-style-type: square">
-The Javadoc parser now recognizes &lt;br/&gt; as a valid HTML tag
-(<a href="http://sf.net/tracker/index.php?func=detail&amp;atid=442212&amp;aid=547028&amp;group_id=45216" target="_top">#547028</a>)
-</li><li style="list-style-type: square">
-The Javadoc parser now checks whether any custom tag definition was added/removed
-since the last run and therefore needs reloading
-</li><li style="list-style-type: square">
-Specifying an empty string input via Jalopy#setInput(String, String) no longer
-throws <tt class="classname">IllegalArgumentException</tt>, instead the input is
-handled like an up-to-date file
-</li><li style="list-style-type: square"><span><b class="guibutton">Load...</b></span> and <span><b class="guibutton">Save...</b></span> buttons on the
-General settings page has been renamed
-to <span><b class="guibutton">Import...</b></span> and <span><b class="guibutton">Export...</b></span></li><li style="list-style-type: square">
-Changed the comment handling of labeled statements: if the following loop had
-comments before, these were printed before the labeled statement, now they will
-be printed before the loop statement
-</li><li style="list-style-type: square">
-The build scripts has been updated to use Ant 1.5beta1 features. Prior Ant
-releases won't work anymore
-</li><li style="list-style-type: square">
-Updated the bundled log4j distribution to 1.2.1. Adopted the new naming scheme
-and renamed all <tt class="classname">Category</tt> and <tt class="classname">Priority</tt>
-instances. Note that 1.2 is *no* drop-in replacement (no matter what the log4j docu says)
-as they renamed a public (sic!) field I have to use
-</li><li style="list-style-type: square">
-jEdit Plug-in: The menu item to display the Jalopy settings dialog can now
-be added to the context menu
-</li></ul></div><p></p></li></ol></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d35e1163"></a>1.0 Beta 5 (2000-04-14)</h2></div></div><div></div></div><div class="orderedlist"><ol type="i"><li>
-New Features
-
-<div class="itemizedlist"><ul type="square"><li style="list-style-type: square"><tt class="classname">AbstractPlugin.java</tt> now comes with multi-processor
-support, so all IDE Plug-ins should operate faster on multi-processor machines.
-Refer to the <a href="misc.html#misc-threads" target="_top">Misc</a> section of the
-manual
-</li><li style="list-style-type: square">
-Ant Plug-in: Added multi-processor support, new parameter <i class="parameter"><tt>threads</tt></i> to specify
-the number of threads to use
-</li><li style="list-style-type: square">
-Declaration and assignments aligning now available. Refer to the
-<a href="indentation.html#indentation-align-ident" target="_top">Indentation</a> section of the
-manual
-</li><li style="list-style-type: square">
-Separation (blank lines) behaviour now configurable. Refer to the
-<a href="separation.html" target="_top">Separation</a> section of the manual
-</li><li style="list-style-type: square">
-Added Eclipse Plug-in (needs Eclipse 2.0)
-</li><li style="list-style-type: square">
-Jalopy now supports the common convention of using a single @see tag
-instead of all the other tags and won't insert any missing Javadoc tags in such
-cases. Same applies if the inline tag {@inheritDoc} is found in the description
-</li><li style="list-style-type: square">
-Work started to provide an extended index for the user manual.
-</li></ul></div><p></p></li><li>
-Bugfixes
-
-<div class="itemizedlist"><ul type="square"><li style="list-style-type: square">
-Javadoc add/remove didn't work for @return tag
-</li><li style="list-style-type: square">
-The editable combo boxes (<tt class="classname">NumberComboBoxEditor.java</tt>)
-caused exceptions on losing focus
-</li></ul></div><p></p></li><li>
-Changes
-<div class="itemizedlist"><ul type="square"><li style="list-style-type: square">
-Javadoc now also generated for methods/ctors without params.
-</li><li style="list-style-type: square">
-Ant Plug-in: Changed the configuration of the message output. It is
-now controlled by a single parameter <i class="parameter"><tt>loglevel</tt></i>. This may
-force you to update your build scripts. Refer to the
-<a href="plugin-ant-usage.html#tab-ant-params" target="_top">Ant section</a>
-of the manual to read about the list of valid parameters
-</li><li style="list-style-type: square">
-The source base has been split into different modules (to make CVS happy and
-life easier) and the build system has changed accordingly
-</li><li style="list-style-type: square">
-The website and all documentation is now auto-generated out of <tt class="filename">.XML</tt> files
-(using the Ant style task and DocBook XSL 1.50.0/Saxon 6.5.1)
-</li><li style="list-style-type: square">
-The entries of the history viewer are now sorted
-</li><li style="list-style-type: square">
-The web site has a new look
-</li></ul></div><p></p></li></ol></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d35e1235"></a>1.0 Beta 4 (2000-03-20)</h2></div></div><div></div></div><div class="orderedlist"><ol type="i"><li>
-New Features
-
-<div class="itemizedlist"><ul type="square"><li style="list-style-type: square">
-Jalopy now provides some decent user documentation. Many thanks to Larry
-Hamel for the proof-reading
-</li><li style="list-style-type: square">
-The line wrapping logic is now fully implemented
-</li><li style="list-style-type: square">
-New line wrapping option: You can now force the wrapping for parameter
-lists of method calls. Note that this switch only applies to those lists
-that contain another method call. Refer to the
-<a href="wrapping.html#wrap-always" target="_top">Wrap always</a> section of the manual.
-Nice feature suggested by David Beutel
-</li><li style="list-style-type: square">
-Continuation indentation is now available for ternary if-else epressions
-too. Refer to the
-<a href="indentation.html#indentation-misc-ternary-if-else" target="_top">Indentation</a> section of the manual
-</li><li style="list-style-type: square">
-New option: You can now specify whether you want indentation realized
-with tabs instead of spaces. Refer to the
-<a href="indentation.html#indentation-misc-tab" target="_top">Indentation</a> section of the manual.
-This feature was kindly donated by David Beutel
-</li><li style="list-style-type: square">
-The history feature is now more user configurable. You can specifiy
-whether you want to have it enabled at all and what policy you want to
-use. Choose between the comment based history (which inserts a small
-header on top of every file) or a file-driven history. Refer to the
-<a href="misc.html#misc-history" target="_top">Indentation</a> section of the manual.
-The history feature is now *disabled* by default
-</li><li style="list-style-type: square">
-Added two new wrapping options: <i class="guilabel">Before extends keyword</i> and
-<i class="guilabel">Before implements keyword</i>. Enabling any of them will force
-a newline before the given keyword. Refer to the
-<a href="wrapping.html#wrap-always" target="_top">Wrap always</a> section of the manual.
-Requested by John Bishop
-</li><li style="list-style-type: square">
-New option to control the printing of labels. You can now specify whether
-a line break should be printed after labels or not. Refer to the
-<a href="wrapping.html#wrap-always-label" target="_top">Wrap always</a> section of the manual
-</li></ul></div><p></p></li><li>
-Bugfixes
-
-<div class="itemizedlist"><ul type="square"><li style="list-style-type: square">
-Small bugfix regarding trailing comments and array initialization
-</li><li style="list-style-type: square">
-Line wrapping for parameter lists was always performed, no matter what
-preference setting given
-</li><li style="list-style-type: square">
-For ternary if-else statements, parentheses was always inserted for the
-expression part if <i class="guilabel">Insert parentheses around expressions</i> was enabled.
-Now parentheses are only inserted if actually needed
-</li><li style="list-style-type: square"><i class="guilabel">Indent labels</i> option didn't show up on the indentation settings page
-</li><li style="list-style-type: square">
-The Javadoc auto-generation facility no longer inserts @throws tags for throws
-clauses that are catched in the method body
-</li></ul></div><p></p></li><li>
-Changes
-
-<div class="itemizedlist"><ul type="square"><li style="list-style-type: square">
-Settings pages <i class="guilabel">Braces</i> and <i class="guilabel">Block style</i>
-now merged into one page <i class="guilabel">Braces</i> with two tabs
-<i class="guilabel">Style</i> and <i class="guilabel">Misc</i></li><li style="list-style-type: square"><span><b class="guibutton">Cancel</b></span> button of the Progress monitor dialog renamed to
-<span><b class="guibutton">Stop</b></span> to reflect the fact that some files might have changed
-</li><li style="list-style-type: square">
-Settings page <i class="guilabel">Javadoc</i> cleaned up
-</li><li style="list-style-type: square">
-Specifying an identify key to delete existing headers/footers is now
-enforced
-</li></ul></div><p></p></li></ol></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d35e1336"></a>1.0 Beta 3 (2000-03-10)</h2></div></div><div></div></div><div class="orderedlist"><ol type="i"><li>
-New Features
-
-<div class="itemizedlist"><ul type="square"><li style="list-style-type: square">
-New option: You can now specify whether you want to retain first column
-comments vs. indenting them relative to their position in the code. Refer to the
-<a href="indentation.html#indentation-misc-first-column" target="_top">Indentation</a> section of the manual
-</li><li style="list-style-type: square">
-New option: You can now use different brace styles for class/method
-blocks and other types of blocks (for Sun, GNU and Custom style)
-</li></ul></div><p></p></li><li>
-Bugfixes
-
-<div class="itemizedlist"><ul type="square"><li style="list-style-type: square">
-The Javadoc parser rework lead to an error with the Javadoc @throws tags
-verification. This has been fixed now (Actually only a build problem)
-</li><li style="list-style-type: square">
-If <i class="guilabel">Space before Case colon</i> was enabled, no space was printed for
-the default keyword
-</li><li style="list-style-type: square">
-The comment creation only worked if the comment parsing and tag checking
-was enabled too
-</li><li style="list-style-type: square">
-Formatting a non-file input produced wrong updates of the history header
-</li></ul></div><p></p></li><li>
-Changes
-
-<div class="itemizedlist"><ul type="square"><li style="list-style-type: square">
-The line-wrapping logic changed/improved somewhat
-</li></ul></div><p></p></li></ol></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d35e1372"></a>1.0 Beta 2 (2002-03-05)</h2></div></div><div></div></div><div class="orderedlist"><ol type="i"><li>
-New Features
-
-<div class="itemizedlist"><ul type="square"><li style="list-style-type: square">
-Custom Javadoc tag definitions now available
-</li><li style="list-style-type: square">
-New option: You can now choose whether you want an empty statement
-inserted into empty braces to make the intension obvious
-</li><li style="list-style-type: square">
-New option: You can now specify whether if-statements should generally use
-continuation indent. This option was added to address the fact that
-conventional indentation could make seeing the body difficult (as outlined
-in the Sun Java Conventions guide)
-</li><li style="list-style-type: square">
-New option: Line wrapping can now be performed before or after operators
-</li><li style="list-style-type: square">
-New option: You can now specify template texts for auto-inserted Javadoc tags.
-</li><li style="list-style-type: square">
-NetBeans Plug-in added (for NetBeans 3.3.1 and higher)
-</li><li style="list-style-type: square">
-jEdit Plug-in: updated to work with jEdit 4.0prev1 and higher
-</li><li style="list-style-type: square">
-JBuilder Plug-in: added the Format and Settings actions to the popup
-menu of the editor pane
-</li><li style="list-style-type: square">
-Ant Plug-in: new parameter <i class="parameter"><tt>style</tt></i> to set the settings file to use
-</li></ul></div><p></p></li><li>
-Bugfixes
-
-<div class="itemizedlist"><ul type="square"><li style="list-style-type: square">
-Fixed a bug regarding the wrong printing of parenthesis for certain
-rare cases
-</li><li style="list-style-type: square">
-Correction of mispelled Javadoc standard tags failed if the correct
-amount of tags was given for the method/ctor
-</li><li style="list-style-type: square">
-No space was printed after array elements for arrays that fit in
-one line
-</li><li style="list-style-type: square">
-Printing of trailing comments now works much more reliable
-</li><li style="list-style-type: square">
-No message was reported in case the user specified an invalid input file
-on the command line
-</li><li style="list-style-type: square">
-Progress dialog didn't show progress for files with an opened editor view
-</li><li style="list-style-type: square">
-If no arguments were given on the command line, no warning was printed.
-Now the usage notes will appear
-</li><li style="list-style-type: square">
-Fixed a horrible bug in the JBuilder Plug-in which caused wrong class
-repository updates if one switched JDKs
-</li><li style="list-style-type: square">
-Fixed an error in the initialization process of the logging facility for
-Plug-ins using the AbstractPlugin skeleton which hindered the updating
-of the errors/warnings count in the progress dialog
-</li></ul></div><p></p></li><li>
-Changes
-
-<div class="itemizedlist"><ul type="square"><li style="list-style-type: square">
-All Plug-ins now only available as bundles. This will certainly pertain
-until a branding mechanism is available to check whether a given Plug-in
-will work with a given Jalopy runtime (a la NetBeans?)
-</li><li style="list-style-type: square">
-Changed/refactored some method signatures in the client API for consistency
-and ease of use
-</li><li style="list-style-type: square">
-The Javadoc parser has been reworked to allow both custom standard and
-inline tags
-</li><li style="list-style-type: square">
-Some API documentation enhancements, updated the build script to only generate
-the documentation for the public client API, removed the documentation for the
-Plug-ins from the distribution Javadoc
-</li><li style="list-style-type: square">
-Moved the logic to set the settings file to use, from the command line
-interface into <tt class="classname">Jalopy.java</tt> to let Plug-ins easily set the settings file
-to use
-</li><li style="list-style-type: square">
-Updated the used ANTLR version to 2.7.2a2. Compiled with optimizations and
-without debugging info results in smaller archive sizes
-</li><li style="list-style-type: square">
-Many build-script improvements. It should now be possible to build a
-Jalopy runtime version without the need of Plug-in related 3rd-party
-libraries
-</li><li style="list-style-type: square">
-The Jalopy runtime classes and all needed library classes are now bundled
-into one .jar
-</li><li style="list-style-type: square">
-The customizer mini editor is no longer part of the runtime .jar
-</li></ul></div><p></p></li></ol></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d35e1448"></a>1.0 Beta 1 (2002-02-13)</h2></div></div><div></div></div><div class="orderedlist"><ol type="i"><li>
-New Features
-
-<div class="itemizedlist"><ul type="square"><li style="list-style-type: square">
-jEdit Plug-in added (for jEdit 3.2.2)
-</li><li style="list-style-type: square">
-The progress dialog now includes a cancel button
-</li></ul></div><p></p></li><li>
-Bugfixes
-
-<div class="itemizedlist"><ul type="square"><li style="list-style-type: square">
-Settings dialog did not close when invoked on the command line
-with <span><b class="command">java Preferences</b></span></li><li style="list-style-type: square">
-Error in build script fixed (JavadocTokenTypes.txt now included in
-the .jars) to make the Javadoc auto-correction work
-</li><li style="list-style-type: square">
-Braces indentation not printed for left curly braces
-</li><li style="list-style-type: square">
-JBuilder Plug-in: Registered directories need to be reparsed on
-every startup for the import expansion/collapsing to work reliably
-</li></ul></div><p></p></li><li>
-Changes
-
-<div class="itemizedlist"><ul type="square"><li style="list-style-type: square">
-Changed default package depth for packages java, javax, gnu in the
-settings (former was 3, now uses 2)
-</li><li style="list-style-type: square">
-Changed the SwingWorker implementation to the one found in Doug Lea's
-<tt class="classname">util.concurrent</tt> package, refactored <tt class="classname">AbstractPlugin.java</tt>
-to use an inner class dereived from <tt class="classname">SwingWorker.java</tt>
-instead of extending <tt class="classname">SwingWorker.java</tt> itself
-</li><li style="list-style-type: square">
-Formatting a single file doesn't bring up the progress dialog anymore, but
-rather shows the system wait cursor and blocks all input
-</li><li style="list-style-type: square">
-Removed the Javadoc documentation from the Plug-in distributions
-</li></ul></div><p></p></li></ol></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d35e1498"></a>Initial beta version (2002-02-10)</h2></div></div><div></div></div></div></div></td></tr><tr><td height="20"></td></tr></tbody></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2002, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/imports.html b/utils/jalopy/docs/imports.html
deleted file mode 100755 (executable)
index 85ed7f0..0000000
+++ /dev/null
@@ -1,138 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>4.3.7.&nbsp;Imports</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="printer.html" title="4.3.&nbsp;Printer"><link rel="previous" href="comments.html" title="4.3.6.&nbsp;Comments"><link rel="next" href="environment.html" title="4.3.8.&nbsp;Environment"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index"><link rel="subsection" href="imports.html#imports-sorting" title="4.3.7.1.&nbsp;General"><link rel="subsection" href="imports.html#import-grouping" title="4.3.7.2.&nbsp;Grouping"><link rel="subsection" href="imports.html#import-optimization" title="4.3.7.3.&nbsp;Optimize">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4.3.7.&nbsp;Imports</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="comments.html">Prev</a>&nbsp;</td><th width="60%" align="center">4.3.&nbsp;Printer</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="environment.html">Next</a></td></tr></table><hr></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="imports"></a>4.3.7.&nbsp;Imports</h3></div></div><div></div></div><a class="indexterm" name="d0e4017"></a><p>
-Controls the handling of import declarations.
-</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="imports-sorting"></a>4.3.7.1.&nbsp;General</h4></div></div><div></div></div><a class="indexterm" name="d0e4025"></a><p>
-Enables the sorting of import statements. Sorting the import statements makes
-it simple to browse a long list of imports.
-</p><div class="itemizedlist"><ul type="disc"><li><p>
-Sort import statements
-</p><p>
-Enables or disables the sorting of import statements. Enabling this option
-will sort all imports lexicographically.
-</p></li></ul></div></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="import-grouping"></a>4.3.7.2.&nbsp;Grouping</h4></div></div><div></div></div><a class="indexterm" name="d0e4039"></a><p>
-In addition to sorting, associated packages can be grouped together to reduce
-complexity by packing related information into a common unit.
-</p><div class="itemizedlist"><ul type="disc"><li><p><a name="imports-grouping-depth"></a>
-Default grouping depth
-</p><a class="indexterm" name="d0e4052"></a><a class="indexterm" name="d0e4059"></a><p>
-Lets you define the default grouping depth. Only takes effect if sorting is enabled.
-</p><p>
-The grouping depth specifies the number of package name parts that are to
-be taken into account in order to determine whether two import statements are to
-be grouped together. For certain packages you may want to specify a grouping
-depth that differs from the default.
-</p><p>
-Statements are to be grouped together, if all relevant parts are equal. So via
-the grouping depth you can effectively specify how many parts are relevant.
-</p><p>
-To disable grouping at all, set the grouping depth to "<tt class="literal">0</tt>".
-</p><div class="example"><a name="ex-imports-grouping-depth-one"></a><p class="title"><b>Example&nbsp;4.137.&nbsp;Grouping depth java='1'</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-import <span class="bold"><b>java</b></span>.awt.Color;
-import <span class="bold"><b>java</b></span>.awt.Component;
-import <span class="bold"><b>java</b></span>.awt.GridBagConstraints;
-import <span class="bold"><b>java</b></span>.awt.GridBagLayout;
-import <span class="bold"><b>java</b></span>.awt.event.ActionEvent;
-import <span class="bold"><b>java</b></span>.awt.event.ActionListener;
-import <span class="bold"><b>java</b></span>.util.ArrayList;
-import <span class="bold"><b>java</b></span>.util.List;
-</pre></td></tr></table></div><p></p><div class="example"><a name="ex-imports-grouping-depth-two"></a><p class="title"><b>Example&nbsp;4.138.&nbsp;Grouping depth java='2'</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-import <span class="bold"><b>java.awt</b></span>.Color;
-import <span class="bold"><b>java.awt</b></span>.Component;
-import <span class="bold"><b>java.awt</b></span>.GridBagConstraints;
-import <span class="bold"><b>java.awt</b></span>.GridBagLayout;
-import <span class="bold"><b>java.awt</b></span>.event.ActionEvent;
-import <span class="bold"><b>java.awt</b></span>.event.ActionListener;
-
-import <span class="bold"><b>java.util</b></span>.ArrayList;
-import <span class="bold"><b>java.util</b></span>.List;
-</pre></td></tr></table></div><p></p><div class="example"><a name="ex-imports-grouping-depth-three"></a><p class="title"><b>Example&nbsp;4.139.&nbsp;Grouping depth java= '3'</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-import <span class="bold"><b>java.awt</b></span>.Color;
-import <span class="bold"><b>java.awt</b></span>.Component;
-import <span class="bold"><b>java.awt</b></span>.GridBagConstraints;
-import <span class="bold"><b>java.awt</b></span>.GridBagLayout;
-
-import <span class="bold"><b>java.awt.event</b></span>.ActionEvent;
-import <span class="bold"><b>java.awt.event</b></span>.ActionListener;
-
-import <span class="bold"><b>java.util</b></span>.ArrayList;
-import <span class="bold"><b>java.util</b></span>.List;
-</pre></td></tr></table></div><p></p></li></ul></div><p>
-You can add/remove package fragments (e.g. javax, javax.swing or com.foo.sarah)
-via the <span><b class="guibutton">Add...</b></span> and <span><b class="guibutton">Remove</b></span>
-buttons to fine-tune the appearance for certain packages.
-</p><p>
-To specify the order in which related statements should appear, you
-may want to use the <span><b class="guibutton">Up</b></span> and <span><b class="guibutton">Down</b></span> buttons.
-</p><p>
-Note that the <tt class="literal">asterix</tt> represents all undefined packages.
-</p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="import-optimization"></a>4.3.7.3.&nbsp;Optimize</h4></div></div><div></div></div><p>
-Optimizes the import statements by either expanding or collapsing them. This
-is a nice feature that is currently only available with the Ant and
-JBuilder Plug-in.
-</p><a class="indexterm" name="d0e4189"></a><div class="itemizedlist"><ul type="disc"><li><p><a name="import-optimization-expand"></a>
-Expand on-demand imports
-<a class="indexterm" name="d0e4198"></a>
-</p><p>
-If enabled, tries to expand all on-demand import statements.
-</p><p><a name="imports-on-demand"></a>
-Expanding means to resolve all on-demand import statements (sometimes called
-wildcard imports) and replace them with single-type import statements (sometimes
-called explicit imports) of the types that are actually used in the source file.
-</p><a class="indexterm" name="d0e4208"></a><p>
-So the following on-demand import statement may be expanded into two
-single-type import statements that reference the needed types for this package.
-</p><div class="example"><a name="ex-imports-on-demand"></a><p class="title"><b>Example&nbsp;4.140.&nbsp;On-demand import statement</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-import java.util.*;
-</pre></td></tr></table></div><p></p><div class="example"><a name="ex-import-single-type"></a><p class="title"><b>Example&nbsp;4.141.&nbsp;Single-type import statements</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-import java.util.ArrayList;
-import java.util.List;
-</pre></td></tr></table></div><p>
-Using single-type imports is quite useful and an absolute requirement in the
-open source community as this code is usually really reviewed. Using
-single-type imports makes it easy for the code reader to quickly find
-out the package a particular type is in: You just search for the type name
-from the start of the source file.
-</p></li></ul></div><div class="itemizedlist"><ul type="disc"><li><p><a name="import-optimization-collapse"></a>
-Collapse single-type imports
-<a class="indexterm" name="d0e4232"></a>
-<a class="indexterm" name="d0e4238"></a>
-</p><p>
-If enabled, tries to collapse all single-type statements.
-</p><p>
-Collapsing means to remove all single-type imports of a given package and
-replace them with one on-demand import statement.
-</p></li></ul></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="comments.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="printer.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="environment.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4.3.6.&nbsp;Comments&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;4.3.8.&nbsp;Environment</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/indentation.html b/utils/jalopy/docs/indentation.html
deleted file mode 100755 (executable)
index b2de732..0000000
+++ /dev/null
@@ -1,445 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>4.3.3.&nbsp;Indentation</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="printer.html" title="4.3.&nbsp;Printer"><link rel="previous" href="whitespace.html" title="4.3.2.&nbsp;White Space"><link rel="next" href="wrapping.html" title="4.3.4.&nbsp;Wrapping"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index"><link rel="subsection" href="indentation.html#indentation-general" title="4.3.3.1.&nbsp;General"><link rel="subsection" href="indentation.html#indentation-misc" title="4.3.3.2.&nbsp;Misc"><link rel="subsection" href="indentation.html#indentation-align" title="4.3.3.3.&nbsp;Align"><link rel="subsection" href="indentation.html#indentation-continuation" title="4.3.3.4.&nbsp;Continuation">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4.3.3.&nbsp;Indentation</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="whitespace.html">Prev</a>&nbsp;</td><th width="60%" align="center">4.3.&nbsp;Printer</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="wrapping.html">Next</a></td></tr></table><hr></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="indentation"></a>4.3.3.&nbsp;Indentation</h3></div></div><div></div></div><p>
-Controls the indentation settings.
-<a class="indexterm" name="d0e2107"></a>
-</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="indentation-general"></a>4.3.3.1.&nbsp;General</h4></div></div><div></div></div><p>Lets you change the general indentation settings.</p><div class="sect4" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="indentation-policy"></a>4.3.3.1.1.&nbsp;Policy</h5></div></div><div></div></div><p>
-Lets you choose the way lines should be indented.
-</p><div class="itemizedlist"><ul type="disc"><li><p><a name="indentation-policy-standard"></a>
-Standard indent
-</p><p>
-With standard indentation, lines will be indented according to the
-current indentation level (Note that the indentation level changes as the block
-or parentheses level changes).
-</p><div class="example"><a name="indentation-method-decl-standard"></a><p class="title"><b>Example&nbsp;4.30.&nbsp;Method declaration (standard indented)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-public void severalParameters(String one, int two, String three,
-    StringObject four, AnotherObject five) {
-...
-}
-</pre></td></tr></table></div><p></p><div class="example"><a name="indentation-method-call-standard"></a><p class="title"><b>Example&nbsp;4.31.&nbsp;Method Call (standard indented)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-vector.add(new AppServerReference(
-        "RemoteApplicationManager",
-        poa.create_reference_with_id("RemoteApplicationManager".getBytes(),
-            RemoteApplicationManagerHelper.id())));
-</pre></td></tr></table></div><p></p><div class="example"><a name="indentation-assign-standard"></a><p class="title"><b>Example&nbsp;4.32.&nbsp;Assignment (standard indented)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-doublette[InteressentenPflegeController.GEBURTSDATUM] = versichertenResultSetRow[i].field[0]
-    .substring(0, 2) + "."
-    + versichertenResultSetRow[i].field[0].substring(2, 4) + "."
-    + versichertenResultSetRow[i].field[0].substring(4, 6);
-</pre></td></tr></table></div><p></p></li><li><p><a name="indentation-policy-deep"></a>
-Deep indent
-</p><p>
-Deep indentation means that lines will be indented relative to the current
-parentheses or assignment offset. This way consecutive code sections are somewhat easier
-to recognize at the downside of consuming more horizontal space.
-</p><div class="example"><a name="indentation-method-decl-deep"></a><p class="title"><b>Example&nbsp;4.33.&nbsp;Method declaration (deep indented)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-public void severalParameters(String one, int two, String three,
-                              StringObject four, AnotherObject five) {
-    ...
-}
-</pre></td></tr></table></div><p></p><div class="example"><a name="indentation-method-call-deep"></a><p class="title"><b>Example&nbsp;4.34.&nbsp;Method Call (deep indented)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-this.add(lbPunktzahl,
-         new GridBagLayout(0, 1, 2, 1, 0.0, 0.0,
-                           GribBagConstraints.WEST,
-                           GribBagConstraints.NONE,
-                           new Insets(0, GribBagConstraints.WEST,
-                                      GribBagConstraints.WEST,
-                                      GribBagConstraints.WEST), 0, 0));
-</pre></td></tr></table></div><p></p><div class="example"><a name="indentation-assign-deep"></a><p class="title"><b>Example&nbsp;4.35.&nbsp;Assignment (deep indented)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-doublette[Controller.GEBURTSDATUM] = versichertenResultSetRow[i].field[0]
-                                     .substring(0, 2) + "."
-                                     + versichertenResultSetRow[i].field[0]
-                                       .substring(2, 4)
-                                     + "."
-                                     + versichertenResultSetRow[i].field[0]
-                                       .substring(4, 6);
-</pre></td></tr></table></div><p></p></li></ul></div></div><div class="sect4" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="indentation-sizes"></a>4.3.3.1.2.&nbsp;Sizes</h5></div></div><div></div></div><a class="indexterm" name="d0e2171"></a><p>
-Lets you set different indentation sizes.
-</p><div class="itemizedlist"><p></p><ul type="disc"><li><p><a name="indentation-sizes-general"></a>
-General indent
-<a class="indexterm" name="d0e2182"></a>
-</p><p>
-Specifies the number of spaces to use for general indentation (Studies have
-found that 2 to 4 spaces for indentation is optimal)
-</p><div class="example"><a name="ex-indentation-two-space"></a><p class="title"><b>Example&nbsp;4.36.&nbsp;2 space general indent</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-public class Preferences
-{
--&gt;private Preferences()
--&gt;{
--&gt;}
-
--&gt;public static void main(String[] argv)
--&gt;{
--&gt;-&gt;de.hunsicker.jalopy.swing.PreferencesDialog.main(argv);
--&gt;}
-}
-</pre></td></tr></table></div><p></p><div class="example"><a name="ex-indentation-four-space"></a><p class="title"><b>Example&nbsp;4.37.&nbsp;4 space general indent</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-public class Preferences
-{
----&gt;private Preferences()
----&gt;{
----&gt;}
-
----&gt;public static void main(String[] argv)
----&gt;{
----&gt;---&gt;de.hunsicker.jalopy.swing.PreferencesDialog.main(argv);
----&gt;}
-}
-</pre></td></tr></table></div><p></p></li><li><p><a name="indentation-sizes-leading"></a>
-Leading indent
-<a class="indexterm" name="d0e2207"></a>
-</p><p>
-Specifies the number of spaces to prepend before every line printed.
-</p><div class="example"><a name="ex-indentation-six-leading"></a><p class="title"><b>Example&nbsp;4.38.&nbsp;6 space leading indent</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
------&gt;public class Preferences
------&gt;{
------&gt;    private Preferences()
------&gt;    {
------&gt;    }
-
------&gt;    public static void main(String[] argv)
------&gt;    {
------&gt;        de.hunsicker.jalopy.swing.PreferencesDialog.main(argv);
------&gt;    }
------&gt;}
-</pre></td></tr></table></div><p></p></li><li><p><a name="indentation-sizes-continuation"></a>
-Continuation indent
-<a class="indexterm" name="d0e2226"></a>
-</p><p>
-Specifies the number of spaces that should be inserted in front of
-continuation lines, i.e. the consecutive lines in case of a line wrap.
-</p><div class="example"><a name="ex-indentation-two-continuation"></a><p class="title"><b>Example&nbsp;4.39.&nbsp;2 space continuation indent</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-if ((condition1 &amp;&amp; condition2)
-    -&gt;|| (condition3 &amp;&amp; condition4)
-    -&gt;|| !(condition5 &amp;&amp; condition6)) {
-    doSomethingAboutIt();
-}
-</pre></td></tr></table></div><p></p><div class="example"><a name="ex-indentation-four-continuation"></a><p class="title"><b>Example&nbsp;4.40.&nbsp;4 space continuation indent</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-if ((condition1 &amp;&amp; condition2)
-    ---&gt;|| (condition3 &amp;&amp; condition4)
-    ---&gt;|| !(condition5 &amp;&amp; condition6)) {
-    doSomethingAboutIt();
-}
-</pre></td></tr></table></div><p></p></li><li><p><a name="indentation-sizes-trailing"></a>
-Trailing comment indent
-<a class="indexterm" name="d0e2251"></a>
-<a class="indexterm" name="d0e2259"></a>
-<a class="indexterm" name="d0e2265"></a>
-</p><p>
-Specifies the number of spaces to insert between trailing comments and the
-preceding statement.
-</p><div class="example"><a name="ex-indentation-three-trailing"></a><p class="title"><b>Example&nbsp;4.41.&nbsp;3 space trailing comment indent</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-new String[] {
-    "Sunday",--&gt;// Sunday
-    "Monday",--&gt;// Monday
-    "Tuesday",--&gt;// Tuesday
-    "Wednesday",--&gt;// Wednesday
-    "Thursday",--&gt;// Thursday
-    "Friday",--&gt;// Friday
-    "Saturday"--&gt;// Saturday
-}
-</pre></td></tr></table></div><p></p></li><li><p><a name="indentation-sizes-tab"></a>
-Original Tab indent
-</p><p>
-Specifies the original tabular size of the source code. Some indentations
-or alignments may fail, if you miss the correct size here.
-<a class="indexterm" name="d0e2282"></a>
-<a class="indexterm" name="d0e2288"></a>
-</p></li><li><p><a name="indentation-sizes-extends"></a>
-Extends indent
-</p><p>
-If enabled, specifies the whitespace to print before the <tt class="classname">extends</tt>
-keyword in case it was printed on a new line.
-</p><a class="indexterm" name="d0e2304"></a><div class="example"><a name="d0e2311"></a><p class="title"><b>Example&nbsp;4.42.&nbsp;extends indentation with 6 spaces</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-public interface Channel
-------&gt;extends Puttable, Takable
-{
-    ...
-}
-</pre></td></tr></table></div><p></p></li><li><p><a name="indentation-sizes-implements"></a>
-Implements indent
-</p><p>
-Specifies the whitespace to print before the <tt class="classname">implements</tt>
-keyword in case it was printed on a new line.
-</p><a class="indexterm" name="d0e2325"></a><div class="example"><a name="d0e2332"></a><p class="title"><b>Example&nbsp;4.43.&nbsp;implements indentation with 8 spaces</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-public class SynchronizedBoolean
--------&gt;implements Comparable, Cloneable
-{
-    ...
-}
-</pre></td></tr></table></div><p></p></li><li><p><a name="indentation-sizes-throws"></a>
-Throws indent
-</p><p>
-Specifies the whitespace to print before the <tt class="classname">throws</tt>
-keyword in case it was printed on a new line.
-<a class="indexterm" name="d0e2346"></a>
-</p><div class="example"><a name="d0e2354"></a><p class="title"><b>Example&nbsp;4.44.&nbsp;throws indentation with 3 spaces</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-private static final File getDestinationFile(File dest, String packageName,
-                                             String filename)
---&gt;throws IOException, FooException
-{
-    ...
-}
-</pre></td></tr></table></div><p></p></li></ul></div></div></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="indentation-misc"></a>4.3.3.2.&nbsp;Misc</h4></div></div><div></div></div><div class="itemizedlist"><ul type="disc"><li><p><a name="indentation-misc-tab"></a>
-Use tabs to indent
-<a class="indexterm" name="d0e2369"></a>
-</p><p>
-Normally, Jalopy uses spaces to indent lines. If you prefer tabs, check this box.
-</p></li><li><p>
-Indent "case" from "switch"
-</p><p>
-The Sun Java code convention recommends a switch style where case statements
-are not indented relative to the switch statement as a whole. However, this
-option allows you to indent the case statements to make the entire switch
-statement stand out.
-</p><div class="example"><a name="ex-indentation-misch-switch-un"></a><p class="title"><b>Example&nbsp;4.45.&nbsp;Switch statement (unindented)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-switch (prio)
-{
-case Priority.ERROR_INT :
-case Priority.FATAL_INT :
-    color = Color.red;
-    break;
-
-case Priority.WARN_INT :
-    color = Color.blue;
-    break;
-
-default:
-    color = Color.black;
-    break;
-}
-</pre></td></tr></table></div><p></p><div class="example"><a name="ex-indentation-misc-switch"></a><p class="title"><b>Example&nbsp;4.46.&nbsp;Switch statement (indented)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-switch (prio)
-{
----&gt;case Priority.ERROR_INT :
----&gt;case Priority.FATAL_INT :
----&gt;    color = Color.red;
----&gt;    break;
-
----&gt;case Priority.WARN_INT :
----&gt;    color = Color.blue;
----&gt;    break;
-
----&gt;default:
----&gt;    color = Color.black;
----&gt;    break;
-}
-</pre></td></tr></table></div><p></p></li><li><p><a name="indentation-misc-label"></a>
-Indent labels
-<a class="indexterm" name="d0e2397"></a>
-</p><p>
-Specifies whether lables should be indented with the current indentation level.
-</p><div class="example"><a name="ex-indentation-misc-label-unindent"></a><p class="title"><b>Example&nbsp;4.47.&nbsp;Unindented label</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-// advance to the first CLASS_DEF or INTERFACE_DEF
-<span class="bold"><b>LOOP</b></span>:
-        for (AST child = tree.getFirstChild();
-             child != null;
-             child = child.getNextSibling())
-        {
-            switch (child.getType())
-            {
-                case JavaTokenTypes.CLASS_DEF :
-                case JavaTokenTypes.INTERFACE_DEF :
-                    next = child;
-                    break LOOP;
-                default :
-                    break;
-            }
-        }
-</pre></td></tr></table></div><p></p><div class="example"><a name="ex-indentation-misc-label"></a><p class="title"><b>Example&nbsp;4.48.&nbsp;Indented label</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-        // advance to the first CLASS_DEF or INTERFACE_DEF
-        <span class="bold"><b>LOOP</b></span>:
-        for (AST child = tree.getFirstChild();
-             child != null;
-             child = child.getNextSibling())
-        {
-            switch (child.getType()) {
-                case JavaTokenTypes.CLASS_DEF :
-                case JavaTokenTypes.INTERFACE_DEF :
-                    next = child;
-                    break LOOP;
-
-                default :
-                    break;
-            }
-        }
-</pre></td></tr></table></div><p></p></li><li><p><a name="indentation-misc-first-column"></a>
-Indent first column comments
-</p><p>
-Normally, all comments will be indented relative to their position in the code
-to avoid that comments break the logical structure of the program. Some
-developers may like to disable the indentation for first column comments
-during the developing phase.
-</p><div class="example"><a name="ex-indentation-misc-first-column"></a><p class="title"><b>Example&nbsp;4.49.&nbsp;First column comment (indented)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-    public static Printer create(AST node)
-    {
-
-        <span class="bold"><b>/*
-        if (node == null)
-        {
-            return new NullPrinter();
-        }
-        */</b></span>
-        return create(node.getType());
-    }
-</pre></td></tr></table></div><p></p><div class="example"><a name="ex-indentation-misc-first-column-unindented"></a><p class="title"><b>Example&nbsp;4.50.&nbsp;First column comment (unindented)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-    public static Printer create(AST node)
-    {
-
-<span class="bold"><b>/*
-        if (node == null)
-        {
-            return new NullPrinter();
-        }
-*/</b></span>
-        return create(node.getType());
-    }
-</pre></td></tr></table></div><p></p></li></ul></div></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="indentation-align"></a>4.3.3.3.&nbsp;Align</h4></div></div><div></div></div><a class="indexterm" name="d0e2450"></a><a class="indexterm" name="d0e2455"></a><div class="itemizedlist"><ul type="disc"><li><p><a name="indentation-align-ident"></a>
-Variable identifiers
-</p><p>
-If enabled, aligns the identifiers of variable declarations.
-</p><a class="indexterm" name="d0e2464"></a><div class="example"><a name="ex-indentation-misc-align-ident"></a><p class="title"><b>Example&nbsp;4.51.&nbsp;Variable identifiers</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-String text = "text";
-int a = -1;
-History.Entry entry = new History.Entry(text);
-</pre></td></tr></table></div><p></p><div class="example"><a name="ex-indentation-align-ident-aligned"></a><p class="title"><b>Example&nbsp;4.52.&nbsp;Variable identifiers (aligned)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-String        text = "text";
-int           a = -1;
-History.Entry entry = new History.Entry(text);
-</pre></td></tr></table></div><p></p></li><li><p><a name="indentation-align-assign"></a>
-Variable assignments
-</p><p>
-If enabled, aligns the assignment parts of variable declarations or, surprise, assignments.
-</p><a class="indexterm" name="d0e2488"></a><a class="indexterm" name="d0e2495"></a><div class="example"><a name="ex-indentation-align-assign-aligned"></a><p class="title"><b>Example&nbsp;4.53.&nbsp;Variable assignments (aligned)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-String text         = "text";
-int a               = -1;
-History.Entry entry = new History.Entry(text);
-</pre></td></tr></table></div><p>
-If both variable alignment options are enabled, you can achieve a style like
-the following:
-</p><div class="example"><a name="ex-indentation-align-both"></a><p class="title"><b>Example&nbsp;4.54.&nbsp;Variable identifiers/assignments (both aligned)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-String        text  = "text";
-int           a     = -1;
-History.Entry entry = new History.Entry(text);
-</pre></td></tr></table></div><p>
-
-</p></li><li><p><a name="indentation-align-params"></a>
-Method Def parameters
-</p><p>
-If enabled, aligns the parameters of method declarations. This only applies if
-all parameters will be wrapped; either because wrapping is forced or the
-max. line length is reached. To force aligning, you have to enable the
-wrapping for method parameters (See <a href="wrapping.html#wrap-method-params">Method Def parameters</a>).
-</p><a class="indexterm" name="d0e2524"></a><a class="indexterm" name="d0e2527"></a><div class="example"><a name="ex-indentation-align-params"></a><p class="title"><b>Example&nbsp;4.55.&nbsp;Method declaration parameters</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-public static File create(final File file,
-                          File directory,
-                          int backupLevel)
-{
-    ...
-}
-</pre></td></tr></table></div><p></p><div class="example"><a name="ex-indentation-align-params-aligned"></a><p class="title"><b>Example&nbsp;4.56.&nbsp;Method declaration parameters (aligned)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-public static File create(final File file,
-                          File       directory,
-                          int        backupLevel)
-{
-    ...
-}
-</pre></td></tr></table></div><p></p></li><li><p><a name="indentation-align-method-chains"></a>
-Method Call chains
-</p><p>
-If disabled, indentation happens according to the current indentation level.
-</p><div class="example"><a name="ex-indentation-align-call"></a><p class="title"><b>Example&nbsp;4.57.&nbsp;Method Call chain (standard indented)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-Fachschluesselerzeugung.createService()
-.getNeuerFachschluesselServiceService(
-    FachschluesselerzeugungService.FACHSCHLUESSEL_KZ_INTERESSENT);
-</pre></td></tr></table></div><p>
-Otherwise indentation is performed relative to the column offset of the first chain link.
-</p><div class="example"><a name="ex-indentation-align-call-aligned"></a><p class="title"><b>Example&nbsp;4.58.&nbsp;Method Call chain  (aligned)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-Fachschluesselerzeugung.createService()
-                       .getNeuerFachschluesselServiceService(
-                            FachschluesselerzeugungService.FACHSCHLUESSEL_KZ_INTERESSENT);
-</pre></td></tr></table></div><p></p></li><li><p><a name="indentation-align-ternary"></a>
-Ternary expressions
-</p><p>
-If disabled, ternary expressions are printed according to the current
-<a href="indentation.html#indentation-policy" title="4.3.3.1.1.&nbsp;Policy">indentation policy</a>.
-</p><div class="example"><a name="ex-indentation-ternary-standard"></a><p class="title"><b>Example&nbsp;4.59.&nbsp;Ternary operators (standard indented)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-        alpha = (aLongBooleanExpression) ? beta    |
-        : gamma;                                   |
-</pre></td></tr></table></div><p></p><div class="example"><a name="ex-indentation-ternary-deep"></a><p class="title"><b>Example&nbsp;4.60.&nbsp;Ternary operators (deep indented)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-        alpha = (aLongBooleanExpression) ? beta    |
-                : gamma;                           |
-</pre></td></tr></table></div><p>
-If enabled, the second operator will always be aligned relative to the first one.
-</p><div class="example"><a name="ex-indentation-ternary-align"></a><p class="title"><b>Example&nbsp;4.61.&nbsp;Ternary expresssions (aligned)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-        alpha = (aLongBooleanExpression) ? beta    |
-                                         : gamma;  |
-</pre></td></tr></table></div><p>
-Note that this switch only takes affect, if indeed a line break was inserted
-before the second expression. You can force such line breaks with the
-<a href="wrapping.html#wrap-ternary-colon">Wrap always before ternary expression colon</a> setting.
-</p></li></ul></div><p></p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="indentation-continuation"></a>4.3.3.4.&nbsp;Continuation</h4></div></div><div></div></div><a class="indexterm" name="d0e2597"></a><a class="indexterm" name="d0e2602"></a><p>
-Lets you specify extra indentation for consectutive lines of certain expressions.
-</p><div class="itemizedlist"><ul type="disc"><li><p><a name="indentation-misc-continuation-if"></a>
-Blocks
-</p><p>
-The Sun brace style could make seeing the statement body difficult. To
-workaround this problem, you may want to use continuation indentation in case you like this
-brace style. This setting applies for <tt class="literal">if</tt>, <tt class="literal">for</tt>, <tt class="literal">while</tt>
-and <tt class="literal">do-while</tt> blocks.
-</p><div class="example"><a name="ex-indentation-misc-non-continuation"></a><p class="title"><b>Example&nbsp;4.62.&nbsp;Non-continuation indentation</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-if ((condition1 &amp;&amp; condition2)
-    || (condition3 &amp;&amp; condition4)
-    || !(condition5 &amp;&amp; condition6)) { // BAD WRAPS
-    doSomethingAboutIt();             // MAKE THIS LINE EASY TO MISS
-}
-</pre></td></tr></table></div><p></p><div class="example"><a name="ex-indentation-misc-contiunation"></a><p class="title"><b>Example&nbsp;4.63.&nbsp;Continuation indentation</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-if ((condition1 &amp;&amp; condition2)
-        || (condition3 &amp;&amp; condition4)
-        || !(condition5 &amp;&amp; condition6)) {
-    doSomethingAboutIt();
-}
-</pre></td></tr></table></div><p>
-Refer to <a href="printer.html#braces-style-styles" title="4.3.1.1.1.&nbsp;Styles">Section&nbsp;4.3.1.1.1, &#8220;Styles&#8221;</a> for the available brace style options.
-</p></li><li><p><a name="indentation-misc-ternary-if-else"></a>
-Operators
-</p><p>
-If enabled, indentation will be increased before an operand will be printed.
-</p><div class="example"><a name="ex-indentation-misc-ternary-if-else"></a><p class="title"><b>Example&nbsp;4.64.&nbsp;Ternary expression (deep indented)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-String comma = spaceAfterComma
-               ---&gt;? COMMA_SPACE
-               ---&gt;: COMMA;
-</pre></td></tr></table></div><p></p></li></ul></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="whitespace.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="printer.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="wrapping.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4.3.2.&nbsp;White Space&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;4.3.4.&nbsp;Wrapping</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/index.html b/utils/jalopy/docs/index.html
deleted file mode 100755 (executable)
index a8f9b1c..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>Jalopy Java Source Code Formatter Beautifier Pretty Printer</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><meta name="keywords" content="Java, convention, source, code, formatter, beautifier, pretty, printer, format, beautify, layout, coding, open, style, standard, transform, parser, Sun, ANTLR, Ant, Eclipse, JBuilder, NetBeans, jEdit, jakarta, JDeveloper, generator, generation, JDE, maven">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="center"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table><table cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                        <a href="./history.html" class="navlink2">History</a></td></tr></tbody></table></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-            This page generated: <strong>June 8 2004</strong></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" width="100%" cellspacing="0" cellpadding="5"><tbody><tr><td><div class="article" lang="en"><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="overview"></a>Overview</h2></div></div><div></div></div><p>
-Jalopy is a source code formatter for the Sun Java programming language. It
-layouts any valid Java source code according to some widely configurable rules;
-to meet a certain coding style without putting a formatting burden on individual
-developers.
-</p><p>
-With Jalopy you will be able to transform any foreign coding style to your
-own liking, without any browbeating or bloodletting.
-</p><p>
-Jalopy's functionality covers:
-</p><div class="blockquote"><blockquote class="blockquote"><table class="simplelist" border="0" summary="Simple list"><tr><td>
-- <a href="./braces.html" target="_top">Brace style transformation</a>
-</td></tr><tr><td>
-- <a href="./whitespace.html" target="_top">Fine-grained whitespace settings</a>
-</td></tr><tr><td>
-- <a href="./indentation.html" target="_top">Indentation</a>
-</td></tr><tr><td>
-- <a href="./wrapping.html" target="_top">Intelligent line wrapping</a>
-</td></tr><tr><td>
-- <a href="./separation.html" target="_top">Code separation</a>
-</td></tr><tr><td>
-- <a href="./javadoc.html#javadoc-generation" target="_top">Javadoc auto-generation</a>
-</td></tr><tr><td>
-- <a href="./header.html" target="_top">Header/Footer templates</a>
-</td></tr><tr><td>
-- <a href="./plugin-console.html" target="_top">Powerful command-line interface</a>
-</td></tr><tr><td>
-- <a href="./api/index.html" target="_top">Client API</a>
-</td></tr><tr><td>
-- <a href="./plugins.html" target="_top">Several Plug-ins</a>
-</td></tr></table></blockquote></div><p>
-Jalopy is
-"<span class="bold"><b><a href="http://opensource.org/docs/certification_mark.php" target="_top">OSI Certified Open Source Software</a></b></span>",
-released under a <a href="./license-bsd.html" target="_top">BSD License</a>. Please
-refer to <a href="./dependencies.html" target="_top">Appendix A</a> for the license terms of the
-accompanying 3rd party libraries and the different <a href="./part-plugins.html" target="_top">Plug-in chapters</a>
-for the license terms of the provided Plug-ins.
-</p></div></div></td></tr><tr><td height="20"></td></tr></tbody></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2002, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/inspector-naming.html b/utils/jalopy/docs/inspector-naming.html
deleted file mode 100755 (executable)
index 98fd625..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>4.4.2.&nbsp;Naming</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="inspector.html" title="4.4.&nbsp;Code Inspector"><link rel="previous" href="inspector.html" title="4.4.&nbsp;Code Inspector"><link rel="next" href="messages.html" title="4.5.&nbsp;Messages"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index"><link rel="subsection" href="inspector-naming.html#inspector-naming-tester" title="4.4.2.1.&nbsp;Regular expression tester">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4.4.2.&nbsp;Naming</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="inspector.html">Prev</a>&nbsp;</td><th width="60%" align="center">4.4.&nbsp;Code Inspector</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="messages.html">Next</a></td></tr></table><hr></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="inspector-naming"></a>4.4.2.&nbsp;Naming</h3></div></div><div></div></div><a class="indexterm" name="d0e5379"></a><a class="indexterm" name="d0e5382"></a><p>
-Lets you specify the naming constraints for different Java source file elements. These
-constraints are naturally expressed with regular expressions (Perl 5.003 syntax).
-</p><p>
-The list component displays all covered elements along with their current regular
-expression.
-</p><p>
-Selecting an item in the list and either pressing the <span><b class="guibutton">Change...</b></span>
-button or double-clicking on the item will open a little regular expression testing tool
-that can be used to interactively craft a valid regular expression.
-</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="inspector-naming-tester"></a>4.4.2.1.&nbsp;Regular expression tester</h4></div></div><div></div></div><a class="indexterm" name="d0e5399"></a><a class="indexterm" name="d0e5402"></a><p>
-The regular expression tester lets you interactively specifiy a valid regular expression
-that matches a certain String pattern.
-</p><div class="itemizedlist"><ul type="disc"><li><p>
-Regexp
-</p><p>
-The <span><b class="guilabel">Regexp</b></span> text field is where you have to insert the regular
-expression. This text field initially contains the current regular expression for the
-list item that is under construction.
-</p><p>
-The used regular expression syntax is that of Perl 5.003. See <span class="emphasis"><em>Mastering Regular
-Expressions</em></span> [<a href="bi01.html#friedl97">Friedl97</a>] for an in-depth look at this
-regular expression flavor.
-</p></li><li><p>
-String
-</p><p>
-The <span><b class="guilabel">String</b></span> text field is where you have to type a String that should
-be matched by the specified regular expression. This text field is initially empty; you
-have to enter a String in order to be able to test the regular expression.
-</p></li></ul></div><p>
-Once you have setup up the text fields you can either use the <span><b class="guibutton">Test</b></span>
-button to soley perform the pattern matching test or the <span><b class="guibutton">Apply</b></span> button
-which both performs testing and - on success - closes the dialog and updates the list.
-</p><p>
-You can always use the <span><b class="guibutton">Cancel</b></span> button to cancel editing. The dialog
-will be closed nd no changes made to the list.
-</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="inspector.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="inspector.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="messages.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4.4.&nbsp;Code Inspector&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;4.5.&nbsp;Messages</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/inspector.html b/utils/jalopy/docs/inspector.html
deleted file mode 100755 (executable)
index 75d5bf3..0000000
+++ /dev/null
@@ -1,187 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>4.4.&nbsp;Code Inspector</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="previous" href="misc.html" title="4.3.13.&nbsp;Misc"><link rel="next" href="inspector-naming.html" title="4.4.2.&nbsp;Naming"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index"><link rel="subsection" href="inspector.html#d0e5095" title="4.4.1.&nbsp;General"><link rel="subsection" href="inspector-naming.html" title="4.4.2.&nbsp;Naming">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4.4.&nbsp;Code Inspector</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="misc.html">Prev</a>&nbsp;</td><th width="60%" align="center">Chapter&nbsp;4.&nbsp;Settings</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="inspector-naming.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="inspector"></a>4.4.&nbsp;Code Inspector</h2></div></div><div></div></div><a class="indexterm" name="d0e5090"></a><p>
-Provides the configuration facility for the Jalopy Code Inspector. The Code Inspector is
-able to inspect Java source files for naming convention violations and possible code
-weaknesses.
-</p><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e5095"></a>4.4.1.&nbsp;General</h3></div></div><div></div></div><p>
-Lets you control the general Code Inspector settings.
-</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="d0e5100"></a>4.4.1.1.&nbsp;General</h4></div></div><div></div></div><div class="itemizedlist"><ul type="disc"><li><p>
-Enable
-</p><p>
-Lets you enable or disable the Code Inspector as a whole.
-</p></li></ul></div></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="d0e5109"></a>4.4.1.2.&nbsp;Tips</h4></div></div><div></div></div><p>
-Lets you selectively choose what actions should be performed during inspection. Moving the
-mouse pointer onto a checkbox displays a minimalistic tooltip after a short delay.
-</p><div class="itemizedlist"><ul type="disc"><li><p>
-Tip 1 - Don't substitute another type for <tt class="classname">Object</tt> in the equals declaration
-</p><p>
-For a detailed discussion see <span class="emphasis"><em>Effective Java</em></span> [<a href="bi01.html#bloch01">Bloch01</a>], pp. 35.
-</p></li><li><p>
-Tip 2 - Object the general contract when overriding <tt class="literal">equals</tt>
-</p><p>
-For a detailed discussion see <span class="emphasis"><em>Effective Java</em></span> [<a href="bi01.html#bloch01">Bloch01</a>], pp. 25.
-</p></li><li><p>
-Tip 3 - Always override <tt class="literal">hashCode</tt> when you override <tt class="literal">equals</tt>
-</p><p>
-For a detailed discussion see <span class="emphasis"><em>Effective Java</em></span> [<a href="bi01.html#bloch01">Bloch01</a>], pp. 36.
-</p></li><li><p>
-Tip 4 - Always override <tt class="literal">equals</tt> when you override <tt class="literal">hashCode</tt>
-</p></li><li><p>
-Tip 5 - Always override <tt class="literal">toString</tt>
-</p><p>
-For a detailed discussion see <span class="emphasis"><em>Effective Java</em></span> [<a href="bi01.html#bloch01">Bloch01</a>], pp. 42.
-</p></li><li><p>
-Tip 6 - Use interfaces only to define types
-</p><p>
-For a detailed discussion see <span class="emphasis"><em>Effective Java</em></span> [<a href="bi01.html#bloch01">Bloch01</a>], pp. 89.
-</p></li><li><p>
-Tip 7 - Replace structures with classes
-</p><p>
-For a detailed discussion see <span class="emphasis"><em>Effective Java</em></span> [<a href="bi01.html#bloch01">Bloch01</a>], pp. 97.
-</p></li><li><p>
-Tip 8 - Return zero-length arrays, not <tt class="literal">nulls</tt>
-</p><p>
-For a detailed discussion see <span class="emphasis"><em>Effective Java</em></span> [<a href="bi01.html#bloch01">Bloch01</a>], pp. 134.
-</p></li><li><p>
-Tip 9 - Adhere to generally accepted naming conventions
-</p><p>
-For a detailed discussion see <span class="emphasis"><em>Effective Java</em></span> [<a href="bi01.html#bloch01">Bloch01</a>], pp. 165.
-</p></li><li><p>
-Tip 10 - Refer to objects by their interfaces
-</p><p>
-For a detailed discussion see <span class="emphasis"><em>Effective Java</em></span> [<a href="bi01.html#bloch01">Bloch01</a>], pp. 156.
-</p></li><li><p>
-Tip 11 - Never declare that a method "throws Exception"
-</p><p>
-For a detailed discussion see <span class="emphasis"><em>Effective Java</em></span> [<a href="bi01.html#bloch01">Bloch01</a>], pp. 181.
-</p></li><li><p>
-Tip 12 - Never declare that a method "throws Throwable"
-</p><p>
-For a detailed discussion see <span class="emphasis"><em>Effective Java</em></span> [<a href="bi01.html#bloch01">Bloch01</a>], pp. 181.
-</p></li><li><p>
-Tip 13 - Don't ignore exceptions
-</p><p>
-For a detailed discussion see <span class="emphasis"><em>Effective Java</em></span> [<a href="bi01.html#bloch01">Bloch01</a>], pp. 187.
-</p></li><li><p>
-Tip 14 - Never invoke <tt class="literal">wait</tt> outside a loop
-</p><p>
-For a detailed discussion see <span class="emphasis"><em>Effective Java</em></span> [<a href="bi01.html#bloch01">Bloch01</a>], pp. 201.
-</p></li><li><p>
-Tip 15 - Avoid thread groups
-</p><p>
-For a detailed discussion see <span class="emphasis"><em>Effective Java</em></span> [<a href="bi01.html#bloch01">Bloch01</a>], pp. 211.
-</p></li><li><p>
-Tip 16 - Document collection types
-</p><p>
-As long as there are no strong-typed collections (a.k.a. Java Generics support) available,
-it is best to document the object type of the items hold by a collection.
-</p><div class="example"><a name="inspector-tip16"></a><p class="title"><b>Example&nbsp;4.154.&nbsp;Collection comment</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-private static final List _favorableTypes = new ArrayList(20); // List of &lt;String&gt;
-</pre></td></tr></table></div><p></p></li><li><p>
-Tip 17 - Adhere to naming convention for collection types
-</p><p>
-If you use comments to document the object type of collection items, you should conform to
-a generally accepted naming convention.
-</p></li><li><p>
-Tip 18 - Avoid empty <tt class="literal">finally</tt> blocks
-</p><p>
-Empty <tt class="literal">finally</tt> blocks are of no use and may indicate programmer errors.
-</p><div class="example"><a name="inspector-tip18"></a><p class="title"><b>Example&nbsp;4.155.&nbsp;Empty <tt class="literal">finally</tt> block</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-Writer writer = null;
-
-try
-{
-    writer = new BufferedWriter(new FileWriter(file));
-    write.write(data);
-}
-catch (IOException ex)
-{
-    System.err.println("file could not be written -- " + file);
-}
-finally
-{
-}
-</pre></td></tr></table></div><p>
-The programmer certainly wanted to close the <tt class="classname">Writer</tt> in the
-<tt class="literal">finally</tt> block to ensure that allocated system resources will be freed.
-</p></li><li><p>
-Tip 19 - Avoid variable shadowing
-</p><p>
-Variable shadowing should be avoided on general principle, as it tends to be confusing.
-</p><p>
-For more information about shadowing, see the
-Java Developer Connection (JDC) Tech Tips, October 10, 2000
-(<a href="http://developer.java.sun.com/developer/TechTips/2000/tt1010.html#tip2" target="_top">
-http://developer.java.sun.com/developer/TechTips/2000/tt1010.html#tip2</a>, subscription needed) or
-section 6.3.2, "Obscured Declarations," section 7.5.2,
-"Type-Import-on-Demand Declaration," section 8.4.6, "Inheritance, Overriding, and Hiding,"
-section 8.4.8.5, "Example: Invocation of Hidden Class Methods," and section 14.4.3,
-"Shadowing of Names by Local variables" in "The Java Language Specification Second
-Edition" by Gosling, Joy, Steele, and Bracha
-(<a href="http://java.sun.com/docs/books/jls/" target="_top">http://java.sun.com/docs/books/jls/)</a>.
-</p></li><li><p>
-Tip 20 - Add <span class="emphasis"><em>NOI18N</em></span> comment for String literals
-</p><p>
-Enabling this tip will cause warnings for all String literals without associated
-<tt class="literal">/* NOI18N */</tt> comment.
-</p><p>
-Internationalizing Java applications is often done with nifty tools that use marker
-comments to indicate that a given String literal should not be considered for localization.
-Most tools (at least the ones I know of) use trailing single-line comments which may not
-be very robust for processing with a formatting tool such as Jalopy. In contrast the author
-uses a multi-line comment of the form <tt class="literal">/* NOI18N */</tt> that gets directly
-placed after a String literal and will therefore always stuck with it.
-</p><div class="example"><a name="inspector-tip20"></a><p class="title"><b>Example&nbsp;4.156.&nbsp;$NON-NLS-1$ comment</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-FileDialog dialog = new FileDialog(this,
-    ResourceBundle.getBundle(BUNDLE_NAME)
-    .getString("BTN_SAVE_AS", FileDialog.SAVE); //$NON-NLS-1$
-</pre></td></tr></table></div><p>
-This trailing comment could be easily moved away from its String literal during formatting
-which would result in an unwanted notice on successive internationalization runs.
-</p><div class="example"><a name="inspector-tip20a"></a><p class="title"><b>Example&nbsp;4.157.&nbsp;$NON-NLS-1$ comment</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-FileDialog dialog =
-    new FileDialog(this,
-                   ResourceBundle.getBundle(BUNDLE_NAME).
-                                  getString("BTN_SAVE_AS",
-                   FileDialog.SAVE); //$NON-NLS-1$
-</pre></td></tr></table></div><p></p><div class="example"><a name="inspector-tip20b"></a><p class="title"><b>Example&nbsp;4.158.&nbsp;NOI18N comment</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-FileDialog dialog =
-    new FileDialog(this,
-                   ResourceBundle.getBundle(BUNDLE_NAME).
-                                  getString("BTN_SAVE_AS" /* NOI18N */),
-                   FileDialog.SAVE);
-</pre></td></tr></table></div><p></p></li></ul></div></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="misc.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="settings.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="inspector-naming.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4.3.13.&nbsp;Misc&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;4.4.2.&nbsp;Naming</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/installation.html b/utils/jalopy/docs/installation.html
deleted file mode 100755 (executable)
index f95ea66..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>Chapter&nbsp;1.&nbsp;Installation</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="previous" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="next" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index"><link rel="subsection" href="installation.html#installation-requirements" title="1.1.&nbsp;System requirements"><link rel="subsection" href="installation.html#installation-installation" title="1.2.&nbsp;Installing Jalopy">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter&nbsp;1.&nbsp;Installation</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="part-core.html">Prev</a>&nbsp;</td><th width="60%" align="center">Part&nbsp;I.&nbsp;Jalopy core</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="build.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="installation"></a>Chapter&nbsp;1.&nbsp;Installation</h2></div></div><div></div></div><a class="indexterm" name="d0e665"></a><p>
-Provides a quick introduction on how to install a binary Jalopy distribution.
-</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="installation-requirements"></a>1.1.&nbsp;System requirements</h4></div></div><div></div></div><a class="indexterm" name="d0e675"></a><p>
-Jalopy requires a properly configured JDK or JRE version 1.3 or later on
-your system.
-</p><p><a name="installation-dependencies"></a>
-Jalopy depends on and comes with several freely available Java libraries. For more
-information regarding this 3rd party libraries refer to <a href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies">Appendix&nbsp;A, <i>Library Dependencies</i></a>.
-</p><a class="indexterm" name="d0e684"></a></div><div class="caution" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Incompatibility with Sun JDK 1.4</h3><p>
-The contained Javadoc parser may not work properly under Sun JDK 1.4. Refer to
-<a href="javadoc.html" title="4.3.9.&nbsp;Javadoc">Section&nbsp;4.3.9, &#8220;Javadoc&#8221;</a> for more information regarding this issue.
-</p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="installation-installation"></a>1.2.&nbsp;Installing Jalopy</h4></div></div><div></div></div><a class="indexterm" name="d0e697"></a><p>
-Installation depends on the distribution you received. Please refer to the individual
-Plug-in chapters in <a href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins">Part&nbsp;II, &#8220;Plug-ins&#8221;</a> for detailed information.
-</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="part-core.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="part-core.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="build.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Part&nbsp;I.&nbsp;Jalopy core&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;Chapter&nbsp;2.&nbsp;Building</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/introduction.html b/utils/jalopy/docs/introduction.html
deleted file mode 100755 (executable)
index a9d1724..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>Introduction</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="manual.html" title="Jalopy User Manual"><link rel="previous" href="acknowledge.html" title="Acknowledgements"><link rel="next" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Introduction</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="acknowledge.html">Prev</a>&nbsp;</td><th width="60%" align="center">&nbsp;</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="part-core.html">Next</a></td></tr></table><hr></div><div class="preface" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="introduction"></a>Introduction</h2></div></div><div></div></div><a class="indexterm" name="d0e637"></a><p>
-Jalopy is a source code formatting tool for the Sun Java Programming Language.
-It can insert and remove indentation, enforce brace styles, wrap lines, sort
-and group imports, add headers and footers, handle whitespace, insert/remove
-and correct Javadoc entries to match method signatures and much more.
-</p><p>
-If your development team can agree on a coding style, Jalopy can help you
-maintain it, without any browbeating or bloodletting. With a simple Ant target,
-you can format all the source into the style, as often as you like.
-</p><p>
-Jalopy is written in Java and there are several Plug-ins available to integrate
-the formatting engine into some of the more popular Java applications, including Ant,
-Eclipse, JBuilder, JDeveloper, jEdit and NetBeans/Sun ONE Studio.
-</p><p>
-Jalopy is
-"<span class="bold"><b><a href="http://opensource.org/docs/certification_mark.php" target="_top">OSI Certified Open Source Software</a></b></span>",
-released under a <a href="./license-bsd.html" target="_top">BSD License</a>.
-For the individual license terms of the provided Plug-ins, please refer to the
-different Plug-in chapters in <a href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins">Part&nbsp;II, &#8220;Plug-ins&#8221;</a>.
-</p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="acknowledge.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="manual.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="part-core.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Acknowledgements&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;Part&nbsp;I.&nbsp;Jalopy core</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/ix01.html b/utils/jalopy/docs/ix01.html
deleted file mode 100755 (executable)
index 1eb057d..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>Index</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="manual.html" title="Jalopy User Manual"><link rel="previous" href="bi01.html" title="Bibliography"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Index</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="bi01.html">Prev</a>&nbsp;</td><th width="60%" align="center">&nbsp;</th><td width="20%" align="right">&nbsp;</td></tr></table><hr></div><div class="index"><div class="titlepage"><div><div><h2 class="title"><a name="d0e7950"></a>Index</h2></div></div><div></div></div><div class="index"><div class="indexdiv"><h3>A</h3><dl><dt>Alignment, <a href="indentation.html#indentation-align">Align</a></dt><dd><dl><dt>Assignments, <a href="indentation.html#indentation-align-assign">Align</a></dt><dt>Method Def parameters, <a href="indentation.html#indentation-align-params">Align</a></dt><dt>Variables</dt><dd><dl><dt>assignments, <a href="indentation.html#indentation-align-assign">Align</a></dt><dt>identifiers, <a href="indentation.html#indentation-align-ident">Align</a></dt></dl></dd></dl></dd><dt>Ant, <a href="plugin-ant.html">Ant Plug-in task</a></dt><dd><dl><dt>taskdef, <a href="plugin-ant.html#plugin-ant-installation-installation">Installation</a></dt></dl></dd><dt>Apache Software License, <a href="license-apache.html">The Apache Software License, Version 1.1</a></dt><dt>Assignment operators, <a href="whitespace.html#padding-assign">Spaces around</a></dt><dt>Auto-correction, <a href="javadoc.html#javadoc-correct">General</a></dt></dl></div><div class="indexdiv"><h3>B</h3><dl><dt>Bitwise operators, <a href="whitespace.html#padding-bitwise">Spaces around</a></dt><dt>Blank lines, <a href="separation.html#blank-lines-package">General</a>, <a href="separation.html#separation-misc-left-curly">Misc</a></dt><dd><dl><dt>After left curly brace, <a href="separation.html#separation-misc-left-curly">Misc</a></dt><dt>Before right curly brace, <a href="separation.html#separation-misc-right-curly">Misc</a></dt><dt>Case blocks, <a href="separation.html#blank-lines-case">General</a></dt><dt>Classes, <a href="separation.html#blank-lines-classes">General</a></dt><dt>Control statements, <a href="separation.html#blank-lines-control">General</a></dt><dt>Interfaces, <a href="separation.html#blank-lines-interfaces">General</a></dt><dt>Javadoc, <a href="separation.html#blank-lines-javadoc">General</a></dt><dt>Last Import statement, <a href="separation.html#blank-lines-import">General</a></dt><dt>Methods/Constructors, <a href="separation.html#blank-lines-methods">General</a></dt><dt>Multi-line comments, <a href="separation.html#blank-lines-ml-comments">General</a></dt><dt>Package statement, <a href="separation.html#blank-lines-package">General</a></dt><dt>Single-line comments, <a href="separation.html#blank-lines-sl-comments">General</a></dt><dt>Statement blocks, <a href="separation.html#blank-lines-blocks">General</a></dt><dt>Variable declarations, <a href="separation.html#blank-lines-declarations">General</a></dt></dl></dd><dt>Braces, <a href="printer.html#braces">Braces</a>, <a href="whitespace.html#padding-braces">Spaces around</a></dt><dd><dl><dt>cuddle, <a href="printer.html#braces-empty-cuddle">Empty braces</a></dt><dt>Empty, <a href="printer.html#braces-empty">Empty braces</a></dt><dt>empty, <a href="printer.html#braces-empty-statement">Empty braces</a></dt><dt>insert, <a href="printer.html#braces-insert">Insert braces</a></dt><dt>padding, <a href="whitespace.html#padding-braces">Spaces around</a></dt><dt>remove, <a href="printer.html#braces-remove">Remove braces</a></dt><dt>style, <a href="printer.html#braces-style">General</a></dt><dd><dl><dt>C, <a href="printer.html#braces-style-c">Styles</a></dt><dt>custom, <a href="printer.html#braces-style-custom">Styles</a></dt><dt>GNU, <a href="printer.html#braces-style-c">Styles</a></dt><dt>Sun, <a href="printer.html#braces-style-sun">Styles</a></dt></dl></dd><dt>whitespace, <a href="printer.html#braces-whitespace">Whitespace</a></dt><dt>wrapping, <a href="printer.html#braces-wrapping">Wrapping</a></dt></dl></dd><dt>Brackets, <a href="whitespace.html#padding-brackets">Spaces around</a></dt><dd><dl><dt>padding, <a href="whitespace.html#padding-brackets">Spaces around</a></dt></dl></dd><dt>Build, <a href="build.html">Building</a></dt><dd><dl><dt>Ant, <a href="build.html#build-prerequisites">Prerequisites</a></dt><dt>CVS, <a href="build.html#build-prerequisites">Prerequisites</a></dt><dt>DocBook, <a href="build.html#build-prerequisites">Prerequisites</a></dt><dt>Prerequisites, <a href="build.html#build-prerequisites">Prerequisites</a></dt><dt>XSLT, <a href="build.html#build-prerequisites">Prerequisites</a></dt></dl></dd></dl></div><div class="indexdiv"><h3>C</h3><dl><dt>Chunks, <a href="separation.html#chunks">Chunks</a></dt><dd><dl><dt>By Blank lines, <a href="separation.html#chunks-blank-lines">Chunks</a></dt><dt>By comments, <a href="separation.html#chunks-comments">Chunks</a></dt></dl></dd><dt>Code Convention, <a href="settings.html#code-convention">General</a></dt><dt>Code Inspector, <a href="inspector.html">Code Inspector</a></dt><dd><dl><dt>Naming, <a href="inspector-naming.html">Naming</a></dt></dl></dd><dt>Comma, <a href="whitespace.html#whitespace-after-comma">Space after</a></dt><dt>Command line, <a href="plugin-console-usage.html#synopsis">Synopsis</a></dt><dd><dl><dt>arguments, <a href="plugin-console-usage.html#usage-options">Synopsis</a></dt><dt>options, <a href="plugin-console-usage.html#usage-options">Synopsis</a></dt></dl></dd><dt>Comment</dt><dd><dl><dt>Header, <a href="header.html">Header</a></dt><dt>trailing, <a href="indentation.html#indentation-sizes-trailing">Sizes</a></dt></dl></dd><dt>Comment-based history, <a href="misc.html#history-comment">History</a></dt><dt>Comments</dt><dd><dl><dt>for history, <a href="misc.html#history-comment">History</a></dt><dt>Javadoc, <a href="comments.html#comments-javadoc">Comments</a>, <a href="javadoc.html#javadoc-correct">General</a></dt><dt>Javadoc comments, <a href="comments.html#comments-remove-javadoc">Remove</a>, <a href="javadoc.html#javadoc-format">General</a></dt><dt>Multi-line, <a href="comments.html#comments-multi">Comments</a></dt><dt>Multi-line comments, <a href="comments.html#comments-remove-multi">Remove</a>, <a href="comments.html#comments-format-multi">Format</a></dt><dt>Pragma, <a href="comments.html#comments-pragma">Comments</a></dt><dt>Separator, <a href="comments.html#comments-separator">Comments</a></dt><dt>Single-line, <a href="comments.html#comments-single">Comments</a></dt><dt>Single-line comments, <a href="comments.html#comments-remove-single">Remove</a></dt></dl></dd><dt>Common Public License Version, <a href="license-common-public.html">Common Public License Version 1.0</a></dt><dt>Compatibility</dt><dd><dl><dt>source, <a href="settings.html#general-compliance">Compliance</a></dt></dl></dd><dt>Compliance, <a href="settings.html#general-compliance">Compliance</a></dt><dt>Console, <a href="plugin-console.html">Console Application</a></dt><dt>Continuation, <a href="indentation.html#indentation-continuation">Continuation</a></dt><dt>Cuddled braces, <a href="printer.html#braces-empty-cuddle">Empty braces</a></dt></dl></div><div class="indexdiv"><h3>D</h3><dl><dt>Deep indent, <a href="wrapping.html#wrap-sizes-deep">General</a></dt><dt>Dependencies, <a href="installation.html#installation-dependencies">System requirements</a></dt></dl></div><div class="indexdiv"><h3>E</h3><dl><dt>Eclipse, <a href="plugin-eclipse.html">Eclipse Plug-in</a></dt><dt>Empty braces, <a href="printer.html#braces-empty">Empty braces</a></dt><dt>Empty statement, <a href="printer.html#braces-empty-statement">Empty braces</a></dt><dt>Environment, <a href="environment.html">Environment</a></dt><dt>Environment variables, <a href="environment.html">Environment</a></dt><dt>Extension, <a href="plugin-jdev.html">JDeveloper Extension</a></dt></dl></div><div class="indexdiv"><h3>F</h3><dl><dt>File-based history, <a href="misc.html#history-file">History</a></dt><dt>Footer, <a href="footer.html">Footer</a></dt></dl></div><div class="indexdiv"><h3>G</h3><dl><dt>GNU Free Documentation License, <a href="license-gnu-doc.html">GNU Free Documentation License Version 1.1, March 2000</a></dt><dt>GNU GENERAL PUBLIC LICENSE, <a href="license-gnu.html">GNU GENERAL PUBLIC LICENSE Version 2, June 1991</a></dt><dt>Grouping depth, <a href="imports.html#imports-grouping-depth">Grouping</a></dt></dl></div><div class="indexdiv"><h3>H</h3><dl><dt>Header, <a href="header.html">Header</a></dt><dd><dl><dt>Smart Mode, <a href="header.html#header-smart-mode">General</a></dt></dl></dd><dt>History, <a href="misc.html#misc-history">History</a></dt><dd><dl><dt>comment, <a href="misc.html#history-comment">History</a></dt><dt>file, <a href="misc.html#history-file">History</a></dt></dl></dd></dl></div><div class="indexdiv"><h3>I</h3><dl><dt>Imports, <a href="imports.html">Imports</a></dt><dd><dl><dt>collapse, <a href="imports.html#import-optimization-collapse">Optimize</a></dt><dt>expand, <a href="imports.html#import-optimization-expand">Optimize</a></dt><dt>grouping, <a href=""></a></dt><dt>on-demand, <a href="imports.html#imports-on-demand">Optimize</a></dt><dt>optimization, <a href="imports.html#import-optimization">Optimize</a></dt><dt>single-type, <a href="imports.html#import-optimization-collapse">Optimize</a></dt><dt>sorting, <a href="imports.html#imports-sorting">General</a></dt><dd><dl><dt>grouping depth, <a href="imports.html#imports-grouping-depth">Grouping</a></dt></dl></dd></dl></dd><dt>Indentation, <a href="indentation.html">Indentation</a></dt><dd><dl><dt>Aligment, <a href="indentation.html#indentation-align">Align</a></dt><dt>Continutation, <a href="indentation.html#indentation-continuation">Continuation</a></dt><dt>sizes, <a href="indentation.html#indentation-sizes">Sizes</a></dt><dd><dl><dt>Continuation, <a href="indentation.html#indentation-sizes-continuation">Sizes</a></dt><dt>extends, <a href="indentation.html#indentation-sizes-extends">Sizes</a></dt><dt>General, <a href="indentation.html#indentation-sizes-general">Sizes</a></dt><dt>implements, <a href="indentation.html#indentation-sizes-implements">Sizes</a></dt><dt>Leading, <a href="indentation.html#indentation-sizes-leading">Sizes</a></dt><dt>Tabular, <a href="indentation.html#indentation-sizes-tab">Sizes</a></dt><dt>throws, <a href="indentation.html#indentation-sizes-throws">Sizes</a></dt><dt>Trailing comment, <a href="indentation.html#indentation-sizes-trailing">Sizes</a></dt></dl></dd></dl></dd><dt>Installation, <a href="installation.html">Installation</a>, <a href="installation.html#installation-installation">Installing Jalopy</a></dt><dd><dl><dt>Ant, <a href="plugin-ant.html#plugin-ant-installation-installation">Installation</a>, <a href="plugin-console.html#plugin-console-installation-installation">Installation</a></dt><dt>Eclipse Plug-in, <a href="plugin-eclipse.html#plugin-eclipse-installation-installation">Installation</a></dt><dt>JBuilder OpenTool, <a href="plugin-jbuilder.html#plugin-jbuilder-installation-installation">Installation</a></dt><dt>JDeveloper Plug-in, <a href="plugin-jdev.html#plugin-jdev-installation-installation">Installation</a></dt><dt>jEdit Plug-in, <a href="plugin-jedit.html#plugin-jedit-installation-installation">Installation</a></dt><dt>NetBeans Module, <a href="plugin-netbeans.html#plugin-netbeans-installation-installation">Installation</a></dt><dt>Sun ONE Studio Module, <a href="plugin-netbeans.html#plugin-netbeans-installation-installation">Installation</a></dt></dl></dd><dt>Interpolation, <a href="environment.html">Environment</a></dt><dt>Introduction, <a href="introduction.html">Introduction</a></dt></dl></div><div class="indexdiv"><h3>J</h3><dl><dt>Javadoc comments, <a href="comments.html#comments-javadoc">Comments</a>, <a href="comments.html#comments-remove-javadoc">Remove</a>, <a href="javadoc.html#javadoc-format">General</a></dt><dt>JBuilder, <a href="plugin-jbuilder.html">JBuilder OpenTool</a></dt><dt>JDeveloper, <a href="plugin-jdev.html">JDeveloper Extension</a></dt><dt>jEdit, <a href="plugin-jedit.html">jEdit Plug-in</a></dt></dl></div><div class="indexdiv"><h3>L</h3><dl><dt>Label, <a href="wrapping.html#wrap-always-pane">Wrap always</a></dt><dd><dl><dt>indent, <a href="indentation.html#indentation-misc-label">Misc</a></dt><dt>wrap, <a href="wrapping.html#wrap-always-pane">Wrap always</a></dt></dl></dd><dt>Licenses</dt><dd><dl><dt>ANTLR, <a href="license-antlr.html">ANTLR SOFTWARE RIGHTS</a></dt><dt>Apache Software License, <a href="license-apache.html">The Apache Software License, Version 1.1</a></dt><dt>BSD, <a href="license-bsd.html">The Jalopy BSD License</a></dt><dt>Common Public License Version, <a href="license-common-public.html">Common Public License Version 1.0</a></dt><dt>GNU Free Documentation License, <a href="license-gnu-doc.html">GNU Free Documentation License Version 1.1, March 2000</a></dt><dt>GNU GENERAL PUBLIC LICENSE, <a href="license-gnu.html">GNU GENERAL PUBLIC LICENSE Version 2, June 1991</a></dt><dt>Sun Public License Version, <a href="license-sun-public.html">SUN PUBLIC LICENSE Version 1.0</a></dt></dl></dd><dt>Line length, <a href="wrapping.html#wrap-sizes-line">General</a></dt><dt>Line wrapping, <a href="wrapping.html">Wrapping</a></dt><dt>Logical operators, <a href="whitespace.html#padding-logical">Spaces around</a></dt></dl></div><div class="indexdiv"><h3>M</h3><dl><dt>Mathematical operators, <a href="whitespace.html#padding-mathematical">Spaces around</a></dt><dt>Method Def parameters, <a href="indentation.html#indentation-align-params">Align</a>, <a href="wrapping.html#wrap-method-params">Wrap always</a></dt><dt>Module</dt><dd><dl><dt>NetBeans, <a href="plugin-netbeans.html">NetBeans/Sun ONE Studio module</a></dt><dt>Sun ONE Studio, <a href="plugin-netbeans.html">NetBeans/Sun ONE Studio module</a></dt></dl></dd><dt>Multi-line comments, <a href="comments.html#comments-multi">Comments</a>, <a href="comments.html#comments-remove-multi">Remove</a>, <a href="comments.html#comments-format-multi">Format</a></dt></dl></div><div class="indexdiv"><h3>N</h3><dl><dt>Naming, <a href="inspector-naming.html">Naming</a></dt><dt>NetBeans, <a href="plugin-netbeans.html">NetBeans/Sun ONE Studio module</a></dt></dl></div><div class="indexdiv"><h3>O</h3><dl><dt>OpenTool, <a href="plugin-jbuilder.html">JBuilder OpenTool</a></dt><dt>Operators</dt><dd><dl><dt>Assignment, <a href="whitespace.html#padding-assign">Spaces around</a></dt><dt>Bitwise, <a href="whitespace.html#padding-bitwise">Spaces around</a></dt><dt>Logical, <a href="whitespace.html#padding-logical">Spaces around</a></dt><dt>Mathematical, <a href="whitespace.html#padding-mathematical">Spaces around</a></dt><dt>Relational, <a href="whitespace.html#padding-relational">Spaces around</a></dt><dt>Shift, <a href="whitespace.html#padding-shift">Spaces around</a></dt><dt>wrap after, <a href="wrapping.html#wrap-after">Policy</a></dt><dt>wrap before, <a href="wrapping.html#wrap-before">Policy</a></dt></dl></dd></dl></div><div class="indexdiv"><h3>P</h3><dl><dt>Padding, <a href="whitespace.html#padding">Spaces around</a></dt><dt>Parentheses, <a href="whitespace.html#whitespace-before-parentheses">Space before</a>, <a href="whitespace.html#padding-parentheses">Spaces around</a>, <a href="misc.html#paren-add">Misc</a></dt><dd><dl><dt>insert around expressions, <a href="misc.html#paren-add">Misc</a></dt><dt>padding, <a href="whitespace.html#padding-parentheses">Spaces around</a></dt></dl></dd><dt>Plug-in</dt><dd><dl><dt>Ant, <a href="plugin-ant.html">Ant Plug-in task</a></dt><dt>Console, <a href="plugin-console.html">Console Application</a></dt><dt>Eclipse, <a href="plugin-eclipse.html">Eclipse Plug-in</a></dt><dt>JBuilder, <a href="plugin-jbuilder.html">JBuilder OpenTool</a></dt><dt>JDeveloper, <a href="plugin-jdev.html">JDeveloper Extension</a></dt><dt>jEdit, <a href="plugin-jedit.html">jEdit Plug-in</a></dt><dt>NetBeans, <a href="plugin-netbeans.html">NetBeans/Sun ONE Studio module</a></dt></dl></dd><dt>Policy</dt><dd><dl><dt>Wrapping, <a href="wrapping.html#wrap-policy">Policy</a></dt></dl></dd><dt>Pragma comments, <a href="comments.html#comments-pragma">Comments</a></dt><dt>Printer, <a href="printer.html">Printer</a></dt><dt>Projects, <a href="project.html">Projects</a></dt></dl></div><div class="indexdiv"><h3>R</h3><dl><dt>Regular expression</dt><dd><dl><dt>Tester, <a href="inspector-naming.html#inspector-naming-tester">Regular expression tester</a></dt></dl></dd><dt>Regular expression tester, <a href="inspector-naming.html#inspector-naming-tester">Regular expression tester</a></dt><dt>Regular expressions, <a href="plugin-console-usage.html#usage-options">Synopsis</a></dt><dt>Relational operators, <a href="whitespace.html#padding-relational">Spaces around</a></dt></dl></div><div class="indexdiv"><h3>S</h3><dl><dt>Semicolon, <a href="whitespace.html#whitespace-after-semi">Space after</a></dt><dt>Separator comment, <a href="separation.html#separation-comment">Comments</a></dt><dt>Separator comments, <a href="comments.html#comments-separator">Comments</a></dt><dt>Serial version UID, <a href="misc.html#misc-insert-uid">Misc</a></dt><dt>Settings, <a href="settings.html">Settings</a></dt><dt>Settings directory, <a href="settings.html#settings-directory">Settings</a></dt><dt>Shift operators, <a href="whitespace.html#padding-shift">Spaces around</a></dt><dt>Single-line comments, <a href="comments.html#comments-single">Comments</a>, <a href="comments.html#comments-remove-single">Remove</a></dt><dt>Software License, <a href="license-bsd.html">The Jalopy BSD License</a>, <a href="license-antlr.html">ANTLR SOFTWARE RIGHTS</a></dt><dt>Source compatibility, <a href="settings.html#general-compliance">Compliance</a></dt><dt>Sun ONE Studio, <a href="plugin-netbeans.html">NetBeans/Sun ONE Studio module</a></dt><dt>Sun Public License, <a href="license-sun-public.html">SUN PUBLIC LICENSE Version 1.0</a></dt><dt>Synopsis, <a href="plugin-console-usage.html#synopsis">Synopsis</a></dt><dt>System requirements, <a href="installation.html#installation-requirements">System requirements</a></dt></dl></div><div class="indexdiv"><h3>T</h3><dl><dt>Tabs</dt><dd><dl><dt>size, <a href="indentation.html#indentation-sizes-tab">Sizes</a></dt><dt>use, <a href="indentation.html#indentation-misc-tab">Misc</a></dt></dl></dd><dt>taskdef, <a href="plugin-ant.html#plugin-ant-installation-installation">Installation</a></dt><dt>Trailing Comment, <a href="indentation.html#indentation-sizes-trailing">Sizes</a></dt><dt>Type cast, <a href="whitespace.html#whitespace-after-cast">Space after</a></dt></dl></div><div class="indexdiv"><h3>U</h3><dl><dt>Usage, <a href="usage.html">Usage</a>, <a href="plugin-console-usage.html#synopsis">Synopsis</a></dt><dd><dl><dt>examples, <a href="plugin-console-usage.html#plugin-console-usage-example">Examples</a></dt></dl></dd></dl></div><div class="indexdiv"><h3>V</h3><dl><dt>Variables</dt><dd><dl><dt>Environment, <a href="environment.html">Environment</a></dt><dt>Interpolation, <a href="environment.html">Environment</a></dt></dl></dd></dl></div><div class="indexdiv"><h3>W</h3><dl><dt>White Space, <a href="whitespace.html">White Space</a></dt><dt>Whitespace</dt><dd><dl><dt>after, <a href="whitespace.html#space-after">Space after</a></dt><dd><dl><dt>comma, <a href="whitespace.html#whitespace-after-comma">Space after</a></dt><dt>semicolon, <a href="whitespace.html#whitespace-after-semi">Space after</a></dt><dt>type cast, <a href="whitespace.html#whitespace-after-cast">Space after</a></dt></dl></dd><dt>before, <a href="whitespace.html#whitespace-before">Space before</a></dt><dd><dl><dt>braces, <a href="whitespace.html#whitespace-before-braces">Space before</a></dt><dt>brackets, <a href="whitespace.html#whitespace-before-brackets">Space before</a></dt><dt>colon, <a href="whitespace.html#whitespace-before-colon">Space before</a></dt><dt>parentheses, <a href="whitespace.html#whitespace-before-parentheses">Space before</a></dt></dl></dd><dt>padding, <a href="whitespace.html#padding">Spaces around</a></dt><dd><dl><dt>Assignment operators, <a href="whitespace.html#padding-assign">Spaces around</a></dt><dt>Bitwise operators, <a href="whitespace.html#padding-bitwise">Spaces around</a></dt><dt>Braces, <a href="whitespace.html#padding-braces">Spaces around</a></dt><dt>Brackets, <a href="whitespace.html#padding-brackets">Spaces around</a></dt><dt>Logical operators, <a href="whitespace.html#padding-logical">Spaces around</a></dt><dt>Mathematical operators, <a href="whitespace.html#padding-mathematical">Spaces around</a></dt><dt>Parentheses, <a href="whitespace.html#padding-parentheses">Spaces around</a></dt><dt>Relational operators, <a href="whitespace.html#padding-relational">Spaces around</a></dt><dt>Shift operators, <a href="whitespace.html#padding-shift">Spaces around</a></dt></dl></dd></dl></dd><dt>Wrapping, <a href="wrapping.html">Wrapping</a></dt><dd><dl><dt>Deep indent, <a href="wrapping.html#wrap-sizes-deep">General</a></dt><dt>Line length, <a href="wrapping.html#wrap-sizes-line">General</a></dt><dt>Method Def parameters, <a href="wrapping.html#wrap-method-params">Wrap always</a></dt><dt>Policy, <a href="wrapping.html#wrap-policy">Policy</a></dt></dl></dd></dl></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="bi01.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="manual.html">Up</a></td><td width="40%" align="right">&nbsp;</td></tr><tr><td width="40%" align="left" valign="top">Bibliography&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/javadoc.html b/utils/jalopy/docs/javadoc.html
deleted file mode 100755 (executable)
index 9e4814b..0000000
+++ /dev/null
@@ -1,170 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>4.3.9.&nbsp;Javadoc</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="printer.html" title="4.3.&nbsp;Printer"><link rel="previous" href="environment.html" title="4.3.8.&nbsp;Environment"><link rel="next" href="header.html" title="4.3.10.&nbsp;Header"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index"><link rel="subsection" href="javadoc.html#javadoc-general" title="4.3.9.1.&nbsp;General"><link rel="subsection" href="javadoc.html#javadoc-generation" title="4.3.9.2.&nbsp;Generation"><link rel="subsection" href="javadoc.html#javadoc-templates" title="4.3.9.3.&nbsp;Templates"><link rel="subsection" href="javadoc.html#javadoc-tags" title="4.3.9.4.&nbsp;Custom Tags">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4.3.9.&nbsp;Javadoc</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="environment.html">Prev</a>&nbsp;</td><th width="60%" align="center">4.3.&nbsp;Printer</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="header.html">Next</a></td></tr></table><hr></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="javadoc"></a>4.3.9.&nbsp;Javadoc</h3></div></div><div></div></div><p>
-Let's you control all Javadoc-related options. Refer to the
-<a href="http://java.sun.com/j2se/javadoc/index.html" target="_top">Javadoc home page</a>
-for more information about Sun's Javadoc tool.
-</p><div class="caution" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Incompatibility with Sun JDK 1.4</h3><p>
-Note that the Javadoc parsing for Jalopy may not work properly under Sun
-JDK 1.4 with the Client JVM. This seems to be a problem with the garbage
-collection. You may want to enable the Server JVM as a workaround.
-</p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="javadoc-general"></a>4.3.9.1.&nbsp;General</h4></div></div><div></div></div><p>
-Controls the general handling of Javadoc comments.
-</p><div class="itemizedlist"><ul type="disc"><li><p><a name="javadoc-format"></a>
-Parse/Format comments
-</p><a class="indexterm" name="d0e4420"></a><a class="indexterm" name="d0e4425"></a><p>
-Enables the parsing of existing Javadoc comments which in turn leads to a
-reformatting of the original comment style during the printing.
-</p><p>
-The used parser mostly supports HTML 3.2 and is not loose in a sense most browsers
-are these days: tags not contained in the standard will produce errors. And you
-should always strive to produce well-formed HTML
-(it works for the <tt class="literal">&lt;p&gt;</tt>, <tt class="literal">&lt;li&gt;</tt>,
-<tt class="literal">&lt;dd&gt;</tt>, <tt class="literal">&lt;dt&gt;</tt> and <tt class="literal">&lt;dir&gt;</tt>
-tags, but anyway).
-</p><p>
-Don't forget that the standard HTML metacharacters, such as less and greater signs
-(<tt class="literal">&lt;</tt>, <tt class="literal">&gt;</tt>) or the ambersand (<tt class="literal">&amp;</tt>), ...
-and the commercial "at" sign (<tt class="literal">@</tt>) needs to be
-escaped if not used as part of another HTML or Javadoc tag.
-</p><div class="table"><a name="tab-character-entities"></a><p class="title"><b>Table&nbsp;4.2.&nbsp;Character entities</b></p><table summary="Character entities" border="0" style="border-collapse: collapse;border-top: 0.5pt solid ; border-bottom: 0.5pt solid ; border-left: 0.5pt solid ; border-right: 0.5pt solid ; "><colgroup><col><col><col><col></colgroup><thead><tr><th style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; ">Symbol</th><th style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; ">Numeric Entity</th><th style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; ">Named Entity</th><th style="border-bottom: 0.5pt solid ; ">Description</th></tr></thead><tbody><tr style="border-bottom: 0.5pt solid ; " valign="top"><td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; " align="center" valign="top">&amp;</td><td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; " align="center" valign="top">&amp;038;</td><td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; " align="center" valign="top">&amp;amp</td><td style="border-bottom: 0.5pt solid ; " valign="top">Ambersand</td></tr><tr style="border-bottom: 0.5pt solid ; " valign="top"><td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; " align="center" valign="top">&lt;</td><td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; " align="center" valign="top">&amp;060;</td><td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; " align="center" valign="top">&amp;lt;</td><td style="border-bottom: 0.5pt solid ; " valign="top">Less than</td></tr><tr style="border-bottom: 0.5pt solid ; " valign="top"><td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; " align="center" valign="top">&gt;</td><td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; " align="center" valign="top">&amp;062;</td><td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; " align="center" valign="top">&amp;gt;</td><td style="border-bottom: 0.5pt solid ; " valign="top">Greater than</td></tr><tr valign="top"><td style="border-right: 0.5pt solid ; " align="center" valign="top">@</td><td style="border-right: 0.5pt solid ; " align="center" valign="top">&amp;064;</td><td style="border-right: 0.5pt solid ; " valign="top">&nbsp;</td><td style="" valign="top">Commercial "at" sign</td></tr></tbody></table></div><p></p><div class="example"><a name="ex-escape-html"></a><p class="title"><b>Example&nbsp;4.145.&nbsp;Escaping characters in Javadoc comments</b></p><p>Don't use</p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="screen">
-/**
- * @author &lt;a href="mailto:first.last@company.com"&gt;first.last<span class="bold"><b>@</b></span>company.com&lt;/a&gt;
- */
-</pre></td></tr></table><p>But rather use</p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="screen">
-/**
- * @author &lt;a href="mailto:first.last@company.com"&gt;first.last<span class="bold"><b>&amp;064;</b></span>company.com&lt;/a&gt;
- */
-</pre></td></tr></table></div><p></p></li><li><p><a name="javadoc-correct"></a>
-Correct tags
-</p><a class="indexterm" name="d0e4534"></a><a class="indexterm" name="d0e4539"></a><a class="indexterm" name="d0e4542"></a><p>
-Enables the auto-insertion or -removal of missing and obsolete Javadoc tags (all but the <tt class="literal">@throws</tt> tag, see below) and
-the correction of misspelled Javadoc tag names.
-</p></li><li><p><a name="javadoc-correct-throws"></a>
-Correct @throws tags
-</p><p>
-Controls the auto-correction for <tt class="literal">@throws</tt> tags. If enabled,
-Jalopy enforces a distinct <tt class="literal">@throws</tt> tag for every exception
-thrown by a method/constructor. Thus, if a method only declares to throw an
-<tt class="classname">IOException</tt> but throws a <tt class="classname">FileNotFoundException</tt>
-(which is a subclass of the former) too, Jalopy will add a declaration for the latter.
-</p></li></ul></div></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="javadoc-generation"></a>4.3.9.2.&nbsp;Generation</h4></div></div><div></div></div><p>
-Controls the auto-generation of missing Javadoc comments.
-</p><div class="sect4" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="javadoc-generation-selection"></a>4.3.9.2.1.&nbsp;Element/Level</h5></div></div><div></div></div><div class="itemizedlist"><ul type="disc"><li><p>
-Element/Level
-</p><p>
-Lets you selectively enable the auto-generation of missing Javadoc comments for
-specific class elements and access levels.
-</p></li><li><p>
-Include inner classes
-</p><p>
-Enables the auto-generation feature for inner classes, too. The
-auto-generation does not apply to anonymous inner classes.
-</p></li></ul></div></div><div class="sect4" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="javadoc-misc"></a>4.3.9.2.2.&nbsp;Misc</h5></div></div><div></div></div><p>
-Let's you control miscellaneous Javadoc settings.
-</p><div class="itemizedlist"><ul type="disc"><li><p>
-Field comments in single line
-</p><p>
-Let's you specify how Javadoc comments of fields, that fit into one line, should be printed.
-</p><div class="example"><a name="ex-javadoc-field"></a><p class="title"><b>Example&nbsp;4.146.&nbsp;Field Javadoc comment</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-/**
- * What history policy should be used?
- */
-private History.Policy _historyPolicy = History.Policy.DISABLED;
-</pre></td></tr></table></div><p>
-If enabled, Javadoc comments for fields will be printed in a single line,
-if possible.
-</p><div class="example"><a name="ex-javadoc-field-short"></a><p class="title"><b>Example&nbsp;4.147.&nbsp;Field Javadoc comment (shortened)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-/** What history policy should be used? */
-private History.Policy _historyPolicy = History.Policy.DISABLED;
-</pre></td></tr></table></div><p>
-Note that this switch does not take affect for field template comments,
-as template are not parsed but inserted as-is.
-</p><p>
-Note further that the <a href="javadoc.html#javadoc-format">Javadoc parsing</a>
-must be enabled for this feature to work.
-</p></li></ul></div></div></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="javadoc-templates"></a>4.3.9.3.&nbsp;Templates</h4></div></div><div></div></div><p>
-Let's you define templates to be inserted for the different declaration elements.
-Each element (Class, Interface, Constructor, Method and Field) has its
-own template.
-</p><p>
-Depending on the element type, a template consists of up to five parts that
-together form a valid Javadoc comment. Note that the resulting comment will
-be inserted as-is, and it is your responsibility to define the templates
-in a consistent style.
-</p><p>
-You can use variable expressions throughout your templates. Read
-<a href="environment.html" title="4.3.8.&nbsp;Environment">Section&nbsp;4.3.8, &#8220;Environment&#8221;</a> for more information about this feature.
-</p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="javadoc-tags"></a>4.3.9.4.&nbsp;Custom Tags</h4></div></div><div></div></div><p>
-Allows the definition of custom Javadoc tags to aid the syntax checking of
-Javadoc comments, and enable the auto-correction of misspelled custom tag names.
-</p><div class="sect4" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="javadoc-tags-standard"></a>4.3.9.4.1.&nbsp;Standard Tags</h5></div></div><div></div></div><p>
-Allows the definition of custom Javadoc standard tag names. The current build-in Standard
-tags are:
-<tt class="literal">@author</tt>,
-<tt class="literal">@deprecated</tt>,
-<tt class="literal">@exception</tt>,
-<tt class="literal">@param</tt>,
-<tt class="literal">@return</tt>,
-<tt class="literal">@see</tt>,
-<tt class="literal">@serial</tt>,
-<tt class="literal">@serialData</tt>,
-<tt class="literal">@serialField</tt>,
-<tt class="literal">@since</tt>,
-<tt class="literal">@throws</tt>,
-<tt class="literal">@todo</tt>,
-<tt class="literal">@version</tt>
-</p><p>
-Use the <span><b class="guibutton">Add...</b></span> and <span><b class="guibutton">Remove</b></span> buttons
-to add or remove items from the list.
-</p><p>
-Valid standard tag names have the form
-<tt class="literal">@[a-zA-Z]+</tt>, e.g. <tt class="literal">@exclude</tt>.
-</p></div><div class="sect4" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="javadoc-tags-inline"></a>4.3.9.4.2.&nbsp;In-line Tags</h5></div></div><div></div></div><p>
-Allows the definition of custom Javadoc in-line tag names.
-The current build-in In-line tags are:
-<tt class="literal">@docRoot</tt>,
-<tt class="literal">@inheritDoc</tt>,
-<tt class="literal">@link</tt>,
-<tt class="literal">@linkPlain</tt>,
-<tt class="literal">@value</tt>
-</p><p>
-Use the <span><b class="guibutton">Add...</b></span> and <span><b class="guibutton">Remove</b></span> buttons
-to add or remove items from the list.
-</p><p>
-Valid in-line tag names have the form
-<tt class="literal">@[a-zA-Z]+</tt>, e.g. <tt class="literal">@mylink</tt>.
-</p></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="environment.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="printer.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="header.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4.3.8.&nbsp;Environment&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;4.3.10.&nbsp;Header</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/license-antlr.html b/utils/jalopy/docs/license-antlr.html
deleted file mode 100755 (executable)
index 5214ba5..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="manual.html" title="Jalopy User Manual"><link rel="previous" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="next" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="license-bsd.html">Prev</a>&nbsp;</td><th width="60%" align="center">&nbsp;</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="license-apache.html">Next</a></td></tr></table><hr></div><div class="appendix" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="license-antlr"></a>Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS</h2></div></div><div></div></div><a class="indexterm" name="d0e7201"></a><a class="indexterm" name="d0e7204"></a><p>
-ANTLR 1989-2000 Developed by jGuru.com (MageLang Institute),
-<a href="http://www.antlr.org" target="_top">http://www.ANTLR.org</a> and
-<a href="http://www.jguru.com" target="_top">http://www.jGuru.com</a>
-</p><p>
-We reserve no legal rights to the ANTLR -- it is fully in the
-public domain. An individual or company may do whatever
-they wish with source code distributed with ANTLR or the
-code generated by ANTLR, including the incorporation of
-ANTLR, or its output, into commerical software.
-</p><p>
-We encourage users to develop software with ANTLR. However,
-we do ask that credit is given to us for developing
-ANTLR. By "credit", we mean that if you use ANTLR or
-incorporate any source code into one of your programs
-(commercial product, research project, or otherwise) that
-you acknowledge this fact somewhere in the documentation,
-research report, etc... If you like ANTLR and have
-developed a nice tool with the output, please mention that
-you developed it using ANTLR. In addition, we ask that the
-headers remain intact in our source code. As long as these
-guidelines are kept, we expect to continue enhancing this
-system and expect to make other tools available as they are
-completed.
-</p><p>
-The primary ANTLR guy:
-</p><p>
-Terence Parr
-</p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="license-bsd.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="manual.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="license-apache.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Appendix&nbsp;B.&nbsp;The Jalopy BSD License&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/license-apache.html b/utils/jalopy/docs/license-apache.html
deleted file mode 100755 (executable)
index 840e7fd..0000000
+++ /dev/null
@@ -1,79 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="manual.html" title="Jalopy User Manual"><link rel="previous" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="next" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="license-antlr.html">Prev</a>&nbsp;</td><th width="60%" align="center">&nbsp;</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="license-gnu.html">Next</a></td></tr></table><hr></div><div class="appendix" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="license-apache"></a>Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1</h2></div></div><div></div></div><a class="indexterm" name="d0e7229"></a><a class="indexterm" name="d0e7232"></a><p>
-Copyright (C) 1999 The Apache Software Foundation. All rights reserved.
-</p><p>
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-</p><div class="orderedlist"><ol type="1"><li><p>
-Redistributions of  source code must  retain the above copyright  notice,
-this list of conditions and the following disclaimer.
-</p></li><li><p>
-Redistributions in binary form must reproduce the above copyright notice,
-this list of conditions and the following disclaimer in the documentation
-and/or other materials provided with the distribution.
-</p></li><li><p>
-The end-user documentation included with the redistribution, if any, must
-include  the following  acknowledgment:  "This product includes  software
-developed  by the  Apache Software Foundation  (http://www.apache.org/)."
-Alternately, this  acknowledgment may  appear in the software itself,  if
-and wherever such third-party acknowledgments normally appear.
-</p></li><li><p>
-The names "Ant" and  "Apache Software Foundation"  must not be used to
-endorse  or promote  products derived  from this  software without  prior
-written permission. For written permission, please contact
-apache@apache.org.
-</p></li><li><p>
-Products  derived from this software may not  be called "Apache", nor may
-"Apache" appear  in their name,  without prior written permission  of the
-Apache Software Foundation.
-</p></li></ol></div><p>
-  THIS SOFTWARE IS PROVIDED ''AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES,
-  INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
-  FITNESS  FOR A PARTICULAR  PURPOSE ARE  DISCLAIMED.  IN NO  EVENT SHALL  THE
-  APACHE SOFTWARE  FOUNDATION  OR ITS CONTRIBUTORS  BE LIABLE FOR  ANY DIRECT,
-  INDIRECT, INCIDENTAL, SPECIAL,  EXEMPLARY, OR CONSEQUENTIAL  DAMAGES
-  (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT  OF SUBSTITUTE GOODS OR SERVICES; LOSS
-  OF USE, DATA, OR  PROFITS; OR BUSINESS  INTERRUPTION)  HOWEVER CAUSED AND ON
-  ANY  THEORY OF LIABILITY,  WHETHER  IN CONTRACT,  STRICT LIABILITY,  OR TORT
-  (INCLUDING  NEGLIGENCE OR  OTHERWISE) ARISING IN  ANY WAY OUT OF THE  USE OF
-  THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-</p><p>
-  This software  consists of voluntary contributions made by many individuals
-  on behalf of the Apache Software Foundation. For more information on the
-  Apache Software Foundation, please see
-  <a href="http://www.apache.org/" target="_top">http://www.apache.org</a>.
-</p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="license-antlr.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="manual.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="license-gnu.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/license-bsd.html b/utils/jalopy/docs/license-bsd.html
deleted file mode 100755 (executable)
index e69de29..0000000
diff --git a/utils/jalopy/docs/license-common-public.html b/utils/jalopy/docs/license-common-public.html
deleted file mode 100755 (executable)
index 8ee409c..0000000
+++ /dev/null
@@ -1,98 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>Appendix&nbsp;G.&nbsp;Common Public License Version 1.0</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="manual.html" title="Jalopy User Manual"><link rel="previous" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="next" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Appendix&nbsp;G.&nbsp;Common Public License Version 1.0</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="license-gnu-doc.html">Prev</a>&nbsp;</td><th width="60%" align="center">&nbsp;</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="license-sun-public.html">Next</a></td></tr></table><hr></div><div class="appendix" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="license-common-public"></a>Appendix&nbsp;G.&nbsp;Common Public License Version 1.0</h2></div></div><div></div></div><a class="indexterm" name="d0e7564"></a><a class="indexterm" name="d0e7567"></a><p>THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS COMMON PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT.</p><p><span class="bold"><b>1. DEFINITIONS</b></span></p><p>
-"Contribution" means:
-</p><div class="variablelist"><dl><dt></dt><dd><p>
-a) in the case of the initial Contributor, the initial code and documentation distributed under this Agreement, and
-</p><p>b) in the case of each subsequent Contributor:</p><p> i) changes to the Program, and</p><p>ii) additions to the Program;</p><p>
-where such changes and/or additions to the Program originate from and are distributed by that particular Contributor. A Contribution 'originates' from a Contributor if it was added to the Program by such Contributor itself or anyone acting on such Contributor's behalf. Contributions do not include additions to the Program which: (i) are separate modules of software distributed in conjunction with the Program under their own license agreement, and (ii) are not derivative works of the Program.
-</p></dd></dl></div><p>
-"Contributor" means any person or entity that distributes the Program.
-</p><p>
-"Licensed Patents" mean patent claims licensable by a Contributor which are necessarily infringed by the use or sale of its Contribution alone or when combined with the Program.
-</p><p>
-"Program" means the Contributions distributed in accordance with this Agreement.
-</p><p>
-"Recipient" means anyone who receives the Program under this Agreement, including all Contributors.
-</p><p><span class="bold"><b>2. GRANT OF RIGHTS</b></span></p><div class="variablelist"><dl><dt></dt><dd><p>
-a) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, distribute and sublicense the Contribution of such Contributor, if any, and such derivative works, in source code and object code form.
-</p><p>
-b) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free patent license under Licensed Patents to make, use, sell, offer to sell, import and otherwise transfer the Contribution of such Contributor, if any, in source code and object code form. This patent license shall apply to the combination of the Contribution and the Program if, at the time the Contribution is added by the Contributor, such addition of the Contribution causes such combination to be covered by the Licensed Patents. The patent license shall not apply to any other combinations which include the Contribution. No hardware per se is licensed hereunder.
-</p><p>
-c) Recipient understands that although each Contributor grants the licenses to its Contributions set forth herein, no assurances are provided by any Contributor that the Program does not infringe the patent or other intellectual property rights of any other entity. Each Contributor disclaims any liability to Recipient for claims brought by any other entity based on infringement of intellectual property rights or otherwise. As a condition to exercising the rights and licenses granted hereunder, each Recipient hereby assumes sole responsibility to secure any other intellectual property rights needed, if any. For example, if a third party patent license is required to allow Recipient to distribute the Program, it is Recipient's responsibility to acquire that license before distributing the Program.
-</p><p>
-d) Each Contributor represents that to its knowledge it has sufficient copyright rights in its Contribution, if any, to grant the copyright license set forth in this Agreement.
-</p></dd></dl></div><p><span class="bold"><b>3. REQUIREMENTS</b></span></p><p>
-d) Each Contributor represents that to its knowledge it has sufficient copyright rights in its Contribution, if any, to grant the copyright license set forth in this Agreement.
-</p><div class="variablelist"><dl><dt></dt><dd><p>
-a) it complies with the terms and conditions of this Agreement; and
-</p><p>b) its license agreement:</p><p>
-i) effectively disclaims on behalf of all Contributors all warranties and conditions, express and implied, including warranties or conditions of title and non-infringement, and implied warranties or conditions of merchantability and fitness for a particular purpose;
-</p><p>
-ii) effectively excludes on behalf of all Contributors all liability for damages, including direct, indirect, special, incidental and consequential damages, such as lost profits;
-</p><p>
-iii) states that any provisions which differ from this Agreement are offered by that Contributor alone and not by any other party; and
-</p><p>
-iv) states that source code for the Program is available from such Contributor, and informs licensees how to obtain it in a reasonable manner on or through a medium customarily used for software exchange.
-</p></dd></dl></div><p>
-When the Program is made available in source code form:
-</p><div class="variablelist"><dl><dt></dt><dd><p>
-a) it must be made available under this Agreement; and
-</p><p>
-b) a copy of this Agreement must be included with each copy of the Program.
-</p><p>
-Contributors may not remove or alter any copyright notices contained within the Program.
-</p><p>
-Each Contributor must identify itself as the originator of its Contribution, if any, in a manner that reasonably allows subsequent Recipients to identify the originator of the Contribution.
-</p></dd></dl></div><p><span class="bold"><b>4. COMMERCIAL DISTRIBUTION</b></span></p><p>
-Commercial distributors of software may accept certain responsibilities with respect to end users, business partners and the like. While this license is intended to facilitate the commercial use of the Program, the Contributor who includes the Program in a commercial product offering should do so in a manner which does not create potential liability for other Contributors. Therefore, if a Contributor includes the Program in a commercial product offering, such Contributor ("Commercial Contributor") hereby agrees to defend and indemnify every other Contributor ("Indemnified Contributor") against any losses, damages and costs (collectively "Losses") arising from claims, lawsuits and other legal actions brought by a third party against the Indemnified Contributor to the extent caused by the acts or omissions of such Commercial Contributor in connection with its distribution of the Program in a commercial product offering. The obligations in this section do not apply to any claims or Losses relating to any actual or alleged intellectual property infringement. In order to qualify, an Indemnified Contributor must: a) promptly notify the Commercial Contributor in writing of such claim, and b) allow the Commercial Contributor to control, and cooperate with the Commercial Contributor in, the defense and any related settlement negotiations. The Indemnified Contributor may participate in any such claim at its own expense.
-</p><p>
-For example, a Contributor might include the Program in a commercial product offering, Product X. That Contributor is then a Commercial Contributor. If that Commercial Contributor then makes performance claims, or offers warranties related to Product X, those performance claims and warranties are such Commercial Contributor's responsibility alone. Under this section, the Commercial Contributor would have to defend claims against the other Contributors related to those performance claims and warranties, and if a court requires any other Contributor to pay any damages as a result, the Commercial Contributor must pay those damages.
-</p><p><span class="bold"><b>5. NO WARRANTY</b></span></p><p>
-EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely responsible for determining the appropriateness of using and distributing the Program and assumes all risks associated with its exercise of rights under this Agreement, including but not limited to the risks and costs of program errors, compliance with applicable laws, damage to or loss of data, programs or equipment, and unavailability or interruption of operations.
-</p><p><span class="bold"><b>6. DISCLAIMER OF LIABILITY</b></span></p><p>
-EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
-</p><p><span class="bold"><b>7. GENERAL</b></span></p><p>
-If any provision of this Agreement is invalid or unenforceable under applicable law, it shall not affect the validity or enforceability of the remainder of the terms of this Agreement, and without further action by the parties hereto, such provision shall be reformed to the minimum extent necessary to make such provision valid and enforceable.
-</p><p>
-If Recipient institutes patent litigation against a Contributor with respect to a patent applicable to software (including a cross-claim or counterclaim in a lawsuit), then any patent licenses granted by that Contributor to such Recipient under this Agreement shall terminate as of the date such litigation is filed. In addition, if Recipient institutes patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Program itself (excluding combinations of the Program with other software or hardware) infringes such Recipient's patent(s), then such Recipient's rights granted under Section 2(b) shall terminate as of the date such litigation is filed.
-</p><p>
-All Recipient's rights under this Agreement shall terminate if it fails to comply with any of the material terms or conditions of this Agreement and does not cure such failure in a reasonable period of time after becoming aware of such noncompliance. If all Recipient's rights under this Agreement terminate, Recipient agrees to cease use and distribution of the Program as soon as reasonably practicable. However, Recipient's obligations under this Agreement and any licenses granted by Recipient relating to the Program shall continue and survive.
-</p><p>
-Everyone is permitted to copy and distribute copies of this Agreement, but in order to avoid inconsistency the Agreement is copyrighted and may only be modified in the following manner. The Agreement Steward reserves the right to publish new versions (including revisions) of this Agreement from time to time. No one other than the Agreement Steward has the right to modify this Agreement. IBM is the initial Agreement Steward. IBM may assign the responsibility to serve as the Agreement Steward to a suitable separate entity. Each new version of the Agreement will be given a distinguishing version number. The Program (including Contributions) may always be distributed subject to the version of the Agreement under which it was received. In addition, after a new version of the Agreement is published, Contributor may elect to distribute the Program (including its Contributions) under the new version. Except as expressly stated in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to the intellectual property of any Contributor under this Agreement, whether expressly, by implication, estoppel or otherwise. All rights in the Program not expressly granted under this Agreement are reserved.
-</p><p>
-This Agreement is governed by the laws of the State of New York and the intellectual property laws of the United States of America. No party to this Agreement will bring a legal action under this Agreement more than one year after the cause of action arose. Each party waives its rights to a jury trial in any resulting litigation.
-</p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="license-gnu-doc.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="manual.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="license-sun-public.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/license-gnu-doc.html b/utils/jalopy/docs/license-gnu-doc.html
deleted file mode 100755 (executable)
index 0d0b93d..0000000
+++ /dev/null
@@ -1,391 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="manual.html" title="Jalopy User Manual"><link rel="previous" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="next" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="license-gnu.html">Prev</a>&nbsp;</td><th width="60%" align="center">&nbsp;</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="license-common-public.html">Next</a></td></tr></table><hr></div><div class="appendix" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="license-gnu-doc"></a>Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000</h2></div></div><div></div></div><a class="indexterm" name="d0e7403"></a><a class="indexterm" name="d0e7406"></a><p>
- Copyright (C) 2000  Free Software Foundation, Inc.
-     59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-</p><p>
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-</p><p>
-0. PREAMBLE
-</p><p>
-The purpose of this License is to make a manual, textbook, or other
-written document "free" in the sense of freedom: to assure everyone
-the effective freedom to copy and redistribute it, with or without
-modifying it, either commercially or noncommercially.  Secondarily,
-this License preserves for the author and publisher a way to get
-credit for their work, while not being considered responsible for
-modifications made by others.
-</p><p>
-This License is a kind of "copyleft", which means that derivative
-works of the document must themselves be free in the same sense.  It
-complements the GNU General Public License, which is a copyleft
-license designed for free software.
-</p><p>
-We have designed this License in order to use it for manuals for free
-software, because free software needs free documentation: a free
-program should come with manuals providing the same freedoms that the
-software does.  But this License is not limited to software manuals;
-it can be used for any textual work, regardless of subject matter or
-whether it is published as a printed book.  We recommend this License
-principally for works whose purpose is instruction or reference.
-</p><p>
-1. APPLICABILITY AND DEFINITIONS
-</p><p>
-This License applies to any manual or other work that contains a
-notice placed by the copyright holder saying it can be distributed
-under the terms of this License.  The "Document", below, refers to any
-such manual or work.  Any member of the public is a licensee, and is
-addressed as "you".
-</p><p>
-A "Modified Version" of the Document means any work containing the
-Document or a portion of it, either copied verbatim, or with
-modifications and/or translated into another language.
-</p><p>
-A "Secondary Section" is a named appendix or a front-matter section of
-the Document that deals exclusively with the relationship of the
-publishers or authors of the Document to the Document's overall subject
-(or to related matters) and contains nothing that could fall directly
-within that overall subject.  (For example, if the Document is in part a
-textbook of mathematics, a Secondary Section may not explain any
-mathematics.)  The relationship could be a matter of historical
-connection with the subject or with related matters, or of legal,
-commercial, philosophical, ethical or political position regarding
-them.
-</p><p>
-The "Invariant Sections" are certain Secondary Sections whose titles
-are designated, as being those of Invariant Sections, in the notice
-that says that the Document is released under this License.
-</p><p>
-The "Cover Texts" are certain short passages of text that are listed,
-as Front-Cover Texts or Back-Cover Texts, in the notice that says that
-the Document is released under this License.
-</p><p>
-A "Transparent" copy of the Document means a machine-readable copy,
-represented in a format whose specification is available to the
-general public, whose contents can be viewed and edited directly and
-straightforwardly with generic text editors or (for images composed of
-pixels) generic paint programs or (for drawings) some widely available
-drawing editor, and that is suitable for input to text formatters or
-for automatic translation to a variety of formats suitable for input
-to text formatters.  A copy made in an otherwise Transparent file
-format whose markup has been designed to thwart or discourage
-subsequent modification by readers is not Transparent.  A copy that is
-not "Transparent" is called "Opaque".
-</p><p>
-Examples of suitable formats for Transparent copies include plain
-ASCII without markup, Texinfo input format, LaTeX input format, SGML
-or XML using a publicly available DTD, and standard-conforming simple
-HTML designed for human modification.  Opaque formats include
-PostScript, PDF, proprietary formats that can be read and edited only
-by proprietary word processors, SGML or XML for which the DTD and/or
-processing tools are not generally available, and the
-machine-generated HTML produced by some word processors for output
-purposes only.
-</p><p>
-The "Title Page" means, for a printed book, the title page itself,
-plus such following pages as are needed to hold, legibly, the material
-this License requires to appear in the title page.  For works in
-formats which do not have any title page as such, "Title Page" means
-the text near the most prominent appearance of the work's title,
-preceding the beginning of the body of the text.
-</p><p>
-2. VERBATIM COPYING
-</p><p>
-You may copy and distribute the Document in any medium, either
-commercially or noncommercially, provided that this License, the
-copyright notices, and the license notice saying this License applies
-to the Document are reproduced in all copies, and that you add no other
-conditions whatsoever to those of this License.  You may not use
-technical measures to obstruct or control the reading or further
-copying of the copies you make or distribute.  However, you may accept
-compensation in exchange for copies.  If you distribute a large enough
-number of copies you must also follow the conditions in section 3.
-</p><p>
-You may also lend copies, under the same conditions stated above, and
-you may publicly display copies.
-</p><p>
-3. COPYING IN QUANTITY
-</p><p>
-If you publish printed copies of the Document numbering more than 100,
-and the Document's license notice requires Cover Texts, you must enclose
-the copies in covers that carry, clearly and legibly, all these Cover
-Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on
-the back cover.  Both covers must also clearly and legibly identify
-you as the publisher of these copies.  The front cover must present
-the full title with all words of the title equally prominent and
-visible.  You may add other material on the covers in addition.
-Copying with changes limited to the covers, as long as they preserve
-the title of the Document and satisfy these conditions, can be treated
-as verbatim copying in other respects.
-</p><p>
-If the required texts for either cover are too voluminous to fit
-legibly, you should put the first ones listed (as many as fit
-reasonably) on the actual cover, and continue the rest onto adjacent
-pages.
-</p><p>
-If you publish or distribute Opaque copies of the Document numbering
-more than 100, you must either include a machine-readable Transparent
-copy along with each Opaque copy, or state in or with each Opaque copy
-a publicly-accessible computer-network location containing a complete
-Transparent copy of the Document, free of added material, which the
-general network-using public has access to download anonymously at no
-charge using public-standard network protocols.  If you use the latter
-option, you must take reasonably prudent steps, when you begin
-distribution of Opaque copies in quantity, to ensure that this
-Transparent copy will remain thus accessible at the stated location
-until at least one year after the last time you distribute an Opaque
-copy (directly or through your agents or retailers) of that edition to
-the public.
-</p><p>
-It is requested, but not required, that you contact the authors of the
-Document well before redistributing any large number of copies, to give
-them a chance to provide you with an updated version of the Document.
-</p><p>
-4. MODIFICATIONS
-</p><p>
-You may copy and distribute a Modified Version of the Document under
-the conditions of sections 2 and 3 above, provided that you release
-the Modified Version under precisely this License, with the Modified
-Version filling the role of the Document, thus licensing distribution
-and modification of the Modified Version to whoever possesses a copy
-of it.  In addition, you must do these things in the Modified Version:
-</p><div class="orderedlist"><ol type="A"><li><p>
- Use in the Title Page (and on the covers, if any) a title distinct
-   from that of the Document, and from those of previous versions
-   (which should, if there were any, be listed in the History section
-   of the Document).  You may use the same title as a previous version
-   if the original publisher of that version gives permission.
-</p></li><li><p>
- List on the Title Page, as authors, one or more persons or entities
-   responsible for authorship of the modifications in the Modified
-   Version, together with at least five of the principal authors of the
-   Document (all of its principal authors, if it has less than five).
-</p></li><li><p>
- State on the Title page the name of the publisher of the
-  Modified Version, as the publisher.
-</p></li><li><p>
-Preserve all the copyright notices of the Document.
-</p></li><li><p>
- Add an appropriate copyright notice for your modifications
-   adjacent to the other copyright notices.
-</p></li><li><p>
- Include, immediately after the copyright notices, a license notice
-   giving the public permission to use the Modified Version under the
-   terms of this License, in the form shown in the Addendum below.
-</p></li><li><p>
- Preserve in that license notice the full lists of Invariant Sections
-   and required Cover Texts given in the Document's license notice.
-</p></li><li><p>
- Include an unaltered copy of this License.
-</p></li><li><p>
- Preserve the section entitled "History", and its title, and add to
-   it an item stating at least the title, year, new authors, and
-   publisher of the Modified Version as given on the Title Page.  If
-   there is no section entitled "History" in the Document, create one
-   stating the title, year, authors, and publisher of the Document as
-   given on its Title Page, then add an item describing the Modified
-   Version as stated in the previous sentence.
-</p></li><li><p>
- Preserve the network location, if any, given in the Document for
-   public access to a Transparent copy of the Document, and likewise
-   the network locations given in the Document for previous versions
-   it was based on.  These may be placed in the "History" section.
-   You may omit a network location for a work that was published at
-   least four years before the Document itself, or if the original
-   publisher of the version it refers to gives permission.
-</p></li><li><p>
- In any section entitled "Acknowledgements" or "Dedications",
-   preserve the section's title, and preserve in the section all the
-   substance and tone of each of the contributor acknowledgements
-   and/or dedications given therein.
-</p></li><li><p>
- Preserve all the Invariant Sections of the Document,
-   unaltered in their text and in their titles.  Section numbers
-   or the equivalent are not considered part of the section titles.
-</p></li><li><p>
- Delete any section entitled "Endorsements".  Such a section
-   may not be included in the Modified Version.
-</p></li><li><p>
- Do not retitle any existing section as "Endorsements"
-   or to conflict in title with any Invariant Section.
-</p></li></ol></div><p>
-If the Modified Version includes new front-matter sections or
-appendices that qualify as Secondary Sections and contain no material
-copied from the Document, you may at your option designate some or all
-of these sections as invariant.  To do this, add their titles to the
-list of Invariant Sections in the Modified Version's license notice.
-These titles must be distinct from any other section titles.
-</p><p>
-You may add a section entitled "Endorsements", provided it contains
-nothing but endorsements of your Modified Version by various
-parties--for example, statements of peer review or that the text has
-been approved by an organization as the authoritative definition of a
-standard.
-</p><p>
-You may add a passage of up to five words as a Front-Cover Text, and a
-passage of up to 25 words as a Back-Cover Text, to the end of the list
-of Cover Texts in the Modified Version.  Only one passage of
-Front-Cover Text and one of Back-Cover Text may be added by (or
-through arrangements made by) any one entity.  If the Document already
-includes a cover text for the same cover, previously added by you or
-by arrangement made by the same entity you are acting on behalf of,
-you may not add another; but you may replace the old one, on explicit
-permission from the previous publisher that added the old one.
-</p><p>
-The author(s) and publisher(s) of the Document do not by this License
-give permission to use their names for publicity for or to assert or
-imply endorsement of any Modified Version.
-</p><p>
-5. COMBINING DOCUMENTS
-</p><p>
-You may combine the Document with other documents released under this
-License, under the terms defined in section 4 above for modified
-versions, provided that you include in the combination all of the
-Invariant Sections of all of the original documents, unmodified, and
-list them all as Invariant Sections of your combined work in its
-license notice.
-</p><p>
-The combined work need only contain one copy of this License, and
-multiple identical Invariant Sections may be replaced with a single
-copy.  If there are multiple Invariant Sections with the same name but
-different contents, make the title of each such section unique by
-adding at the end of it, in parentheses, the name of the original
-author or publisher of that section if known, or else a unique number.
-Make the same adjustment to the section titles in the list of
-Invariant Sections in the license notice of the combined work.
-</p><p>
-In the combination, you must combine any sections entitled "History"
-in the various original documents, forming one section entitled
-"History"; likewise combine any sections entitled "Acknowledgements",
-and any sections entitled "Dedications".  You must delete all sections
-entitled "Endorsements."
-</p><p>
-6. COLLECTIONS OF DOCUMENTS
-</p><p>
-You may make a collection consisting of the Document and other documents
-released under this License, and replace the individual copies of this
-License in the various documents with a single copy that is included in
-the collection, provided that you follow the rules of this License for
-verbatim copying of each of the documents in all other respects.
-</p><p>
-You may extract a single document from such a collection, and distribute
-it individually under this License, provided you insert a copy of this
-License into the extracted document, and follow this License in all
-other respects regarding verbatim copying of that document.
-</p><p>
-7. AGGREGATION WITH INDEPENDENT WORKS
-</p><p>
-A compilation of the Document or its derivatives with other separate
-and independent documents or works, in or on a volume of a storage or
-distribution medium, does not as a whole count as a Modified Version
-of the Document, provided no compilation copyright is claimed for the
-compilation.  Such a compilation is called an "aggregate", and this
-License does not apply to the other self-contained works thus compiled
-with the Document, on account of their being thus compiled, if they
-are not themselves derivative works of the Document.
-</p><p>
-If the Cover Text requirement of section 3 is applicable to these
-copies of the Document, then if the Document is less than one quarter
-of the entire aggregate, the Document's Cover Texts may be placed on
-covers that surround only the Document within the aggregate.
-Otherwise they must appear on covers around the whole aggregate.
-</p><p>
-8. TRANSLATION
-</p><p>
-Translation is considered a kind of modification, so you may
-distribute translations of the Document under the terms of section 4.
-Replacing Invariant Sections with translations requires special
-permission from their copyright holders, but you may include
-translations of some or all Invariant Sections in addition to the
-original versions of these Invariant Sections.  You may include a
-translation of this License provided that you also include the
-original English version of this License.  In case of a disagreement
-between the translation and the original English version of this
-License, the original English version will prevail.
-</p><p>
-9. TERMINATION
-</p><p>
-You may not copy, modify, sublicense, or distribute the Document except
-as expressly provided for under this License.  Any other attempt to
-copy, modify, sublicense or distribute the Document is void, and will
-automatically terminate your rights under this License.  However,
-parties who have received copies, or rights, from you under this
-License will not have their licenses terminated so long as such
-parties remain in full compliance.
-</p><p>
-10. FUTURE REVISIONS OF THIS LICENSE
-</p><p>
-The Free Software Foundation may publish new, revised versions
-of the GNU Free Documentation License from time to time.  Such new
-versions will be similar in spirit to the present version, but may
-differ in detail to address new problems or concerns.  See
-<a href="http://www.gnu.org/copyleft/" target="_top">http://www.gnu.org/copyleft</a>.
-</p><p>
-Each version of the License is given a distinguishing version number.
-If the Document specifies that a particular numbered version of this
-License "or any later version" applies to it, you have the option of
-following the terms and conditions either of that specified version or
-of any later version that has been published (not as a draft) by the
-Free Software Foundation.  If the Document does not specify a version
-number of this License, you may choose any version ever published (not
-as a draft) by the Free Software Foundation.
-</p><p>
-ADDENDUM: How to use this License for your documents
-</p><p>
-To use this License in a document you have written, include a copy of
-the License in the document and put the following copyright and
-license notices just after the title page:
-</p><div class="blockquote"><blockquote class="blockquote"><p>
-      Copyright (c)  YEAR  YOUR NAME.
-      Permission is granted to copy, distribute and/or modify this document
-      under the terms of the GNU Free Documentation License, Version 1.1
-      or any later version published by the Free Software Foundation;
-      with the Invariant Sections being LIST THEIR TITLES, with the
-      Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST.
-      A copy of the license is included in the section entitled "GNU
-      Free Documentation License".
-</p></blockquote></div><p>
-If you have no Invariant Sections, write "with no Invariant Sections"
-instead of saying which ones are invariant.  If you have no
-Front-Cover Texts, write "no Front-Cover Texts" instead of
-"Front-Cover Texts being LIST"; likewise for Back-Cover Texts.
-</p><p>
-If your document contains nontrivial examples of program code, we
-recommend releasing these examples in parallel under your choice of
-free software license, such as the GNU General Public License,
-to permit their use in free software.
-</p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="license-gnu.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="manual.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="license-common-public.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;Appendix&nbsp;G.&nbsp;Common Public License Version 1.0</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/license-gnu.html b/utils/jalopy/docs/license-gnu.html
deleted file mode 100755 (executable)
index 3c7420c..0000000
+++ /dev/null
@@ -1,373 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="manual.html" title="Jalopy User Manual"><link rel="previous" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="next" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="license-apache.html">Prev</a>&nbsp;</td><th width="60%" align="center">&nbsp;</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="license-gnu-doc.html">Next</a></td></tr></table><hr></div><div class="appendix" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="license-gnu"></a>Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991</h2></div></div><div></div></div><a class="indexterm" name="d0e7268"></a><a class="indexterm" name="d0e7271"></a><p>
-Copyright (C) 1989, 1991 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-</p><p>
-Everyone is permitted to copy and distribute verbatim copies
-of this license document, but changing it is not allowed.
-</p><p>
-Preamble
-</p><p>
-The licenses for most software are designed to take away your
-freedom to share and change it.  By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users.  This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it.  (Some other Free Software Foundation software is covered by
-the GNU Library General Public License instead.)  You can apply it to
-your programs, too.
-</p><p>
-When we speak of free software, we are referring to freedom, not
-price.  Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-</p><p>
-To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-</p><p>
-For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have.  You must make sure that they, too, receive or can get the
-source code.  And you must show them these terms so they know their
-rights.
-</p><p>
-We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-</p><p>
-Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software.  If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-</p><p>
-Finally, any free program is threatened constantly by software
-patents.  We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary.  To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-</p><p>
-The precise terms and conditions for copying, distribution and
-modification follow.
-</p><p>
-                   GNU GENERAL PUBLIC LICENSE
-   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-</p><p>
-0. This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License.  The "Program", below,
-refers to any such program or work, and a "work based on the Program"
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-language.  (Hereinafter, translation is included without limitation in
-the term "modification".)  Each licensee is addressed as "you".
-</p><p>
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope.  The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-Whether that is true depends on what the Program does.
-</p><p>
-1. You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
-</p><p>
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
-</p><p>
-2. You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-</p><div class="blockquote"><blockquote class="blockquote"><p>
-    a) You must cause the modified files to carry prominent notices
-    stating that you changed the files and the date of any change.
-    </p><p>
-    b) You must cause any work that you distribute or publish, that in
-    whole or in part contains or is derived from the Program or any
-    part thereof, to be licensed as a whole at no charge to all third
-    parties under the terms of this License.
-    </p><p>
-    c) If the modified program normally reads commands interactively
-    when run, you must cause it, when started running for such
-    interactive use in the most ordinary way, to print or display an
-    announcement including an appropriate copyright notice and a
-    notice that there is no warranty (or else, saying that you provide
-    a warranty) and that users may redistribute the program under
-    these conditions, and telling the user how to view a copy of this
-    License.  (Exception: if the Program itself is interactive but
-    does not normally print such an announcement, your work based on
-    the Program is not required to print an announcement.)
-    </p></blockquote></div><p>
-These requirements apply to the modified work as a whole.  If
-identifiable sections of that work are not derived from the Program,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works.  But when you
-distribute the same sections as part of a whole which is a work based
-on the Program, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote it.
-</p><p>
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Program.
-</p><p>
-In addition, mere aggregation of another work not based on the Program
-with the Program (or with a work based on the Program) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-</p><p>
-3. You may copy and distribute the Program (or a work based on it,
-under Section 2) in object code or executable form under the terms of
-Sections 1 and 2 above provided that you also do one of the following:
-</p><div class="blockquote"><blockquote class="blockquote"><p>
-    a) Accompany it with the complete corresponding machine-readable
-    source code, which must be distributed under the terms of Sections
-    1 and 2 above on a medium customarily used for software interchange; or,
-    </p><p>    
-    b) Accompany it with a written offer, valid for at least three
-    years, to give any third party, for a charge no more than your
-    cost of physically performing source distribution, a complete
-    machine-readable copy of the corresponding source code, to be
-    distributed under the terms of Sections 1 and 2 above on a medium
-    customarily used for software interchange; or,
-    </p><p>
-    c) Accompany it with the information you received as to the offer
-    to distribute corresponding source code.  (This alternative is
-    allowed only for noncommercial distribution and only if you
-    received the program in object code or executable form with such
-    an offer, in accord with Subsection b above.)
-    </p></blockquote></div><p>
-The source code for a work means the preferred form of the work for
-making modifications to it.  For an executable work, complete source
-code means all the source code for all modules it contains, plus any
-associated interface definition files, plus the scripts used to
-control compilation and installation of the executable.  However, as a
-special exception, the source code distributed need not include
-anything that is normally distributed (in either source or binary
-form) with the major components (compiler, kernel, and so on) of the
-operating system on which the executable runs, unless that component
-itself accompanies the executable.
-</p><p>
-If distribution of executable or object code is made by offering
-access to copy from a designated place, then offering equivalent
-access to copy the source code from the same place counts as
-distribution of the source code, even though third parties are not
-compelled to copy the source along with the object code.
-</p><p>
-4. You may not copy, modify, sublicense, or distribute the Program
-except as expressly provided under this License.  Any attempt
-otherwise to copy, modify, sublicense or distribute the Program is
-void, and will automatically terminate your rights under this License.
-However, parties who have received copies, or rights, from you under
-this License will not have their licenses terminated so long as such
-parties remain in full compliance.
-</p><p>
-5. You are not required to accept this License, since you have not
-signed it.  However, nothing else grants you permission to modify or
-distribute the Program or its derivative works.  These actions are
-prohibited by law if you do not accept this License.  Therefore, by
-modifying or distributing the Program (or any work based on the
-Program), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Program or works based on it.
-</p><p>
-6. Each time you redistribute the Program (or any work based on the
-Program), the recipient automatically receives a license from the
-original licensor to copy, distribute or modify the Program subject to
-these terms and conditions.  You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
-this License.
-</p><p>
-7. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License.  If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Program at all.  For example, if a patent
-license would not permit royalty-free redistribution of the Program by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Program.
-</p><p>
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply and the section as a whole is intended to apply in other
-circumstances.
-</p><p>
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system, which is
-implemented by public license practices.  Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-</p><p>
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-</p><p>
-8. If the distribution and/or use of the Program is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Program under this License
-may add an explicit geographical distribution limitation excluding
-those countries, so that distribution is permitted only in or among
-countries not thus excluded.  In such case, this License incorporates
-the limitation as if written in the body of this License.
-</p><p>
-9. The Free Software Foundation may publish revised and/or new versions
-of the General Public License from time to time.  Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-</p><p>
-Each version is given a distinguishing version number.  If the Program
-specifies a version number of this License which applies to it and "any
-later version", you have the option of following the terms and conditions
-either of that version or of any later version published by the Free
-Software Foundation.  If the Program does not specify a version number of
-this License, you may choose any version ever published by the Free Software
-Foundation.
-</p><p>
-10. If you wish to incorporate parts of the Program into other free
-programs whose distribution conditions are different, write to the author
-to ask for permission.  For software which is copyrighted by the Free
-Software Foundation, write to the Free Software Foundation; we sometimes
-make exceptions for this.  Our decision will be guided by the two goals
-of preserving the free status of all derivatives of our free software and
-of promoting the sharing and reuse of software generally.
-</p><p>
-                           NO WARRANTY
-</p><p>
-11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
-FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
-OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
-OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
-TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
-PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
-REPAIR OR CORRECTION.
-</p><p>
-12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
-REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
-OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
-TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
-YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGES.
-</p><p>
-                    END OF TERMS AND CONDITIONS
-</p><p>
-           How to Apply These Terms to Your New Programs
-</p><p>
-If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-</p><p>
-To do so, attach the following notices to the program.  It is safest
-to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-</p><div class="blockquote"><blockquote class="blockquote"><p>
-    &lt;one line to give the program's name and a brief idea of what it does.&gt;
-    Copyright (C) &lt;year&gt;  &lt;name of author&gt;
-</p><p>
-    This program is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 2 of the License, or
-    (at your option) any later version.
-</p><p>
-    This program is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-</p><p>
-    You should have received a copy of the GNU General Public License
-    along with this program; if not, write to the Free Software
-    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-</p></blockquote></div><p>
-Also add information on how to contact you by electronic and paper mail.
-</p><p>
-If the program is interactive, make it output a short notice like this
-when it starts in an interactive mode:
-</p><div class="blockquote"><blockquote class="blockquote"><p>
-    Gnomovision version 69, Copyright (C) year name of author
-    Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type 'show w'.
-    This is free software, and you are welcome to redistribute it
-    under certain conditions; type 'show c' for details.
-</p></blockquote></div><p>
-The hypothetical commands 'show w' and 'show c' should show the appropriate
-parts of the General Public License.  Of course, the commands you use may
-be called something other than 'show w' and 'show c'; they could even be
-mouse-clicks or menu items--whatever suits your program.
-</p><p>
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the program, if
-necessary.  Here is a sample; alter the names:
-</p><div class="blockquote"><blockquote class="blockquote"><p>
-Yoyodyne, Inc., hereby disclaims all copyright interest in the program
-`Gnomovision' (which makes passes at compilers) written by James Hacker.
-</p><p>
-&lt;signature of Ty Coon&gt;, 1 April 1989
-Ty Coon, President of Vice
-</p></blockquote></div><p>
-This General Public License does not permit incorporating your program into
-proprietary programs.  If your program is a subroutine library, you may
-consider it more useful to permit linking proprietary applications with the
-library.  If this is what you want to do, use the GNU Library General
-Public License instead of this License.
-</p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="license-apache.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="manual.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="license-gnu-doc.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/license-sun-public.html b/utils/jalopy/docs/license-sun-public.html
deleted file mode 100755 (executable)
index 5c7c644..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="manual.html" title="Jalopy User Manual"><link rel="previous" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="next" href="bi01.html" title="Bibliography"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="license-common-public.html">Prev</a>&nbsp;</td><th width="60%" align="center">&nbsp;</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="bi01.html">Next</a></td></tr></table><hr></div><div class="appendix" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="license-sun-public"></a>Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0</h2></div></div><div></div></div><a class="indexterm" name="d0e7696"></a><a class="indexterm" name="d0e7699"></a><div class="orderedlist"><ol type="1"><li><p>
-Definitions.
-</p><div class="blockquote"><blockquote class="blockquote"><p>1.0.1. "Commercial Use" means distribution or otherwise making the Covered Code available to a third party.</p><p>1.1. "Contributor" means each entity that creates or contributes to the creation of Modifications.</p><p>1.2. "Contributor Version" means the combination of the Original Code, prior Modifications used by a Contributor, and the Modifications made by that particular Contributor.</p><p>1.3. "Covered Code" means the Original Code or Modifications or the combination of the Original Code and Modifications, in each case including portions thereof and corresponding documentation released with the source code.</p><p>1.4. "Electronic Distribution Mechanism" means a mechanism generally accepted in the software development community for the electronic transfer of data.</p><p>1.5. "Executable" means Covered Code in any form other than Source Code.</p><p>1.6. "Initial Developer" means the individual or entity identified as the Initial Developer in the Source Code notice required by Exhibit A.</p><p>1.7. "Larger Work" means a work which combines Covered Code or portions thereof with code not governed by the terms of this License.</p><p>1.8. "License" means this document.</p><p>1.8.1. "Licensable" means having the right to grant, to the maximum extent possible, whether at the time of the initial grant or subsequently acquired, any and all of the rights conveyed herein.</p><p>1.9. "Modifications" means any addition to or deletion from the substance or structure of either the Original Code or any previous Modifications. When Covered Code is released as a series of files, a Modification is:</p><div class="orderedlist"><ol type="A"><li><p>Any addition to or deletion from the contents of a file containing Original Code or previous Modifications.</p></li><li><p>Any new file that contains any part of the Original Code or previous Modifications.</p></li></ol></div><p>1.10. "Original Code"../ means Source Code of computer software code which is described in the Source Code notice required by Exhibit A as Original Code, and which, at the time of its release under this License is not already Covered Code governed by this License.</p><p>1.10.1. "Patent Claims" means any patent claim(s), now owned or hereafter acquired, including without limitation, method, process, and apparatus claims, in any patent Licensable by grantor.</p><p>1.11. "Source Code"../ means the preferred form of the Covered Code for making modifications to it, including all modules it contains, plus any associated documentation, interface definition files, scripts used to control compilation and installation of an Executable, or source code differential comparisons against either the Original Code or another well known, available Covered Code of the Contributor's choice. The Source Code can be in a compressed or archival form, provided the appropriate decompression or de-archiving software is widely available for no charge.</p><p>1.12. "You" (or "Your") means an individual or a legal entity exercising rights under, and complying with all of the terms of, this License or a future version of this License issued under Section 6.1. For legal entities, "You" includes any entity which controls, is controlled by, or is under common control with You. For purposes of this definition, "control"../ means (a) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (b) ownership of more than fifty percent (50%) of the outstanding shares or beneficial ownership of such entity.</p></blockquote></div></li><li><p>
-Source Code License.
-</p><div class="blockquote"><blockquote class="blockquote"><p>2.1 The Initial Developer Grant.</p><div class="blockquote"><blockquote class="blockquote"><p>The Initial Developer hereby grants You a world-wide, royalty-free, non-exclusive license, subject to third party intellectual property claims:</p><p>(a) under intellectual property rights (other than patent or trademark) Licensable by Initial Developer to use, reproduce, modify, display, perform, sublicense and distribute the Original Code (or portions thereof) with or without Modifications, and/or as part of a Larger Work; and</p><p>(b) under Patent Claims infringed by the making, using or selling of Original Code, to make, have made, use, practice, sell, and offer for sale, and/or otherwise dispose of the Original Code (or portions thereof).</p><p>(c) the licenses granted in this Section 2.1(a) and (b) are effective on the date Initial Developer first distributes Original Code under the terms of this License.</p><p>(d) Notwithstanding Section 2.1(b) above, no patent license is granted: 1) for code that You delete from the Original Code; 2) separate from the Original Code; or 3) for infringements caused by: i) the modification of the Original Code or ii) the combination of the Original Code with other software or devices.</p></blockquote></div><p>2.2. Contributor Grant.</p><div class="blockquote"><blockquote class="blockquote"><p>Subject to third party intellectual property claims, each Contributor hereby grants You a world-wide, royalty-free, non-exclusive license</p><div class="blockquote"><blockquote class="blockquote"><p>(a) under intellectual property rights (other than patent or trademark) Licensable by Contributor, to use, reproduce, modify, display, perform, sublicense and distribute the Modifications created by such Contributor (or portions thereof) either on an unmodified basis, with other Modifications, as Covered Code and/or as part of a Larger Work; and</p><p>b) under Patent Claims infringed by the making, using, or selling of Modifications made by that Contributor either alone and/or in combination with its Contributor Version (or portions of such combination), to make, use, sell, offer for sale, have made, and/or otherwise dispose of: 1) Modifications made by that Contributor (or portions thereof); and 2) the combination of Modifications made by that Contributor with its Contributor Version (or portions of such combination).</p><p>(c) the licenses granted in Sections 2.2(a) and 2.2(b) are effective on the date Contributor first makes Commercial Use of the Covered Code.</p><p>(d) notwithstanding Section 2.2(b) above, no patent license is granted: 1) for any code that Contributor has deleted from the Contributor Version; 2) separate from the Contributor Version; 3) for infringements caused by: i) third party modifications of Contributor Version or ii) the combination of Modifications made by that Contributor with other software (except as part of the Contributor Version) or other devices; or 4) under Patent Claims infringed by Covered Code in the absence of Modifications made by that Contributor.</p></blockquote></div></blockquote></div></blockquote></div></li><li><p>Distribution Obligations.</p><div class="blockquote"><blockquote class="blockquote"><p>3.1. Application of License.</p><p>The Modifications which You create or to which You contribute are governed by the terms of this License, including without limitation Section 2.2. The Source Code version of Covered Code may be distributed only under the terms of this License or a future version of this License released under Section 6.1, and You must include a copy of this License with every copy of the Source Code You distribute. You may not offer or impose any terms on any Source Code version that alters or restricts the applicable version of this License or the recipients' rights hereunder. However, You may include an additional document offering the additional rights described in Section 3.5.</p><p>3.2. Availability of Source Code.</p><p>Any Modification which You create or to which You contribute must be made available in Source Code form under the terms of this License either on the same media as an Executable version or via an accepted Electronic Distribution Mechanism to anyone to whom you made an Executable version available; and if made available via Electronic Distribution Mechanism, must remain available for at least twelve (12) months after the date it initially became available, or at least six (6) months after a subsequent version of that particular Modification has been made available to such recipients. You are responsible for ensuring that the Source Code version remains available even if the Electronic Distribution Mechanism is maintained by a third party.</p><p>3.3. Description of Modifications.</p><p>You must cause all Covered Code to which You contribute to contain a file documenting the changes You made to create that Covered Code and the date of any change. You must include a prominent statement that the Modification is derived, directly or indirectly, from Original Code provided by the Initial Developer and including the name of the Initial Developer in (a) the Source Code, and (b) in any notice in an Executable version or related documentation in which You describe the origin or ownership of the Covered Code.</p><p>3.4. Intellectual Property Matters.</p><div class="blockquote"><blockquote class="blockquote"><p>(a) Third Party Claims. If Contributor has knowledge that a license under a third party's intellectual property rights is required to exercise the rights granted by such Contributor under Sections 2.1 or 2.2, Contributor must include a text file with the Source Code distribution titled "../LEGAL'' which describes the claim and the party making the claim in sufficient detail that a recipient will know whom to contact. If Contributor obtains such knowledge after the Modification is made available as described in Section 3.2, Contributor shall promptly modify the LEGAL file in all copies Contributor makes available thereafter and shall take other steps (such as notifying appropriate mailing lists or newsgroups) reasonably calculated to inform those who received the Covered Code that new knowledge has been obtained.</p><p>(b) Contributor APIs.</p><p>If Contributor's Modifications include an application programming interface ("API"../) and Contributor has knowledge of patent licenses which are reasonably necessary to implement that API, Contributor must also include this information in the LEGAL file.</p><p>(c) Representations.</p><p>Contributor represents that, except as disclosed pursuant to Section 3.4(a) above, Contributor believes that Contributor's Modifications are Contributor's original creation(s) and/or Contributor has sufficient rights to grant the rights conveyed by this License.</p><p>3.5. Required Notices.</p><p>You must duplicate the notice in Exhibit A in each file of the Source Code. If it is not possible to put such notice in a particular Source Code file due to its structure, then You must include such notice in a location (such as a relevant directory) where a user would be likely to look for such a notice. If You created one or more Modification(s) You may add your name as a Contributor to the notice described in Exhibit A. You must also duplicate this License in any documentation for the Source Code where You describe recipients' rights or ownership rights relating to Covered Code. You may choose to offer, and to charge a fee for, warranty, support, indemnity or liability obligations to one or more recipients of Covered Code. However, You may do so only on Your own behalf, and not on behalf of the Initial Developer or any Contributor. You must make it absolutely clear than any such warranty, support, indemnity or liability obligation is offered by You alone, and You hereby agree to indemnify the Initial Developer and every Contributor for any liability incurred by the Initial Developer or such Contributor as a result of warranty, support, indemnity or liability terms You offer.</p><p>3.6. Distribution of Executable Versions.</p><p>You may distribute Covered Code in Executable form only if the requirements of Section 3.1-3.5 have been met for that Covered Code, and if You include a notice stating that the Source Code version of the Covered Code is available under the terms of this License, including a description of how and where You have fulfilled the obligations of Section 3.2. The notice must be conspicuously included in any notice in an Executable version, related documentation or collateral in which You describe recipients' rights relating to the Covered Code. You may distribute the Executable version of Covered Code or ownership rights under a license of Your choice, which may contain terms different from this License, provided that You are in compliance with the terms of this License and that the license for the Executable version does not attempt to limit or alter the recipient's rights in the Source Code version from the rights set forth in this License. If You distribute the Executable version under a different license You must make it absolutely clear that any terms which differ from this License are offered by You alone, not by the Initial Developer or any Contributor. You hereby agree to indemnify the Initial Developer and every Contributor for any liability incurred by the Initial Developer or such Contributor as a result of any such terms You offer.</p><p>3.7. Larger Works.</p><p>You may create a Larger Work by combining Covered Code with other code not governed by the terms of this License and distribute the Larger Work as a single product. In such a case, You must make sure the requirements of this License are fulfilled for the Covered Code.</p></blockquote></div></blockquote></div></li><li><p>Inability to Comply Due to Statute or Regulation.</p><p>
-If it is impossible for You to comply with any of the terms of this License with respect to some or all of the Covered Code due to statute, judicial order, or regulation then You must: (a) comply with the terms of this License to the maximum extent possible; and (b) describe the limitations and the code they affect. Such description must be included in the LEGAL file described in Section 3.4 and must be included with all distributions of the Source Code. Except to the extent prohibited by statute or regulation, such description must be sufficiently detailed for a recipient of ordinary skill to be able to understand it.
-</p></li><li><p>Application of this License.</p><p>
-This License applies to code to which the Initial Developer has attached the notice in Exhibit A and to related Covered Code.
-</p></li><li><p>Versions of the License.</p><div class="blockquote"><blockquote class="blockquote"><p>6.1. New Versions.</p><p>Sun Microsystems, Inc. ("Sun") may publish revised and/or new versions of the License from time to time. Each version will be given a distinguishing version number. </p><p>6.2. Effect of New Versions.</p><p>Once Covered Code has been published under a particular version of the License, You may always continue to use it under the terms of that version. You may also choose to use such Covered Code under the terms of any subsequent version of the License published by Sun. No one other than Sun has the right to modify the terms applicable to Covered Code created under this License.</p><p>6.3. Derivative Works.</p><p>If You create or use a modified version of this License (which you may only do in order to apply it to code which is not already Covered Code governed by this License), You must: (a) rename Your license so that the phrases "Sun," "Sun Public License," or "SPL"../ or any confusingly similar phrase do not appear in your license (except to note that your license differs from this License) and (b) otherwise make it clear that Your version of the license contains terms which differ from the Sun Public License. (Filling in the name of the Initial Developer, Original Code or Contributor in the notice described in Exhibit A shall not of themselves be deemed to be modifications of this License.)</p></blockquote></div></li><li><p>DISCLAIMER OF WARRANTY.</p><p>COVERED CODE IS PROVIDED UNDER THIS LICENSE ON AN "../AS IS'' BASIS, WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, WITHOUT LIMITATION, WARRANTIES THAT THE COVERED CODE IS FREE OF DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE COVERED CODE IS WITH YOU. SHOULD ANY COVERED CODE PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE INITIAL DEVELOPER OR ANY OTHER CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF ANY COVERED CODE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER.</p></li><li><p>TERMINATION.</p><p>8.1. This License and the rights granted hereunder will terminate automatically if You fail to comply with terms herein and fail to cure such breach within 30 days of becoming aware of the breach. All sublicenses to the Covered Code which are properly granted shall survive any termination of this License. Provisions which, by their nature, must remain in effect beyond the termination of this License shall survive.</p><p>8.2. If You initiate litigation by asserting a patent infringement claim (excluding declaratory judgment actions) against Initial Developer or a Contributor (the Initial Developer or Contributor against whom You file such action is referred to as "Participant") alleging that:</p><div class="blockquote"><blockquote class="blockquote"><p>(a) such Participant's Contributor Version directly or indirectly infringes any patent, then any and all rights granted by such Participant to You under Sections 2.1 and/or 2.2 of this License shall, upon 60 days notice from Participant terminate prospectively, unless if within 60 days after receipt of notice You either: (i) agree in writing to pay Participant a mutually agreeable reasonable royalty for Your past and future use of Modifications made by such Participant, or (ii) withdraw Your litigation claim with respect to the Contributor Version against such Participant. If within 60 days of notice, a reasonable royalty and payment arrangement are not mutually agreed upon in writing by the parties or the litigation claim is not withdrawn, the rights granted by Participant to You under Sections 2.1 and/or 2.2 automatically terminate at the expiration of the 60 day notice period specified above.</p><p>(b) any software, hardware, or device, other than such Participant's Contributor Version, directly or indirectly infringes any patent, then any rights granted to You by such Participant under Sections 2.1(b) and 2.2(b) are revoked effective as of the date You first made, used, sold, distributed, or had made, Modifications made by that Participant.</p></blockquote></div><p>8.3. If You assert a patent infringement claim against Participant alleging that such Participant's Contributor Version directly or indirectly infringes any patent where such claim is resolved (such as by license or settlement) prior to the initiation of patent infringement litigation, then the reasonable value of the licenses granted by such Participant under Sections 2.1 or 2.2 shall be taken into account in determining the amount or value of any payment or license.</p><p>8.4. In the event of termination under Sections 8.1 or 8.2 above, all end user license agreements (excluding distributors and resellers) which have been validly granted by You or any distributor hereunder prior to termination shall survive termination.</p></li><li><p>LIMITATION OF LIABILITY.</p><p>UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL YOU, THE INITIAL DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF COVERED CODE, OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON FOR ANY INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL, WORK STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER COMMERCIAL DAMAGES OR LOSSES, EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED OF THE POSSIBILITY OF SUCH DAMAGES. THIS LIMITATION OF LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH OR PERSONAL INJURY RESULTING FROM SUCH PARTY'S NEGLIGENCE TO THE EXTENT APPLICABLE LAW PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THIS EXCLUSION AND LIMITATION MAY NOT APPLY TO YOU.</p></li><li><p>U.S. GOVERNMENT END USERS.
-</p><p>The Covered Code is a "commercial item," as that term is defined in 48 C.F.R. 2.101 (Oct. 1995), consisting of "commercial computer software" and "commercial computer software documentation,"../ as such terms are used in 48 C.F.R. 12.212 (Sept. 1995). Consistent with 48 C.F.R. 12.212 and 48 C.F.R. 227.7202-1 through 227.7202-4 (June 1995), all U.S. Government End Users acquire Covered Code with only those rights set forth herein.</p></li><li><p>MISCELLANEOUS.
-</p><p>This License represents the complete agreement concerning subject matter hereof. If any provision of this License is held to be unenforceable, such provision shall be reformed only to the extent necessary to make it enforceable. This License shall be governed by California law provisions (except to the extent applicable law, if any, provides otherwise), excluding its conflict-of-law provisions. With respect to disputes in which at least one party is a citizen of, or an entity chartered or registered to do business in the United States of America, any litigation relating to this License shall be subject to the jurisdiction of the Federal Courts of the Northern District of California, with venue lying in Santa Clara County, California, with the losing party responsible for costs, including without limitation, court costs and reasonable attorneys' fees and expenses. The application of the United Nations Convention on Contracts for the International Sale of Goods is expressly excluded. Any law or regulation which provides that the language of a contract shall be construed against the drafter shall not apply to this License.</p></li><li><p>RESPONSIBILITY FOR CLAIMS.</p><p>As between Initial Developer and the Contributors, each party is responsible for claims and damages arising, directly or indirectly, out of its utilization of rights under this License and You agree to work with Initial Developer and Contributors to distribute such responsibility on an equitable basis. Nothing herein is intended or shall be deemed to constitute any admission of liability.</p></li><li><p>MULTIPLE-LICENSED CODE.</p><p>Initial Developer may designate portions of the Covered Code as ?Multiple-Licensed?. ?Multiple-Licensed? means that the Initial Developer permits you to utilize portions of the Covered Code under Your choice of the alternative licenses, if any, specified by the Initial Developer in the file described in Exhibit A.</p></li></ol></div><p>Exhibit A - Sun Public License Notice.</p><div class="blockquote"><blockquote class="blockquote"><p>The contents of this file are subject to the Sun Public License
-Version 1.0 (the License); you may not use this file except in
-compliance with the License. A copy of the License is available at
-http://www.sun.com/
-</p><p>The Original Code is _________________. The Initial Developer of the
-Original Code is ___________. Portions created by ______ are Copyright
-(C)_________. All Rights Reserved.</p><p>Contributor(s): ______________________________________.</p><p>Alternatively, the contents of this file may be used under the terms
-of the _____ license (the ?[___] License?), in which case the
-provisions of [______] License are applicable instead of those above.
-If you wish to allow use of your version of this file only under the
-terms of the [____] License and not to allow others to use your
-version of this file under the SPL, indicate your decision by deleting
-the provisions above and replace them with the notice and other
-provisions required by the [___] License. If you do not delete the
-provisions above, a recipient may use your version of this file under
-either the SPL or the [___] License.</p><p>[NOTE: The text of this Exhibit A may differ slightly from the text of
-the notices in the Source Code files of the Original Code. You should
-use the text of this Exhibit A rather than the text found in the
-Original Code Source Code for Your Modifications.]</p></blockquote></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="license-common-public.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="manual.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="bi01.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Appendix&nbsp;G.&nbsp;Common Public License Version 1.0&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;Bibliography</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/links.html b/utils/jalopy/docs/links.html
deleted file mode 100755 (executable)
index fb8bddc..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>Jalopy - Links</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><meta name="keywords" content="Java, convention, source, code, formatter, beautifier, pretty, printer, format, beautify, layout, coding, open, style, standard, transform, parser, Sun, ANTLR, Ant, Eclipse, JBuilder, NetBeans, jEdit, jakarta, JDeveloper, generator, generation, JDE, maven">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="center"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-            This page generated: <strong>June 8 2004</strong></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" width="100%" cellspacing="0" cellpadding="5"><tbody><tr><td><div class="article" lang="en"><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="integrator"></a>Integrators</h2></div></div><div></div></div><div class="blockquote"><blockquote class="blockquote"><div class="informaltable"><table cellspacing="0" cellpadding="2" width="100%" border="0" style="border-collapse: collapse;"><colgroup><col><col></colgroup><tbody><tr valign="top"><td style="" valign="top"><a href="http://koalagml.sf.net/" target="_top">koalaGML</a></td><td style="" valign="top">Java/Swing Code Generator</td></tr><tr valign="top"><td style="" valign="top"><a href="http://openuss.sourceforge.net/" target="_top">OpenUSS</a></td><td style="" valign="top">J2EE-based E-Learning platform</td></tr><tr valign="top"><td style="" valign="top"><a href="http://www.informatikatelier.com/" target="_top">FormsWizard, PLSQLWizard</a></td><td style="" valign="top">Translators for Oracle applications to Java (commercial)</td></tr></tbody></table></div></blockquote></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="open-source"></a>Related Open Source projects</h2></div></div><div></div></div><div class="blockquote"><blockquote class="blockquote"><div class="informaltable"><table cellspacing="0" cellpadding="2" width="100%" border="0" style="border-collapse: collapse;"><colgroup><col><col></colgroup><tbody><tr valign="top"><td style="" valign="top"><a href="http://astyle.sf.net/" target="_top">Artistic Style</a></td><td style="" valign="top">Java Source Code Indentation Filter</td></tr><tr valign="top"><td style="" valign="top"><a href="http://sf.net/projects/barat/" target="_top">Barat</a></td><td style="" valign="top">Code Parser/Analyser</td></tr><tr valign="top"><td style="" valign="top"><a href="http://checkstyle.sf.net/" target="_top">CheckStyle</a></td><td style="" valign="top">Java Coding Convention Checker</td></tr><tr valign="top"><td style="" valign="top"><a href="http://importscrubber.sf.net/" target="_top">ImportScrubber</a></td><td style="" valign="top">Java Import Optimizer</td></tr><tr valign="top"><td style="" valign="top"><a href="http://www.tiobe.com/jacobe.htm" target="_top">Jacobe</a></td><td style="" valign="top">Java Source Code Formatter (not Open Source, but free)</td></tr><tr valign="top"><td style="" valign="top"><a href="http://jcsc.sf.net/" target="_top">JCSC</a></td><td style="" valign="top">Java Coding Style Checker</td></tr><tr valign="top"><td style="" valign="top"><a href="http://jrefactory.sf.net/" target="_top">JRefactory</a></td><td style="" valign="top">Java Refactoring Tool</td></tr><tr valign="top"><td style="" valign="top"><a href="http://mozart-dev.sf.net/" target="_top">Mozart Development Environment</a></td><td style="" valign="top">Framework for user extensible compilers and development tools</td></tr><tr valign="top"><td style="" valign="top"><a href="http://pmd.sf.net/" target="_top">PMD</a></td><td style="" valign="top">Java source code analyser/checker</td></tr><tr valign="top"><td style="" valign="top"><a href="http://qdox.sf.net/" target="_top">QDox</a></td><td style="" valign="top">Framework for extracting class/interface/method definitions</td></tr><tr valign="top"><td style="" valign="top"><a href="http://recoder.sf.net/" target="_top">Recoder</a></td><td style="" valign="top">Source Code Metaprogramming Framework</td></tr><tr valign="top"><td style="" valign="top"><a href="http://www.serc.nl/people/florijn/work/designchecking/RevJava.htm" target="_top">RevJava</a></td><td style="" valign="top">Review assistant for Java programs</td></tr><tr valign="top"><td style="" valign="top"><a href="http://transmogrify.sf.net/" target="_top">Transmogrify</a></td><td style="" valign="top">Java Refactoring Tool</td></tr></tbody></table></div></blockquote></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="commercial"></a>Related commercial projects</h2></div></div><div></div></div><div class="blockquote"><blockquote class="blockquote"><div class="informaltable"><table cellspacing="0" cellpadding="2" width="100%" border="0" style="border-collapse: collapse;"><colgroup><col><col></colgroup><tbody><tr valign="top"><td style="" valign="top"><a href="http://www.jenssoft.com/" target="_top">CodeCompanion</a></td><td style="" valign="top">Java Coding Convention Checker</td></tr><tr valign="top"><td style="" valign="top"><a href="http://www.jindent.com/" target="_top">Jindent</a></td><td style="" valign="top">Java Source Code Formatter</td></tr></tbody></table></div></blockquote></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="convention"></a>Code Conventions and Style Guides</h2></div></div><div></div></div><div class="blockquote"><blockquote class="blockquote"><table class="simplelist" border="0" summary="Simple list"><tr><td>
-<a href="http://www.ambysoft.com/javaCodingStandards.html" target="_top">AmbySoft Coding Standards for Java</a>
-</td></tr><tr><td>
-<a href="http://geosoft.no/javastyle.html" target="_top">Geosoft Java Programming Style Guidelines</a>
-</td></tr><tr><td>
-<a href="http://www.javaranch.com/style.jsp" target="_top">JavaRanch Java Programming Style Guide</a>
-</td></tr><tr><td>
-<a href="http://www.infospheres.caltech.edu/resources/code_standards/java_standard.html" target="_top">Infospheres Java Coding Standard</a>
-</td></tr><tr><td>
-<a href="http://developer.netscape.com/docs/technote/java/codestyle.html" target="_top">Netscape's Software Coding Standards for Java</a>
-</td></tr><tr><td>
-<a href="http://java.sun.com/docs/codeconv/html/CodeConvTOC.doc.html" target="_top">Sun Java Code Convention</a>
-</td></tr></table></blockquote></div></div></div></td></tr><tr><td height="20"></td></tr></tbody></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2002, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/manual.html b/utils/jalopy/docs/manual.html
deleted file mode 100755 (executable)
index ab4e694..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>Jalopy User Manual</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="next" href="dedication.html" title="Dedication"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Jalopy User Manual</th></tr><tr><td width="20%" align="left">&nbsp;</td><th width="60%" align="center">&nbsp;</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="dedication.html">Next</a></td></tr></table><hr></div><div class="book" lang="en"><div class="titlepage"><div><div><h1 class="title"><a name="d0e2"></a>Jalopy User Manual</h1></div><div><p class="copyright">Copyright &copy; 2004 Marco Hunsicker</p></div><div><div class="legalnotice"><p class="legalnotice-title"><b>Legal Notice</b></p><p>
-Permission is granted to copy, distribute and/or modify this document under
-the terms of the GNU Free Documentation License, Version 1.1 or any later
-version published by the Free Software Foundation; with no "Invariant Sections",
-"Front-Cover Texts" or "Back-Cover Texts", each as defined in the license.
-</p><p>
-For a copy of the license terms refer to <a href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000">Appendix&nbsp;F, <i>GNU Free Documentation License Version 1.1, March 2000</i></a>.
-</p></div></div></div><div></div><hr></div><div class="toc"><p><b>Table of Contents</b></p><ul><li><span class="preface"><a href="dedication.html">Dedication</a></span></li><li><span class="preface"><a href="acknowledge.html">Acknowledgements</a></span></li><li><span class="preface"><a href="introduction.html">Introduction</a></span></li><li><span class="part"><a href="part-core.html">I. Jalopy core</a></span><ul><li><span class="chapter"><a href="installation.html">1. Installation</a></span></li><li><span class="chapter"><a href="build.html">2. Building</a></span></li><li><span class="chapter"><a href="usage.html">3. Usage</a></span></li><li><span class="chapter"><a href="settings.html">4. Settings</a></span><ul><li><span class="sect1"><a href="settings.html#general">4.1. General</a></span><ul><li><span class="sect2"><a href="settings.html#general-convention">4.1.1. Convention</a></span></li><li><span class="sect2"><a href="settings.html#general-compliance">4.1.2. Compliance</a></span></li><li><span class="sect2"><a href="settings.html#import-export">4.1.3. Import/Export</a></span></li></ul></li><li><span class="sect1"><a href="project.html">4.2. Projects</a></span></li><li><span class="sect1"><a href="printer.html">4.3. Printer</a></span><ul><li><span class="sect2"><a href="printer.html#braces">4.3.1. Braces</a></span></li><li><span class="sect2"><a href="whitespace.html">4.3.2. White Space</a></span></li><li><span class="sect2"><a href="indentation.html">4.3.3. Indentation</a></span></li><li><span class="sect2"><a href="wrapping.html">4.3.4. Line Wrapping</a></span></li><li><span class="sect2"><a href="separation.html">4.3.5. Blank Lines</a></span></li><li><span class="sect2"><a href="comments.html">4.3.6. Comments</a></span></li><li><span class="sect2"><a href="imports.html">4.3.7. Imports</a></span></li><li><span class="sect2"><a href="environment.html">4.3.8. Environment</a></span></li><li><span class="sect2"><a href="javadoc.html">4.3.9. Javadoc</a></span></li><li><span class="sect2"><a href="header.html">4.3.10. Header</a></span></li><li><span class="sect2"><a href="footer.html">4.3.11. Footer</a></span></li><li><span class="sect2"><a href="sorting.html">4.3.12. Sorting</a></span></li><li><span class="sect2"><a href="misc.html">4.3.13. Misc</a></span></li></ul></li><li><span class="sect1"><a href="inspector.html">4.4. Code Inspector</a></span><ul><li><span class="sect2"><a href="inspector.html#d0e5095">4.4.1. General</a></span></li><li><span class="sect2"><a href="inspector-naming.html">4.4.2. Naming</a></span></li></ul></li><li><span class="sect1"><a href="messages.html">4.5. Messages</a></span></li></ul></li></ul></li><li><span class="part"><a href="part-plugins.html">II. Plug-ins</a></span><ul><li><span class="chapter"><a href="plugin-ant.html">5. Ant Plug-in task</a></span><ul><li><span class="sect1"><a href="plugin-ant.html#plugin-ant-installation">5.1. Installation</a></span><ul><li><span class="sect2"><a href="plugin-ant.html#plugin-ant-installation-requirements">5.1.1. System requirements</a></span></li><li><span class="sect2"><a href="plugin-ant.html#plugin-ant-installation-installation">5.1.2. Installation</a></span></li></ul></li><li><span class="sect1"><a href="plugin-ant-config.html">5.2. Configuration</a></span></li><li><span class="sect1"><a href="plugin-ant-usage.html">5.3. Usage</a></span></li><li><span class="sect1"><a href="plugin-ant-license.html">5.4. License</a></span></li></ul></li><li><span class="chapter"><a href="plugin-console.html">6. Console Application</a></span><ul><li><span class="sect1"><a href="plugin-console.html#plugin-console-installation">6.1. Installation</a></span></li><li><span class="sect1"><a href="plugin-console-usage.html">6.2. Usage</a></span></li><li><span class="sect1"><a href="plugin-console-license.html">6.3. License</a></span></li></ul></li><li><span class="chapter"><a href="plugin-eclipse.html">7. Eclipse Plug-in</a></span><ul><li><span class="sect1"><a href="plugin-eclipse.html#plugin-eclipse-installation">7.1. Installation</a></span></li><li><span class="sect1"><a href="plugin-eclipse-integration.html">7.2. Integration</a></span></li><li><span class="sect1"><a href="plugin-eclipse-license.html">7.3. License</a></span></li></ul></li><li><span class="chapter"><a href="plugin-jbuilder.html">8. JBuilder OpenTool</a></span><ul><li><span class="sect1"><a href="plugin-jbuilder.html#plugin-jbuilder-installation">8.1. Installation</a></span></li><li><span class="sect1"><a href="plugin-jbuilder-integration.html">8.2. Integration</a></span></li><li><span class="sect1"><a href="plugin-jbuilder-license.html">8.3. License</a></span></li></ul></li><li><span class="chapter"><a href="plugin-jdev.html">9. JDeveloper Extension</a></span><ul><li><span class="sect1"><a href="plugin-jdev.html#plugin-jdev-installation">9.1. Installation</a></span></li><li><span class="sect1"><a href="plugin-jdev-integration.html">9.2. Integration</a></span></li><li><span class="sect1"><a href="plugin-jdev-license.html">9.3. License</a></span></li></ul></li><li><span class="chapter"><a href="plugin-jedit.html">10. jEdit Plug-in</a></span><ul><li><span class="sect1"><a href="plugin-jedit.html#plugin-jedit-installation">10.1. Installation</a></span></li><li><span class="sect1"><a href="plugin-jedit-integration.html">10.2. Integration</a></span></li><li><span class="sect1"><a href="plugin-jedit-license.html">10.3. License</a></span></li></ul></li><li><span class="chapter"><a href="plugin-netbeans.html">11. NetBeans/Sun ONE Studio module</a></span><ul><li><span class="sect1"><a href="plugin-netbeans.html#plugin-netbeans-installation">11.1. Installation</a></span></li><li><span class="sect1"><a href="plugin-netbeans-integration.html">11.2. Integration</a></span></li><li><span class="sect1"><a href="plugin-netbeans-license.html">11.3. License</a></span></li></ul></li></ul></li><li><span class="appendix"><a href="dependencies.html">A. Library Dependencies</a></span></li><li><span class="appendix"><a href="license-bsd.html">B. The Jalopy BSD License</a></span></li><li><span class="appendix"><a href="license-antlr.html">C. ANTLR SOFTWARE RIGHTS</a></span></li><li><span class="appendix"><a href="license-apache.html">D. The Apache Software License, Version 1.1</a></span></li><li><span class="appendix"><a href="license-gnu.html">E. GNU GENERAL PUBLIC LICENSE Version 2, June 1991</a></span></li><li><span class="appendix"><a href="license-gnu-doc.html">F. GNU Free Documentation License Version 1.1, March 2000</a></span></li><li><span class="appendix"><a href="license-common-public.html">G. Common Public License Version 1.0</a></span></li><li><span class="appendix"><a href="license-sun-public.html">H. SUN PUBLIC LICENSE Version 1.0</a></span></li><li><span class="bibliography"><a href="bi01.html">Bibliography</a></span></li><li><span class="index"><a href="ix01.html">Index</a></span></li></ul></div><div class="list-of-tables"><p><b>List of Tables</b></p><ul><li>2.1. <a href="build.html#tab-build-prerequisites">Software needed to build from the sources</a></li><li>4.1. <a href="environment.html#tab-environment-local">Local environment variables</a></li><li>4.2. <a href="javadoc.html#tab-character-entities">Character entities</a></li><li>5.1. <a href="plugin-ant-usage.html#tab-ant-params">Jalopy Ant task parameters</a></li><li>A.1. <a href="dependencies.html#tab-library-dependencies">Library dependencies</a></li></ul></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left">&nbsp;</td><td width="20%" align="center">&nbsp;</td><td width="40%" align="right">&nbsp;<a accesskey="n" href="dedication.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">&nbsp;</td><td width="20%" align="center">&nbsp;</td><td width="40%" align="right" valign="top">&nbsp;Dedication</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/messages.html b/utils/jalopy/docs/messages.html
deleted file mode 100755 (executable)
index b0b1b7a..0000000
+++ /dev/null
@@ -1,78 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>4.5.&nbsp;Messages</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="previous" href="inspector-naming.html" title="4.4.2.&nbsp;Naming"><link rel="next" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index"><link rel="subsection" href="messages.html#messages-categories" title="4.5.1.&nbsp;Categories"><link rel="subsection" href="messages.html#messsages-misc" title="4.5.2.&nbsp;Misc">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4.5.&nbsp;Messages</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="inspector-naming.html">Prev</a>&nbsp;</td><th width="60%" align="center">Chapter&nbsp;4.&nbsp;Settings</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="part-plugins.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="messages"></a>4.5.&nbsp;Messages</h2></div></div><div></div></div><p>
-Controls the Jalopy message output.
-</p><p>
-Given the sensitive nature of automatic source code processing, it is quite
-important to keep informed about what is going on during the formatting process.
-The default configuration should be sufficient for most users, so there should
-seldom arise the need to change anything here.
-</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="messages-categories"></a>4.5.1.&nbsp;Categories</h4></div></div><div></div></div><p>
-Jalopy provides different message categories for setting verbosity level.
-Changing the threshold from <b class="userinput"><tt>ERROR</tt></b> to <b class="userinput"><tt>DEBUG</tt></b>
-successively displays more (albeit not necessarily more useful) messages.
-</p><div class="itemizedlist"><ul type="disc"><li><p>
-General
-</p><p>
-General purpose chain for I/O activity and all sorts of stuff that doesn't fit
-elsewhere.
-</p></li><li><p>
-Parsing
-</p><p>
-Message chain for messages related to the Java language parser.
-</p></li><li><p>
-Javadoc parsing
-</p><p>
-Message chain for messages related to the parsing of Javadoc comments.
-</p></li><li><p>
-Transforming
-</p><p>
-Message chain for messages related to the post-processing of the generated AST.
-</p></li><li><p>
-Printing
-</p><p>
-Message chain for the main printing engine.
-</p></li><li><p>
-Javadoc Printing
-</p><p>
-Message chain for Javadoc printing related messages.
-</p></li></ul></div></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="messsages-misc"></a>4.5.2.&nbsp;Misc</h4></div></div><div></div></div><div class="itemizedlist"><ul type="disc"><li><p>
-Show stacktrace
-</p><p>
-Enables or disables the inclusion of the current execution stack trace with
-error messages. This proves useful in case you need to file a bug report as it
-reveals the source of the error.
-</p></li></ul></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="inspector-naming.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="settings.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="part-plugins.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4.4.2.&nbsp;Naming&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;Part&nbsp;II.&nbsp;Plug-ins</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/misc.html b/utils/jalopy/docs/misc.html
deleted file mode 100755 (executable)
index e7c7431..0000000
+++ /dev/null
@@ -1,183 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>4.3.13.&nbsp;Misc</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="printer.html" title="4.3.&nbsp;Printer"><link rel="previous" href="sorting.html" title="4.3.12.&nbsp;Sorting"><link rel="next" href="inspector.html" title="4.4.&nbsp;Code Inspector"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index"><link rel="subsection" href="misc.html#misc-misc" title="4.3.13.1.&nbsp;Misc"><link rel="subsection" href="misc.html#misc-history" title="4.3.13.2.&nbsp;History"><link rel="subsection" href="misc.html#misc-backup" title="4.3.13.3.&nbsp;Backup"><link rel="subsection" href="misc.html#misc-threads" title="4.3.13.4.&nbsp;Threads">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4.3.13.&nbsp;Misc</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="sorting.html">Prev</a>&nbsp;</td><th width="60%" align="center">4.3.&nbsp;Printer</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="inspector.html">Next</a></td></tr></table><hr></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="misc"></a>4.3.13.&nbsp;Misc</h3></div></div><div></div></div><p>
-Lets you control miscellaneous settings that doesn't fit elsewhere.
-</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="misc-misc"></a>4.3.13.1.&nbsp;Misc</h4></div></div><div></div></div><div class="itemizedlist"><ul type="disc"><li><p><a name="paren-add"></a>
-Insert expression parentheses
-</p><a class="indexterm" name="d0e4907"></a><a class="indexterm" name="d0e4912"></a><p>
-It is always good advise to use more parentheses than you think you need. They
-may not be needed, but they add clarity and don't cost anything.
-</p><div class="example"><a name="ex-misc-expr"></a><p class="title"><b>Example&nbsp;4.150.&nbsp;How is this expression evaluated?</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-int result = 12 + 4 % 3 * 7 / 8;
-</pre></td></tr></table></div><p></p><div class="example"><a name="ex-misc-expr-continued"></a><p class="title"><b>Example&nbsp;4.151.&nbsp;How is this expression evaluated? (continued)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-int result = 12 + ((4 % 3 * 7) / 8);
-</pre></td></tr></table></div><p></p></li><li><p><a name="misc-insert-uid"></a>
-Insert serial version UID
-</p><a class="indexterm" name="d0e4932"></a><p>
-Common sense dictates to declare an explicit serial version UID in every
-serializable class to eliminate the serial version UID as a potential source
-of incompatibility (with the additional benefit of a small performance gain).
-If this switch is enabled and the class directly dereives from either
-<tt class="filename">java.io.Serializable</tt> or <tt class="filename">java.io.Externalizable</tt>,
-Jalopy computes and inserts a serial version UID for the class.
-</p><p>
-For this feature to work, the class that has its serial version UID computed
-needs to be available on the classpath.
-</p></li><li><p><a name="misc-logging-conditional"></a>
-Insert logging conditional
-</p><p>
-Typically, logging systems have a method that submits a logging message like
-
-</p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="screen">
-logger.debug("some message: " + someVar);
-</pre></td></tr></table><p>
-</p><p>
-This is fine, but if the debug level is set such that this message will
-<span class="emphasis"><em>NOT</em></span> display, then time is wasted doing the string marshalling.
-</p><p>
-Thus, the preferred way to do this is
-
-</p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="screen">
-if (logger.isDebugEnabled()) {
-    logger.debug("some message: " + someVar);
-}
-</pre></td></tr></table><p>
-
-which will only use CPU time if the log message is needed. Enabling this switch
-will ensure that every logging call with the debug level set will be enclosed with
-the conditional expression.
-</p><p>
-Use this feature with care! The current implementation only supports the Jakarta
-Log4J toolkit and is somewhat weak in that every method call called
-<i class="firstterm">debug</i> is treated as a logging call which could be incorrect
-in your application. However, it works fine for the <i class="firstterm">l7dlog</i> calls.
-</p></li><li><p><a name="misc-trailing-newline"></a>
-Insert trailing newline
-</p><p>
-If enabled, Jalopy inserts an empty line at the end of every file. This may
-help to avoid problems with certain text formatters and processors.
-</p><p>
-Note that Jalopy always inserts at least one empty line after footers, so there
-is no real need (but it doesn't hurt) to check the mark in case footer insertion
-will be performed (see <a href="footer.html" title="4.3.11.&nbsp;Footer">Section&nbsp;4.3.11, &#8220;Footer&#8221;</a>)
-</p></li><li><p><a name="misc-array-brackets"></a>
-Array brackets after identifiers
-</p><p>
-Lets you choose where the brackets of array types should be placed.
-</p><p>
-By default, Jalopy prints the square brackets right after the array type.
-</p><div class="example"><a name="ex-misc-array-brackets"></a><p class="title"><b>Example&nbsp;4.152.&nbsp;Array brackets after type</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-int[] a;
-</pre></td></tr></table></div><p>
-But C/C++ programmers may expect them to appear after the identifier.
-</p><div class="example"><a name="ex-misc-array-brackets-identifier"></a><p class="title"><b>Example&nbsp;4.153.&nbsp;Array brackets after identifier</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-int a[];
-</pre></td></tr></table></div><p></p></li><li><p>
-Force formatting
-</p><p>
-Jalopy can keep track of which files have been formatted previously.
-See <a href="misc.html#misc-history" title="4.3.13.2.&nbsp;History">Section&nbsp;4.3.13.2, &#8220;History&#8221;</a> below. If History is enabled, Jalopy will
-exclude files that have a modification date coincident with the last formatting.
-However, you can override this history check to force a format. For example,
-you might need to update the copyright notice for the whole code base. Enabling
-this switch ensures that all source files are always be formatted. Note that
-this switch is only meaningful if the history feature is enabled.
-</p></li></ul></div></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="misc-history"></a>4.3.13.2.&nbsp;History</h4></div></div><div></div></div><a class="indexterm" name="d0e5010"></a><p>
-The history feature offers a way to optimize the speed at which Jalopy processes
-of a group of files repeatedly. Using history, Jalopy is able to track file
-modifications between successive invocations, and only format those source
-files which have actually changed, or which weren't processed previously.
-This can save a huge amount of execution time for a project that is formatted
-repeatedly over time. There are two methods for keeping history.
-</p><div class="itemizedlist"><ul type="disc"><li><p><a name="history-file"></a>
-Use history file
-</p><a class="indexterm" name="d0e5019"></a><a class="indexterm" name="d0e5024"></a><p>
-If you can't get along with a history header comment at the top of each source
-file, but would like historical optimization, the file-based approach may work
-for you. The history information of previous formatting will be saved in a file
-<tt class="filename">history.dat</tt> under the Jalopy settings directory.
-</p><p>
-Note that this file will grow over time, especially if one manages several big
-projects. So the history file could become quite huge. As all history entries
-are read into memory at startup, it could eat up quite a bit of memory space.
-Therefore a little history viewer is provided which enables you to selectively
-remove obsolete entries.
-</p><p>
-In order to effectively use formatting of a project with several developers it is
-nice to be able to only format files which have changed. There are three methods of
-working out if a file has changed provided in a drop down. Timestamp will use the
-modification time of the file, this does not work very well with source control
-and multiple developers. There are two standard checksums available. These
-work by taking a checksum of the file and comparing it to the one in the history file.
-If this checksum is different, the file is parsed and formatted in memory and a new
-checksum calculated. If the new checksum is different than the checksum for the
-unformatted file, it is written to disk. This stops files that have just been updated
-from source control from having being formatted (and timestamps updated).
-</p><p>
-Use the <span><b class="guibutton">View...</b></span> button to display the history viewer. You
-can selectively remove entries via the popup menu.
-</p></li><li><p><a name="history-comment"></a>
-Use history comments
-</p><a class="indexterm" name="d0e5044"></a><a class="indexterm" name="d0e5049"></a><a class="indexterm" name="d0e5054"></a><p>
-Jalopy will insert a small comment in the first line of every source file.
-The comment encodes the time a file was last formatted along with the package
-name of the file. This method is precise and relatively foolproof but does not work well
-with SCM tools.
-</p></li></ul></div></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="misc-backup"></a>4.3.13.3.&nbsp;Backup</h4></div></div><div></div></div><p>
-For security reasons Jalopy creates a backup copy of the currently
-processed file so it can be restored in case a severe error occured during the
-formatting process. The original file is stored in the backup directory and normally
-deleted after the newly formatted file has been successfully written.
-</p><div class="itemizedlist"><ul type="disc"><li><p>
-Level
-</p><p>
-The backup level defines how many numbered backups should be retained (up to 30).
-The default is to never hold any backups.
-</p></li><li><p>
-Directory
-</p><p>
-Specifies where file backups are stored. You should leave this setting untouched
-in order to make your code convention portable across different systems and platforms.
-</p></li></ul></div></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="misc-threads"></a>4.3.13.4.&nbsp;Threads</h4></div></div><div></div></div><p>
-Jalopy, more precisely the provided Plug-ins, are multi-threaded. On
-multi-processor systems the work can be divided onto several processors to
-speed up processing.
-</p><div class="itemizedlist"><ul type="disc"><li><p>
-Number
-</p><p>
-Specifies the number of processing threads to be used. This setting should be
-equal to the number of processors your system has.
-</p></li></ul></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="sorting.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="printer.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="inspector.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4.3.12.&nbsp;Sorting&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;4.4.&nbsp;Code Inspector</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/part-core.html b/utils/jalopy/docs/part-core.html
deleted file mode 100755 (executable)
index 189a6b6..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>Part&nbsp;I.&nbsp;Jalopy core</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="manual.html" title="Jalopy User Manual"><link rel="previous" href="introduction.html" title="Introduction"><link rel="next" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Part&nbsp;I.&nbsp;Jalopy core</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="introduction.html">Prev</a>&nbsp;</td><th width="60%" align="center">&nbsp;</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="installation.html">Next</a></td></tr></table><hr></div><div class="part" lang="en"><div class="titlepage"><div><div><h1 class="title"><a name="part-core"></a>Jalopy core</h1></div></div><div></div></div><div class="partintro" lang="en"><div><div></div><div></div></div><p>
-This part of the manual covers the core Jalopy engine: generic installation and
-usage instructions along with a detailed discussion of the available switches
-to customize application behavior and formatting output.
-</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="introduction.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="manual.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="installation.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Introduction&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;Chapter&nbsp;1.&nbsp;Installation</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/part-plugins.html b/utils/jalopy/docs/part-plugins.html
deleted file mode 100755 (executable)
index 9453a47..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>Part&nbsp;II.&nbsp;Plug-ins</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="manual.html" title="Jalopy User Manual"><link rel="previous" href="messages.html" title="4.5.&nbsp;Messages"><link rel="next" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Part&nbsp;II.&nbsp;Plug-ins</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="messages.html">Prev</a>&nbsp;</td><th width="60%" align="center">&nbsp;</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="plugin-ant.html">Next</a></td></tr></table><hr></div><div class="part" lang="en"><div class="titlepage"><div><div><h1 class="title"><a name="part-plugins"></a>Plug-ins</h1></div></div><div></div></div><div class="partintro" lang="en"><div><div></div><div></div></div><p>
-This part of the manual covers the different Plug-ins available.
-</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="messages.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="manual.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="plugin-ant.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4.5.&nbsp;Messages&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;Chapter&nbsp;5.&nbsp;Ant Plug-in task</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/plugin-ant-config.html b/utils/jalopy/docs/plugin-ant-config.html
deleted file mode 100755 (executable)
index 974a6c8..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>5.2.&nbsp;Configuration</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="previous" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="next" href="plugin-ant-usage.html" title="5.3.&nbsp;Usage"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">5.2.&nbsp;Configuration</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="plugin-ant.html">Prev</a>&nbsp;</td><th width="60%" align="center">Chapter&nbsp;5.&nbsp;Ant Plug-in task</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="plugin-ant-usage.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="plugin-ant-config"></a>5.2.&nbsp;Configuration</h2></div></div><div></div></div><p>
-To display the settings dialog you should use the provided wrapper script for
-your platform (available in the <tt class="filename">/bin</tt> folder of the distribution).
-</p><p>
-Of course, you can setup the classpath yourself by adding all
-<tt class="filename">.jar</tt> files as usual to the classpath and then type
-</p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="synopsis">
-java Preferences
-</pre></td></tr></table><p></p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="plugin-ant.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="plugin-ant.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="plugin-ant-usage.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Chapter&nbsp;5.&nbsp;Ant Plug-in task&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;5.3.&nbsp;Usage</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/plugin-ant-license.html b/utils/jalopy/docs/plugin-ant-license.html
deleted file mode 100755 (executable)
index 8ffc273..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>5.4.&nbsp;License</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="previous" href="plugin-ant-usage.html" title="5.3.&nbsp;Usage"><link rel="next" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">5.4.&nbsp;License</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="plugin-ant-usage.html">Prev</a>&nbsp;</td><th width="60%" align="center">Chapter&nbsp;5.&nbsp;Ant Plug-in task</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="plugin-console.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="plugin-ant-license"></a>5.4.&nbsp;License</h2></div></div><div></div></div><p>
-The Ant Plug-in is "<span class="bold"><b><a href="http://opensource.org/docs/certification_mark.php" target="_top">OSI Certified Open Source Software</a></b></span>",
-released under a BSD license.
-</p><p>
-See <a href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License">Appendix&nbsp;B, <i>The Jalopy BSD License</i></a> for the license
-and refer to <a href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies">Appendix&nbsp;A, <i>Library Dependencies</i></a> for the license terms of the accompanying 3rd party libraries.
-</p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="plugin-ant-usage.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="plugin-ant.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="plugin-console.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">5.3.&nbsp;Usage&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;Chapter&nbsp;6.&nbsp;Console Application</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/plugin-ant-usage.html b/utils/jalopy/docs/plugin-ant-usage.html
deleted file mode 100755 (executable)
index 6b39254..0000000
+++ /dev/null
@@ -1,146 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>5.3.&nbsp;Usage</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="previous" href="plugin-ant-config.html" title="5.2.&nbsp;Configuration"><link rel="next" href="plugin-ant-license.html" title="5.4.&nbsp;License"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index"><link rel="subsection" href="plugin-ant-usage.html#plugin-ant-usage-example" title="5.3.1.&nbsp;Example">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">5.3.&nbsp;Usage</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="plugin-ant-config.html">Prev</a>&nbsp;</td><th width="60%" align="center">Chapter&nbsp;5.&nbsp;Ant Plug-in task</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="plugin-ant-license.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="plugin-ant-usage"></a>5.3.&nbsp;Usage</h2></div></div><div></div></div><p>
-The Jalopy task can take a few parameters to control the runtime behavior of
-Jalopy. If omitted, your current preferences settings will be used.
-</p><p>
-Nested <a href="http://jakarta.apache.org/ant/manual/CoreTypes/fileset.html" target="_top">FileSets</a>
-can and should be used to specify the source files and/or directories.
-</p><div class="table"><a name="tab-ant-params"></a><p class="title"><b>Table&nbsp;5.1.&nbsp;Jalopy Ant task parameters</b></p><table summary="Jalopy Ant task parameters" cellspacing="0" cellpadding="3" border="0" style="border-collapse: collapse;border-top: 0.5pt solid ; border-bottom: 0.5pt solid ; border-left: 0.5pt solid ; border-right: 0.5pt solid ; "><colgroup><col><col><col></colgroup><thead><tr><th style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; ">Attribute</th><th style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; ">Description</th><th style="border-bottom: 0.5pt solid ; ">Required</th></tr></thead><tbody><tr style="border-bottom: 0.5pt solid ; "><td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; ">backup</td><td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; ">Indicates whether backup copies for all file sources should be kept.</td><td style="border-bottom: 0.5pt solid ; ">No</td></tr><tr style="border-bottom: 0.5pt solid ; "><td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; ">classpathrev</td><td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; ">The classpath to setup the class repository with, given as a <a href="http://jakarta.apache.org/ant/manual/using.html#references" target="_top">reference</a> to a path defined elsewhere. If you want the <a href="imports.html#import-optimization" title="4.3.7.3.&nbsp;Optimize">import optimization feature</a> to work, you have to specify the classpath reference you use to compile your sources here.</td><td style="border-bottom: 0.5pt solid ; ">No</td></tr><tr style="border-bottom: 0.5pt solid ; "><td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; ">convention</td><td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; ">Sets the location to the convention file to use - given either relative to the project's basedir or as an absolute local path or internet address. If omitted, the current settings are used, if available. Otherwise the Jalopy build-in defaults will be used.</td><td style="border-bottom: 0.5pt solid ; ">No</td></tr><tr style="border-bottom: 0.5pt solid ; "><td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; ">destdir</td><td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; ">Sets the destination directory to create/copy all formatting output into. If the given directory does not exist, it will be created. If this attribute is ommitted, all input files will simply be overriden.</td><td style="border-bottom: 0.5pt solid ; ">No</td></tr><tr style="border-bottom: 0.5pt solid ; "><td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; ">encoding</td><td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; ">Sets the encoding that controls how Jalopy interprets text files containing characters beyond the ASCII character set. Defaults to the platform default encoding.</td><td style="border-bottom: 0.5pt solid ; ">No</td></tr><tr style="border-bottom: 0.5pt solid ; "><td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; ">failonerror</td><td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; ">Indicates whether a run should be held if errors occured. Defaults to "true".</td><td style="border-bottom: 0.5pt solid ; ">No</td></tr><tr style="border-bottom: 0.5pt solid ; "><td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; ">file</td><td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; ">Specifies a single source file to format.</td><td style="border-bottom: 0.5pt solid ; ">Yes, if no fileset is specified.</td></tr><tr style="border-bottom: 0.5pt solid ; "><td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; ">fileformat</td><td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; ">Sets the file format of the output files. The file format controls what end of line character is used. Either one of "UNIX", "DOS", MAC", "DEFAULT" or "AUTO" can be used. Defaults to "AUTO" (case insensitive).</td><td style="border-bottom: 0.5pt solid ; ">No</td></tr><tr style="border-bottom: 0.5pt solid ; "><td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; ">force</td><td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; ">Indicates whether the formatting of files should be forced, even if the file is up-to-date.</td><td style="border-bottom: 0.5pt solid ; ">No</td></tr><tr style="border-bottom: 0.5pt solid ; "><td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; ">history</td><td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; ">Specifies the history policy to use. Either one of
-  "COMMENT", "FILE" or
-  "NONE" can be used.
-  </td><td style="border-bottom: 0.5pt solid ; ">No</td></tr><tr style="border-bottom: 0.5pt solid ; "><td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; ">javadoc</td><td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; ">Indicates whether Javadoc related messages should be printed.</td><td style="border-bottom: 0.5pt solid ; ">No</td></tr><tr style="border-bottom: 0.5pt solid ; "><td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; ">loglevel</td><td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; ">Specifies the logging level for message output. Either one of
-  "ERROR", "WARN", "INFO" or "DEBUG" can be used.</td><td style="border-bottom: 0.5pt solid ; ">No</td></tr><tr style="border-bottom: 0.5pt solid ; "><td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; ">style</td><td style="border-right: 0.5pt solid ; border-bottom: 0.5pt solid ; ">DEPRECATED. See <span class="emphasis"><em>convention</em></span></td><td style="border-bottom: 0.5pt solid ; ">No</td></tr><tr><td style="border-right: 0.5pt solid ; ">threads</td><td style="border-right: 0.5pt solid ; ">Specifies the number of processing threads to use. Integer between <tt class="literal">1</tt> - <tt class="literal">8</tt>.
-  </td><td style="">No</td></tr></tbody></table></div><p></p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="plugin-ant-usage-example"></a>5.3.1.&nbsp;Example</h4></div></div><div></div></div><p>
-The following example demonstrates how you can make use of the Jalopy Ant task.
-</p><p>
-Note that the "format" target depends on the "compile" target.
-This way we can be sure that the given classpathref does cover all types used
-in your sources (and this is an absolute necessity for the import optimization feature
-to work reliable).
-</p><div class="example"><a name="ex-ant-build-file"></a><p class="title"><b>Example&nbsp;5.1.&nbsp;Example Ant build file</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-&lt;?xml version="1.0" ?&gt;
-&lt;project name="myProject" default="format" basedir="." &gt;
-
-  &lt;property name="dir.jalopy" value="/mystuff/jalopy/bin" /&gt;
-  &lt;property name="dir.lib" value="${basedir}/ext/lib" /&gt;
-  &lt;property name="dir.compile" value="${basedir}/tmp~/build/classes" /&gt;
-  &lt;property name="dir.src.java" value="${basedir}/src/java" /&gt;
-
-  &lt;!-- ==================================================================== --&gt;
-  &lt;!-- Defines the Jalopy task                                              --&gt;
-  &lt;!-- ==================================================================== --&gt;
-  &lt;taskdef name="jalopy"
-           classname="de.hunsicker.jalopy.plugin.ant.AntPlugin"&gt;
-    &lt;!--
-
-      we did not copy the needed .jars into the /lib directory of Ant in order
-      to avoid possible classpath issues, so we have to specify a lookup
-      classpath here
-
-      --&gt;
-    &lt;classpath&gt;
-      &lt;fileset dir="${dir.jalopy}"&gt;
-        &lt;include name="*.jar" /&gt;
-      &lt;/fileset&gt;
-    &lt;/classpath&gt;
-  &lt;/taskdef&gt;
-
-
-  &lt;!-- ==================================================================== --&gt;
-  &lt;!-- Defines the project classpath                                        --&gt;
-  &lt;!-- ==================================================================== --&gt;
-  &lt;path id="project.classpath" &gt;
-
-    &lt;!-- our compilation directory --&gt;
-    &lt;pathelement location="${dir.compile}" /&gt;
-
-    &lt;!-- needed 3rd party libraries --&gt;
-    &lt;fileset dir="${dir.lib}" &gt;
-      &lt;include name="**/*.jar" /&gt;
-    &lt;/fileset&gt;
-  &lt;/path&gt;
-
-
-  &lt;!-- ==================================================================== --&gt;
-  &lt;!-- Compiles the project sources                                         --&gt;
-  &lt;!-- ==================================================================== --&gt;
-  &lt;target name="compile"
-          depends="init"&gt;
-    &lt;javac destdir="${dir.compile}"
-           fork="true"&gt;
-      &lt;classpath refid="project.classpath" /&gt;
-      &lt;src path="${dir.src.java}" /&gt;
-    &lt;/javac&gt;
-  &lt;/target&gt;
-
-
-  &lt;!-- ==================================================================== --&gt;
-  &lt;!-- Formats all source files                                             --&gt;
-  &lt;!-- ==================================================================== --&gt;
-  &lt;target name="format" depends="compile"&gt;
-
-    &lt;!--
-
-      Invokes Jalopy as follows:
-
-      - All formatted files will have unix fileformat (\n)
-      - Load your code convention from the given url
-      - Override the convention to use the file history feature
-      - Override the convention to use alder32 checksums of files for history testing
-      - Override the convention to use loglevel "info"
-      - Override the convention to use 2 threads
-      - The import optimization feature will work (if enabled in the active
-        convention), because a classpath reference is specified
-
-        Don't forget to setup an include pattern as Jalopy truly expects
-        valid Java source files as input!
-
-      --&gt;
-    &lt;jalopy fileformat="unix"
-            convention="http://www.foo.com/myConvention.xml"
-            history="file"
-            historymethod="adler32"
-            loglevel="info"
-            threads="2"
-            classpathref="project.classpath"&gt;
-      &lt;fileset dir="${dir.src.java}"&gt;
-        &lt;include name="**/*.java" /&gt;
-      &lt;/fileset&gt;
-    &lt;/jalopy&gt;
-  &lt;/target&gt;
-&lt;/project&gt;
-</pre></td></tr></table></div><p></p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="plugin-ant-config.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="plugin-ant.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="plugin-ant-license.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">5.2.&nbsp;Configuration&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;5.4.&nbsp;License</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/plugin-ant.html b/utils/jalopy/docs/plugin-ant.html
deleted file mode 100755 (executable)
index 53b36fa..0000000
+++ /dev/null
@@ -1,83 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>Chapter&nbsp;5.&nbsp;Ant Plug-in task</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="previous" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="next" href="plugin-ant-config.html" title="5.2.&nbsp;Configuration"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index"><link rel="section" href="plugin-ant.html#plugin-ant-installation" title="5.1.&nbsp;Installation"><link rel="section" href="plugin-ant-config.html" title="5.2.&nbsp;Configuration"><link rel="section" href="plugin-ant-usage.html" title="5.3.&nbsp;Usage"><link rel="section" href="plugin-ant-license.html" title="5.4.&nbsp;License">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter&nbsp;5.&nbsp;Ant Plug-in task</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="part-plugins.html">Prev</a>&nbsp;</td><th width="60%" align="center">Part&nbsp;II.&nbsp;Plug-ins</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="plugin-ant-config.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="plugin-ant"></a>Chapter&nbsp;5.&nbsp;Ant Plug-in task</h2></div></div><div></div></div><a class="indexterm" name="d0e5516"></a><a class="indexterm" name="d0e5521"></a><p>
-Describes the installation and usage of the Jalopy Ant Plug-in task.
-</p><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="plugin-ant-installation"></a>5.1.&nbsp;Installation</h2></div></div><div></div></div><p>
-Explains the steps involved in getting the Ant task up and running.
-</p><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="plugin-ant-installation-requirements"></a>5.1.1.&nbsp;System requirements</h3></div></div><div></div></div><p>
-The Plug-in requires Ant 1.3 or higher. It has been tested with 1.3 and 1.5 versions of Ant.
-Please feel free to notify of other success stories.
-See <a href="installation.html#installation-requirements" title="1.1.&nbsp;System requirements">Section&nbsp;1.1, &#8220;System requirements&#8221;</a> for the basic requirements to
-run Jalopy.
-</p><p>
-To obtain more information about this wonderful build tool, visit the official
-Ant home page at the Apache Jakarta site:
-<a href="http://jakarta.apache.org/ant/" target="_top">http://jakarta.apache.org/ant/</a>
-</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="plugin-ant-installation-installation"></a>5.1.2.&nbsp;Installation</h3></div></div><div></div></div><a class="indexterm" name="d0e5546"></a><p>
-The Plug-in comes either as a single <tt class="filename">.zip</tt> or compressed
-<tt class="filename">.tar</tt> archive. Unzipping either one of these files into a directory
-of your choice (referred to as <i class="replaceable"><tt>&lt;INST_DIR&gt;</tt></i>)
-will produce three subdirectories <tt class="filename">/bin</tt>, <tt class="filename">/docs</tt>
-and <tt class="filename">/lib</tt>.
-</p><p>
-</p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="screen">
-..
-  bin/       contains wrapper scripts for different platforms
-  docs/      contains the documentation
-  lib/       contains all necessary libraries
-</pre></td></tr></table><p>
-</p><a class="indexterm" name="d0e5576"></a><a class="indexterm" name="d0e5579"></a><p>
-Before you can use the Jalopy Ant task in your build scripts, you have to add
-it to your system. Maybe the simplest way is to utilize the
-<span><b class="command">&lt;taskdef&gt;</b></span> element in your build script as follows:
-</p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-&lt;taskdef name="jalopy"
-         classname="de.hunsicker.jalopy.plugin.ant.AntPlugin"&gt;
-  &lt;classpath&gt;
-    &lt;fileset dir="<i class="replaceable"><tt>&lt;INST_DIR&gt;</tt></i>/lib"&gt;
-      &lt;include name="*.jar" /&gt;
-    &lt;/fileset&gt;
-  &lt;/classpath&gt;
-&lt;/taskdef&gt;
-</pre></td></tr></table><p>
-If you rather want to add the provided libraries to your classpath (either by
-copying the libraries into the <tt class="filename">/lib</tt> folder of your Ant
-installation or setting up the classpath as usual), please be aware that the
-provided parser (<tt class="filename">aelfred-<i class="replaceable"><tt>xxx</tt></i>.jar</tt>)
-is incompatible with Ant 1.4.1 or prior releases. If you happen to use one of
-these outdated versions, the parser library must not be copied into the
-<tt class="filename">/lib</tt> folder (or added to the classpath) otherwise Ant will fail to work!
-</p></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="part-plugins.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="part-plugins.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="plugin-ant-config.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Part&nbsp;II.&nbsp;Plug-ins&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;5.2.&nbsp;Configuration</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/plugin-console-license.html b/utils/jalopy/docs/plugin-console-license.html
deleted file mode 100755 (executable)
index 757b901..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>6.3.&nbsp;License</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="previous" href="plugin-console-usage.html" title="6.2.&nbsp;Usage"><link rel="next" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">6.3.&nbsp;License</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="plugin-console-usage.html">Prev</a>&nbsp;</td><th width="60%" align="center">Chapter&nbsp;6.&nbsp;Console Application</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="plugin-eclipse.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="plugin-console-license"></a>6.3.&nbsp;License</h2></div></div><div></div></div><p>
-The Console Plug-in is "<span class="bold"><b><a href="http://opensource.org/docs/certification_mark.php" target="_top">OSI Certified Open Source Software</a></b></span>",
-released under the GNU General Public License. See <a href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991">Appendix&nbsp;E, <i>GNU GENERAL PUBLIC LICENSE Version 2, June 1991</i></a>
-for more information.
-</p><p>
-See <a href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License">Appendix&nbsp;B, <i>The Jalopy BSD License</i></a> for the Jalopy license
-and refer to <a href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies">Appendix&nbsp;A, <i>Library Dependencies</i></a> for the license terms of the accompanying 3rd party libraries.
-</p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="plugin-console-usage.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="plugin-console.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="plugin-eclipse.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">6.2.&nbsp;Usage&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;Chapter&nbsp;7.&nbsp;Eclipse Plug-in</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/plugin-console-usage.html b/utils/jalopy/docs/plugin-console-usage.html
deleted file mode 100755 (executable)
index f8c0722..0000000
+++ /dev/null
@@ -1,112 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>6.2.&nbsp;Usage</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="previous" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="next" href="plugin-console-license.html" title="6.3.&nbsp;License"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index"><link rel="subsection" href="plugin-console-usage.html#synopsis" title="6.2.1.&nbsp;Synopsis"><link rel="subsection" href="plugin-console-usage.html#plugin-console-usage-example" title="6.2.2.&nbsp;Examples">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">6.2.&nbsp;Usage</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="plugin-console.html">Prev</a>&nbsp;</td><th width="60%" align="center">Chapter&nbsp;6.&nbsp;Console Application</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="plugin-console-license.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="plugin-console-usage"></a>6.2.&nbsp;Usage</h2></div></div><div></div></div><p>
-Presents the available command line options along with some usage examples.
-</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="synopsis"></a>6.2.1.&nbsp;Synopsis</h4></div></div><div></div></div><a class="indexterm" name="d0e5901"></a><a class="indexterm" name="d0e5904"></a><a class="indexterm" name="d0e5907"></a><p>
-To start Jalopy from the command line you may either use
-</p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="synopsis">
-jalopy [-options] <i class="replaceable"><tt>args</tt></i>...
-</pre></td></tr></table><p>
-or
-</p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="synopsis">
-java Jalopy [-options] <i class="replaceable"><tt>args</tt></i>...
-</pre></td></tr></table><p>
-or
-</p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="synopsis">
-java -jar jalopy-<i class="replaceable"><tt>&lt;version&gt;</tt></i>.jar [-options] <i class="replaceable"><tt>args</tt></i>...
-</pre></td></tr></table><p>
-depending on your installation option.
-</p><p><a name="usage-options"></a>
-You can specify as many <i class="replaceable"><tt>args</tt></i> as you want,
-where <i class="replaceable"><tt>args</tt></i> describes either files,
-directories or filter expressions. You can use any valid Perl5 (5.003)
-regular expression as a filter expression.
-</p><a class="indexterm" name="d0e5944"></a><a class="indexterm" name="d0e5949"></a><a class="indexterm" name="d0e5954"></a><div class="simplesect" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="options"></a>Options</h5></div></div><div></div></div><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="screen">
--c, --convention=FILE   use FILE as code convention file
-    --disclaimer        print software disclaimer
--d, --dest=DIR          use DIR as base output directory
--e, --encoding=WORD     assume WORD as encoding of input files where WORD
-                        describes one of the JDK supported encodings
-                        (if omitted, the platform default is used)
--f, --format=WORD       use WORD as output file format where WORD can be
-                        either UNIX, DOS, MAC, AUTO (the default) or DEFAULT
-                        (all case-insensitive)
-    --force             force formatting even if file up-to-date
--h, --help              display this help
-    --nobackup          don't keep backup files
--r, --recursive{=NUM}   recurse into directories, up to NUM levels
-                        if NUM is omitted, recurses indefinitely
--t, --thread=NUM        use NUM processing threads
--v, --version           print product version and exit
-</pre></td></tr></table><p>
-If no input file(s) are given, Jalopy starts listening on <span class="emphasis"><em>STDIN</em></span>.
-</p></div></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="plugin-console-usage-example"></a>6.2.2.&nbsp;Examples</h4></div></div><div></div></div><p>
-</p><div class="example"><a name="ex-command-line-one"></a><p class="title"><b>Example&nbsp;6.1.&nbsp;Sample command line usage</b></p><a class="indexterm" name="d0e5975"></a><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="synopsis">
-jalopy -r <i class="replaceable"><tt>myDirectory</tt></i>
-</pre></td></tr></table><p>
-Formats all Java source files found in directory <i class="replaceable"><tt>myDirectory</tt></i>
-and all subdirectories. Creates backup copies of all files. The file format
-of the original source files will be kept.
-</p></div><p>
-
-</p><div class="example"><a name="ex-command-line-two"></a><p class="title"><b>Example&nbsp;6.2.&nbsp;Sample command line usage</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="synopsis">
-jalopy -d <i class="replaceable"><tt>/directory</tt></i> -f DOS
-<i class="replaceable"><tt>myFile1.java myFile2.java</tt></i>
-</pre></td></tr></table><p>
-Formats the two files <i class="replaceable"><tt>myFile1.java</tt></i> and
-<i class="replaceable"><tt>myFile2.java</tt></i> and writes the new files into
-directory <i class="replaceable"><tt>/directory</tt></i>. Uses DOS as the file
-format of the new files.
-</p></div><p>
-
-</p><div class="example"><a name="ex-command-line-three"></a><p class="title"><b>Example&nbsp;6.3.&nbsp;Sample command line usage</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="synopsis">
-jalopy -r 3 -d <i class="replaceable"><tt>/directory</tt></i> ^A.*java
-</pre></td></tr></table><p>
-Formats all Java source files found in the current directory and three
-levels down that begin with a captial 'A' and writes the new files into
-directory <i class="replaceable"><tt>/tmp</tt></i>. The file format of the
-original source files will be kept.
-</p></div><p>
-
-</p><div class="example"><a name="ex-command-line-four"></a><p class="title"><b>Example&nbsp;6.4.&nbsp;Sample command line usage</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="synopsis">
-type f:\test\in.java | jalopy &gt; out.java
-</pre></td></tr></table><p>
-Formats the file <tt class="filename">f:\test\in.java</tt> read from STDIN and
-outputs its formatted contents to the file <tt class="filename">out.java</tt> in the
-current directory.
-</p></div><p>
-
-</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="plugin-console.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="plugin-console.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="plugin-console-license.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Chapter&nbsp;6.&nbsp;Console Application&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;6.3.&nbsp;License</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/plugin-console.html b/utils/jalopy/docs/plugin-console.html
deleted file mode 100755 (executable)
index f8275cb..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>Chapter&nbsp;6.&nbsp;Console Application</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="previous" href="plugin-ant-license.html" title="5.4.&nbsp;License"><link rel="next" href="plugin-console-usage.html" title="6.2.&nbsp;Usage"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index"><link rel="section" href="plugin-console.html#plugin-console-installation" title="6.1.&nbsp;Installation"><link rel="section" href="plugin-console-usage.html" title="6.2.&nbsp;Usage"><link rel="section" href="plugin-console-license.html" title="6.3.&nbsp;License">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter&nbsp;6.&nbsp;Console Application</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="plugin-ant-license.html">Prev</a>&nbsp;</td><th width="60%" align="center">Part&nbsp;II.&nbsp;Plug-ins</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="plugin-console-usage.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="plugin-console"></a>Chapter&nbsp;6.&nbsp;Console Application</h2></div></div><div></div></div><a class="indexterm" name="d0e5799"></a><a class="indexterm" name="d0e5804"></a><p>
-The Console application provides a powerful command line interface for Jalopy.
-</p><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="plugin-console-installation"></a>6.1.&nbsp;Installation</h2></div></div><div></div></div><p>
-Explains the steps involved to install the Console Plug-in.
-</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="plugin-console-installation-requirements"></a>6.1.1.&nbsp;System requirements</h4></div></div><div></div></div><p>
-See <a href="installation.html#installation-requirements" title="1.1.&nbsp;System requirements">Section&nbsp;1.1, &#8220;System requirements&#8221;</a> for the basic requirements to
-run Jalopy.
-</p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="plugin-console-installation-installation"></a>6.1.2.&nbsp;Installation</h4></div></div><div></div></div><a class="indexterm" name="d0e5824"></a><p>
-The Plug-in comes either as a single <tt class="filename">.zip</tt> or compressed <tt class="filename">.tar</tt> file.
-Unzipping either one of these files into a directory of your choice (referred
-to as <i class="replaceable"><tt>&lt;INST_DIR&gt;</tt></i>) will produce three
-subdirectories <tt class="filename">/bin</tt>, <tt class="filename">/docs</tt> and
-<tt class="filename">/lib</tt>.
-</p><p>
-</p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="screen">
-..
-  bin/       contains wrapper scripts for different platforms
-  docs/      contains the documentation
-  lib/       contains all necessary libraries
-</pre></td></tr></table><p>
-</p><p>
-Wrapper scripts are provided for the common platforms, so you may want to add
-the <tt class="filename">/bin</tt> folder to your path. If your platform
-is not covered you should make use of the <tt class="option">-jar</tt> option of the
-Java application launcher (the <span><b class="command">java -jar</b></span> command), since
-this requires no classpath manipulation. If you don't want to use the
-<tt class="option">-jar</tt> option, you have to add the <tt class="filename">.jar</tt>
-files as usual to your classpath.
-</p><p>
-For the Unix Bash shell, this means can be achieved using
-</p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="synopsis">
-export CLASSPATH=${CLASSPATH}:<i class="replaceable"><tt>&lt;INST_DIR&gt;</tt></i>/lib/jalopy-console-<i class="replaceable"><tt>&lt;version&gt;</tt></i>.jar
-</pre></td></tr></table><p>
-For Windows, use something like
-</p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="synopsis">
-set CLASSPATH=%CLASSPATH%;<i class="replaceable"><tt>&lt;INST_DIR&gt;</tt></i>\lib\jalopy-console-<i class="replaceable"><tt>&lt;version&gt;</tt></i>.jar
-</pre></td></tr></table><p>
-Refer to your system documentation on how to apply these changes more permanently.
-</p></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="plugin-ant-license.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="part-plugins.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="plugin-console-usage.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">5.4.&nbsp;License&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;6.2.&nbsp;Usage</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/plugin-eclipse-integration.html b/utils/jalopy/docs/plugin-eclipse-integration.html
deleted file mode 100755 (executable)
index d7e3a18..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>7.2.&nbsp;Integration</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="previous" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="next" href="plugin-eclipse-license.html" title="7.3.&nbsp;License"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index"><link rel="subsection" href="plugin-eclipse-integration.html#d0e6138" title="7.2.1.&nbsp;Main menu bar"><link rel="subsection" href="plugin-eclipse-integration.html#d0e6176" title="7.2.2.&nbsp;Java Editor context menu"><link rel="subsection" href="plugin-eclipse-integration.html#d0e6191" title="7.2.3.&nbsp;Project, Folder, File context menus">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">7.2.&nbsp;Integration</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="plugin-eclipse.html">Prev</a>&nbsp;</td><th width="60%" align="center">Chapter&nbsp;7.&nbsp;Eclipse Plug-in</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="plugin-eclipse-license.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="plugin-eclipse-integration"></a>7.2.&nbsp;Integration</h2></div></div><div></div></div><p>
-Shows how the Plug-in is integrated into the Eclipse IDE.
-</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="d0e6138"></a>7.2.1.&nbsp;Main menu bar</h4></div></div><div></div></div><p>
-Currently, the software adds a new item into the main menu bar of Eclipse
-to launch the Jalopy settings dialog. Note that the this configuration
-dialog is actually a Java Swing dialog launched in-process so the
-appearance and behaviour may slightly differ compared to native applications.
-A future version will bring tightly integration with the Eclipse workbench
-preferences dialog.
-</p><div class="itemizedlist"><ul type="square"><li style="list-style-type: square"><p>
-<span><b class="guimenu"><span class="accel">W</span>indow</b></span>-&gt;<span><b class="guimenuitem"><span class="accel">J</span>alopy Settings...</b></span>
-</p><p>
-Displays the Jalopy settings dialog. Use this item if you want to change the
-settings that control the layout of any formatted code.
-</p></li></ul></div><p>
-The menu item appears only for certain views/editors. If you want to
-enable it permanently, mark
-<span><b class="guimenu"><span class="accel">W</span>indow</b></span>-&gt;<span><b class="guimenuitem">Customi<span class="accel">z</span>e Perspective...</b></span>-&gt;<span><b class="guimenuitem">Action Sets</b></span>-&gt;<span><b class="guimenuitem">Jalopy</b></span>
-
-</p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="d0e6176"></a>7.2.2.&nbsp;Java Editor context menu</h4></div></div><div></div></div><p>
-The software adds a new menu item to the context menu of Java editors.
-</p><div class="itemizedlist"><ul type="square"><li style="list-style-type: square"><p>
-<span><b class="guimenuitem">Format with Jalopy</b></span>
-</p><p>
-Formats the contents of the editor.
-</p></li></ul></div></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="d0e6191"></a>7.2.3.&nbsp;Project, Folder, File context menus</h4></div></div><div></div></div><p>
-The software adds a new menu item to the context menu of projects, folders and
-Java source files in the navigation view of the Java perspective.
-</p><div class="itemizedlist"><ul type="square"><li style="list-style-type: square"><p>
-<span><b class="guimenuitem">Format</b></span>
-</p><p>
-Formats the selected files. Depending on the object type (project, folder, file) formats
-either all Java source files of the project, the contents of the selected folder(s)
-(including subfolders) or the currently selected Java source file(s).
-</p></li></ul></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="plugin-eclipse.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="plugin-eclipse.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="plugin-eclipse-license.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Chapter&nbsp;7.&nbsp;Eclipse Plug-in&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;7.3.&nbsp;License</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/plugin-eclipse-license.html b/utils/jalopy/docs/plugin-eclipse-license.html
deleted file mode 100755 (executable)
index 8c5676e..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>7.3.&nbsp;License</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="previous" href="plugin-eclipse-integration.html" title="7.2.&nbsp;Integration"><link rel="next" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">7.3.&nbsp;License</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="plugin-eclipse-integration.html">Prev</a>&nbsp;</td><th width="60%" align="center">Chapter&nbsp;7.&nbsp;Eclipse Plug-in</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="plugin-jbuilder.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="plugin-eclipse-license"></a>7.3.&nbsp;License</h2></div></div><div></div></div><p>
-The Eclipse Plug-in is "<span class="bold"><b><a href="http://opensource.org/docs/certification_mark.php" target="_top">OSI Certified Open Source Software</a></b></span>",
-released under the Common Public License. See <a href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0">Appendix&nbsp;G, <i>Common Public License Version 1.0</i></a>
-for more information.
-</p><p>
-See <a href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License">Appendix&nbsp;B, <i>The Jalopy BSD License</i></a> for the Jalopy license
-and refer to <a href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies">Appendix&nbsp;A, <i>Library Dependencies</i></a> for the license terms of the accompanying 3rd party libraries.
-</p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="plugin-eclipse-integration.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="plugin-eclipse.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="plugin-jbuilder.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">7.2.&nbsp;Integration&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;Chapter&nbsp;8.&nbsp;JBuilder OpenTool</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/plugin-eclipse.html b/utils/jalopy/docs/plugin-eclipse.html
deleted file mode 100755 (executable)
index 8ef0d4e..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>Chapter&nbsp;7.&nbsp;Eclipse Plug-in</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="previous" href="plugin-console-license.html" title="6.3.&nbsp;License"><link rel="next" href="plugin-eclipse-integration.html" title="7.2.&nbsp;Integration"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index"><link rel="section" href="plugin-eclipse.html#plugin-eclipse-installation" title="7.1.&nbsp;Installation"><link rel="section" href="plugin-eclipse-integration.html" title="7.2.&nbsp;Integration"><link rel="section" href="plugin-eclipse-license.html" title="7.3.&nbsp;License">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter&nbsp;7.&nbsp;Eclipse Plug-in</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="plugin-console-license.html">Prev</a>&nbsp;</td><th width="60%" align="center">Part&nbsp;II.&nbsp;Plug-ins</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="plugin-eclipse-integration.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="plugin-eclipse"></a>Chapter&nbsp;7.&nbsp;Eclipse Plug-in</h2></div></div><div></div></div><a class="indexterm" name="d0e6064"></a><a class="indexterm" name="d0e6067"></a><p>
-Describes the installation and usage of the Jalopy Eclipse Plug-in.
-</p><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="plugin-eclipse-installation"></a>7.1.&nbsp;Installation</h2></div></div><div></div></div><p>
-Explains the steps involved to install the Eclipse Plug-in.
-</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="plugin-eclipse-installation-requirements"></a>7.1.1.&nbsp;System requirements</h4></div></div><div></div></div><p>
-This Plug-in requires Eclipse 2.0 or higher. It has only been tested with Eclipse 2.0.
-See <a href="installation.html#installation-requirements" title="1.1.&nbsp;System requirements">Section&nbsp;1.1, &#8220;System requirements&#8221;</a> for the basic requirements
-to run Jalopy.
-</p><p>
-To obtain more information about this powerful IDE, visit the official
-Eclipse homepage:
-<a href="http://www.eclipse.org/" target="_top">http://www.eclipse.org/</a>
-</p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="plugin-eclipse-installation-installation"></a>7.1.2.&nbsp;Installation</h4></div></div><div></div></div><a class="indexterm" name="d0e6094"></a><p>
-The Plug-in comes either as a single <tt class="filename">.zip</tt> or
-compressed <tt class="filename">.tar</tt> archive. Unzipping either one of these
-files into a directory of your choice (referred to as
-<i class="replaceable"><tt>&lt;INST_DIR&gt;</tt></i>) will produce two
-subdirectories <tt class="filename">/de.hunsicker.jalopy.plugin.eclipse_<i class="replaceable"><tt>version</tt></i></tt>
-and <tt class="filename">/docs</tt>.
-</p><p>
-</p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="screen">
-..
-  de.hunsicker.jalopy.plugin.eclipse_<i class="replaceable"><tt>version</tt></i>/    contains the Plug-in files
-  docs/                                          contains the documentation
-</pre></td></tr></table><p>
-</p><p>
-Copy the <tt class="filename">de.hunsicker.jalopy.plugin.eclipse_<i class="replaceable"><tt>version</tt></i></tt>
-folder into your Eclipse plugin directory and
-restart Eclipse. That's all there is to it, you are now ready to run Jalopy
-from within Eclipse.
-</p></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="plugin-console-license.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="part-plugins.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="plugin-eclipse-integration.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">6.3.&nbsp;License&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;7.2.&nbsp;Integration</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/plugin-jbuilder-integration.html b/utils/jalopy/docs/plugin-jbuilder-integration.html
deleted file mode 100755 (executable)
index 0fca529..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>8.2.&nbsp;Integration</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="previous" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="next" href="plugin-jbuilder-license.html" title="8.3.&nbsp;License"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index"><link rel="subsection" href="plugin-jbuilder-integration.html#d0e6308" title="8.2.1.&nbsp;AppBrowser main menu"><link rel="subsection" href="plugin-jbuilder-integration.html#d0e6357" title="8.2.2.&nbsp;Project pane popup-menu "><link rel="subsection" href="plugin-jbuilder-integration.html#d0e6367" title="8.2.3.&nbsp;Editor view popup menu&#xA;">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">8.2.&nbsp;Integration</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="plugin-jbuilder.html">Prev</a>&nbsp;</td><th width="60%" align="center">Chapter&nbsp;8.&nbsp;JBuilder OpenTool</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="plugin-jbuilder-license.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="plugin-jbuilder-integration"></a>8.2.&nbsp;Integration</h2></div></div><div></div></div><p>
-Shows how the Plug-in is integrated into the JBuilder IDE.
-</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="d0e6308"></a>8.2.1.&nbsp;AppBrowser main menu</h4></div></div><div></div></div><p>
-The software adds two new menu items into the main menu of the AppBrowser to
-seamlessly integrate with JBuilder:
-</p><div class="itemizedlist"><ul type="disc"><li><p>
-<span><b class="guimenu"><span class="accel">P</span>roject</b></span>-&gt;<span><b class="guimenuitem">Forma<span class="accel">t</span> &lt;file&gt;</b></span> (<span><b class="shortcut"><span class="keysym">Ctrl</span>-<span class="keysym">Shift</span>-<span class="keysym">F10</span></b></span>)
-</p><p>
-Formats the current editor view. Use this item if you need to format the
-current opened file.
-</p><p>
-Only available if there is an open view that contains a Java source file.
-</p></li><li><p>
-<span><b class="guimenu"><span class="accel">T</span>ools</b></span>-&gt;<span><b class="guimenuitem"><span class="accel">J</span>alopy Options...</b></span>.
-</p><p>
-Displays the Jalopy settings dialog.
-</p><p>
-Use this item if you want to configure your settings to control the
-layout of any formatted code.
-</p></li></ul></div></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="d0e6357"></a>8.2.2.&nbsp;Project pane popup-menu </h4></div></div><div></div></div><p>
-There will also be a new menu item available at the end of the popup-menu of
-the Project pane: <span><b class="guimenuitem">Format</b></span>. Use this item if you want
-to format several files at once. All currently selected files are formatted.
-</p><p>
-If it happens that a file has an open editor view, this view will be updated,
-not the actual file. You have to save the view first to see the physical file
-updated.
-</p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="d0e6367"></a>8.2.3.&nbsp;Editor view popup menu
-</h4></div></div><div></div></div><p>
-Both the <span><b class="guimenuitem">Format &lt;file&gt;</b></span> and <span><b class="guimenuitem">Jalopy Options...</b></span> items can be also reached via the popup menu of the active editor view.
-</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="plugin-jbuilder.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="plugin-jbuilder.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="plugin-jbuilder-license.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Chapter&nbsp;8.&nbsp;JBuilder OpenTool&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;8.3.&nbsp;License</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/plugin-jbuilder-license.html b/utils/jalopy/docs/plugin-jbuilder-license.html
deleted file mode 100755 (executable)
index 24771fa..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>8.3.&nbsp;License</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="previous" href="plugin-jbuilder-integration.html" title="8.2.&nbsp;Integration"><link rel="next" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">8.3.&nbsp;License</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="plugin-jbuilder-integration.html">Prev</a>&nbsp;</td><th width="60%" align="center">Chapter&nbsp;8.&nbsp;JBuilder OpenTool</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="plugin-jdev.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="plugin-jbuilder-license"></a>8.3.&nbsp;License</h2></div></div><div></div></div><p>
-The JBuilder Plug-in is "<span class="bold"><b><a href="http://opensource.org/docs/certification_mark.php" target="_top">OSI Certified Open Source Software</a></b></span>",
-released under a BSD license.
-</p><p>
-See <a href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License">Appendix&nbsp;B, <i>The Jalopy BSD License</i></a> for the license
-and refer to <a href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies">Appendix&nbsp;A, <i>Library Dependencies</i></a> for the license terms of the accompanying 3rd party libraries.
-</p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="plugin-jbuilder-integration.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="plugin-jbuilder.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="plugin-jdev.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">8.2.&nbsp;Integration&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;Chapter&nbsp;9.&nbsp;JDeveloper Extension</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/plugin-jbuilder.html b/utils/jalopy/docs/plugin-jbuilder.html
deleted file mode 100755 (executable)
index ad854be..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>Chapter&nbsp;8.&nbsp;JBuilder OpenTool</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="previous" href="plugin-eclipse-license.html" title="7.3.&nbsp;License"><link rel="next" href="plugin-jbuilder-integration.html" title="8.2.&nbsp;Integration"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index"><link rel="section" href="plugin-jbuilder.html#plugin-jbuilder-installation" title="8.1.&nbsp;Installation"><link rel="section" href="plugin-jbuilder-integration.html" title="8.2.&nbsp;Integration"><link rel="section" href="plugin-jbuilder-license.html" title="8.3.&nbsp;License">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter&nbsp;8.&nbsp;JBuilder OpenTool</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="plugin-eclipse-license.html">Prev</a>&nbsp;</td><th width="60%" align="center">Part&nbsp;II.&nbsp;Plug-ins</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="plugin-jbuilder-integration.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="plugin-jbuilder"></a>Chapter&nbsp;8.&nbsp;JBuilder OpenTool</h2></div></div><div></div></div><a class="indexterm" name="d0e6228"></a><a class="indexterm" name="d0e6231"></a><a class="indexterm" name="d0e6234"></a><p>
-Describes the installation and usage of the Jalopy JBuilder Plug-in OpenTool.
-</p><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="plugin-jbuilder-installation"></a>8.1.&nbsp;Installation</h2></div></div><div></div></div><p>
-Explains the steps involved to install the JBuilder Plug-in.
-</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="plugin-jbuilder-installation-requirements"></a>8.1.1.&nbsp;System requirements</h4></div></div><div></div></div><p>
-The JBuilder Plug-in requires JBuilder 5.0 or higher. It has only been tested with JBuilder
-Personal 6.0 and 7.0. See <a href="installation.html#installation-requirements" title="1.1.&nbsp;System requirements">Section&nbsp;1.1, &#8220;System requirements&#8221;</a>
-for the basic requirements to run Jalopy.
-</p><p>
-To obtain more information about this
-powerful IDE, visit the official JBuilder homepage at the Borland site:
-<a href="http://www.borland.com/jbuilder/" target="_top">http://www.borland.com/jbuilder/</a>
-</p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="plugin-jbuilder-installation-installation"></a>8.1.2.&nbsp;Installation</h4></div></div><div></div></div><a class="indexterm" name="d0e6261"></a><p>
-The Plug-in comes either as a single <tt class="filename">.zip</tt> or compressed <tt class="filename">.tar</tt> file.
-Unzipping either one of these files into a directory of your choice (referred
-to as <i class="replaceable"><tt>&lt;INST_DIR&gt;</tt></i>) will produce two
-subdirectories <tt class="filename">/docs</tt> and <tt class="filename">/lib</tt>.
-</p><p>
-</p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="screen">
-..
-  docs/      contains documentation
-  lib/       contains all necessary libraries
-</pre></td></tr></table><p>
-</p><p>
-Remove all files from any prior Jalopy version from
-your JBuilder extension directory (<tt class="filename">/lib/ext</tt>).
-</p><p>
-Further installation is simple: just copy all files from your
-<tt class="filename"><i class="replaceable"><tt>&lt;INST_DIR&gt;</tt></i>/lib</tt> folder
-into the <tt class="filename">/lib/ext</tt> directory of your JBuilder distribution.
-JBuilder will then need to be restarted before Jalopy begins working.
-</p></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="plugin-eclipse-license.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="part-plugins.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="plugin-jbuilder-integration.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">7.3.&nbsp;License&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;8.2.&nbsp;Integration</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/plugin-jdev-integration.html b/utils/jalopy/docs/plugin-jdev-integration.html
deleted file mode 100755 (executable)
index 5708a8a..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>9.2.&nbsp;Integration</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="previous" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="next" href="plugin-jdev-license.html" title="9.3.&nbsp;License"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index"><link rel="subsection" href="plugin-jdev-integration.html#d0e6473" title="9.2.1.&nbsp;Navigator context menu"><link rel="subsection" href="plugin-jdev-integration.html#d0e6490" title="9.2.2.&nbsp;Java editor context menu"><link rel="subsection" href="plugin-jdev-integration.html#d0e6505" title="9.2.3.&nbsp;Preferences dialog">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">9.2.&nbsp;Integration</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="plugin-jdev.html">Prev</a>&nbsp;</td><th width="60%" align="center">Chapter&nbsp;9.&nbsp;JDeveloper Extension</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="plugin-jdev-license.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="plugin-jdev-integration"></a>9.2.&nbsp;Integration</h2></div></div><div></div></div><p>
-Shows how the Plug-in is integrated into the JDeveloper IDE.
-</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="d0e6473"></a>9.2.1.&nbsp;Navigator context menu</h4></div></div><div></div></div><p>
-The software adds a new menu item into the context popup menu of the Navigator:
-</p><div class="itemizedlist"><ul type="disc"><li><p>
-<span><b class="guimenuitem">Format [Workspace|Project]</b></span>
-</p><p>
-By selecting the "Format" menu item, all Java sources of the
-selected node are formatted according to the current Jalopy preferences.
-</p><p>
-The item appears in the popup menu if the user clicks the right mouse button on
-a Java source node or any other parent node that may contain Java sources
-(such as Workspace, Project, Directory, EJB or BC4J nodes).
-</p></li></ul></div></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="d0e6490"></a>9.2.2.&nbsp;Java editor context menu</h4></div></div><div></div></div><p>
-The software adds a new menu item into the context popup menu of Java code editors:
-</p><div class="itemizedlist"><ul type="disc"><li><p>
-<span><b class="guimenuitem">Format</b></span>
-</p><p>
-By selecting the "Format" menu item, the contents of the active code editor view
-are formatted according to the current Jalopy preferences.
-</p></li></ul></div></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="d0e6505"></a>9.2.3.&nbsp;Preferences dialog</h4></div></div><div></div></div><p>
-The Jalopy preferences are integrated into the preferences dialog of
-JDeveloper 9i which is reachable through the
-<span><b class="guimenu"><span class="accel">T</span>ools</b></span>-&gt;<span><b class="guimenuitem"><span class="accel">P</span>references...</b></span>
-menu.
-Each Jalopy preferences page is added as a subentry to the main Jalopy
-preferences entry.
-</p><p>
-Jalopy preferences are stored in the <tt class="filename">$HOME/.jalopy</tt> directory.
-This is in contrast to other JDeveloper preferences which are stored within the
-IDE configuration files. It is intentional in order to allow reuse of Jalopy
-preferences between different IDEs. Note that in this release, Jalopy
-preferences are stored whenever the user leaves a page. If the user moves to
-another settings page, all settings are stored to disk even if the user
-chooses to cancel the preferences dialog later on.
-</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="plugin-jdev.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="plugin-jdev.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="plugin-jdev-license.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Chapter&nbsp;9.&nbsp;JDeveloper Extension&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;9.3.&nbsp;License</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/plugin-jdev-license.html b/utils/jalopy/docs/plugin-jdev-license.html
deleted file mode 100755 (executable)
index acaa975..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>9.3.&nbsp;License</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="previous" href="plugin-jdev-integration.html" title="9.2.&nbsp;Integration"><link rel="next" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">9.3.&nbsp;License</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="plugin-jdev-integration.html">Prev</a>&nbsp;</td><th width="60%" align="center">Chapter&nbsp;9.&nbsp;JDeveloper Extension</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="plugin-jedit.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="plugin-jdev-license"></a>9.3.&nbsp;License</h2></div></div><div></div></div><p>
-The JDeveloper Plug-in is "<span class="bold"><b><a href="http://opensource.org/docs/certification_mark.php" target="_top">OSI Certified Open Source Software</a></b></span>",
-released under a BSD license.
-</p><p>
-See <a href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License">Appendix&nbsp;B, <i>The Jalopy BSD License</i></a> for the license
-and refer to <a href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies">Appendix&nbsp;A, <i>Library Dependencies</i></a> for the license terms of the accompanying 3rd party libraries.
-</p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="plugin-jdev-integration.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="plugin-jdev.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="plugin-jedit.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">9.2.&nbsp;Integration&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;Chapter&nbsp;10.&nbsp;jEdit Plug-in</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/plugin-jdev.html b/utils/jalopy/docs/plugin-jdev.html
deleted file mode 100755 (executable)
index aece616..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>Chapter&nbsp;9.&nbsp;JDeveloper Extension</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="previous" href="plugin-jbuilder-license.html" title="8.3.&nbsp;License"><link rel="next" href="plugin-jdev-integration.html" title="9.2.&nbsp;Integration"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index"><link rel="section" href="plugin-jdev.html#plugin-jdev-installation" title="9.1.&nbsp;Installation"><link rel="section" href="plugin-jdev-integration.html" title="9.2.&nbsp;Integration"><link rel="section" href="plugin-jdev-license.html" title="9.3.&nbsp;License">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter&nbsp;9.&nbsp;JDeveloper Extension</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="plugin-jbuilder-license.html">Prev</a>&nbsp;</td><th width="60%" align="center">Part&nbsp;II.&nbsp;Plug-ins</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="plugin-jdev-integration.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="plugin-jdev"></a>Chapter&nbsp;9.&nbsp;JDeveloper Extension</h2></div></div><div></div></div><a class="indexterm" name="d0e6398"></a><a class="indexterm" name="d0e6401"></a><a class="indexterm" name="d0e6404"></a><p>
-Describes the installation and usage of the Jalopy JDeveloper Plug-in Extension.
-</p><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="plugin-jdev-installation"></a>9.1.&nbsp;Installation</h2></div></div><div></div></div><p>
-Explains the steps involved to install the JDeveloper Plug-in.
-</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="plugin-jdev-installation-requirements"></a>9.1.1.&nbsp;System requirements</h4></div></div><div></div></div><p>
-The JDeveloper Plug-in requires Oracle9i JDeveloper or later. 1.1.3 is the
-latest version and has only been tested with JDeveloper 10g Production.  Older
-releases may work on JDeveloper 9.0.2 and 9.0.3. See <a href="installation.html#installation-requirements" title="1.1.&nbsp;System requirements">Section&nbsp;1.1, &#8220;System requirements&#8221;</a> for the basic
-requirements to run Jalopy.
-</p><p>
-To obtain more information about this powerful IDE, visit the official JDeveloper homepage
-at the Oracle site:
-<a href="http://otn.oracle.com/products/jdev/" target="_top">http://otn.oracle.com/products/jdev/</a>
-</p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="plugin-jdev-installation-installation"></a>9.1.2.&nbsp;Installation</h4></div></div><div></div></div><a class="indexterm" name="d0e6431"></a><p>
-The Plug-in comes either as a single <tt class="filename">.zip</tt> or
-compressed <tt class="filename">.tar</tt> file. Unzipping either one of these files
-into a directory of your choice (referred to as <i class="replaceable"><tt>&lt;INST_DIR&gt;</tt></i>)
-will produce two subdirectories <tt class="filename">/docs</tt> and <tt class="filename">/lib</tt>.
-</p><p>
-</p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="screen">
-..
-  docs/      contains the documentation
-  lib/       contains all necessary libraries
-</pre></td></tr></table><p>
-</p><p>
-Further installation is simple: just copy all files from the
-<tt class="filename"><i class="replaceable"><tt>&lt;INST_DIR&gt;</tt></i>/lib</tt> folder
-into the <tt class="filename">/jdev/lib/ext</tt> directory of your JDeveloper
-distribution. JDeveloper will then need to be restarted before Jalopy begins
-working.
-</p></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="plugin-jbuilder-license.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="part-plugins.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="plugin-jdev-integration.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">8.3.&nbsp;License&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;9.2.&nbsp;Integration</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/plugin-jedit-integration.html b/utils/jalopy/docs/plugin-jedit-integration.html
deleted file mode 100755 (executable)
index 91bb923..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>10.2.&nbsp;Integration</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="previous" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="next" href="plugin-jedit-license.html" title="10.3.&nbsp;License"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">10.2.&nbsp;Integration</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="plugin-jedit.html">Prev</a>&nbsp;</td><th width="60%" align="center">Chapter&nbsp;10.&nbsp;jEdit Plug-in</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="plugin-jedit-license.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="plugin-jedit-integration"></a>10.2.&nbsp;Integration</h2></div></div><div></div></div><p>
-Shows how the Plug-in is integrated into jEdit.
-</p><p>
-The software adds a new menu item group into the <span><b class="guimenu"><span class="accel">P</span>lugins</b></span>
-menu of the editor view. Available are two new menu items:
-</p><div class="itemizedlist"><ul type="disc"><li><p>
-<span><b class="guimenu"><span class="accel">P</span>lugins</b></span>-&gt;<span><b class="guimenuitem"><span class="accel">J</span>alopy</b></span>-&gt;<span><b class="guimenuitem">Forma<span class="accel">t</span> current Buffer</b></span>.
-</p><p>
-Formats the contents of the active text area.
-</p><p>
-Note that this menu item reflects the state of the text area: it will only be enabled
-if the current edit mode is actually the <i class="firstterm">java</i> mode.
-</p></li><li><p>
-<span><b class="guimenu"><span class="accel">P</span>lugins</b></span>-&gt;<span><b class="guimenuitem"><span class="accel">J</span>alopy</b></span>-&gt;<span><b class="guimenuitem"><span class="accel">J</span>alopy Options...</b></span>.
-</p><p>
-Displays the Jalopy settings dialog.
-</p><p>
-Use this item if you want to change your settings to control the
-layout of any formatted code.
-</p></li></ul></div><p>
-These options are available under jEdit's Global Options dialog, too.
-</p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="plugin-jedit.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="plugin-jedit.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="plugin-jedit-license.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Chapter&nbsp;10.&nbsp;jEdit Plug-in&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;10.3.&nbsp;License</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/plugin-jedit-license.html b/utils/jalopy/docs/plugin-jedit-license.html
deleted file mode 100755 (executable)
index a376cdb..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>10.3.&nbsp;License</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="previous" href="plugin-jedit-integration.html" title="10.2.&nbsp;Integration"><link rel="next" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">10.3.&nbsp;License</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="plugin-jedit-integration.html">Prev</a>&nbsp;</td><th width="60%" align="center">Chapter&nbsp;10.&nbsp;jEdit Plug-in</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="plugin-netbeans.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="plugin-jedit-license"></a>10.3.&nbsp;License</h2></div></div><div></div></div><p>
-The jEdit Plug-in is "<span class="bold"><b><a href="http://opensource.org/docs/certification_mark.php" target="_top">OSI Certified Open Source Software</a></b></span>",
-released under a BSD license.
-</p><p>
-See <a href="http://jalopy.sf.net/license-bsd.html" target="_top">Appendix B</a> of the manual
-for the license and refer to <a href="http://jalopy.sf.net/dependencies.html" target="_top">Appendix A</a> for
-the license terms of the accompanying 3rd party libraries.
-</p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="plugin-jedit-integration.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="plugin-jedit.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="plugin-netbeans.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">10.2.&nbsp;Integration&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/plugin-jedit.html b/utils/jalopy/docs/plugin-jedit.html
deleted file mode 100755 (executable)
index ced3833..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>Chapter&nbsp;10.&nbsp;jEdit Plug-in</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="previous" href="plugin-jdev-license.html" title="9.3.&nbsp;License"><link rel="next" href="plugin-jedit-integration.html" title="10.2.&nbsp;Integration"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index"><link rel="section" href="plugin-jedit.html#plugin-jedit-installation" title="10.1.&nbsp;Installation"><link rel="section" href="plugin-jedit-integration.html" title="10.2.&nbsp;Integration"><link rel="section" href="plugin-jedit-license.html" title="10.3.&nbsp;License">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter&nbsp;10.&nbsp;jEdit Plug-in</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="plugin-jdev-license.html">Prev</a>&nbsp;</td><th width="60%" align="center">Part&nbsp;II.&nbsp;Plug-ins</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="plugin-jedit-integration.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="plugin-jedit"></a>Chapter&nbsp;10.&nbsp;jEdit Plug-in</h2></div></div><div></div></div><a class="indexterm" name="d0e6545"></a><a class="indexterm" name="d0e6548"></a><p>
-Describes the installation and usage of the Jalopy jEdit Plug-in.
-</p><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="plugin-jedit-installation"></a>10.1.&nbsp;Installation</h2></div></div><div></div></div><p>
-Explains the steps involved to install the jEdit Plug-in.
-</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="plugin-jedit-installation-requirements"></a>10.1.1.&nbsp;System requirements</h4></div></div><div></div></div><p>
-The Jalopy jEdit Plug-in requires at least jEdit 4.1pre1 and MessageView 0.1.0.
-If you want to import/exprt XML settings, you need the XML Plug-in also.
-Refer to the Jalopy user manual for the basic requirements to run Jalopy (You
-may find the latest version on the Jalopy website,
-<a href="http://jalopy.sf.net/installation.html" target="_top">http://jalopy.sf.net/installation.html</a>)
-</p><p>
-To obtain more information about this wonderful Editor, visit the official
-jEdit homepage:
-<a href="http://www.jedit.org/" target="_top">http://www.jedit.org/</a>
-</p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="plugin-jedit-installation-installation"></a>10.1.2.&nbsp;Installation</h4></div></div><div></div></div><a class="indexterm" name="d0e6576"></a><p>
-The Plug-in comes either as a single <tt class="filename">.zip</tt> or compressed
-<tt class="filename">.tar</tt> archive. Unzipping either one of these files into a directory
-of your choice (referred to as <i class="replaceable"><tt>&lt;INST_DIR&gt;</tt></i>) will
-produce two subdirectories <tt class="filename">/docs</tt> and <tt class="filename">/lib</tt>.
-</p><p>
-</p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="screen">
-..
-  docs/      contains the documentation
-  lib/       contains all necessary libraries
-</pre></td></tr></table><p>
-</p><p>
-If there is already an older version of Jalopy installed, you have to remove it
-prior to install. Open the Plugin Manager via
-<span><b class="guimenu"><span class="accel">P</span>lugins</b></span>-&gt;<span><b class="guimenuitem">Plugin <span class="accel">M</span>anager</b></span>, select the Jalopy Java Source Code Formatter entry and
-press <span><b class="guilabel">Remove Plugins</b></span>.
-</p><p>
-Further installation is simple: just copy all <tt class="filename">.jar</tt> files
-contained  in the <tt class="filename"><i class="replaceable"><tt>&lt;INST_DIR&gt;</tt></i>/lib</tt> folder
-into the <tt class="filename">/jars</tt> directory of your jEdit distribution.
-jEdit will then need to be restarted before Jalopy begins working.
-</p></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="plugin-jdev-license.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="part-plugins.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="plugin-jedit-integration.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">9.3.&nbsp;License&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;10.2.&nbsp;Integration</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/plugin-netbeans-integration.html b/utils/jalopy/docs/plugin-netbeans-integration.html
deleted file mode 100755 (executable)
index 983270d..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>11.2.&nbsp;Integration</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="previous" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="next" href="plugin-netbeans-license.html" title="11.3.&nbsp;License"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index"><link rel="subsection" href="plugin-netbeans-integration.html#d0e6828" title="11.2.1.&nbsp;Workspace main menu"><link rel="subsection" href="plugin-netbeans-integration.html#d0e6878" title="11.2.2.&nbsp;Explorer popup-menu">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">11.2.&nbsp;Integration</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="plugin-netbeans.html">Prev</a>&nbsp;</td><th width="60%" align="center">Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="plugin-netbeans-license.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="plugin-netbeans-integration"></a>11.2.&nbsp;Integration</h2></div></div><div></div></div><p>
-Shows how the Plug-in is integrated into the NetBeans IDE.
-</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="d0e6828"></a>11.2.1.&nbsp;Workspace main menu</h4></div></div><div></div></div><p>
-The software adds two new menu items into the main menu of the current
-Workspace to seamlessly integrate with NetBeans:
-</p><div class="itemizedlist"><ul type="disc"><li><p>
-<span><b class="guimenu"><span class="accel">B</span>uild</b></span>-&gt;<span><b class="guimenuitem">Forma<span class="accel">t</span> [All]</b></span> (<span><b class="shortcut"><span class="keysym">Ctrl</span>-<span class="keysym">Shift</span>-<span class="keysym">F10</span></b></span>).
-</p><p>
-Formats the currently selected node(s).
-</p><p>
-Only available if there are indeed nodes selected which represents or contains
-Java source files.
-</p></li><li><p>
-<span><b class="guimenu"><span class="accel">T</span>ools</b></span>-&gt;<span><b class="guimenuitem"><span class="accel">J</span>alopy Options...</b></span>.
-</p><p>
-Displays the Jalopy settings dialog.
-</p><p>
-Use this item if you want to change your settings to control the
-layout of any formatted code.
-</p></li></ul></div><p></p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="d0e6878"></a>11.2.2.&nbsp;Explorer popup-menu</h4></div></div><div></div></div><p>
-The <span><b class="guimenuitem">Format [All]</b></span> item can be also reached via the
-popup menu of the Explorer. Note that the item only appears for folder nodes
-or plain Java source files. It does not work for form based nodes.
-</p><p>
-If it happens that a file has an open editor view, this view will be updated,
-not the actual file. You have to save the view first to see the physical file
-updated.
-</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="plugin-netbeans.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="plugin-netbeans.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="plugin-netbeans-license.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;11.3.&nbsp;License</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/plugin-netbeans-license.html b/utils/jalopy/docs/plugin-netbeans-license.html
deleted file mode 100755 (executable)
index c0a0c5a..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>11.3.&nbsp;License</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="previous" href="plugin-netbeans-integration.html" title="11.2.&nbsp;Integration"><link rel="next" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">11.3.&nbsp;License</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="plugin-netbeans-integration.html">Prev</a>&nbsp;</td><th width="60%" align="center">Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="dependencies.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="plugin-netbeans-license"></a>11.3.&nbsp;License</h2></div></div><div></div></div><p>
-The NetBeans Plug-in is "<span class="bold"><b><a href="http://opensource.org/docs/certification_mark.php" target="_top">OSI Certified Open Source Software</a></b></span>",
-released under the Sun Public License. See <a href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0">Appendix&nbsp;H, <i>SUN PUBLIC LICENSE Version 1.0</i></a>
-for more information.
-</p><p>
-See <a href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License">Appendix&nbsp;B, <i>The Jalopy BSD License</i></a> for the Jalopy license
-and refer to <a href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies">Appendix&nbsp;A, <i>Library Dependencies</i></a> for the license terms of the accompanying 3rd party libraries.
-</p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="plugin-netbeans-integration.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="plugin-netbeans.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="dependencies.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">11.2.&nbsp;Integration&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;Appendix&nbsp;A.&nbsp;Library Dependencies</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/plugin-netbeans.html b/utils/jalopy/docs/plugin-netbeans.html
deleted file mode 100755 (executable)
index e653198..0000000
+++ /dev/null
@@ -1,76 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="previous" href="plugin-jedit-license.html" title="10.3.&nbsp;License"><link rel="next" href="plugin-netbeans-integration.html" title="11.2.&nbsp;Integration"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index"><link rel="section" href="plugin-netbeans.html#plugin-netbeans-installation" title="11.1.&nbsp;Installation"><link rel="section" href="plugin-netbeans-integration.html" title="11.2.&nbsp;Integration"><link rel="section" href="plugin-netbeans-license.html" title="11.3.&nbsp;License">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="plugin-jedit-license.html">Prev</a>&nbsp;</td><th width="60%" align="center">Part&nbsp;II.&nbsp;Plug-ins</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="plugin-netbeans-integration.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="plugin-netbeans"></a>Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module</h2></div></div><div></div></div><a class="indexterm" name="d0e6715"></a><a class="indexterm" name="d0e6718"></a><a class="indexterm" name="d0e6721"></a><a class="indexterm" name="d0e6726"></a><a class="indexterm" name="d0e6731"></a><p>
-Describes the installation and usage of the Jalopy NetBeans/Sun ONE Studio Plug-in module.
-</p><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="plugin-netbeans-installation"></a>11.1.&nbsp;Installation</h2></div></div><div></div></div><p>
-Explains the steps involved to install the NetBeans Plug-in module.
-</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="plugin-netbeans-installation-requirements"></a>11.1.1.&nbsp;System requirements</h4></div></div><div></div></div><p>
-The Plug-in requires NetBeans 3.3 (or above) or Sun ONE Studio 4. It has only been
-tested with NetBeans 3.4.
-See <a href="installation.html#installation-requirements" title="1.1.&nbsp;System requirements">Section&nbsp;1.1, &#8220;System requirements&#8221;</a> for the basic requirements
-to run Jalopy.
-</p><p>
-To obtain more information about this
-powerful IDE, visit the official NetBeans homepage:
-<a href="http://www.netbeans.org/" target="_top">http://www.netbeans.org/</a> or the Sun ONE Studio
-pages at Sun:
-<a href="http://wwws.sun.com/software/sundev/jde/index.html" target="_top">http://wwws.sun.com/software/sundev/jde/</a>
-</p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="plugin-netbeans-installation-installation"></a>11.1.2.&nbsp;Installation</h4></div></div><div></div></div><a class="indexterm" name="d0e6761"></a><a class="indexterm" name="d0e6766"></a><p>
-The Plug-in comes either as a single <tt class="filename">.zip</tt> or compressed
-<tt class="filename">.tar</tt> file. Unzipping either one of these files into a directory
-of your choice (referred to as <i class="replaceable"><tt>&lt;INST_DIR&gt;</tt></i>)
-will produce two subdirectories <tt class="filename">/docs</tt> and
-<tt class="filename">/lib</tt>.
-</p><p>
-</p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="screen">
-..
-  docs/      contains the documentation
-  lib/       contains all necessary libraries
-</pre></td></tr></table><p>
-</p><p>
-Now follow these steps to install the Jalopy Plug-in:
-</p><div class="orderedlist"><ol type="1"><li><p>
-Start NetBeans/Sun ONE Studio.
-</p></li><li><p>
-Open the Update Center Wizard by selecting
-<span><b class="guimenu"><span class="accel">T</span>ools</b></span>-&gt;<span><b class="guimenuitem"><span class="accel">U</span>pdate Center...</b></span>
-(You need to have the Auto Update module enabled for this to work).
-</p></li><li><p>
-On the first page 'Select Location of modules', choose 'Install Manually
-Downloaded Modules (.nbm Files)', select the <tt class="filename">.nbm</tt> contained
-in <tt class="filename"><i class="replaceable"><tt>&lt;INST_DIR&gt;</tt></i>/lib</tt> and
-proceed through all steps of the wizard as outlined.
-</p></li></ol></div></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="plugin-jedit-license.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="part-plugins.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="plugin-netbeans-integration.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">10.3.&nbsp;License&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;11.2.&nbsp;Integration</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/plugins.html b/utils/jalopy/docs/plugins.html
deleted file mode 100755 (executable)
index 7aae9b8..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>Jalopy - Plug-ins</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><meta name="keywords" content="Java, convention, source, code, formatter, beautifier, pretty, printer, format, beautify, layout, coding, open, style, standard, transform, parser, Sun, ANTLR, Ant, Eclipse, JBuilder, NetBeans, jEdit, jakarta, JDeveloper, generator, generation, JDE, maven">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="center"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-            This page generated: <strong>June 8 2004</strong></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" width="100%" cellspacing="0" cellpadding="5"><tbody><tr><td><div class="article" lang="en"><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="plugins"></a>Plug-ins</h2></div></div><div></div></div><p>
-There are several Plug-ins available for Jalopy to add its extended formatting 
-capabilities to your favourite Java IDE or build tool.
-</p><p>
-Below you find a list with the current Plug-ins. Click on the entries 
-to get more information.
-</p><div class="itemizedlist"><ul type="square"><li style="list-style-type: square"><a href="./plugin-ant.html" target="_top">Ant 1.4 or above</a></li><li style="list-style-type: square"><a href="./plugin-console.html" target="_top">Console (Command line tool)</a></li><li style="list-style-type: square"><a href="./plugin-eclipse.html" target="_top">Eclipse 3.0 or above</a></li><li style="list-style-type: square"><a href="./plugin-jbuilder.html" target="_top">JBuilder 5.0 or above</a></li><li style="list-style-type: square"><a href="./plugin-jdev.html" target="_top">JDeveloper 10g</a></li><li style="list-style-type: square"><a href="./plugin-jedit.html" target="_top">jEdit 4.1pre1 or above</a></li><li style="list-style-type: square"><a href="./plugin-netbeans.html" target="_top">NetBeans 3.3 or above</a></li></ul></div><p>
-More to come!
-</p></div></div></td></tr><tr><td height="20"></td></tr></tbody></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2002, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/printer.html b/utils/jalopy/docs/printer.html
deleted file mode 100755 (executable)
index 15f5c78..0000000
+++ /dev/null
@@ -1,217 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>4.3.&nbsp;Printer</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="previous" href="project.html" title="4.2.&nbsp;Projects"><link rel="next" href="whitespace.html" title="4.3.2.&nbsp;White Space"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index"><link rel="subsection" href="printer.html#braces" title="4.3.1.&nbsp;Braces"><link rel="subsection" href="whitespace.html" title="4.3.2.&nbsp;White Space"><link rel="subsection" href="indentation.html" title="4.3.3.&nbsp;Indentation"><link rel="subsection" href="wrapping.html" title="4.3.4.&nbsp;Wrapping"><link rel="subsection" href="separation.html" title="4.3.5.&nbsp;Blank Lines"><link rel="subsection" href="comments.html" title="4.3.6.&nbsp;Comments"><link rel="subsection" href="imports.html" title="4.3.7.&nbsp;Imports"><link rel="subsection" href="environment.html" title="4.3.8.&nbsp;Environment"><link rel="subsection" href="javadoc.html" title="4.3.9.&nbsp;Javadoc"><link rel="subsection" href="header.html" title="4.3.10.&nbsp;Header"><link rel="subsection" href="footer.html" title="4.3.11.&nbsp;Footer"><link rel="subsection" href="sorting.html" title="4.3.12.&nbsp;Sorting"><link rel="subsection" href="misc.html" title="4.3.13.&nbsp;Misc">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4.3.&nbsp;Printer</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="project.html">Prev</a>&nbsp;</td><th width="60%" align="center">Chapter&nbsp;4.&nbsp;Settings</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="whitespace.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="printer"></a>4.3.&nbsp;Printer</h2></div></div><div></div></div><a class="indexterm" name="d0e1088"></a><p>
-Lets you control all printer related settings.
-</p><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="braces"></a>4.3.1.&nbsp;Braces</h3></div></div><div></div></div><a class="indexterm" name="d0e1097"></a><p>
-Controls the handling of curly braces (the Java block delimeters).
-</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="braces-style"></a>4.3.1.1.&nbsp;General</h4></div></div><div></div></div><a class="indexterm" name="d0e1105"></a><p>
-Controls how the enclosing block delimeters - left and right curly
-brace - are printed. You can either choose from a predefined set of common
-styles or build one on your own.
-</p><div class="sect4" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="braces-style-styles"></a>4.3.1.1.1.&nbsp;Styles</h5></div></div><div></div></div><p>
-Controls which brace style will be used to lay out blocks.
-</p><div class="itemizedlist"><ul type="disc"><li><p><a name="braces-style-c"></a>
-C style
-</p><a class="indexterm" name="d0e1121"></a><p>
-Selects the C brace style. This style is sometimes called "Allman style" or "BSD style".
-</p><div class="example"><a name="ex-brace-style-c"></a><p class="title"><b>Example&nbsp;4.1.&nbsp;C style</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-if (!isDone)
-<span class="bold"><b>{</b></span>
-    doSomething();
-<span class="bold"><b>}</b></span>
-else
-<span class="bold"><b>{</b></span>
-    System.err.println("Finished");
-<span class="bold"><b>}</b></span>
-</pre></td></tr></table></div><p></p></li><li><p><a name="braces-style-sun"></a>
-Sun style
-</p><a class="indexterm" name="d0e1151"></a><p>
-Selects the Sun brace style. Sometimes called "K&amp;R style".
-</p><div class="example"><a name="ex-brace-style-sun"></a><p class="title"><b>Example&nbsp;4.2.&nbsp;Sun style</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-if (!isDone) <span class="bold"><b>{</b></span>
-    doSomething();
-<span class="bold"><b>}</b></span> else <span class="bold"><b>{</b></span>
-    System.err.println("Finished");
-<span class="bold"><b>}</b></span>
-</pre></td></tr></table></div><p></p></li><li><p><a name="braces-style-gnu"></a>
-GNU style
-</p><a class="indexterm" name="d0e1181"></a><p>
-Selects the GNU brace style.
-</p><div class="example"><a name="ex-brace-style-gnu"></a><p class="title"><b>Example&nbsp;4.3.&nbsp;GNU style</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-if (!isDone)
-  <span class="bold"><b>{</b></span>
-    doSomething();
-  <span class="bold"><b>}</b></span>
-else
-  <span class="bold"><b>{</b></span>
-    System.err.println("Finished");
-  <span class="bold"><b>}</b></span>
-</pre></td></tr></table></div><p></p></li><li><p><a name="braces-style-custom"></a>
-Custom style
-</p><a class="indexterm" name="d0e1211"></a><p>
-Selecting this option will enable you to freely choose between the different brace
-style options discussed below.
-</p></li></ul></div></div><div class="sect4" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="braces-wrapping"></a>4.3.1.1.2.&nbsp;Wrapping</h5></div></div><div></div></div><a class="indexterm" name="d0e1223"></a><p>
-Controls the brace wrapping options.
-</p><div class="itemizedlist"><ul type="disc"><li><p>
-Newline before left brace
-</p><p>
-If enabled, always prints a newline before the left curly brace.
-</p></li><li><p>
-Newline after right brace
-</p><p>
-If enabled, prints a newline after the left curly brace (when possible).
-</p></li><li><p>
-Treat class/method blocks different
-</p><p>
-It is common in the Java developer community to have the opening brace
-at the end of the line of the keyword for all types of blocks (Sun brace style).
-One may find the C++ convention of treating class/interface and method/constructor
-blocks different from other blocks useful. With this switch you can achieve
-exactly that: if enabled, class/interface and method/constructor blocks are
-then always printed in C brace style (newline before left brace).
-</p></li><li><p><a name="braces-different-wrapped"></a>
-Treat class/method blocks different if wrapped
-</p><p>
-With this switch enabled, the opening brace for class/interface or
-method/constructor blocks will always be printed on a new line (C style), if
-either the parameter list spawns several lines and a <tt class="literal">throws</tt>
-clause follows, or one of the possible clauses (<tt class="literal">extends</tt>,
-<tt class="literal">implements</tt>, <tt class="literal">throws</tt>) was wrapped.
-</p></li></ul></div></div><div class="sect4" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="braces-whitespace"></a>4.3.1.1.3.&nbsp;Whitespace</h5></div></div><div></div></div><a class="indexterm" name="d0e1266"></a><p>
-Controls the indentation whitespace for the left and right curly brace.
-</p><div class="itemizedlist"><ul type="disc"><li><p>
-Before left brace
-</p><p>
-Number of spaces to print before the left curly brace.
-</p></li><li><p>
-After left brace
-</p><p>
-Number of spaces to print after the left curly brace.
-</p></li><li><p>
-After right brace
-</p><p>
-Number of spaces to print after the right curly brace.
-</p></li></ul></div></div></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="braces-misc"></a>4.3.1.2.&nbsp;Misc</h4></div></div><div></div></div><p>
-Controls miscellaneous brace options.
-</p><div class="sect4" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="braces-insert"></a>4.3.1.2.1.&nbsp;Insert braces</h5></div></div><div></div></div><a class="indexterm" name="d0e1297"></a><p>
-Per definition braces are superfluous on single statements, but it is
-a common recommendation that braces should be always used in such cases.
-With this option, you can specify whether missing braces for single
-statements should be inserted for the control statements <tt class="function">if</tt>,
-<tt class="function">for</tt>, <tt class="function">while</tt> and <tt class="function">do-while</tt>.
-</p><p>
-Enabling this option for <tt class="function">while</tt> statements would render
-</p><div class="example"><a name="ex-brace-insertion"></a><p class="title"><b>Example&nbsp;4.4.&nbsp;Brace insertion</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-while (!isDone)
-    doSomething();
-</pre></td></tr></table><p>
-into
-</p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-while (!isDone)
-{
-    doSomething();
-}
-</pre></td></tr></table></div><p></p></div><div class="sect4" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="braces-remove"></a>4.3.1.2.2.&nbsp;Remove braces</h5></div></div><div></div></div><a class="indexterm" name="d0e1334"></a><p>
-It is permittable to remove braces in case they are superfluous. This not only
-applies to the control statements <tt class="function">if</tt>, <tt class="function">for</tt>,
-<tt class="function">while</tt> and <tt class="function">do-while</tt>, but also to every
-block in general (remember a block is just a sequence of statements,
-local class declarations and local variable declaration statements within
-braces).
-</p><div class="example"><a name="ex-brace-removal"></a><p class="title"><b>Example&nbsp;4.5.&nbsp;Brace removal</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-for (int i = 0; i &lt; 100; i++)
-{
-    sum += value[i];
-}
-</pre></td></tr></table><p>
-would become
-</p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-for (int i = 0; i &lt; 100; i++)
-    sum += value[i];
-</pre></td></tr></table></div><p></p></div><div class="sect4" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="braces-empty"></a>4.3.1.2.3.&nbsp;Empty braces</h5></div></div><div></div></div><a class="indexterm" name="d0e1366"></a><a class="indexterm" name="d0e1369"></a><p>
-Controls how empty braces should be handled. If no option is selected,
-they are left untouched.
-</p><div class="example"><a name="ex-brace-empty"></a><p class="title"><b>Example&nbsp;4.6.&nbsp;Empty braces</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-if (in != null)
-{
-    try
-    {
-        in.close();
-    }
-    catch (IOException ignored)
-    {
-    }
-}
-</pre></td></tr></table></div><p>
-All options don't apply to class/interface and method/constructor bodies but
-are only used for control statements and blocks.
-</p><div class="itemizedlist"><ul type="disc"><li><p><a name="braces-empty-statement"></a>
-Insert empty statement
-<a class="indexterm" name="d0e1387"></a>
-<a class="indexterm" name="d0e1393"></a>
-
-</p><p>
-Inserts an empty statement to make it obvious for the reader that the empty braces
-are intentional.
-</p><div class="example"><a name="ex-braces-empty-statement"></a><p class="title"><b>Example&nbsp;4.7.&nbsp;Empty braces with empty statement</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-if (in != null)
-{
-    try
-    {
-        in.close();
-    }
-    catch (IOException ignored)
-    {
-        <span class="bold"><b>;</b></span>
-    }
-}
-</pre></td></tr></table></div></li></ul></div><div class="itemizedlist"><ul type="disc"><li><p>
-Cuddle braces
-</p><p><a name="braces-empty-cuddle"></a>
-Cuddles the braces. They will be printed right after the control statement.
-<a class="indexterm" name="d0e1413"></a>
-<a class="indexterm" name="d0e1419"></a>
-</p><div class="example"><a name="ex-braces-empty-cuddle"></a><p class="title"><b>Example&nbsp;4.8.&nbsp;Cuddled empty braces</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-if (in != null)
-{
-    try
-    {
-        in.close();
-    }
-    catch (IOException ignored) <span class="bold"><b>{}</b></span>
-}
-</pre></td></tr></table></div><p></p></li></ul></div></div></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="project.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="settings.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="whitespace.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4.2.&nbsp;Projects&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;4.3.2.&nbsp;White Space</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/project.html b/utils/jalopy/docs/project.html
deleted file mode 100755 (executable)
index ee00723..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>4.2.&nbsp;Projects</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="previous" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="next" href="printer.html" title="4.3.&nbsp;Printer"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4.2.&nbsp;Projects</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="settings.html">Prev</a>&nbsp;</td><th width="60%" align="center">Chapter&nbsp;4.&nbsp;Settings</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="printer.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="project"></a>4.2.&nbsp;Projects</h2></div></div><div></div></div><a class="indexterm" name="d0e1053"></a><p>
-Enables you to manage your Jalopy settings in a project-like manner. For every
-project you define, Jalopy creates a new subdirectory (under its main settings directory),
-where all related files will be stored.
-
-</p><p>
-The list component displays all currently known project spaces. Click on an
-entry to see what actions are available.
-</p><p>
-
-</p><p>
-The different actions are:
-</p><p>
-
-</p><div class="itemizedlist"><ul type="disc"><li><p><span><b class="guibutton">Add...</b></span></p><p>Displays a dialog that lets you define a new project. The project
-meta-information consists of a name and a short description. The name defines
-the subdirectory where all project settings will reside, therefore you should
-avoid characters that your platform does not allow to be used in file paths.
-</p></li><li><p><span><b class="guibutton">Remove</b></span></p><p>Lets you remove the selected project. A project may only be removed if it
-is not active. The default project cannot be removed.</p></li><li><p><span><b class="guibutton">Activate</b></span></p><p>Activates the selected project. The stored settings will be loaded and the
-configuration dialog updates accordingly.</p></li></ul></div><p>
-</p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="settings.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="settings.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="printer.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Chapter&nbsp;4.&nbsp;Settings&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;4.3.&nbsp;Printer</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/separation.html b/utils/jalopy/docs/separation.html
deleted file mode 100755 (executable)
index 20f1a68..0000000
+++ /dev/null
@@ -1,303 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>4.3.5.&nbsp;Blank Lines</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="printer.html" title="4.3.&nbsp;Printer"><link rel="previous" href="wrapping.html" title="4.3.4.&nbsp;Wrapping"><link rel="next" href="comments.html" title="4.3.6.&nbsp;Comments"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index"><link rel="subsection" href="separation.html#separation-blank-lines" title="4.3.5.1.&nbsp;General"><link rel="subsection" href="separation.html#separation-misc" title="4.3.5.2.&nbsp;Misc"><link rel="subsection" href="separation.html#separation-comment" title="4.3.5.3.&nbsp;Comments">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4.3.5.&nbsp;Blank Lines</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="wrapping.html">Prev</a>&nbsp;</td><th width="60%" align="center">4.3.&nbsp;Printer</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="comments.html">Next</a></td></tr></table><hr></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="separation"></a>4.3.5.&nbsp;Blank Lines</h3></div></div><div></div></div><p>
-Controls the Jalopy Blank Lines settings: the insertion of blank lines to
-separate statements or declarations with different functions or meanings.
-</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="separation-blank-lines"></a>4.3.5.1.&nbsp;General</h4></div></div><div></div></div><p>
-Lets you specify the general blank lines sizes for different Java source file elements.
-</p><div class="itemizedlist"><ul type="disc"><li><p><a name="blank-lines-package"></a>
-Package statement
-</p><a class="indexterm" name="d0e3379"></a><a class="indexterm" name="d0e3382"></a><p>
-Lets you control how many blank lines should be printed after the package statement.
-</p><div class="example"><a name="ex-blank-lines-package"></a><p class="title"><b>Example&nbsp;4.115.&nbsp;3 Blank lines after package statement</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">package de.hunsicker.jalopy.printer;
-&lt;--
-&lt;--
-&lt;--
-import antlr.collections.AST;
-
-import de.hunsicker.jalopy.parser.JavaAST;
-import de.hunsicker.jalopy.parser.JavaTokenTypes;
-
-...
-</pre></td></tr></table></div><p></p></li><li><p><a name="blank-lines-import"></a>
-Last import statement
-</p><a class="indexterm" name="d0e3398"></a><a class="indexterm" name="d0e3401"></a><p>
-Lets you control how many blank lines should be printed after the last import statement.
-</p><div class="example"><a name="ex-blank-lines-import"></a><p class="title"><b>Example&nbsp;4.116.&nbsp;4 Blank lines after last import statement</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">package de.hunsicker.jalopy.printer;
-
-import antlr.collections.AST;
-
-import de.hunsicker.jalopy.parser.JavaAST;
-import de.hunsicker.jalopy.parser.JavaTokenTypes;
-&lt;--
-&lt;--
-&lt;--
-&lt;--
-public class Printer
-{
-    ...
-}
-</pre></td></tr></table></div><p></p></li><li><p><a name="blank-lines-classes"></a>
-Classes
-</p><a class="indexterm" name="d0e3417"></a><a class="indexterm" name="d0e3420"></a><p>
-Lets you control how many blank lines should be printed between two
-class declarations.
-</p><div class="example"><a name="blank-lines-class"></a><p class="title"><b>Example&nbsp;4.117.&nbsp;2 Blank lines between two class declarations</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">class One
-{
-    ...
-}
-&lt;--
-&lt;--
-class Two
-{
-    ...
-}
-</pre></td></tr></table></div><p></p></li><li><p><a name="blank-lines-interfaces"></a>
-Interfaces
-</p><a class="indexterm" name="d0e3436"></a><a class="indexterm" name="d0e3439"></a><p>
-Lets you control how many blank lines should be printed between two
-interface declarations.
-</p><div class="example"><a name="blank-lines-ifc"></a><p class="title"><b>Example&nbsp;4.118.&nbsp;3 Blank lines between two interface declarations</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">interface One
-{
-    ...
-}
-&lt;--
-&lt;--
-&lt;--
-interface Two
-{
-    ...
-}
-</pre></td></tr></table></div><p></p></li><li><p><a name="blank-lines-methods"></a>
-Methods
-</p><a class="indexterm" name="d0e3455"></a><a class="indexterm" name="d0e3458"></a><p>
-Lets you control how many blank lines should be printed between two
-method/constructor declarations.
-</p><div class="example"><a name="blank-lines-method"></a><p class="title"><b>Example&nbsp;4.119.&nbsp;3 Blank lines between two method declarations</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">public static Printer getInstance()
-{
-    return INSTANCE;
-}
-&lt;--
-&lt;--
-&lt;--
-public void print(AST node, ASTWriter out)
-           throws IOException
-{
-    ...
-}
-</pre></td></tr></table></div><p></p></li><li><p><a name="blank-lines-blocks"></a>
-Blocks
-</p><a class="indexterm" name="d0e3474"></a><a class="indexterm" name="d0e3477"></a><p>
-Lets you control how many blank lines should be printed before and after
-statement blocks (if-else , for, while, do-while, switch, try-catch-finally, synchronized).
-Note that the 'Blank lines after' setting also applies for anonymous inner classes.
-</p><div class="example"><a name="ex-blank-lines-blocks"></a><p class="title"><b>Example&nbsp;4.120.&nbsp;2 Blank lines between before and after blocks</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">AST type = null;
-&lt;--
-&lt;--
-switch (next.getType())
-{
-    case JavaTokenTypes.LPAREN :
-        type = PrinterUtils.advanceToFirstNonParen(next);
-        break;
-    default :
-        type = next;
-        break;
-}
-&lt;--
-&lt;--
-AST ident = type.getFirstChild();
-</pre></td></tr></table></div><p></p></li><li><p><a name="blank-lines-declarations"></a>
-Declarations
-</p><a class="indexterm" name="d0e3493"></a><a class="indexterm" name="d0e3496"></a><p>
-Lets you control how many blank lines should be printed before and after
-variable declarations.
-</p></li><li><p><a name="blank-lines-case"></a>
-Case blocks
-</p><a class="indexterm" name="d0e3506"></a><a class="indexterm" name="d0e3509"></a><p>
-Lets you control how many blank lines should be printed before each case
-block of a switch expression.
-</p><div class="example"><a name="ex-blank-lines-case"></a><p class="title"><b>Example&nbsp;4.121.&nbsp;3 Blank lines before case blocks</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">switch (next.getType())
-{
-&lt;--
-&lt;--
-&lt;--
-    case JavaTokenTypes.LPAREN :
-        type = PrinterUtils.advanceToFirstNonParen(next);
-        break;
-&lt;--
-&lt;--
-&lt;--
-    default :
-        type = next;
-        break;
-}
-</pre></td></tr></table></div><p></p></li><li><p><a name="blank-lines-control"></a>
-Control statements
-</p><a class="indexterm" name="d0e3525"></a><a class="indexterm" name="d0e3528"></a><p>
-Lets you control how many blank lines should be printed before the statements
-<span><b class="command">return</b></span>, <span><b class="command">break</b></span> and <span><b class="command">continue</b></span>.
-</p><div class="example"><a name="ex-blank-lines-control"></a><p class="title"><b>Example&nbsp;4.122.&nbsp;2 Blank lines before case control statements</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">switch (next.getType())
-{
-    case JavaTokenTypes.LPAREN :
-        type = PrinterUtils.advanceToFirstNonParen(next);
-&lt;--
-&lt;--
-        break;
-
-    default :
-        type = next;
-&lt;--
-&lt;--
-        break;
-}
-</pre></td></tr></table></div><p></p></li><li><p><a name="blank-lines-sl-comments"></a>
-Single-line comments
-</p><a class="indexterm" name="d0e3553"></a><a class="indexterm" name="d0e3556"></a><p>
-Lets you control how many blank lines should be printed before single-line
-comments.
-</p></li><li><p><a name="blank-lines-ml-comments"></a>
-Multi-line comments
-</p><a class="indexterm" name="d0e3566"></a><a class="indexterm" name="d0e3569"></a><p>
-Lets you control how many blank lines should be printed before multi-line
-comments.
-</p></li><li><p><a name="blank-lines-javadoc"></a>
-Javadoc comments
-</p><a class="indexterm" name="d0e3579"></a><a class="indexterm" name="d0e3582"></a><p>
-Lets you control how many blank lines should be printed before Javadoc
-comments.
-</p></li></ul></div></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="separation-misc"></a>4.3.5.2.&nbsp;Misc</h4></div></div><div></div></div><p>Lets you control miscellaneous separation settings.</p><div class="sect4" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="d0e3594"></a>4.3.5.2.1.&nbsp;Misc</h5></div></div><div></div></div><div class="itemizedlist"><ul type="disc"><li><p><a name="separation-misc-left-curly"></a>
-Blank lines after left curly brace
-</p><a class="indexterm" name="d0e3601"></a><a class="indexterm" name="d0e3604"></a><p>
-Forces the given number of blank lines after left curly braces no matter
-what your other blank lines settings say.
-</p><div class="example"><a name="ex-separation-before-blocks"></a><p class="title"><b>Example&nbsp;4.123.&nbsp;Blank lines before blocks=1</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">public void foo()
-{
-&lt;--
-    if (condition())
-    {
-&lt;--
-        if (anotherCondition())
-        {
-            doSomething();
-        }
-    }
-}
-</pre></td></tr></table></div><p></p><div class="example"><a name="ex-separation-misc-left-curly-yes"></a><p class="title"><b>Example&nbsp;4.124.&nbsp;Blank lines before blocks=1, Blank lines after left curly braces=0</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">public void foo()
-{
-    if (condition())
-    {
-        if (anotherCondition())
-        {
-            doSomething();
-        }
-    }
-}
-</pre></td></tr></table></div><p></p></li><li><p><a name="separation-misc-right-curly"></a>
-Blank lines before right curly brace
-</p><a class="indexterm" name="d0e3626"></a><a class="indexterm" name="d0e3629"></a><p>
-Forces the given number of blank lines before closing curly braces no matter
-what your other blank lines settings say.
-</p><div class="example"><a name="ex-separation-misc-left-curly-no"></a><p class="title"><b>Example&nbsp;4.125.&nbsp;Blank lines before blocks=1</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">public void foo()
-{
-    if (condititon())
-    {
-        if (anotherCondition())
-        {
-            doSomething();
-&lt;--
-        }
-&lt;--
-    }
-&lt;--
-}
-</pre></td></tr></table></div><p></p></li><li><p><a name="separation-misc-keep"></a>
-Keep Blank lines up to
-</p><p>
-If enabled, retains up to the given number of blank lines found in the
-original source. This only works for method or constructor bodies. Note that Jalopy
-still takes your other blank lines settings into account.
-</p><div class="example"><a name="ex-separation-misc-keep-no"></a><p class="title"><b>Example&nbsp;4.126.&nbsp;Source code with blank lines to separate code sections</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">aMVString = new MultiValueString("abc");
-&lt;--
-System.out.println("MV = "+aMVString);
-&lt;--
-System.out.println("MV0 = "+aMVString.extract(0));
-System.out.println("MV1 = "+aMVString.extract(1));
-System.out.println("MV2 = "+aMVString.extract(2));
-System.out.println("");
-</pre></td></tr></table></div><p>
-If this feature is left disabled, Jalopy will print the individual lines according
-to the current blank lines settings but won't try to retain any blank lines.
-</p></li></ul></div></div><div class="sect4" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="chunks"></a>4.3.5.2.2.&nbsp;Chunks</h5></div></div><div></div></div><a class="indexterm" name="d0e3657"></a><p>
-Lets you define what makes a chunk: a section of associated statements.
-</p><div class="itemizedlist"><ul type="disc"><li><p><a name="chunks-comments"></a>
-By comments
-</p><a class="indexterm" name="d0e3666"></a><a class="indexterm" name="d0e3669"></a><p>
-If enabled, a statement with a comment before is recognized as the start of a new
-chunk.
-</p><div class="example"><a name="ex-chunks-comments"></a><p class="title"><b>Example&nbsp;4.127.&nbsp;Aligning variable declarations</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-String        text  = "text";
-int           a     = -1;
-
-// create a new entry
-History.Entry entry = new History.Entry(text);
-</pre></td></tr></table></div><p></p><div class="example"><a name="ex-chunks-comments-enabled"></a><p class="title"><b>Example&nbsp;4.128.&nbsp;Aligning variable declarations with chunking by comments</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-String text  = "text";
-int    a     = -1;
-
-// create a new entry
-History.Entry entry = new History.Entry(text);
-</pre></td></tr></table></div><p></p></li><li><p><a name="chunks-blank-lines"></a>
-By Blank lines
-</p><a class="indexterm" name="d0e3691"></a><a class="indexterm" name="d0e3694"></a><p>
-If enabled, a statement which has one or more blank lines before is recognized
-as the start of a new chunk.
-</p></li></ul></div></div></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="separation-comment"></a>4.3.5.3.&nbsp;Comments</h4></div></div><div></div></div><p>
-Lets you control the behaviour of the separator comments. If the
-<a href="sorting.html" title="4.3.12.&nbsp;Sorting">sorting of class elements</a> is enabled, Separator comments
-can be inserted before every element section, to make it easier to identify the
-different parts of a source file.
-</p><a class="indexterm" name="d0e3709"></a><div class="example"><a name="ex-separation-comment"></a><p class="title"><b>Example&nbsp;4.129.&nbsp;Separator comment</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-//~ Methods ------------------------------------------------------------------
-</pre></td></tr></table></div><p></p><div class="sect4" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="d0e3718"></a>4.3.5.3.1.&nbsp;General</h5></div></div><div></div></div><div class="itemizedlist"><ul type="disc"><li><p>
-Add separator comments
-</p><p>
-Enables the insertions of separator comments.
-</p></li><li><p>
-Add separator comments for inner classes
-</p><p>
-The insertion of separator comments for inner classes/interfaces may lead to
-confusion, therefore you can control it here separately.
-</p></li></ul></div></div><div class="sect4" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="d0e3732"></a>4.3.5.3.2.&nbsp;Descriptions</h5></div></div><div></div></div><p>Lets you define the description text for each of the different class elements.</p></div><div class="sect4" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="d0e3737"></a>4.3.5.3.3.&nbsp;Fill character</h5></div></div><div></div></div><p>Lets you define the fill character for the comments.</p></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="wrapping.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="printer.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="comments.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4.3.4.&nbsp;Wrapping&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;4.3.6.&nbsp;Comments</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/settings.html b/utils/jalopy/docs/settings.html
deleted file mode 100755 (executable)
index 797f5a8..0000000
+++ /dev/null
@@ -1,90 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>Chapter&nbsp;4.&nbsp;Settings</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="previous" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="next" href="project.html" title="4.2.&nbsp;Projects"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index"><link rel="section" href="settings.html#general" title="4.1.&nbsp;General"><link rel="section" href="project.html" title="4.2.&nbsp;Projects"><link rel="section" href="printer.html" title="4.3.&nbsp;Printer"><link rel="section" href="inspector.html" title="4.4.&nbsp;Code Inspector"><link rel="section" href="messages.html" title="4.5.&nbsp;Messages">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter&nbsp;4.&nbsp;Settings</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="usage.html">Prev</a>&nbsp;</td><th width="60%" align="center">Part&nbsp;I.&nbsp;Jalopy core</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="project.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="settings"></a>Chapter&nbsp;4.&nbsp;Settings</h2></div></div><div></div></div><a class="indexterm" name="d0e942"></a><p>
-Provides a detailed discussion of all available settings to configure Jalopy.
-</p><p><a name="settings-directory"></a>
-Jalopy stores all settings as files inside its
-<i class="firstterm">Settings directory</i> (or subdirectories thereof).
-This directory is located in the user home directory (<tt class="filename">$HOME/.jalopy</tt>).
-</p><a class="indexterm" name="d0e957"></a><p>
-A graphical user interface is provided to easily configure the settings.
-Please refer to the individual Plug-in chapters in <a href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins">Part&nbsp;II, &#8220;Plug-ins&#8221;</a>
-for information on how to display it from within the Plug-in you received.
-</p><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="general"></a>4.1.&nbsp;General</h2></div></div><div></div></div><p><a name="code-convention"></a>
-Jalopy stores its settings in a binary file
-<tt class="filename">$HOME/.jalopy/<i class="replaceable"><tt>PROJECT_DIR</tt></i>/preferences.dat</tt>.
-However you can import/export your settings in both the binary, and a textual
-XML format. A group of settings forms a <i class="firstterm">code convention</i>.
-</p><a class="indexterm" name="d0e979"></a><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="general-convention"></a>4.1.1.&nbsp;Convention</h3></div></div><div></div></div><p>
-Lets you name a group of settings, a code convention.
-</p><div class="itemizedlist"><ul type="disc"><li><p>
-Name
-</p><p>
-The name of the code convention. The name must be no longer than 10 characters.
-</p></li><li><p>
-Description
-</p><p>
-Stores a short description for the code convention.
-</p></li></ul></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="general-compliance"></a>4.1.2.&nbsp;Compliance</h3></div></div><div></div></div><p>
-Lets you specify whether Java sources should be treated as JDK 1.3 or
-as JDK 1.4 compatible. The latter means <tt class="literal">assert</tt> will be
-recognized as a reserved keyword.
-</p><a class="indexterm" name="d0e1006"></a><a class="indexterm" name="d0e1009"></a><a class="indexterm" name="d0e1012"></a><div class="itemizedlist"><ul type="disc"><li><p>
-Source compatibility
-</p><p>
-Lets you choose the JDK version to use for source compatibility.
-</p></li></ul></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="import-export"></a>4.1.3.&nbsp;Import/Export</h3></div></div><div></div></div><p>
-Use the <span><b class="guibutton">Import...</b></span> and <span><b class="guibutton">Export...</b></span>
-buttons to import an already-saved code convention, or export your current settings as
-a new code convention. You can choose between the binary <tt class="filename">.jal</tt> format
-or an XML representation.
-</p><p>
-Jalopy is able to import settings from both local and distributed locations.
-Just specify a valid Internet address (either starting with <i class="firstterm">http://</i> or
-<i class="firstterm">www.</i>) for the latter. Jalopy will then attempt to synchronize
-its settings with the given url on every invocation. That way it is easy to
-share a single code convention across a group of developers.
-</p><p>
-Please note that versions prior to 1.0b8 stored the backup directory always as
-an absolute file. Therefore after importing a code convention, you should
-check whether this directory points to your preferred backup directory. This
-advice holds true even for later versions in case you've changed the default
-backup directory.
-</p><p>
-However if the backup directory setting is left untouched, the directory is
-stored relative to the Jalopy settings directory. This way you can savely
-share your code convention across different systems and platforms.
-</p></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="usage.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="part-core.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="project.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Chapter&nbsp;3.&nbsp;Usage&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;4.2.&nbsp;Projects</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/site.css b/utils/jalopy/docs/site.css
deleted file mode 100755 (executable)
index 9dffb8e..0000000
+++ /dev/null
@@ -1,106 +0,0 @@
-#-------------------------------------------------------------------------------
-# Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
-# Copyright (C) 2014 The Jalview Authors
-# 
-# This file is part of Jalview.
-# 
-# Jalview is free software: you can redistribute it and/or
-# modify it under the terms of the GNU General Public License 
-# as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
-#  
-# Jalview is distributed in the hope that it will be useful, but 
-# WITHOUT ANY WARRANTY; without even the implied warranty 
-# of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
-# PURPOSE.  See the GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
-# The Jalview Authors are detailed in the 'AUTHORS' file.
-#-------------------------------------------------------------------------------
-/**
- $Id$
- */
-A               { color: #00F; }
-A:link                 { text-decoration: none; }
-A:active       { text-decoration: none; }
-A:visited      { text-decoration: none; }
-A:hover                {  text-decoration: underline; }
-
-body    {
-        font-size : 0.9em;
-       font-family : Verdana, Geneva, Arial, Helvetica, sans-serif;
-       margin: 20px 20px 20px 20px;
-       padding-bottom:15px;
-        }
-h1{
-       font-weight : bold;
-       font-family : Verdana,Arial,Helvetica,sans-serif;
-}
-
-h2{
-       font-weight : bold;
-       font-family : Verdana,Arial,Helvetica,sans-serif;
-}
-
-h3{
-       font-weight : bold;
-       font-family : Verdana,Arial,Helvetica,sans-serif;
-}
-
-h4{
-       font-weight : bold;
-       font-family : Verdana,Arial,Helvetica,sans-serif;
-}
-
-h5{
-       font-weight : bold;
-       font-family : Verdana,Arial,Helvetica,sans-serif;
-}
-
-hr{
-       border : none;
-       background : #808080;
-       height : 1px;
-}
-
-td,p,div,form,blockquote,ul,ol{
-       font-family : Verdana,Arial,Helvetica,sans-serif;
-}
-
-th{
-       font-family : Verdana,Arial,Helvetica,sans-serif;
-}
-
-.footer{
-       color : #808080;
-       font-size : 9px;
-       font-family : Verdana,Arial,Helvetica,sans-serif;
-}
-
-.sublogo{
-       padding-bottom : 5px;
-       color : #333366;
-       font-size : 9px;
-       font-family : Arial,Helvetica,sans-serif;
-}
-
-.logo{
-       padding-left : 10px;
-       font-weight : bold;
-       font-size : 26pt;
-       font-family : Verdana,Arial,Helvetica,sans-serif;
-}
-
-.navlink:link           { color: #FFF; text-decoration: none; }
-.navlink:active         { color: #FFF; text-decoration: none; }
-.navlink:visited        { color: #FFF; text-decoration: none; }
-.navlink:hover          { color: #FFF; text-decoration: underline; }
-
-.navlink2:link          { color : #000;        text-decoration : none; }
-.navlink2:active        { color : #000;        text-decoration : none; }
-.navlink2:visited       { color : #000;        text-decoration : none; }
-.navlink2:hover         { color : #000;        text-decoration : underline; }
-
-.shade{
-       background-color: ;
-       background : #FDF5E6;
-}
diff --git a/utils/jalopy/docs/sorting.html b/utils/jalopy/docs/sorting.html
deleted file mode 100755 (executable)
index 50d93d1..0000000
+++ /dev/null
@@ -1,93 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>4.3.12.&nbsp;Sorting</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="printer.html" title="4.3.&nbsp;Printer"><link rel="previous" href="footer.html" title="4.3.11.&nbsp;Footer"><link rel="next" href="misc.html" title="4.3.13.&nbsp;Misc"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index"><link rel="subsection" href="sorting.html#sorting-general" title="4.3.12.1.&nbsp;Declarations"><link rel="subsection" href="sorting.html#d0e4876" title="4.3.12.2.&nbsp;Modifiers">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4.3.12.&nbsp;Sorting</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="footer.html">Prev</a>&nbsp;</td><th width="60%" align="center">4.3.&nbsp;Printer</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="misc.html">Next</a></td></tr></table><hr></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="sorting"></a>4.3.12.&nbsp;Sorting</h3></div></div><div></div></div><p>Lets you tweak the sorting settings.</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="sorting-general"></a>4.3.12.1.&nbsp;Declarations</h4></div></div><div></div></div><p>
-At first glance, sorting of class declaration elements may seem somewhat
-obscure, but good sorting can lead to a reduction of complexity if the
-location of each element is predictable.
-</p><div class="itemizedlist"><ul type="disc"><li><p><a name="sorting-general-elements"></a>
-Sort class elements
-</p><p>
-Enables or disables the sorting of class elements.
-</p><div class="example"><a name="ex-sort-file"></a><p class="title"><b>Example&nbsp;4.149.&nbsp;Sorted Java source file (with <a href="separation.html#separation-comment" title="4.3.5.3.&nbsp;Comments">Separator comments</a>)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-class TypePrinter
-    extends AbstractPrinter
-{
-    //~ Instance/static variables ----------------------------------------------
-
-    /** Singleton. */
-    private final static Printer INSTANCE = new TypePrinter();
-
-    //~ Constructors -----------------------------------------------------------
-
-    /**
-     * Creates a new TypePrinter object.
-     */
-    protected TypePrinter()
-    {
-    }
-
-    //~ Methods ----------------------------------------------------------------
-
-    public static Printer getInstance()
-    {
-        return INSTANCE;
-    }
-
-    public void print(AST node, ASTWriter out)
-               throws IOException
-    {
-        AST child = node.getFirstChild();
-        PrinterFactory.create(child).print(child, out);
-    }
-}
-</pre></td></tr></table></div><p></p></li><li><p>Ordering</p><p>
-You can specify the order in which static variable/initializer, instance variable,
-instance initializer, constructor, method, inner class and interface elements
-should appear in source files by selecting the element type and moving it up or
-down the list.
-</p><p>
-If you enable any of the check boxes, all elements of the selected type
-(within a section) will be sorted too. First by access modifier
-(public, protected, package protected, private) and - for two elements with the
-same accessibility - lexicographically. For methods those which follow the Java
-Bean pattern (getXXX, setXXX, isXXX) will be sorted first.
-</p></li></ul></div></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="d0e4876"></a>4.3.12.2.&nbsp;Modifiers</h4></div></div><div></div></div><p><a name="sorting-modifier"></a>
-Enables or disables the sorting of declaration modifiers.
-</p><div class="itemizedlist"><ul type="disc"><li><p>Ordering</p><p>
-Lets you specify the order in which the individual modifiers should appear.
-Select an entry and use the <span><b class="guibutton">Up</b></span> and <span><b class="guibutton">Down</b></span>
-buttons to move it to the desired location.
-</p></li></ul></div><p></p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="footer.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="printer.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="misc.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4.3.11.&nbsp;Footer&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;4.3.13.&nbsp;Misc</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/usage.html b/utils/jalopy/docs/usage.html
deleted file mode 100755 (executable)
index dfa82d3..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>Chapter&nbsp;3.&nbsp;Usage</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="previous" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="next" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter&nbsp;3.&nbsp;Usage</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="build.html">Prev</a>&nbsp;</td><th width="60%" align="center">Part&nbsp;I.&nbsp;Jalopy core</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="settings.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="usage"></a>Chapter&nbsp;3.&nbsp;Usage</h2></div></div><div></div></div><a class="indexterm" name="d0e931"></a><p>Usage depends on the distribution you received. Please refer to the
-individual Plug-in chapters in <a href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins">Part&nbsp;II, &#8220;Plug-ins&#8221;</a> for details.
-</p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="build.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="part-core.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="settings.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Chapter&nbsp;2.&nbsp;Building&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;Chapter&nbsp;4.&nbsp;Settings</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/whitespace.html b/utils/jalopy/docs/whitespace.html
deleted file mode 100755 (executable)
index 81dfe99..0000000
+++ /dev/null
@@ -1,242 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>4.3.2.&nbsp;White Space</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="printer.html" title="4.3.&nbsp;Printer"><link rel="previous" href="printer.html" title="4.3.&nbsp;Printer"><link rel="next" href="indentation.html" title="4.3.3.&nbsp;Indentation"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index"><link rel="subsection" href="whitespace.html#whitespace-before" title="4.3.2.1.&nbsp;Space before"><link rel="subsection" href="whitespace.html#space-after" title="4.3.2.2.&nbsp;Space after"><link rel="subsection" href="whitespace.html#padding" title="4.3.2.3.&nbsp;Spaces around">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4.3.2.&nbsp;White Space</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="printer.html">Prev</a>&nbsp;</td><th width="60%" align="center">4.3.&nbsp;Printer</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="indentation.html">Next</a></td></tr></table><hr></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="whitespace"></a>4.3.2.&nbsp;White Space</h3></div></div><div></div></div><a class="indexterm" name="d0e1436"></a><p>
-Controls the white space handling for the individual components of Java statements.
-</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="whitespace-before"></a>4.3.2.1.&nbsp;Space before</h4></div></div><div></div></div><a class="indexterm" name="d0e1444"></a><p>
-Lets you choose the components that should get one leading space inserted before them.
-</p><div class="itemizedlist"><ul type="disc"><li><p>
-Method declaration parentheses
-</p><div class="example"><a name="ex-space-before-method-paren"></a><p class="title"><b>Example&nbsp;4.9.&nbsp;Method declaration parentheses</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-public void someMethod<span class="bold"><b>(</b></span>)) {
-  ...
-}
-
-public void someMethod <span class="bold"><b>(</b></span>)) {
-  ...
-}
-</pre></td></tr></table></div><p></p></li><li><p><a name="whitespace-before-parentheses"></a>
-Method call parentheses
-</p><a class="indexterm" name="d0e1470"></a><a class="indexterm" name="d0e1477"></a><div class="example"><a name="ex-space-before-method-call-paren"></a><p class="title"><b>Example&nbsp;4.10.&nbsp;Method call parentheses</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-for (Iterator i = pointList.iterator<span class="bold"><b>(</b></span>); i.hasNext<span class="bold"><b>(</b></span>);) {
-    ...
-}
-
-for (Iterator i = pointList.iterator <span class="bold"><b>(</b></span>); i.hasNext <span class="bold"><b>(</b></span>);) {
-    ...
-}
-</pre></td></tr></table></div><p></p></li><li><p>
-Statement parentheses
-</p><div class="example"><a name="ex-space-before-statement-paren"></a><p class="title"><b>Example&nbsp;4.11.&nbsp;Statement parentheses</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-while<span class="bold"><b>(</b></span>!isDone)
-    doSomething();
-
-while <span class="bold"><b>(</b></span>!isDone)
-    doSomething();
-</pre></td></tr></table></div><p></p></li><li><p><a name="whitespace-before-braces"></a>
-Braces
-</p><a class="indexterm" name="d0e1516"></a><div class="example"><a name="ex-space-before-braces"></a><p class="title"><b>Example&nbsp;4.12.&nbsp;Braces</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-    String[] values = new String[]<span class="bold"><b>{</b></span>
-        "One", "Two", "Three", "Four", "Five", "Six", "Seven"
-    };
-
-    String[] values = new String[] <span class="bold"><b>{</b></span>
-        "One", "Two", "Three", "Four", "Five", "Six", "Seven"
-    };
-</pre></td></tr></table></div><p></p></li><li><p><a name="whitespace-before-brackets"></a>
-Brackets
-</p><a class="indexterm" name="d0e1538"></a><div class="example"><a name="ex-space-before-brackets"></a><p class="title"><b>Example&nbsp;4.13.&nbsp;Brackets</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-for (i = 0; i &lt; 100; i++)
-    sum += value<span class="bold"><b>[</b></span>i];
-
-for (i = 0; i &lt; 100; i++)
-    sum += value <span class="bold"><b>[</b></span>i];
-</pre></td></tr></table></div><p></p></li><li><p>
-Brackets in types
-</p><div class="example"><a name="ex-space-before-brackets-types"></a><p class="title"><b>Example&nbsp;4.14.&nbsp;Brackets in types</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-String<span class="bold"><b>[</b></span>] names = (String<span class="bold"><b>[</b></span>])data.toArray(new String<span class="bold"><b>[</b></span>]);
-
-String <span class="bold"><b>[</b></span>] names = (String <span class="bold"><b>[</b></span>])data.toArray(new String <span class="bold"><b>[</b></span>]);
-</pre></td></tr></table></div><p></p></li><li><p><a name="whitespace-before-colon"></a>
-Case colon
-</p><a class="indexterm" name="d0e1587"></a><div class="example"><a name="ex-space-before-case-colon"></a><p class="title"><b>Example&nbsp;4.15.&nbsp;Case colon</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-switch (character) {
-    case 'A'<span class="bold"><b>:</b></span>
-        break;
-}
-
-switch (character) {
-    case 'A' <span class="bold"><b>:</b></span>
-        break;
-}
-</pre></td></tr></table></div><p></p></li></ul></div></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="space-after"></a>4.3.2.2.&nbsp;Space after</h4></div></div><div></div></div><a class="indexterm" name="d0e1609"></a><p>
-Lets you choose what components should have one trailing space inserted after the component.
-</p><div class="itemizedlist"><ul type="disc"><li><p><a name="whitespace-after-comma"></a>
-Comma
-</p><a class="indexterm" name="d0e1620"></a><a class="indexterm" name="d0e1627"></a><div class="example"><a name="ex-space-after-comma"></a><p class="title"><b>Example&nbsp;4.16.&nbsp;Comma</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-doSomething (a<span class="bold"><b>,</b></span>b<span class="bold"><b>,</b></span>c<span class="bold"><b>,</b></span>d);
-
-doSomething (a<span class="bold"><b>,</b></span> b<span class="bold"><b>,</b></span> c<span class="bold"><b>,</b></span> d);
-</pre></td></tr></table></div><p></p></li><li><p><a name="whitespace-after-semi"></a>
-Semicolon
-</p><a class="indexterm" name="d0e1657"></a><a class="indexterm" name="d0e1664"></a><div class="example"><a name="ex-space-after-semi"></a><p class="title"><b>Example&nbsp;4.17.&nbsp;Semicolon</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-for (i=0<span class="bold"><b>;</b></span>i&lt;<span class="bold"><b></b></span>10<span class="bold"><b>;</b></span>i++) ...
-
-for (i=0<span class="bold"><b>;</b></span> i&lt;<span class="bold"><b></b></span>10<span class="bold"><b>;</b></span> i++) ...
-</pre></td></tr></table></div><p></p></li><li><p><a name="whitespace-after-cast"></a>
-Type Cast
-</p><a class="indexterm" name="d0e1692"></a><a class="indexterm" name="d0e1699"></a><div class="example"><a name="ex-space-after-cast"></a><p class="title"><b>Example&nbsp;4.18.&nbsp;Type Cast</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-int line = ((JavaAST<span class="bold"><b>)</b></span>node).getStartLine();
-
-int line = ((JavaAST<span class="bold"><b>)</b></span> node).getStartLine();
-</pre></td></tr></table></div><p></p></li><li><p>
-Negation
-</p><p>
-Prints a space after the unary operators Logical NOT (!) and Bitwise NOT (~).
-</p><div class="example"><a name="ex-space-after-negation"></a><p class="title"><b>Example&nbsp;4.19.&nbsp;Logical NOT</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-while(!isDone) {
-    doSomething();
-}
-
-while(! isDone) {
-    doSomething();
-}
-</pre></td></tr></table></div><p></p></li></ul></div></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="padding"></a>4.3.2.3.&nbsp;Spaces around</h4></div></div><div></div></div><p>
-Controls what components should have both a leading and trailing space inserted. This is sometimes called "padding".
-<a class="indexterm" name="d0e1730"></a>
-<a class="indexterm" name="d0e1736"></a>
-</p><div class="itemizedlist"><ul type="disc"><li><p><a name="padding-assign"></a>
-Assignment Operators
-<a class="indexterm" name="d0e1744"></a>
-<a class="indexterm" name="d0e1748"></a>
-<a class="indexterm" name="d0e1754"></a>
-
-</p><div class="example"><a name="ex-padding-op-assign"></a><p class="title"><b>Example&nbsp;4.20.&nbsp;Assignment Operators (=, +=, -=, *=, \=, %=, &amp;=, |=, ^=, &lt;&lt;=, &gt;&gt;=, &gt;&gt;&gt;=)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-a<span class="bold"><b>=</b></span>(b+c)*d;
-a <span class="bold"><b>=</b></span> (b+c)*d;
-</pre></td></tr></table></div><p></p></li><li><p><a name="padding-logical"></a>
-Logical Operators
-<a class="indexterm" name="d0e1777"></a>
-<a class="indexterm" name="d0e1781"></a>
-<a class="indexterm" name="d0e1787"></a>
-</p><div class="example"><a name="ex-padding-op-logical"></a><p class="title"><b>Example&nbsp;4.21.&nbsp;Logical Operators (&amp;&amp;, ||)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-if((LA(1)=='/')<span class="bold"><b>&amp;&amp;</b></span>(LA(2)!='*'<span class="bold"><b>||</b></span>(LA(2)=='*'<span class="bold"><b>&amp;&amp;</b></span>LA(3)!='*'))) ...
-
-if((LA(1)=='/') <span class="bold"><b>&amp;&amp;</b></span> (LA(2)!='*' <span class="bold"><b>||</b></span> (LA(2)=='*' <span class="bold"><b>&amp;&amp;</b></span> LA(3)!='*'))) ...
-</pre></td></tr></table></div><p></p></li><li><p><a name="padding-relational"></a>
-Relational Operators
-<a class="indexterm" name="d0e1822"></a>
-<a class="indexterm" name="d0e1828"></a>
-<a class="indexterm" name="d0e1832"></a>
-
-</p><div class="example"><a name="ex-padding-op-relational"></a><p class="title"><b>Example&nbsp;4.22.&nbsp;Relational Operators (==, !=, &lt;, &gt;, &lt;=, &gt;=)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-if((LA(1)<span class="bold"><b>==</b></span>'\n'||LA(1)<span class="bold"><b>==</b></span>'\r')) ...
-
-if((LA(1) <span class="bold"><b>==</b></span> '\n'||LA(1) <span class="bold"><b>==</b></span> '\r')) ...
-</pre></td></tr></table></div><p></p></li><li><p><a name="padding-bitwise"></a>
-Bitwise Operators
-<a class="indexterm" name="d0e1861"></a>
-<a class="indexterm" name="d0e1865"></a>
-<a class="indexterm" name="d0e1871"></a>
-</p><div class="example"><a name="ex-padding-op-bitwise"></a><p class="title"><b>Example&nbsp;4.23.&nbsp;Bitwise Operators (&amp;, |, ^)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-public static final boolean isUnix()
-{
-    return (getOperatingSystem()<span class="bold"><b>&amp;</b></span>PLAT_UNIX) != 0;
-}
-
-public static final boolean isUnix()
-{
-    return (getOperatingSystem()<span class="bold"><b> &amp; </b></span>PLAT_UNIX) != 0;
-}
-</pre></td></tr></table></div><p></p></li><li><p><a name="padding-mathematical"></a>
-Mathematical Operators
-<a class="indexterm" name="d0e1894"></a>
-<a class="indexterm" name="d0e1898"></a>
-<a class="indexterm" name="d0e1904"></a>
-
-</p><div class="example"><a name="ex-padding-op-math"></a><p class="title"><b>Example&nbsp;4.24.&nbsp;Mathematical Operators (+, -, /, *, %)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-a=(b<span class="bold"><b>+</b></span>c)<span class="bold"><b>*</b></span>d;
-
-a=(b <span class="bold"><b>+</b></span> c) <span class="bold"><b>*</b></span> d;
-</pre></td></tr></table></div><p></p></li><li><p><a name="padding-shift"></a>
-Shift Operators
-<a class="indexterm" name="d0e1933"></a>
-<a class="indexterm" name="d0e1937"></a>
-<a class="indexterm" name="d0e1943"></a>
-</p><div class="example"><a name="ex-padding-op-shift"></a><p class="title"><b>Example&nbsp;4.25.&nbsp;Shift Operators (&lt;&lt;, &gt;&gt;, &gt;&gt;&gt;)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-if(((1L<span class="bold"><b>&lt;&lt;</b></span>i)&amp;l)!=0)
-    System.out.print("1");
-
-if(((1L <span class="bold"><b>&lt;&lt;</b></span> i)&amp;l)!=0)
-    System.out.print("1");
-</pre></td></tr></table></div><p></p></li><li><p><a name="padding-braces"></a>
-Braces
-<a class="indexterm" name="d0e1966"></a>
-<a class="indexterm" name="d0e1970"></a>
-<a class="indexterm" name="d0e1976"></a>
-
-</p><div class="example"><a name="ex-padding-braces"></a><p class="title"><b>Example&nbsp;4.26.&nbsp;Braces</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-Object[] items = <span class="bold"><b>{</b></span>"2", "3", "4"<span class="bold"><b>}</b></span>;
-
-Object[] items = <span class="bold"><b>{</b></span> "2", "3", "4" <span class="bold"><b>}</b></span>;
-</pre></td></tr></table></div><p></p></li><li><p><a name="padding-brackets"></a>
-Brackets
-<a class="indexterm" name="d0e2005"></a>
-<a class="indexterm" name="d0e2009"></a>
-<a class="indexterm" name="d0e2015"></a>
-</p><div class="example"><a name="ex-padding-brackets"></a><p class="title"><b>Example&nbsp;4.27.&nbsp;Brackets</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-for (i = 0; i &lt; 100; i++)
-    sum += value<span class="bold"><b>[</b></span>i<span class="bold"><b>]</b></span>;
-
-for(i = 0; i &lt; 100; i++)
-    sum += value<span class="bold"><b>[</b></span> i <span class="bold"><b>]</b></span>;
-</pre></td></tr></table></div><p></p></li><li><p><a name="padding-parentheses"></a>
-Parentheses
-<a class="indexterm" name="d0e2044"></a>
-<a class="indexterm" name="d0e2048"></a>
-<a class="indexterm" name="d0e2054"></a>
-</p><div class="example"><a name="ex-padding-paren"></a><p class="title"><b>Example&nbsp;4.28.&nbsp;Parentheses</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-GridBagLayout layout = new GridBagLayout();
-setLayout<span class="bold"><b>(</b></span>layout<span class="bold"><b>)</b></span>;
-
-GridBagLayout layout = new GridBagLayout();
-setLayout<span class="bold"><b>(</b></span> layout <span class="bold"><b>)</b></span>;
-</pre></td></tr></table></div><p></p></li><li><p>
-Type Cast Parentheses
-</p><div class="example"><a name="ex-padding-cast"></a><p class="title"><b>Example&nbsp;4.29.&nbsp;Type Cast Parentheses</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-int line = (<span class="bold"><b>(</b></span>JavaAST<span class="bold"><b>)</b></span>node).getStartLine();
-
-int line = (<span class="bold"><b>(</b></span> JavaAST <span class="bold"><b>)</b></span>node).getStartLine();
-</pre></td></tr></table></div><p></p></li></ul></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="printer.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="printer.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="indentation.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4.3.&nbsp;Printer&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;4.3.3.&nbsp;Indentation</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/docs/wrapping.html b/utils/jalopy/docs/wrapping.html
deleted file mode 100755 (executable)
index e5dccad..0000000
+++ /dev/null
@@ -1,603 +0,0 @@
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-  <html><head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>4.3.4.&nbsp;Wrapping</title><link rel="stylesheet" href="site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="manual.html" title="Jalopy User Manual"><link rel="up" href="printer.html" title="4.3.&nbsp;Printer"><link rel="previous" href="indentation.html" title="4.3.3.&nbsp;Indentation"><link rel="next" href="separation.html" title="4.3.5.&nbsp;Blank Lines"><link rel="preface" href="dedication.html" title="Dedication"><link rel="preface" href="acknowledge.html" title="Acknowledgements"><link rel="preface" href="introduction.html" title="Introduction"><link rel="part" href="part-core.html" title="Part&nbsp;I.&nbsp;Jalopy core"><link rel="chapter" href="installation.html" title="Chapter&nbsp;1.&nbsp;Installation"><link rel="chapter" href="build.html" title="Chapter&nbsp;2.&nbsp;Building"><link rel="chapter" href="usage.html" title="Chapter&nbsp;3.&nbsp;Usage"><link rel="chapter" href="settings.html" title="Chapter&nbsp;4.&nbsp;Settings"><link rel="part" href="part-plugins.html" title="Part&nbsp;II.&nbsp;Plug-ins"><link rel="chapter" href="plugin-ant.html" title="Chapter&nbsp;5.&nbsp;Ant Plug-in task"><link rel="chapter" href="plugin-console.html" title="Chapter&nbsp;6.&nbsp;Console Application"><link rel="chapter" href="plugin-eclipse.html" title="Chapter&nbsp;7.&nbsp;Eclipse Plug-in"><link rel="chapter" href="plugin-jbuilder.html" title="Chapter&nbsp;8.&nbsp;JBuilder OpenTool"><link rel="chapter" href="plugin-jdev.html" title="Chapter&nbsp;9.&nbsp;JDeveloper Extension"><link rel="chapter" href="plugin-jedit.html" title="Chapter&nbsp;10.&nbsp;jEdit Plug-in"><link rel="chapter" href="plugin-netbeans.html" title="Chapter&nbsp;11.&nbsp;NetBeans/Sun ONE Studio module"><link rel="appendix" href="dependencies.html" title="Appendix&nbsp;A.&nbsp;Library Dependencies"><link rel="appendix" href="license-bsd.html" title="Appendix&nbsp;B.&nbsp;The Jalopy BSD License"><link rel="appendix" href="license-antlr.html" title="Appendix&nbsp;C.&nbsp;ANTLR SOFTWARE RIGHTS"><link rel="appendix" href="license-apache.html" title="Appendix&nbsp;D.&nbsp;The Apache Software License, Version 1.1"><link rel="appendix" href="license-gnu.html" title="Appendix&nbsp;E.&nbsp;GNU GENERAL PUBLIC LICENSE Version 2, June 1991"><link rel="appendix" href="license-gnu-doc.html" title="Appendix&nbsp;F.&nbsp;GNU Free Documentation License Version 1.1, March 2000"><link rel="appendix" href="license-common-public.html" title="Appendix&nbsp;G.&nbsp;Common Public License Version 1.0"><link rel="appendix" href="license-sun-public.html" title="Appendix&nbsp;H.&nbsp;SUN PUBLIC LICENSE Version 1.0"><link rel="index" href="ix01.html" title="Index"><link rel="subsection" href="wrapping.html#wrap-general" title="4.3.4.1.&nbsp;General"><link rel="subsection" href="wrapping.html#wrap-always" title="4.3.4.2.&nbsp;Always"><link rel="subsection" href="wrapping.html#wrap-misc" title="4.3.4.3.&nbsp;Misc">
-      <meta name="description" content="Jalopy Java Source Code Formatter Beautifier Pretty Printer"> 
-      <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" l gen true for "http://jalopy.sf.net" r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://jalopy.sf.net" r (n 0 s 0 v 0 l 0))'> 
-    </head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="left"><tbody><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./index.html" class="navlink">Overview</a> &#149;
-                    <a href="./download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./links.html" class="navlink">Links</a> &#149;
-                    <a href="./contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td height="20" bgcolor="#faebd7" style="padding-left:15px"><a href="./features.html" class="navlink2">Features</a> |
-                    <a href="./history.html" class="navlink2">History</a> |
-                    <a href="./manual.html" class="navlink2">Manual</a> |
-                    <a href="./faq.html" class="navlink2">FAQ</a> |
-                    <a href="./api/index.html" class="navlink2">Javadoc</a></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" align="right" style="font-size:10px;padding-right:3px">
-                    This page generated: <strong>June 8 2004</strong></td></tr></tbody></table><table border="0" width="100%" cellspacing="0" cellpadding="5"><tr><td><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4.3.4.&nbsp;Wrapping</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="indentation.html">Prev</a>&nbsp;</td><th width="60%" align="center">4.3.&nbsp;Printer</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="separation.html">Next</a></td></tr></table><hr></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="wrapping"></a>4.3.4.&nbsp;Wrapping</h3></div></div><div></div></div><a class="indexterm" name="d0e2657"></a><a class="indexterm" name="d0e2660"></a><p>
-Controls when and how lines gets wrapped.
-</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="wrap-general"></a>4.3.4.1.&nbsp;General</h4></div></div><div></div></div><p>
-Lets you control the general line wrapping options.
-</p><div class="sect4" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="wrap-general-general"></a>4.3.4.1.1.&nbsp;General</h5></div></div><div></div></div><p>
-Lets you control the general line wrapping options.
-</p><div class="itemizedlist"><ul type="disc"><li><p><a name="wrap-use"></a>
-Wrap lines
-</p><p>
-Enables or disables the automatic line wrapping.
-</p></li><li><p><a name="wrap-sizes-line"></a>
-Line length
-</p><p>
-Lets you specify the maximum line length. Jalopy tries (more or less) to limit
-each line within the given length.
-</p><a class="indexterm" name="d0e2686"></a><a class="indexterm" name="d0e2691"></a></li><li><p><a name="wrap-sizes-deep"></a>
-Deep indent
-</p><a class="indexterm" name="d0e2697"></a><a class="indexterm" name="d0e2702"></a><p>
-Specifies the length after which a gap will be identified as "deep indented".
-Jalopy tries to avoid these kind of gaps and will force a line break or apply
-another indentation scheme, if this size is exceeded.
-</p><div class="example"><a name="ex-wrap-sizes-deep"></a><p class="title"><b>Example&nbsp;4.65.&nbsp;Deep indent size (60) not exceeded</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-                                                            |                  |
-    protected static synchronized File getANewDestinationFile(File dest,       |
-                                                            | String packageName,
-                                                            | String filename) |
-|----------------- the gap ---------------------------|throws IOException      |
-    {                                                       |                  |
-    }                                                       |                  |
-                                                            |                  |
-                                                            60                 79
-</pre></td></tr></table></div><p></p><div class="example"><a name="ex-wrap-sizes-deep-exceed"></a><p class="title"><b>Example&nbsp;4.66.&nbsp;Deep indent size (50) exeeded</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-                                                  |                            |
-    protected static synchronized File getANewDestinationFile(File dest,       |
-                                                  |           String packageName,
-                                                  |           String filename) |
-|----------------- the gap ---------------------------|throws IOException      |
-    {                                             |                            |
-    }                                             |                            |
-                                                  |                            |
-                                                  50                           79
-</pre></td></tr></table></div></li></ul></div></div><div class="sect4" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="wrap-policy"></a>4.3.4.1.2.&nbsp;Policy</h5></div></div><div></div></div><a class="indexterm" name="d0e2721"></a><a class="indexterm" name="d0e2726"></a><p>
-Lets you fine-control the wrapping behaviour.
-</p><div class="itemizedlist"><ul type="disc"><li><p><a name="wrap-left-parenthesis"></a>
-Wrap after left parenthesis
-</p><p>
-Lets you control the wrapping behaviour for statement and expression lists.
-</p><p>
-If left disabled, the first line break will be preferably inserted
-behind the first parameter or expression and only occurs after the left
-parenthesis if the maximum line length would be exceeded.</p><div class="example"><a name="ex-wrap-left-parenthesis-disabled"></a><p class="title"><b>Example&nbsp;4.67.&nbsp;Wrap after left parenthesis (disabled)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-                                                                               |
-appServerReferencesVector.add<span class="bold"><b>(</b></span>new AppServerReference<span class="bold"><b>(</b></span>
-        "RemoteApplicationManager",                                            |
-        poa.create_reference_with_id<span class="bold"><b>(</b></span>         |
-            "RemoteApplicationManager".getBytes(),                             |
-            RemoteApplicationManagerHelper.id())));                            |
-                                                                               |
-</pre></td></tr></table></div><p>
-Otherwise the line break will always occur behind the left parenthesis.
-</p><div class="example"><a name="ex-wrap-left-parenthesis-enabled"></a><p class="title"><b>Example&nbsp;4.68.&nbsp;Wrap after left parenthesis (enabled)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-appServerReferencesVector.add<span class="bold"><b>(</b></span>
-    new AppServerReference<span class="bold"><b>(</b></span>
-        "RemoteApplicationManager",
-        poa.create_reference_with_id<span class="bold"><b>(</b></span>
-            "RemoteApplicationManager".getBytes(),
-            RemoteApplicationManagerHelper.id())));
-</pre></td></tr></table></div><p>
-This switch affects the output style of method/constructor declarations and
-calls, creator statements and <tt class="literal">if-else</tt>, <tt class="literal">for</tt>,
-<tt class="literal">while</tt> and <tt class="literal">do-while</tt> blocks.
-</p><p>
-As per default, the wrapped lines will be indended using
-<a href="indentation.html#indentation-policy-standard">Standard indentation</a>, but you
-may want to apply another indentation scheme. See
-<a href="indentation.html#indentation-policy" title="4.3.3.1.1.&nbsp;Policy">Section&nbsp;4.3.3.1.1, &#8220;Policy&#8221;</a> for more information.
-</p><p></p></li><li><p><a name="wrap-right-parenthesis"></a>
-Wrap before right parenthesis
-</p><p>
-Forces a line break before the right parenthesis of parameter or expression lists.
-The parenthesis will be intended according to the current indentation level.
-Only takes action if at least one parameter/expression was indeed wrapped.
-</p><p>
-This switch affects the output style of method/constructor declarations and
-calls, creator statements and <tt class="literal">if-else</tt>, <tt class="literal">for</tt>,
-<tt class="literal">while</tt> and <tt class="literal">do-while</tt> blocks.
-</p><div class="example"><a name="ex-wrap-right-parenthesis"></a><p class="title"><b>Example&nbsp;4.69.&nbsp;Right parenthesis (disabled)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-public void severalParameters(String one,
-                              int two,
-                              String three,
-                              StringObject four,
-                              AnotherObject five<span class="bold"><b>)</b></span> {
-}
-</pre></td></tr></table></div><p></p><div class="example"><a name="ex-wrap-right-parenthesis-enabled"></a><p class="title"><b>Example&nbsp;4.70.&nbsp;Right parenthesis (enabled)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-public void severalParameters(String one,
-                              int two,
-                              String three,
-                              StringObject four,
-                              AnotherObject five
-<span class="bold"><b>)</b></span> {
-}
-</pre></td></tr></table></div><p>
-Both switches combined, looks like the following example:
-</p><div class="example"><a name="ex-wrap-left-right-parenthesis"></a><p class="title"><b>Example&nbsp;4.71.&nbsp;Left and right parenthesis</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-appServerReferencesVector.add<span class="bold"><b>(</b></span>
-    new AppServerReference<span class="bold"><b>(</b></span>
-        "RemoteApplicationManager",
-        poa.create_reference_with_id<span class="bold"><b>(</b></span>
-            "RemoteApplicationManager".getBytes(),
-            RemoteApplicationManagerHelper.id()
-        <span class="bold"><b>)</b></span>
-    <span class="bold"><b>)</b></span>
-<span class="bold"><b>)</b></span>;
-</pre></td></tr></table></div><p>
-For blocks the output may go like this:
-</p><div class="example"><a name="ex-wrap-left-right-parenthesis-wrapped-continue"></a><p class="title"><b>Example&nbsp;4.72.&nbsp;Left and right parenthesis (wrapped)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-if <span class="bold"><b>(</b></span>
-    "pick".equals(m.getName()) &amp;&amp; m.isStatic() &amp;&amp; m.isPublic()
-<span class="bold"><b>)</b></span> {
-    pickFound = true;
-}
-else if <span class="bold"><b>(</b></span>
-    "pick".equals(m.getName()) &amp;&amp; m.isStatic() &amp;&amp; m.isPublic()
-<span class="bold"><b>)</b></span> {
-    pickFound = true;
-}
-</pre></td></tr></table></div><p></p></li><li><p><a name="wrap-grouping-paren"></a>
-Wrap grouping parentheses
-</p><p>
-Lets you control the wrapping behaviour for grouping parentheses. If enabled,
-linebreaks are inserted after left and before right parentheses of grouped
-expressions to let the expression(s) stand out.
-</p><div class="example"><a name="ex-wrap-grouping-no"></a><p class="title"><b>Example&nbsp;4.73.&nbsp;Grouping parentheses (standard indented)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-if (
-    !<span class="bold"><b>(</b></span>(bankverbindung instanceof ObjectValue)
-    || (bankverbindung instanceof PrimitiveValue<span class="bold"><b>)</b></span>)
-) {
-    throw new RuntimeException();
-}
-</pre></td></tr></table></div><p></p><div class="example"><a name="ex-wrap-grouping"></a><p class="title"><b>Example&nbsp;4.74.&nbsp;Wrapped grouping parentheses (standard indented)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-if (
-    !<span class="bold"><b>(</b></span>
-        (bankverbindung instanceof ObjectValue)
-        || (bankverbindung instanceof TkPrimitiveValue)
-    <span class="bold"><b>)</b></span>
-) {
-    throw new RuntimeException();
-}
-</pre></td></tr></table></div><p></p></li><li><p><a name="wrap-after-assignment"></a>
-Wrap after assignments
-</p><p>
-Lets you control the way wrapping takes action for assignments. If left disabled,
-line wrapping preferably occurs as part of the expression printing. Otherwise
-wrapping will be performed right after the assignment.
-</p><div class="example"><a name="ex-wrap-assignment-no"></a><p class="title"><b>Example&nbsp;4.75.&nbsp;Don't wrap after assignment</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-this.interessentenNr = new InteressentenNr(
-        Fachschluesselerzeugung.createService()
-        .getNeuerFachschluessel(
-            FachschluesselerzeugungService.FACHSCHLUESSEL_KZ_INTERESSENT
-        )
-    );
-</pre></td></tr></table></div><p></p><div class="example"><a name="ex-wrap-assignment"></a><p class="title"><b>Example&nbsp;4.76.&nbsp;Wrap after assignment</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-this.interessentenNr =
-    new InteressentenNr(
-        Fachschluesselerzeugung.createService()
-        .getNeuerFachschluessel(
-            FachschluesselerzeugungService.FACHSCHLUESSEL_KZ_INTERESSENT
-        )
-    );
-</pre></td></tr></table></div><p></p></li></ul></div><p>
-Line wrapping will often occur with statements that consist of several (possibly long)
-expressions. Here you specify whether line wrapping should occur
-before or after the expression operator.
-</p><div class="itemizedlist"><ul type="disc"><li><p><a name="wrap-before"></a>
-Wrap before operators
-</p><a class="indexterm" name="d0e2926"></a><p>
-If enabled, lines will be wrapped before the operator. The operator will be
-printed with the continuation line.
-</p><div class="example"><a name="ex-wrap-before"></a><p class="title"><b>Example&nbsp;4.77.&nbsp;Wrap before operators</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-if ((condition1 &amp;&amp; condition2)
-    || (condition3 &amp;&amp; condition4)
-    || !(condition5 &amp;&amp; condition6))
-{
-    doSomethingAboutIt();
-}
-</pre></td></tr></table></div><p></p></li><li><p><a name="wrap-after"></a>
-Wrap after operators
-</p><a class="indexterm" name="d0e2942"></a><p>
-If enabled, lines will be wrapped after the operator.
-</p><div class="example"><a name="ex-wrap-after"></a><p class="title"><b>Example&nbsp;4.78.&nbsp;Wrap after operators</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-if ((condition1 &amp;&amp; condition2) ||
-    (condition3 &amp;&amp; condition4) ||
-    !(condition5 &amp;&amp; condition6))
-{
-    doSomethingAboutIt();
-}
-</pre></td></tr></table></div><p>
-If you happen to use Sun Brace styling, you might want to enable
-<a href="indentation.html#indentation-misc-continuation-if">continuation indentation</a>
-to let the statement body stand out.
-</p><p></p></li></ul></div></div></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="wrap-always"></a>4.3.4.2.&nbsp;Always</h4></div></div><div></div></div><p>
-Lets you choose the statements/expressions that are to be wrapped always.
-</p><div class="sect4" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="wrap-always-pane"></a>4.3.4.2.1.&nbsp;Wrap always</h5></div></div><div></div></div><p>
-For certain cases, the need may arise to force line wrapping to achieve a
-consistent, uniform look. If you enable any of the following switches, line wrapping
-will occur for the specified cases no matter whether you have enabled general
-line wrapping or not.
-</p><div class="itemizedlist"><ul type="disc"><li><p><a name="wrap-before-extends"></a>
-Before extends keyword
-</p><p>
-Forces a line break before the extends keyword of a class/interface declaration.
-</p><div class="example"><a name="ex-wrap-before-extends"></a><p class="title"><b>Example&nbsp;4.79.&nbsp;Class/Interface extends keyword</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-public interface Channel extends Puttable, Takable
-{
-    ...
-}
-</pre></td></tr></table></div><p></p><div class="example"><a name="ex-wrap-before-extends-wrapped"></a><p class="title"><b>Example&nbsp;4.80.&nbsp;Class/Interface extends keyword (wrapped)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-public interface Channel
-    extends Puttable, Takable
-{
-    ...
-}
-</pre></td></tr></table></div><p>
-You can control the space printed before the keyword with the
-<a href="indentation.html#indentation-sizes-extends">Extends Indent</a> setting.
-If you leave the switch disabled, the clause will be printed with
-<a href="indentation.html#indentation-sizes-general">standard indentation</a>.
-</p></li><li><p>
-After extends types
-</p><p>
-Forces a line wrap after each type name of the extended classes.
-</p><div class="example"><a name="ex-wrap-after-extends"></a><p class="title"><b>Example&nbsp;4.81.&nbsp;Class/Interface extends types</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-public interface Channel extends Puttable, Takable
-{
-    ...
-}
-</pre></td></tr></table></div><p></p><div class="example"><a name="ex-wrap-after-extends-wrapped"></a><p class="title"><b>Example&nbsp;4.82.&nbsp;Class/Interface extends types (wrapped)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-public interface Channel extends Puttable,
-                                 Takable
-{
-    ...
-}
-</pre></td></tr></table></div><p></p></li><li><p><a name="wrap-before-implements"></a>
-Before implements keyword
-</p><p>
-Forces a line break before the implements keyword of a class declaration.
-</p><div class="example"><a name="ex-wrap-before-implements"></a><p class="title"><b>Example&nbsp;4.83.&nbsp;implements keyword</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-public class SynchronizedBoolean implements Comparable, Cloneable
-{
-    ...
-}
-</pre></td></tr></table></div><p></p><div class="example"><a name="ex-wrap-before-implements-wrapped"></a><p class="title"><b>Example&nbsp;4.84.&nbsp;implements keyword (wrapped)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-public class SynchronizedBoolean
-    implements Comparable, Cloneable
-{
-    ...
-}
-</pre></td></tr></table></div><p>
-You can control the space printed before the keyword with the
-<a href="indentation.html#indentation-sizes-implements">Implements Indent</a> setting.
-If you leave the switch disabled, the clause will be printed with
-<a href="indentation.html#indentation-sizes-general">standard indentation</a>.
-</p></li><li><p><a name="wrap-after-implements"></a>
-After implements types
-</p><p>
-Forces a line wrap after each type name of the implemented classes.
-</p><div class="example"><a name="ex-wrap-implements-types"></a><p class="title"><b>Example&nbsp;4.85.&nbsp;Class implements types</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-public class SynchronizedBoolean implements Comparable, Cloneable
-{
-    ...
-}
-</pre></td></tr></table></div><p></p><div class="example"><a name="ex-wrap-implements-types-wrapped"></a><p class="title"><b>Example&nbsp;4.86.&nbsp;Class implements types (wrapped)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-public class SynchronizedBoolean implements Comparable,
-                                            Cloneable
-{
-    ...
-}
-</pre></td></tr></table></div><p></p></li><li><p><a name="wrap-before-throws"></a>
-Before throws keyword
-</p><p>
-Forces a line break before the throws keyword of a method/constructor declaration.
-</p><div class="example"><a name="ex-wrap-before-throws"></a><p class="title"><b>Example&nbsp;4.87.&nbsp;throws keyword</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-private File getDestinationFile(File dest, String packageName,
-                                String filename) throws IOException
-{
-    ...
-}
-</pre></td></tr></table></div><p></p><div class="example"><a name="ex-wrap-before-throws-wrapped"></a><p class="title"><b>Example&nbsp;4.88.&nbsp;throws keyword (wrapped)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-private File getDestinationFile(File dest, String packageName,
-                                String filename)
-                         throws IOException
-{
-    ...
-}
-</pre></td></tr></table></div><p>
-You can control the space printed before the keyword with the
-<a href="indentation.html#indentation-sizes-throws">Throws Indent</a> setting. If you
-leave the switch disabled, Jalopy tries to align the throws clause with the
-method/constructor parameters as with the above example. If no alignment is
-possible, the clause will be printed with
-<a href="indentation.html#indentation-sizes-general">standard indentation</a>.
-</p></li><li><p><a name="wrap-after-throws"></a>
-After throws types
-</p><p>
-Forces a line wrap after each type name of the throws clause of a method/constructor declaration.
-</p><div class="example"><a name="ex-wrap-after-throws-types"></a><p class="title"><b>Example&nbsp;4.89.&nbsp;throws types</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-private File getDestinationFile(File dest, String packageName,
-                                String filename)
-                         throws IOException, FooException
-{
-    ...
-}
-</pre></td></tr></table></div><p></p><div class="example"><a name="ex-wrap-after-throws-types-wrapped"></a><p class="title"><b>Example&nbsp;4.90.&nbsp;throws types (wrapped)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-private File getDestinationFile(File dest, String packageName,
-                                String filename)
-                         throws IOException,
-                                FooException
-{
-    ...
-}
-</pre></td></tr></table></div><p></p><div class="example"><a name="ex-wrap-after-throws-types-wrapped-standard"></a><p class="title"><b>Example&nbsp;4.91.&nbsp;throws types (standard indented)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-private static final File getDestinationFile(File dest, String packageName,
-                                             String filename)
-    throws IOException,
-          FooException
-{
-    ...
-}
-</pre></td></tr></table></div><p></p></li><li><p><a name="wrap-method-params"></a>
-Method Def parameters
-</p><a class="indexterm" name="d0e3103"></a><a class="indexterm" name="d0e3106"></a><p>
-Forces a line wrap after each parameter of a method or constructor declaration.
-</p><div class="example"><a name="ex-wrap-method-params"></a><p class="title"><b>Example&nbsp;4.92.&nbsp;Method declaration parameters</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-public static File create(File file, File directory, int backupLevel)
-                   throws IOException
-{
-    ...
-}
-</pre></td></tr></table></div><p></p><div class="example"><a name="ex-wrap-method-params-wrapped"></a><p class="title"><b>Example&nbsp;4.93.&nbsp;Method declaration parameters (wrapped)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-public static File create(File file,
-                          File directory,
-                          int backupLevel)
-                   throws IOException
-{
-    ...
-}
-</pre></td></tr></table></div></li><li><p><a name="wrap-call-chained"></a>
-Method Call chains
-</p><p>
-Forces a line wrap after each chained method call.
-</p><div class="example"><a name="ex-wrap-call-chained"></a><p class="title"><b>Example&nbsp;4.94.&nbsp;Chained Method Call</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-message.format(ERROR_SOURCE_ADDRESS).param (m_session.getAimName()).send();
-</pre></td></tr></table></div><p></p><div class="example"><a name="ex-wrap-call-chained-wrapped"></a><p class="title"><b>Example&nbsp;4.95.&nbsp;Chained Method Call (wrapped)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-message.format(ERROR_SOURCE_ADDRESS)
-       .param (m_session.getAimName())
-       .send();
-</pre></td></tr></table></div><p></p></li><li><p><a name="wrap-method-call-params"></a>
-Method Call parameters
-</p><p>
-Forces a line wrap after each parameter of a method call.
-</p><div class="example"><a name="ex-wrap-method-call"></a><p class="title"><b>Example&nbsp;4.96.&nbsp;Method call</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-doSomething();
-_userDatabase.addUser("Name", encryptPassword("password", _secretKey),
-                      "123 fake address");
-doSomethingElse();
-</pre></td></tr></table></div><p></p><div class="example"><a name="ex-wrap-method-call-wrapped"></a><p class="title"><b>Example&nbsp;4.97.&nbsp;Method call (wrapped)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-doSomething();
-_userDatabase.addUser("Name",
-                      encryptPassword("password",
-                                      _secretKey),
-                      "123 fake address");
-doSomethingElse();
-</pre></td></tr></table></div><p></p></li><li><p>
-Method Call parameters if nested
-</p><p>
-Forces a line wrap after each parameter of a method call if at least one
-parameter is a method call itself. This option can prove especially useful if
-one prefers to nest method calls as parameters rather than adding local
-variables just to hold those parameters.
-</p><div class="example"><a name="ex-wrap-method-call-nested-wrapped"></a><p class="title"><b>Example&nbsp;4.98.&nbsp;Method call if nested (wrapped)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-doSomething();
-_userDatabase.addUser("Name",
-                      encryptPassword("password", _secretKey),
-                      "123 fake address");
-doSomethingElse();
-</pre></td></tr></table></div><p></p></li><li><p>
-Ternary expression question mark (<tt class="literal">?</tt>)
-</p><p>
-Forces a line wrap after the first operand.
-</p><div class="example"><a name="ex-wrap-ternary-expr"></a><p class="title"><b>Example&nbsp;4.99.&nbsp;Ternary expression question mark (deep indented)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-String comma = spaceAfterComma
-               ? COMMA_SPACE : COMMA;
-</pre></td></tr></table></div><p>
-Indentation for consecutive lines depends on the used <a href="indentation.html#indentation-policy" title="4.3.3.1.1.&nbsp;Policy">indenatation policy</a>.
-You may further want to use <a href="indentation.html#indentation-misc-ternary-if-else">continuation indentation</a>.
-</p></li><li><p><a name="wrap-ternary-colon"></a>
-Ternary expression colon (<tt class="literal">:</tt>)
-</p><p>
-Forces a line wrap after the second operand.
-</p><div class="example"><a name="ex-wrap-ternary-values"></a><p class="title"><b>Example&nbsp;4.100.&nbsp;Ternary expression colon</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-String comma = spaceAfterComma ? COMMA_SPACE
-                               : COMMA;
-</pre></td></tr></table></div><p>
-If both switches are disabled, ternary expressions are printed in one line (if everything fits in one line, that is).
-</p><div class="example"><a name="ex-wrap-ternary"></a><p class="title"><b>Example&nbsp;4.101.&nbsp;Ternary expressions</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-String comma = spaceAfterComma ? COMMA_SPACE : COMMA;
-</pre></td></tr></table></div><p>
-If both switches are enabled, you can force a style like the following:
-</p><div class="example"><a name="ex-wrap-ternary-continued"></a><p class="title"><b>Example&nbsp;4.102.&nbsp;Ternary expressions (continued)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-String comma = spaceAfterComma
-    ? COMMA_SPACE
-    : COMMA;
-</pre></td></tr></table></div><p></p></li><li><p><a name="wrap-always-label"></a>
-Labels
-</p><a class="indexterm" name="d0e3222"></a><a class="indexterm" name="d0e3225"></a><p>
-Forces a line wrap after labels.
-</p><div class="example"><a name="ex-wrap-always-label"></a><p class="title"><b>Example&nbsp;4.103.&nbsp;Label</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-// advance to the first CLASS_DEF or INTERFACE_DEF
-LOOP:   for (AST child = tree.getFirstChild();
-             child != null;
-             child = child.getNextSibling())
-        {
-            switch (child.getType())
-            {
-                case JavaTokenTypes.CLASS_DEF :
-                case JavaTokenTypes.INTERFACE_DEF :
-                    next = child;
-                    break LOOP;
-
-                default :
-                    break;
-            }
-        }
-</pre></td></tr></table></div><p></p><div class="example"><a name="ex-wraping-always-label-wrapped"></a><p class="title"><b>Example&nbsp;4.104.&nbsp;Label (wrapped)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-// advance to the first CLASS_DEF or INTERFACE_DEF
-LOOP:
-        for (AST child = tree.getFirstChild();
-             child != null;
-             child = child.getNextSibling())
-        {
-            switch (child.getType())
-            {
-                case JavaTokenTypes.CLASS_DEF :
-                case JavaTokenTypes.INTERFACE_DEF :
-                    next = child;
-                    break LOOP;
-
-                default :
-                    break;
-            }
-        }
-</pre></td></tr></table></div><p></p></li></ul></div></div><div class="sect4" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="wrap-always-exceed"></a>4.3.4.2.2.&nbsp;Wrap always when exceed</h5></div></div><div></div></div><p>
-Lets you force wrapping for <span class="emphasis"><em>all</em></span> parameter or expressions if
-the parameter or expression list would otherwise exceed the maximal line length.
-If you enable any of the following switches, line wrapping
-may occur for the specified cases no matter whether you have enabled general
-line wrapping or not.
-</p><div class="itemizedlist"><ul type="disc"><li><p><a name="wrap-always-extends"></a>
-After extends types
-</p><p>
-Forces a line wrap after each type name of the <tt class="literal">extends</tt> clause of a
-class/interface declaration if the whole clause does not fit in one line.
-</p><div class="example"><a name="ex-wrap-always-extends"></a><p class="title"><b>Example&nbsp;4.105.&nbsp;Extends types wrapped as needed (standard indented)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-public interface VeryImportantInterface                        |
-    extends LeastImportantInterface, LessImportantInterface,   |
-        ImportantInterface                                     |
-}                                                              |
-    ...                                                        |
-}                                                              |
-</pre></td></tr></table></div><p></p><div class="example"><a name="wrap-always-extends-enabled"></a><p class="title"><b>Example&nbsp;4.106.&nbsp;Extends types wrapping forced (standard indented)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-public interface VeryImportantInterface                        |
-    extends LeastImportantInterface,                           |
-        LessImportantInterface,                                |
-        ImportantInterface                                     |
-}                                                              |
-    ...                                                        |
-}                                                              |
-</pre></td></tr></table></div></li><li><p><a name="wrap-always-implements"></a>
-After implements types
-</p><p>
-Forces a line wrap after each type name of the <tt class="literal">implements</tt> clause of a
-class/interface declaration if the whole clause does not fit in one line.
-</p><div class="example"><a name="ex-wrap-always-implements"></a><p class="title"><b>Example&nbsp;4.107.&nbsp;Implements types wrapped as needed (standard indented)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-public class ImportantClass                                    |
-    implements ImportantInterface, Serializable, Comparable,   |
-        Cloneable                                              |
-}                                                              |
-    ...                                                        |
-}                                                              |
-</pre></td></tr></table></div><p></p><div class="example"><a name="wrap-always-implements-enabled"></a><p class="title"><b>Example&nbsp;4.108.&nbsp;Implements types wrapping forced (standard indented)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-public class ImportantClass                                    |
-    implements ImportantInterface,                             |
-        Serializable,                                          |
-        Comparable,                                            |
-        Cloneable                                              |
-}                                                              |
-    ...                                                        |
-}                                                              |
-</pre></td></tr></table></div></li><li><p><a name="wrap-always-throws"></a>
-After throws types
-</p><p>
-Forces a line wrap after each type name of the <tt class="literal">throws</tt> clause of a
-method/constructor declaration if the whole clause does not fit in one line.
-</p><div class="example"><a name="ex-wrap-always-throws"></a><p class="title"><b>Example&nbsp;4.109.&nbsp;Throws types wrapped as needed (deep indented)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-private File getDestinationFile(File dest, String packageName, |
-                                String filename)               |
-                         throws IOException, FooException,     |
-                                FooBarException                |
-{                                                              |
-    ...                                                        |
-}                                                              |
-</pre></td></tr></table></div><p></p><div class="example"><a name="wrap-always-throws-enabled"></a><p class="title"><b>Example&nbsp;4.110.&nbsp;Throws types wrapping forced (deep indented)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-private File getDestinationFile(File dest, String packageName, |
-                                String filename)               |
-                         throws IOException,                   |
-                                FooException,                  |
-                                FooBarException                |
-{                                                              |
-    ...                                                        |
-}                                                              |
-</pre></td></tr></table></div></li><li><p><a name="wrap-always-param"></a>
-After parameters/expressions
-</p><p>
-If enabled, this switch will cause all parameters/expressions to be
-wrapped, if and only if the first parameter/expression of the list has been
-wrapped.
-</p><div class="example"><a name="ex-wrap-all"></a><p class="title"><b>Example&nbsp;4.111.&nbsp;Expression list (all wrapped)</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-if (
-    "pick".equals(m.getName()) &amp;&amp;
-    m.isStatic() &amp;&amp;
-    m.isPublic()
-) {
-    pickFound = true;
-}
-else if (
-    "pick".equals(m.getName()) &amp;&amp;
-    m.isStatic() &amp;&amp;
-    m.isPublic()
-) {
-    pickFound = true;
-}
-</pre></td></tr></table></div><p></p></li></ul></div></div></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="wrap-misc"></a>4.3.4.3.&nbsp;Misc</h4></div></div><div></div></div><p>Lets you control miscellaneous wrapping settings.</p><div class="sect4" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="wrap-misc-arrays"></a>4.3.4.3.1.&nbsp;Arrays</h5></div></div><div></div></div><p>Contains options to control the wrapping for arrays.</p><div class="itemizedlist"><ul type="disc"><li><p>Wrap as needed</p><p>Enabling this options means array elements will be wrapped so that they
-will be limited within the current <a href="wrapping.html#wrap-sizes-line">line length</a> setting.</p><div class="example"><a name="ex-wrap-arrays-as-needed"></a><p class="title"><b>Example&nbsp;4.112.&nbsp;Wrap as needed</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-String[] constraints = {                                               |
-    "patternPanel.top=form.top", "patternPanel.hcenter=form.hcenter",  |
-    "okButton.top=patternPanel.bottom+20",                             |
-    "okButton.right=form.hcenter-10", "cancelButton.vcenter=10",       |
-    "cancelButton.left=10"                                             |
-};                                                                     |
-</pre></td></tr></table></div><p></p></li><li><p>Wrap after element</p><p>Forces a newline after every  n-th element.</p><div class="example"><a name="ex-wrap-arrays-after-one"></a><p class="title"><b>Example&nbsp;4.113.&nbsp;Wrap after element 1</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-String[] constraints = {                                               |
-    "patternPanel.top=form.top",                                       |
-    "patternPanel.hcenter=form.hcenter",                               |
-    "okButton.top=patternPanel.bottom+20",                             |
-    "okButton.right=form.hcenter-10",                                  |
-    "cancelButton.vcenter=10",                                         |
-    "cancelButton.left=10"                                             |
-};                                                                     |
-</pre></td></tr></table></div><p></p><div class="example"><a name="ex-wrap-arrays-after-two"></a><p class="title"><b>Example&nbsp;4.114.&nbsp;Wrap after element 2</b></p><table border="0" bgcolor="#E0E0E0" class="shade"><tr><td><pre class="programlisting">
-String[] constraints = {                                               |
-    "patternPanel.top=form.top", "patternPanel.hcenter=form.hcenter",
-    "okButton.top=patternPanel.bottom+20", "okButton.right=form.hcenter-10",
-    "cancelButton.vcenter=10", "cancelButton.left=10"                  |
-};                                                                     |
-</pre></td></tr></table></div><p>
-If both options are left disabled, the array elements will be printed in one
-line, right after the left curly brace.
-</p></li></ul></div></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="indentation.html">Prev</a>&nbsp;</td><td width="20%" align="center"><a accesskey="u" href="printer.html">Up</a></td><td width="40%" align="right">&nbsp;<a accesskey="n" href="separation.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4.3.3.&nbsp;Indentation&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="manual.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;4.3.5.&nbsp;Blank Lines</td></tr></table></div></td></tr></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2004, <a class="footer" href="./contact.html">Marco Hunsicker</a>. All rights reserved. Hosted by <a href="http://sourceforge.net">SourceForge.net</a></td></tr></tbody></table><img src="http://sourceforge.net/sflogo.php?group_id=45216&amp;type=1" width="1" height="1" border="0" hspace="0" vspace="0" alt=""></body></html>
diff --git a/utils/jalopy/lib/aelfred-1.2.jar b/utils/jalopy/lib/aelfred-1.2.jar
deleted file mode 100755 (executable)
index 9bfe9ea..0000000
Binary files a/utils/jalopy/lib/aelfred-1.2.jar and /dev/null differ
diff --git a/utils/jalopy/lib/jalopy-1.0b11.jar b/utils/jalopy/lib/jalopy-1.0b11.jar
deleted file mode 100755 (executable)
index 8cc2517..0000000
Binary files a/utils/jalopy/lib/jalopy-1.0b11.jar and /dev/null differ
diff --git a/utils/jalopy/lib/jalopy-ant-0.6.2.jar b/utils/jalopy/lib/jalopy-ant-0.6.2.jar
deleted file mode 100755 (executable)
index f5e72cd..0000000
Binary files a/utils/jalopy/lib/jalopy-ant-0.6.2.jar and /dev/null differ
diff --git a/utils/jalopy/lib/jaxp-1.2.jar b/utils/jalopy/lib/jaxp-1.2.jar
deleted file mode 100755 (executable)
index 22f2905..0000000
Binary files a/utils/jalopy/lib/jaxp-1.2.jar and /dev/null differ
diff --git a/utils/jalopy/lib/jdom-1.0b8.jar b/utils/jalopy/lib/jdom-1.0b8.jar
deleted file mode 100755 (executable)
index 2734fd2..0000000
Binary files a/utils/jalopy/lib/jdom-1.0b8.jar and /dev/null differ
diff --git a/utils/jalopy/lib/log4j-1.2.6.jar b/utils/jalopy/lib/log4j-1.2.6.jar
deleted file mode 100755 (executable)
index be4a917..0000000
Binary files a/utils/jalopy/lib/log4j-1.2.6.jar and /dev/null differ
diff --git a/utils/jalopy/lib/oro-2.0.6.jar b/utils/jalopy/lib/oro-2.0.6.jar
deleted file mode 100755 (executable)
index 62df73e..0000000
Binary files a/utils/jalopy/lib/oro-2.0.6.jar and /dev/null differ
diff --git a/utils/jalopy/lib/sax-2.0.1.jar b/utils/jalopy/lib/sax-2.0.1.jar
deleted file mode 100755 (executable)
index 7ed3b35..0000000
Binary files a/utils/jalopy/lib/sax-2.0.1.jar and /dev/null differ
diff --git a/utils/jalopy/readme.html b/utils/jalopy/readme.html
deleted file mode 100755 (executable)
index 3182984..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-<html>
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
- * Copyright (C) 2014 The Jalview Authors
- * 
- * This file is part of Jalview.
- * 
- * Jalview is free software: you can redistribute it and/or
- * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- *  
- * Jalview is distributed in the hope that it will be useful, but 
- * WITHOUT ANY WARRANTY; without even the implied warranty 
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
- * PURPOSE.  See the GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-<head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title></title><link rel="stylesheet" href="./docs/site.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"></head><body id="toppage" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table width="700" border="0" cellpadding="0" cellspacing="0" align="center"><tr><td><table cellpadding="0" cellspacing="0" width="100%" style="border:1px solid #336699"><tbody><tr><td height="16"></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr style="border:none"><td style="border:none"><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td class="logo">JALOPY</td><td class="sublogo" valign="bottom">Java Source Code Formatter Beautifier Pretty Printer</td></tr></tbody></table></td></tr><tr><td bgcolor="#3399cc" height="1"></td></tr><tr><td height="10"></td></tr><tr><td bgcolor="#ff8000" height="4"></td></tr><tr><td height="20" bgcolor="#336699" style="color:#ffffff;padding-left:10px"><a href="./docs/index.html" class="navlink">Overview</a> &#149;
-                    <a href="./docs/download.html" class="navlink">Download</a> &#149;
-                    <a href="./docs/docs.html" class="navlink">Documentation</a> &#149;
-                    <a href="./docs/plugins.html" class="navlink">Plug-ins</a> &#149;
-                    <a href="./docs/links.html" class="navlink">Links</a> &#149;
-                    <a href="./docs/contact.html" class="navlink">Contact</a></td></tr><tr><td height="1" bgcolor="#ffffff"></td></tr></tbody></table></td></tr><tr><td height="20" bgcolor="#ffffff"></td></tr><tr><td bgcolor="#eeeecc" height="17" style="padding-right:3px"></td></tr><tr valign="top"><td valign="top" bgcolor="#ffffff"><table border="0" width="100%" cellspacing="0" cellpadding="5"><tbody><tr><td><div class="article" lang="en"><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d4e2"></a>README Ant Task</h2></div></div><div></div></div></div><p>
-This is the README for the Ant Task distribution of the Jalopy Java
-Source Code Formatter. This Plug-in provides the integration with the
-wonderful Jakarta build tool.
-</p><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d4e5"></a>1.&nbsp;Distribution libraries</h2></div></div><div></div></div><p>
-This distribution contains the following libraries:
-</p><div class="itemizedlist"><ul type="square"><li style="list-style-type: square">
-  AElfred XML Parser (<tt class="filename">aelfred-1.2.jar</tt>)
-</li><li style="list-style-type: square">
-  A modified and re-packaged <a href="http://www.antlr.org" target="_top">ANTLR</a> Parser Generator runtime 2.7.2a2 (bundled with the Jalopy runtime)
-</li><li style="list-style-type: square">
-  Jalopy Java Source Code Formatter runtime (<tt class="filename">jalopy-1.0b11.jar</tt>)
-</li><li style="list-style-type: square">
-  Jalopy Ant Task (<tt class="filename">jalopy-ant-0.6.2.jar</tt>)
-</li><li style="list-style-type: square"><a href="http://java.sun.com/xml/" target="_top">JAXP</a> Java API for XML Processing (<tt class="filename">jaxp-1.2.jar</tt>)
-</li><li style="list-style-type: square"><a href="http://www.jdom.org/" target="_top">JDOM</a> XML API (<tt class="filename">jdom-1.0b8.jar</tt>)
-</li><li style="list-style-type: square"><a href="http://jakarta.apache.org/log4j/" target="_top">log4j</a> logging toolkit (<tt class="filename">log4j-1.2.6.jar</tt>)
-</li><li style="list-style-type: square"><a href="http://jakarta.apache.org/oro/" target="_top">Oro</a> Regular expressions (<tt class="filename">oro-2.0.6.jar</tt>)
-</li><li style="list-style-type: square"><a href="http://www.saxproject.org/" target="_top">SAX</a> Simple API for XML (<tt class="filename">sax-2.0.1.jar</tt>)
-</li></ul></div><p></p></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d4e33"></a>2.&nbsp;Latest version</h2></div></div><div></div></div><p>
-Details of the latest version can be found on the Jalopy project
-web site at SourceForge, see
-<a href="http://jalopy.sf.net/" target="_top">http://jalopy.sf.net</a>.
-</p></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d4e37"></a>3.&nbsp;Installation</h2></div></div><div></div></div><p>
-For installation instructions, see
-<a href="./docs/plugin-ant.html#plugin-ant-installation" target="_top">/docs/plugin-ant.html</a>.
-</p></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d4e41"></a>4.&nbsp;Custom build</h2></div></div><div></div></div><p>
-For build instructions, see
-<a href="./docs/build.html" target="_top">/docs/build.html</a>.
-</p></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d4e45"></a>5.&nbsp;Change history</h2></div></div><div></div></div><p>
-To learn about implementation changes, fixed bugs and new features of this
-version, see <a href="./docs/history.html" target="_top">/docs/history.html</a>.
-</p></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d4e49"></a>6.&nbsp;Licensing</h2></div></div><div></div></div><p>
-This Plug-in is licensed under a
-<a href="./docs/license-bsd.html" target="_top">BSD License</a>. For
-additional license terms of the used 3rd-party libraries, please refer to
-<a href="./docs/dependencies.html" target="_top">Appendix A</a>.
-</p></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d4e54"></a>7.&nbsp;Contact</h2></div></div><div></div></div><p>
-For ways to contact the author or submit bug, feature or support requests, see
-<a href="./docs/contact.html" target="_top">/docs/contact.html</a>.
-</p></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d4e58"></a>8.&nbsp;Contributors</h2></div></div><div></div></div><p>
-For a list of project contributors, see
-<a href="./docs/contributors.html" target="_top">/docs/contributors.html</a>.
-</p></div></div></td></tr><tr><td height="20"></td></tr></tbody></table></td></tr><tr><td bgcolor="#eeeecc" height="17" style="font-size:9px;padding-left:5px"><a href="#toppage">to top</a></td></tr><tr><td height="30"><br></td></tr><tr><td height="3"></td></tr><tr><td bgcolor="#336699" height="1"></td></tr><tr><td height="1"></td></tr><tr><td bgcolor="#336699" height="16"></td></tr><tr><td bgcolor="#ff9966" height="4"></td></tr><tr><td class="footer" align="center" height="15" valign="middle">
-            Copyright &copy; 2001-2002, <a class="footer" href="./docs/contact.html">Marco Hunsicker</a>. All rights reserved.
-          </td></tr></table></body></html>
index f8a810b..53e0413 100755 (executable)
@@ -1,6 +1,6 @@
 #!/usr/bin/perl
 ##
-# Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+# Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
 # Copyright (C) 2014 The Jalview Authors
 # 
 # This file is part of Jalview.
index bc9d2da..ef7b4db 100644 (file)
@@ -1,6 +1,6 @@
 #!/bin/perl
 ##
-# Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+# Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
 # Copyright (C) 2014 The Jalview Authors
 # 
 # This file is part of Jalview.
index 9654057..65e6644 100644 (file)
@@ -1,6 +1,6 @@
 #!/usr/bin/perl
 ##
-# Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+# Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
 # Copyright (C) 2014 The Jalview Authors
 # 
 # This file is part of Jalview.