Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
View | Details | Raw Unified | Return to bug 248623 | Differences between
and this patch

Collapse All | Expand All

(-)j2ee_ui/org/eclipse/jst/j2ee/internal/AvailableJ2EEComponentsForEARContentProvider.java (-41 / +44 lines)
Lines 22-30 Link Here
22
import org.eclipse.core.runtime.CoreException;
22
import org.eclipse.core.runtime.CoreException;
23
import org.eclipse.core.runtime.IPath;
23
import org.eclipse.core.runtime.IPath;
24
import org.eclipse.jem.util.logger.proxy.Logger;
24
import org.eclipse.jem.util.logger.proxy.Logger;
25
import org.eclipse.jface.viewers.ILabelProviderListener;
25
import org.eclipse.jface.viewers.ILabelDecorator;
26
import org.eclipse.jface.viewers.ILabelProvider;
26
import org.eclipse.jface.viewers.IStructuredContentProvider;
27
import org.eclipse.jface.viewers.IStructuredContentProvider;
27
import org.eclipse.jface.viewers.ITableLabelProvider;
28
import org.eclipse.jface.viewers.ITableLabelProvider;
29
import org.eclipse.jface.viewers.LabelProvider;
28
import org.eclipse.jface.viewers.Viewer;
30
import org.eclipse.jface.viewers.Viewer;
29
import org.eclipse.jst.j2ee.application.internal.operations.ClassPathSelection;
31
import org.eclipse.jst.j2ee.application.internal.operations.ClassPathSelection;
30
import org.eclipse.jst.j2ee.classpathdep.ClasspathDependencyUtil;
32
import org.eclipse.jst.j2ee.classpathdep.ClasspathDependencyUtil;
Lines 38-50 Link Here
38
import org.eclipse.jst.j2ee.project.JavaEEProjectUtilities;
40
import org.eclipse.jst.j2ee.project.JavaEEProjectUtilities;
39
import org.eclipse.jst.javaee.application.Application;
41
import org.eclipse.jst.javaee.application.Application;
40
import org.eclipse.swt.graphics.Image;
42
import org.eclipse.swt.graphics.Image;
43
import org.eclipse.ui.PlatformUI;
44
import org.eclipse.ui.model.WorkbenchLabelProvider;
41
import org.eclipse.wst.common.componentcore.ComponentCore;
45
import org.eclipse.wst.common.componentcore.ComponentCore;
42
import org.eclipse.wst.common.componentcore.ModuleCoreNature;
46
import org.eclipse.wst.common.componentcore.ModuleCoreNature;
43
import org.eclipse.wst.common.componentcore.internal.resources.VirtualArchiveComponent;
47
import org.eclipse.wst.common.componentcore.internal.resources.VirtualArchiveComponent;
44
import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
48
import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
45
import org.eclipse.wst.common.componentcore.resources.IVirtualReference;
49
import org.eclipse.wst.common.componentcore.resources.IVirtualReference;
46
50
47
public class AvailableJ2EEComponentsForEARContentProvider implements IStructuredContentProvider, ITableLabelProvider {
51
public class AvailableJ2EEComponentsForEARContentProvider extends LabelProvider
52
	implements IStructuredContentProvider, ITableLabelProvider {
48
	
53
	
49
	final static String PATH_SEPARATOR = String.valueOf(IPath.SEPARATOR);
54
	final static String PATH_SEPARATOR = String.valueOf(IPath.SEPARATOR);
50
	
55
	
Lines 53-63 Link Here
53
	private boolean isEE5 = false;
58
	private boolean isEE5 = false;
54
	private String libDir = null;
59
	private String libDir = null;
55
	
60
	
61
	private ILabelDecorator decorator = PlatformUI.getWorkbench().getDecoratorManager().getLabelDecorator();
56
	
62
	
57
	public AvailableJ2EEComponentsForEARContentProvider(IVirtualComponent aEarComponent, int j2eeVersion) {
63
	private ILabelProvider workbenchLabelProvider = new WorkbenchLabelProvider();
64
	
65
	private AvailableJ2EEComponentsForEARContentProvider instance;
66
67
	public AvailableJ2EEComponentsForEARContentProvider(IVirtualComponent aEarComponent, int j2eeVersion, ILabelDecorator decorator) {
58
		super();
68
		super();
59
		this.j2eeVersion = j2eeVersion;
69
		this.j2eeVersion = j2eeVersion;
60
		earComponent = aEarComponent;
70
		earComponent = aEarComponent;
71
		
72
		this.decorator = decorator;
61
	}
73
	}
62
74
63
	/*
75
	/*
Lines 217-225 Link Here
217
	 * @see org.eclipse.jface.viewers.ITableLabelProvider#getColumnImage(java.lang.Object, int)
229
	 * @see org.eclipse.jface.viewers.ITableLabelProvider#getColumnImage(java.lang.Object, int)
218
	 */
230
	 */
219
	public Image getColumnImage(Object element, int columnIndex) {
231
	public Image getColumnImage(Object element, int columnIndex) {
232
		if (columnIndex >=2){
233
			return null;
234
		}
235
		if (element instanceof IVirtualComponent) {
236
			IVirtualComponent comp = (IVirtualComponent)element;
237
			return getDecoratedImage(comp);
238
		} else if (element instanceof IProject){
239
			return workbenchLabelProvider.getImage(element);
240
		}
220
		return null;
241
		return null;
221
	}
242
	}
222
243
244
	private Image getDecoratedImage(IVirtualComponent comp) {
245
		return getDecoratedImage(comp.getProject());
246
	}
247
	
248
	private Image getDecoratedImage(IProject project) {
249
		Image image = workbenchLabelProvider.getImage(project);
250
		if (decorator != null) {
251
			Image decorated = decorator.decorateImage(image, project);
252
			if (decorated != null) {
253
				return decorated;
254
			}
255
		}
256
		return image;
257
	}
258
223
	/*
259
	/*
224
	 * (non-Javadoc)
260
	 * (non-Javadoc)
225
	 * 
261
	 * 
Lines 256-302 Link Here
256
		}		
292
		}		
257
		return null;
293
		return null;
258
	}	
294
	}	
259
	/*
295
	
260
	 * (non-Javadoc)
261
	 * 
262
	 * @see org.eclipse.jface.viewers.IContentProvider#inputChanged(org.eclipse.jface.viewers.Viewer,
263
	 *      java.lang.Object, java.lang.Object)
264
	 */
265
	public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
266
		//do nothing
267
	}
268
269
	/*
270
	 * (non-Javadoc)
271
	 * 
272
	 * @see org.eclipse.jface.viewers.IBaseLabelProvider#addListener(org.eclipse.jface.viewers.ILabelProviderListener)
273
	 */
274
	public void addListener(ILabelProviderListener listener) {
275
		//do nothing
276
	}
277
278
	/*
279
	 * (non-Javadoc)
280
	 * 
281
	 * @see org.eclipse.jface.viewers.IBaseLabelProvider#isLabelProperty(java.lang.Object,
282
	 *      java.lang.String)
283
	 */
284
	public boolean isLabelProperty(Object element, String property) {
285
		return false;
286
	}
287
288
	/*
289
	 * (non-Javadoc)
290
	 * 
291
	 * @see org.eclipse.jface.viewers.IBaseLabelProvider#removeListener(org.eclipse.jface.viewers.ILabelProviderListener)
292
	 */
293
	public void removeListener(ILabelProviderListener listener) {
294
		//do nothing
295
	}
296
297
	/* (non-Javadoc)
296
	/* (non-Javadoc)
298
	 * @see org.eclipse.jface.viewers.IContentProvider#dispose()
297
	 * @see org.eclipse.jface.viewers.IContentProvider#dispose()
299
	 */
298
	 */
300
	public void dispose() {
299
	public void dispose() {
301
	}
300
	}
301
302
	public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
303
		
304
	}
