Example usage for com.lowagie.text Paragraph add

List of usage examples for com.lowagie.text Paragraph add

Introduction

In this page you can find the example usage for com.lowagie.text Paragraph add.

Prototype

public boolean add(Object o) 

Source Link

Document

Adds an Object to the Paragraph.

Usage

From source file:org.gbif.ipt.task.Eml2Rtf.java

License:Apache License

/**
 * Add "Resultados" section.//from w w w  .j  a va 2s.com
 * 
 * @param doc Document
 * @param eml EML
 * @throws DocumentException if problem occurs during add
 */

private void addResul(Document doc) throws DocumentException {
    Paragraph p = new Paragraph();
    p.setAlignment(Element.ALIGN_JUSTIFIED);
    p.setFont(font);
    p.add(new Phrase(getText("rtf.results"), fontTitle));
    p.add(Chunk.NEWLINE);
    p.add(Chunk.NEWLINE);

    doc.add(p);
    p.clear();
}

From source file:org.gbif.ipt.task.Eml2Rtf.java

License:Apache License

/**
 * Add natural collections section./*from www . j  av a 2s . c  o m*/
 * 
 * @param doc Document
 * @param eml EML
 * @throws DocumentException if problem occurs during add
 */
private void addNaturalCollections(Document doc, Eml eml) throws DocumentException {
    if (exists(eml.getParentCollectionId()) || exists(eml.getCollectionName()) || exists(eml.getCollectionId())
            || !eml.getTemporalCoverages().isEmpty() || exists(eml.getSpecimenPreservationMethod())
            || !eml.getJgtiCuratorialUnits().isEmpty()) {
        Paragraph p = new Paragraph();
        p.setAlignment(Element.ALIGN_JUSTIFIED);
        p.setFont(font);

        p.add(new Phrase(getText("rtf.collections.description"), fontTitle));
        p.add(Chunk.NEWLINE);
        p.add(Chunk.NEWLINE);

        if (exists(eml.getCollectionName())) {
            p.add(new Phrase(getText("rtf.collections.name") + ". ", fontTitle));
            p.add(eml.getCollectionName());
            p.add(Chunk.NEWLINE);
        }

        if (exists(eml.getCollectionId())) {
            p.add(new Phrase(getText("rtf.collections.identifier") + ". ", fontTitle));
            p.add(eml.getCollectionId());
            p.add(Chunk.NEWLINE);
        }

        if (exists(eml.getParentCollectionId())) {
            p.add(new Phrase(getText("rtf.collections.parent") + ". ", fontTitle));
            p.add(eml.getParentCollectionId());
            p.add(Chunk.NEWLINE);
        }

        if (exists(eml.getSpecimenPreservationMethod())) {
            p.add(new Phrase(getText("rtf.collections.specimen") + ". ", fontTitle));
            VocabularyConcept vocabConcept = vocabManager.get(Constants.VOCAB_URI_PRESERVATION_METHOD)
                    .findConcept(eml.getSpecimenPreservationMethod());
            // write preservation method in default language as matched from vocabulary or original value
            if (exists(vocabConcept)) {
                p.add(vocabConcept.getPreferredTerm(DEFAULT_LANGUAGE).getTitle());
            } else {
                p.add(eml.getSpecimenPreservationMethod().replace("\r\n", "\n"));
            }
            p.add(Chunk.NEWLINE);
        }

        for (TemporalCoverage coverage : eml.getTemporalCoverages()) {
            if (coverage.getType() == TemporalCoverageType.FORMATION_PERIOD) {
                p.add(new Phrase(getText("rtf.collections.formatPeriod") + ". ", fontTitle));
                p.add(coverage.getFormationPeriod());
                p.add(Chunk.NEWLINE);
            }
        }
        for (TemporalCoverage coverage : eml.getTemporalCoverages()) {
            if (coverage.getType() == TemporalCoverageType.LIVING_TIME_PERIOD) {
                p.add(new Phrase(getText("rtf.collections.livingPeriod") + ". ", fontTitle));
                p.add(coverage.getLivingTimePeriod());
                p.add(Chunk.NEWLINE);
            }
        }

        for (JGTICuratorialUnit unit : eml.getJgtiCuratorialUnits()) {
            p.add(new Phrase(getText("rtf.collections.curatorial") + ". ", fontTitle));
            if (unit.getType() == JGTICuratorialUnitType.COUNT_RANGE) {
                p.add("Entre " + unit.getRangeStart() + " y " + unit.getRangeEnd());
            }
            if (unit.getType() == JGTICuratorialUnitType.COUNT_WITH_UNCERTAINTY) {
                p.add(unit.getRangeMean() + " " + getText("rtf.collections.curatorial.text") + " "
                        + unit.getUncertaintyMeasure());
            }
            p.add(" (" + unit.getUnitType() + ")");
            p.add(Chunk.NEWLINE);
        }
        if (!p.isEmpty()) {
            doc.add(p);
        }
        p.clear();
    }
}

