mirror of
https://github.com/unidoc/unioffice.git
synced 2025-04-29 13:49:10 +08:00
591 lines
17 KiB
Go
591 lines
17 KiB
Go
// Copyright 2017 Baliance. All rights reserved.
|
|
//
|
|
// Use of this source code is governed by the terms of the Affero GNU General
|
|
// Public License version 3.0 as published by the Free Software Foundation and
|
|
// appearing in the file LICENSE included in the packaging of this file. A
|
|
// commercial license can be purchased by contacting sales@baliance.com.
|
|
|
|
package wordprocessingml
|
|
|
|
import (
|
|
"encoding/xml"
|
|
"log"
|
|
)
|
|
|
|
type CT_PPrBase struct {
|
|
// Referenced Paragraph Style
|
|
PStyle *CT_String
|
|
// Keep Paragraph With Next Paragraph
|
|
KeepNext *CT_OnOff
|
|
// Keep All Lines On One Page
|
|
KeepLines *CT_OnOff
|
|
// Start Paragraph on Next Page
|
|
PageBreakBefore *CT_OnOff
|
|
// Text Frame Properties
|
|
FramePr *CT_FramePr
|
|
// Allow First/Last Line to Display on a Separate Page
|
|
WidowControl *CT_OnOff
|
|
// Numbering Definition Instance Reference
|
|
NumPr *CT_NumPr
|
|
// Suppress Line Numbers for Paragraph
|
|
SuppressLineNumbers *CT_OnOff
|
|
// Paragraph Borders
|
|
PBdr *CT_PBdr
|
|
// Paragraph Shading
|
|
Shd *CT_Shd
|
|
// Set of Custom Tab Stops
|
|
Tabs *CT_Tabs
|
|
// Suppress Hyphenation for Paragraph
|
|
SuppressAutoHyphens *CT_OnOff
|
|
// Use East Asian Typography Rules for First and Last Character per Line
|
|
Kinsoku *CT_OnOff
|
|
// Allow Line Breaking At Character Level
|
|
WordWrap *CT_OnOff
|
|
// Allow Punctuation to Extend Past Text Extents
|
|
OverflowPunct *CT_OnOff
|
|
// Compress Punctuation at Start of a Line
|
|
TopLinePunct *CT_OnOff
|
|
// Automatically Adjust Spacing of Latin and East Asian Text
|
|
AutoSpaceDE *CT_OnOff
|
|
// Automatically Adjust Spacing of East Asian Text and Numbers
|
|
AutoSpaceDN *CT_OnOff
|
|
// Right to Left Paragraph Layout
|
|
Bidi *CT_OnOff
|
|
// Automatically Adjust Right Indent When Using Document Grid
|
|
AdjustRightInd *CT_OnOff
|
|
// Use Document Grid Settings for Inter-Line Paragraph Spacing
|
|
SnapToGrid *CT_OnOff
|
|
// Spacing Between Lines and Above/Below Paragraph
|
|
Spacing *CT_Spacing
|
|
// Paragraph Indentation
|
|
Ind *CT_Ind
|
|
// Ignore Spacing Above and Below When Using Identical Styles
|
|
ContextualSpacing *CT_OnOff
|
|
// Use Left/Right Indents as Inside/Outside Indents
|
|
MirrorIndents *CT_OnOff
|
|
// Prevent Text Frames From Overlapping
|
|
SuppressOverlap *CT_OnOff
|
|
// Paragraph Alignment
|
|
Jc *CT_Jc
|
|
// Paragraph Text Flow Direction
|
|
TextDirection *CT_TextDirection
|
|
// Vertical Character Alignment on Line
|
|
TextAlignment *CT_TextAlignment
|
|
// Allow Surrounding Paragraphs to Tight Wrap to Text Box Contents
|
|
TextboxTightWrap *CT_TextboxTightWrap
|
|
// Associated Outline Level
|
|
OutlineLvl *CT_DecimalNumber
|
|
// Associated HTML div ID
|
|
DivId *CT_DecimalNumber
|
|
// Paragraph Conditional Formatting
|
|
CnfStyle *CT_Cnf
|
|
}
|
|
|
|
func NewCT_PPrBase() *CT_PPrBase {
|
|
ret := &CT_PPrBase{}
|
|
return ret
|
|
}
|
|
|
|
func (m *CT_PPrBase) MarshalXML(e *xml.Encoder, start xml.StartElement) error {
|
|
e.EncodeToken(start)
|
|
if m.PStyle != nil {
|
|
sepStyle := xml.StartElement{Name: xml.Name{Local: "w:pStyle"}}
|
|
e.EncodeElement(m.PStyle, sepStyle)
|
|
}
|
|
if m.KeepNext != nil {
|
|
sekeepNext := xml.StartElement{Name: xml.Name{Local: "w:keepNext"}}
|
|
e.EncodeElement(m.KeepNext, sekeepNext)
|
|
}
|
|
if m.KeepLines != nil {
|
|
sekeepLines := xml.StartElement{Name: xml.Name{Local: "w:keepLines"}}
|
|
e.EncodeElement(m.KeepLines, sekeepLines)
|
|
}
|
|
if m.PageBreakBefore != nil {
|
|
sepageBreakBefore := xml.StartElement{Name: xml.Name{Local: "w:pageBreakBefore"}}
|
|
e.EncodeElement(m.PageBreakBefore, sepageBreakBefore)
|
|
}
|
|
if m.FramePr != nil {
|
|
seframePr := xml.StartElement{Name: xml.Name{Local: "w:framePr"}}
|
|
e.EncodeElement(m.FramePr, seframePr)
|
|
}
|
|
if m.WidowControl != nil {
|
|
sewidowControl := xml.StartElement{Name: xml.Name{Local: "w:widowControl"}}
|
|
e.EncodeElement(m.WidowControl, sewidowControl)
|
|
}
|
|
if m.NumPr != nil {
|
|
senumPr := xml.StartElement{Name: xml.Name{Local: "w:numPr"}}
|
|
e.EncodeElement(m.NumPr, senumPr)
|
|
}
|
|
if m.SuppressLineNumbers != nil {
|
|
sesuppressLineNumbers := xml.StartElement{Name: xml.Name{Local: "w:suppressLineNumbers"}}
|
|
e.EncodeElement(m.SuppressLineNumbers, sesuppressLineNumbers)
|
|
}
|
|
if m.PBdr != nil {
|
|
sepBdr := xml.StartElement{Name: xml.Name{Local: "w:pBdr"}}
|
|
e.EncodeElement(m.PBdr, sepBdr)
|
|
}
|
|
if m.Shd != nil {
|
|
seshd := xml.StartElement{Name: xml.Name{Local: "w:shd"}}
|
|
e.EncodeElement(m.Shd, seshd)
|
|
}
|
|
if m.Tabs != nil {
|
|
setabs := xml.StartElement{Name: xml.Name{Local: "w:tabs"}}
|
|
e.EncodeElement(m.Tabs, setabs)
|
|
}
|
|
if m.SuppressAutoHyphens != nil {
|
|
sesuppressAutoHyphens := xml.StartElement{Name: xml.Name{Local: "w:suppressAutoHyphens"}}
|
|
e.EncodeElement(m.SuppressAutoHyphens, sesuppressAutoHyphens)
|
|
}
|
|
if m.Kinsoku != nil {
|
|
sekinsoku := xml.StartElement{Name: xml.Name{Local: "w:kinsoku"}}
|
|
e.EncodeElement(m.Kinsoku, sekinsoku)
|
|
}
|
|
if m.WordWrap != nil {
|
|
sewordWrap := xml.StartElement{Name: xml.Name{Local: "w:wordWrap"}}
|
|
e.EncodeElement(m.WordWrap, sewordWrap)
|
|
}
|
|
if m.OverflowPunct != nil {
|
|
seoverflowPunct := xml.StartElement{Name: xml.Name{Local: "w:overflowPunct"}}
|
|
e.EncodeElement(m.OverflowPunct, seoverflowPunct)
|
|
}
|
|
if m.TopLinePunct != nil {
|
|
setopLinePunct := xml.StartElement{Name: xml.Name{Local: "w:topLinePunct"}}
|
|
e.EncodeElement(m.TopLinePunct, setopLinePunct)
|
|
}
|
|
if m.AutoSpaceDE != nil {
|
|
seautoSpaceDE := xml.StartElement{Name: xml.Name{Local: "w:autoSpaceDE"}}
|
|
e.EncodeElement(m.AutoSpaceDE, seautoSpaceDE)
|
|
}
|
|
if m.AutoSpaceDN != nil {
|
|
seautoSpaceDN := xml.StartElement{Name: xml.Name{Local: "w:autoSpaceDN"}}
|
|
e.EncodeElement(m.AutoSpaceDN, seautoSpaceDN)
|
|
}
|
|
if m.Bidi != nil {
|
|
sebidi := xml.StartElement{Name: xml.Name{Local: "w:bidi"}}
|
|
e.EncodeElement(m.Bidi, sebidi)
|
|
}
|
|
if m.AdjustRightInd != nil {
|
|
seadjustRightInd := xml.StartElement{Name: xml.Name{Local: "w:adjustRightInd"}}
|
|
e.EncodeElement(m.AdjustRightInd, seadjustRightInd)
|
|
}
|
|
if m.SnapToGrid != nil {
|
|
sesnapToGrid := xml.StartElement{Name: xml.Name{Local: "w:snapToGrid"}}
|
|
e.EncodeElement(m.SnapToGrid, sesnapToGrid)
|
|
}
|
|
if m.Spacing != nil {
|
|
sespacing := xml.StartElement{Name: xml.Name{Local: "w:spacing"}}
|
|
e.EncodeElement(m.Spacing, sespacing)
|
|
}
|
|
if m.Ind != nil {
|
|
seind := xml.StartElement{Name: xml.Name{Local: "w:ind"}}
|
|
e.EncodeElement(m.Ind, seind)
|
|
}
|
|
if m.ContextualSpacing != nil {
|
|
secontextualSpacing := xml.StartElement{Name: xml.Name{Local: "w:contextualSpacing"}}
|
|
e.EncodeElement(m.ContextualSpacing, secontextualSpacing)
|
|
}
|
|
if m.MirrorIndents != nil {
|
|
semirrorIndents := xml.StartElement{Name: xml.Name{Local: "w:mirrorIndents"}}
|
|
e.EncodeElement(m.MirrorIndents, semirrorIndents)
|
|
}
|
|
if m.SuppressOverlap != nil {
|
|
sesuppressOverlap := xml.StartElement{Name: xml.Name{Local: "w:suppressOverlap"}}
|
|
e.EncodeElement(m.SuppressOverlap, sesuppressOverlap)
|
|
}
|
|
if m.Jc != nil {
|
|
sejc := xml.StartElement{Name: xml.Name{Local: "w:jc"}}
|
|
e.EncodeElement(m.Jc, sejc)
|
|
}
|
|
if m.TextDirection != nil {
|
|
setextDirection := xml.StartElement{Name: xml.Name{Local: "w:textDirection"}}
|
|
e.EncodeElement(m.TextDirection, setextDirection)
|
|
}
|
|
if m.TextAlignment != nil {
|
|
setextAlignment := xml.StartElement{Name: xml.Name{Local: "w:textAlignment"}}
|
|
e.EncodeElement(m.TextAlignment, setextAlignment)
|
|
}
|
|
if m.TextboxTightWrap != nil {
|
|
setextboxTightWrap := xml.StartElement{Name: xml.Name{Local: "w:textboxTightWrap"}}
|
|
e.EncodeElement(m.TextboxTightWrap, setextboxTightWrap)
|
|
}
|
|
if m.OutlineLvl != nil {
|
|
seoutlineLvl := xml.StartElement{Name: xml.Name{Local: "w:outlineLvl"}}
|
|
e.EncodeElement(m.OutlineLvl, seoutlineLvl)
|
|
}
|
|
if m.DivId != nil {
|
|
sedivId := xml.StartElement{Name: xml.Name{Local: "w:divId"}}
|
|
e.EncodeElement(m.DivId, sedivId)
|
|
}
|
|
if m.CnfStyle != nil {
|
|
secnfStyle := xml.StartElement{Name: xml.Name{Local: "w:cnfStyle"}}
|
|
e.EncodeElement(m.CnfStyle, secnfStyle)
|
|
}
|
|
e.EncodeToken(xml.EndElement{Name: start.Name})
|
|
return nil
|
|
}
|
|
|
|
func (m *CT_PPrBase) UnmarshalXML(d *xml.Decoder, start xml.StartElement) error {
|
|
// initialize to default
|
|
lCT_PPrBase:
|
|
for {
|
|
tok, err := d.Token()
|
|
if err != nil {
|
|
return err
|
|
}
|
|
switch el := tok.(type) {
|
|
case xml.StartElement:
|
|
switch el.Name.Local {
|
|
case "pStyle":
|
|
m.PStyle = NewCT_String()
|
|
if err := d.DecodeElement(m.PStyle, &el); err != nil {
|
|
return err
|
|
}
|
|
case "keepNext":
|
|
m.KeepNext = NewCT_OnOff()
|
|
if err := d.DecodeElement(m.KeepNext, &el); err != nil {
|
|
return err
|
|
}
|
|
case "keepLines":
|
|
m.KeepLines = NewCT_OnOff()
|
|
if err := d.DecodeElement(m.KeepLines, &el); err != nil {
|
|
return err
|
|
}
|
|
case "pageBreakBefore":
|
|
m.PageBreakBefore = NewCT_OnOff()
|
|
if err := d.DecodeElement(m.PageBreakBefore, &el); err != nil {
|
|
return err
|
|
}
|
|
case "framePr":
|
|
m.FramePr = NewCT_FramePr()
|
|
if err := d.DecodeElement(m.FramePr, &el); err != nil {
|
|
return err
|
|
}
|
|
case "widowControl":
|
|
m.WidowControl = NewCT_OnOff()
|
|
if err := d.DecodeElement(m.WidowControl, &el); err != nil {
|
|
return err
|
|
}
|
|
case "numPr":
|
|
m.NumPr = NewCT_NumPr()
|
|
if err := d.DecodeElement(m.NumPr, &el); err != nil {
|
|
return err
|
|
}
|
|
case "suppressLineNumbers":
|
|
m.SuppressLineNumbers = NewCT_OnOff()
|
|
if err := d.DecodeElement(m.SuppressLineNumbers, &el); err != nil {
|
|
return err
|
|
}
|
|
case "pBdr":
|
|
m.PBdr = NewCT_PBdr()
|
|
if err := d.DecodeElement(m.PBdr, &el); err != nil {
|
|
return err
|
|
}
|
|
case "shd":
|
|
m.Shd = NewCT_Shd()
|
|
if err := d.DecodeElement(m.Shd, &el); err != nil {
|
|
return err
|
|
}
|
|
case "tabs":
|
|
m.Tabs = NewCT_Tabs()
|
|
if err := d.DecodeElement(m.Tabs, &el); err != nil {
|
|
return err
|
|
}
|
|
case "suppressAutoHyphens":
|
|
m.SuppressAutoHyphens = NewCT_OnOff()
|
|
if err := d.DecodeElement(m.SuppressAutoHyphens, &el); err != nil {
|
|
return err
|
|
}
|
|
case "kinsoku":
|
|
m.Kinsoku = NewCT_OnOff()
|
|
if err := d.DecodeElement(m.Kinsoku, &el); err != nil {
|
|
return err
|
|
}
|
|
case "wordWrap":
|
|
m.WordWrap = NewCT_OnOff()
|
|
if err := d.DecodeElement(m.WordWrap, &el); err != nil {
|
|
return err
|
|
}
|
|
case "overflowPunct":
|
|
m.OverflowPunct = NewCT_OnOff()
|
|
if err := d.DecodeElement(m.OverflowPunct, &el); err != nil {
|
|
return err
|
|
}
|
|
case "topLinePunct":
|
|
m.TopLinePunct = NewCT_OnOff()
|
|
if err := d.DecodeElement(m.TopLinePunct, &el); err != nil {
|
|
return err
|
|
}
|
|
case "autoSpaceDE":
|
|
m.AutoSpaceDE = NewCT_OnOff()
|
|
if err := d.DecodeElement(m.AutoSpaceDE, &el); err != nil {
|
|
return err
|
|
}
|
|
case "autoSpaceDN":
|
|
m.AutoSpaceDN = NewCT_OnOff()
|
|
if err := d.DecodeElement(m.AutoSpaceDN, &el); err != nil {
|
|
return err
|
|
}
|
|
case "bidi":
|
|
m.Bidi = NewCT_OnOff()
|
|
if err := d.DecodeElement(m.Bidi, &el); err != nil {
|
|
return err
|
|
}
|
|
case "adjustRightInd":
|
|
m.AdjustRightInd = NewCT_OnOff()
|
|
if err := d.DecodeElement(m.AdjustRightInd, &el); err != nil {
|
|
return err
|
|
}
|
|
case "snapToGrid":
|
|
m.SnapToGrid = NewCT_OnOff()
|
|
if err := d.DecodeElement(m.SnapToGrid, &el); err != nil {
|
|
return err
|
|
}
|
|
case "spacing":
|
|
m.Spacing = NewCT_Spacing()
|
|
if err := d.DecodeElement(m.Spacing, &el); err != nil {
|
|
return err
|
|
}
|
|
case "ind":
|
|
m.Ind = NewCT_Ind()
|
|
if err := d.DecodeElement(m.Ind, &el); err != nil {
|
|
return err
|
|
}
|
|
case "contextualSpacing":
|
|
m.ContextualSpacing = NewCT_OnOff()
|
|
if err := d.DecodeElement(m.ContextualSpacing, &el); err != nil {
|
|
return err
|
|
}
|
|
case "mirrorIndents":
|
|
m.MirrorIndents = NewCT_OnOff()
|
|
if err := d.DecodeElement(m.MirrorIndents, &el); err != nil {
|
|
return err
|
|
}
|
|
case "suppressOverlap":
|
|
m.SuppressOverlap = NewCT_OnOff()
|
|
if err := d.DecodeElement(m.SuppressOverlap, &el); err != nil {
|
|
return err
|
|
}
|
|
case "jc":
|
|
m.Jc = NewCT_Jc()
|
|
if err := d.DecodeElement(m.Jc, &el); err != nil {
|
|
return err
|
|
}
|
|
case "textDirection":
|
|
m.TextDirection = NewCT_TextDirection()
|
|
if err := d.DecodeElement(m.TextDirection, &el); err != nil {
|
|
return err
|
|
}
|
|
case "textAlignment":
|
|
m.TextAlignment = NewCT_TextAlignment()
|
|
if err := d.DecodeElement(m.TextAlignment, &el); err != nil {
|
|
return err
|
|
}
|
|
case "textboxTightWrap":
|
|
m.TextboxTightWrap = NewCT_TextboxTightWrap()
|
|
if err := d.DecodeElement(m.TextboxTightWrap, &el); err != nil {
|
|
return err
|
|
}
|
|
case "outlineLvl":
|
|
m.OutlineLvl = NewCT_DecimalNumber()
|
|
if err := d.DecodeElement(m.OutlineLvl, &el); err != nil {
|
|
return err
|
|
}
|
|
case "divId":
|
|
m.DivId = NewCT_DecimalNumber()
|
|
if err := d.DecodeElement(m.DivId, &el); err != nil {
|
|
return err
|
|
}
|
|
case "cnfStyle":
|
|
m.CnfStyle = NewCT_Cnf()
|
|
if err := d.DecodeElement(m.CnfStyle, &el); err != nil {
|
|
return err
|
|
}
|
|
default:
|
|
log.Printf("skipping unsupported element on CT_PPrBase %v", el.Name)
|
|
if err := d.Skip(); err != nil {
|
|
return err
|
|
}
|
|
}
|
|
case xml.EndElement:
|
|
break lCT_PPrBase
|
|
case xml.CharData:
|
|
}
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// Validate validates the CT_PPrBase and its children
|
|
func (m *CT_PPrBase) Validate() error {
|
|
return m.ValidateWithPath("CT_PPrBase")
|
|
}
|
|
|
|
// ValidateWithPath validates the CT_PPrBase and its children, prefixing error messages with path
|
|
func (m *CT_PPrBase) ValidateWithPath(path string) error {
|
|
if m.PStyle != nil {
|
|
if err := m.PStyle.ValidateWithPath(path + "/PStyle"); err != nil {
|
|
return err
|
|
}
|
|
}
|
|
if m.KeepNext != nil {
|
|
if err := m.KeepNext.ValidateWithPath(path + "/KeepNext"); err != nil {
|
|
return err
|
|
}
|
|
}
|
|
if m.KeepLines != nil {
|
|
if err := m.KeepLines.ValidateWithPath(path + "/KeepLines"); err != nil {
|
|
return err
|
|
}
|
|
}
|
|
if m.PageBreakBefore != nil {
|
|
if err := m.PageBreakBefore.ValidateWithPath(path + "/PageBreakBefore"); err != nil {
|
|
return err
|
|
}
|
|
}
|
|
if m.FramePr != nil {
|
|
if err := m.FramePr.ValidateWithPath(path + "/FramePr"); err != nil {
|
|
return err
|
|
}
|
|
}
|
|
if m.WidowControl != nil {
|
|
if err := m.WidowControl.ValidateWithPath(path + "/WidowControl"); err != nil {
|
|
return err
|
|
}
|
|
}
|
|
if m.NumPr != nil {
|
|
if err := m.NumPr.ValidateWithPath(path + "/NumPr"); err != nil {
|
|
return err
|
|
}
|
|
}
|
|
if m.SuppressLineNumbers != nil {
|
|
if err := m.SuppressLineNumbers.ValidateWithPath(path + "/SuppressLineNumbers"); err != nil {
|
|
return err
|
|
}
|
|
}
|
|
if m.PBdr != nil {
|
|
if err := m.PBdr.ValidateWithPath(path + "/PBdr"); err != nil {
|
|
return err
|
|
}
|
|
}
|
|
if m.Shd != nil {
|
|
if err := m.Shd.ValidateWithPath(path + "/Shd"); err != nil {
|
|
return err
|
|
}
|
|
}
|
|
if m.Tabs != nil {
|
|
if err := m.Tabs.ValidateWithPath(path + "/Tabs"); err != nil {
|
|
return err
|
|
}
|
|
}
|
|
if m.SuppressAutoHyphens != nil {
|
|
if err := m.SuppressAutoHyphens.ValidateWithPath(path + "/SuppressAutoHyphens"); err != nil {
|
|
return err
|
|
}
|
|
}
|
|
if m.Kinsoku != nil {
|
|
if err := m.Kinsoku.ValidateWithPath(path + "/Kinsoku"); err != nil {
|
|
return err
|
|
}
|
|
}
|
|
if m.WordWrap != nil {
|
|
if err := m.WordWrap.ValidateWithPath(path + "/WordWrap"); err != nil {
|
|
return err
|
|
}
|
|
}
|
|
if m.OverflowPunct != nil {
|
|
if err := m.OverflowPunct.ValidateWithPath(path + "/OverflowPunct"); err != nil {
|
|
return err
|
|
}
|
|
}
|
|
if m.TopLinePunct != nil {
|
|
if err := m.TopLinePunct.ValidateWithPath(path + "/TopLinePunct"); err != nil {
|
|
return err
|
|
}
|
|
}
|
|
if m.AutoSpaceDE != nil {
|
|
if err := m.AutoSpaceDE.ValidateWithPath(path + "/AutoSpaceDE"); err != nil {
|
|
return err
|
|
}
|
|
}
|
|
if m.AutoSpaceDN != nil {
|
|
if err := m.AutoSpaceDN.ValidateWithPath(path + "/AutoSpaceDN"); err != nil {
|
|
return err
|
|
}
|
|
}
|
|
if m.Bidi != nil {
|
|
if err := m.Bidi.ValidateWithPath(path + "/Bidi"); err != nil {
|
|
return err
|
|
}
|
|
}
|
|
if m.AdjustRightInd != nil {
|
|
if err := m.AdjustRightInd.ValidateWithPath(path + "/AdjustRightInd"); err != nil {
|
|
return err
|
|
}
|
|
}
|
|
if m.SnapToGrid != nil {
|
|
if err := m.SnapToGrid.ValidateWithPath(path + "/SnapToGrid"); err != nil {
|
|
return err
|
|
}
|
|
}
|
|
if m.Spacing != nil {
|
|
if err := m.Spacing.ValidateWithPath(path + "/Spacing"); err != nil {
|
|
return err
|
|
}
|
|
}
|
|
if m.Ind != nil {
|
|
if err := m.Ind.ValidateWithPath(path + "/Ind"); err != nil {
|
|
return err
|
|
}
|
|
}
|
|
if m.ContextualSpacing != nil {
|
|
if err := m.ContextualSpacing.ValidateWithPath(path + "/ContextualSpacing"); err != nil {
|
|
return err
|
|
}
|
|
}
|
|
if m.MirrorIndents != nil {
|
|
if err := m.MirrorIndents.ValidateWithPath(path + "/MirrorIndents"); err != nil {
|
|
return err
|
|
}
|
|
}
|
|
if m.SuppressOverlap != nil {
|
|
if err := m.SuppressOverlap.ValidateWithPath(path + "/SuppressOverlap"); err != nil {
|
|
return err
|
|
}
|
|
}
|
|
if m.Jc != nil {
|
|
if err := m.Jc.ValidateWithPath(path + "/Jc"); err != nil {
|
|
return err
|
|
}
|
|
}
|
|
if m.TextDirection != nil {
|
|
if err := m.TextDirection.ValidateWithPath(path + "/TextDirection"); err != nil {
|
|
return err
|
|
}
|
|
}
|
|
if m.TextAlignment != nil {
|
|
if err := m.TextAlignment.ValidateWithPath(path + "/TextAlignment"); err != nil {
|
|
return err
|
|
}
|
|
}
|
|
if m.TextboxTightWrap != nil {
|
|
if err := m.TextboxTightWrap.ValidateWithPath(path + "/TextboxTightWrap"); err != nil {
|
|
return err
|
|
}
|
|
}
|
|
if m.OutlineLvl != nil {
|
|
if err := m.OutlineLvl.ValidateWithPath(path + "/OutlineLvl"); err != nil {
|
|
return err
|
|
}
|
|
}
|
|
if m.DivId != nil {
|
|
if err := m.DivId.ValidateWithPath(path + "/DivId"); err != nil {
|
|
return err
|
|
}
|
|
}
|
|
if m.CnfStyle != nil {
|
|
if err := m.CnfStyle.ValidateWithPath(path + "/CnfStyle"); err != nil {
|
|
return err
|
|
}
|
|
}
|
|
return nil
|
|
}
|