import org.forester.archaeopteryx.Options.NODE_LABEL_DIRECTION;
import org.forester.archaeopteryx.Options.OVERVIEW_PLACEMENT_TYPE;
import org.forester.archaeopteryx.Options.PHYLOGENY_GRAPHICS_TYPE;
+import org.forester.phylogeny.data.NodeData.NODE_DATA;
import org.forester.phylogeny.data.NodeVisualization;
import org.forester.phylogeny.data.NodeVisualization.NodeFill;
import org.forester.phylogeny.data.NodeVisualization.NodeShape;
private boolean _show_domain_labels = true;
private boolean _abbreviate_scientific_names = false;
private boolean _color_labels_same_as_parent_branch = false;
- private int _default_bootstrap_samples = -1;
private boolean _show_default_node_shapes = false;
private NodeShape _default_node_shape = NodeShape.CIRCLE;
private NodeFill _default_node_fill = NodeFill.GRADIENT;
private short _default_node_shape_size = Constants.DEFAULT_NODE_SHAPE_SIZE_DEFAULT;
private boolean _taxonomy_colorize_node_shapes = false;
+ private int _default_bootstrap_samples = -1;
+ private File _path_to_local_mafft = null;
+ private File _path_to_local_fastme = null;
+ private File _path_to_local_raxml = null;
+ private File _path_to_local_clustalo = null;
final static int display_as_phylogram = 0;
final static int show_node_names = 1;
final static int show_tax_code = 2;
final static int add_new_node = 13;
final static int edit_node_data = 14;
final static int sort_descendents = 15;
+ final static int get_ext_desc_data = 16;
// ---------------------------
// Display options for trees
// ---------------------------
final static String clickto_options[][] = {
{ "Display Node Data", "display" }, { "Collapse/Uncollapse", "display" }, { "Root/Reroot", "display" },
{ "Sub/Super Tree", "display" }, { "Swap Descendants", "display" }, { "Colorize Subtree", "display" },
- { "Open Sequence Web", "display" }, { "Open Taxonomy Web", "display" }, { "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" } };
+ { "Open Sequence Web", "display" }, { "Open Taxonomy Web", "display" }, { "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" }, { "Get External Node Data", "display" } };
// This option is selected in the dropdown
int default_clickto = Configuration.display_node_data;
// --------------
private Color _gui_button_border_color = Constants.BUTTON_BORDER_COLOR_DEFAULT;
private Color _domain_structure_font_color = Constants.DOMAIN_STRUCTURE_FONT_COLOR_DEFAULT;
private Color _domain_structure_base_color = Constants.DOMAIN_STRUCTURE_BASE_COLOR_DEFAULT;
+ private NODE_DATA _ext_desc_data_to_return;
private static String DEFAULT_FONT_FAMILY = "";
static {
for( final String font_name : Constants.DEFAULT_FONT_CHOICES ) {
else if ( name.equals( "sort_descendants" ) ) {
index = Configuration.sort_descendents;
}
+ else if ( name.equals( "get_ext_descendents_data" ) ) {
+ index = Configuration.get_ext_desc_data;
+ }
else if ( name.equals( "display_sequences" ) ) {
ForesterUtil
.printWarningMessage( Constants.PRG_NAME, "configuration key [display_sequences] is deprecated" );
return _default_bootstrap_samples;
}
+ public File getpathToLocalMafft() {
+ return _path_to_local_mafft;
+ }
+
+ public File getPathToLocalFastme() {
+ return _path_to_local_fastme;
+ }
+
+ public File getPathToLocalRaxml() {
+ return _path_to_local_raxml;
+ }
+
int getDefaultDisplayClicktoOption() {
return default_clickto;
}
_default_bootstrap_samples = default_bootstrap_samples;
}
+ private void setPathToLocalMafft( final File path_to_local_mafft ) {
+ _path_to_local_mafft = path_to_local_mafft;
+ }
+
+ private void setPathToLocalFastme( final File path_to_local_fastme ) {
+ _path_to_local_fastme = path_to_local_fastme;
+ }
+
+ private void setPathToLocalRaxml( final File path_to_local_raxml ) {
+ _path_to_local_raxml = path_to_local_raxml;
+ }
+
+ public File getPathToLocalClustalOmega() {
+ return _path_to_local_clustalo;
+ }
+
+ public void setPathToLocalClustalOmega( final File path_to_local_clustalo ) {
+ _path_to_local_clustalo = path_to_local_clustalo;
+ }
+
public void setDefaultNodeFill( final NodeFill default_node_fill ) {
_default_node_fill = default_node_fill;
}
"value for [default_number_of_bootstrap_resamples] cannot be negative" );
}
}
+ else if ( key.equals( "clustalo_local" ) ) {
+ final String str = ( ( String ) st.nextElement() ).trim();
+ if ( !ForesterUtil.isEmpty( str ) ) {
+ setPathToLocalClustalOmega( new File( str ) );
+ }
+ }
+ else if ( key.equals( "mafft_local" ) ) {
+ final String str = ( ( String ) st.nextElement() ).trim();
+ if ( !ForesterUtil.isEmpty( str ) ) {
+ setPathToLocalMafft( new File( str ) );
+ }
+ }
+ else if ( key.equals( "fastme_local" ) ) {
+ final String str = ( ( String ) st.nextElement() ).trim();
+ if ( !ForesterUtil.isEmpty( str ) ) {
+ setPathToLocalFastme( new File( str ) );
+ }
+ }
+ else if ( key.equals( "raxml_local" ) ) {
+ final String str = ( ( String ) st.nextElement() ).trim();
+ if ( !ForesterUtil.isEmpty( str ) ) {
+ setPathToLocalRaxml( new File( str ) );
+ }
+ }
else if ( key.equals( "show_scale" ) ) {
setShowScale( parseBoolean( ( String ) st.nextElement() ) );
}
else if ( key.equals( "taxonomy_colorize_node_shapes" ) ) {
setTaxonomyColorizeNodeShapes( parseBoolean( ( String ) st.nextElement() ) );
}
+ else if ( key.equals( "ext_descendents_data_to_return" ) ) {
+ final String s = ( ( String ) st.nextElement() ).trim();
+ if ( s.equalsIgnoreCase( "node_name" ) ) {
+ setExtDescNodeDataToReturn( NODE_DATA.NODE_NAME );
+ }
+ else if ( s.equalsIgnoreCase( "sequence_acc" ) ) {
+ setExtDescNodeDataToReturn( NODE_DATA.SEQUENCE_ACC );
+ }
+ else if ( s.equalsIgnoreCase( "sequence_mol_seq" ) ) {
+ setExtDescNodeDataToReturn( NODE_DATA.SEQUENCE_MOL_SEQ );
+ }
+ else if ( s.equalsIgnoreCase( "sequence_name" ) ) {
+ setExtDescNodeDataToReturn( NODE_DATA.SEQUENCE_NAME );
+ }
+ else if ( s.equalsIgnoreCase( "sequence_symbol" ) ) {
+ setExtDescNodeDataToReturn( NODE_DATA.SEQUENCE_SYMBOL );
+ }
+ else {
+ ForesterUtil.printWarningMessage( Constants.PRG_NAME, "unknown value [" + s
+ + "] for [ext_descendents_data_to_return]" );
+ }
+ }
+ else if ( key.equals( "label_for_get_ext_descendents_data" ) ) {
+ set( ( String ) st.nextElement() ).replaceAll( "_", " " );
+ }
else if ( st.countTokens() >= 2 ) { // counts the tokens that are not
// yet retrieved!
int key_index = -1;
public enum UI {
NATIVE, CROSSPLATFORM, NIMBUS, UNKNOWN
}
+
+ public NODE_DATA getExtDescNodeDataToReturn() {
+ return _ext_desc_data_to_return;
+ }
+
+ public void setExtDescNodeDataToReturn( final NODE_DATA ext_desc_data_to_return ) {
+ _ext_desc_data_to_return = ext_desc_data_to_return;
+ }
}