From source file:org.gbif.ipt.task.Eml2Rtf.java

License:Apache License

/**
 * Add project data section./*from   ww w.j  a  v a  2s . c  o  m*/
 * 
 * @param doc Document
 * @param eml EML
 * @throws DocumentException if problem occurs during add
 */
private void addProjectData(Document doc, Eml eml) throws DocumentException {
    if (exists(eml.getProject().getTitle()) || exists(eml.getProject().getPersonnel().getFirstName())
            || exists(eml.getProject().getFunding())
            || exists(eml.getProject().getStudyAreaDescription().getDescriptorValue())
            || exists(eml.getProject().getDesignDescription())) {
        Map<String, String> roles = vocabManager.getI18nVocab(Constants.VOCAB_URI_ROLES, "es", false);
        String role = "";
        if (exists(eml.getProject().getPersonnel().getRole())) {
            role = " (" + roles.get(eml.getProject().getPersonnel().getRole()) + ")";
        }
        Paragraph p = new Paragraph();
        p.setAlignment(Element.ALIGN_JUSTIFIED);
        p.setFont(font);
        p.add(new Phrase(getText("rtf.project.details"), fontTitle));
        p.add(Chunk.NEWLINE);
        p.add(Chunk.NEWLINE);
        if (exists(eml.getProject().getTitle())) {
            p.add(new Phrase(getText("rtf.project.title") + ". ", fontTitle));
            p.add(eml.getProject().getTitle());
            p.add(Chunk.NEWLINE);
        }
        p.add(new Phrase(getText("rtf.project.personnel") + ". ", fontTitle));
        if (exists(eml.getProject().getPersonnel().getFirstName())) {
            p.add(eml.getProject().getPersonnel().getFirstName() + " "
                    + eml.getProject().getPersonnel().getLastName() + role);
            p.add(Chunk.NEWLINE);
        }
        if (exists(eml.getProject().getFunding())) {
            p.add(new Phrase(getText("rtf.project.funding") + ". ", fontTitle));
            p.add(eml.getProject().getFunding().replace("\r\n", "\n"));
            p.add(Chunk.NEWLINE);
        }
        if (exists(eml.getProject().getStudyAreaDescription().getDescriptorValue())) {
            p.add(new Phrase(getText("rtf.project.area") + ". ", fontTitle));
            p.add(eml.getProject().getStudyAreaDescription().getDescriptorValue().replace("\r\n", "\n"));
            p.add(Chunk.NEWLINE);
        }
        if (exists(eml.getProject().getDesignDescription())) {
            p.add(Chunk.NEWLINE);
            p.add(new Phrase(getText("rtf.project.design"), fontTitle));
            p.add(Chunk.NEWLINE);
            p.add(eml.getProject().getDesignDescription().replace("\r\n", "\n"));
            p.add(Chunk.NEWLINE);
        }
        doc.add(p);
        p.clear();
    }
}