302
}
305
}
(-)j2ee_ui/org/eclipse/jst/j2ee/internal/AddModulestoEARPropertiesPage.java (-3 / +17 lines)
Lines 43-48 Link Here
43
import org.eclipse.jface.viewers.ColumnWeightData;
43
import org.eclipse.jface.viewers.ColumnWeightData;
44
import org.eclipse.jface.viewers.ICheckStateListener;
44
import org.eclipse.jface.viewers.ICheckStateListener;
45
import org.eclipse.jface.viewers.IContentProvider;
45
import org.eclipse.jface.viewers.IContentProvider;
46
import org.eclipse.jface.viewers.ILabelDecorator;
47
import org.eclipse.jface.viewers.ILabelProviderListener;
48
import org.eclipse.jface.viewers.LabelProviderChangedEvent;
46
import org.eclipse.jface.viewers.TableLayout;
49
import org.eclipse.jface.viewers.TableLayout;
47
import org.eclipse.jst.j2ee.application.internal.operations.AddComponentToEnterpriseApplicationDataModelProvider;
50
import org.eclipse.jst.j2ee.application.internal.operations.AddComponentToEnterpriseApplicationDataModelProvider;
48
import org.eclipse.jst.j2ee.application.internal.operations.RemoveComponentFromEnterpriseApplicationDataModelProvider;
51
import org.eclipse.jst.j2ee.application.internal.operations.RemoveComponentFromEnterpriseApplicationDataModelProvider;
Lines 803-811 Link Here
803
806
804
		if (earComponent != null) {
807
		if (earComponent != null) {
805
			int j2eeVersion = J2EEVersionUtil.convertVersionStringToInt(earComponent);
808
			int j2eeVersion = J2EEVersionUtil.convertVersionStringToInt(earComponent);
806
			AvailableJ2EEComponentsForEARContentProvider provider = new AvailableJ2EEComponentsForEARContentProvider(earComponent, j2eeVersion);
809
			ILabelDecorator decorator = PlatformUI.getWorkbench().getDecoratorManager().getLabelDecorator();
810
			AvailableJ2EEComponentsForEARContentProvider provider = new AvailableJ2EEComponentsForEARContentProvider(earComponent, j2eeVersion, decorator);
811
			decorator.addListener(new ILabelProviderListener(){
812
			
813
				public void labelProviderChanged(LabelProviderChangedEvent event) {
814
					refresh();
815
				}
816
			});
807
			availableComponentsViewer.setContentProvider(provider);
817
			availableComponentsViewer.setContentProvider(provider);
808
			availableComponentsViewer.setLabelProvider(provider);
818
			availableComponentsViewer.setLabelProvider(provider);
819
			
820
			
809
			setLibDirInContentProvider();
821
			setLibDirInContentProvider();
810
			addTableListeners();
822
			addTableListeners();
811
		}
823
		}
