Details

    • Type: Bug
    • Status: Resolved
    • Priority: Normal
    • Resolution: Fixed
    • Affects Version/s: 3.0.1
    • Fix Version/s: 3.0.2
    • Security Level: Jimmy
    • Labels:
      None

      Description

      Steps to Reproduce

      1. run the attached zul
      2. click 5 legends to hide 5 series manually
      3. click "show all" button to show all series

      Current Result

      it takes a long time to show all series

      Expected Result

      the time can be reduced

      Debug Information

      • since the server call show() for all series, so it causes client-side to redraw each series one by one. Please see the profile.

      Workaround

      There are 2 workarounds:
      1. charts.invalidate();
      2. listen to onPlotHide and set visible false

      	@Listen("onPlotHide = #charts")
      	public void hide(ChartsEvent e){
      		e.getSeries().setVisible(false);
      	}
      

      only call show() to those invisible series

      				if (!charts.getSeries(i).isVisible()){ //workaround 2
      					charts.getSeries(i).show();
      				};
      
      1. ChartComposer_5793.java
        1 kB
        hawk
      2. Profile-chartShow
        8.48 MB
        hawk
      3. t5793.zul
        0.1 kB
        hawk
      1. profile-show.png
        50 kB

        Activity

        There are no comments yet on this issue.

          People

          • Assignee:
            rudyhuang rudyhuang
            Reporter:
            hawk hawk
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Time Tracking

              Estimated:
              Original Estimate - Not Specified
              Not Specified
              Remaining:
              Remaining Estimate - 0 minutes
              0m
              Logged:
              Time Spent - 5 hours
              5h