From source file:org.gbif.ipt.task.Eml2Rtf.java

License:Apache License

/**
 * Add Biobliography section. For each Bibliography listed in the References section, include the Citation identifier
 * after the Citation. If there is no Citation, only a Citation Identifier, then it will appear by itself.
 * /*from  w  ww  .  j  a v a  2  s . co  m*/
 * @param doc Document
 * @param eml EML
 * @throws DocumentException if problem occurs during add
 */
private void addReferences(Document doc, Eml eml) throws DocumentException {
    if (exists(eml.getBibliographicCitationSet())
            && !eml.getBibliographicCitationSet().getBibliographicCitations().isEmpty()) {
        // start new paragraph
        Paragraph p = new Paragraph();
        p.setAlignment(Element.ALIGN_JUSTIFIED);
        p.setFont(font);
        p.add(new Phrase(getText("rtf.references"), fontTitle));
        p.add(Chunk.NEWLINE);

        // for each Bibliography listed in the References section, include the Citation identifier after the Citation
        for (Citation citation : eml.getBibliographicCitationSet().getBibliographicCitations()) {
            // add citation text
            if (exists(citation.getCitation())) {
                p.add(citation.getCitation().replace("\r\n", "\n"));
            }
            // add optional identifier attribute
            if (exists(citation.getIdentifier())) {
                p.add(" ");
                p.add(citation.getIdentifier());
            }
            // separate each citation by a new line
            p.add(Chunk.NEWLINE);
        }
        // add to document
        doc.add(p);
        p.clear();
    }
}

From source file:org.gbif.ipt.task.Eml2Rtf.java

License:Apache License

/**
 * Construct IPT URL public resource link, and add it to the document. Only public or registered resources can
 * have a public resource link.//from  w ww  .j ava  2  s. c o  m
 * </p>
 * e.g. Data published through GBIF: http://localhost:8090/ipt/resource.do?r=shortName
 * 
 * @param doc Document
 * @param resource Resource
 * @throws DocumentException if an error in adding to the document was encountered
 */
private void addResourceLink(Document doc, Resource resource) throws DocumentException {
    if (resource.getStatus() != PublicationStatus.PRIVATE) {
        // begin new paragraph
        Paragraph p = new Paragraph();
        p.setFont(font);

        // construct GBIF link
        p.add(new Phrase(getText("rtf.resourceLink") + " ", fontTitle));
        Anchor gbifLink = new Anchor("GBIF", fontLinkTitle);
        gbifLink.setReference(Constants.GBIF_HOME_PAGE_URL);
        //p.add(gbifLink);
        p.add(": ");

        // attach the IPT Public URL resource link
        URL url = resourceManager.getPublicResourceLink(resource.getShortname());
        String link = (url != null) ? url.toString() : null;
        // the link only gets added, if it isn't null
        if (link != null) {
            Anchor resourceLink = new Anchor(link, fontLink);
            resourceLink.setReference(link);
            p.add(resourceLink);
            p.add(Chunk.NEWLINE);
            doc.add(p);
            p.clear();
        }
    }
}

From source file:org.gbif.ipt.task.Eml2Rtf.java

License:Apache License

/**
 * Add Spatial coverage section./*from   w  w  w . j a  v  a 2s .  c om*/
 * 
 * @param doc Document
 * @param eml EML
 * @throws DocumentException if problem occurs during add
 */
