PDA

View Full Version : Performance issue on loading large no. of records v2.2.5 Grid with checkbox renderer



bhanu.joshi
10 Jan 2013, 4:20 AM
Hi,

I am facing this issue while loading reasonably large number of records(say 1000 or more) in a GXT2.2.5 grid.
The problem is that i am using check box renderers for displaying some boolean information.
There are 3 different Check Box Renderers (say CB1, CB2, CB3) for a row and the relation among them is as follows: -
1) By default only CB1 will be enabled
2) CB2 will be enabled only when CB1 is checked and CB2 will be unchecked and disabled when CB1 is unchecked
3) CB3 will be enabled only when CB2 is checked and CB3 will be unchecked and disabled when CB2 is unchecked
4) Moreover the enable/disable functionality would also depend on the role of the user.
5) The check boxes are populated on the basis of property being fetched from Model.
Could you please let me know a workaround so that the above solution can be achieved in comparatively less time.

Currently it takes more than 10 minutes to load 1500 records.

A frequent help would be appreciated.

Thanks
Bhanu Joshi

Colin Alworth
10 Jan 2013, 9:24 AM
What is a CheckBoxRenderer? This isn't a GXT 2 or 3 class.

The CheckColumnConfig should render fairly quickly in GXT 2, and in GXT 3, the CheckBoxCell should as well. As far as your other rules, you'll probably wire those up by events on the model or the store, or possibly the CheckBoxCell if using 3.x.

If you are building your own GridCellRenderer in GXT 3 and returning a CheckBox widget, that may be related to your problem - drawing Widgets in a Grid is very inefficient due to the nature of widgets, so you should try to use strings of html instead in the renderer. GXT 3 does not allow widgets at all in the grid for exactly this reason.

bhanu.joshi
14 Jan 2013, 10:13 PM
Hi Colin,

Thanks for your response.
Sorry I meant GridCellRenderer.
Yes you are right, we are returning CheckBox as a widget using GridCellRenderer.
We would now try returning the html string as propsed by you and then get back to you.

Bhanu Joshi