Implementing an Image Decorator for Author Mode
The AuthorImageDecorator extension point allows you to add a custom
            decorator over images in Author mode. For example, you could use it to
            add a message over an image informing the user that they can double-click the image
            to edit
            it.
         
How to Implement an AuthorImageDecorator
            
            To implement your own AuthorImageDecorator, follow this procedure:
               
- Implement the
                     ro.sync.ecss.extensions.api.AuthorImageDecoratorinterface.
- To instruct Oxygen XML Author plugin to use this newly created implementation, use
                     either of the following methods:
                     - If you have configured an extensions bundle, you can return the
                           AuthorImageDecoratorimplementation using thero.sync.ecss.extensions.api.ExtensionsBundle.getAuthorImageDecorator()method.
- Specify the AuthorImageDecoratorin the Author image decorator individual extension in the Extensions tab of the Document Type configuration dialog box for your particular document type.
 
- If you have configured an extensions bundle, you can return the
                           
Example
The following example illustrates an implementation for presenting a simple message over an image that informs the user that they can double-click the image to edit it:
/**
 * Custom Author image decorator for drawing string over images.
 */
public class CustomAuthorImageDecorator extends AuthorImageDecorator {
  /**
   * @see ro.sync.ecss.extensions.api.AuthorImageDecorator#paint
(ro.sync.exml.view.graphics.Graphics, int, int, int, int,
 ro.sync.exml.view.graphics.Rectangle,
 ro.sync.ecss.extensions.api.node.AuthorNode,
 ro.sync.ecss.extensions.api.AuthorAccess, boolean)
   */
  @Override
  public void paint(Graphics g, int x, int y, int imageWidth, int imageHeight,
      Rectangle originalSize, AuthorNode element,
 AuthorAccess authorAccess, boolean wasAnnotated) {
    if ("image".equals(CommonsOperationsUtil.getLocalName(element.getName()))) {
      g.drawString(
          "[Double-click to edit image]",
          // Draw near the top-left corner
          x + 15,
          y + 15);
    }
  }
            Example result: In the top-left corner of the image, the following message will be displayed: [Double-click to edit image].
