@Override public void onValueChanged(final IClassification branch) { this.branchName.setValue(TextFormatting.UNDERLINE + I18N.localise(DatabaseConstants.BRANCH_KEY + ".name", branch.getName())); this.branchScientific.setValue(TextFormatting.ITALIC + I18N.localise(DatabaseConstants.BRANCH_KEY + ".apidae", branch.getScientific())); this.branchAuthority.setValue(I18N.localise(DatabaseConstants.BRANCH_KEY + ".discoveredBy", TextFormatting.BOLD + branch.getMemberSpecies()[0].getAuthority())); for (final IWidget widget : this.branchDescription) { this.deleteChild(widget); } this.branchDescription.clear(); String desc = branch.getDescription(); if (desc == null || Objects.equals(desc, "") || desc.contains("for.")) { desc = I18N.localise(DatabaseConstants.BRANCH_KEY + ".noDesc"); } StringBuilder line = new StringBuilder(); final List<String> descLines = new ArrayList<>(); for (final String str : desc.split(" ")) { if (RenderUtil.getTextWidth(line + " " + str) > 134) { descLines.add(TextFormatting.ITALIC + line.toString() + TextFormatting.RESET); line = new StringBuilder(); } line.append(' ').append(str); } descLines.add(line.toString()); int i = 0; for (final String dLine : descLines) { this.branchDescription.add(new ControlTextCentered(this, 84 + 12 * i++, dLine)); } } }
IAlleleSpecies species = ind.getGenome().getPrimary(); String branchBinomial = species.getBranch().getScientific(); String branchName = species.getBranch().getName(); String desc = species.getDescription(); StringBuilder descBody = new StringBuilder(TextFormatting.ITALIC.toString());