internal ListEntry(PAPX papx, Range parent, ListTables tables) : base(papx, parent) { if (tables != null) { ListFormatOverride override1 = tables.GetOverride(_props.GetIlfo()); _overrideLevel = override1.GetOverrideLevel(_props.GetIlvl()); _level = tables.GetLevel(override1.GetLsid(), _props.GetIlvl()); } else { //log.log(POILogger.WARN, "No ListTables found for ListEntry - document probably partly corrupt, and you may experience problems"); } }
public static String GetBulletText(ListTables listTables, Paragraph paragraph, int listId) { ListLevel listLevel = listTables.GetLevel(listId, paragraph.GetIlvl()); if (listLevel.GetNumberText() == null) return string.Empty; StringBuilder bulletBuffer = new StringBuilder(); char[] xst = listLevel.GetNumberText().ToCharArray(); foreach (char element in xst) { if (element < 9)//todo:review_antony { ListLevel numLevel = listTables.GetLevel(listId, element); int num = numLevel.GetStartAt(); bulletBuffer.Append(NumberFormatter.GetNumber(num, listLevel.GetNumberFormat())); if (numLevel == listLevel) { numLevel.SetStartAt(numLevel.GetStartAt() + 1); } } else { bulletBuffer.Append(element); } } byte follow = listLevel.GetTypeOfCharFollowingTheNumber(); switch (follow) { case 0: bulletBuffer.Append("\t"); break; case 1: bulletBuffer.Append(" "); break; default: break; } return bulletBuffer.ToString(); }