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 96893 | Differences between
and this patch

Collapse All | Expand All

(-)src/org/eclipse/pde/internal/ui/PDEUIMessages.java (+3 lines)
Lines 1809-1814 Link Here
1809
	public static String ProductDefinitonWizardPage_plugin;
1809
	public static String ProductDefinitonWizardPage_plugin;
1810
	public static String ProductDefinitonWizardPage_browse;
1810
	public static String ProductDefinitonWizardPage_browse;
1811
	public static String ProductDefinitonWizardPage_productId;
1811
	public static String ProductDefinitonWizardPage_productId;
1812
	public static String ProductDefinitonWizardPage_productName;
1812
	public static String ProductDefinitonWizardPage_noPluginId;
1813
	public static String ProductDefinitonWizardPage_noPluginId;
1813
	public static String ProductDefinitonWizardPage_noPlugin;
1814
	public static String ProductDefinitonWizardPage_noPlugin;
1814
	public static String ProductDefinitonWizardPage_invalidId;
1815
	public static String ProductDefinitonWizardPage_invalidId;
Lines 1983-1986 Link Here
1983
	public static String BaseExportWizardPage_javacSource;
1984
	public static String BaseExportWizardPage_javacSource;
1984
1985
1985
	public static String PluginWorkingSet_message;
1986
	public static String PluginWorkingSet_message;
1987
1988
	public static String ProductDefinitonWizardPage_noProductName;
1986
}
1989
}
(-)src/org/eclipse/pde/internal/ui/pderesources.properties (+2 lines)
Lines 1149-1154 Link Here
1149
ProductDefinitonWizardPage_productExists=Specified product already exists
1149
ProductDefinitonWizardPage_productExists=Specified product already exists
1150
ProductDefinitonWizardPage_application=&Application:
1150
ProductDefinitonWizardPage_application=&Application:
1151
ProductDefinitonWizardPage_noProductID=Product ID is not set
1151
ProductDefinitonWizardPage_noProductID=Product ID is not set
1152
ProductDefinitonWizardPage_noProductName=Product name is not set
1152
ProductFileWizadPage_existingProduct=&Use an existing product:
1153
ProductFileWizadPage_existingProduct=&Use an existing product:
1153
ProductFileWizadPage_existingLaunchConfig=U&se a launch configuration:
1154
ProductFileWizadPage_existingLaunchConfig=U&se a launch configuration:
1154
ProductDefinitonWizardPage_productDefinition=<form><p>A product, the Eclipse unit of branding, is defined declaratively as an <a href="products">org.eclipse.core.runtime.products</a> extension inside a plug-in.</p></form>
1155
ProductDefinitonWizardPage_productDefinition=<form><p>A product, the Eclipse unit of branding, is defined declaratively as an <a href="products">org.eclipse.core.runtime.products</a> extension inside a plug-in.</p></form>
Lines 1952-1957 Link Here
1952
ProductDefinitonWizardPage_plugin=&Defining Plug-in:
1953
ProductDefinitonWizardPage_plugin=&Defining Plug-in:
1953
ProductDefinitonWizardPage_browse=B&rowse...
1954
ProductDefinitonWizardPage_browse=B&rowse...
1954
ProductDefinitonWizardPage_productId=&Product ID:
1955
ProductDefinitonWizardPage_productId=&Product ID:
1956
ProductDefinitonWizardPage_productName=Product &Name:
1955
ProductDefinitonWizardPage_noPluginId=Plug-in ID is not set
1957
ProductDefinitonWizardPage_noPluginId=Plug-in ID is not set
1956
ProductDefinitonWizardPage_noPlugin=Specified plug-in does not exist
1958
ProductDefinitonWizardPage_noPlugin=Specified plug-in does not exist
1957
ProductDefinitonWizardPage_invalidId=Invalid product ID.  Legal characters are: a-z A-Z 0-9 _
1959
ProductDefinitonWizardPage_invalidId=Invalid product ID.  Legal characters are: a-z A-Z 0-9 _
(-)src/org/eclipse/pde/internal/ui/editor/product/ProductInfoSection.java (-4 / +3 lines)
Lines 76-84 Link Here
76
76
77
		IActionBars actionBars = getPage().getPDEEditor().getEditorSite().getActionBars();
