## org.eclipse.datatools.sqltools.plan
Interface IPlanDrawer

All Known Implementing Classes:
  AbstractPlanDrawer, TreePlanDrawer

    public interface IPlanDrawer

Class that implements this interface can draw a sub-execution plan on a `Canvas`. Vendor can extend `AbstractPlanDrawer` intead of implementing this interfact from scratch.

Author:
  Dafan Yang
See Also:
  `AbstractPlanDrawer`

Method Summary
`void` `drawPlan(IExecutionPlanDocument document)` Draws the given execution plan
`void` `init()` Initializes the drawer, this method will be invoked after the drawer is constructed
`void` `setBrowser(org.eclipse.swt.browser.Browser browser)` Sets the browser on which the detail information of one plan node is displayed
`void` `setCanvas(org.eclipse.swt.widgets.Canvas canvas)` Sets the canvas on which the graphic plan is drawn

Method Detail

### drawPlan

    void drawPlan(IExecutionPlanDocument document)

  Draws the given execution plan

  Parameters:
    `document` - the exeuction plan

### init

    void init()

  Initializes the drawer, this method will be invoked after the drawer is constructed

### setBrowser

    void setBrowser(org.eclipse.swt.browser.Browser browser)

  Sets the browser on which the detail information of one plan node is displayed

  Parameters:
    `browser` - the browser

### setCanvas

    void setCanvas(org.eclipse.swt.widgets.Canvas canvas)

  Sets the canvas on which the graphic plan is drawn

  Parameters:
    `canvas` - the canvas