Package org.odftoolkit.odfdom.dom.element.text

Examples of org.odftoolkit.odfdom.dom.element.text.TextListItemElement


   */
  public OdfTextList(OdfFileDom ownerDoc, String[] itemList,
      char indentDelim, String listStyleName) {
    super(ownerDoc);
    OdfTextList[] listArray = new OdfTextList[10];
    TextListItemElement listItem;
    OdfTextParagraph para;
    String item;
    int level = 0;
    int lastLevel = 0;
    int lev; // loop counter

    listArray[0] = this;
    for (int i = 0; i < itemList.length; i++) {
      level = 0;
      item = itemList[i];

      // determine level of indenting by counting delimiters,
      // then get rid of the delimiters
      while (level < item.length() && item.charAt(level) == indentDelim) {
        level++;
      }
      item = item.substring(level);

      if (level > lastLevel) // open the sub-levels
      {
        for (lev = lastLevel + 1; lev <= level; lev++) {
          listArray[lev] = new OdfTextList(ownerDoc);
          listArray[lev].setTextStyleNameAttribute(listStyleName);
        }
      } else if (level < lastLevel) // close off the intervening lists
      {
        closeLevels(ownerDoc, listArray, lastLevel, level);
      }
      // now that we are at the proper level, add the item.
      listArray[level].setTextStyleNameAttribute(listStyleName);
      listItem = new TextListItemElement(ownerDoc);
      para = new OdfTextParagraph(ownerDoc);
      para.setTextContent(item);
      listItem.appendChild(para);
      listArray[level].appendChild(listItem);
      lastLevel = level;
    }

    // close off any remaining open lists
View Full Code Here


  private void closeLevels(OdfFileDom ownerDoc, OdfTextList[] listArray,
      int fromLevel, int toLevel) {
    for (int level = fromLevel; level > toLevel; level--) {
      if (!listArray[level - 1].hasChildNodes()) {
        /* Force a list item */
        listArray[level - 1].appendChild(new TextListItemElement(
            ownerDoc));
      }
      listArray[level - 1].getLastChild().appendChild(listArray[level]);
    }
  }
View Full Code Here

    TextListElement listElement = list.getOdfElement();
    listElement.setTextStyleNameAttribute(listStyle.getStyleNameAttribute());
  }

  public void decorateListItem(ListItem item) {
    TextListItemElement listItemElement = item.getOdfElement();
    Node child = listItemElement.getFirstChild();
    while (child != null) {
      if (child instanceof TextPElement) {
        TextPElement pElement = (TextPElement) child;
        pElement.setTextStyleNameAttribute(paragraphStyle.getStyleNameAttribute());
      }
View Full Code Here

   */
  public OdfTextList(OdfFileDom ownerDoc, String[] itemList,
      char indentDelim, String listStyleName) {
    super(ownerDoc);
    OdfTextList[] listArray = new OdfTextList[10];
    TextListItemElement listItem;
    OdfTextParagraph para;
    String item;
    int level = 0;
    int lastLevel = 0;
    int lev; // loop counter

    listArray[0] = this;
    for (int i = 0; i < itemList.length; i++) {
      level = 0;
      item = itemList[i];

      // determine level of indenting by counting delimiters,
      // then get rid of the delimiters
      while (level < item.length() && item.charAt(level) == indentDelim) {
        level++;
      }
      item = item.substring(level);

      if (level > lastLevel) // open the sub-levels
      {
        for (lev = lastLevel + 1; lev <= level; lev++) {
          listArray[lev] = new OdfTextList(ownerDoc);
          listArray[lev].setTextStyleNameAttribute(listStyleName);
        }
      } else if (level < lastLevel) // close off the intervening lists
      {
        closeLevels(ownerDoc, listArray, lastLevel, level);
      }
      // now that we are at the proper level, add the item.
      listArray[level].setTextStyleNameAttribute(listStyleName);
      listItem = new TextListItemElement(ownerDoc);
      para = new OdfTextParagraph(ownerDoc);
      para.setTextContent(item);
      listItem.appendChild(para);
      listArray[level].appendChild(listItem);
      lastLevel = level;
    }

    // close off any remaining open lists
View Full Code Here

  private void closeLevels(OdfFileDom ownerDoc, OdfTextList[] listArray,
      int fromLevel, int toLevel) {
    for (int level = fromLevel; level > toLevel; level--) {
      if (!listArray[level - 1].hasChildNodes()) {
        /* Force a list item */
        listArray[level - 1].appendChild(new TextListItemElement(
            ownerDoc));
      }
      listArray[level - 1].getLastChild().appendChild(listArray[level]);
    }
  }
View Full Code Here

    TextListElement listElement = list.getOdfElement();
    listElement.setTextStyleNameAttribute(listStyle.getStyleNameAttribute());
  }

  public void decorateListItem(ListItem item) {
    TextListItemElement listItemElement = item.getOdfElement();
    Node child = listItemElement.getFirstChild();
    while (child != null) {
      if (child instanceof TextPElement) {
        TextPElement pElement = (TextPElement) child;
        pElement.setTextStyleNameAttribute(paragraphStyle.getStyleNameAttribute());
      }
View Full Code Here

   * @param itemContent
   *            the list item content to be added.
   * @return the added ListItem.
   */
  public ListItem addItem(String itemContent) {
    TextListItemElement listItemElement = listElement.newTextListItemElement();
    ListItem item = new ListItem(listItemElement);
    item.setParagraphDecorator(decorator);
    item.setTextContent(itemContent);
    return item;
  }
View Full Code Here

   * @exception IndexOutOfBoundsException
   *                when the <code>location</code> is out of the List range.
   */
  public ListItem addItem(int location, String itemContent) {
    OdfFileDom ownerDocument = (OdfFileDom) listElement.getOwnerDocument();
    TextListItemElement listItemElement = ownerDocument.newOdfElement(TextListItemElement.class);
    Node refNode = getItemByLocation(location);
    listElement.insertBefore(listItemElement, refNode);
    ListItem item = new ListItem(listItemElement);
    item.setParagraphDecorator(decorator);
    item.setTextContent(itemContent);
View Full Code Here

   * @param item
   *            the list item to be added.
   * @return the added ListItem.
   */
  public ListItem addItem(ListItem item) {
    TextListItemElement itemElement = (TextListItemElement) (item.getOdfElement().cloneNode(true));
    listElement.appendChild(itemElement);
    ListItem newItem = new ListItem(itemElement);
    return newItem;
  }
View Full Code Here

   * @return the added ListItem.
   * @exception IndexOutOfBoundsException
   *                when the <code>location</code> is out of the List range.
   */
  public ListItem addItem(int location, ListItem item) {
    TextListItemElement itemElement = (TextListItemElement) (item.getOdfElement().cloneNode(true));
    Node refNode = getItemByLocation(location);
    listElement.insertBefore(itemElement, refNode);
    ListItem newItem = new ListItem(itemElement);
    return newItem;
  }
View Full Code Here

TOP

Related Classes of org.odftoolkit.odfdom.dom.element.text.TextListItemElement

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.