Lines 1128-1141 Link Here
1128
	
1140
	
1129
	
1141
	
1130
	public void refresh() {
1142
	public void refresh() {
1131
1143
		if(availableComponentsViewer.getContentProvider() == null){
1144
			return;
1145
		}
1132
		IWorkspaceRoot input = ResourcesPlugin.getWorkspace().getRoot();
1146
		IWorkspaceRoot input = ResourcesPlugin.getWorkspace().getRoot();
1133
		availableComponentsViewer.setInput(input);
1147
		availableComponentsViewer.setInput(input);
1134
		GridData data = new GridData(GridData.FILL_BOTH);
1148
		GridData data = new GridData(GridData.FILL_BOTH);
1135
		int numlines = Math.min(10, availableComponentsViewer.getTable().getItemCount());
1149
		int numlines = Math.min(10, availableComponentsViewer.getTable().getItemCount());
1136
		data.heightHint = availableComponentsViewer.getTable().getItemHeight() * numlines;
1150
		data.heightHint = availableComponentsViewer.getTable().getItemHeight() * numlines;
1137
		availableComponentsViewer.getTable().setLayoutData(data);
1151
		availableComponentsViewer.getTable().setLayoutData(data);
1138
1152
		
1139
		//[Bug 238264] for all the jars in the cache temparaly list them in the grid
1153
		//[Bug 238264] for all the jars in the cache temparaly list them in the grid
1140
		// until the user applys the changes
1154
		// until the user applys the changes
1141
		for(IVirtualComponent jarComponent : this.addedJARComponents) {
1155
		for(IVirtualComponent jarComponent : this.addedJARComponents) {
(-)j2ee_ui/org/eclipse/jst/j2ee/internal/wizard/J2EEComponentLabelProvider.java (-47 / +30 lines)
Lines 16-26 Link Here
16
 */
16
 */
17
package org.eclipse.jst.j2ee.internal.wizard;
17
package org.eclipse.jst.j2ee.internal.wizard;
18
18
19
import org.eclipse.core.resources.IProject;
20
import org.eclipse.jface.viewers.ILabelProvider;
19
import org.eclipse.jface.viewers.ILabelProvider;
21
import org.eclipse.jface.viewers.ILabelProviderListener;
20
import org.eclipse.jface.viewers.ILabelProviderListener;
21
import org.eclipse.jface.viewers.ITableLabelProvider;
22
import org.eclipse.jface.viewers.LabelProvider;
23
import org.eclipse.jface.viewers.LabelProviderChangedEvent;
22
import org.eclipse.swt.graphics.Image;
24
import org.eclipse.swt.graphics.Image;
23
import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
24
25
25
26
26
27
Lines 30-91 Link Here
30
 * TODO To change the template for this generated type comment go to
31
 * TODO To change the template for this generated type comment go to
31
 * Window - Preferences - Java - Code Style - Code Templates
32
 * Window - Preferences - Java - Code Style - Code Templates
32
 */
33
 */
33
public class J2EEComponentLabelProvider implements ILabelProvider {
34
public class J2EEComponentLabelProvider extends LabelProvider implements ILabelProvider {
34
35
36
	ITableLabelProvider tableLableProvider;
37
	
38
	private J2EEComponentLabelProvider instance;
39
	
40
	public J2EEComponentLabelProvider(ITableLabelProvider tableLableProvider){
41
		this.tableLableProvider = tableLableProvider;
42
		instance = this;
43
		tableLableProvider.addListener(new ILabelProviderListener(){
44
			public void labelProviderChanged(LabelProviderChangedEvent event) {
45
				LabelProviderChangedEvent newEvent = new LabelProviderChangedEvent(instance);
46
				fireLabelProviderChanged(newEvent);
47
			}
48
		});
49
	}
35
	/* (non-Javadoc)
50
	/* (non-Javadoc)
36
	 * @see org.eclipse.jface.viewers.ILabelProvider#getImage(java.lang.Object)
51
	 * @see org.eclipse.jface.viewers.ILabelProvider#getImage(java.lang.Object)
37
	 */
52
	 */
38
	public Image getImage(Object element) {
53
	public Image getImage(Object element) {
39
		// TODO Auto-generated method stub
54
		return tableLableProvider.getColumnImage(element, 1);
40
		return null;
41
	}
55
	}
42
56
43
	/* (non-Javadoc)
57
	/* (non-Javadoc)
44
	 * @see org.eclipse.jface.viewers.ILabelProvider#getText(java.lang.Object)
58
	 * @see org.eclipse.jface.viewers.ILabelProvider#getText(java.lang.Object)
45
	 */
59
	 */
46
	public String getText(Object element) {
60
	public String getText(Object element) {
47
		if(element instanceof IVirtualComponent){
61
		return tableLableProvider.getColumnText(element, 1);
48
			IVirtualComponent comp = (IVirtualComponent)element;
62
//		if(element instanceof IVirtualComponent){
49
			return comp.getProject().getName();
63
//			IVirtualComponent comp = (IVirtualComponent)element;
50
		}
64
//			return comp.getProject().getName();
51
		
65
//		}
52
		if (element instanceof IProject) {
66
//		
53
			IProject handle = (IProject)element;
67
//		if (element instanceof IProject) {
54
			return handle.getName();
68
//			IProject handle = (IProject)element;
55
		}
69
//			return handle.getName();
56
		return null;
70
//		}
57
	}
71
//		return null;
58
59
	/* (non-Javadoc)
60
	 * @see org.eclipse.jface.viewers.IBaseLabelProvider#addListener(org.eclipse.jface.viewers.ILabelProviderListener)
61
	 */
62
	public void addListener(ILabelProviderListener listener) {
63
		// TODO Auto-generated method stub
64
		
65
	}
66
67
	/* (non-Javadoc)
68
	 * @see org.eclipse.jface.viewers.IBaseLabelProvider#dispose()
69
	 */
70
	public void dispose() {
71
		// TODO Auto-generated method stub
72
		
73
	}
74
75
	/* (non-Javadoc)
76
	 * @see org.eclipse.jface.viewers.IBaseLabelProvider#isLabelProperty(java.lang.Object, java.lang.String)
77
	 */
78
	public boolean isLabelProperty(Object element, String property) {
79
		// TODO Auto-generated method stub
80
		return false;
81
	}
82
83
	/* (non-Javadoc)
84
	 * @see org.eclipse.jface.viewers.IBaseLabelProvider#removeListener(org.eclipse.jface.viewers.ILabelProviderListener)
85
	 */
86
	public void removeListener(ILabelProviderListener listener) {
87
		// TODO Auto-generated method stub
88
		
89
	}
72
	}
90
73
91
}
74
}
(-)j2ee_ui/org/eclipse/jst/j2ee/ui/project/facet/EarFacetInstallPage.java (-2 / +16 lines)
Lines 26-31 Link Here
26
import org.eclipse.jface.viewers.CheckStateChangedEvent;
26
import org.eclipse.jface.viewers.CheckStateChangedEvent;
27
import org.eclipse.jface.viewers.CheckboxTableViewer;
27
import org.eclipse.jface.viewers.CheckboxTableViewer;
28
import org.eclipse.jface.viewers.ICheckStateListener;
28
import org.eclipse.jface.viewers.ICheckStateListener;
29
import org.eclipse.jface.viewers.ILabelDecorator;
30
import org.eclipse.jface.viewers.ILabelProviderListener;
31
import org.eclipse.jface.viewers.LabelProviderChangedEvent;
29
import org.eclipse.jface.viewers.TableLayout;
32
import org.eclipse.jface.viewers.TableLayout;
30
import org.eclipse.jface.wizard.WizardDialog;
33
import org.eclipse.jface.wizard.WizardDialog;
31
import org.eclipse.jst.j2ee.earcreation.IEarFacetInstallDataModelProperties;
34
import org.eclipse.jst.j2ee.earcreation.IEarFacetInstallDataModelProperties;
Lines 50-55 Link Here
50
import org.eclipse.swt.widgets.Label;
53
import org.eclipse.swt.widgets.Label;
51
import org.eclipse.swt.widgets.TableItem;
54
import org.eclipse.swt.widgets.TableItem;
52
import org.eclipse.swt.widgets.Text;
55
import org.eclipse.swt.widgets.Text;
56
import org.eclipse.ui.PlatformUI;
53
import org.eclipse.wst.common.componentcore.datamodel.properties.IFacetDataModelProperties;
57
import org.eclipse.wst.common.componentcore.datamodel.properties.IFacetDataModelProperties;
54
import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
58
import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
55
import org.eclipse.wst.common.frameworks.datamodel.DataModelFactory;
59
import org.eclipse.wst.common.frameworks.datamodel.DataModelFactory;
Lines 126-134 Link Here
126
		gData.heightHint = 80;
130
		gData.heightHint = 80;
127
		moduleProjectsViewer.getControl().setLayoutData(gData);
131
		moduleProjectsViewer.getControl().setLayoutData(gData);
128
		int j2eeVersion = getJ2EEVersion();
132
		int j2eeVersion = getJ2EEVersion();
129
		AvailableJ2EEComponentsForEARContentProvider provider = new AvailableJ2EEComponentsForEARContentProvider(null, j2eeVersion);
133
		ILabelDecorator decorator = PlatformUI.getWorkbench().getDecoratorManager().getLabelDecorator();
134
		AvailableJ2EEComponentsForEARContentProvider provider = new AvailableJ2EEComponentsForEARContentProvider(null, j2eeVersion, decorator);
130
		moduleProjectsViewer.setContentProvider(provider);
135
		moduleProjectsViewer.setContentProvider(provider);
131
		moduleProjectsViewer.setLabelProvider(new J2EEComponentLabelProvider());
136
		final J2EEComponentLabelProvider labelProvider = new J2EEComponentLabelProvider(provider);
137
		decorator.addListener(new ILabelProviderListener(){
138
		
139
			public void labelProviderChanged(LabelProviderChangedEvent event) {
140
				if(!moduleProjectsViewer.getTable().isDisposed()){
141
					moduleProjectsViewer.refresh(true);
142
				}
143
			}
144
		});
145
		moduleProjectsViewer.setLabelProvider(labelProvider);
132
		setCheckedItemsFromModel();
146
		setCheckedItemsFromModel();
133
		
147
		
134
		moduleProjectsViewer.addCheckStateListener(new ICheckStateListener() {
148
		moduleProjectsViewer.addCheckStateListener(new ICheckStateListener() {

Return to bug 248623