77
		IActionBars actionBars = getPage().getPDEEditor().getEditorSite().getActionBars();
78
		
78
		
79
		createNameEntry(client, toolkit, actionBars);
79
		createIdEntry(client, toolkit, actionBars);
80
		createIdEntry(client, toolkit, actionBars);
80
		createApplicationEntry(client, toolkit, actionBars);
81
		createApplicationEntry(client, toolkit, actionBars);
81
		createNameEntry(client, toolkit, actionBars);
82
		createConfigurationOption(client, toolkit);
82
		createConfigurationOption(client, toolkit);
83
		
83
		
84
		toolkit.paintBordersFor(client);
84
		toolkit.paintBordersFor(client);
Lines 89-95 Link Here
89
	}
89
	}
90
	
90
	
91
	private void createNameEntry(Composite client, FormToolkit toolkit, IActionBars actionBars) {
91
	private void createNameEntry(Composite client, FormToolkit toolkit, IActionBars actionBars) {
92
		createLabel(client, toolkit, ""); //$NON-NLS-1$
93
		createLabel(client, toolkit, PDEUIMessages.ProductInfoSection_titleLabel); 
92
		createLabel(client, toolkit, PDEUIMessages.ProductInfoSection_titleLabel); 
94
93
95
		fNameEntry = new FormEntry(client, toolkit, "Product Name:", null, false); //$NON-NLS-1$
94
		fNameEntry = new FormEntry(client, toolkit, "Product Name:", null, false); //$NON-NLS-1$
Lines 98-109 Link Here
98
				getProduct().setName(entry.getValue().trim());
97
				getProduct().setName(entry.getValue().trim());
99
			}
98
			}
100
		});
99
		});
101
		TableWrapData td = (TableWrapData)fNameEntry.getText().getLayoutData();
102
		td.grabHorizontal = false;
103
		fNameEntry.setEditable(isEditable());
100
		fNameEntry.setEditable(isEditable());
104
	}
101
	}
105
	
102
	
106
	private void createIdEntry(Composite client, FormToolkit toolkit, IActionBars actionBars) {
103
	private void createIdEntry(Composite client, FormToolkit toolkit, IActionBars actionBars) {
104
		createLabel(client, toolkit, ""); //$NON-NLS-1$
107
		createLabel(client, toolkit, PDEUIMessages.ProductInfoSection_prodIdLabel); 
105
		createLabel(client, toolkit, PDEUIMessages.ProductInfoSection_prodIdLabel); 
108
106
109
		Label label = toolkit.createLabel(client, PDEUIMessages.ProductInfoSection_id); 
107
		Label label = toolkit.createLabel(client, PDEUIMessages.ProductInfoSection_id); 
Lines 147-152 Link Here
147
			String app = wizard.getApplication();
145
			String app = wizard.getApplication();
148
			fAppCombo.setText(app);
146
			fAppCombo.setText(app);
149
			getProduct().setApplication(app);
147
			getProduct().setApplication(app);
148
			fNameEntry.setValue(getProduct().getName());
150
		}
149
		}
151
	}
150
	}
152
151
(-)src/org/eclipse/pde/internal/ui/wizards/product/ProductDefinitionWizard.java (-2 / +4 lines)
Lines 33-39 Link Here
33
	}
33
	}
34
	
34
	
35
	public void addPages() {
35
	public void addPages() {
36
		fMainPage = new ProductDefinitonWizardPage("product"); //$NON-NLS-1$
36
		fMainPage = new ProductDefinitonWizardPage("product", fProduct); //$NON-NLS-1$
37
		addPage(fMainPage);
37
		addPage(fMainPage);
38
	}
38
	}
39
39
Lines 42-47 Link Here
42
			fProductId = fMainPage.getProductId();
42
			fProductId = fMainPage.getProductId();
43
			fPluginId = fMainPage.getDefiningPlugin();
43
			fPluginId = fMainPage.getDefiningPlugin();
44
			fApplication = fMainPage.getApplication();
44
			fApplication = fMainPage.getApplication();
