BuildingBlockType
Inheritance: java.lang.Object
public class BuildingBlockType
Specifies a building block type. The type might affect the visibility and behavior of the building block in Microsoft Word.
Remarks:
Corresponds to the ST_DocPartType type in OOXML.
Examples:
Shows how to add a custom building block to a document.
 public void createAndInsert() throws Exception {
     // A document's glossary document stores building blocks.
     Document doc = new Document();
     GlossaryDocument glossaryDoc = new GlossaryDocument();
     doc.setGlossaryDocument(glossaryDoc);
     // Create a building block, name it, and then add it to the glossary document.
     BuildingBlock block = new BuildingBlock(glossaryDoc);
     block.setName("Custom Block");
     glossaryDoc.appendChild(block);
     // All new building block GUIDs have the same zero value by default, and we can give them a new unique value.
     Assert.assertEquals(block.getGuid().toString(), "00000000-0000-0000-0000-000000000000");
     block.setGuid(UUID.randomUUID());
     // The following properties categorize building blocks
     // in the menu we can access in Microsoft Word via "Insert" -> "Quick Parts" -> "Building Blocks Organizer".
     Assert.assertEquals(block.getCategory(), "(Empty Category)");
     Assert.assertEquals(block.getType(), BuildingBlockType.NONE);
     Assert.assertEquals(block.getGallery(), BuildingBlockGallery.ALL);
     Assert.assertEquals(block.getBehavior(), BuildingBlockBehavior.CONTENT);
     // Before we can add this building block to our document, we will need to give it some contents,
     // which we will do using a document visitor. This visitor will also set a category, gallery, and behavior.
     BuildingBlockVisitor visitor = new BuildingBlockVisitor(glossaryDoc);
     // Visit start/end of the BuildingBlock.
     block.accept(visitor);
     // We can access the block that we just made from the glossary document.
     BuildingBlock customBlock = glossaryDoc.getBuildingBlock(BuildingBlockGallery.QUICK_PARTS,
             "My custom building blocks", "Custom Block");
     // The block itself is a section that contains the text.
     Assert.assertEquals(MessageFormat.format("Text inside {0}\f", customBlock.getName()), customBlock.getFirstSection().getBody().getFirstParagraph().getText());
     Assert.assertEquals(customBlock.getFirstSection(), customBlock.getLastSection());
     // Now, we can insert it into the document as a new section.
     doc.appendChild(doc.importNode(customBlock.getFirstSection(), true));
     // We can also find it in Microsoft Word's Building Blocks Organizer and place it manually.
     doc.save(getArtifactsDir() + "BuildingBlocks.CreateAndInsert.dotx");
 }
 /// 
 /// Sets up a visited building block to be inserted into the document as a quick part and adds text to its contents.
 /// 
 public static class BuildingBlockVisitor extends DocumentVisitor {
     public BuildingBlockVisitor(final GlossaryDocument ownerGlossaryDoc) {
         mBuilder = new StringBuilder();
         mGlossaryDoc = ownerGlossaryDoc;
     }
     public int visitBuildingBlockStart(final BuildingBlock block) {
         // Configure the building block as a quick part, and add properties used by Building Blocks Organizer.
         block.setBehavior(BuildingBlockBehavior.PARAGRAPH);
         block.setCategory("My custom building blocks");
         block.setDescription("Using this block in the Quick Parts section of word will place its contents at the cursor.");
         block.setGallery(BuildingBlockGallery.QUICK_PARTS);
         // Add a section with text.
         // Inserting the block into the document will append this section with its child nodes at the location.
         Section section = new Section(mGlossaryDoc);
         block.appendChild(section);
         block.getFirstSection().ensureMinimum();
         Run run = new Run(mGlossaryDoc, "Text inside " + block.getName());
         block.getFirstSection().getBody().getFirstParagraph().appendChild(run);
         return VisitorAction.CONTINUE;
     }
     public int visitBuildingBlockEnd(final BuildingBlock block) {
         mBuilder.append("Visited " + block.getName() + "\r\n");
         return VisitorAction.CONTINUE;
     }
     private final StringBuilder mBuilder;
     private final GlossaryDocument mGlossaryDoc;
 }
 
Fields
| Field | Description | 
|---|---|
| ALL | The building block is associated with all types. | 
| AUTOMATICALLY_REPLACE_NAME_WITH_CONTENT | Allows the building block to be automatically inserted into the document whenever its name is entered into an application. | 
| AUTO_CORRECT | The building block is associated with the spelling and grammar tools. | 
| AUTO_TEXT | The building block is an AutoText entry. | 
| DEFAULT | Save as NONE. | 
| FORM_FIELD_HELP_TEXT | The building block is a form field help text. | 
| NONE | No type information is specified for the building block. | 
| NORMAL | The building block is a normal (i.e. | 
| STRUCTURED_DOCUMENT_TAG_PLACEHOLDER_TEXT | The building block is a structured document tag placeholder text. | 
| length | 
Methods
| Method | Description | 
|---|---|
| fromName(String buildingBlockTypeName) | |
| getName(int buildingBlockType) | |
| getValues() | |
| toString(int buildingBlockType) | 
ALL
public static int ALL
The building block is associated with all types.
AUTOMATICALLY_REPLACE_NAME_WITH_CONTENT
public static int AUTOMATICALLY_REPLACE_NAME_WITH_CONTENT
Allows the building block to be automatically inserted into the document whenever its name is entered into an application.
AUTO_CORRECT
public static int AUTO_CORRECT
The building block is associated with the spelling and grammar tools.
AUTO_TEXT
public static int AUTO_TEXT
The building block is an AutoText entry.
DEFAULT
public static int DEFAULT
Save as NONE.
FORM_FIELD_HELP_TEXT
public static int FORM_FIELD_HELP_TEXT
The building block is a form field help text.
NONE
public static int NONE
No type information is specified for the building block.
NORMAL
public static int NORMAL
The building block is a normal (i.e. regular) glossary document entry.
STRUCTURED_DOCUMENT_TAG_PLACEHOLDER_TEXT
public static int STRUCTURED_DOCUMENT_TAG_PLACEHOLDER_TEXT
The building block is a structured document tag placeholder text.
length
public static int length
fromName(String buildingBlockTypeName)
public static int fromName(String buildingBlockTypeName)
Parameters:
| Parameter | Type | Description | 
|---|---|---|
| buildingBlockTypeName | java.lang.String | 
Returns: int
getName(int buildingBlockType)
public static String getName(int buildingBlockType)
Parameters:
| Parameter | Type | Description | 
|---|---|---|
| buildingBlockType | int | 
Returns: java.lang.String
getValues()
public static int[] getValues()
Returns: int[]
toString(int buildingBlockType)
public static String toString(int buildingBlockType)
Parameters:
| Parameter | Type | Description | 
|---|---|---|
| buildingBlockType | int | 
Returns: java.lang.String