special domain coloring
[jalview.git] / forester / java / src / org / forester / archaeopteryx / Options.java
index 4f92653..387bba6 100644 (file)
@@ -31,9 +31,9 @@ import org.forester.io.parsers.nhx.NHXParser.TAXONOMY_EXTRACTION;
 import org.forester.phylogeny.PhylogenyNode.NH_CONVERSION_SUPPORT_VALUE_STYLE;
 import org.forester.phylogeny.data.NodeData;
 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;
+import org.forester.phylogeny.data.NodeVisualData;
+import org.forester.phylogeny.data.NodeVisualData.NodeFill;
+import org.forester.phylogeny.data.NodeVisualData.NodeShape;
 import org.forester.util.ForesterUtil;
 
 /*
@@ -42,49 +42,50 @@ import org.forester.util.ForesterUtil;
 final public class Options {
 
     static final double                       MIN_CONFIDENCE_DEFAULT = 0.0;
-    private boolean                           _color_by_taxonomic_group;
-    private boolean                           _show_branch_length_values;
-    private boolean                           _internal_number_are_confidence_for_nh_parsing;
-    private boolean                           _show_scale;
-    private boolean                           _show_overview;
-    private boolean                           _antialias_screen;
+    private boolean                           _abbreviate_scientific_names;
+    private boolean                           _allow_errors_in_distance_to_parent;
     private boolean                           _antialias_print;
+    private boolean                           _antialias_screen;
+    private boolean                           _background_color_gradient;
+    private Font                              _base_font;
+    private CLADOGRAM_TYPE                    _cladogram_type;
+    private boolean                           _color_by_taxonomic_group;
+    private boolean                           _color_labels_same_as_parent_branch;
+    private NodeVisualData.NodeFill           _default_node_fill;
+    private NodeVisualData.NodeShape          _default_node_shape;
+    private short                             _default_node_shape_size;
+    private boolean                           _editable;
+    private NODE_DATA                         _ext_desc_data_to_return;
+    private boolean                           _graphics_export_using_actual_size;
     private boolean                           _graphics_export_visible_only;
-    private int                               _print_size_x;
-    private int                               _print_size_y;
+    private boolean                           _internal_number_are_confidence_for_nh_parsing;
+    private boolean                           _inverse_search_result;
+    private boolean                           _match_whole_terms_only;
     private double                            _min_confidence_value;
-    private boolean                           _print_black_and_white;
-    private boolean                           _print_using_actual_size;
-    private boolean                           _graphics_export_using_actual_size;
-    private PHYLOGENY_GRAPHICS_TYPE           _phylogeny_graphics_type;
-    private CLADOGRAM_TYPE                    _cladogram_type;
-    private OVERVIEW_PLACEMENT_TYPE           _ov_placement;
+    private NH_CONVERSION_SUPPORT_VALUE_STYLE _nh_conversion_support_value_style;
+    private boolean                           _nh_parsing_replace_underscores;
     private NODE_LABEL_DIRECTION              _node_label_direction;
-    private Font                              _base_font;
-    private boolean                           _match_whole_terms_only;
-    private boolean                           _search_case_sensitive;
+    private short                             _number_of_digits_after_comma_for_branch_length_values;
+    private short                             _number_of_digits_after_comma_for_confidence_values;
+    private OVERVIEW_PLACEMENT_TYPE           _ov_placement;
+    private PHYLOGENY_GRAPHICS_TYPE           _phylogeny_graphics_type;
+    private boolean                           _print_black_and_white;
     private float                             _print_line_width;
-    private boolean                           _inverse_search_result;
+    private int                               _print_size_x;
+    private int                               _print_size_y;
+    private boolean                           _print_using_actual_size;
     private double                            _scale_bar_length;
-    private short                             _number_of_digits_after_comma_for_confidence_values;
-    private short                             _number_of_digits_after_comma_for_branch_length_values;
-    private boolean                           _nh_parsing_replace_underscores;
-    private TAXONOMY_EXTRACTION               _taxonomy_extraction;
-    private boolean                           _editable;
-    private boolean                           _background_color_gradient;
-    private boolean                           _show_domain_labels;
+    private boolean                           _search_case_sensitive;
     private boolean                           _show_annotation_ref_source;
-    private boolean                           _color_labels_same_as_parent_branch;
-    private boolean                           _abbreviate_scientific_names;
-    private NodeVisualization.NodeShape       _default_node_shape;
-    private NodeVisualization.NodeFill        _default_node_fill;
-    private short                             _default_node_shape_size;
-    private boolean                           _taxonomy_colorize_node_shapes;
-    private boolean                           _show_default_node_shapes_internal;
-    private boolean                           _show_default_node_shapes_external;
     private boolean                           _show_confidence_stddev;
-    private NH_CONVERSION_SUPPORT_VALUE_STYLE _nh_conversion_support_value_style;
-    private NODE_DATA                         _ext_desc_data_to_return;
+    private boolean                           _show_default_node_shapes_external;
+    private boolean                           _show_default_node_shapes_internal;
+    private boolean                           _show_domain_labels;
+    private boolean                           _show_overview;
+    private boolean                           _show_scale;
+    private TAXONOMY_EXTRACTION               _taxonomy_extraction;
+    private boolean                           _line_up_renderable_node_data;
+    private boolean                           _right_align_domains;
 
     private Options() {
         init();
@@ -94,16 +95,24 @@ final public class Options {
         return _ext_desc_data_to_return;
     }
 
-    public final boolean isShowDomainLabels() {
-        return _show_domain_labels;
+    public boolean isAllowErrorsInDistanceToParent() {
+        return _allow_errors_in_distance_to_parent;
+    }
+
+    public boolean isAllowFontSizeChange() {
+        return true;
     }
 
     public final boolean isShowAnnotationRefSource() {
         return _show_annotation_ref_source;
     }
 
-    public final void setShowAnnotationRefSource( final boolean show_annotation_ref_source ) {
-        _show_annotation_ref_source = show_annotation_ref_source;
+    public final boolean isShowDomainLabels() {
+        return _show_domain_labels;
+    }
+
+    public final void setAllowErrorsInDistanceToParent( final boolean allow_errors_in_distance_to_parent ) {
+        _allow_errors_in_distance_to_parent = allow_errors_in_distance_to_parent;
     }
 
     public void setBackgroundColorGradient( final boolean background_color_gradient ) {
@@ -118,6 +127,10 @@ final public class Options {
         _ext_desc_data_to_return = ext_desc_data_to_return;
     }
 
+    public final void setShowAnnotationRefSource( final boolean show_annotation_ref_source ) {
+        _show_annotation_ref_source = show_annotation_ref_source;
+    }
+
     public void setShowDomainLabels( final boolean show_domain_labels ) {
         _show_domain_labels = show_domain_labels;
     }
@@ -210,6 +223,10 @@ final public class Options {
         return _background_color_gradient;
     }
 
+    final boolean isColorByTaxonomicGroup() {
+        return _color_by_taxonomic_group;
+    }
+
     final boolean isColorLabelsSameAsParentBranch() {
         return _color_labels_same_as_parent_branch;
     }
@@ -254,14 +271,6 @@ final public class Options {
         return _search_case_sensitive;
     }
 
-    final boolean isShowBranchLengthValues() {
-        return _show_branch_length_values;
-    }
-
-    final boolean isColorByTaxonomicGroup() {
-        return _color_by_taxonomic_group;
-    }
-
     boolean isShowConfidenceStddev() {
         return _show_confidence_stddev;
     }
@@ -282,10 +291,6 @@ final public class Options {
         return _show_scale;
     }
 
-    boolean isTaxonomyColorizeNodeShapes() {
-        return _taxonomy_colorize_node_shapes;
-    }
-
     final void setAbbreviateScientificTaxonNames( final boolean abbreviate_scientific_names ) {
         _abbreviate_scientific_names = abbreviate_scientific_names;
     }
@@ -306,6 +311,10 @@ final public class Options {
         _cladogram_type = cladogram_type;
     }
 
+    final void setColorByTaxonomicGroup( final boolean color_by_taxonomic_group ) {
+        _color_by_taxonomic_group = color_by_taxonomic_group;
+    }
+
     final void setDefaultNodeFill( final NodeFill default_node_fill ) {
         _default_node_fill = default_node_fill;
     }
@@ -400,14 +409,6 @@ final public class Options {
         _search_case_sensitive = search_case_sensitive;
     }
 
-    final void setShowBranchLengthValues( final boolean show_branch_length_values ) {
-        _show_branch_length_values = show_branch_length_values;
-    }
-
-    final void setColorByTaxonomicGroup( final boolean color_by_taxonomic_group ) {
-        _color_by_taxonomic_group = color_by_taxonomic_group;
-    }
-
     void setShowConfidenceStddev( final boolean show_confidence_stddev ) {
         _show_confidence_stddev = show_confidence_stddev;
     }
@@ -428,10 +429,6 @@ final public class Options {
         _show_scale = show_scale;
     }
 
-    void setTaxonomyColorizeNodeShapes( final boolean taxonomy_colorize_node_shapes ) {
-        _taxonomy_colorize_node_shapes = taxonomy_colorize_node_shapes;
-    }
-
     final void setTaxonomyExtraction( final TAXONOMY_EXTRACTION taxonomy_extraction ) {
         _taxonomy_extraction = taxonomy_extraction;
     }
@@ -440,8 +437,6 @@ final public class Options {
         _default_node_shape = NodeShape.CIRCLE;
         _default_node_fill = NodeFill.GRADIENT;
         _default_node_shape_size = Constants.DEFAULT_NODE_SHAPE_SIZE_DEFAULT;
-        _taxonomy_colorize_node_shapes = false;
-        _show_branch_length_values = false;
         _internal_number_are_confidence_for_nh_parsing = false;
         _show_scale = false;
         _antialias_screen = true;
@@ -461,7 +456,7 @@ final public class Options {
         }
         _min_confidence_value = MIN_CONFIDENCE_DEFAULT;
         _print_black_and_white = false;
-        _print_using_actual_size = false;
+        _print_using_actual_size = true;
         _graphics_export_using_actual_size = true;
         _phylogeny_graphics_type = PHYLOGENY_GRAPHICS_TYPE.RECTANGULAR;
         _base_font = new Font( Configuration.getDefaultFontFamilyName(), Font.PLAIN, 10 );
@@ -482,9 +477,11 @@ final public class Options {
         _show_annotation_ref_source = true;
         setAbbreviateScientificTaxonNames( false );
         _color_labels_same_as_parent_branch = false;
-        _show_confidence_stddev = true;
+        _show_confidence_stddev = false;
         _nh_conversion_support_value_style = NH_CONVERSION_SUPPORT_VALUE_STYLE.NONE;
         _ext_desc_data_to_return = NODE_DATA.UNKNOWN;
+        _line_up_renderable_node_data = true;
+        _right_align_domains = false;
     }
 
     final private void setNumberOfDigitsAfterCommaForBranchLength( final short number_of_digits_after_comma_for_branch_length_values ) {
@@ -500,7 +497,6 @@ final public class Options {
         if ( configuration != null ) {
             instance.setAntialiasScreen( configuration.isAntialiasScreen() );
             instance.setShowScale( configuration.isShowScale() );
-            instance.setShowBranchLengthValues( configuration.isShowBranchLengthValues() );
             instance.setShowOverview( configuration.isShowOverview() );
             instance.setColorByTaxonomicGroup( configuration.isColorByTaxonomicGroup() );
             instance.setCladogramType( configuration.getCladogramType() );
@@ -553,12 +549,14 @@ final public class Options {
             if ( configuration.getDefaultNodeShapeSize() >= 0 ) {
                 instance.setDefaultNodeShapeSize( configuration.getDefaultNodeShapeSize() );
             }
-            instance.setTaxonomyColorizeNodeShapes( configuration.isTaxonomyColorizeNodeShapes() );
             instance.setShowDefaultNodeShapesInternal( configuration.isShowDefaultNodeShapesInternal() );
             instance.setShowDefaultNodeShapesExternal( configuration.isShowDefaultNodeShapesExternal() );
             if ( configuration.getExtDescNodeDataToReturn() != null ) {
                 instance.setExtDescNodeDataToReturn( configuration.getExtDescNodeDataToReturn() );
             }
+            instance.setRightLineUpDomains( configuration.isRightLineUpDomains() );
+            instance.setLineUpRendarableNodeData( configuration.isLineUpRendarableNodeData() );
+            instance.setAllowErrorsInDistanceToParent( false );
         }
         return instance;
     }
@@ -568,7 +566,7 @@ final public class Options {
     }
 
     public static enum CLADOGRAM_TYPE {
-        NON_LINED_UP, EXT_NODE_SUM_DEP, TOTAL_NODE_SUM_DEP;
+        EXT_NODE_SUM_DEP, NON_LINED_UP, TOTAL_NODE_SUM_DEP;
     }
 
     public static enum NODE_LABEL_DIRECTION {
@@ -576,14 +574,14 @@ final public class Options {
     }
 
     public static enum PHYLOGENY_GRAPHICS_TYPE {
-        RECTANGULAR, TRIANGULAR, EURO_STYLE, ROUNDED, CONVEX, CURVED, UNROOTED, CIRCULAR;
+        CIRCULAR, CONVEX, CURVED, EURO_STYLE, RECTANGULAR, ROUNDED, TRIANGULAR, UNROOTED;
     }
 
     static enum OVERVIEW_PLACEMENT_TYPE {
-        UPPER_LEFT( "upper left" ),
-        UPPER_RIGHT( "upper right" ),
         LOWER_LEFT( "lower left" ),
-        LOWER_RIGHT( "lower right" );
+        LOWER_RIGHT( "lower right" ),
+        UPPER_LEFT( "upper left" ),
+        UPPER_RIGHT( "upper right" );
 
         private final String _name;
 
@@ -601,7 +599,19 @@ final public class Options {
         }
     }
 
-    public boolean isAllowFontSizeChange() {
-        return true;
+    final public boolean isLineUpRendarableNodeData() {
+        return _line_up_renderable_node_data;
+    }
+
+    final public boolean isRightLineUpDomains() {
+        return _right_align_domains;
+    }
+
+    final public void setLineUpRendarableNodeData( final boolean line_up_renderable_node_data ) {
+        _line_up_renderable_node_data = line_up_renderable_node_data;
+    }
+
+    final public void setRightLineUpDomains( final boolean right_align_domains ) {
+        _right_align_domains = right_align_domains;
     }
 }