protected void adjustItemNumber() { if (fComposite == null) return; Control[] children= fComposite.getChildren(); int oldSize= children.length; int newSize= fInput == null ? 0 : fInput.fAnnotations.length; Display display= fShell.getDisplay(); // add missing items for (int i= oldSize; i < newSize; i++) { Canvas canvas= new Canvas(fComposite, SWT.NONE); Object gridData= fLayouter.getLayoutData(); canvas.setLayoutData(gridData); canvas.setBackground(display.getSystemColor(SWT.COLOR_INFO_BACKGROUND)); canvas.addPaintListener(fPaintListener); canvas.addMouseTrackListener(fMouseTrackListener); canvas.addMouseListener(fMouseListener); canvas.addListener(SWT.MenuDetect, fMenuDetectListener); canvas.addDisposeListener(fDisposeListener); } // dispose of exceeding resources for (int i= oldSize; i > newSize; i--) { Item item= (Item) children[i - 1].getData(); item.deselect(); children[i - 1].dispose(); } }
protected void adjustItemNumber() { if (fComposite == null) return; Control[] children= fComposite.getChildren(); int oldSize= children.length; int newSize= fInput == null ? 0 : fInput.fAnnotations.length; Display display= fShell.getDisplay(); // add missing items for (int i= oldSize; i < newSize; i++) { Canvas canvas= new Canvas(fComposite, SWT.NONE); Object gridData= fLayouter.getLayoutData(); canvas.setLayoutData(gridData); canvas.setBackground(display.getSystemColor(SWT.COLOR_INFO_BACKGROUND)); canvas.addPaintListener(fPaintListener); canvas.addMouseTrackListener(fMouseTrackListener); canvas.addMouseListener(fMouseListener); canvas.addListener(SWT.MenuDetect, fMenuDetectListener); canvas.addDisposeListener(fDisposeListener); } // dispose of exceeding resources for (int i= oldSize; i > newSize; i--) { Item item= (Item) children[i - 1].getData(); item.deselect(); children[i - 1].dispose(); } }
protected void adjustItemNumber() { if (fComposite == null) return; Control[] children= fComposite.getChildren(); int oldSize= children.length; int newSize= fInput == null ? 0 : fInput.fAnnotations.length; Display display= fShell.getDisplay(); // add missing items for (int i= oldSize; i < newSize; i++) { Canvas canvas= new Canvas(fComposite, SWT.NONE); Object gridData= fLayouter.getLayoutData(); canvas.setLayoutData(gridData); canvas.setBackground(display.getSystemColor(SWT.COLOR_INFO_BACKGROUND)); canvas.addPaintListener(fPaintListener); canvas.addMouseTrackListener(fMouseTrackListener); canvas.addMouseListener(fMouseListener); canvas.addListener(SWT.MenuDetect, fMenuDetectListener); canvas.addDisposeListener(fDisposeListener); } // dispose of exceeding resources for (int i= oldSize; i > newSize; i--) { Item item= (Item) children[i - 1].getData(); item.deselect(); children[i - 1].dispose(); } }