Hi,

Following up on my question. I cant find the solution on the internet.

Best Regards,
Sibgha

On Mon, Apr 29, 2019 at 1:53 PM Sibgha Nazir <sibgha...@gmail.com> wrote:

> Hi,
>
> I have the following code:
>
>
> *LearningCurveChartPanel*
>
>  *public* LearningCurveChartPanel(String aId, IModel<AnnotatorState>
> aModel)
>
>     {
>
>         *super*(aId);
>
>         model = aModel;
>
>
>         //initially the chart is empty. passing empty model
>
>         chartPanel = *new* ChartPanel(*MID_CHART_CONTAINER*,
>
>                 LoadableDetachableModel.*of*(*this*::renderChart));
>
>
>
>         chartPanel.setOutputMarkupId(*true*);
>
>         add(chartPanel);
>
>     }
>
>     @OnEvent
>
>     *public* *void* onRenderAnnotations(RenderAnnotationsEvent aEvent)
>
>     {
>
>         LOG.trace("rendered annotation event");
>
>
>         aEvent.getRequestHandler().add(*this*);
>
>     }
>
> *ChartPanel*
>
>
>  *public* ChartPanel(String aId, LoadableDetachableModel<LearningCurve>
> loadableDetachableModel)
>
>     {
>
>         *super*(aId);
>
>
>
>         chartModel = (loadableDetachableModel);
>
>
>         chart = *new* WebMarkupContainer(*MID_CHART_CONTAINER*);
>
>         chart.setMarkupId("canvas");
>
>         chart.setOutputMarkupId(*true*);
>
>         add(chart);
>
>
>         chartAjaxBejavior = *new* ChartAjaxBejavior();
>
>         add(chartAjaxBejavior);
>
>     }
>
>
> Here I am adding ChartPanel in the constructor of LearningCurveChartPanel
> and as the LearningCurveChartPanel loads the chart panel is loaded with the
> data that is returned by renderChart. I want to do such that the
> ChartPanel only renders when I click a button. How do I change the below
> line to
>
> chartPanel = *new* ChartPanel(*MID_CHART_CONTAINER*,
>
>                 LoadableDetachableModel.*of*(*this*::renderChart));
>
> And how do I define such thing in the onClick event?
>

Reply via email to