sdtPr.setTag(tag); sdtList.setSdtPr(sdtPr);
private SdtBlock createSdt(){ org.docx4j.wml.ObjectFactory wmlObjectFactory = Context.getWmlObjectFactory(); SdtBlock sdtBlock = wmlObjectFactory.createSdtBlock(); SdtPr sdtpr = wmlObjectFactory.createSdtPr(); // Create object for docPartObj (wrapped in JAXBElement) CTSdtDocPart sdtdocpart = wmlObjectFactory.createCTSdtDocPart(); JAXBElement<org.docx4j.wml.CTSdtDocPart> sdtdocpartWrapped = wmlObjectFactory.createSdtPrDocPartObj(sdtdocpart); sdtpr.getRPrOrAliasOrLock().add( sdtdocpartWrapped); // Create object for docPartGallery CTSdtDocPart.DocPartGallery sdtdocpartdocpartgallery = wmlObjectFactory.createCTSdtDocPartDocPartGallery(); sdtdocpart.setDocPartGallery(sdtdocpartdocpartgallery); sdtdocpartdocpartgallery.setVal( "Table of Contents"); // Create object for docPartUnique BooleanDefaultTrue booleandefaulttrue = wmlObjectFactory.createBooleanDefaultTrue(); sdtdocpart.setDocPartUnique(booleandefaulttrue); // Create object for id sdtpr.setId(); sdtBlock.setSdtPr(sdtpr); return sdtBlock; }
private static SdtBlock createSdt(String tagVal, RPr rPr) { // .. so create content control! SdtBlock sdtBlock = Context.getWmlObjectFactory().createSdtBlock(); SdtPr sdtPr = Context.getWmlObjectFactory().createSdtPr(); sdtBlock.setSdtPr(sdtPr); SdtContentBlock sdtContent = Context.getWmlObjectFactory().createSdtContentBlock(); sdtBlock.setSdtContent(sdtContent); // For borders/shading, we'll use the values in this first paragraph. // We'll use a tag, so the XSLT can detect that its supposed to do something special. Tag tag = Context.getWmlObjectFactory().createTag(); tag.setVal(tagVal); sdtPr.setTag(tag); if (rPr != null) { sdtPr.getRPrOrAliasOrLock().add((RPr)XmlUtils.deepCopy(rPr)); /* * ECMA-376 says "specifies the set of run properties which shall be applied to * the text entered into the parent structured document tag in replacement of * placeholder text. When placeholder text is present in a structured document * tag, its formatting is often different than the desired underlying formatting, * and this element specifies the formatting which shall be used for non-placeholder * text contents when they are initially added to the control. " * * Note that docx2fo.xslt is co-opting this to do something else. */ } return sdtBlock; }
sdtPr.setTag(tag); sdtList.setSdtPr(sdtPr);
private SdtBlock createSdt(){ org.docx4j.wml.ObjectFactory wmlObjectFactory = Context.getWmlObjectFactory(); SdtBlock sdtBlock = wmlObjectFactory.createSdtBlock(); SdtPr sdtpr = wmlObjectFactory.createSdtPr(); // Create object for docPartObj (wrapped in JAXBElement) CTSdtDocPart sdtdocpart = wmlObjectFactory.createCTSdtDocPart(); JAXBElement<org.docx4j.wml.CTSdtDocPart> sdtdocpartWrapped = wmlObjectFactory.createSdtPrDocPartObj(sdtdocpart); sdtpr.getRPrOrAliasOrLock().add( sdtdocpartWrapped); // Create object for docPartGallery CTSdtDocPart.DocPartGallery sdtdocpartdocpartgallery = wmlObjectFactory.createCTSdtDocPartDocPartGallery(); sdtdocpart.setDocPartGallery(sdtdocpartdocpartgallery); sdtdocpartdocpartgallery.setVal( "Table of Contents"); // Create object for docPartUnique BooleanDefaultTrue booleandefaulttrue = wmlObjectFactory.createBooleanDefaultTrue(); sdtdocpart.setDocPartUnique(booleandefaulttrue); // Create object for id sdtpr.setId(); sdtBlock.setSdtPr(sdtpr); return sdtBlock; }
private static SdtBlock createSdt(String tagVal, RPr rPr) { // .. so create content control! SdtBlock sdtBlock = Context.getWmlObjectFactory().createSdtBlock(); SdtPr sdtPr = Context.getWmlObjectFactory().createSdtPr(); sdtBlock.setSdtPr(sdtPr); SdtContentBlock sdtContent = Context.getWmlObjectFactory().createSdtContentBlock(); sdtBlock.setSdtContent(sdtContent); // For borders/shading, we'll use the values in this first paragraph. // We'll use a tag, so the XSLT can detect that its supposed to do something special. Tag tag = Context.getWmlObjectFactory().createTag(); tag.setVal(tagVal); sdtPr.setTag(tag); if (rPr != null) { sdtPr.getRPrOrAliasOrLock().add((RPr)XmlUtils.deepCopy(rPr)); /* * ECMA-376 says "specifies the set of run properties which shall be applied to * the text entered into the parent structured document tag in replacement of * placeholder text. When placeholder text is present in a structured document * tag, its formatting is often different than the desired underlying formatting, * and this element specifies the formatting which shall be used for non-placeholder * text contents when they are initially added to the control. " * * Note that docx2fo.xslt is co-opting this to do something else. */ } return sdtBlock; }