private void addSpatialCoverage(Document doc, Eml eml) throws DocumentException {
    if (exists(eml.getGeospatialCoverages()) && !eml.getGeospatialCoverages().isEmpty()) {
        Paragraph p = new Paragraph();
        p.setAlignment(Element.ALIGN_JUSTIFIED);
        p.setFont(font);
        boolean firstCoverage = true;
        for (GeospatialCoverage coverage : eml.getGeospatialCoverages()) {
            if (firstCoverage) {
                firstCoverage = false;
            } else {
                p.add(Chunk.NEWLINE);
            }
            if (exists(coverage.getDescription())) {
                p.add(new Phrase(getText("rtf.spatialCoverage"), fontTitle));
                p.add(Chunk.NEWLINE);
                p.add(Chunk.NEWLINE);
                p.add(new Phrase(getText("rtf.spatialCoverage.general") + ". ", fontTitle));
                p.add(coverage.getDescription().replace("\r\n", "\n"));
                p.add(Chunk.NEWLINE);
            }
            p.add(new Phrase(getText("rtf.spatialCoverage.coordinates") + ". ", fontTitle));
            BBox coordinates = coverage.getBoundingCoordinates();
            p.add(CoordinateUtils.decToDms(coordinates.getMin().getLatitude(), CoordinateUtils.LATITUDE));
            p.add(" " + getText("rtf.spatialCoverage.and") + " ");
            p.add(CoordinateUtils.decToDms(coordinates.getMax().getLatitude(), CoordinateUtils.LATITUDE));
            p.add(" " + getText("rtf.spatialCoverage.latitude") + "; ");
            p.add(CoordinateUtils.decToDms(coordinates.getMin().getLongitude(), CoordinateUtils.LONGITUDE));
            p.add(" " + getText("rtf.spatialCoverage.and") + " ");
            p.add(CoordinateUtils.decToDms(coordinates.getMax().getLongitude(), CoordinateUtils.LONGITUDE));
            p.add(" " + getText("rtf.spatialCoverage.longitude") + " ");
            p.add(Chunk.NEWLINE);
        }
        doc.add(p);
        p.clear();
    }
}

From source file:org.gbif.ipt.task.Eml2Rtf.java

License:Apache License

/**
 * Add taxonomic coverages, writing in this order: description, ranks, then common names.
 * //w  w w .j  a va  2s.  co m
 * @param doc Document
 * @param eml EML object
 * @throws DocumentException if an error occurred adding to the Document
 */
private void addTaxonomicCoverages(Document doc, Eml eml, Locale local) throws DocumentException {
    // proceed, provided there is at least 1 Taxonomic Coverage to iterate over
    if (exists(eml.getTaxonomicCoverages()) && !eml.getTaxonomicCoverages().isEmpty()) {

        // begin new paragraph
        Paragraph p = new Paragraph();
        p.setAlignment(Element.ALIGN_JUSTIFIED);
        p.setFont(font);
        boolean firstTaxon = true;
        for (TaxonomicCoverage taxcoverage : eml.getTaxonomicCoverages()) {
            if (!firstTaxon) {
                p.add(Chunk.NEWLINE);
            }
            firstTaxon = false;
            p.add(new Phrase(getText("rtf.taxcoverage"), fontTitle));
            p.add(Chunk.NEWLINE);
            p.add(Chunk.NEWLINE);
            if (exists(taxcoverage.getDescription())) {
                p.add(new Phrase(getText("rtf.taxcoverage.description") + ". ", fontTitle));
                p.add(taxcoverage.getDescription().replace("\r\n", "\n"));
                p.add(Chunk.NEWLINE);
                p.add(Chunk.NEWLINE);
            }
            /*
            String requestedLocale = Strings.emptyToNull(XSSUtil.stripXSS(local.getLanguage()).trim());
            ResourceBundle resourceBundle = textProvider.getTexts(new Locale(requestedLocale));
            */
            Map<String, String> ranks = vocabManager.getI18nVocab(Constants.VOCAB_URI_RANKS, "es", false);
            boolean firstRank = true;
            for (String rank : ranks.keySet()) {
                boolean wroteRank = false;
                for (TaxonKeyword keyword : taxcoverage.getTaxonKeywords()) {
                    if (exists(keyword.getRank()) && keyword.getRank().equals(rank)) {
                        if (!wroteRank) {
                            if (firstRank) {
                                p.add(new Phrase(getText("rtf.taxcoverage.rank"), fontTitle));
                            }
                            p.add(Chunk.NEWLINE);
                            p.add(new Phrase(StringUtils.capitalize(ranks.get(rank)) + ". ", fontTitle)); //**
                            p.add(keyword.getScientificName());
                            wroteRank = true;
                            firstRank = false;
                        } else {
                            p.add(", " + keyword.getScientificName());
                        }
                    }
                }
            }
            p.add(Chunk.NEWLINE);
            boolean isFirst = true;
            for (TaxonKeyword keyword : taxcoverage.getTaxonKeywords()) {
                if (exists(keyword.getCommonName())) {
                    if (isFirst) {
                        p.add(new Phrase(getText("rtf.taxcoverage.common") + ". ", fontTitle)); //**
                    } else {
                        p.add(", ");
                    }
                    isFirst = false;
                    p.add(keyword.getCommonName());
                }
            }
        }
        p.add(Chunk.NEWLINE);
        doc.add(p);
        p.clear();
    }
}

