I am doing some testing of the YTable to see whether it can stand up to the requirements for the application I am redesigning. With the current implementation of setModelValue copying the contents of the model every time, the performance is not that great. Especially considering the hardware that I am constrained to. I was wondering if you were considering making the model/view sync more granular so the entire contents of the model don't need to be copied each time.
thanks for your input
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hmm, that's strange. YTable is running in production in many desktops and we've never had any performance problems. What's happening in setModelValue is that object references are copied to a new ArrayList, that shouldn't be a bottleneck. If your JVM can't do that, I'm not sure if Swing is right choice at all. There may be something I can tune, but I would need more specific information about what/how. In general, JTable with many cell specific editors and renderers might be a problem for resources.
Anyway, if you don't want to update all contents of YTable, you can use addRow and removeRow methods or update directly the selected row JavaBean (don't call notifyObservers in YModel at all).
Tomi
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi Tomi,
I am doing some testing of the YTable to see whether it can stand up to the requirements for the application I am redesigning. With the current implementation of setModelValue copying the contents of the model every time, the performance is not that great. Especially considering the hardware that I am constrained to. I was wondering if you were considering making the model/view sync more granular so the entire contents of the model don't need to be copied each time.
thanks for your input
Hmm, that's strange. YTable is running in production in many desktops and we've never had any performance problems. What's happening in setModelValue is that object references are copied to a new ArrayList, that shouldn't be a bottleneck. If your JVM can't do that, I'm not sure if Swing is right choice at all. There may be something I can tune, but I would need more specific information about what/how. In general, JTable with many cell specific editors and renderers might be a problem for resources.
Anyway, if you don't want to update all contents of YTable, you can use addRow and removeRow methods or update directly the selected row JavaBean (don't call notifyObservers in YModel at all).
Tomi
my bad Tomi. It wasn't the copying of the references, but not having a column class explicitly specified that was killing performance.
thanks for your help