diff --git a/ware/TSNumberingWare.tsf b/ware/TSNumberingWare.tsf index 14b9263..76ad419 100644 --- a/ware/TSNumberingWare.tsf +++ b/ware/TSNumberingWare.tsf @@ -21,6 +21,7 @@ begin ilvl := ppr.NumPr.Ilvl.Val; pstyle := ppr.PStyle.Val; num := numbering_adapter_.NumId(num_id); + if ifnil(num) then return array("", nil); abstract_id := num.AbstractNumId.Val; abstract_num := numbering_adapter_.AbstractNumId(abstract_id); lvls := abstract_num.Lvls(); diff --git a/ware/TSSectWare.tsf b/ware/TSSectWare.tsf index 85f089f..fabad0f 100644 --- a/ware/TSSectWare.tsf +++ b/ware/TSSectWare.tsf @@ -1,7 +1,9 @@ type TSSectWare = class public function Create(); + function Destroy(); function Do(); + function AddElement(element: tslobj); public Elements: array of tslobj; @@ -25,3 +27,8 @@ begin // println("Top = {}, Right = {}, Bottom = {}, Left = {}, Header = {}, Footer = {}\n", // self.SectPr.PgMar.Top, self.SectPr.PgMar.Right, self.SectPr.PgMar.Bottom, self.SectPr.PgMar.Left, self.SectPr.PgMar.Header, self.SectPr.PgMar.Footer); end; + +function TSSectWare.AddElement(element: tslobj); +begin + Elements[length(Elements)] := element; +end;