public void nodeChanged(final ReportModelEvent event)
{
if (event.isNodeStructureChanged() || event.isNodeAddedEvent() || event.isNodeDeleteEvent())
{
final TreeModel model = getModel();
if (model instanceof AbstractReportDataTreeModel)
{
if (event.getElement() == renderContext.getReportDefinition())
{
final AbstractReportDataTreeModel realModel = (AbstractReportDataTreeModel) model;
realModel.fireTreeDataChanged();
}
}
else if (model instanceof ReportStructureTreeModel)
{
final ReportStructureTreeModel realModel = (ReportStructureTreeModel) model;
realModel.fireTreeDataChanged(event.getSource());
}
}
else if (event.getType() == ReportModelEvent.NODE_PROPERTIES_CHANGED)
{
final TreeModel model = getModel();
if (model instanceof AbstractReportDataTreeModel)
{
final AbstractReportDataTreeModel realModel = (AbstractReportDataTreeModel) model;
if (event.getElement() == model.getRoot())
{
final Object eventParameter = event.getParameter();
if (eventParameter instanceof AttributeChange)
{
final AttributeChange attributeChange = (AttributeChange) eventParameter;