@@ -0,0 +1,1467 @@
+package net.maizegenetics.baseplugins;%0D%0A%0D%0Aimport java.net.URL;%0D%0Aimport java.util.List;%0D%0A%0D%0Aimport javax.swing.ImageIcon;%0D%0Aimport javax.swing.JOptionPane;%0D%0A%0D%0Aimport net.maizegenetics.pal.distance.DistanceMatrix;%0D%0Aimport net.maizegenetics.pal.tree.Tree;%0D%0Aimport net.maizegenetics.plugindef.AbstractPlugin;%0D%0Aimport net.maizegenetics.plugindef.DataSet;%0D%0Aimport net.maizegenetics.plugindef.Datum;%0D%0A%0D%0Apublic class ArchaeopteryxPlugin extends AbstractPlugin %7B%0D%0A%0D%0A%09@Override%0D%0A%09public DataSet performFunction(DataSet input) %7B%0D%0A%09%09List%3CDatum%3E treeInList = input.getDataOfType(Tree.class);%0D%0A        if (treeInList.size() != 1) %7B%0D%0A            String message = %22Invalid selection.  Please select one tree.%22;%0D%0A            if (isInteractive()) %7B%0D%0A                JOptionPane.showMessageDialog(getParentFrame(), message);%0D%0A            %7D else %7B%0D%0A                System.out.println(message);%0D%0A            %7D%0D%0A            return null;%0D%0A        %7D%0D%0A%0D%0A        Tree myTree = (Tree) treeInList.get(0).getData();%0D%0A        %0D%0A        %0D%0A%09%09return null;%0D%0A%09%7D%0D%0A%0D%0A%09@Override%0D%0A%09public ImageIcon getIcon() %7B%0D%0A        URL imageURL = TreeDisplayPlugin.class.getResource(%22images/Tree.gif%22);%0D%0A        if (imageURL == null) %7B%0D%0A            return null;%0D%0A        %7D else %7B%0D%0A            return new ImageIcon(imageURL);%0D%0A        %7D%0D%0A%09%7D%0D%0A%0D%0A%09@Override%0D%0A%09public String getButtonName() %7B%0D%0A%09%09return %22Tree2%22;%0D%0A%09%7D%0D%0A%0D%0A%09@Override%0D%0A%09public String getToolTipText() %7B%0D%0A%09%09return %22Tree View using Archaeopteryx viewer%22;%0D%0A%09%7D%0D%0A%0D%0A%7D%0D%0A

add Archaeopteryx tree viewer plugin