# Report Item UI Extension Point

###### Identifier:

org.eclipse.birt.report.designer.ui.reportitemUI

###### Since:

1.0

###### Description:

This extension point is used in conjunction with the Report Item extension point defined in the model. It is used to register the GUI to be used for the Extended report item.

###### Configuration Markup:

<!ELEMENT extension ((reportItemFigureUI | reportItemLabelUI | reportItemImageUI) , model , builder? , palette? , editor? , outline? , description?)>

<!ATTLIST extension

point CDATA #REQUIRED

id CDATA #IMPLIED

name CDATA #IMPLIED

>

<!ELEMENT model EMPTY>

<!ATTLIST model

extensionName CDATA #REQUIRED

>

- extensionName - The ROM Report Item Extension name that maps to this UI

<!ELEMENT reportItemFigureUI EMPTY>

<!ATTLIST reportItemFigureUI

class CDATA #REQUIRED

>

- class - a fully qualified name of the Java class implementing org.eclipse.birt.report.designer.ui.extensions.IReportItemFigureUI

<!ELEMENT reportItemLabelUI EMPTY>

<!ATTLIST reportItemLabelUI

class CDATA #REQUIRED

>

- class - a fully qualified name of the Java class implementing org.eclipse.birt.report.designer.ui.extensions.IReportItemLabelUI

<!ELEMENT reportItemImageUI EMPTY>

<!ATTLIST reportItemImageUI

class CDATA #REQUIRED

>

- class - a fully qualified name of the Java class implementing org.eclipse.birt.report.designer.ui.extensions.IReportItemImageUI

<!ELEMENT builder EMPTY>

<!ATTLIST builder

class CDATA #IMPLIED

>

Optional Builder for the element inside the Editor. Instantiated when a new item is dragged from the palette inside the editor.

- class - a fully qualified name of the Java class implementing org.eclipse.birt.report.designer.ui.extensions.IReportItemBuilderUI

<!ELEMENT palette EMPTY>

<!ATTLIST palette

icon CDATA #IMPLIED

category CDATA #IMPLIED

categoryDisplayName CDATA #IMPLIED

>

- icon - The icon to show in the Palette
- category - Indicates in which category the icon should appear in the Palette. If it is an non-existing category, a new one will be created for this report item.
- categoryDisplayName - Display name of the category if this category does not exist in BIRT. If it does already exist, this will be ignored.

<!ELEMENT editor EMPTY>

<!ATTLIST editor

showInMasterPage (true | false) "true"

showInDesigner (true | false) "true"

canResize (true | false) "true"

menuLabel CDATA #IMPLIED

>

- showInMasterPage - True if the element UI is to be shown in the MasterPage and MasterPage's Palette
- showInDesigner - True if the element UI is to be shown in the Designer and the Designer's Palette
- canResize - Boolean indicating if the element can be resized inside the editor area
- menuLabel - An optional text that will be display for menu item if applicable.

<!ELEMENT outline EMPTY>

<!ATTLIST outline

icon CDATA #IMPLIED

>

- icon - The icon to show in the Outline View

<!ELEMENT description (#PCDATA)>

an optional subelement whose body contains a short text describing what the UI extension will do

###### Examples:

The following is an example of the extented element UI extension point:

    <extension point="org.eclipse.birt.report.designer.reportitemUI">
     <model extensionName="chart"/>
     <reportItemFigureUI  class=="org.eclipse.birt.chart.ChartAdapterUI"/>
     <palette icon="/icons/paletteimage.gif" category="main"/>
     <editor showInMasterPage="false"/>
     <outline icon="/icons/outlineimage.gif"/>
    </extension>

###### API Information:

The report item UI extension may implement the interfaces defined in the org.eclipse.birt.report.designer.ui.extensions package. See the package's JavaDoc documentation and API interfaces for more information.

###### Supplied Implementation:

The plugin org.eclipse.birt.chart.reportitem, supplied with the BIRT installation, provides a good example for implementing a report item UI extension.

Copyright (c) 2005 Actuate Corporation. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v2.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-2.0.html Contributors: Actuate Corporation - initial API and implementation