X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fio%2FHtmlSvgOutput.java;h=6c2facac80cae9c61a97c8f0ce7095a104dd0f6c;hb=8073a17f5bbbec8cf01b8711cb5db256effcb05c;hp=c8d6975f3bbf4520a49efd0b1188a22e79dacdfc;hpb=73d2eb017ebcaff4453d676c0d728f61015d102c;p=jalview.git diff --git a/src/jalview/io/HtmlSvgOutput.java b/src/jalview/io/HtmlSvgOutput.java index c8d6975..6c2faca 100644 --- a/src/jalview/io/HtmlSvgOutput.java +++ b/src/jalview/io/HtmlSvgOutput.java @@ -1,3 +1,23 @@ +/* + * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$) + * Copyright (C) $$Year-Rel$$ The Jalview Authors + * + * This file is part of Jalview. + * + * Jalview is free software: you can redistribute it and/or + * modify it under the terms of the 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 . + * The Jalview Authors are detailed in the 'AUTHORS' file. + */ package jalview.io; import jalview.api.AlignExportSettingI; @@ -26,8 +46,8 @@ public class HtmlSvgOutput AlignViewport av; FeatureRenderer fr; - AlignmentPanel ap; + AlignmentPanel ap; public HtmlSvgOutput(File file, AlignmentPanel ap) { @@ -44,18 +64,22 @@ public class HtmlSvgOutput if (file == null) { - JalviewFileChooser chooser = getHTMLChooser(); - chooser.setFileView(new jalview.io.JalviewFileView()); - chooser.setDialogTitle(ap.alignFrame.getTitle()); - chooser.setToolTipText(MessageManager.getString("action.save")); - int value = chooser.showSaveDialog(ap.alignFrame); + JalviewFileChooser chooser = getHTMLChooser(); + chooser.setFileView(new jalview.io.JalviewFileView()); + chooser.setDialogTitle(ap.alignFrame.getTitle()); + chooser.setToolTipText(MessageManager.getString("action.save")); + int value = chooser.showSaveDialog(ap.alignFrame); - if (value == jalview.io.JalviewFileChooser.APPROVE_OPTION) - { - jalview.bin.Cache.setProperty("LAST_DIRECTORY", chooser - .getSelectedFile().getParent()); - file = chooser.getSelectedFile(); - } + if (value == jalview.io.JalviewFileChooser.APPROVE_OPTION) + { + jalview.bin.Cache.setProperty("LAST_DIRECTORY", chooser + .getSelectedFile().getParent()); + file = chooser.getSelectedFile(); + } + else + { + return; + } } AlignmentDimension aDimension = ap.getAlignmentDimension(); @@ -99,7 +123,8 @@ public class HtmlSvgOutput .getDefault("EXPORT_EMBBED_BIOJSON", "true")); if (isEmbbedBioJSON) { - AlignExportSettingI exportSettings = new AlignExportSettingI(){ + AlignExportSettingI exportSettings = new AlignExportSettingI() + { @Override public boolean isExportHiddenSequences() { @@ -135,14 +160,15 @@ public class HtmlSvgOutput { return false; } - + }; AlignmentExportData exportData = jalview.gui.AlignFrame .getAlignmentForExport(JSONFile.FILE_DESC, av, exportSettings); jsonData = new FormatAdapter(ap, exportData.getSettings()) - .formatSequences(JSONFile.FILE_DESC, exportData - .getAlignment(), exportData.getOmitHidden(), + .formatSequences(JSONFile.FILE_DESC, + exportData.getAlignment(), + exportData.getOmitHidden(), exportData.getStartEndPostions(), av.getColumnSelection()); } @@ -154,20 +180,21 @@ public class HtmlSvgOutput if (!(System.getProperty("java.awt.headless") != null && System .getProperty("java.awt.headless").equals("true"))) { - jalview.util.BrowserLauncher.openURL("file:///" + file); + jalview.util.BrowserLauncher.openURL("file:///" + file); } } catch (Exception e) { e.printStackTrace(); } } - + static JalviewFileChooser getHTMLChooser() { return new jalview.io.JalviewFileChooser( - jalview.bin.Cache.getProperty("LAST_DIRECTORY"), new String[] - { "html" }, new String[] - { "Hypertext Markup Language" }, "Hypertext Markup Language"); + jalview.bin.Cache.getProperty("LAST_DIRECTORY"), + new String[] { "html" }, + new String[] { "Hypertext Markup Language" }, + "Hypertext Markup Language"); } public int printUnwrapped(int pwidth, int pheight, int pi, Graphics... pg) @@ -266,9 +293,7 @@ public class HtmlSvgOutput - fm.stringWidth(seq.getDisplayId(av.getShowJVSuffix())) - 4; } - pg[0].drawString( - seq.getDisplayId(av.getShowJVSuffix()), - xPos, + pg[0].drawString(seq.getDisplayId(av.getShowJVSuffix()), xPos, (((i - startSeq) * av.getCharHeight()) + av.getCharHeight()) - (av.getCharHeight() / 5)); } @@ -302,7 +327,7 @@ public class HtmlSvgOutput return Printable.PAGE_EXISTS; } - + private String getHtml(String titleSvg, String alignmentSvg, String jsonData) { @@ -355,9 +380,7 @@ public class HtmlSvgOutput htmlSvg.append("
"); htmlSvg.append( "
") - .append(alignmentSvg) -.append("
") - .append("
"); + .append(alignmentSvg).append("").append(""); htmlSvg.append(""); htmlSvg.append("\n" @@ -657,7 +680,7 @@ public class HtmlSvgOutput } htmlSvg.append("\n"); - htmlSvg.append(""); + htmlSvg.append(""); return htmlSvg.toString(); } }