/**
** EnrichmentMap Cytoscape Plugin
**
** Copyright (c) 2008-2009 Bader Lab, Donnelly Centre for Cellular and Biomolecular
** Research, University of Toronto
**
** Contact: http://www.baderlab.org
**
** Code written by: Ruth Isserlin
** Authors: Daniele Merico, Ruth Isserlin, Oliver Stueker, Gary D. Bader
**
** This library is free software; you can redistribute it and/or modify it
** under the terms of the GNU Lesser General Public License as published
** by the Free Software Foundation; either version 2.1 of the License, or
** (at your option) any later version.
**
** This library is distributed in the hope that it will be useful, but
** WITHOUT ANY WARRANTY, WITHOUT EVEN THE IMPLIED WARRANTY OF
** MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. The software and
** documentation provided hereunder is on an "as is" basis, and
** University of Toronto
** has no obligations to provide maintenance, support, updates,
** enhancements or modifications. In no event shall the
** University of Toronto
** be liable to any party for direct, indirect, special,
** incidental or consequential damages, including lost profits, arising
** out of the use of this software and its documentation, even if
** University of Toronto
** has been advised of the possibility of such damage.
** See the GNU Lesser General Public License for more details.
**
** You should have received a copy of the GNU Lesser General Public License
** along with this library; if not, write to the Free Software Foundation,
** Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
**
**/
// $Id$
// $LastChangedDate$
// $LastChangedRevision$
// $LastChangedBy$
// $HeadURL$
package org.baderlab.csplugins.enrichmentmap.view;
import static org.baderlab.csplugins.enrichmentmap.EnrichmentMapBuildProperties.APP_URL;
import static org.baderlab.csplugins.enrichmentmap.EnrichmentMapBuildProperties.APP_VERSION;
import java.awt.Insets;
import java.net.URL;
import javax.swing.JDialog;
import javax.swing.JEditorPane;
import javax.swing.event.HyperlinkEvent;
import javax.swing.event.HyperlinkListener;
import javax.swing.text.html.HTMLEditorKit;
import org.cytoscape.application.swing.CySwingApplication;
import org.cytoscape.util.swing.OpenBrowser;
import com.google.inject.Inject;
@SuppressWarnings("serial")
public class AboutDialog extends JDialog {
private OpenBrowser browser;
@Inject
public AboutDialog(CySwingApplication application, OpenBrowser browser) {
super(application.getJFrame(), "About EnrichmentMap", false);
this.browser = browser;
setResizable(false);
JEditorPane editorPane = new JEditorPane();
editorPane.setMargin(new Insets(10, 10, 10, 10));
editorPane.setEditable(false);
editorPane.setEditorKit(new HTMLEditorKit());
editorPane.addHyperlinkListener(new HyperlinkAction(editorPane));
URL logoURL = getClass().getClassLoader().getResource("images/enrichmentmap_logo.png");
editorPane.setText("<html><body style='font-family:Arial,Helvetica,sans-serif;'>" +
"<table border='0'><tr>"
+ "<td width='92' valign='top'><img height='46' width='92' src='" + logoURL.toString() + "'></td>"
+ "<td width='209'>"
+ "<p align=center>"
+ "<b style='font-size:1.5em;'><span style='color:#1f78b4;'>Enrichment</span><span style='color:#33a02c;'>Map</span></b>"
+ "<BR><span style='font-size:small;'><b>version " + APP_VERSION + "</b>"
+ "<BR><BR>A Cytoscape App</span>"
+ "</p>"
+ "</td>"
+ "<td width='92'> </td>"
+ "</tr></table>"
+ "<hr size='4' noshade>"
+ "<p align=center>EnrichmentMap is a network-based method to visualize<BR>"
+ "and interpret gene-set enrichment results.<BR><BR>"
+ "by Gary Bader, Daniele Merico, Ruth Isserlin and Oliver Stueker<BR>"
+ "(<a href='http://www.baderlab.org/'>Bader Lab</a>, University of Toronto)<BR><BR>"
+ "App Homepage:<BR><a href='" + APP_URL + "'>" + APP_URL + "</a></p><BR>"
+ "<hr size='4' noshade>"
+ "<p style='font-size:small'>If you use this app in your research, please cite:</p>"
+ "<p style='font-family:Courier,monospace;font-size:small'>"
+ "Merico D, Isserlin R, Stueker O, Emili A, Bader GD<BR>"
+ "Enrichment Map: A Network-Based Method for <BR>"
+ "Gene-Set Enrichment Visualization and Interpretation<BR>" + "<i>PLoS One. 2010 Nov 15;5(11)</i><BR>"
+ "</p><BR>"
+ "</body></html>");
setContentPane(editorPane);
}
private class HyperlinkAction implements HyperlinkListener {
@SuppressWarnings("unused")
JEditorPane pane;
public HyperlinkAction(JEditorPane pane) {
this.pane = pane;
}
@Override
public void hyperlinkUpdate(HyperlinkEvent event) {
if (event.getEventType() == HyperlinkEvent.EventType.ACTIVATED)
browser.openURL(event.getURL().toString());
}
}
}