From 7830410e3dfd2f1fe7e012e959d299241ab97cd4 Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Fri, 17 Jul 2015 23:25:09 +0200 Subject: [client] Async image list loading --- .../openslx/dozmod/gui/window/ImageListWindow.java | 23 +++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) (limited to 'dozentenmodul/src/main/java/org') diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageListWindow.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageListWindow.java index 43c6eb98..8f9ba21e 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageListWindow.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageListWindow.java @@ -184,13 +184,26 @@ public class ImageListWindow extends ImageListWindowLayout { }); } - private void refreshList(boolean forceRefresh) { + private void refreshList(final boolean forceRefresh) { if (isDisposed()) return; - List imageList = ImageCache.get(forceRefresh); - - tableViewer.setInput(imageList); - tableViewer.refresh(); + tableViewer.getTable().setEnabled(false); + QuickTimer.scheduleOnce(new Task() { + @Override + public void fire() { + final List imageList = ImageCache.get(forceRefresh); + Gui.asyncExec(new Runnable() { + @Override + public void run() { + if (isDisposed()) + return; + tableViewer.setInput(imageList); + tableViewer.refresh(); + tableViewer.getTable().setEnabled(true); + } + }); + } + }); } @Override -- cgit v1.2.3-55-g7522