com.aspose.words
Interface IFieldUpdatingCallback


public interface IFieldUpdatingCallback 

Implement this interface if you want to have your own custom methods called during a field update.

Example:

Shows how to use callback methods during a field update.
{
    Document doc = new Document();
    DocumentBuilder builder = new DocumentBuilder(doc);

    builder.insertField(" DATE \\@ \"dddd, d MMMM yyyy\" ");
    builder.insertField(" TIME ");
    builder.insertField(" REVNUM ");
    builder.insertField(" AUTHOR  \"John Doe\" ");
    builder.insertField(" SUBJECT \"My Subject\" ");
    builder.insertField(" QUOTE \"Hello world!\" ");

    FieldUpdatingCallback callback = new FieldUpdatingCallback();
    doc.getFieldOptions().setFieldUpdatingCallback(callback);

    doc.updateFields();

    Assert.assertTrue(callback.getFieldUpdatedCalls().contains("Updating John Doe"));
}

/// <summary>
/// Implement this interface if you want to have your own custom methods called during a field update.
/// </summary>
public static class FieldUpdatingCallback implements IFieldUpdatingCallback
{
    public FieldUpdatingCallback()
    {
        mFieldUpdatedCalls = new ArrayList<String>();
    }

    /// <summary>
    /// A user defined method that is called just before a field is updated.
    /// </summary>
    public void /*IFieldUpdatingCallback.*/fieldUpdating(Field field) {
        if (field.getType() == FieldType.FIELD_AUTHOR)
        {
            FieldAuthor fieldAuthor = (FieldAuthor) field;
            try {
                fieldAuthor.setAuthorName("Updating John Doe");
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }

    /// <summary>
    /// A user defined method that is called just after a field is updated.
    /// </summary>
    public void /*IFieldUpdatingCallback.*/fieldUpdated(Field field)
    {
        getFieldUpdatedCalls().add(field.getResult());
    }

    public ArrayList<String> getFieldUpdatedCalls() { return mFieldUpdatedCalls; };

    private ArrayList<String> mFieldUpdatedCalls;
}

Method Summary
abstract voidfieldUpdated(Field field)
           A user defined method that is called just after a field is updated.
abstract voidfieldUpdating(Field field)
           A user defined method that is called just before a field is updated.
 

Method Detail

fieldUpdated

public abstract void fieldUpdated(Field field)
A user defined method that is called just after a field is updated.

Example:

Shows how to use callback methods during a field update.
{
    Document doc = new Document();
    DocumentBuilder builder = new DocumentBuilder(doc);

    builder.insertField(" DATE \\@ \"dddd, d MMMM yyyy\" ");
    builder.insertField(" TIME ");
    builder.insertField(" REVNUM ");
    builder.insertField(" AUTHOR  \"John Doe\" ");
    builder.insertField(" SUBJECT \"My Subject\" ");
    builder.insertField(" QUOTE \"Hello world!\" ");

    FieldUpdatingCallback callback = new FieldUpdatingCallback();
    doc.getFieldOptions().setFieldUpdatingCallback(callback);

    doc.updateFields();

    Assert.assertTrue(callback.getFieldUpdatedCalls().contains("Updating John Doe"));
}

/// <summary>
/// Implement this interface if you want to have your own custom methods called during a field update.
/// </summary>
public static class FieldUpdatingCallback implements IFieldUpdatingCallback
{
    public FieldUpdatingCallback()
    {
        mFieldUpdatedCalls = new ArrayList<String>();
    }

    /// <summary>
    /// A user defined method that is called just before a field is updated.
    /// </summary>
    public void /*IFieldUpdatingCallback.*/fieldUpdating(Field field) {
        if (field.getType() == FieldType.FIELD_AUTHOR)
        {
            FieldAuthor fieldAuthor = (FieldAuthor) field;
            try {
                fieldAuthor.setAuthorName("Updating John Doe");
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }

    /// <summary>
    /// A user defined method that is called just after a field is updated.
    /// </summary>
    public void /*IFieldUpdatingCallback.*/fieldUpdated(Field field)
    {
        getFieldUpdatedCalls().add(field.getResult());
    }

    public ArrayList<String> getFieldUpdatedCalls() { return mFieldUpdatedCalls; };

    private ArrayList<String> mFieldUpdatedCalls;
}

fieldUpdating

public abstract void fieldUpdating(Field field)
A user defined method that is called just before a field is updated.

Example:

Shows how to use callback methods during a field update.
{
    Document doc = new Document();
    DocumentBuilder builder = new DocumentBuilder(doc);

    builder.insertField(" DATE \\@ \"dddd, d MMMM yyyy\" ");
    builder.insertField(" TIME ");
    builder.insertField(" REVNUM ");
    builder.insertField(" AUTHOR  \"John Doe\" ");
    builder.insertField(" SUBJECT \"My Subject\" ");
    builder.insertField(" QUOTE \"Hello world!\" ");

    FieldUpdatingCallback callback = new FieldUpdatingCallback();
    doc.getFieldOptions().setFieldUpdatingCallback(callback);

    doc.updateFields();

    Assert.assertTrue(callback.getFieldUpdatedCalls().contains("Updating John Doe"));
}

/// <summary>
/// Implement this interface if you want to have your own custom methods called during a field update.
/// </summary>
public static class FieldUpdatingCallback implements IFieldUpdatingCallback
{
    public FieldUpdatingCallback()
    {
        mFieldUpdatedCalls = new ArrayList<String>();
    }

    /// <summary>
    /// A user defined method that is called just before a field is updated.
    /// </summary>
    public void /*IFieldUpdatingCallback.*/fieldUpdating(Field field) {
        if (field.getType() == FieldType.FIELD_AUTHOR)
        {
            FieldAuthor fieldAuthor = (FieldAuthor) field;
            try {
                fieldAuthor.setAuthorName("Updating John Doe");
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }

    /// <summary>
    /// A user defined method that is called just after a field is updated.
    /// </summary>
    public void /*IFieldUpdatingCallback.*/fieldUpdated(Field field)
    {
        getFieldUpdatedCalls().add(field.getResult());
    }

    public ArrayList<String> getFieldUpdatedCalls() { return mFieldUpdatedCalls; };

    private ArrayList<String> mFieldUpdatedCalls;
}

See Also:
          Aspose.Words Documentation - the home page for the Aspose.Words Product Documentation.
          Aspose.Words Support Forum - our preferred method of support.