45
			String newProductName = fMainPage.getProductName();
46
			if (newProductName != null)
47
				fProduct.setName(newProductName);
45
			getContainer().run(
48
			getContainer().run(
46
					false,
49
					false,
47
					true,
50
					true,
Lines 64-69 Link Here
64
	public String getApplication() {
67
	public String getApplication() {
65
		return fApplication;
68
		return fApplication;
66
	}
69
	}
67
	
68
70
69
}
71
}
(-)src/org/eclipse/pde/internal/ui/wizards/product/ProductDefinitonWizardPage.java (-13 / +41 lines)
Lines 17-22 Link Here
17
import org.eclipse.jface.wizard.*;
17
import org.eclipse.jface.wizard.*;
18
import org.eclipse.pde.core.plugin.*;
18
import org.eclipse.pde.core.plugin.*;
19
import org.eclipse.pde.internal.core.*;
19
import org.eclipse.pde.internal.core.*;
20
import org.eclipse.pde.internal.core.iproduct.IProduct;
20
import org.eclipse.pde.internal.ui.*;
21
import org.eclipse.pde.internal.ui.*;
21
import org.eclipse.pde.internal.ui.search.*;
22
import org.eclipse.pde.internal.ui.search.*;
22
import org.eclipse.pde.internal.ui.util.*;
23
import org.eclipse.pde.internal.ui.util.*;
Lines 31-40 Link Here
31
32
32
public class ProductDefinitonWizardPage extends WizardPage implements IHyperlinkListener {
33
public class ProductDefinitonWizardPage extends WizardPage implements IHyperlinkListener {
33
34
35
	private Text fProductName;
34
	private Text fPluginText;
36
	private Text fPluginText;
35
	private Text fProductText;
37
	private Text fProductText;
36
	private Set fProductSet;
38
	private Set fProductSet;
37
	private Combo fApplicationCombo;
39
	private Combo fApplicationCombo;
40
	private IProduct fProduct;
38
41
39
	private ModifyListener fListener = new ModifyListener() {
42
	private ModifyListener fListener = new ModifyListener() {
40
		public void modifyText(ModifyEvent e) {
43
		public void modifyText(ModifyEvent e) {
Lines 49-54 Link Here
49
		setDescription(PDEUIMessages.ProductDefinitonWizardPage_desc); 
52
		setDescription(PDEUIMessages.ProductDefinitonWizardPage_desc); 
50
	}
53
	}
51
54
55
	public ProductDefinitonWizardPage(String string, IProduct product) {
56
		super(string);
57
		fProduct = product;
58
	}
59
52
	public void createControl(Composite parent) {
60
	public void createControl(Composite parent) {
53
		Composite comp = new Composite(parent, SWT.NONE);
61
		Composite comp = new Composite(parent, SWT.NONE);
54
		GridLayout layout = new GridLayout();
62
		GridLayout layout = new GridLayout();
Lines 64-70 Link Here
64
		Dialog.applyDialogFont(comp);
72
		Dialog.applyDialogFont(comp);
65
		PlatformUI.getWorkbench().getHelpSystem().setHelp(comp, IHelpContextIds.PRODUCT_DEFINITIONS_WIZARD);
73
		PlatformUI.getWorkbench().getHelpSystem().setHelp(comp, IHelpContextIds.PRODUCT_DEFINITIONS_WIZARD);
66
	}
74
	}
67
	
75
68
	private void createFormText(FormToolkit toolkit, Composite parent, String content, int span) {
76
	private void createFormText(FormToolkit toolkit, Composite parent, String content, int span) {
69
		FormText text = toolkit.createFormText(parent, false);
77
		FormText text = toolkit.createFormText(parent, false);
70
		text.setText(content, true, false);
78
		text.setText(content, true, false);
Lines 83-89 Link Here
83
		group.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
91
		group.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
84
92
85
		createFormText(toolkit, group, PDEUIMessages.ProductDefinitonWizardPage_productDefinition, 3); 
93
		createFormText(toolkit, group, PDEUIMessages.ProductDefinitonWizardPage_productDefinition, 3); 
86
		Label label = new Label(group, SWT.NONE);
94
		
95
		Label label;
96
		GridData gd = new GridData(GridData.FILL_HORIZONTAL);
97
		gd.horizontalSpan = 2;
98
		
99
		if (fProduct.getName() == null || fProduct.getName().equals("")) { //$NON-NLS-1$
100
			label = new Label(group, SWT.NONE);
101
			label.setText(PDEUIMessages.ProductDefinitonWizardPage_productName); 
102
			
103
			fProductName = new Text(group, SWT.SINGLE|SWT.BORDER);
104
			fProductName.setLayoutData(gd);
105
			fProductName.addModifyListener(fListener);
106
		}
107
		
108
		label = new Label(group, SWT.NONE);
87
		label.setText(PDEUIMessages.ProductDefinitonWizardPage_plugin); 
109
		label.setText(PDEUIMessages.ProductDefinitonWizardPage_plugin); 
88
		
110
		
89
		fPluginText = new Text(group, SWT.SINGLE|SWT.BORDER);
111
		fPluginText = new Text(group, SWT.SINGLE|SWT.BORDER);
Lines 103-110 Link Here
103
		label.setText(PDEUIMessages.ProductDefinitonWizardPage_productId); 
125
		label.setText(PDEUIMessages.ProductDefinitonWizardPage_productId); 
104
		
126
		
105
		fProductText = new Text(group, SWT.SINGLE|SWT.BORDER);
127
		fProductText = new Text(group, SWT.SINGLE|SWT.BORDER);
106
		GridData gd = new GridData(GridData.FILL_HORIZONTAL);
107
		gd.horizontalSpan = 2;
108
		fProductText.setLayoutData(gd);
128
		fProductText.setLayoutData(gd);
109
		fProductText.addModifyListener(fListener);
129
		fProductText.addModifyListener(fListener);
110
		
130
		
Lines 130-151 Link Here
130
	
150
	
131
	public void setVisible(boolean visible) {
151
	public void setVisible(boolean visible) {
132
		if (visible) {
152
		if (visible) {
133
			fPluginText.setFocus();
153
			if (fProductName != null)
154
				fProductName.setFocus();
155
			else
156
				fPluginText.setFocus();
134
		}
157
		}
135
		super.setVisible(visible);
158
		super.setVisible(visible);
136
	}
159
	}
137
160
138
	private void validatePage() {
161
	private void validatePage() {
139
		String error = null;
162
		String error = null;
140
		String pluginId = fPluginText.getText().trim();
163
		String productName = getProductName();
141
		if (pluginId.length() == 0) {
164
		String pluginId = getDefiningPlugin();
165
		IPluginModelBase model = PDECore.getDefault().getModelManager().findModel(pluginId);
166
		if (productName != null && productName.length() == 0) {
167
			error = PDEUIMessages.ProductDefinitonWizardPage_noProductName;
168
		} else if (model == null){ 
169
			error = PDEUIMessages.ProductDefinitonWizardPage_noPlugin; 
170
		} else if (model.getUnderlyingResource() == null) {
171
			error = PDEUIMessages.ProductDefinitonWizardPage_notInWorkspace; 
172
		} else if (pluginId.length() == 0) {
142
			error = PDEUIMessages.ProductDefinitonWizardPage_noPluginId; 
173
			error = PDEUIMessages.ProductDefinitonWizardPage_noPluginId; 
143
		} else {
144
			IPluginModelBase model = PDECore.getDefault().getModelManager().findModel(pluginId);
145
			if (model == null)
146
				error = PDEUIMessages.ProductDefinitonWizardPage_noPlugin; 
147
			else if (model.getUnderlyingResource() == null)
148
				error = PDEUIMessages.ProductDefinitonWizardPage_notInWorkspace; 
149
		}
174
		}
150
		if (error == null)
175
		if (error == null)
151
			error = validateId();
176
			error = validateId();
Lines 207-210 Link Here
207
		return fApplicationCombo.getText();
232
		return fApplicationCombo.getText();
208
	}
233
	}
209
	
234
	
235
	public String getProductName() {
236
		return (fProductName == null) ? null : fProductName.getText().trim();
237
	}
210
}
238
}

Return to bug 96893