From 09028c5abedb9492d6fc76b4274f6dd46bcf6cd6 Mon Sep 17 00:00:00 2001 From: "cmzmasek@gmail.com" Date: Sat, 20 Dec 2014 04:46:37 +0000 Subject: [PATCH] domain + go output work begins --- .../org/forester/archaeopteryx/ArchaeopteryxE.java | 4 +- .../org/forester/archaeopteryx/Configuration.java | 160 +++++++------- .../src/org/forester/archaeopteryx/Constants.java | 4 +- .../org/forester/archaeopteryx/ControlPanel.java | 10 +- .../src/org/forester/archaeopteryx/MainFrame.java | 29 ++- .../forester/archaeopteryx/MainFrameApplet.java | 2 +- .../src/org/forester/archaeopteryx/TreePanel.java | 218 ++++++++++---------- .../org/forester/phylogeny/data/NodeDataField.java | 30 +-- 8 files changed, 233 insertions(+), 224 deletions(-) diff --git a/forester/java/src/org/forester/archaeopteryx/ArchaeopteryxE.java b/forester/java/src/org/forester/archaeopteryx/ArchaeopteryxE.java index 68671ef..d517e42 100644 --- a/forester/java/src/org/forester/archaeopteryx/ArchaeopteryxE.java +++ b/forester/java/src/org/forester/archaeopteryx/ArchaeopteryxE.java @@ -229,10 +229,10 @@ public class ArchaeopteryxE extends JApplet implements ActionListener { MainFrame.cycleOverview( getOptions(), getCurrentTreePanel() ); } else if ( o == _cycle_node_fill_mi ) { - MainFrame.cycleNodeFill( getOptions(), getCurrentTreePanel() ); + MainFrame.cycleNodeFill( getOptions() ); } else if ( o == _cycle_node_shape_mi ) { - MainFrame.cycleNodeShape( getOptions(), getCurrentTreePanel() ); + MainFrame.cycleNodeShape( getOptions() ); } else if ( o == _non_lined_up_cladograms_rbmi ) { updateOptions( getOptions() ); diff --git a/forester/java/src/org/forester/archaeopteryx/Configuration.java b/forester/java/src/org/forester/archaeopteryx/Configuration.java index f720a3a..adb0f40 100644 --- a/forester/java/src/org/forester/archaeopteryx/Configuration.java +++ b/forester/java/src/org/forester/archaeopteryx/Configuration.java @@ -67,32 +67,32 @@ public final class Configuration { CROSSPLATFORM, NATIVE, NIMBUS, UNKNOWN } final static String clickto_options[][] = { - { "Display Node Data", "display" }, { "Collapse/Uncollapse", "display" }, { "Root/Reroot", "display" }, - { "Go to Sub-/Super-Tree", "display" }, { "Swap Descendants", "display" }, - { "Colorize Node(s)", "display" }, { "Change Node Font(s)", "display" }, - { "Colorize Subtree(s)", "display" }, { "Open Sequence DB", "display" }, { "Open PDB", "display" }, - { "Open Taxonomy DB", "display" }, { "Launch BLAST", "display" }, { "Cut Subtree", "display" }, - { "Copy Subtree", "display" }, { "Paste Subtree", "display" }, { "Delete Subtree/Node", "display" }, - { "Add New Node", "display" }, { "Edit Node Data", "display" }, { "Sort Descendants", "display" }, - { "Return", "display" }, { "Select Node(s)", "display" } }; + { "Display Node Data", "display" }, { "Collapse/Uncollapse", "display" }, { "Root/Reroot", "display" }, + { "Go to Sub-/Super-Tree", "display" }, { "Swap Descendants", "display" }, + { "Colorize Node(s)", "display" }, { "Change Node Font(s)", "display" }, + { "Colorize Subtree(s)", "display" }, { "Open Sequence DB", "display" }, { "Open PDB", "display" }, + { "Open Taxonomy DB", "display" }, { "Launch BLAST", "display" }, { "Cut Subtree", "display" }, + { "Copy Subtree", "display" }, { "Paste Subtree", "display" }, { "Delete Subtree/Node", "display" }, + { "Add New Node", "display" }, { "Edit Node Data", "display" }, { "Sort Descendants", "display" }, + { "List Node Data", "display" }, { "Select Node(s)", "display" } }; private final static String DEFAULT_SPECIES_COLORS[][] = { - { "BRAFL", "0x00FFFF" }, { "SPHGR", "0x9620F0" }, { "STRPU", "0x9620F0" }, { "CIOIN", "0xFF1CAE" }, - { "CIOSA", "0xFF2CAE" }, { "BOVIN", "0x5C3317" }, { "CANFA", "0x8B2323" }, { "HUMAN", "0xFF2400" }, - { "PANTR", "0xCC2400" }, { "MOUSE", "0xFF7F00" }, { "RAT", "0xFFEF00" }, { "MONDO", "0xEE9A49" }, - { "ORNAN", "0xCD853F" }, { "XENLA", "0x6BAA23" }, { "XENTR", "0x6BAA23" }, { "CHICK", "0xFFC125" }, - { "FUGRU", "0x0000FF" }, { "BRARE", "0x0000DD" }, { "DANRE", "0x0000BB" }, { "TETNG", "0x0000AA" }, - { "ORYLA", "0x000088" }, { "GASAC", "0x000066" }, { "CAEEL", "0x666699" }, { "CAEBR", "0xB0B0B0" }, - { "DROME", "0x663366" }, { "DROPS", "0x996699" }, { "APIME", "0x7A7700" }, { "AEDAE", "0x8C5900" }, - { "TRICA", "0x918E00" }, { "NEMVE", "0x0066CC" }, { "HYDVU", "0x3399FF" }, { "LUBBA", "0xF7B5CB" }, - { "GEOCY", "0xF5A0BD" }, { "AMPQE", "0x009966" }, { "SUBDO", "0xC790B9" }, { "MONBE", "0xFC0FC0" }, - { "DICPU", "0xFFCC33" }, { "DICDI", "0xFFCC00" }, { "ENTHI", "0x5959AB" }, { "ARATH", "0x00FF00" }, - { "POPTR", "0x006400" }, { "VITVI", "0x00CD00" }, { "GLYMA", "0x00FF7F" }, { "ORYSA", "0x008B00" }, - { "ORYSJ", "0x008C00" }, { "SORBI", "0x00EE76" }, { "SELMO", "0x238E23" }, { "PHYPA", "0x09F911" }, - { "OSTLU", "0x7FFF00" }, { "OSTTA", "0x7FFF00" }, { "OSTRC", "0x7FFF00" }, { "MICPU", "0x66CD00" }, - { "MIC99", "0x66CD00" }, { "CHLRE", "0xB3EE3A" }, { "VOLCA", "0xC0FF3E" }, { "CHLSP", "0x6B8E23" }, - { "CYAME", "0xD02090" }, { "YEAST", "0xAAAAAA" }, { "BACFR", "0xFF0000" }, { "BACTN", "0xFFFF00" }, - { "MYXXD", "0x0000FF" }, { "STIAU", "0x00FFFF" }, { "BACOV", "0x8C5900" }, { "BACUN", "0x66CD00" }, - { "PORGI", "0x918E00" } }; + { "BRAFL", "0x00FFFF" }, { "SPHGR", "0x9620F0" }, { "STRPU", "0x9620F0" }, { "CIOIN", "0xFF1CAE" }, + { "CIOSA", "0xFF2CAE" }, { "BOVIN", "0x5C3317" }, { "CANFA", "0x8B2323" }, { "HUMAN", "0xFF2400" }, + { "PANTR", "0xCC2400" }, { "MOUSE", "0xFF7F00" }, { "RAT", "0xFFEF00" }, { "MONDO", "0xEE9A49" }, + { "ORNAN", "0xCD853F" }, { "XENLA", "0x6BAA23" }, { "XENTR", "0x6BAA23" }, { "CHICK", "0xFFC125" }, + { "FUGRU", "0x0000FF" }, { "BRARE", "0x0000DD" }, { "DANRE", "0x0000BB" }, { "TETNG", "0x0000AA" }, + { "ORYLA", "0x000088" }, { "GASAC", "0x000066" }, { "CAEEL", "0x666699" }, { "CAEBR", "0xB0B0B0" }, + { "DROME", "0x663366" }, { "DROPS", "0x996699" }, { "APIME", "0x7A7700" }, { "AEDAE", "0x8C5900" }, + { "TRICA", "0x918E00" }, { "NEMVE", "0x0066CC" }, { "HYDVU", "0x3399FF" }, { "LUBBA", "0xF7B5CB" }, + { "GEOCY", "0xF5A0BD" }, { "AMPQE", "0x009966" }, { "SUBDO", "0xC790B9" }, { "MONBE", "0xFC0FC0" }, + { "DICPU", "0xFFCC33" }, { "DICDI", "0xFFCC00" }, { "ENTHI", "0x5959AB" }, { "ARATH", "0x00FF00" }, + { "POPTR", "0x006400" }, { "VITVI", "0x00CD00" }, { "GLYMA", "0x00FF7F" }, { "ORYSA", "0x008B00" }, + { "ORYSJ", "0x008C00" }, { "SORBI", "0x00EE76" }, { "SELMO", "0x238E23" }, { "PHYPA", "0x09F911" }, + { "OSTLU", "0x7FFF00" }, { "OSTTA", "0x7FFF00" }, { "OSTRC", "0x7FFF00" }, { "MICPU", "0x66CD00" }, + { "MIC99", "0x66CD00" }, { "CHLRE", "0xB3EE3A" }, { "VOLCA", "0xC0FF3E" }, { "CHLSP", "0x6B8E23" }, + { "CYAME", "0xD02090" }, { "YEAST", "0xAAAAAA" }, { "BACFR", "0xFF0000" }, { "BACTN", "0xFFFF00" }, + { "MYXXD", "0x0000FF" }, { "STIAU", "0x00FFFF" }, { "BACOV", "0x8C5900" }, { "BACUN", "0x66CD00" }, + { "PORGI", "0x918E00" } }; final static int display_node_data = 0; final static int collapse_uncollapse = 1; final static int reroot = 2; @@ -118,20 +118,20 @@ public final class Configuration { // Click-to options // ------------------ final static String display_options[][] = { - { "Phylogram", "display", "?" }, { "Node Name", "display", "yes" }, { "Taxonomy Code", "display", "yes" }, - { "Seq Annotations", "display", "no" }, { "Confidence Values", "display", "?" }, - { "Node Events", "display", "?" }, { "Colorize by Taxonomy", "display", "no" }, - { "Colorize by Sequence", "display", "no" }, { "Visual Styles/Branch Colors", "display", "no" }, - { "Branch Widths", "display", "no" }, { "Domain Architectures", "display", "no" }, - { "Binary Characters", "nodisplay", "no" }, { "Binary Char Counts", "nodisplay", "no" }, - { "Seq Name", "display", "yes" }, { "Seq Accession", "display", "no" }, - { "Show Internal Data", "display", "yes" }, { "Dyna Hide", "display", "yes" }, - { "Taxonomy Scientific", "display", "yes" }, { "Taxonomy Common", "display", "no" }, - { "Colorize by Annotation", "display", "no" }, { "Seq Symbol", "display", "yes" }, - { "Rollover", "display", "yes" }, { "Relation Confidence", "nodisplay", "no" }, - { "Vector Data", "nodisplay", "no" }, { "Taxonomy Images", "display", "no" }, - { "Properties", "display", "no" }, { "Gene Name", "display", "yes" }, - { "Multiple Seq Alignment", "display", "no" }, { "Branch Length Values", "display", "no" } }; + { "Phylogram", "display", "?" }, { "Node Name", "display", "yes" }, { "Taxonomy Code", "display", "yes" }, + { "Seq Annotations", "display", "no" }, { "Confidence Values", "display", "?" }, + { "Node Events", "display", "?" }, { "Colorize by Taxonomy", "display", "no" }, + { "Colorize by Sequence", "display", "no" }, { "Visual Styles/Branch Colors", "display", "no" }, + { "Branch Widths", "display", "no" }, { "Domain Architectures", "display", "no" }, + { "Binary Characters", "nodisplay", "no" }, { "Binary Char Counts", "nodisplay", "no" }, + { "Seq Name", "display", "yes" }, { "Seq Accession", "display", "no" }, + { "Show Internal Data", "display", "yes" }, { "Dyna Hide", "display", "yes" }, + { "Taxonomy Scientific", "display", "yes" }, { "Taxonomy Common", "display", "no" }, + { "Colorize by Annotation", "display", "no" }, { "Seq Symbol", "display", "yes" }, + { "Rollover", "display", "yes" }, { "Relation Confidence", "nodisplay", "no" }, + { "Vector Data", "nodisplay", "no" }, { "Taxonomy Images", "display", "no" }, + { "Properties", "display", "no" }, { "Gene Name", "display", "yes" }, + { "Multiple Seq Alignment", "display", "no" }, { "Branch Length Values", "display", "no" } }; final static int display_as_phylogram = 0; final static int show_node_names = 1; final static int show_tax_code = 2; @@ -203,7 +203,7 @@ public final class Configuration { private SortedMap _display_colors = null; private boolean _display_sequence_relations = false; private boolean _editable = true; - private NodeDataField _ext_desc_data_to_return = NodeDataField.UNKNOWN; + private NodeDataField _ext_desc_data_to_return = NodeDataField.UNKNOWN; private EXT_NODE_DATA_RETURN_ON _ext_node_data_return_on = EXT_NODE_DATA_RETURN_ON.WINODW; private int _frame_x_size; private int _frame_y_size; @@ -385,8 +385,8 @@ public final class Configuration { if ( name.equals( "edit_info" ) ) { index = Configuration.display_node_data; ForesterUtil - .printWarningMessage( Constants.PRG_NAME, - "configuration key [edit_info] is deprecated, use [display node data] instead" ); + .printWarningMessage( Constants.PRG_NAME, + "configuration key [edit_info] is deprecated, use [display node data] instead" ); } else if ( name.equals( "display_node_data" ) ) { index = Configuration.display_node_data; @@ -411,7 +411,7 @@ public final class Configuration { } else if ( name.equals( "display_sequences" ) ) { ForesterUtil - .printWarningMessage( Constants.PRG_NAME, "configuration key [display_sequences] is deprecated" ); + .printWarningMessage( Constants.PRG_NAME, "configuration key [display_sequences] is deprecated" ); return DEPRECATED; } else if ( name.equals( "open_seq_web" ) ) { @@ -449,7 +449,7 @@ public final class Configuration { } else if ( name.equals( "display_node_popup" ) ) { ForesterUtil.printWarningMessage( Constants.PRG_NAME, - "configuration key [display_node_popup] is deprecated" ); + "configuration key [display_node_popup] is deprecated" ); return DEPRECATED; } else if ( name.equals( "custom_option" ) ) { @@ -1045,7 +1045,7 @@ public final class Configuration { default_clickto = getClickToIndex( clickto_name ); if ( default_clickto == -1 ) { ForesterUtil.printWarningMessage( Constants.PRG_NAME, "invalid value [" + clickto_name - + "] for [default_click_to]" ); + + "] for [default_click_to]" ); default_clickto = 0; } else if ( default_clickto == DEPRECATED ) { @@ -1065,7 +1065,7 @@ public final class Configuration { } else { ForesterUtil.printWarningMessage( Constants.PRG_NAME, "could not parse yes/no/? value from [" + my_str - + "]" ); + + "]" ); _ui = UI.UNKNOWN; } } @@ -1104,7 +1104,7 @@ public final class Configuration { else { setPhylogenyGraphicsType( PHYLOGENY_GRAPHICS_TYPE.RECTANGULAR ); ForesterUtil.printWarningMessage( Constants.PRG_NAME, "unknown value [" + type_str - + "] for [phylogeny_graphics_type]" ); + + "] for [phylogeny_graphics_type]" ); } } else if ( key.equals( "min_confidence_value" ) ) { @@ -1158,7 +1158,7 @@ public final class Configuration { } else { ForesterUtil.printWarningMessage( Constants.PRG_NAME, - "value for [pdf_export_line_width] cannot be zero or negative" ); + "value for [pdf_export_line_width] cannot be zero or negative" ); } } else if ( key.equals( "window_initial_size_x" ) ) { @@ -1183,8 +1183,8 @@ public final class Configuration { } else { ForesterUtil - .printWarningMessage( Constants.PRG_NAME, - "value for [default_number_of_bootstrap_resamples] cannot be negative" ); + .printWarningMessage( Constants.PRG_NAME, + "value for [default_number_of_bootstrap_resamples] cannot be negative" ); } } else if ( key.equals( "mafft_local" ) ) { @@ -1239,13 +1239,13 @@ public final class Configuration { } else { ForesterUtil.printWarningMessage( Constants.PRG_NAME, "unknown value [" + type_str - + "] for [cladogram_type]" ); + + "] for [cladogram_type]" ); } } else if ( key.equals( "non_lined_up_cladogram" ) ) { ForesterUtil - .printWarningMessage( Constants.PRG_NAME, - "configuration key [non_lined_up_cladogram] is deprecated, use [cladogram_type] instead" ); + .printWarningMessage( Constants.PRG_NAME, + "configuration key [non_lined_up_cladogram] is deprecated, use [cladogram_type] instead" ); } else if ( key.equals( "hide_controls_and_menus" ) ) { _hide_controls_and_menus = parseBoolean( ( String ) st.nextElement() ); @@ -1278,7 +1278,7 @@ public final class Configuration { else { setOvPlacement( OVERVIEW_PLACEMENT_TYPE.UPPER_LEFT ); ForesterUtil.printWarningMessage( Constants.PRG_NAME, "unknown value [" + type_str - + "] for [overview_placement_type]" ); + + "] for [overview_placement_type]" ); } } else if ( key.equals( "node_label_direction" ) ) { @@ -1292,7 +1292,7 @@ public final class Configuration { else { setNodeLabelDirection( NODE_LABEL_DIRECTION.HORIZONTAL ); ForesterUtil.printWarningMessage( Constants.PRG_NAME, "unknown value [" + type_str - + "] for [node_label_direction]" ); + + "] for [node_label_direction]" ); } } else if ( key.equals( "branch_length_value_digits" ) ) { @@ -1302,7 +1302,7 @@ public final class Configuration { } else { ForesterUtil.printWarningMessage( Constants.PRG_NAME, "illegal value [" + i - + "] for [branch_length_value_digits]" ); + + "] for [branch_length_value_digits]" ); } } else if ( key.equals( "confidence_value_digits" ) ) { @@ -1312,7 +1312,7 @@ public final class Configuration { } else { ForesterUtil.printWarningMessage( Constants.PRG_NAME, "illegal value [" + i - + "] for [confidence_value_digits]" ); + + "] for [confidence_value_digits]" ); } } else if ( key.equals( "allow_editing" ) ) { @@ -1325,8 +1325,8 @@ public final class Configuration { final boolean r = parseBoolean( ( String ) st.nextElement() ); if ( r && ( getTaxonomyExtraction() != TAXONOMY_EXTRACTION.NO ) ) { ForesterUtil - .printWarningMessage( Constants.PRG_NAME, - "attempt to extract taxonomies and replace underscores at the same time" ); + .printWarningMessage( Constants.PRG_NAME, + "attempt to extract taxonomies and replace underscores at the same time" ); } else { setReplaceUnderscoresInNhParsing( r ); @@ -1348,15 +1348,15 @@ public final class Configuration { } else { ForesterUtil - .printWarningMessage( Constants.PRG_NAME, - "unknown value for \"taxonomy_extraction_in_nh_parsing\": " - + s - + " (must be either: no, pfam_relaxed, pfam_strict, or aggressive)" ); + .printWarningMessage( Constants.PRG_NAME, + "unknown value for \"taxonomy_extraction_in_nh_parsing\": " + + s + + " (must be either: no, pfam_relaxed, pfam_strict, or aggressive)" ); } if ( ( getTaxonomyExtraction() != TAXONOMY_EXTRACTION.NO ) && isReplaceUnderscoresInNhParsing() ) { ForesterUtil - .printWarningMessage( Constants.PRG_NAME, - "attempt to extract taxonomies and replace underscores at the same time" ); + .printWarningMessage( Constants.PRG_NAME, + "attempt to extract taxonomies and replace underscores at the same time" ); } } else if ( key.equals( "internal_labels_are_confidence_values" ) ) { @@ -1412,7 +1412,7 @@ public final class Configuration { } else { ForesterUtil.printWarningMessage( Constants.PRG_NAME, "unknown value [" + fill_str - + "] for [default_node_fill]" ); + + "] for [default_node_fill]" ); } } else if ( key.equals( "default_node_shape" ) ) { @@ -1425,13 +1425,13 @@ public final class Configuration { } else { ForesterUtil.printWarningMessage( Constants.PRG_NAME, "unknown value [" + shape_str - + "] for [default_node_shape]" ); + + "] for [default_node_shape]" ); } } else if ( key.equals( "midpoint_reroot" ) ) { setMidpointReroot( parseBoolean( ( String ) st.nextElement() ) ); } - else if ( key.equals( "ext_descendents_data_to_return" ) ) { + else if ( key.equals( "list_node_data_field" ) || key.equals( "ext_descendents_data_to_return" ) ) { final String s = ( ( String ) st.nextElement() ).trim(); if ( s.equalsIgnoreCase( "node_name" ) ) { setExtDescNodeDataToReturn( NodeDataField.NODE_NAME ); @@ -1474,20 +1474,16 @@ public final class Configuration { } else { ForesterUtil.printWarningMessage( Constants.PRG_NAME, "unknown value [" + s - + "] for [ext_descendents_data_to_return]" ); + + "] for [ext_descendents_data_to_return]" ); } } - else if ( key.equals( "label_for_get_ext_descendents_data" ) ) { + else if ( key.equals( "list_node_data_custom_label" ) || key.equals( "label_for_get_ext_descendents_data" ) ) { final String s = ( ( String ) st.nextElement() ).trim(); - if ( ForesterUtil.isEmpty( s ) || ( s.length() < 2 ) ) { - ForesterUtil.printWarningMessage( Constants.PRG_NAME, "illegal value [" + s - + "] for [label_for_get_ext_descendents_data]" ); - } - else { + if ( !ForesterUtil.isEmpty( s ) && ( s.length() > 1 ) ) { setLabelForGetExtDescendentsData( s.replaceAll( "_", " " ) ); } } - else if ( key.equals( "ext_descendents_data_to_return_on" ) ) { + else if ( key.equals( "list_node_data_in" ) || key.equals( "ext_descendents_data_to_return_on" ) ) { final String s = ( ( String ) st.nextElement() ).trim().toLowerCase(); if ( s.equals( "console" ) ) { setExtNodeDataReturnOn( EXT_NODE_DATA_RETURN_ON.CONSOLE ); @@ -1500,7 +1496,7 @@ public final class Configuration { } else { ForesterUtil.printWarningMessage( Constants.PRG_NAME, "unknown value [" + s - + "] for [ext_descendents_data_to_return_on]" ); + + "] for [ext_descendents_data_to_return_on]" ); } } else if ( key.equals( "vector_data_min_color" ) ) { @@ -1569,8 +1565,8 @@ public final class Configuration { else if ( key.equals( "color_branches" ) ) { key_index = Configuration.use_style; ForesterUtil - .printWarningMessage( Constants.PRG_NAME, - "configuration key [color_branches] is deprecated, use [use_visual_styles] instead" ); + .printWarningMessage( Constants.PRG_NAME, + "configuration key [color_branches] is deprecated, use [use_visual_styles] instead" ); } else if ( key.equals( "width_branches" ) ) { key_index = Configuration.width_branches; @@ -1666,18 +1662,18 @@ public final class Configuration { } else if ( key.equals( "annotation_color" ) ) { getAnnotationColors() - .put( ( String ) st.nextElement(), Color.decode( ( String ) st.nextElement() ) ); + .put( ( String ) st.nextElement(), Color.decode( ( String ) st.nextElement() ) ); } else if ( key.equals( "function_color" ) ) { ForesterUtil.printWarningMessage( Constants.PRG_NAME, - "configuration key [function_color] is deprecated" ); + "configuration key [function_color] is deprecated" ); } else if ( key.equals( DISPLAY_COLOR_KEY ) ) { putDisplayColors( ( String ) st.nextElement(), Color.decode( ( String ) st.nextElement() ) ); } else { ForesterUtil.printWarningMessage( Constants.PRG_NAME, "unknown configuration key [" + key - + "] in: " + config_filename ); + + "] in: " + config_filename ); } } } diff --git a/forester/java/src/org/forester/archaeopteryx/Constants.java b/forester/java/src/org/forester/archaeopteryx/Constants.java index 144c607..fc6a403 100644 --- a/forester/java/src/org/forester/archaeopteryx/Constants.java +++ b/forester/java/src/org/forester/archaeopteryx/Constants.java @@ -42,8 +42,8 @@ public final class Constants { public final static boolean __SYNTH_LF = false; // TODO remove me public final static boolean ALLOW_DDBJ_BLAST = false; public final static String PRG_NAME = "Archaeopteryx"; - final static String VERSION = "0.9901 beta"; - final static String PRG_DATE = "141118"; + final static String VERSION = "0.9902 beta"; + final static String PRG_DATE = "141219"; final static String DEFAULT_CONFIGURATION_FILE_NAME = "_aptx_configuration_file"; final static String[] DEFAULT_FONT_CHOICES = { "Arial", "Helvetica", "Verdana", "Tahoma", "Dialog", "Lucida Sans", "SansSerif", "Sans-serif", "Sans" }; diff --git a/forester/java/src/org/forester/archaeopteryx/ControlPanel.java b/forester/java/src/org/forester/archaeopteryx/ControlPanel.java index c68b51a..1e32723 100644 --- a/forester/java/src/org/forester/archaeopteryx/ControlPanel.java +++ b/forester/java/src/org/forester/archaeopteryx/ControlPanel.java @@ -1302,7 +1302,6 @@ final class ControlPanel extends JPanel implements ActionListener { _sequence_colors = sequence_colors; } - void setupControls() { // The tree display options: setupDisplayCheckboxes(); @@ -2034,13 +2033,14 @@ final class ControlPanel extends JPanel implements ActionListener { _get_ext_desc_data = cb_index; if ( !ForesterUtil.isEmpty( getConfiguration().getLabelForGetExtDescendentsData() ) ) { addClickToOption( Configuration.get_ext_desc_data, getConfiguration() - .getLabelForGetExtDescendentsData() ); + .getLabelForGetExtDescendentsData() ); } else { - final String s = getOptions().getExtDescNodeDataToReturn().toString(); - final String label = _configuration.getClickToTitle( Configuration.get_ext_desc_data ) + " " + s; - addClickToOption( Configuration.get_ext_desc_data, label ); + + addClickToOption( Configuration.get_ext_desc_data, + getConfiguration().getClickToTitle( Configuration.get_ext_desc_data ) ); } + if ( default_option == Configuration.get_ext_desc_data ) { selected_index = cb_index; } diff --git a/forester/java/src/org/forester/archaeopteryx/MainFrame.java b/forester/java/src/org/forester/archaeopteryx/MainFrame.java index cdcd940..505918e 100644 --- a/forester/java/src/org/forester/archaeopteryx/MainFrame.java +++ b/forester/java/src/org/forester/archaeopteryx/MainFrame.java @@ -406,13 +406,13 @@ public abstract class MainFrame extends JFrame implements ActionListener { MainFrame.cycleOverview( getOptions(), getCurrentTreePanel() ); } else if ( o == _cycle_node_fill_mi ) { - MainFrame.cycleNodeFill( getOptions(), getCurrentTreePanel() ); + MainFrame.cycleNodeFill( getOptions() ); } else if ( o == _cycle_node_shape_mi ) { - MainFrame.cycleNodeShape( getOptions(), getCurrentTreePanel() ); + MainFrame.cycleNodeShape( getOptions() ); } else if ( o == _cycle_data_return ) { - MainFrame.cycleNodeDataReturn( getOptions(), getCurrentTreePanel() ); + MainFrame.cycleNodeDataReturn( getOptions(), getConfiguration() ); } else if ( o == _screen_antialias_cbmi ) { updateOptions( getOptions() ); @@ -1736,7 +1736,7 @@ public abstract class MainFrame extends JFrame implements ActionListener { return label; } - static void cycleNodeFill( final Options op, final TreePanel tree_panel ) { + static void cycleNodeFill( final Options op ) { switch ( op.getDefaultNodeFill() ) { case GRADIENT: op.setDefaultNodeFill( NodeFill.SOLID ); @@ -1752,7 +1752,7 @@ public abstract class MainFrame extends JFrame implements ActionListener { } } - static void cycleNodeShape( final Options op, final TreePanel tree_panel ) { + static void cycleNodeShape( final Options op ) { switch ( op.getDefaultNodeShape() ) { case CIRCLE: op.setDefaultNodeShape( NodeShape.RECTANGLE ); @@ -1765,7 +1765,7 @@ public abstract class MainFrame extends JFrame implements ActionListener { } } - static void cycleNodeDataReturn( final Options op, final TreePanel tree_panel ) { + private static void cycleNodeDataReturn( final Options op, Configuration conf ) { switch ( op.getExtDescNodeDataToReturn() ) { case UNKNOWN: op.setExtDescNodeDataToReturn( NodeDataField.DOMAINS_ALL ); @@ -1774,11 +1774,28 @@ public abstract class MainFrame extends JFrame implements ActionListener { op.setExtDescNodeDataToReturn( NodeDataField.DOMAINS_COLLAPSED_PER_PROTEIN ); break; case DOMAINS_COLLAPSED_PER_PROTEIN: + op.setExtDescNodeDataToReturn( NodeDataField.SEQ_ANNOTATIONS ); + break; + case SEQ_ANNOTATIONS: op.setExtDescNodeDataToReturn( NodeDataField.GO_TERM_IDS ); break; case GO_TERM_IDS: op.setExtDescNodeDataToReturn( NodeDataField.SEQUENCE_MOL_SEQ_FASTA ); break; + case SEQUENCE_MOL_SEQ_FASTA: + if ( conf != null && conf.getExtDescNodeDataToReturn() != null + && conf.getExtDescNodeDataToReturn() != NodeDataField.DOMAINS_ALL + && conf.getExtDescNodeDataToReturn() != NodeDataField.DOMAINS_COLLAPSED_PER_PROTEIN + && conf.getExtDescNodeDataToReturn() != NodeDataField.SEQ_ANNOTATIONS + && conf.getExtDescNodeDataToReturn() != NodeDataField.GO_TERM_IDS + && conf.getExtDescNodeDataToReturn() != NodeDataField.SEQUENCE_MOL_SEQ_FASTA + ) { + op.setExtDescNodeDataToReturn( conf.getExtDescNodeDataToReturn() ); + } + else { + op.setExtDescNodeDataToReturn( NodeDataField.UNKNOWN ); + } + break; default: op.setExtDescNodeDataToReturn( NodeDataField.UNKNOWN ); } diff --git a/forester/java/src/org/forester/archaeopteryx/MainFrameApplet.java b/forester/java/src/org/forester/archaeopteryx/MainFrameApplet.java index d2a3233..2c0398b 100644 --- a/forester/java/src/org/forester/archaeopteryx/MainFrameApplet.java +++ b/forester/java/src/org/forester/archaeopteryx/MainFrameApplet.java @@ -188,7 +188,7 @@ public final class MainFrameApplet extends MainFrame { MainFrame.setCycleNodeFillMenuItem( _cycle_node_fill_mi, getOptions() ); MainFrame.setCycleNodeShapeMenuItem( _cycle_node_shape_mi, getOptions() ); MainFrame.setTextNodeSizeMenuItem( _choose_node_size_mi, getOptions() ); - MainFrame.setCycleDataReturnMenuItem( _cycle_data_return, getOptions() ); + try { getMainPanel().getControlPanel().setVisibilityOfDomainStrucureCB(); getMainPanel().getControlPanel().setVisibilityOfX(); diff --git a/forester/java/src/org/forester/archaeopteryx/TreePanel.java b/forester/java/src/org/forester/archaeopteryx/TreePanel.java index 639b540..d0d6ddc 100644 --- a/forester/java/src/org/forester/archaeopteryx/TreePanel.java +++ b/forester/java/src/org/forester/archaeopteryx/TreePanel.java @@ -306,7 +306,7 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee calculateScaleDistance(); FORMATTER_CONFIDENCE.setMaximumFractionDigits( configuration.getNumberOfDigitsAfterCommaForConfidenceValues() ); FORMATTER_BRANCH_LENGTH.setMaximumFractionDigits( configuration - .getNumberOfDigitsAfterCommaForBranchLengthValues() ); + .getNumberOfDigitsAfterCommaForBranchLengthValues() ); } @Override @@ -594,7 +594,7 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee return; } int max_length = ForesterUtil.roundToInt( ( getSize().getWidth() - MOVE ) - * Constants.EXT_NODE_INFO_LENGTH_MAX_RATIO ); + * Constants.EXT_NODE_INFO_LENGTH_MAX_RATIO ); if ( max_length < 40 ) { max_length = 40; } @@ -630,7 +630,7 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee } if ( getControlPanel().isShowBinaryCharacters() && node.getNodeData().isHasBinaryCharacters() ) { sum += getFontMetricsForLargeDefaultFont().stringWidth( node.getNodeData().getBinaryCharacters() - .getGainedCharactersAsStringBuffer().toString() ); + .getGainedCharactersAsStringBuffer().toString() ); } if ( getControlPanel().isShowVectorData() && ( node.getNodeData().getVector() != null ) && ( node.getNodeData().getVector().size() > 0 ) ) { @@ -787,7 +787,7 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee } catch ( final NumberFormatException e ) { JOptionPane.showMessageDialog( this, "Could not parse \"" + value_str - + "\" into a decimal value", "Problem with Vector Data", JOptionPane.ERROR_MESSAGE ); + + "\" into a decimal value", "Problem with Vector Data", JOptionPane.ERROR_MESSAGE ); return; } int i = -1; @@ -797,7 +797,7 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee catch ( final NumberFormatException e ) { JOptionPane.showMessageDialog( this, "Could not parse \"" + index_str - + "\" into index for vector data", + + "\" into index for vector data", "Problem with Vector Data", JOptionPane.ERROR_MESSAGE ); return; @@ -1094,11 +1094,11 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee if ( !( node.getNodeData().getSequence().getDomainArchitecture() instanceof RenderableDomainArchitecture ) ) { if ( SPECIAL_DOMAIN_COLORING ) { rds = new RenderableDomainArchitecture( node.getNodeData().getSequence() - .getDomainArchitecture(), node.getName() ); + .getDomainArchitecture(), node.getName() ); } else { rds = new RenderableDomainArchitecture( node.getNodeData().getSequence() - .getDomainArchitecture() ); + .getDomainArchitecture() ); } node.getNodeData().getSequence().setDomainArchitecture( rds ); } @@ -1131,14 +1131,14 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee return ( ( e.getX() > ( getVisibleRect().x + getOvXPosition() + 1 ) ) && ( e.getX() < ( ( getVisibleRect().x + getOvXPosition() + getOvMaxWidth() ) - 1 ) ) && ( e.getY() > ( getVisibleRect().y + getOvYPosition() + 1 ) ) && ( e.getY() < ( ( getVisibleRect().y - + getOvYPosition() + getOvMaxHeight() ) - 1 ) ) ); + + getOvYPosition() + getOvMaxHeight() ) - 1 ) ) ); } final boolean inOvRectangle( final MouseEvent e ) { return ( ( e.getX() >= ( getOvRectangle().getX() - 1 ) ) && ( e.getX() <= ( getOvRectangle().getX() + getOvRectangle().getWidth() + 1 ) ) && ( e.getY() >= ( getOvRectangle().getY() - 1 ) ) && ( e.getY() <= ( getOvRectangle().getY() - + getOvRectangle().getHeight() + 1 ) ) ); + + getOvRectangle().getHeight() + 1 ) ) ); } final boolean isApplet() { @@ -1243,7 +1243,7 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee y = max_y; } getMainPanel().getCurrentScrollPane().getViewport() - .setViewPosition( new Point( ForesterUtil.roundToInt( x ), ForesterUtil.roundToInt( y ) ) ); + .setViewPosition( new Point( ForesterUtil.roundToInt( x ), ForesterUtil.roundToInt( y ) ) ); setInOvRect( true ); repaint(); } @@ -1491,7 +1491,7 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee if ( isInFoundNodes( c ) || isInCurrentExternalNodes( c ) ) { g.setColor( getColorForFoundNode( c ) ); drawRectFilled( c.getXSecondary() - OVERVIEW_FOUND_NODE_BOX_SIZE_HALF, c.getYSecondary() - - OVERVIEW_FOUND_NODE_BOX_SIZE_HALF, OVERVIEW_FOUND_NODE_BOX_SIZE, OVERVIEW_FOUND_NODE_BOX_SIZE, g ); + - OVERVIEW_FOUND_NODE_BOX_SIZE_HALF, OVERVIEW_FOUND_NODE_BOX_SIZE, OVERVIEW_FOUND_NODE_BOX_SIZE, g ); } } @@ -1581,7 +1581,7 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee else { if ( !to_graphics_file ) { g.setPaint( new GradientPaint( r.x, r.y, getTreeColorSet().getBackgroundColor(), r.x, r.y - + r.height, getTreeColorSet().getBackgroundColorGradientBottom() ) ); + + r.height, getTreeColorSet().getBackgroundColorGradientBottom() ) ); g.fill( r ); } else { @@ -1615,7 +1615,7 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee } // Position starting Y of tree _phylogeny.getRoot().setYcoord( ( getYdistance() * _phylogeny.getRoot().getNumberOfExternalNodes() ) - + ( TreePanel.MOVE / 2.0f ) ); + + ( TreePanel.MOVE / 2.0f ) ); final int dynamic_hiding_factor = calcDynamicHidingFactor(); if ( getControlPanel().isDynamicallyHideData() ) { if ( dynamic_hiding_factor > 1 ) { @@ -1751,7 +1751,7 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee y_pos + radius_ov, ( int ) ( radius_ov - ( getLongestExtNodeInfo() / ( getVisibleRect().width / getOvRectangle() .getWidth() ) ) ), - g ); + g ); g.setTransform( _at ); paintOvRectangle( g ); } @@ -1833,20 +1833,20 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee x = TreePanel.MOVE + getLongestExtNodeInfo() + ForesterUtil - .roundToInt( ( getXcorrectionFactor() * getPhylogeny().getHeight() ) + getXdistance() ); + .roundToInt( ( getXcorrectionFactor() * getPhylogeny().getHeight() ) + getXdistance() ); } else { if ( !isNonLinedUpCladogram() && !isUniformBranchLengthsForCladogram() ) { x = TreePanel.MOVE + getLongestExtNodeInfo() + ForesterUtil.roundToInt( getXdistance() - * ( getPhylogeny().getRoot().getNumberOfExternalNodes() + 2 ) ); + * ( getPhylogeny().getRoot().getNumberOfExternalNodes() + 2 ) ); } else { x = TreePanel.MOVE + getLongestExtNodeInfo() + ForesterUtil.roundToInt( getXdistance() - * ( PhylogenyMethods.calculateMaxDepth( getPhylogeny() ) + 1 ) ); + * ( PhylogenyMethods.calculateMaxDepth( getPhylogeny() ) + 1 ) ); } } setPreferredSize( new Dimension( x, y ) ); @@ -3107,7 +3107,7 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee return ( ( x >= ( getOvVirtualRectangle().x - 1 ) ) && ( x <= ( getOvVirtualRectangle().x + getOvVirtualRectangle().width + 1 ) ) && ( y >= ( getOvVirtualRectangle().y - 1 ) ) && ( y <= ( getOvVirtualRectangle().y - + getOvVirtualRectangle().height + 1 ) ) ); + + getOvVirtualRectangle().height + 1 ) ) ); } final private boolean inOvVirtualRectangle( final MouseEvent e ) { @@ -3134,8 +3134,8 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee && ( ( !ForesterUtil.isEmpty( node.getNodeData().getTaxonomy().getScientificName() ) ) || ( !ForesterUtil.isEmpty( node.getNodeData().getTaxonomy().getTaxonomyCode() ) ) || ( !ForesterUtil.isEmpty( node.getNodeData().getTaxonomy().getCommonName() ) ) || ( ( node - .getNodeData().getTaxonomy().getIdentifier() != null ) && !ForesterUtil.isEmpty( node - .getNodeData().getTaxonomy().getIdentifier().getValue() ) ) ) ) { + .getNodeData().getTaxonomy().getIdentifier() != null ) && !ForesterUtil.isEmpty( node + .getNodeData().getTaxonomy().getIdentifier().getValue() ) ) ) ) { return true; } else { @@ -3170,14 +3170,14 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee } return ( ( node.getYcoord() < ( getVisibleRect().getMinY() - y_dist ) ) || ( node.getYcoord() > ( getVisibleRect().getMaxY() + y_dist ) ) || ( ( node.getParent() != null ) && ( node - .getParent().getXcoord() > getVisibleRect().getMaxX() ) ) ); + .getParent().getXcoord() > getVisibleRect().getMaxX() ) ) ); } final private boolean isNodeDataInvisibleUnrootedCirc( final PhylogenyNode node ) { return ( ( node.getYcoord() < ( getVisibleRect().getMinY() - 20 ) ) || ( node.getYcoord() > ( getVisibleRect().getMaxY() + 20 ) ) || ( node.getXcoord() < ( getVisibleRect().getMinX() - 20 ) ) || ( node.getXcoord() > ( getVisibleRect() - .getMaxX() + 20 ) ) ); + .getMaxX() + 20 ) ) ); } final private boolean isNonLinedUpCladogram() { @@ -3361,7 +3361,6 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee _node_popup_menu_items = new JMenuItem[ clickto_names.size() ]; for( int i = 0; i < clickto_names.size(); i++ ) { final String title = clickto_names.get( i ); - _node_popup_menu_items[ i ] = new JMenuItem( title ); if ( title.equals( Configuration.clickto_options[ Configuration.open_seq_web ][ 0 ] ) ) { final String id = isCanOpenSeqWeb( node ); @@ -3406,15 +3405,12 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee else { _node_popup_menu_items[ i ].setEnabled( false ); } - // } - else if ( title.equals( Configuration.clickto_options[ Configuration.get_ext_desc_data ][ 0 ] ) ) { - System.out.println( ">>>>>>>>>>>>>>>>>>" + title );//TODO - _node_popup_menu_items[ i ].setText( "horsehit" ); - //TODO + else if ( title.startsWith( Configuration.clickto_options[ Configuration.get_ext_desc_data ][ 0 ] ) ) { + _node_popup_menu_items[ i ] + .setText( Configuration.clickto_options[ Configuration.get_ext_desc_data ][ 0 ] + ": " + + getOptions().getExtDescNodeDataToReturn().toString() ); } - - else if ( title.equals( Configuration.clickto_options[ Configuration.open_tax_web ][ 0 ] ) ) { _node_popup_menu_items[ i ].setEnabled( isCanOpenTaxWeb( node ) ); } @@ -3599,7 +3595,7 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee AptxUtil.launchWebBrowser( new URI( uri_str ), isApplet(), isApplet() ? obtainApplet() : null, - "_aptx_seq" ); + "_aptx_seq" ); } catch ( final IOException e ) { AptxUtil.showErrorMessage( this, e.toString() ); @@ -3627,7 +3623,7 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee AptxUtil.launchWebBrowser( new URI( uri_str ), isApplet(), isApplet() ? obtainApplet() : null, - "_aptx_seq" ); + "_aptx_seq" ); } catch ( final IOException e ) { AptxUtil.showErrorMessage( this, e.toString() ); @@ -3710,7 +3706,7 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee AptxUtil.launchWebBrowser( new URI( uri_str ), isApplet(), isApplet() ? obtainApplet() : null, - "_aptx_tax" ); + "_aptx_tax" ); } catch ( final IOException e ) { AptxUtil.showErrorMessage( this, e.toString() ); @@ -3740,20 +3736,20 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee if ( !node.isRoot() ) { if ( getPhylogenyGraphicsType() == PHYLOGENY_GRAPHICS_TYPE.EURO_STYLE ) { TreePanel.drawString( FORMATTER_BRANCH_LENGTH.format( node.getDistanceToParent() ), node.getParent() - .getXcoord() + EURO_D, node.getYcoord() - getTreeFontSet().getSmallMaxDescent(), g ); + .getXcoord() + EURO_D, node.getYcoord() - getTreeFontSet().getSmallMaxDescent(), g ); } else if ( getPhylogenyGraphicsType() == PHYLOGENY_GRAPHICS_TYPE.ROUNDED ) { TreePanel.drawString( FORMATTER_BRANCH_LENGTH.format( node.getDistanceToParent() ), node.getParent() - .getXcoord() + ROUNDED_D, node.getYcoord() - getTreeFontSet().getSmallMaxDescent(), g ); + .getXcoord() + ROUNDED_D, node.getYcoord() - getTreeFontSet().getSmallMaxDescent(), g ); } else { TreePanel.drawString( FORMATTER_BRANCH_LENGTH.format( node.getDistanceToParent() ), node.getParent() - .getXcoord() + 3, node.getYcoord() - getTreeFontSet().getSmallMaxDescent(), g ); + .getXcoord() + 3, node.getYcoord() - getTreeFontSet().getSmallMaxDescent(), g ); } } else { TreePanel.drawString( FORMATTER_BRANCH_LENGTH.format( node.getDistanceToParent() ), 3, node.getYcoord() - - getTreeFontSet().getSmallMaxDescent(), g ); + - getTreeFontSet().getSmallMaxDescent(), g ); } } @@ -3775,7 +3771,7 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee final float dx = x2 - x1; final float dy = y2 - y1; _cubic_curve.setCurve( x1, y1, x1 + ( dx * 0.4f ), y1 + ( dy * 0.2f ), x1 + ( dx * 0.6f ), y1 - + ( dy * 0.8f ), x2, y2 ); + + ( dy * 0.8f ), x2, y2 ); ( g ).draw( _cubic_curve ); } else { @@ -3814,7 +3810,7 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee final float dx = x2 - x1; final float dy = y2 - y1; _cubic_curve.setCurve( x1, y1, x1 + ( dx * 0.4f ), y1 + ( dy * 0.2f ), x1 + ( dx * 0.6f ), y1 - + ( dy * 0.8f ), x2, y2 ); + + ( dy * 0.8f ), x2, y2 ); g.draw( _cubic_curve ); } else { @@ -4077,13 +4073,13 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee not_first = true; } sb.append( FORMATTER_CONFIDENCE.format( ForesterUtil.round( value, getOptions() - .getNumberOfDigitsAfterCommaForConfidenceValues() ) ) ); + .getNumberOfDigitsAfterCommaForConfidenceValues() ) ) ); if ( getOptions().isShowConfidenceStddev() ) { if ( confidence.getStandardDeviation() != Confidence.CONFIDENCE_DEFAULT_VALUE ) { sb.append( "(" ); sb.append( FORMATTER_CONFIDENCE.format( ForesterUtil.round( confidence - .getStandardDeviation(), getOptions() - .getNumberOfDigitsAfterCommaForConfidenceValues() ) ) ); + .getStandardDeviation(), getOptions() + .getNumberOfDigitsAfterCommaForConfidenceValues() ) ) ); sb.append( ")" ); } } @@ -4109,10 +4105,10 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee final String conf_str = sb.toString(); TreePanel.drawString( conf_str, parent_x - + ( ( x - parent_x - getTreeFontSet().getFontMetricsSmall() - .stringWidth( conf_str ) ) / 2 ), - ( node.getYcoord() + getTreeFontSet().getSmallMaxAscent() ) - 1, - g ); + + ( ( x - parent_x - getTreeFontSet().getFontMetricsSmall() + .stringWidth( conf_str ) ) / 2 ), + ( node.getYcoord() + getTreeFontSet().getSmallMaxAscent() ) - 1, + g ); } } @@ -4129,18 +4125,18 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee g.setColor( Color.BLUE ); } TreePanel - .drawString( gained, - parent_x - + ( ( x - parent_x - getFontMetricsForLargeDefaultFont().stringWidth( gained ) ) / 2 ), - ( node.getYcoord() - getFontMetricsForLargeDefaultFont().getMaxDescent() ), - g ); + .drawString( gained, + parent_x + + ( ( x - parent_x - getFontMetricsForLargeDefaultFont().stringWidth( gained ) ) / 2 ), + ( node.getYcoord() - getFontMetricsForLargeDefaultFont().getMaxDescent() ), + g ); g.setColor( getTreeColorSet().getLostCharactersColor() ); TreePanel - .drawString( lost, - parent_x - + ( ( x - parent_x - getFontMetricsForLargeDefaultFont().stringWidth( lost ) ) / 2 ), - ( node.getYcoord() + getFontMetricsForLargeDefaultFont().getMaxAscent() ), - g ); + .drawString( lost, + parent_x + + ( ( x - parent_x - getFontMetricsForLargeDefaultFont().stringWidth( lost ) ) / 2 ), + ( node.getYcoord() + getFontMetricsForLargeDefaultFont().getMaxAscent() ), + g ); } } @@ -4173,16 +4169,16 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee || ( getOptions().isShowDefaultNodeShapesInternal() && node.isInternal() ) || ( getOptions().isShowDefaultNodeShapesForMarkedNodes() && ( node.getNodeData().getNodeVisualData() != null ) && ( !node.getNodeData() - .getNodeVisualData().isEmpty() ) ) - || ( getControlPanel().isUseVisualStyles() && ( ( node.getNodeData().getNodeVisualData() != null ) && ( ( node - .getNodeData().getNodeVisualData().getNodeColor() != null ) - || ( node.getNodeData().getNodeVisualData().getSize() != NodeVisualData.DEFAULT_SIZE ) - || ( node.getNodeData().getNodeVisualData().getFillType() != NodeFill.DEFAULT ) || ( node - .getNodeData().getNodeVisualData().getShape() != NodeShape.DEFAULT ) ) ) ) - || ( getControlPanel().isEvents() && node.isHasAssignedEvent() && ( node.getNodeData().getEvent() - .isDuplication() - || node.getNodeData().getEvent().isSpeciation() || node.getNodeData().getEvent() - .isSpeciationOrDuplication() ) ) ) { + .getNodeVisualData().isEmpty() ) ) + || ( getControlPanel().isUseVisualStyles() && ( ( node.getNodeData().getNodeVisualData() != null ) && ( ( node + .getNodeData().getNodeVisualData().getNodeColor() != null ) + || ( node.getNodeData().getNodeVisualData().getSize() != NodeVisualData.DEFAULT_SIZE ) + || ( node.getNodeData().getNodeVisualData().getFillType() != NodeFill.DEFAULT ) || ( node + .getNodeData().getNodeVisualData().getShape() != NodeShape.DEFAULT ) ) ) ) + || ( getControlPanel().isEvents() && node.isHasAssignedEvent() && ( node.getNodeData().getEvent() + .isDuplication() + || node.getNodeData().getEvent().isSpeciation() || node.getNodeData().getEvent() + .isSpeciationOrDuplication() ) ) ) { NodeVisualData vis = null; if ( getControlPanel().isUseVisualStyles() && ( node.getNodeData().getNodeVisualData() != null ) && ( !node.getNodeData().getNodeVisualData().isEmpty() ) ) { @@ -4342,7 +4338,7 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee if ( getControlPanel().isWriteBranchLengthValues() && ( ( getPhylogenyGraphicsType() == PHYLOGENY_GRAPHICS_TYPE.RECTANGULAR ) || ( getPhylogenyGraphicsType() == PHYLOGENY_GRAPHICS_TYPE.ROUNDED ) || ( getPhylogenyGraphicsType() == PHYLOGENY_GRAPHICS_TYPE.EURO_STYLE ) ) - && ( !node.isRoot() ) && ( node.getDistanceToParent() != PhylogenyDataUtil.BRANCH_LENGTH_DEFAULT ) ) { + && ( !node.isRoot() ) && ( node.getDistanceToParent() != PhylogenyDataUtil.BRANCH_LENGTH_DEFAULT ) ) { paintBranchLength( g, node, to_pdf, to_graphics_file ); } if ( !getControlPanel().isShowInternalData() && !node.isExternal() && !node.isCollapse() ) { @@ -4410,12 +4406,12 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee final boolean fGotRelationWithQuery = ( seqRelation.getRef0().isEqual( _query_sequence ) || seqRelation .getRef1().isEqual( _query_sequence ) ) && seqRelation.getType().equals( getControlPanel().getSequenceRelationTypeBox() - .getSelectedItem() ); + .getSelectedItem() ); if ( fGotRelationWithQuery ) { // we will underline the text to show that this sequence is ortholog to the query final double linePosX = node.getXcoord() + 2 + half_box_size; final String sConfidence = ( !getControlPanel().isShowSequenceRelationConfidence() || ( seqRelation .getConfidence() == null ) ) ? null : " (" + seqRelation.getConfidence().getValue() - + ")"; + + ")"; if ( sConfidence != null ) { float confidenceX = pos_x; if ( sb_str.length() > 0 ) { @@ -4424,7 +4420,7 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee } if ( confidenceX > linePosX ) { // let's only display confidence value if we are already displaying at least one of Prot/Gene Name and Taxonomy Code final int confidenceWidth = ( int ) new TextLayout( sConfidence, g.getFont(), _frc ) - .getBounds().getWidth(); + .getBounds().getWidth(); TreePanel.drawString( sConfidence, confidenceX, pos_y, g ); x += CONFIDENCE_LEFT_MARGIN + confidenceWidth; } @@ -4438,7 +4434,7 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee nodeTextBoundsWidth += 2; } g.drawLine( ( int ) linePosX + 1, 3 + ( int ) pos_y, ( int ) linePosX + x - + nodeTextBoundsWidth, 3 + ( int ) pos_y ); + + nodeTextBoundsWidth, 3 + ( int ) pos_y ); break; } } @@ -4469,7 +4465,7 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee } final String ann_str = TreePanelUtil.createAnnotationString( ann, getOptions().isShowAnnotationRefSource() ); TreePanel.drawString( ann_str, node.getXcoord() + x + 3 + half_box_size, node.getYcoord() - + ( getFontMetricsForLargeDefaultFont().getAscent() / down_shift_factor ), g ); + + ( getFontMetricsForLargeDefaultFont().getAscent() / down_shift_factor ), g ); _sb.setLength( 0 ); _sb.append( ann_str ); if ( _sb.length() > 0 ) { @@ -4494,22 +4490,22 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee } if ( getControlPanel().isShowBinaryCharacters() ) { TreePanel.drawString( node.getNodeData().getBinaryCharacters().getPresentCharactersAsStringBuffer() - .toString(), node.getXcoord() + x + 1 + half_box_size, node.getYcoord() - + ( getFontMetricsForLargeDefaultFont().getAscent() / down_shift_factor ), g ); + .toString(), node.getXcoord() + x + 1 + half_box_size, node.getYcoord() + + ( getFontMetricsForLargeDefaultFont().getAscent() / down_shift_factor ), g ); paintGainedAndLostCharacters( g, node, node.getNodeData().getBinaryCharacters() - .getGainedCharactersAsStringBuffer().toString(), node.getNodeData().getBinaryCharacters() - .getLostCharactersAsStringBuffer().toString() ); + .getGainedCharactersAsStringBuffer().toString(), node.getNodeData().getBinaryCharacters() + .getLostCharactersAsStringBuffer().toString() ); } else { TreePanel - .drawString( " " + node.getNodeData().getBinaryCharacters().getPresentCount(), - node.getXcoord() + x + 4 + half_box_size, - node.getYcoord() - + ( getFontMetricsForLargeDefaultFont().getAscent() / down_shift_factor ), - g ); + .drawString( " " + node.getNodeData().getBinaryCharacters().getPresentCount(), + node.getXcoord() + x + 4 + half_box_size, + node.getYcoord() + + ( getFontMetricsForLargeDefaultFont().getAscent() / down_shift_factor ), + g ); paintGainedAndLostCharacters( g, node, "+" + node.getNodeData().getBinaryCharacters().getGainedCount(), "-" - + node.getNodeData().getBinaryCharacters().getLostCount() ); + + node.getNodeData().getBinaryCharacters().getLostCount() ); } } } @@ -4666,7 +4662,7 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee if ( isInFoundNodes( node ) || isInCurrentExternalNodes( node ) ) { g.setColor( getColorForFoundNode( node ) ); drawRectFilled( node.getXSecondary() - OVERVIEW_FOUND_NODE_BOX_SIZE_HALF, node.getYSecondary() - - OVERVIEW_FOUND_NODE_BOX_SIZE_HALF, OVERVIEW_FOUND_NODE_BOX_SIZE, OVERVIEW_FOUND_NODE_BOX_SIZE, g ); + - OVERVIEW_FOUND_NODE_BOX_SIZE_HALF, OVERVIEW_FOUND_NODE_BOX_SIZE, OVERVIEW_FOUND_NODE_BOX_SIZE, g ); } float new_x = 0; if ( !node.isExternal() && !node.isCollapse() ) { @@ -4728,7 +4724,7 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee && !node.isRoot() && ( ( getPhylogenyGraphicsType() == PHYLOGENY_GRAPHICS_TYPE.ROUNDED ) || ( getPhylogenyGraphicsType() == PHYLOGENY_GRAPHICS_TYPE.RECTANGULAR ) || ( getPhylogenyGraphicsType() == PHYLOGENY_GRAPHICS_TYPE.EURO_STYLE ) ) - && node.getBranchData().isHasConfidences() ) { + && node.getBranchData().isHasConfidences() ) { paintConfidenceValues( g, node, to_pdf, to_graphics_file ); } // Draw a line to root: @@ -4798,7 +4794,7 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee && !is_in_found_nodes && ( ( node.isExternal() && ( ( _external_node_index % dynamic_hiding_factor ) != 1 ) ) || ( !node .isExternal() && ( ( new_x_min < 20 ) || ( ( _y_distance * node.getNumberOfExternalNodes() ) < getFontMetricsForLargeDefaultFont() - .getHeight() ) ) ) ) ) { + .getHeight() ) ) ) ) ) { return; } final int x = paintNodeData( g, node, to_graphics_file, to_pdf, is_in_found_nodes ); @@ -4839,7 +4835,7 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee if ( getOptions().isRightLineUpDomains() ) { rds.render( ( float ) ( ( getMaxDistanceToRoot() * getXcorrectionFactor() ) + _length_of_longest_text + ( ( _longest_domain - rds.getTotalLength() ) * rds - .getRenderingFactorWidth() ) ), node.getYcoord() - ( h / 2.0f ), g, this, to_pdf ); + .getRenderingFactorWidth() ) ), node.getYcoord() - ( h / 2.0f ), g, this, to_pdf ); } else { rds.render( ( float ) ( ( getMaxDistanceToRoot() * getXcorrectionFactor() ) + _length_of_longest_text ), @@ -4856,12 +4852,12 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee else { if ( getOptions().isRightLineUpDomains() ) { rds.render( ( ( getPhylogeny().getFirstExternalNode().getXcoord() + _length_of_longest_text ) - 20 ) - + ( ( _longest_domain - rds.getTotalLength() ) * rds - .getRenderingFactorWidth() ), - node.getYcoord() - ( h / 2.0f ), - g, - this, - to_pdf ); + + ( ( _longest_domain - rds.getTotalLength() ) * rds + .getRenderingFactorWidth() ), + node.getYcoord() - ( h / 2.0f ), + g, + this, + to_pdf ); } else { rds.render( getPhylogeny().getFirstExternalNode().getXcoord() + _length_of_longest_text, @@ -4900,7 +4896,7 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee && ( node.getNodeData().getSequence().isMolecularSequenceAligned() ) && ( !ForesterUtil.isEmpty( node.getNodeData().getSequence().getMolecularSequence() ) ) ) { final RenderableMsaSequence rs = RenderableMsaSequence.createInstance( node.getNodeData().getSequence() - .getMolecularSequence(), node.getNodeData().getSequence().getType(), getConfiguration() ); + .getMolecularSequence(), node.getNodeData().getSequence().getType(), getConfiguration() ); if ( rs != null ) { final int default_height = 7; float y = getYdistance(); @@ -4975,9 +4971,9 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee final private void paintPhylogenyLite( final Graphics2D g ) { _phylogeny - .getRoot() - .setXSecondary( ( float ) ( getVisibleRect().x + getOvXPosition() + ( MOVE / ( getVisibleRect().width / getOvRectangle() - .getWidth() ) ) ) ); + .getRoot() + .setXSecondary( ( float ) ( getVisibleRect().x + getOvXPosition() + ( MOVE / ( getVisibleRect().width / getOvRectangle() + .getWidth() ) ) ) ); _phylogeny.getRoot().setYSecondary( ( getVisibleRect().y + getOvYStart() ) ); final Stroke s = g.getStroke(); g.setStroke( STROKE_05 ); @@ -5077,7 +5073,7 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee final Rectangle2D nodeTextBounds = new TextLayout( label, g.getFont(), new FontRenderContext( null, false, false ) ) - .getBounds(); + .getBounds(); g.fillRect( ( int ) start_x - 1, ( int ) start_y - 8, ( int ) nodeTextBounds.getWidth() + 4, 11 ); g.setColor( getTreeColorSet().getBackgroundColor() ); } @@ -5556,7 +5552,7 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee ann_str = ann.toString(); } sb.append( SequenceWriter.toFasta( ann_str, n.getNodeData().getSequence() - .getMolecularSequence(), 60 ) ); + .getMolecularSequence(), 60 ) ); data.add( sb.toString() ); } break; @@ -5649,7 +5645,7 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee else if ( getConfiguration().getExtNodeDataReturnOn() == EXT_NODE_DATA_RETURN_ON.WINODW ) { if ( sb.length() < 1 ) { TreePanelUtil.showInformationMessage( this, "No Appropriate Data (" + obtainTitleForExtDescNodeData() - + ")", "Descendants of selected node do not contain selected data" ); + + ")", "Descendants of selected node do not contain selected data" ); clearCurrentExternalNodesDataBuffer(); } else { @@ -5691,10 +5687,10 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee try { if ( ( node.getName().length() > 0 ) || ( node.getNodeData().isHasTaxonomy() && !TreePanelUtil.isTaxonomyEmpty( node.getNodeData() - .getTaxonomy() ) ) - || ( node.getNodeData().isHasSequence() && !TreePanelUtil.isSequenceEmpty( node.getNodeData() - .getSequence() ) ) || ( node.getNodeData().isHasDate() ) - || ( node.getNodeData().isHasDistribution() ) || node.getBranchData().isHasConfidences() ) { + .getTaxonomy() ) ) + || ( node.getNodeData().isHasSequence() && !TreePanelUtil.isSequenceEmpty( node.getNodeData() + .getSequence() ) ) || ( node.getNodeData().isHasDate() ) + || ( node.getNodeData().isHasDistribution() ) || node.getBranchData().isHasConfidences() ) { _popup_buffer.setLength( 0 ); short lines = 0; if ( node.getName().length() > 0 ) { @@ -5858,14 +5854,14 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee _popup_buffer.append( "] " ); } _popup_buffer - .append( FORMATTER_CONFIDENCE.format( ForesterUtil.round( confidence.getValue(), - getOptions() - .getNumberOfDigitsAfterCommaForConfidenceValues() ) ) ); + .append( FORMATTER_CONFIDENCE.format( ForesterUtil.round( confidence.getValue(), + getOptions() + .getNumberOfDigitsAfterCommaForConfidenceValues() ) ) ); if ( confidence.getStandardDeviation() != Confidence.CONFIDENCE_DEFAULT_VALUE ) { _popup_buffer.append( " (sd=" ); _popup_buffer.append( FORMATTER_CONFIDENCE.format( ForesterUtil.round( confidence - .getStandardDeviation(), getOptions() - .getNumberOfDigitsAfterCommaForConfidenceValues() ) ) ); + .getStandardDeviation(), getOptions() + .getNumberOfDigitsAfterCommaForConfidenceValues() ) ) ); _popup_buffer.append( ")" ); } } @@ -5886,7 +5882,7 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee if ( _popup_buffer.length() > 0 ) { if ( !getConfiguration().isUseNativeUI() ) { _rollover_popup - .setBorder( BorderFactory.createLineBorder( getTreeColorSet().getBranchColor() ) ); + .setBorder( BorderFactory.createLineBorder( getTreeColorSet().getBranchColor() ) ); _rollover_popup.setBackground( getTreeColorSet().getBackgroundColor() ); if ( isInFoundNodes0( node ) && !isInFoundNodes1( node ) ) { _rollover_popup.setForeground( getTreeColorSet().getFoundColor0() ); @@ -5909,7 +5905,7 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee _rollover_popup, e.getLocationOnScreen().x + 10, e.getLocationOnScreen().y - - ( lines * 20 ) ); + - ( lines * 20 ) ); _node_desc_popup.show(); } } @@ -5995,7 +5991,7 @@ public final class TreePanel extends JPanel implements ActionListener, MouseWhee if ( getMainPanel().getMainFrame() == null ) { // Must be "E" applet version. ( ( ArchaeopteryxE ) ( ( MainPanelApplets ) getMainPanel() ).getApplet() ) - .setSelectedTypeInTypeMenu( getPhylogenyGraphicsType() ); + .setSelectedTypeInTypeMenu( getPhylogenyGraphicsType() ); } else { getMainPanel().getMainFrame().setSelectedTypeInTypeMenu( getPhylogenyGraphicsType() ); diff --git a/forester/java/src/org/forester/phylogeny/data/NodeDataField.java b/forester/java/src/org/forester/phylogeny/data/NodeDataField.java index c779c38..e567790 100644 --- a/forester/java/src/org/forester/phylogeny/data/NodeDataField.java +++ b/forester/java/src/org/forester/phylogeny/data/NodeDataField.java @@ -17,37 +17,37 @@ public enum NodeDataField { DOMAINS_ALL, DOMAINS_COLLAPSED_PER_PROTEIN; - + @Override public String toString() { switch ( this ) { case DOMAINS_ALL: - return "Domain"; + return "Domains"; case DOMAINS_COLLAPSED_PER_PROTEIN: - return "Domain (collapsed per protein)"; + return "Domains (collapsed per protein)"; case EVENT: - return "Event"; + return "Events"; case GENE_NAME: - return "Gene Name"; + return "Gene Names"; case GO_TERM_IDS: - return "GO Term ID"; + return "GO Term IDs"; case NODE_NAME: - return "Node Name"; + return "Node Names"; case SEQ_ANNOTATIONS: - return "Sequence Annotation"; + return "Sequence Annotations"; case SEQUENCE_ACC: - return "Sequence Accessor"; + return "Sequence Accessors"; case SEQUENCE_MOL_SEQ_FASTA: - return "Molecular Sequence (Fasta)"; + return "Molecular Sequences (Fasta)"; case SEQUENCE_NAME: - return "Sequence Name"; + return "Sequence Names"; case SEQUENCE_SYMBOL: - return "Sequence Symbol"; + return "Sequence Symbols"; case TAXONOMY_CODE: - return "Taxonomy Code"; + return "Taxonomy Codes"; case TAXONOMY_SCIENTIFIC_NAME: - return "Scientific Name"; + return "Scientific Names"; case UNKNOWN: - return "User/UI Selected Data Field(s)"; + return "User Selected Data Fields"; default: throw new IllegalArgumentException(); } -- 1.7.10.2