blob: 7d054001b08b1829d9f57348d6c6a618bcd03f80 [file] [log] [blame]
/**
*
* Copyright (c) 2011, 2016 - Loetz GmbH&Co.KG (69115 Heidelberg, Germany)
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* Christophe Loetz (Loetz GmbH&Co.KG) - initial implementation
*/
package org.eclipse.osbp.wizard.ui.allinonedsl;
import org.eclipse.osbp.wizard.ui.AllInOneDSLsNewProjectWizard;
import org.eclipse.osbp.wizard.ui.basic.BasicNewProjectWizardPage;
import org.eclipse.osbp.wizard.ui.basic.CommonProjectWizardTranslator;
import org.eclipse.osbp.wizard.ui.basic.MockDataGenerateType;
import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.Combo;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Event;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Listener;
/**
* The Class AllInOneDSLsNewProjectMockDataPage.
* <br>
* Enables selecting mock generator types, depending on the data sources selected before.
*/
public class AllInOneDSLsNewProjectMockDataPage extends BasicNewProjectWizardPage {
/** The general setting. */
private final boolean generalSetting;
/**
* Instantiates a new all in one DS ls new project mock data page.
*
* @param wizard the wizard
* @param pageName the page name
* @param generalSetting the general setting
*/
public AllInOneDSLsNewProjectMockDataPage(final AllInOneDSLsNewProjectWizard wizard, String pageName, boolean generalSetting) {
super(wizard, pageName);
this.generalSetting = generalSetting;
wizard.projectNameChanges.add(new Listener() {
public void handleEvent(Event e) {
wizard.projectInfo.setTopLevelDomain(wizard.topLevelDomain.getItem(wizard.topLevelDomain.getSelectionIndex()).split(" ")[0]);
wizard.projectInfo.setCompanyDomain(wizard.companyDomain.getText());
wizard.projectInfo.setBusinessBundle(wizard.businessBundle.getText());
wizard.projectNameField.setText(wizard.projectInfo.getBasicProjectName());
wizard.bundleName.setText(wizard.projectInfo.getBasicSymbolicName());
wizard.productDesktopUrlPath.setText(wizard.projectInfo.getProductDesktopUrlPath());
wizard.productMobileUrlPath.setText(wizard.projectInfo.getProductMobileUrlPath());
wizard.nameModifyListener.handleEvent(e);
}
});
}
@Override
protected final void createProjectNameGroup(Composite parent) {
final AllInOneDSLsNewProjectWizard wizard = (AllInOneDSLsNewProjectWizard) super.wizard;
int selected = 0;
int generalSelected = 0;
// new project label
Label mockGeneralGenerateTypeLabel = new Label(projectGroup, SWT.NONE);
mockGeneralGenerateTypeLabel.setText(wizard.translator.getDocumentation(this,"labelMockGeneralGenerateType"));
// IDEWorkbenchMessages.WizardNewProjectCreationPage_nameLabel);
mockGeneralGenerateTypeLabel.setFont(parent.getFont());
// new project name entry field
wizard.mockGeneralGenerateType = new Combo (projectGroup, SWT.READ_ONLY);
generalSelected = 0;
for (MockDataGenerateType type : MockDataGenerateType.values()) {
wizard.mockGeneralGenerateType.add(type.getDescription());
if (type.equals(wizard.projectInfo.getMockProductDataGenerateType())) {
generalSelected = wizard.mockGeneralGenerateType.indexOf(type.getDescription());
}
}
wizard.mockGeneralGenerateType.setLayoutData(data);
mockGeneralGenerateTypeLabel.setVisible(generalSetting);
wizard.mockGeneralGenerateType.setVisible(generalSetting);
// new project label
Label mockAuthenticationDataGenerateTypeLabel = new Label(projectGroup, SWT.NONE);
mockAuthenticationDataGenerateTypeLabel.setText(wizard.translator.getDocumentation(this,"labelMockAuthenticationDataGenerateType"));
// IDEWorkbenchMessages.WizardNewProjectCreationPage_nameLabel);
mockAuthenticationDataGenerateTypeLabel.setFont(parent.getFont());
// new project name entry field
wizard.mockAuthenticationDataGenerateType = new Combo (projectGroup, SWT.READ_ONLY);
selected = 0;
for (MockDataGenerateType type : MockDataGenerateType.values()) {
wizard.mockAuthenticationDataGenerateType.add(type.getDescription());
if (type.equals(wizard.projectInfo.getMockAuthenticationDataGenerateType())) {
selected = wizard.mockAuthenticationDataGenerateType.indexOf(type.getDescription());
}
}
wizard.mockAuthenticationDataGenerateType.setLayoutData(data);
wizard.mockAuthenticationDataGenerateType.select(selected);
mockAuthenticationDataGenerateTypeLabel.setVisible(!generalSetting);
wizard.mockAuthenticationDataGenerateType.setVisible(!generalSetting);
// new project label
Label mockBlobDataGenerateTypeLabel = new Label(projectGroup, SWT.NONE);
mockBlobDataGenerateTypeLabel.setText(wizard.translator.getDocumentation(this,"labelMockBlobDataGenerateType"));
// IDEWorkbenchMessages.WizardNewProjectCreationPage_nameLabel);
mockBlobDataGenerateTypeLabel.setFont(parent.getFont());
// new project name entry field
wizard.mockBlobDataGenerateType = new Combo (projectGroup, SWT.READ_ONLY);
selected = 0;
for (MockDataGenerateType type : MockDataGenerateType.values()) {
wizard.mockBlobDataGenerateType.add(type.getDescription());
if (type.equals(wizard.projectInfo.getMockBlobDataGenerateType())) {
selected = wizard.mockBlobDataGenerateType.indexOf(type.getDescription());
}
}
wizard.mockBlobDataGenerateType.setLayoutData(data);
wizard.mockBlobDataGenerateType.select(selected);
mockBlobDataGenerateTypeLabel.setVisible(!generalSetting);
wizard.mockBlobDataGenerateType.setVisible(!generalSetting);
// new project label
Label mockProductDataGenerateTypeLabel = new Label(projectGroup, SWT.NONE);
mockProductDataGenerateTypeLabel.setText(wizard.translator.getDocumentation(this,"labelMockProductDataGenerateType"));
// IDEWorkbenchMessages.WizardNewProjectCreationPage_nameLabel);
mockProductDataGenerateTypeLabel.setFont(parent.getFont());
// new project name entry field
wizard.mockProductDataGenerateType = new Combo (projectGroup, SWT.READ_ONLY);
selected = 0;
for (MockDataGenerateType type : MockDataGenerateType.values()) {
wizard.mockProductDataGenerateType.add(type.getDescription());
if (type.equals(wizard.projectInfo.getMockProductDataGenerateType())) {
selected = wizard.mockProductDataGenerateType.indexOf(type.getDescription());
}
}
wizard.mockProductDataGenerateType.setLayoutData(data);
wizard.mockProductDataGenerateType.select(selected);
mockProductDataGenerateTypeLabel.setVisible(!generalSetting);
wizard.mockProductDataGenerateType.setVisible(!generalSetting);
if (generalSetting) {
wizard.mockGeneralGenerateType.addListener(SWT.Modify, new Listener() {
@Override
public void handleEvent(Event event) {
int selected = wizard.mockGeneralGenerateType.getSelectionIndex();
wizard.mockAuthenticationDataGenerateType.select(selected);
wizard.mockBlobDataGenerateType.select(selected);
wizard.mockProductDataGenerateType.select(selected);
}
});
wizard.mockGeneralGenerateType.select(generalSelected);
}
}
}