From source file:org.gbif.ipt.task.Eml2Rtf.java

License:Apache License

/**
 * Add temporal coverages section./*  w w w  .  j  a  v a  2s .c  o  m*/
 * 
 * @param doc Document
 * @param eml EML
 * @throws DocumentException if problem occurs during add
 */
private void addTemporalCoverages(Document doc, Eml eml, Locale loc) throws DocumentException {
    if (exists(eml.getTemporalCoverages()) && !eml.getTemporalCoverages().isEmpty()) {
        Paragraph p = new Paragraph();
        p.setAlignment(Element.ALIGN_JUSTIFIED);
        p.setFont(font);
        DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.LONG, loc);
        SimpleDateFormat timeFormat = new SimpleDateFormat("SSS", loc);
        SimpleDateFormat yearFormat = new SimpleDateFormat("yyyy", loc);
        boolean firstCoverage = true;
        for (TemporalCoverage coverage : eml.getTemporalCoverages()) {
            if (coverage.getType().equals(TemporalCoverageType.SINGLE_DATE)) {
                if (coverage.getStartDate() != null) {
                    if (firstCoverage) {
                        firstCoverage = false;
                    } else {
                        p.add(Chunk.NEWLINE);
                    }
                    p.add(new Phrase(getText("rtf.tempcoverage"), fontTitle));
                    p.add(Chunk.NEWLINE);
                    if (timeFormat.format(coverage.getStartDate()).equals("001")) {
                        p.add(yearFormat.format(coverage.getStartDate()));
                    } else {
                        p.add(dateFormat.format(coverage.getStartDate()));
                    }
                    p.add(Chunk.NEWLINE);
                }
            } else if (coverage.getType() == TemporalCoverageType.DATE_RANGE) {
                if (coverage.getStartDate() != null && coverage.getEndDate() != null) {
                    if (firstCoverage) {
                        firstCoverage = false;
                    } else {
                        p.add(Chunk.NEWLINE);
                    }
                    p.add(new Phrase(getText("rtf.tempcoverage"), fontTitle));
                    p.add(Chunk.NEWLINE);
                    if (timeFormat.format(coverage.getStartDate()).equals("001")) {
                        p.add(yearFormat.format(coverage.getStartDate()));
                    } else {
                        p.add(dateFormat.format(coverage.getStartDate()));
                    }
                    p.add(" - ");
                    if (timeFormat.format(coverage.getEndDate()).equals("001")) {
                        p.add(yearFormat.format(coverage.getEndDate()));
                    } else {
                        p.add(dateFormat.format(coverage.getEndDate()));
                    }
                    p.add(Chunk.NEWLINE);
                }
            }
        }
        doc.add(p);
        p.clear();
    }
}

From source file:org.gtdfree.addons.PDFExportAddOn.java

