{
if ( elements.length > 1000 && this.mainWidget.getViewer() != null
&& !this.mainWidget.getViewer().getTable().isDisposed() )
{
FilterAndSortJob job = new FilterAndSortJob( this.configuration, this.mainWidget, this.elements );
RunnableContextJobAdapter.execute( job, new TimeTriggeredProgressMonitorDialog( Display.getCurrent()
.getActiveShell(), 5000 ) );
this.filteredAndSortedElements = job.getFilteredAndSortedElements();
}
else if ( elements.length > 0 && this.mainWidget.getViewer() != null
&& !this.mainWidget.getViewer().getTable().isDisposed() )