1 package eu.svjatoslav.sixth.core.document.content;
3 import eu.svjatoslav.commons.string.String2;
4 import eu.svjatoslav.commons.string.tokenizer.TokenizerMatch;
5 import eu.svjatoslav.sixth.core.document.text.FormattedText;
7 import java.util.ArrayList;
10 import static eu.svjatoslav.sixth.core.document.Helper.TG_DOCUMENT_PROPERTY;
12 public class ListElement implements Content {
13 public final FormattedText name;
14 public final int indent;
15 public final ListElement parent;
17 private final List<Content> content = new ArrayList<>();
19 public ListElement(FormattedText name, int indent, ListElement parent, String type) {
26 public void addContent(ListElement content) {
27 this.content.add(content);
30 public void parse(TokenizerMatch tm) {
32 if (tm.isGroup(TG_DOCUMENT_PROPERTY)) {
33 // System.out.println("DOCUMENT PROPERT!!!: " + tm.token);
37 if (tm.isGroup(null)) {
38 // System.out.println(" Plain text content: " + tm.token);
42 System.out.println("ERROR!!!! Unable to handle: " + tm);
47 public void toMD(StringBuilder sb, int i) {
49 String2 s = new String2();
50 s.addSuffix(" ", indent).addSuffix(type).addSuffix(" ").addSuffix(name.toMD()).addSuffix("\n");
51 sb.append(s.toString());
54 for (Content c : content) {
55 c.toMD(sb, indent + 2);