Thank you for the hint - it is very useful and I am sure I will use it soon

Finally I've decided to move from code similar to this:
for( IChart chart: charts )
for( IChartObject o: chart.getAll() )
if ( o.getType() == IChart.Type.SHORT_LINE )
chart.remove( o );
to code like that:
List<IChartObject> l = new ArrayList<IChartObject>();
for( IChart chart: charts ) {
for( IChartObject o: chart.getAll() )
if ( o.getType() == IChart.Type.SHORT_LINE )
l.add( o );
chart.remove( l );
}
The latter example is several times faster (maybe as much as 50-100)

than first one (more than 30 seconds vs. fraction of second). I am really surprised, because I was not expecting such tremendous performance difference...
BTW, are there any methods for bulk chart objects creation?
Regards,
FXer