Class DesignVisitor

java.lang.Object
org.eclipse.birt.report.model.api.DesignVisitor

public class DesignVisitor extends Object
Applies logic customized to each type of report element. This is an implementation of the classic visitor pattern. The application creates a derived iterator, and overrides methods for the elements of interest. The visitor can also walk the design tree, performing actions on each element down the containment hierarchy.

By default, each method calls the method for its parent element. That is, a DataItem method calls the ReportItem method which calls the DesignElement method.

  • Field Details

    • forwarder

      protected org.eclipse.birt.report.model.api.DesignVisitorImpl.Forwarder forwarder
      The private internal element visitor.
  • Constructor Details

    • DesignVisitor

      public DesignVisitor()
      Constructs a DesignVisitor, which is not related with the specific report.
  • Method Details

    • apply

      public void apply(DesignElementHandle handle)
      Applies this visitor to the given element.
      Parameters:
      handle - handle to the element to visit.
    • visitFreeForm

      protected void visitFreeForm(FreeFormHandle obj)
      Visits the free form element.
      Parameters:
      obj - the handle of the free form to traverse
    • visitAutoText

      protected void visitAutoText(AutoTextHandle obj)
      Visits auto text element
      Parameters:
      obj -
    • visitDataSet

      protected void visitDataSet(DataSetHandle obj)
      Visits the data set element.
      Parameters:
      obj - the handle of the data set to traverse
    • visitSimpleDataSet

      protected void visitSimpleDataSet(DataSetHandle obj)
      Visits the simple data set element.
      Parameters:
      obj - the handle of the simple data set to traverse
    • visitScriptDataSet

      protected void visitScriptDataSet(ScriptDataSetHandle obj)
      Visits the script data set element.
      Parameters:
      obj - the handle of the script data set to traverse
    • visitJointDataSet

      protected void visitJointDataSet(JointDataSetHandle obj)
      Visits the joint data set element.
      Parameters:
      obj - the handle of the joint data set to traverse
    • visitDataSource

      protected void visitDataSource(DataSourceHandle obj)
      Visits the data source element.
      Parameters:
      obj - the handle of data source to traverse
    • visitLabel

      protected void visitLabel(LabelHandle obj)
      Visits the label element.
      Parameters:
      obj - the handle of the label to traverse
    • visitDataItem

      protected void visitDataItem(DataItemHandle obj)
      Visits the data element.
      Parameters:
      obj - the handle of the data to traverse
    • visitTextItem

      protected void visitTextItem(TextItemHandle obj)
      Visits the text element.
      Parameters:
      obj - the handle of the text to traverse
    • visitImage

      protected void visitImage(ImageHandle obj)
      Visits the image element.
      Parameters:
      obj - the handle of the image to traverse
    • visitList

      protected void visitList(ListHandle obj)
      Visits the list element.
      Parameters:
      obj - the handle of the list to traverse
    • visitGroup

      protected void visitGroup(GroupHandle obj)
      Visits the group element.
      Parameters:
      obj - the handle of the group to traverse
    • visitListGroup

      protected void visitListGroup(ListGroupHandle obj)
      Visits the list group element.
      Parameters:
      obj - the handle of the list group to traverse
    • visitTable

      protected void visitTable(TableHandle obj)
      Visits the table element.
      Parameters:
      obj - the handle of the table to traverse
    • visitTableGroup

      protected void visitTableGroup(TableGroupHandle obj)
      Visits the table group element.
      Parameters:
      obj - the handle of the table group to traverse
    • visitCell

      protected void visitCell(CellHandle obj)
      Visits the cell element.
      Parameters:
      obj - the handle of the cell to traverse
    • visitColumn

      protected void visitColumn(ColumnHandle obj)
      Visits the column element.
      Parameters:
      obj - the handle of the column to traverse
    • visitRow

      protected void visitRow(RowHandle obj)
      Visits the row element.
      Parameters:
      obj - the handle of the row to traverse
    • visitGrid

      protected void visitGrid(GridHandle obj)
      Visits the grid element.
      Parameters:
      obj - the handle of the grid to traverse
    • visitLine

      protected void visitLine(LineHandle obj)
      Visits the line element.
      Parameters:
      obj - the handle of the line to traverse
    • visitMasterPage

      protected void visitMasterPage(MasterPageHandle obj)
      Visits the master page element.
      Parameters:
      obj - the handle of the master page to traverse
    • visitParameterGroup

      protected void visitParameterGroup(ParameterGroupHandle obj)
      Visits the parameter group element.
      Parameters:
      obj - the handle of the parameter group to traverse
    • visitCascadingParameterGroup

      protected void visitCascadingParameterGroup(CascadingParameterGroupHandle obj)
      Visits the cascading parameter group element.
      Parameters:
      obj - the handle of the cascading parameter group to traverse
    • visitModule

      protected void visitModule(ModuleHandle obj)
      Visits the module element
      Parameters:
      obj - the handle of the module to traverse
    • visitLibrary

      protected void visitLibrary(LibraryHandle obj)
      Visits the library element.
      Parameters:
      obj - the handle of the library to traverse
    • visitReportDesign

      protected void visitReportDesign(ReportDesignHandle obj)
      Visits the report design element.
      Parameters:
      obj - the handle of the report design to traverse
    • visitScalarParameter

      protected void visitScalarParameter(ScalarParameterHandle obj)
      Visits the scalar parameter element.
      Parameters:
      obj - the handle of the scalar parameter to traverse
    • visitDynamicFilterParameter

      protected void visitDynamicFilterParameter(DynamicFilterParameterHandle obj)
      Visits the dynamic filter parameter element.
      Parameters:
      obj - the handle of the dynamic filter parameter to traverse.
    • visitStyle

      protected void visitStyle(StyleHandle obj)
      Visits the style element.
      Parameters:
      obj - the handle of the style to traverse
    • visitParameter

      protected void visitParameter(ParameterHandle obj)
      Visits the parameter element.
      Parameters:
      obj - the handle of the parameter to traverse
    • visitReportItem

      protected void visitReportItem(ReportItemHandle obj)
      Visits the report item.
      Parameters:
      obj - the handle of report item to traverse
    • visitStyledElement

      protected void visitStyledElement(ReportItemHandle obj)
      Visits the styled element.
      Parameters:
      obj - the handle of styled element to traverse
    • visitDesignElement

      protected void visitDesignElement(DesignElementHandle obj)
      Visits the design element.
      Parameters:
      obj - the handle of design element to traverse
    • visitRectangle

      protected void visitRectangle(RectangleHandle obj)
      Visits the rectangle element.
      Parameters:
      obj - the handle of rectangle to traverse
    • visitContents

      protected void visitContents(SlotHandle slot)
      Visits the content of the slot.
      Parameters:
      slot - the handle of a slot to traverse
    • visitContents

      protected void visitContents(DesignElementHandle obj, String propName)
      Visits the content of this property.
      Parameters:
      obj - the container element where the contents reside
      propName - name of the property where the contents reside
    • visitTextDataItem

      protected void visitTextDataItem(TextDataHandle obj)
      Visits the multi-line data element.
      Parameters:
      obj - the handle of a multi-line data to traverse
    • visitExtendedItem

      protected void visitExtendedItem(ExtendedItemHandle obj)
      Visits the extended element.
      Parameters:
      obj - the handle of an extended element to traverse
    • visitScriptDataSource

      protected void visitScriptDataSource(ScriptDataSourceHandle obj)
      Visits the extended element.
      Parameters:
      obj - the handle of an extended element to traverse
    • visitGraphicMasterPage

      protected void visitGraphicMasterPage(GraphicMasterPageHandle obj)
      Visits the graphic master page element.
      Parameters:
      obj - the handle of a graphic master page to traverse
    • visitSimpleMasterPage

      protected void visitSimpleMasterPage(SimpleMasterPageHandle obj)
      Visits the simple master page element.
      Parameters:
      obj - the handle of a simple master page to traverse
    • visitExtendedDataSource

      protected void visitExtendedDataSource(OdaDataSourceHandle obj)
      Visits the extended data source element.
      Parameters:
      obj - the handle of a extended data source to traverse
    • visitExtendedDataSet

      protected void visitExtendedDataSet(OdaDataSetHandle obj)
      Visits the extended data set element.
      Parameters:
      obj - the extended data set to traverse
    • visitTheme

      protected void visitTheme(ThemeHandle obj)
      Visits the theme element.
      Parameters:
      obj - the theme to traverse
    • visitTemplateParameterDefinition

      protected void visitTemplateParameterDefinition(TemplateParameterDefinitionHandle obj)
      Visits the template parameter definition.
      Parameters:
      obj - the template parameter definition to traverse
    • visitTemplateElement

      protected void visitTemplateElement(TemplateElementHandle obj)
      Visits the template element.
      Parameters:
      obj - the template element to traverse
    • visitTemplateReportItem

      protected void visitTemplateReportItem(TemplateReportItemHandle obj)
      Visits the template report item.
      Parameters:
      obj - the template report item to traverse
    • visitTemplateDataSet

      protected void visitTemplateDataSet(TemplateDataSetHandle obj)
      Visits the template data set.
      Parameters:
      obj - the template data set to traverse
    • visitTabularCube

      protected void visitTabularCube(TabularCubeHandle obj)
      Visits the cube element.
      Parameters:
      obj - the cube element to traverse
    • visitTabularDimension

      protected void visitTabularDimension(TabularDimensionHandle obj)
      Visits the dimension element.
      Parameters:
      obj - the dimension element to traverse
    • visitTabularHierarchy

      protected void visitTabularHierarchy(TabularHierarchyHandle obj)
      Visits the hierarchy element.
      Parameters:
      obj - the hierarchy element to traverse
    • visitTabularLevel

      protected void visitTabularLevel(TabularLevelHandle obj)
      Visits the level element.
      Parameters:
      obj - the level element to traverse
    • visitTabularMeasure

      protected void visitTabularMeasure(TabularMeasureHandle obj)
      Visits the measure element.
      Parameters:
      obj - the measure element to traverse
    • visitTabularMeasureGroup

      protected void visitTabularMeasureGroup(TabularMeasureGroupHandle obj)
      Visits the measure element.
      Parameters:
      obj - the measure element to traverse
    • visitOdaCube

      protected void visitOdaCube(OdaCubeHandle obj)
      Visits the cube element.
      Parameters:
      obj - the cube element to traverse
    • visitOdaDimension

      protected void visitOdaDimension(OdaDimensionHandle obj)
      Visits the dimension element.
      Parameters:
      obj - the dimension element to traverse
    • visitOdaHierarchy

      protected void visitOdaHierarchy(OdaHierarchyHandle obj)
      Visits the hierarchy element.
      Parameters:
      obj - the hierarchy element to traverse
    • visitOdaLevel

      protected void visitOdaLevel(OdaLevelHandle obj)
      Visits the level element.
      Parameters:
      obj - the level element to traverse
    • visitOdaMeasure

      protected void visitOdaMeasure(OdaMeasureHandle obj)
      Visits the measure element.
      Parameters:
      obj - the measure element to traverse
    • visitOdaMeasureGroup

      protected void visitOdaMeasureGroup(OdaMeasureGroupHandle obj)
      Visits the measure element.
      Parameters:
      obj - the measure element to traverse
    • visitCube

      protected void visitCube(CubeHandle obj)
      Visits the cube element.
      Parameters:
      obj - the cube element to traverse
    • visitDimension

      protected void visitDimension(DimensionHandle obj)
      Visits the dimension element.
      Parameters:
      obj - the dimension element to traverse
    • visitHierarchy

      protected void visitHierarchy(HierarchyHandle obj)
      Visits the hierarchy element.
      Parameters:
      obj - the hierarchy element to traverse
    • visitLevel

      protected void visitLevel(LevelHandle obj)
      Visits the level element.
      Parameters:
      obj - the level element to traverse
    • visitMeasure

      protected void visitMeasure(MeasureHandle obj)
      Visits the measure element.
      Parameters:
      obj - the measure element to traverse
    • visitMeasureGroup

      protected void visitMeasureGroup(MeasureGroupHandle obj)
      Visits the measure element.
      Parameters:
      obj - the measure element to traverse
    • visitDerivedDataSet

      protected void visitDerivedDataSet(DerivedDataSetHandle obj)
      Visits the derived data set element.
      Parameters:
      obj - the derived data set element to traverse
    • visitReportItemTheme

      protected void visitReportItemTheme(ReportItemThemeHandle obj)
      Visits the report item theme element.
      Parameters:
      obj - the report item theme to traverse
    • visitAbstractTheme

      protected void visitAbstractTheme(AbstractThemeHandle obj)
      Visits the abstract theme element.
      Parameters:
      obj - the abstract theme to traverse