ScriptHandler.callFunction( getRunTimeContext( ).getScriptHandler( ), ScriptHandler.BEFORE_DRAW_SERIES, getSeries( ), this, getRunTimeContext( ).getScriptContext( ) ); getRunTimeContext( ).notifyStructureChange( IStructureDefinitionListener.BEFORE_DRAW_SERIES, getSeries( ) ); renderSeries( ipr, p, srh ); ScriptHandler.callFunction( getRunTimeContext( ).getScriptHandler( ), ScriptHandler.AFTER_DRAW_SERIES, getSeries( ), this, getRunTimeContext( ).getScriptContext( ) ); getRunTimeContext( ).notifyStructureChange( IStructureDefinitionListener.AFTER_DRAW_SERIES, getSeries( ) );
if ( getSeries( ) != null ) { ScriptHandler.callFunction( getRunTimeContext( ).getScriptHandler( ), ScriptHandler.BEFORE_DRAW_SERIES, getSeries( ), this, getRunTimeContext( ).getScriptContext( ) ); getRunTimeContext( ).notifyStructureChange( IStructureDefinitionListener.BEFORE_DRAW_SERIES, getSeries( ) ); renderSeries( ipr, p, srh );  ScriptHandler.callFunction( getRunTimeContext( ).getScriptHandler( ), ScriptHandler.AFTER_DRAW_SERIES, getSeries( ), this, getRunTimeContext( ).getScriptContext( ) ); getRunTimeContext( ).notifyStructureChange( IStructureDefinitionListener.AFTER_DRAW_SERIES, getSeries( ) ); }
	public void renderPlot( IPrimitiveRenderer ipr, Plot p )			throws ChartException	{		if ( !p.isVisible( ) ) // CHECK VISIBILITY		{			return;		}		final boolean bFirstInSequence = ( iSeriesIndex == 0 );		final boolean bLastInSequence = ( iSeriesIndex == iSeriesCount - 1 );		if ( bFirstInSequence )		{			renderBackground( ipr, p );		}		ScriptHandler.callFunction( getRunTimeContext( ).getScriptHandler( ),				ScriptHandler.BEFORE_DRAW_SERIES,				getSeries( ),				this,				getRunTimeContext( ).getScriptContext( ) );		getRunTimeContext( ).notifyStructureChange( IStructureDefinitionListener.BEFORE_DRAW_SERIES,				getSeries( ) );		renderSeries( ipr, p, srh ); // CALLS THE APPROPRIATE SUBCLASS FOR		ScriptHandler.callFunction( getRunTimeContext( ).getScriptHandler( ),				ScriptHandler.AFTER_DRAW_SERIES,				getSeries( ),				this,				getRunTimeContext( ).getScriptContext( ) );		getRunTimeContext( ).notifyStructureChange( IStructureDefinitionListener.AFTER_DRAW_SERIES,				getSeries( ) );		if ( bLastInSequence )		{			// RENDER OVERLAYS HERE IF ANY		}	}