License:Open Source License

/**
 * @param model//  ww  w . j  a  va2  s.  c o  m
 * @param doc
 * @param a
 * @throws DocumentException
 * @throws IOException
 * @throws BadElementException
 */
private void addSingleActionTable(GTDModel model, Document doc, Action a)
        throws DocumentException, IOException, BadElementException {
    Chunk ch;
    PdfPTable t;
    PdfPCell c;
    t = new PdfPTable(3);
    t.setSpacingBefore(5f);
    t.setWidthPercentage(100f);

    Paragraph ph = newParagraph();
    ch = newChunk(ID);
    ph.add(ch);
    ch = newChunk(String.valueOf(a.getId()));
    ch.getFont().setStyle(Font.BOLD);
    ph.add(ch);
    c = newCell(ph);
    t.addCell(c);

    ph = newParagraph();
    ch = newChunk(CREATED);
    ph.add(ch);
    ch = newChunk(ApplicationHelper.toISODateTimeString(a.getCreated()));
    ch.getFont().setStyle(Font.BOLD);
    ph.add(ch);
    c = newCell(ph);
    t.addCell(c);

    ph = newParagraph();
    if (a.isOpen()) {
        ch = newChunk(OPEN);
        ch.getFont().setStyle(Font.BOLD);
        ch.getFont().setColor(COLOR_OPEN);
        ph.add(ch);
        ch = newOpenChunk();
        ph.add(ch);
    } else if (a.isResolved()) {
        ch = newChunk(RESOLVED);
        ch.getFont().setStyle(Font.BOLD);
        ch.getFont().setColor(COLOR_RESOLVED);
        ph.add(ch);
        ch = newResolvedChunk();
        ph.add(ch);
    } else if (a.isDeleted()) {
        ch = newChunk(DELETED);
        ch.getFont().setStyle(Font.BOLD);
        ch.getFont().setColor(COLOR_DELETED);
        ph.add(ch);
        ch = newDeletedChunk();
        ph.add(ch);
    } else {
        ch = newChunk(STALLED);
        ch.getFont().setStyle(Font.BOLD);
        ch.getFont().setColor(COLOR_DELETED);
        ph.add(ch);
        ch = newStalledChunk();
        ph.add(ch);
    }
    c = newCell(ph);
    c.setHorizontalAlignment(Cell.ALIGN_RIGHT);
    t.addCell(c);

    ph = newParagraph();
    ch = newChunk(PRIORITY);
    ph.add(ch);
    ch = newChunk(a.getPriority() == null ? NONE : a.getPriority().toString());
    ch.getFont().setStyle(Font.BOLD);
    ph.add(ch);
    ch = newChunk(" ");
    ch.getFont().setStyle(Font.BOLD);
    ph.add(ch);

    if (a.getPriority() == null || a.getPriority() == Priority.None) {
        ch = newNoneStarChunk();
        ph.add(ch);
        ch = newNoneStarChunk();
        ph.add(ch);
        ch = newNoneStarChunk();
        ph.add(ch);
    } else if (a.getPriority() == Priority.Low) {
        ch = newLowStarChunk();
        ph.add(ch);
        ch = newNoneStarChunk();
        ph.add(ch);
        ch = newNoneStarChunk();
        ph.add(ch);
    } else if (a.getPriority() == Priority.Medium) {
        ch = newLowStarChunk();
        ph.add(ch);
        ch = newMediumStarChunk();
        ph.add(ch);
        ch = newNoneStarChunk();
        ph.add(ch);
    } else if (a.getPriority() == Priority.High) {
        ch = newLowStarChunk();
        ph.add(ch);
        ch = newMediumStarChunk();
        ph.add(ch);
        ch = newHighStarChunk();
        ph.add(ch);
    }

    c = newCell(ph);
    t.addCell(c);

    ph = newParagraph();
    ch = newChunk(REMINDER);
    ph.add(ch);
    ch = newChunk(a.getRemind() != null ? ApplicationHelper.toISODateString(a.getRemind()) : NONE);
    ch.getFont().setStyle(Font.BOLD);
    ph.add(ch);
    c = newCell(ph);
    t.addCell(c);

    ph = newParagraph();
    ch = newChunk(PROJECT);
    ph.add(ch);
    if (a.getProject() != null) {
        ch = newChunk(model.getProject(a.getProject()).getName());
    } else {
        ch = newChunk(NONE);
    }
    ch.getFont().setStyle(Font.BOLD);
    ph.add(ch);
    c = newCell(ph);
    t.addCell(c);

    c = newDescriptionCell(a.getDescription());
    c.setColspan(3);
    t.addCell(c);

    if (a.getUrl() != null) {

        ch = newChunk(a.getUrl().toString());
        ch.setAnchor(a.getUrl());
        ch.getFont().setColor(Color.BLUE);

        c = newCell(new Paragraph(ch));
        c.setColspan(3);
        t.addCell(c);
    }

    doc.add(t);
}

