|
62 | 62 | import org.eclipse.swt.events.SelectionEvent;
|
63 | 63 | import org.eclipse.swt.graphics.Image;
|
64 | 64 | import org.eclipse.swt.graphics.Point;
|
| 65 | +import org.eclipse.swt.graphics.Resource; |
65 | 66 | import org.eclipse.swt.layout.GridData;
|
66 | 67 | import org.eclipse.swt.layout.GridLayout;
|
67 | 68 | import org.eclipse.swt.widgets.Button;
|
68 | 69 | import org.eclipse.swt.widgets.Composite;
|
69 | 70 | import org.eclipse.swt.widgets.Event;
|
70 | 71 | import org.eclipse.swt.widgets.Listener;
|
71 | 72 | import org.eclipse.swt.widgets.Shell;
|
| 73 | +import org.eclipse.swt.widgets.Widget; |
72 | 74 | import org.eclipse.ui.ISharedImages;
|
73 | 75 | import org.eclipse.ui.PlatformUI;
|
74 | 76 | import org.eclipse.ui.ide.dialogs.UIResourceFilterDescription;
|
@@ -605,22 +607,32 @@ public void dispose() {
|
605 | 607 | }
|
606 | 608 |
|
607 | 609 | private void disposeAdvancedControls() {
|
608 |
| - if (linkedResourceComposite != null) { |
609 |
| - linkedResourceComposite.dispose(); |
610 |
| - linkedResourceComposite = null; |
611 |
| - filterButton.dispose(); |
612 |
| - useDefaultLocation.dispose(); |
613 |
| - useVirtualFolder.dispose(); |
614 |
| - useLinkedResource.dispose(); |
615 |
| - linkedGroupComposite.dispose(); |
616 |
| - folderImage.dispose(); |
617 |
| - virtualFolderImage.dispose(); |
618 |
| - linkedFolderImage.dispose(); |
619 |
| - filterButton = null; |
620 |
| - useDefaultLocation = null; |
621 |
| - useVirtualFolder = null; |
622 |
| - useLinkedResource = null; |
623 |
| - linkedGroupComposite = null; |
| 610 | + dispose(linkedResourceComposite); |
| 611 | + dispose(filterButton); |
| 612 | + dispose(useDefaultLocation); |
| 613 | + dispose(useVirtualFolder); |
| 614 | + dispose(useLinkedResource); |
| 615 | + dispose(linkedGroupComposite); |
| 616 | + dispose(folderImage); |
| 617 | + dispose(virtualFolderImage); |
| 618 | + dispose(linkedFolderImage); |
| 619 | + linkedResourceComposite = null; |
| 620 | + filterButton = null; |
| 621 | + useDefaultLocation = null; |
| 622 | + useVirtualFolder = null; |
| 623 | + useLinkedResource = null; |
| 624 | + linkedGroupComposite = null; |
| 625 | + } |
| 626 | + |
| 627 | + private void dispose(Resource resource) { |
| 628 | + if (resource != null) { |
| 629 | + resource.dispose(); |
| 630 | + } |
| 631 | + } |
| 632 | + |
| 633 | + private void dispose(Widget widget) { |
| 634 | + if (widget != null) { |
| 635 | + widget.dispose(); |
624 | 636 | }
|
625 | 637 | }
|
626 | 638 |
|
|
0 commit comments