in modules/tool/axis2-eclipse-codegen-plugin/src/main/java/org/apache/axis2/tool/codegen/eclipse/ui/OptionsPage.java [199:708]
public void createControl(Composite parent) {
container = new Composite(parent, SWT.NULL);
GridLayout layout = new GridLayout();
container.setLayout(layout);
layout.numColumns = 3;
GridData gd = new GridData(GridData.FILL_HORIZONTAL);
Label label = new Label(container, SWT.NULL);
label.setText(CodegenWizardPlugin.getResourceString("page2.options.desc"));
label.setLayoutData(gd);
gd = new GridData(GridData.FILL_HORIZONTAL);
gd.horizontalSpan = 2;
codegenOptionSelectionComboBox = new Combo(container, SWT.DROP_DOWN| SWT.BORDER | SWT.READ_ONLY);
// fill the combo
this.fillCodegenOptionSelectionComboBox();
codegenOptionSelectionComboBox.setLayoutData(gd);
settings.put(PREF_CODEGEN_OPTION_INDEX, codegenOptionSelectionComboBox
.getSelectionIndex());
codegenOptionSelectionComboBox.select(settings.getInt(PREF_CODEGEN_OPTION_INDEX));
codegenOptionSelectionComboBox.addSelectionListener(new SelectionListener() {
public void widgetSelected(SelectionEvent e) {
settings.put(PREF_CODEGEN_OPTION_INDEX, codegenOptionSelectionComboBox
.getSelectionIndex());
if (codegenOptionSelectionComboBox
.getSelectionIndex() == 0 ){
disableControls();
}else if (codegenOptionSelectionComboBox
.getSelectionIndex() == 1){
enableControls();
}
}
public void widgetDefaultSelected(SelectionEvent e) {
}
});
gd = new GridData(GridData.FILL_HORIZONTAL);
gd.horizontalSpan = 2;
Label label1 = new Label(container, SWT.NULL);
label1.setText(CodegenWizardPlugin
.getResourceString("page2.language.caption"));
languageSelectionComboBox = new Combo(container, SWT.DROP_DOWN| SWT.BORDER | SWT.READ_ONLY);
// fill the combo
this.fillLanguageCombo();
languageSelectionComboBox.setLayoutData(gd);
languageSelectionComboBox.select(settings.getInt(PREF_LANGUAGE_INDEX));
languageSelectionComboBox.addSelectionListener(new SelectionListener() {
public void widgetSelected(SelectionEvent e) {
settings.put(PREF_LANGUAGE_INDEX, languageSelectionComboBox
.getSelectionIndex());
}
public void widgetDefaultSelected(SelectionEvent e) {
}
});
// service name
label = new Label(container, SWT.NULL);
label.setText(CodegenWizardPlugin
.getResourceString("page2.serviceName.caption"));
serviceNameCombo = new Combo(container, SWT.DROP_DOWN | SWT.BORDER
| SWT.READ_ONLY);
gd = new GridData(GridData.FILL_HORIZONTAL);
gd.horizontalSpan = 2;
serviceNameCombo.setLayoutData(gd);
// serviceNameCombo.setText(settings.get(PREF_TEXT_SERVICENAME));
serviceNameCombo.addSelectionListener(new SelectionListener() {
public void widgetSelected(SelectionEvent e) {
// update the settings
settings.put(PREF_COMBO_SERVICENAME_INDEX, serviceNameCombo
.getSelectionIndex());
// reload the portName list
loadPortNames();
}
public void widgetDefaultSelected(SelectionEvent e) {
}
});
// port name
label = new Label(container, SWT.NULL);
label.setText(CodegenWizardPlugin
.getResourceString("page2.portName.caption"));
portNameCombo = new Combo(container, SWT.DROP_DOWN | SWT.BORDER
| SWT.READ_ONLY);
gd = new GridData(GridData.FILL_HORIZONTAL);
gd.horizontalSpan = 2;
portNameCombo.setLayoutData(gd);
portNameCombo.addSelectionListener(new SelectionListener() {
public void widgetSelected(SelectionEvent e) {
// update the settings
settings.put(PREF_COMBO_PORTNAME_INDEX, portNameCombo
.getSelectionIndex());
}
public void widgetDefaultSelected(SelectionEvent e) {
}
});
// Databinding
label = new Label(container, SWT.NULL);
label.setText(CodegenWizardPlugin
.getResourceString("page2.databindingCheck.caption"));
gd = new GridData(GridData.FILL_HORIZONTAL);
gd.horizontalSpan = 2;
databindingTypeCombo = new Combo(container, SWT.DROP_DOWN | SWT.BORDER
| SWT.READ_ONLY);
databindingTypeCombo.setLayoutData(gd);
fillDatabinderCombo();
databindingTypeCombo.select(settings.getInt(PREF_DATABINDER_INDEX));
databindingTypeCombo.addSelectionListener(new SelectionListener() {
public void widgetSelected(SelectionEvent e) {
settings.put(PREF_DATABINDER_INDEX, databindingTypeCombo
.getSelectionIndex());
};
public void widgetDefaultSelected(SelectionEvent e) {
};
});
// package name
label = new Label(container, SWT.NULL);
label.setText(CodegenWizardPlugin
.getResourceString("page2.package.caption"));
packageText = new Text(container, SWT.BORDER);
gd = new GridData(GridData.FILL_HORIZONTAL);
gd.horizontalSpan = 2;
packageText.setLayoutData(gd);
String packageName;
String storedPackageName = settings.get(PREF_PACKAGE_NAME);
// this.defaultPackageName = storedPackageName;
if (storedPackageName.equals(EMPTY_STRING)) {
packageName = URLProcessor.makePackageName(EMPTY_STRING);
} else {
packageName = storedPackageName;
}
//if the package name somehow turned out to be null set it to
//default package
if (packageName==null)packageName=URLProcessor.DEFAULT_PACKAGE;
packageText.setText(packageName); // get this text from the
// URLProcessor
packageText.addModifyListener(new ModifyListener() {
public void modifyText(ModifyEvent e) {
handleCustomPackageNameModifyEvent();
settings.put(PREF_PACKAGE_NAME, packageText.getText());
}
});
// generate test case option
gd = new GridData(GridData.FILL_HORIZONTAL);
gd.horizontalSpan = 3;
testCaseCheckBoxButton = new Button(container, SWT.CHECK);
testCaseCheckBoxButton.setLayoutData(gd);
testCaseCheckBoxButton
.setText(org.apache.axis2.tool.codegen.eclipse.plugin.CodegenWizardPlugin
.getResourceString("page2.testcase.caption"));
testCaseCheckBoxButton.setSelection(settings
.getBoolean(PREF_CHECK_GENERATE_TESTCASE));
testCaseCheckBoxButton.addSelectionListener(new SelectionListener() {
public void widgetSelected(SelectionEvent e) {
settings.put(PREF_CHECK_GENERATE_TESTCASE,
testCaseCheckBoxButton.getSelection());
}
public void widgetDefaultSelected(SelectionEvent e) {
}
});
//filling label
gd = new GridData(GridData.FILL_HORIZONTAL);
gd.horizontalSpan = 3;
Label fillLabel = new Label(container, SWT.HORIZONTAL | SWT.SEPARATOR);
fillLabel.setLayoutData(gd);
//cleint side label
// gd = new GridData(GridData.FILL_HORIZONTAL);
// gd.horizontalSpan = 3;
// Label lblClientside = new Label(container, SWT.NONE);
// lblClientside.setText(CodegenWizardPlugin
// .getResourceString("page2.clientside.caption"));
// lblClientside.setLayoutData(gd);
//cleint side label
gd = new GridData(GridData.FILL_HORIZONTAL);
gd.horizontalSpan = 3;
clientSideCheckBoxButton = new Button(container, SWT.CHECK);
clientSideCheckBoxButton.setLayoutData(gd);
clientSideCheckBoxButton.setText(CodegenWizardPlugin
.getResourceString("page2.clientside.caption"));
clientSideCheckBoxButton.setSelection(settings
.getBoolean(PREF_CHECK_GENERATE_CLIENTSIDE));
clientSideCheckBoxButton.addSelectionListener(new SelectionListener() {
public void widgetSelected(SelectionEvent e) {
handleClientsideSelection();
settings.put(PREF_CHECK_GENERATE_CLIENTSIDE,
clientSideCheckBoxButton.getSelection());
}
public void widgetDefaultSelected(SelectionEvent e) {
}
});
//client side buttons
gd = new GridData(GridData.FILL_HORIZONTAL);
gd.horizontalSpan = 1;
syncAndAsyncRadioButton = new Button(container, SWT.RADIO);
syncAndAsyncRadioButton.setLayoutData(gd);
syncAndAsyncRadioButton.setText(CodegenWizardPlugin
.getResourceString("page2.syncAsync.caption"));
syncAndAsyncRadioButton.setSelection(settings
.getBoolean(PREF_RADIO_SYNC_AND_ASYNC));
syncAndAsyncRadioButton.setVisible(true);
syncAndAsyncRadioButton.addSelectionListener(new SelectionListener() {
public void widgetSelected(SelectionEvent e) {
settings.put(PREF_RADIO_SYNC_AND_ASYNC, syncAndAsyncRadioButton
.getSelection());
}
public void widgetDefaultSelected(SelectionEvent e) {
}
});
gd = new GridData(GridData.FILL_HORIZONTAL);
gd.horizontalSpan = 1;
syncOnlyRadioButton = new Button(container, SWT.RADIO);
syncOnlyRadioButton.setLayoutData(gd);
syncOnlyRadioButton.setText(CodegenWizardPlugin
.getResourceString("page2.sync.caption"));
syncOnlyRadioButton.setSelection(settings
.getBoolean(PREF_RADIO_SYNC_ONLY));
syncOnlyRadioButton.addSelectionListener(new SelectionListener() {
public void widgetSelected(SelectionEvent e) {
settings.put(PREF_RADIO_SYNC_ONLY, syncOnlyRadioButton
.getSelection());
}
public void widgetDefaultSelected(SelectionEvent e) {
}
});
gd = new GridData(GridData.FILL_HORIZONTAL);
gd.horizontalSpan = 1;
asyncOnlyRadioButton = new Button(container, SWT.RADIO);
asyncOnlyRadioButton.setLayoutData(gd);
asyncOnlyRadioButton
.setText(org.apache.axis2.tool.codegen.eclipse.plugin.CodegenWizardPlugin
.getResourceString("page2.async.caption"));
asyncOnlyRadioButton.setSelection(settings
.getBoolean(PREF_RADIO_ASYNC_ONLY));
asyncOnlyRadioButton.addSelectionListener(new SelectionListener() {
public void widgetSelected(SelectionEvent e) {
settings.put(PREF_RADIO_ASYNC_ONLY, asyncOnlyRadioButton
.getSelection());
}
public void widgetDefaultSelected(SelectionEvent e) {
}
});
//filling label
gd = new GridData(GridData.FILL_HORIZONTAL);
gd.horizontalSpan = 3;
Label fillLabel1 = new Label(container, SWT.HORIZONTAL | SWT.SEPARATOR);
fillLabel1.setLayoutData(gd);
// Server side check box
gd = new GridData(GridData.FILL_HORIZONTAL);
gd.horizontalSpan = 3;
serverSideCheckBoxButton = new Button(container, SWT.CHECK);
serverSideCheckBoxButton.setLayoutData(gd);
serverSideCheckBoxButton.setText(CodegenWizardPlugin
.getResourceString("page2.serverside.caption"));
serverSideCheckBoxButton.setSelection(settings
.getBoolean(PREF_CHECK_GENERATE_SERVERSIDE));
serverSideCheckBoxButton.addSelectionListener(new SelectionListener() {
public void widgetSelected(SelectionEvent e) {
handleServersideSelection();
settings.put(PREF_CHECK_GENERATE_SERVERSIDE,
serverSideCheckBoxButton.getSelection());
}
public void widgetDefaultSelected(SelectionEvent e) {
}
});
// Server side services xml
gd = new GridData(GridData.FILL_HORIZONTAL);
gd.horizontalSpan = 1;
serverXMLCheckBoxButton = new Button(container, SWT.CHECK);
serverXMLCheckBoxButton.setLayoutData(gd);
serverXMLCheckBoxButton.setSelection(settings
.getBoolean(PREF_CHECK_GENERATE_SERVERCONFIG));
serverXMLCheckBoxButton.setText(CodegenWizardPlugin
.getResourceString("page2.serviceXML.caption"));
serverXMLCheckBoxButton.addSelectionListener(new SelectionListener() {
public void widgetSelected(SelectionEvent e) {
settings.put(PREF_CHECK_GENERATE_SERVERCONFIG,
serverXMLCheckBoxButton.getEnabled());
}
public void widgetDefaultSelected(SelectionEvent e) {
}
});
//the server side interface option
generateServerSideInterfaceCheckBoxButton = new Button(container, SWT.CHECK);
gd = new GridData(GridData.FILL_HORIZONTAL);
gd.horizontalSpan = 1;
generateServerSideInterfaceCheckBoxButton.setLayoutData(gd);
generateServerSideInterfaceCheckBoxButton.setSelection(settings
.getBoolean(PREF_GEN_SS_INTERFACE));
generateServerSideInterfaceCheckBoxButton.setText(CodegenWizardPlugin
.getResourceString("page2.ssInterface.caption"));
generateServerSideInterfaceCheckBoxButton.addSelectionListener(new SelectionListener() {
public void widgetSelected(SelectionEvent e) {
settings.put(PREF_GEN_SS_INTERFACE, generateServerSideInterfaceCheckBoxButton
.getSelection());
}
public void widgetDefaultSelected(SelectionEvent e) {
}
});
//filling label
gd = new GridData(GridData.FILL_HORIZONTAL);
gd.horizontalSpan = 3;
Label fillLabel2 = new Label(container, SWT.HORIZONTAL | SWT.SEPARATOR);
fillLabel2.setLayoutData(gd);
// generate all
generateAllCheckBoxButton = new Button(container, SWT.CHECK);
gd = new GridData(GridData.FILL_HORIZONTAL);
gd.horizontalSpan = 3;
generateAllCheckBoxButton.setLayoutData(gd);
generateAllCheckBoxButton.setSelection(settings
.getBoolean(PREF_GEN_ALL));
generateAllCheckBoxButton.setText(CodegenWizardPlugin
.getResourceString("page2.genAll.caption"));
generateAllCheckBoxButton.addSelectionListener(new SelectionListener() {
public void widgetSelected(SelectionEvent e) {
settings.put(PREF_GEN_ALL, generateAllCheckBoxButton
.getSelection());
handleGenerateAllSelection();
}
public void widgetDefaultSelected(SelectionEvent e) {
}
});
//filling label
gd = new GridData(GridData.FILL_HORIZONTAL);
gd.horizontalSpan = 3;
Label fillLabel3 = new Label(container, SWT.HORIZONTAL | SWT.SEPARATOR);
fillLabel3.setLayoutData(gd);
// Databinding
label = new Label(container, SWT.NULL);
label.setText(CodegenWizardPlugin
.getResourceString("page2.namespace2Pkg.caption"));
//add a table to set namespace to package mapping
gd = new GridData(GridData.FILL_BOTH);
gd.horizontalSpan = 3;
gd.verticalSpan = 5;
namespace2packageTable = new Table(container,SWT.BORDER|SWT.MULTI);
namespace2packageTable.setLinesVisible(true);
namespace2packageTable.setHeaderVisible(true);
namespace2packageTable.setEnabled(true);
namespace2packageTable.setLayoutData(gd);
declareColumn(namespace2packageTable,
350, //a default width until we adjust
CodegenWizardPlugin
.getResourceString("page2.namespace.caption"));
declareColumn(namespace2packageTable,
200,//a default width until we adjust
CodegenWizardPlugin
.getResourceString("page2.package.caption"));
namespace2packageTable.setVisible(true);
// add the table editor
final TableEditor editor = new TableEditor(namespace2packageTable);
editor.setColumn(1);
editor.horizontalAlignment = SWT.LEFT;
editor.grabHorizontal = true;
//This is the cute way of making the namespaces columns editable
namespace2packageTable.addListener(SWT.MouseDown, new Listener() {
public void handleEvent(Event event) {
Rectangle clientArea = namespace2packageTable.getClientArea();
Point pt = new Point(event.x, event.y);
int index = namespace2packageTable.getTopIndex();
while (index < namespace2packageTable.getItemCount()) {
boolean visible = false;
final TableItem item = namespace2packageTable.getItem(index);
for (int i = 0; i < namespace2packageTable.getColumnCount(); i++) {
Rectangle rect = item.getBounds(i);
if (rect.contains(pt)) {
final int column = i;
final Text text = new Text(namespace2packageTable, SWT.NONE);
Listener textListener = new Listener() {
public void handleEvent(final Event e) {
switch (e.type) {
case SWT.FocusOut:
item.setText(column, text.getText());
text.dispose();
break;
case SWT.Traverse:
switch (e.detail) {
case SWT.TRAVERSE_RETURN:
item
.setText(column, text
.getText());
// FALL THROUGH
case SWT.TRAVERSE_ESCAPE:
text.dispose();
e.doit = false;
}
break;
}
}
};
text.addListener(SWT.FocusOut, textListener);
text.addListener(SWT.Traverse, textListener);
editor.setEditor(text, item, i);
text.setText(item.getText(i));
text.selectAll();
text.setFocus();
return;
}
if (!visible && rect.intersects(clientArea)) {
visible = true;
}
}
if (!visible){
return;
}
index++;
}
}
});
gd = new GridData(GridData.FILL_HORIZONTAL);
gd.horizontalSpan = 2;
Label fillLabel4 = new Label(container, SWT.NULL);
fillLabel4.setLayoutData(gd);
gd = new GridData(GridData.FILL_HORIZONTAL);
gd.horizontalSpan = 1;
advanceOptionsButton= new Button(container, SWT.NULL);
advanceOptionsButton.setText("Advance Options");
advanceOptionsButton.addSelectionListener(new SelectionAdapter(){
public void widgetSelected(SelectionEvent e) {
handleAdvanceButtonClick();
}
});
advanceOptionsButton.setLayoutData(gd);
//adjust the width
//adjustColumnWidth(namespace2packageTable);
/*
* Check the state of server-side selection, so we can enable/disable
* the serverXML checkbox button.
*/
handleServersideSelection();
/*
* try populating the combos and other information from the WSDL if this
* is restored
*/
if (restoredFromPreviousSettings) {
populateParamsFromWSDL();
selectDefaults();
}
//first appearence Disable all the controls
disableControls();
setControl(container);
setPageComplete(true);
}