From source file:org.gtdfree.addons.PDFExportAddOn.java

License:Open Source License

private void addSingleActionRow(Action a, PdfPTable t)
        throws DocumentException, IOException, BadElementException {

    Chunk ch;//from  w w  w  . ja  v  a2 s . c  om
    PdfPCell c;

    // ID row
    Paragraph ph = newParagraph(String.valueOf(a.getId()));
    c = newCell(ph);
    c.setHorizontalAlignment(Cell.ALIGN_RIGHT);

    t.addCell(c);

    // Priority
    ph = newParagraph();
    if (a.getPriority() == null || a.getPriority() == Priority.None) {
        ch = newNoneStarChunk();
        ph.add(ch);
        ch = newNoneStarChunk();
        ph.add(ch);
        ch = newNoneStarChunk();
        ph.add(ch);
    } else if (a.getPriority() == Priority.Low) {
        ch = newLowStarChunk();
        ph.add(ch);
        ch = newNoneStarChunk();
        ph.add(ch);
        ch = newNoneStarChunk();
        ph.add(ch);
    } else if (a.getPriority() == Priority.Medium) {
        ch = newLowStarChunk();
        ph.add(ch);
        ch = newMediumStarChunk();
        ph.add(ch);
        ch = newNoneStarChunk();
        ph.add(ch);
    } else if (a.getPriority() == Priority.High) {
        ch = newLowStarChunk();
        ph.add(ch);
        ch = newMediumStarChunk();
        ph.add(ch);
        ch = newHighStarChunk();
        ph.add(ch);
    }
    c = newCell(ph);
    t.addCell(c);

    // description

    c = newDescriptionCell(a.getDescription());
    t.addCell(c);

    // reminder 

    ph = newParagraph(a.getRemind() != null ? ApplicationHelper.toDateString(a.getRemind()) : EMPTY);
    c = newCell(ph);
    c.setHorizontalAlignment(Cell.ALIGN_RIGHT);
    t.addCell(c);

    // status

    ph = newParagraph();
    if (a.isOpen()) {
        ch = newOpenChunk();
        ph.add(ch);
    } else if (a.isResolved()) {
        ch = newResolvedChunk();
        ph.add(ch);
    } else if (a.isDeleted()) {
        ch = newDeletedChunk();
        ph.add(ch);
    } else {
        ch = newStalledChunk();
        ph.add(ch);
    }
    c = newCell(ph);
    c.setHorizontalAlignment(Cell.ALIGN_RIGHT);
    t.addCell(c);

    /*if (a.getUrl()!=null) {
               
       ch= newChunk(a.getUrl().toString());
       ch.setAnchor(a.getUrl());
       ch.getFont().setColor(Color.BLUE);
               
       c= newCell(new Paragraph(ch));
       c.setColspan(3);
       t.addCell(c);
    }*/

}