📄 codegenframeworkfacetselectpage.java.svn-base
字号:
package com.newegg.eclipse.soaw.facet.codegen.ui.widgets;
import org.eclipse.jface.preference.IPreferenceStore;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.ModifyEvent;
import org.eclipse.swt.events.ModifyListener;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Combo;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Event;
import org.eclipse.swt.widgets.Group;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Listener;
import org.eclipse.swt.widgets.Text;
import org.eclipse.wst.common.project.facet.ui.AbstractFacetWizardPage;
import com.newegg.eclipse.soaw.facet.codegen.ui.CodeGenUIMessages;
import com.newegg.eclipse.soaw.facet.codegen.ui.beans.CodeGenFrameworkFacetSelectConfig;
import com.newegg.eclipse.soaw.facet.codegen.ui.plugin.CodeGenPlugin;
import com.newegg.eclipse.soaw.facet.codegen.ui.preferences.PreferenceConstants;
import com.newegg.eclipse.soaw.facet.codegen.ui.util.ComponentFactory;
import com.newegg.eclipse.soaw.facet.codegen.ui.util.Utils;
import com.newegg.eclipse.soaw.facet.codegen.ui.util.ValidataTool;
public class CodeGenFrameworkFacetSelectPage extends AbstractFacetWizardPage
{
private CodeGenFrameworkFacetSelectConfig config;
private Combo controllerCombo = null;
private Combo contextCombo = null;
private Combo persistentCombo = null;
private Text basePackageText = null;
private Combo dataBaseTypeCombo = null;
private Text db_driverClassNameText = null;
private Text db_urlText = null;
private Text db_userNameText = null;
private Text db_passwordText = null;
public CodeGenFrameworkFacetSelectPage ()
{
super("codegen.framework.facet.select.page");
setTitle(CodeGenUIMessages.TITLE_SELECT_PORTFOLIO_FRAMEWORK);
setDescription(CodeGenUIMessages.DESCRIPTION_SELECT_PORTFOLIO_FRAMEWORK);
}
/**
* (non-Javadoc)
*
* @see org.eclipse.jface.dialogs.IDialogPage#createControl(org.eclipse.swt.widgets.Composite)
*/
public void createControl(Composite parent)
{
final Composite composite = new Composite(parent, SWT.NONE);
composite.setLayout(new GridLayout(6, false));
Group group = ComponentFactory.createGroup(composite, CodeGenUIMessages.LABEL_SELECT_PORTFOLIO_FRAMEWORK, 6, 6,
true, false);
ComponentFactory.createLabel(group, CodeGenUIMessages.LABEL_CONTROLLER_SELECT,
CodeGenUIMessages.LABEL_CONTROLLER_SELECT, 1);
String[] comboItems = new String[]
{ "" };
controllerCombo = ComponentFactory.createComboBox(group, CodeGenUIMessages.LABEL_CONTROLLER_SELECT, comboItems,
new GridData(1, 1, false, false));
ComponentFactory.createLabel(group, CodeGenUIMessages.LABEL_SPRING_SELECT,
CodeGenUIMessages.LABEL_SPRING_SELECT, 1);
contextCombo = ComponentFactory.createComboBox(group, CodeGenUIMessages.LABEL_SPRING_SELECT, comboItems,
new GridData(1, 1, false, false));
ComponentFactory.createLabel(group, CodeGenUIMessages.LABEL_PRESISTENT_SELECT,
CodeGenUIMessages.LABEL_PRESISTENT_SELECT, 1);
persistentCombo = ComponentFactory.createComboBox(group, CodeGenUIMessages.LABEL_PRESISTENT_SELECT, comboItems,
new GridData(1, 1, false, false));
group = ComponentFactory.createGroup(composite, CodeGenUIMessages.LABEL_GROUP_PACKAGE_CONFIG, 6, 6, true,
false);
ComponentFactory.createLabel(group, CodeGenUIMessages.LABEL_BASE_PACKAGE_NAME,
CodeGenUIMessages.LABEL_BASE_PACKAGE_NAME, 6);
basePackageText = ComponentFactory.createText(group, 6, CodeGenUIMessages.LABEL_BASE_PACKAGE_NAME, "");
group = ComponentFactory.createGroup(composite, CodeGenUIMessages.LABEL_DATABASE_CONFIGRATION, 6, 6, true,
false);
ComponentFactory.createLabel(group, CodeGenUIMessages.LABEL_DATABASE_SELECT,
CodeGenUIMessages.LABEL_DATABASE_SELECT, 1);
dataBaseTypeCombo = ComponentFactory.createComboBox(group, CodeGenUIMessages.LABEL_DATABASE_SELECT, comboItems,
new GridData(1, 1, false, false));
ComponentFactory.createLabel(group, CodeGenUIMessages.LABEL_DB_DRIVER_NAME,
CodeGenUIMessages.LABEL_DB_DRIVER_NAME, 6);
db_driverClassNameText = ComponentFactory.createText(group, 6, CodeGenUIMessages.LABEL_DB_DRIVER_NAME, "");
ComponentFactory
.createLabel(group, CodeGenUIMessages.LABEL_DB_URL_NAME, CodeGenUIMessages.LABEL_DB_URL_NAME, 6);
db_urlText = ComponentFactory.createText(group, 6, CodeGenUIMessages.LABEL_DB_URL_NAME, "");
ComponentFactory.createLabel(group, CodeGenUIMessages.LABEL_DB_USER_NAME, CodeGenUIMessages.LABEL_DB_USER_NAME,
6);
db_userNameText = ComponentFactory.createText(group, 6, CodeGenUIMessages.LABEL_DB_USER_NAME, "");
ComponentFactory
.createLabel(group, CodeGenUIMessages.LABEL_DB_PASSWROD, CodeGenUIMessages.LABEL_DB_PASSWROD, 6);
db_passwordText = ComponentFactory.createText(group, 6, CodeGenUIMessages.LABEL_DB_PASSWROD, "");
initialize();
setControl(composite);
}
/**
*
* @param message
*/
private void updateStatus(String message)
{
setMessage(message == null ? null : message);
setErrorMessage(message);
}
private void initialize()
{
basePackageText.addModifyListener(new ModifyListener()
{
public void modifyText(ModifyEvent e)
{
if (!ValidataTool.isJavaPackage(basePackageText.getText()))
{
updateStatus(CodeGenUIMessages.ERROR_INVALID_PACKAGE_NAME);
} else
{
updateStatus(null);
}
}
});
basePackageText.setText("");
dataBaseTypeCombo.addListener(SWT.Selection, new Listener()
{
public void handleEvent(Event event)
{
String dataBaseName = dataBaseTypeCombo.getText();
db_driverClassNameText.setText(Utils.getDriverNameByKey(dataBaseName));
}
});
String[] controller_comboItems = Utils
.getFrameworkVesions(CodeGenUIMessages.NEWEGG_THIRDPART_CONTROLLER_LIB_FOLDER);
controllerCombo.setItems(controller_comboItems);
String curStoredItem = Utils.getStringFromPreference(PreferenceConstants.NEWEGG_SOAW_FACET_CONTROLLER);
if (arrayItemExist(curStoredItem, controller_comboItems))
{
controllerCombo.setText(curStoredItem);
} else
{
controllerCombo.setText(controller_comboItems[0]);
}
String[] context_comboItems = Utils.getFrameworkVesions(CodeGenUIMessages.NEWEGG_THIRDPART_CONTEXT_LIB_FOLDER);
contextCombo.setItems(context_comboItems);
curStoredItem = Utils.getStringFromPreference(PreferenceConstants.NEWEGG_SOAW_FACET_CONTEXT);
if (arrayItemExist(curStoredItem, context_comboItems))
{
contextCombo.setText(curStoredItem);
} else
{
contextCombo.setText(context_comboItems[0]);
}
String[] persistent_comboItems = Utils
.getFrameworkVesions(CodeGenUIMessages.NEWEGG_THIRDPART_PERSISTENT_LIB_FOLDER);
persistentCombo.setItems(persistent_comboItems);
curStoredItem = Utils.getStringFromPreference(PreferenceConstants.NEWEGG_SOAW_FACET_PERSISTENT);
if (arrayItemExist(curStoredItem, persistent_comboItems))
{
persistentCombo.setText(curStoredItem);
} else
{
persistentCombo.setText(persistent_comboItems[0]);
}
String[] database_comboItems = Utils.getDataBaseTypes();
dataBaseTypeCombo.setItems(database_comboItems);
curStoredItem = Utils.getStringFromPreference(PreferenceConstants.NEWEGG_SOAW_FACET_DATABASETYPE);
if (arrayItemExist(curStoredItem, database_comboItems))
{
dataBaseTypeCombo.setText(curStoredItem);
db_driverClassNameText.setText(Utils.getDriverNameByKey(curStoredItem));
} else
{
dataBaseTypeCombo.setText(database_comboItems[0]);
db_driverClassNameText.setText(Utils.getDriverNameByKey(database_comboItems[0]));
}
}
/**
*
* @param curItem
* @param srcArray
* @return
*/
private boolean arrayItemExist(String curItem, String[] srcArray)
{
if (ValidataTool.stringIsNull(curItem))
{
return false;
}
for (int i = 0; i < srcArray.length; i++)
{
if (srcArray[i].equals(curItem))
{
return true;
}
}
return false;
}
/**
* (non-Javadoc)
*
* @see org.eclipse.wst.common.project.facet.ui.IFacetWizardPage#setConfig(java.lang.Object)
*/
public void setConfig(Object config)
{
this.config = (CodeGenFrameworkFacetSelectConfig) config;
}
/**
* (non-Javadoc)
*
* @see org.eclipse.wst.common.project.facet.ui.AbstractFacetWizardPage#transferStateToConfig()
*/
public void transferStateToConfig()
{
this.config.setSelectedController(controllerCombo.getText());
this.config.setSelectedContext(contextCombo.getText());
this.config.setSelectedPersistent(persistentCombo.getText());
this.config.setDatabaseType(dataBaseTypeCombo.getText());
this.config.setBasePackageName(basePackageText.getText());
this.config.setDb_driverClassName(db_driverClassNameText.getText());
this.config.setDb_url(db_urlText.getText());
this.config.setDb_userName(db_userNameText.getText());
this.config.setDb_password(db_passwordText.getText());
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -