java.lang.Object
com.aspose.words.NodeChangingAction
public class NodeChangingAction
- extends java.lang.Object
Utility class containing constants.
Specifies the type of node change.
Example:
Shows how to use a NodeChangingCallback to monitor changes to the document tree in real-time as we edit it.
Document doc = new Document();
doc.setNodeChangingCallback(new NodeChangingPrinter());
DocumentBuilder builder = new DocumentBuilder(doc);
builder.writeln("Hello world!");
builder.startTable();
builder.insertCell();
builder.write("Cell 1");
builder.insertCell();
builder.write("Cell 2");
builder.endTable();
builder.insertImage(getImageDir() + "Logo.jpg");
builder.getCurrentParagraph().getParentNode().removeAllChildren();
}
/// <summary>
/// Prints every node insertion/removal as it takes place in the document.
/// </summary>
private static class NodeChangingPrinter implements INodeChangingCallback {
public void nodeInserting(NodeChangingArgs args) {
Assert.assertEquals(args.getAction(), NodeChangingAction.INSERT);
Assert.assertEquals(args.getOldParent(), null);
}
public void nodeInserted(NodeChangingArgs args) {
Assert.assertEquals(args.getAction(), NodeChangingAction.INSERT);
Assert.assertNotNull(args.getNewParent());
System.out.println("Inserted node:");
System.out.println(MessageFormat.format("\tType:\t{0}", args.getNode().getNodeType()));
if (!"".equals(args.getNode().getText().trim())) {
System.out.println(MessageFormat.format("\tText:\t\"{0}\"", args.getNode().getText().trim()));
}
System.out.println(MessageFormat.format("\tHash:\t{0}", args.getNode().hashCode()));
System.out.println(MessageFormat.format("\tParent:\t{0} ({1})", args.getNewParent().getNodeType(), args.getNewParent().hashCode()));
}
public void nodeRemoving(NodeChangingArgs args) {
Assert.assertEquals(args.getAction(), NodeChangingAction.REMOVE);
}
public void nodeRemoved(NodeChangingArgs args) {
Assert.assertEquals(args.getAction(), NodeChangingAction.REMOVE);
Assert.assertNull(args.getNewParent());
System.out.println(MessageFormat.format("Removed node: {0} ({1})", args.getNode().getNodeType(), args.getNode().hashCode()));
}
}
- See Also:
- NodeChangingArgs, NodeChangingArgs.Action
Field Summary |
static final int | INSERT = 0 | |
A node is being inserted in the tree.
|
static final int | REMOVE = 1 | |
A node is being removed from the tree.
|
INSERT = 0 | |
public static final int INSERT |
-
A node is being inserted in the tree.
REMOVE = 1 | |
public static final int REMOVE |
-
A node is being removed from the tree.
See Also:
Aspose.Words Documentation - the home page for the Aspose.Words Product Documentation.
Aspose.Words Support Forum - our preferred method of support.