use of org.pentaho.di.ui.core.widget.PasswordTextVar in project pentaho-kettle by pentaho.
the class WebServiceDialog method open.
public String open() {
Shell parent = getParent();
Display display = parent.getDisplay();
shell = new Shell(parent, SWT.DIALOG_TRIM | SWT.RESIZE | SWT.MAX | SWT.MIN);
props.setLook(shell);
setShellImage(shell, meta);
changed = meta.hasChanged();
FormLayout formLayout = new FormLayout();
formLayout.marginWidth = Const.FORM_MARGIN;
formLayout.marginHeight = Const.FORM_MARGIN;
shell.setLayout(formLayout);
shell.setText(BaseMessages.getString(PKG, "WebServiceDialog.DialogTitle"));
int middle = props.getMiddlePct();
int margin = Const.MARGIN;
// Stepname line
wlStepname = new Label(shell, SWT.RIGHT);
wlStepname.setText(BaseMessages.getString(PKG, "System.Label.StepName"));
props.setLook(wlStepname);
fdlStepname = new FormData();
fdlStepname.left = new FormAttachment(0, 0);
fdlStepname.top = new FormAttachment(0, margin);
fdlStepname.right = new FormAttachment(middle, -margin);
wlStepname.setLayoutData(fdlStepname);
wStepname = new Text(shell, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
wStepname.setText(stepname);
props.setLook(wStepname);
wStepname.addModifyListener(lsMod);
fdStepname = new FormData();
fdStepname.left = new FormAttachment(middle, 0);
fdStepname.top = new FormAttachment(0, margin);
fdStepname.right = new FormAttachment(100, 0);
wStepname.setLayoutData(fdStepname);
wTabFolder = new CTabFolder(shell, SWT.BORDER);
props.setLook(wTabFolder, Props.WIDGET_STYLE_TAB);
// Add a tab which contains information on the web service(s)
//
tabItemWebService = new CTabItem(wTabFolder, SWT.NONE);
tabItemWebService.setText(BaseMessages.getString(PKG, "WebServiceDialog.MainTab.TabTitle"));
Composite compositeTabWebService = new Composite(wTabFolder, SWT.NONE);
props.setLook(compositeTabWebService);
FormLayout fileLayout = new FormLayout();
fileLayout.marginWidth = 3;
fileLayout.marginHeight = 3;
compositeTabWebService.setLayout(fileLayout);
// URL
wlURL = new Label(compositeTabWebService, SWT.RIGHT);
wlURL.setText(BaseMessages.getString(PKG, "WebServiceDialog.URL.Label"));
props.setLook(wlURL);
FormData fdlURL = new FormData();
fdlURL.left = new FormAttachment(0, 0);
fdlURL.top = new FormAttachment(0, margin);
fdlURL.right = new FormAttachment(middle, -margin);
wlURL.setLayoutData(fdlURL);
wbURL = new Button(compositeTabWebService, SWT.PUSH | SWT.CENTER);
props.setLook(wbURL);
wbURL.setText(BaseMessages.getString(PKG, "WebServiceDialog.URL.Load"));
FormData fdbURL = new FormData();
fdbURL.right = new FormAttachment(100, 0);
fdbURL.top = new FormAttachment(0, 0);
wbURL.setLayoutData(fdbURL);
wbURL.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
//
if (!Utils.isEmpty(wURL.getText())) {
try {
initTreeTabWebService(wURL.getText());
} catch (Throwable throwable) {
new ErrorDialog(shell, BaseMessages.getString(PKG, "WebServiceDialog.Exception.UnableToLoadWebService.Title"), BaseMessages.getString(PKG, "WebServiceDialog.Exception.UnableToLoadWebService.Message"), throwable);
}
}
}
});
wbFile = new Button(compositeTabWebService, SWT.PUSH | SWT.CENTER);
props.setLook(wbFile);
wbFile.setText(BaseMessages.getString(PKG, "WebServiceDialog.File.Load"));
FormData fdbFile = new FormData();
fdbFile.right = new FormAttachment(wbURL, 0);
fdbFile.top = new FormAttachment(0, 0);
wbFile.setLayoutData(fdbFile);
wbFile.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
// We will load the WSDL from a file so we can at least try to debug the metadata extraction phase from the
// support side.
//
FileDialog dialog = new FileDialog(shell, SWT.OPEN);
dialog.setFilterExtensions(new String[] { "*.wsdl;*.WSDL", "*.*" });
dialog.setFilterNames(new String[] { BaseMessages.getString(PKG, "WebServiceDialog.FileType.WsdlFiles"), BaseMessages.getString(PKG, "System.FileType.CSVFiles"), BaseMessages.getString(PKG, "System.FileType.TextFiles"), BaseMessages.getString(PKG, "System.FileType.AllFiles") });
if (dialog.open() != null) {
String filename = dialog.getFilterPath() + System.getProperty("file.separator") + dialog.getFileName();
try {
initTreeTabWebService(new File(filename).toURI().toASCIIString());
} catch (Throwable throwable) {
new ErrorDialog(shell, BaseMessages.getString(PKG, "WebServiceDialog.Exception.UnableToLoadWebService.Title"), BaseMessages.getString(PKG, "WebServiceDialog.Exception.UnableToLoadWebService.Message"), throwable);
}
}
}
});
wURL = new TextVar(transMeta, compositeTabWebService, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
wURL.addModifyListener(lsMod);
props.setLook(wURL);
FormData fdURL = new FormData();
fdURL.left = new FormAttachment(middle, 0);
fdURL.top = new FormAttachment(0, margin);
fdURL.right = new FormAttachment(wbFile, -margin);
wURL.setLayoutData(fdURL);
// Operation
wlOperation = new Label(compositeTabWebService, SWT.RIGHT);
wlOperation.setText(BaseMessages.getString(PKG, "WebServiceDialog.Operation.Label"));
props.setLook(wlOperation);
FormData fdlOperation = new FormData();
fdlOperation.left = new FormAttachment(0, 0);
fdlOperation.top = new FormAttachment(wURL, margin);
fdlOperation.right = new FormAttachment(middle, -margin);
wlOperation.setLayoutData(fdlOperation);
wOperation = new CCombo(compositeTabWebService, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
wOperation.addModifyListener(lsMod);
wOperation.setToolTipText(BaseMessages.getString(PKG, "WebServiceDialog.Operation.Tooltip"));
props.setLook(wOperation);
FormData fdOperation = new FormData();
fdOperation.top = new FormAttachment(wURL, margin);
fdOperation.left = new FormAttachment(middle, 0);
fdOperation.right = new FormAttachment(100, 0);
wOperation.setLayoutData(fdOperation);
wOperation.addSelectionListener(new SelectionListener() {
public void widgetSelected(SelectionEvent arg0) {
try {
selectWSDLOperation(wOperation.getText());
} catch (KettleException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public void widgetDefaultSelected(SelectionEvent arg0) {
// TODO Auto-generated method stub
}
});
// Operation request name (optional)
wlOperationRequest = new Label(compositeTabWebService, SWT.RIGHT);
wlOperationRequest.setText(BaseMessages.getString(PKG, "WebServiceDialog.OperationRequest.Label"));
props.setLook(wlOperationRequest);
FormData fdlOperationRequest = new FormData();
fdlOperationRequest.left = new FormAttachment(0, 0);
fdlOperationRequest.top = new FormAttachment(wOperation, margin);
fdlOperationRequest.right = new FormAttachment(middle, -margin);
wlOperationRequest.setLayoutData(fdlOperationRequest);
wOperationRequest = new Text(compositeTabWebService, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
wOperationRequest.addModifyListener(lsMod);
wOperationRequest.setToolTipText(BaseMessages.getString(PKG, "WebServiceDialog.OperationRequest.Tooltip"));
props.setLook(wOperationRequest);
FormData fdOperationRequest = new FormData();
fdOperationRequest.top = new FormAttachment(wOperation, margin);
fdOperationRequest.left = new FormAttachment(middle, 0);
fdOperationRequest.right = new FormAttachment(100, 0);
wOperationRequest.setLayoutData(fdOperationRequest);
// Pas d'appel
wlStep = new Label(compositeTabWebService, SWT.RIGHT);
wlStep.setText(BaseMessages.getString(PKG, "WebServiceDialog.Step.Label"));
props.setLook(wlStep);
FormData fdlStep = new FormData();
fdlStep.left = new FormAttachment(0, 0);
fdlStep.top = new FormAttachment(wOperationRequest, margin);
fdlStep.right = new FormAttachment(middle, -margin);
wlStep.setLayoutData(fdlStep);
wStep = new Text(compositeTabWebService, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
wStep.addModifyListener(lsMod);
wStep.setToolTipText(BaseMessages.getString(PKG, "WebServiceDialog.Step.Tooltip"));
props.setLook(wStep);
FormData fdStep = new FormData();
fdStep.top = new FormAttachment(wOperationRequest, margin);
fdStep.left = new FormAttachment(middle, 0);
fdStep.right = new FormAttachment(100, 0);
wStep.setLayoutData(fdStep);
// Option to pass all input data to output
//
wlPassInputData = new Label(compositeTabWebService, SWT.RIGHT);
wlPassInputData.setText(BaseMessages.getString(PKG, "WebServiceDialog.PassInputData.Label"));
props.setLook(wlPassInputData);
FormData fdlPassInputData = new FormData();
fdlPassInputData.left = new FormAttachment(0, 0);
fdlPassInputData.top = new FormAttachment(wStep, margin);
fdlPassInputData.right = new FormAttachment(middle, -margin);
wlPassInputData.setLayoutData(fdlPassInputData);
wPassInputData = new Button(compositeTabWebService, SWT.CHECK);
wPassInputData.setToolTipText(BaseMessages.getString(PKG, "WebServiceDialog.PassInputData.Tooltip"));
props.setLook(wPassInputData);
FormData fdPassInputData = new FormData();
fdPassInputData.top = new FormAttachment(wStep, margin);
fdPassInputData.left = new FormAttachment(middle, 0);
fdPassInputData.right = new FormAttachment(100, 0);
wPassInputData.setLayoutData(fdPassInputData);
// Option to use 2.5/3.0 compatible parsing logic
//
wlCompatible = new Label(compositeTabWebService, SWT.RIGHT);
wlCompatible.setText(BaseMessages.getString(PKG, "WebServiceDialog.Compatible.Label"));
props.setLook(wlCompatible);
FormData fdlCompatible = new FormData();
fdlCompatible.left = new FormAttachment(0, 0);
fdlCompatible.top = new FormAttachment(wPassInputData, margin);
fdlCompatible.right = new FormAttachment(middle, -margin);
wlCompatible.setLayoutData(fdlCompatible);
wCompatible = new Button(compositeTabWebService, SWT.CHECK);
wCompatible.setToolTipText(BaseMessages.getString(PKG, "WebServiceDialog.Compatible.Tooltip"));
props.setLook(wCompatible);
FormData fdCompatible = new FormData();
fdCompatible.top = new FormAttachment(wPassInputData, margin);
fdCompatible.left = new FormAttachment(middle, 0);
fdCompatible.right = new FormAttachment(100, 0);
wCompatible.setLayoutData(fdCompatible);
// HTTP Login
wlRepeatingElement = new Label(compositeTabWebService, SWT.RIGHT);
wlRepeatingElement.setText(BaseMessages.getString(PKG, "WebServiceDialog.RepeatingElement.Label"));
props.setLook(wlRepeatingElement);
FormData fdlRepeatingElement = new FormData();
fdlRepeatingElement.top = new FormAttachment(wCompatible, margin);
fdlRepeatingElement.left = new FormAttachment(0, 0);
fdlRepeatingElement.right = new FormAttachment(middle, -margin);
wlRepeatingElement.setLayoutData(fdlRepeatingElement);
wRepeatingElement = new TextVar(transMeta, compositeTabWebService, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
wRepeatingElement.addModifyListener(lsMod);
wRepeatingElement.setToolTipText(BaseMessages.getString(PKG, "WebServiceDialog.RepeatingElement.Tooltip"));
props.setLook(wRepeatingElement);
FormData fdRepeatingElement = new FormData();
fdRepeatingElement.top = new FormAttachment(wCompatible, margin);
fdRepeatingElement.left = new FormAttachment(middle, 0);
fdRepeatingElement.right = new FormAttachment(100, 0);
wRepeatingElement.setLayoutData(fdRepeatingElement);
// Return the SOAP body as a String or not?
//
wlReplyAsString = new Label(compositeTabWebService, SWT.RIGHT);
wlReplyAsString.setText(BaseMessages.getString(PKG, "WebServiceDialog.ReplyAsString.Label"));
props.setLook(wlReplyAsString);
FormData fdlBodyAsString = new FormData();
fdlBodyAsString.left = new FormAttachment(0, 0);
fdlBodyAsString.top = new FormAttachment(wRepeatingElement, margin);
fdlBodyAsString.right = new FormAttachment(middle, -margin);
wlReplyAsString.setLayoutData(fdlBodyAsString);
wReplyAsString = new Button(compositeTabWebService, SWT.CHECK);
wReplyAsString.setToolTipText(BaseMessages.getString(PKG, "WebServiceDialog.ReplyAsString.Tooltip"));
props.setLook(wReplyAsString);
FormData fdBodyAsString = new FormData();
fdBodyAsString.top = new FormAttachment(wRepeatingElement, margin);
fdBodyAsString.left = new FormAttachment(middle, 0);
fdBodyAsString.right = new FormAttachment(100, 0);
wReplyAsString.setLayoutData(fdBodyAsString);
// ////////////////////////
// START HTTP AUTH GROUP
Group gHttpAuth = new Group(compositeTabWebService, SWT.SHADOW_ETCHED_IN);
gHttpAuth.setText(BaseMessages.getString(PKG, "WebServicesDialog.HttpAuthGroup.Label"));
FormLayout httpAuthLayout = new FormLayout();
httpAuthLayout.marginWidth = 3;
httpAuthLayout.marginHeight = 3;
gHttpAuth.setLayout(httpAuthLayout);
props.setLook(gHttpAuth);
// HTTP Login
wlHttpLogin = new Label(gHttpAuth, SWT.RIGHT);
wlHttpLogin.setText(BaseMessages.getString(PKG, "WebServiceDialog.HttpLogin.Label"));
props.setLook(wlHttpLogin);
FormData fdlHttpLogin = new FormData();
fdlHttpLogin.top = new FormAttachment(0, margin);
fdlHttpLogin.left = new FormAttachment(0, 0);
fdlHttpLogin.right = new FormAttachment(middle, -margin);
wlHttpLogin.setLayoutData(fdlHttpLogin);
wHttpLogin = new TextVar(transMeta, gHttpAuth, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
wHttpLogin.addModifyListener(lsMod);
wHttpLogin.setToolTipText(BaseMessages.getString(PKG, "WebServiceDialog.HttpLogin.Tooltip"));
props.setLook(wHttpLogin);
FormData fdHttpLogin = new FormData();
fdHttpLogin.top = new FormAttachment(0, margin);
fdHttpLogin.left = new FormAttachment(middle, 0);
fdHttpLogin.right = new FormAttachment(100, 0);
wHttpLogin.setLayoutData(fdHttpLogin);
// HTTP Password
wlHttpPassword = new Label(gHttpAuth, SWT.RIGHT);
wlHttpPassword.setText(BaseMessages.getString(PKG, "WebServiceDialog.HttpPassword.Label"));
props.setLook(wlHttpPassword);
FormData fdlHttpPassword = new FormData();
fdlHttpPassword.top = new FormAttachment(wHttpLogin, margin);
fdlHttpPassword.left = new FormAttachment(0, 0);
fdlHttpPassword.right = new FormAttachment(middle, -margin);
wlHttpPassword.setLayoutData(fdlHttpPassword);
wHttpPassword = new PasswordTextVar(transMeta, gHttpAuth, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
wHttpPassword.addModifyListener(lsMod);
wHttpPassword.setToolTipText(BaseMessages.getString(PKG, "WebServiceDialog.HttpPassword.Tooltip"));
props.setLook(wHttpPassword);
FormData fdHttpPassword = new FormData();
fdHttpPassword.top = new FormAttachment(wHttpLogin, margin);
fdHttpPassword.left = new FormAttachment(middle, 0);
fdHttpPassword.right = new FormAttachment(100, 0);
wHttpPassword.setLayoutData(fdHttpPassword);
FormData fdHttpAuth = new FormData();
fdHttpAuth.left = new FormAttachment(0, 0);
fdHttpAuth.right = new FormAttachment(100, 0);
fdHttpAuth.top = new FormAttachment(wReplyAsString, margin);
gHttpAuth.setLayoutData(fdHttpAuth);
// END HTTP AUTH GROUP
// ////////////////////////
// ////////////////////////
// START PROXY GROUP
Group gProxy = new Group(compositeTabWebService, SWT.SHADOW_ETCHED_IN);
gProxy.setText(BaseMessages.getString(PKG, "WebServicesDialog.ProxyGroup.Label"));
FormLayout proxyLayout = new FormLayout();
proxyLayout.marginWidth = 3;
proxyLayout.marginHeight = 3;
gProxy.setLayout(proxyLayout);
props.setLook(gProxy);
// HTTP Login
wlProxyHost = new Label(gProxy, SWT.RIGHT);
wlProxyHost.setText(BaseMessages.getString(PKG, "WebServiceDialog.ProxyHost.Label"));
props.setLook(wlProxyHost);
FormData fdlProxyHost = new FormData();
fdlProxyHost.top = new FormAttachment(0, margin);
fdlProxyHost.left = new FormAttachment(0, 0);
fdlProxyHost.right = new FormAttachment(middle, -margin);
wlProxyHost.setLayoutData(fdlProxyHost);
wProxyHost = new TextVar(transMeta, gProxy, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
wProxyHost.addModifyListener(lsMod);
wProxyHost.setToolTipText(BaseMessages.getString(PKG, "WebServiceDialog.ProxyHost.Tooltip"));
props.setLook(wProxyHost);
FormData fdProxyHost = new FormData();
fdProxyHost.top = new FormAttachment(0, margin);
fdProxyHost.left = new FormAttachment(middle, 0);
fdProxyHost.right = new FormAttachment(100, 0);
wProxyHost.setLayoutData(fdProxyHost);
// HTTP Password
wlProxyPort = new Label(gProxy, SWT.RIGHT);
wlProxyPort.setText(BaseMessages.getString(PKG, "WebServiceDialog.ProxyPort.Label"));
props.setLook(wlProxyPort);
FormData fdlProxyPort = new FormData();
fdlProxyPort.top = new FormAttachment(wProxyHost, margin);
fdlProxyPort.left = new FormAttachment(0, 0);
fdlProxyPort.right = new FormAttachment(middle, -margin);
wlProxyPort.setLayoutData(fdlProxyPort);
wProxyPort = new TextVar(transMeta, gProxy, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
wProxyPort.addModifyListener(lsMod);
wProxyPort.setToolTipText(BaseMessages.getString(PKG, "WebServiceDialog.ProxyPort.Tooltip"));
props.setLook(wProxyPort);
FormData fdProxyPort = new FormData();
fdProxyPort.top = new FormAttachment(wProxyHost, margin);
fdProxyPort.left = new FormAttachment(middle, 0);
fdProxyPort.right = new FormAttachment(100, 0);
wProxyPort.setLayoutData(fdProxyPort);
FormData fdProxy = new FormData();
fdProxy.left = new FormAttachment(0, 0);
fdProxy.right = new FormAttachment(100, 0);
fdProxy.top = new FormAttachment(gHttpAuth, margin);
gProxy.setLayoutData(fdProxy);
// END HTTP AUTH GROUP
// ////////////////////////
// Layout du tab
FormData fdFileComp = new FormData();
fdFileComp.left = new FormAttachment(0, 0);
fdFileComp.top = new FormAttachment(0, 0);
fdFileComp.right = new FormAttachment(100, 0);
fdFileComp.bottom = new FormAttachment(100, 0);
compositeTabWebService.setLayoutData(fdFileComp);
compositeTabWebService.layout();
tabItemWebService.setControl(compositeTabWebService);
wURL.addListener(SWT.Selection, new Listener() {
public void handleEvent(Event e) {
getData();
}
});
SelectionAdapter selAdapter = new SelectionAdapter() {
public void widgetDefaultSelected(SelectionEvent e) {
ok();
}
};
wHttpPassword.addSelectionListener(selAdapter);
wHttpLogin.addSelectionListener(selAdapter);
wStep.addSelectionListener(selAdapter);
wProxyHost.addSelectionListener(selAdapter);
wProxyPort.addSelectionListener(selAdapter);
wStepname.addSelectionListener(selAdapter);
wTabFolder.setSelection(tabItemWebService);
FormData fdTabFolder = new FormData();
fdTabFolder.left = new FormAttachment(0, 0);
fdTabFolder.top = new FormAttachment(wStepname, margin);
fdTabFolder.right = new FormAttachment(100, 0);
fdTabFolder.bottom = new FormAttachment(100, -50);
wTabFolder.setLayoutData(fdTabFolder);
// Boutons OK / Cancel
wOK = new Button(shell, SWT.PUSH);
wOK.setText(BaseMessages.getString(PKG, "System.Button.OK"));
wAddInput = new Button(shell, SWT.PUSH);
wAddInput.setText(BaseMessages.getString(PKG, "WebServiceDialog.Label.AddInputButton"));
wAddOutput = new Button(shell, SWT.PUSH);
wAddOutput.setText(BaseMessages.getString(PKG, "WebServiceDialog.Label.AddOutputButton"));
wCancel = new Button(shell, SWT.PUSH);
wCancel.setText(BaseMessages.getString(PKG, "System.Button.Cancel"));
setButtonPositions(new Button[] { wOK, wAddInput, wAddOutput, wCancel }, margin, wTabFolder);
// Detect X or ALT-F4 or something that kills this window...
shell.addShellListener(new ShellAdapter() {
public void shellClosed(ShellEvent e) {
cancel();
}
});
wOK.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
ok();
}
});
wAddInput.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
addTabFieldIn();
wTabFolder.setSelection(tabItemFieldIn);
}
});
wAddOutput.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
addTabFieldOut();
wTabFolder.setSelection(tabItemFieldOut);
}
});
wCancel.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
cancel();
}
});
lsDef = new SelectionAdapter() {
public void widgetDefaultSelected(SelectionEvent e) {
ok();
}
};
getData();
setComboValues();
// Set the shell size, based upon previous time...
setSize();
shell.open();
while (!shell.isDisposed()) {
if (!display.readAndDispatch()) {
display.sleep();
}
}
return stepname;
}
use of org.pentaho.di.ui.core.widget.PasswordTextVar in project pentaho-kettle by pentaho.
the class OlapInputDialog method open.
public String open() {
Shell parent = getParent();
Display display = parent.getDisplay();
shell = new Shell(parent, SWT.DIALOG_TRIM | SWT.RESIZE | SWT.MAX | SWT.MIN);
props.setLook(shell);
setShellImage(shell, input);
ModifyListener lsMod = new ModifyListener() {
public void modifyText(ModifyEvent e) {
input.setChanged();
}
};
changed = input.hasChanged();
FormLayout formLayout = new FormLayout();
formLayout.marginWidth = Const.FORM_MARGIN;
formLayout.marginHeight = Const.FORM_MARGIN;
shell.setLayout(formLayout);
shell.setText(BaseMessages.getString(PKG, "OlapInputDialog.OlapInput"));
int middle = props.getMiddlePct();
int margin = Const.MARGIN;
// Stepname line
//
wlStepname = new Label(shell, SWT.RIGHT);
wlStepname.setText(BaseMessages.getString(PKG, "OlapInputDialog.StepName"));
props.setLook(wlStepname);
fdlStepname = new FormData();
fdlStepname.left = new FormAttachment(0, 0);
fdlStepname.right = new FormAttachment(middle, -margin);
fdlStepname.top = new FormAttachment(0, margin);
wlStepname.setLayoutData(fdlStepname);
wStepname = new Text(shell, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
wStepname.setText(stepname);
props.setLook(wStepname);
wStepname.addModifyListener(lsMod);
fdStepname = new FormData();
fdStepname.left = new FormAttachment(middle, 0);
fdStepname.top = new FormAttachment(0, margin);
fdStepname.right = new FormAttachment(100, 0);
wStepname.setLayoutData(fdStepname);
// The URL
//
wlUrl = new Label(shell, SWT.RIGHT);
wlUrl.setText(BaseMessages.getString(PKG, "OlapInputDialog.Url"));
props.setLook(wlUrl);
fdlUrl = new FormData();
fdlUrl.left = new FormAttachment(0, 0);
fdlUrl.right = new FormAttachment(middle, -margin);
fdlUrl.top = new FormAttachment(wStepname, margin);
wlUrl.setLayoutData(fdlUrl);
wUrl = new TextVar(transMeta, shell, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
props.setLook(wUrl);
wUrl.addModifyListener(lsMod);
fdUrl = new FormData();
fdUrl.left = new FormAttachment(middle, 0);
fdUrl.right = new FormAttachment(100, 0);
fdUrl.top = new FormAttachment(wStepname, margin);
wUrl.setLayoutData(fdUrl);
// Username
//
wlUsername = new Label(shell, SWT.RIGHT);
wlUsername.setText(BaseMessages.getString(PKG, "OlapInputDialog.Username"));
props.setLook(wlUsername);
fdlUsername = new FormData();
fdlUsername.left = new FormAttachment(0, 0);
fdlUsername.right = new FormAttachment(middle, -margin);
fdlUsername.top = new FormAttachment(wUrl, margin);
wlUsername.setLayoutData(fdlUsername);
wUsername = new TextVar(transMeta, shell, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
props.setLook(wUsername);
wUsername.addModifyListener(lsMod);
fdUsername = new FormData();
fdUsername.left = new FormAttachment(middle, 0);
fdUsername.right = new FormAttachment(100, 0);
fdUsername.top = new FormAttachment(wUrl, margin);
wUsername.setLayoutData(fdUsername);
// Password
//
wlPassword = new Label(shell, SWT.RIGHT);
wlPassword.setText(BaseMessages.getString(PKG, "OlapInputDialog.Password"));
props.setLook(wlPassword);
fdlPassword = new FormData();
fdlPassword.left = new FormAttachment(0, 0);
fdlPassword.right = new FormAttachment(middle, -margin);
fdlPassword.top = new FormAttachment(wUsername, margin);
wlPassword.setLayoutData(fdlPassword);
wPassword = new PasswordTextVar(transMeta, shell, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
props.setLook(wPassword);
wPassword.addModifyListener(lsMod);
fdPassword = new FormData();
fdPassword.left = new FormAttachment(middle, 0);
fdPassword.right = new FormAttachment(100, 0);
fdPassword.top = new FormAttachment(wUsername, margin);
wPassword.setLayoutData(fdPassword);
// Some buttons
//
wOK = new Button(shell, SWT.PUSH);
wOK.setText(BaseMessages.getString(PKG, "System.Button.OK"));
wPreview = new Button(shell, SWT.PUSH);
wPreview.setText(BaseMessages.getString(PKG, "System.Button.Preview"));
wCancel = new Button(shell, SWT.PUSH);
wCancel.setText(BaseMessages.getString(PKG, "System.Button.Cancel"));
wAbout = new Button(shell, SWT.PUSH);
wAbout.setText(BaseMessages.getString(PKG, "OlapInputDialog.About.Button"));
setButtonPositions(new Button[] { wOK, wPreview, wAbout, wCancel }, margin, null);
// Catalog location...
//
wlCatalog = new Label(shell, SWT.RIGHT);
wlCatalog.setText(BaseMessages.getString(PKG, "OlapInputDialog.Catalog"));
props.setLook(wlCatalog);
fdlCatalog = new FormData();
fdlCatalog.left = new FormAttachment(0, 0);
fdlCatalog.right = new FormAttachment(middle, -margin);
fdlCatalog.bottom = new FormAttachment(wOK, -8 * margin);
wlCatalog.setLayoutData(fdlCatalog);
wCatalog = new TextVar(transMeta, shell, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
props.setLook(wCatalog);
wCatalog.addModifyListener(lsMod);
fdCatalog = new FormData();
fdCatalog.left = new FormAttachment(middle, 0);
fdCatalog.right = new FormAttachment(100, 0);
fdCatalog.bottom = new FormAttachment(wOK, -8 * margin);
wCatalog.setLayoutData(fdCatalog);
// Replace variables in MDX?
//
wlVariables = new Label(shell, SWT.RIGHT);
wlVariables.setText(BaseMessages.getString(PKG, "OlapInputDialog.ReplaceVariables"));
props.setLook(wlVariables);
fdlVariables = new FormData();
fdlVariables.left = new FormAttachment(0, 0);
fdlVariables.right = new FormAttachment(middle, -margin);
fdlVariables.bottom = new FormAttachment(wCatalog, -margin);
wlVariables.setLayoutData(fdlVariables);
wVariables = new Button(shell, SWT.CHECK);
props.setLook(wVariables);
wVariables.setToolTipText(BaseMessages.getString(PKG, "OlapInputDialog.ReplaceVariables.Tooltip"));
fdVariables = new FormData();
fdVariables.left = new FormAttachment(middle, 0);
fdVariables.right = new FormAttachment(100, 0);
fdVariables.bottom = new FormAttachment(wCatalog, -margin);
wVariables.setLayoutData(fdVariables);
wVariables.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent arg0) {
setSQLToolTip();
input.setChanged();
}
});
wlPosition = new Label(shell, SWT.NONE);
props.setLook(wlPosition);
fdlPosition = new FormData();
fdlPosition.left = new FormAttachment(0, 0);
fdlPosition.right = new FormAttachment(50, 0);
fdlPosition.bottom = new FormAttachment(wVariables, -2 * margin);
wlPosition.setLayoutData(fdlPosition);
// asc link
this.wAscLink = new Link(this.shell, SWT.NONE);
FormData fdAscLink = new FormData();
fdAscLink.left = new FormAttachment(0, 5);
fdAscLink.right = new FormAttachment(100, 0);
fdAscLink.bottom = new FormAttachment(wlPosition, -2 * margin);
// fdAscLink.top = new FormAttachment();
wAscLink.setLayoutData(fdAscLink);
this.wAscLink.setText(BaseMessages.getString(PKG, "OlapInputDialog.Provided.Info"));
// Table line...
//
wlMDX = new Label(shell, SWT.NONE);
wlMDX.setText(BaseMessages.getString(PKG, "OlapInputDialog.SQL"));
props.setLook(wlMDX);
fdlMDX = new FormData();
fdlMDX.left = new FormAttachment(0, 0);
fdlMDX.top = new FormAttachment(wPassword, 2 * margin);
wlMDX.setLayoutData(fdlMDX);
wMDX = new StyledTextComp(transMeta, shell, SWT.MULTI | SWT.LEFT | SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL, "");
props.setLook(wMDX, Props.WIDGET_STYLE_FIXED);
wMDX.addModifyListener(lsMod);
fdMDX = new FormData();
fdMDX.left = new FormAttachment(0, 0);
fdMDX.top = new FormAttachment(wlMDX, margin);
fdMDX.right = new FormAttachment(100, -2 * margin);
fdMDX.bottom = new FormAttachment(this.wAscLink, -margin);
wMDX.setLayoutData(fdMDX);
Listener lsAbout = new Listener() {
public void handleEvent(Event e) {
new OlapInputAboutDialog(OlapInputDialog.this.shell).open();
}
};
this.wAbout.addListener(SWT.Selection, lsAbout);
this.wAscLink.addListener(SWT.Selection, new Listener() {
public void handleEvent(final Event event) {
Program.launch(event.text);
}
});
wMDX.addModifyListener(new ModifyListener() {
public void modifyText(ModifyEvent arg0) {
setSQLToolTip();
setPosition();
}
});
wMDX.addKeyListener(new KeyAdapter() {
public void keyPressed(KeyEvent e) {
setPosition();
}
public void keyReleased(KeyEvent e) {
setPosition();
}
});
wMDX.addFocusListener(new FocusAdapter() {
public void focusGained(FocusEvent e) {
setPosition();
}
public void focusLost(FocusEvent e) {
setPosition();
}
});
wMDX.addMouseListener(new MouseAdapter() {
public void mouseDoubleClick(MouseEvent e) {
setPosition();
}
public void mouseDown(MouseEvent e) {
setPosition();
}
public void mouseUp(MouseEvent e) {
setPosition();
}
});
// Text Higlighting
lineStyler = new MDXValuesHighlight();
wMDX.addLineStyleListener(lineStyler);
// Add listeners
lsCancel = new Listener() {
public void handleEvent(Event e) {
cancel();
}
};
lsPreview = new Listener() {
public void handleEvent(Event e) {
preview();
}
};
lsOK = new Listener() {
public void handleEvent(Event e) {
ok();
}
};
wCancel.addListener(SWT.Selection, lsCancel);
wPreview.addListener(SWT.Selection, lsPreview);
wOK.addListener(SWT.Selection, lsOK);
lsDef = new SelectionAdapter() {
public void widgetDefaultSelected(SelectionEvent e) {
ok();
}
};
wStepname.addSelectionListener(lsDef);
wCatalog.addSelectionListener(lsDef);
// Detect X or ALT-F4 or something that kills this window...
shell.addShellListener(new ShellAdapter() {
public void shellClosed(ShellEvent e) {
cancel();
}
});
getData();
input.setChanged(changed);
// Set the shell size, based upon previous time...
setSize();
shell.open();
while (!shell.isDisposed()) {
if (!display.readAndDispatch()) {
display.sleep();
}
}
return stepname;
}
use of org.pentaho.di.ui.core.widget.PasswordTextVar in project pentaho-kettle by pentaho.
the class RestDialog method open.
public String open() {
Shell parent = getParent();
Display display = parent.getDisplay();
shell = new Shell(parent, SWT.DIALOG_TRIM | SWT.RESIZE | SWT.MAX | SWT.MIN);
props.setLook(shell);
setShellImage(shell, input);
ModifyListener lsMod = new ModifyListener() {
public void modifyText(ModifyEvent e) {
input.setChanged();
}
};
changed = input.hasChanged();
FormLayout formLayout = new FormLayout();
formLayout.marginWidth = Const.FORM_MARGIN;
formLayout.marginHeight = Const.FORM_MARGIN;
shell.setLayout(formLayout);
shell.setText(BaseMessages.getString(PKG, "RestDialog.Shell.Title"));
int middle = props.getMiddlePct();
int margin = Const.MARGIN;
// Stepname line
wlStepname = new Label(shell, SWT.RIGHT);
wlStepname.setText(BaseMessages.getString(PKG, "RestDialog.Stepname.Label"));
props.setLook(wlStepname);
fdlStepname = new FormData();
fdlStepname.left = new FormAttachment(0, 0);
fdlStepname.right = new FormAttachment(middle, -margin);
fdlStepname.top = new FormAttachment(0, margin);
wlStepname.setLayoutData(fdlStepname);
wStepname = new Text(shell, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
wStepname.setText(stepname);
props.setLook(wStepname);
wStepname.addModifyListener(lsMod);
fdStepname = new FormData();
fdStepname.left = new FormAttachment(middle, 0);
fdStepname.top = new FormAttachment(0, margin);
fdStepname.right = new FormAttachment(100, 0);
wStepname.setLayoutData(fdStepname);
wTabFolder = new CTabFolder(shell, SWT.BORDER);
props.setLook(wTabFolder, PropsUI.WIDGET_STYLE_TAB);
// ////////////////////////
// START OF GENERAL TAB ///
// ////////////////////////
wGeneralTab = new CTabItem(wTabFolder, SWT.NONE);
wGeneralTab.setText(BaseMessages.getString(PKG, "RestDialog.GeneralTab.Title"));
wGeneralComp = new Composite(wTabFolder, SWT.NONE);
props.setLook(wGeneralComp);
FormLayout fileLayout = new FormLayout();
fileLayout.marginWidth = 3;
fileLayout.marginHeight = 3;
wGeneralComp.setLayout(fileLayout);
// ////////////////////////
// START Settings GROUP
Group gSettings = new Group(wGeneralComp, SWT.SHADOW_ETCHED_IN);
gSettings.setText(BaseMessages.getString(PKG, "RestDialog.SettingsGroup.Label"));
FormLayout SettingsLayout = new FormLayout();
SettingsLayout.marginWidth = 3;
SettingsLayout.marginHeight = 3;
gSettings.setLayout(SettingsLayout);
props.setLook(gSettings);
wlUrl = new Label(gSettings, SWT.RIGHT);
wlUrl.setText(BaseMessages.getString(PKG, "RestDialog.URL.Label"));
props.setLook(wlUrl);
fdlUrl = new FormData();
fdlUrl.left = new FormAttachment(0, 0);
fdlUrl.right = new FormAttachment(middle, -margin);
fdlUrl.top = new FormAttachment(wGeneralComp, margin * 2);
wlUrl.setLayoutData(fdlUrl);
wUrl = new TextVar(transMeta, gSettings, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
props.setLook(wUrl);
wUrl.addModifyListener(lsMod);
fdUrl = new FormData();
fdUrl.left = new FormAttachment(middle, 0);
fdUrl.top = new FormAttachment(wGeneralComp, margin * 2);
fdUrl.right = new FormAttachment(100, 0);
wUrl.setLayoutData(fdUrl);
// UrlInField line
wlUrlInField = new Label(gSettings, SWT.RIGHT);
wlUrlInField.setText(BaseMessages.getString(PKG, "RestDialog.UrlInField.Label"));
props.setLook(wlUrlInField);
fdlUrlInField = new FormData();
fdlUrlInField.left = new FormAttachment(0, 0);
fdlUrlInField.top = new FormAttachment(wUrl, margin);
fdlUrlInField.right = new FormAttachment(middle, -margin);
wlUrlInField.setLayoutData(fdlUrlInField);
wUrlInField = new Button(gSettings, SWT.CHECK);
props.setLook(wUrlInField);
fdUrlInField = new FormData();
fdUrlInField.left = new FormAttachment(middle, 0);
fdUrlInField.top = new FormAttachment(wUrl, margin);
fdUrlInField.right = new FormAttachment(100, 0);
wUrlInField.setLayoutData(fdUrlInField);
wUrlInField.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
input.setChanged();
activeUrlInfield();
}
});
// UrlField Line
wlUrlField = new Label(gSettings, SWT.RIGHT);
wlUrlField.setText(BaseMessages.getString(PKG, "RestDialog.UrlField.Label"));
props.setLook(wlUrlField);
fdlUrlField = new FormData();
fdlUrlField.left = new FormAttachment(0, 0);
fdlUrlField.right = new FormAttachment(middle, -margin);
fdlUrlField.top = new FormAttachment(wUrlInField, margin);
wlUrlField.setLayoutData(fdlUrlField);
wUrlField = new ComboVar(transMeta, gSettings, SWT.BORDER | SWT.READ_ONLY);
wUrlField.setEditable(true);
props.setLook(wUrlField);
wUrlField.addModifyListener(lsMod);
fdUrlField = new FormData();
fdUrlField.left = new FormAttachment(middle, 0);
fdUrlField.top = new FormAttachment(wUrlInField, margin);
fdUrlField.right = new FormAttachment(100, -margin);
wUrlField.setLayoutData(fdUrlField);
wUrlField.addFocusListener(new FocusListener() {
public void focusLost(org.eclipse.swt.events.FocusEvent e) {
}
public void focusGained(org.eclipse.swt.events.FocusEvent e) {
Cursor busy = new Cursor(shell.getDisplay(), SWT.CURSOR_WAIT);
shell.setCursor(busy);
setStreamFields();
shell.setCursor(null);
busy.dispose();
}
});
// Method Line
wlMethod = new Label(gSettings, SWT.RIGHT);
wlMethod.setText(BaseMessages.getString(PKG, "RestDialog.Method.Label"));
props.setLook(wlMethod);
fdlMethod = new FormData();
fdlMethod.left = new FormAttachment(0, 0);
fdlMethod.right = new FormAttachment(middle, -margin);
fdlMethod.top = new FormAttachment(wUrlField, 2 * margin);
wlMethod.setLayoutData(fdlMethod);
wMethod = new ComboVar(transMeta, gSettings, SWT.BORDER | SWT.READ_ONLY);
wMethod.setEditable(true);
props.setLook(wMethod);
wMethod.addModifyListener(lsMod);
fdMethod = new FormData();
fdMethod.left = new FormAttachment(middle, 0);
fdMethod.top = new FormAttachment(wUrlField, 2 * margin);
fdMethod.right = new FormAttachment(100, -margin);
wMethod.setLayoutData(fdMethod);
wMethod.setItems(RestMeta.HTTP_METHODS);
wMethod.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
setMethod();
}
});
// MethodInField line
wlMethodInField = new Label(gSettings, SWT.RIGHT);
wlMethodInField.setText(BaseMessages.getString(PKG, "RestDialog.MethodInField.Label"));
props.setLook(wlMethodInField);
fdlMethodInField = new FormData();
fdlMethodInField.left = new FormAttachment(0, 0);
fdlMethodInField.top = new FormAttachment(wMethod, margin);
fdlMethodInField.right = new FormAttachment(middle, -margin);
wlMethodInField.setLayoutData(fdlMethodInField);
wMethodInField = new Button(gSettings, SWT.CHECK);
props.setLook(wMethodInField);
fdMethodInField = new FormData();
fdMethodInField.left = new FormAttachment(middle, 0);
fdMethodInField.top = new FormAttachment(wMethod, margin);
fdMethodInField.right = new FormAttachment(100, 0);
wMethodInField.setLayoutData(fdMethodInField);
wMethodInField.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
input.setChanged();
activeMethodInfield();
}
});
// MethodField Line
wlMethodField = new Label(gSettings, SWT.RIGHT);
wlMethodField.setText(BaseMessages.getString(PKG, "RestDialog.MethodField.Label"));
props.setLook(wlMethodField);
fdlMethodField = new FormData();
fdlMethodField.left = new FormAttachment(0, 0);
fdlMethodField.right = new FormAttachment(middle, -margin);
fdlMethodField.top = new FormAttachment(wMethodInField, margin);
wlMethodField.setLayoutData(fdlMethodField);
wMethodField = new ComboVar(transMeta, gSettings, SWT.BORDER | SWT.READ_ONLY);
wMethodField.setEditable(true);
props.setLook(wMethodField);
wMethodField.addModifyListener(lsMod);
fdMethodField = new FormData();
fdMethodField.left = new FormAttachment(middle, 0);
fdMethodField.top = new FormAttachment(wMethodInField, margin);
fdMethodField.right = new FormAttachment(100, -margin);
wMethodField.setLayoutData(fdMethodField);
wMethodField.addFocusListener(new FocusListener() {
public void focusLost(org.eclipse.swt.events.FocusEvent e) {
}
public void focusGained(org.eclipse.swt.events.FocusEvent e) {
Cursor busy = new Cursor(shell.getDisplay(), SWT.CURSOR_WAIT);
shell.setCursor(busy);
setStreamFields();
shell.setCursor(null);
busy.dispose();
}
});
// Body Line
wlBody = new Label(gSettings, SWT.RIGHT);
wlBody.setText(BaseMessages.getString(PKG, "RestDialog.Body.Label"));
props.setLook(wlBody);
fdlBody = new FormData();
fdlBody.left = new FormAttachment(0, 0);
fdlBody.right = new FormAttachment(middle, -margin);
fdlBody.top = new FormAttachment(wMethodField, 2 * margin);
wlBody.setLayoutData(fdlBody);
wBody = new ComboVar(transMeta, gSettings, SWT.BORDER | SWT.READ_ONLY);
wBody.setEditable(true);
props.setLook(wBody);
wBody.addModifyListener(lsMod);
fdBody = new FormData();
fdBody.left = new FormAttachment(middle, 0);
fdBody.top = new FormAttachment(wMethodField, 2 * margin);
fdBody.right = new FormAttachment(100, -margin);
wBody.setLayoutData(fdBody);
wBody.addFocusListener(new FocusListener() {
public void focusLost(org.eclipse.swt.events.FocusEvent e) {
}
public void focusGained(org.eclipse.swt.events.FocusEvent e) {
Cursor busy = new Cursor(shell.getDisplay(), SWT.CURSOR_WAIT);
shell.setCursor(busy);
setStreamFields();
shell.setCursor(null);
busy.dispose();
}
});
// ApplicationType Line
wlApplicationType = new Label(gSettings, SWT.RIGHT);
wlApplicationType.setText(BaseMessages.getString(PKG, "RestDialog.ApplicationType.Label"));
props.setLook(wlApplicationType);
fdlApplicationType = new FormData();
fdlApplicationType.left = new FormAttachment(0, 0);
fdlApplicationType.right = new FormAttachment(middle, -margin);
fdlApplicationType.top = new FormAttachment(wBody, 2 * margin);
wlApplicationType.setLayoutData(fdlApplicationType);
wApplicationType = new ComboVar(transMeta, gSettings, SWT.BORDER | SWT.READ_ONLY);
wApplicationType.setEditable(true);
props.setLook(wApplicationType);
wApplicationType.addModifyListener(lsMod);
fdApplicationType = new FormData();
fdApplicationType.left = new FormAttachment(middle, 0);
fdApplicationType.top = new FormAttachment(wBody, 2 * margin);
fdApplicationType.right = new FormAttachment(100, -margin);
wApplicationType.setLayoutData(fdApplicationType);
wApplicationType.setItems(RestMeta.APPLICATION_TYPES);
wApplicationType.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
input.setChanged();
}
});
FormData fdSettings = new FormData();
fdSettings.left = new FormAttachment(0, 0);
fdSettings.right = new FormAttachment(100, 0);
fdSettings.top = new FormAttachment(wStepname, margin);
gSettings.setLayoutData(fdSettings);
// END Output Settings GROUP
// ////////////////////////
// ////////////////////////
// START Output Fields GROUP
Group gOutputFields = new Group(wGeneralComp, SWT.SHADOW_ETCHED_IN);
gOutputFields.setText(BaseMessages.getString(PKG, "RestDialog.OutputFieldsGroup.Label"));
FormLayout OutputFieldsLayout = new FormLayout();
OutputFieldsLayout.marginWidth = 3;
OutputFieldsLayout.marginHeight = 3;
gOutputFields.setLayout(OutputFieldsLayout);
props.setLook(gOutputFields);
// Result line...
wlResult = new Label(gOutputFields, SWT.RIGHT);
wlResult.setText(BaseMessages.getString(PKG, "RestDialog.Result.Label"));
props.setLook(wlResult);
fdlResult = new FormData();
fdlResult.left = new FormAttachment(0, 0);
fdlResult.right = new FormAttachment(middle, -margin);
fdlResult.top = new FormAttachment(gSettings, margin);
wlResult.setLayoutData(fdlResult);
wResult = new TextVar(transMeta, gOutputFields, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
props.setLook(wResult);
wResult.addModifyListener(lsMod);
fdResult = new FormData();
fdResult.left = new FormAttachment(middle, 0);
fdResult.top = new FormAttachment(gSettings, margin * 2);
fdResult.right = new FormAttachment(100, -margin);
wResult.setLayoutData(fdResult);
// Resultcode line...
wlResultCode = new Label(gOutputFields, SWT.RIGHT);
wlResultCode.setText(BaseMessages.getString(PKG, "RestDialog.ResultCode.Label"));
props.setLook(wlResultCode);
fdlResultCode = new FormData();
fdlResultCode.left = new FormAttachment(0, 0);
fdlResultCode.right = new FormAttachment(middle, -margin);
fdlResultCode.top = new FormAttachment(wResult, margin);
wlResultCode.setLayoutData(fdlResultCode);
wResultCode = new TextVar(transMeta, gOutputFields, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
props.setLook(wResultCode);
wResultCode.addModifyListener(lsMod);
fdResultCode = new FormData();
fdResultCode.left = new FormAttachment(middle, 0);
fdResultCode.top = new FormAttachment(wResult, margin);
fdResultCode.right = new FormAttachment(100, -margin);
wResultCode.setLayoutData(fdResultCode);
// Response time line...
wlResponseTime = new Label(gOutputFields, SWT.RIGHT);
wlResponseTime.setText(BaseMessages.getString(PKG, "RestDialog.ResponseTime.Label"));
props.setLook(wlResponseTime);
fdlResponseTime = new FormData();
fdlResponseTime.left = new FormAttachment(0, 0);
fdlResponseTime.right = new FormAttachment(middle, -margin);
fdlResponseTime.top = new FormAttachment(wResultCode, margin);
wlResponseTime.setLayoutData(fdlResponseTime);
wResponseTime = new TextVar(transMeta, gOutputFields, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
props.setLook(wResponseTime);
wResponseTime.addModifyListener(lsMod);
fdResponseTime = new FormData();
fdResponseTime.left = new FormAttachment(middle, 0);
fdResponseTime.top = new FormAttachment(wResultCode, margin);
fdResponseTime.right = new FormAttachment(100, 0);
wResponseTime.setLayoutData(fdResponseTime);
// Response header line...
wlResponseHeader = new Label(gOutputFields, SWT.RIGHT);
wlResponseHeader.setText(BaseMessages.getString(PKG, "RestDialog.ResponseHeader.Label"));
props.setLook(wlResponseHeader);
fdlResponseHeader = new FormData();
fdlResponseHeader.left = new FormAttachment(0, 0);
fdlResponseHeader.right = new FormAttachment(middle, -margin);
fdlResponseHeader.top = new FormAttachment(wResponseTime, margin);
wlResponseHeader.setLayoutData(fdlResponseHeader);
wResponseHeader = new TextVar(transMeta, gOutputFields, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
props.setLook(wResponseHeader);
wResponseHeader.addModifyListener(lsMod);
fdResponseHeader = new FormData();
fdResponseHeader.left = new FormAttachment(middle, 0);
fdResponseHeader.top = new FormAttachment(wResponseTime, margin);
fdResponseHeader.right = new FormAttachment(100, 0);
wResponseHeader.setLayoutData(fdResponseHeader);
FormData fdOutputFields = new FormData();
fdOutputFields.left = new FormAttachment(0, 0);
fdOutputFields.right = new FormAttachment(100, 0);
fdOutputFields.top = new FormAttachment(gSettings, margin);
gOutputFields.setLayoutData(fdOutputFields);
// END Output Fields GROUP
// ////////////////////////
fdGeneralComp = new FormData();
fdGeneralComp.left = new FormAttachment(0, 0);
fdGeneralComp.top = new FormAttachment(wStepname, margin);
fdGeneralComp.right = new FormAttachment(100, 0);
fdGeneralComp.bottom = new FormAttachment(100, 0);
wGeneralComp.setLayoutData(fdGeneralComp);
wGeneralComp.layout();
wGeneralTab.setControl(wGeneralComp);
// ///////////////////////////////////////////////////////////
// / END OF GENERAL TAB
// ///////////////////////////////////////////////////////////
// Auth tab...
//
wAuthTab = new CTabItem(wTabFolder, SWT.NONE);
wAuthTab.setText(BaseMessages.getString(PKG, "RestDialog.Auth.Title"));
FormLayout alayout = new FormLayout();
alayout.marginWidth = Const.FORM_MARGIN;
alayout.marginHeight = Const.FORM_MARGIN;
wAuthComp = new Composite(wTabFolder, SWT.NONE);
wAuthComp.setLayout(alayout);
props.setLook(wAuthComp);
// ////////////////////////
// START HTTP AUTH GROUP
Group gHttpAuth = new Group(wAuthComp, SWT.SHADOW_ETCHED_IN);
gHttpAuth.setText(BaseMessages.getString(PKG, "RestDialog.HttpAuthGroup.Label"));
FormLayout httpAuthLayout = new FormLayout();
httpAuthLayout.marginWidth = 3;
httpAuthLayout.marginHeight = 3;
gHttpAuth.setLayout(httpAuthLayout);
props.setLook(gHttpAuth);
// HTTP Login
wlHttpLogin = new Label(gHttpAuth, SWT.RIGHT);
wlHttpLogin.setText(BaseMessages.getString(PKG, "RestDialog.HttpLogin.Label"));
props.setLook(wlHttpLogin);
FormData fdlHttpLogin = new FormData();
fdlHttpLogin.top = new FormAttachment(0, margin);
fdlHttpLogin.left = new FormAttachment(0, 0);
fdlHttpLogin.right = new FormAttachment(middle, -margin);
wlHttpLogin.setLayoutData(fdlHttpLogin);
wHttpLogin = new TextVar(transMeta, gHttpAuth, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
wHttpLogin.addModifyListener(lsMod);
wHttpLogin.setToolTipText(BaseMessages.getString(PKG, "RestDialog.HttpLogin.Tooltip"));
props.setLook(wHttpLogin);
FormData fdHttpLogin = new FormData();
fdHttpLogin.top = new FormAttachment(0, margin);
fdHttpLogin.left = new FormAttachment(middle, 0);
fdHttpLogin.right = new FormAttachment(100, 0);
wHttpLogin.setLayoutData(fdHttpLogin);
// HTTP Password
wlHttpPassword = new Label(gHttpAuth, SWT.RIGHT);
wlHttpPassword.setText(BaseMessages.getString(PKG, "RestDialog.HttpPassword.Label"));
props.setLook(wlHttpPassword);
FormData fdlHttpPassword = new FormData();
fdlHttpPassword.top = new FormAttachment(wHttpLogin, margin);
fdlHttpPassword.left = new FormAttachment(0, 0);
fdlHttpPassword.right = new FormAttachment(middle, -margin);
wlHttpPassword.setLayoutData(fdlHttpPassword);
wHttpPassword = new PasswordTextVar(transMeta, gHttpAuth, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
wHttpPassword.addModifyListener(lsMod);
wHttpPassword.setToolTipText(BaseMessages.getString(PKG, "RestDialog.HttpPassword.Tooltip"));
props.setLook(wHttpPassword);
FormData fdHttpPassword = new FormData();
fdHttpPassword.top = new FormAttachment(wHttpLogin, margin);
fdHttpPassword.left = new FormAttachment(middle, 0);
fdHttpPassword.right = new FormAttachment(100, 0);
wHttpPassword.setLayoutData(fdHttpPassword);
// Preemptive line
wlPreemptive = new Label(gHttpAuth, SWT.RIGHT);
wlPreemptive.setText(BaseMessages.getString(PKG, "RestDialog.Preemptive.Label"));
props.setLook(wlPreemptive);
fdlPreemptive = new FormData();
fdlPreemptive.left = new FormAttachment(0, 0);
fdlPreemptive.top = new FormAttachment(wHttpPassword, margin);
fdlPreemptive.right = new FormAttachment(middle, -margin);
wlPreemptive.setLayoutData(fdlPreemptive);
wPreemptive = new Button(gHttpAuth, SWT.CHECK);
props.setLook(wPreemptive);
fdPreemptive = new FormData();
fdPreemptive.left = new FormAttachment(middle, 0);
fdPreemptive.top = new FormAttachment(wHttpPassword, margin);
fdPreemptive.right = new FormAttachment(100, 0);
wPreemptive.setLayoutData(fdPreemptive);
wPreemptive.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
input.setChanged();
}
});
FormData fdHttpAuth = new FormData();
fdHttpAuth.left = new FormAttachment(0, 0);
fdHttpAuth.right = new FormAttachment(100, 0);
fdHttpAuth.top = new FormAttachment(gOutputFields, margin);
gHttpAuth.setLayoutData(fdHttpAuth);
// END HTTP AUTH GROUP
// ////////////////////////
// ////////////////////////
// START PROXY GROUP
Group gProxy = new Group(wAuthComp, SWT.SHADOW_ETCHED_IN);
gProxy.setText(BaseMessages.getString(PKG, "RestDialog.ProxyGroup.Label"));
FormLayout proxyLayout = new FormLayout();
proxyLayout.marginWidth = 3;
proxyLayout.marginHeight = 3;
gProxy.setLayout(proxyLayout);
props.setLook(gProxy);
// HTTP Login
wlProxyHost = new Label(gProxy, SWT.RIGHT);
wlProxyHost.setText(BaseMessages.getString(PKG, "RestDialog.ProxyHost.Label"));
props.setLook(wlProxyHost);
FormData fdlProxyHost = new FormData();
fdlProxyHost.top = new FormAttachment(0, margin);
fdlProxyHost.left = new FormAttachment(0, 0);
fdlProxyHost.right = new FormAttachment(middle, -margin);
wlProxyHost.setLayoutData(fdlProxyHost);
wProxyHost = new TextVar(transMeta, gProxy, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
wProxyHost.addModifyListener(lsMod);
wProxyHost.setToolTipText(BaseMessages.getString(PKG, "RestDialog.ProxyHost.Tooltip"));
props.setLook(wProxyHost);
FormData fdProxyHost = new FormData();
fdProxyHost.top = new FormAttachment(0, margin);
fdProxyHost.left = new FormAttachment(middle, 0);
fdProxyHost.right = new FormAttachment(100, 0);
wProxyHost.setLayoutData(fdProxyHost);
// HTTP Password
wlProxyPort = new Label(gProxy, SWT.RIGHT);
wlProxyPort.setText(BaseMessages.getString(PKG, "RestDialog.ProxyPort.Label"));
props.setLook(wlProxyPort);
FormData fdlProxyPort = new FormData();
fdlProxyPort.top = new FormAttachment(wProxyHost, margin);
fdlProxyPort.left = new FormAttachment(0, 0);
fdlProxyPort.right = new FormAttachment(middle, -margin);
wlProxyPort.setLayoutData(fdlProxyPort);
wProxyPort = new TextVar(transMeta, gProxy, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
wProxyPort.addModifyListener(lsMod);
wProxyPort.setToolTipText(BaseMessages.getString(PKG, "RestDialog.ProxyPort.Tooltip"));
props.setLook(wProxyPort);
FormData fdProxyPort = new FormData();
fdProxyPort.top = new FormAttachment(wProxyHost, margin);
fdProxyPort.left = new FormAttachment(middle, 0);
fdProxyPort.right = new FormAttachment(100, 0);
wProxyPort.setLayoutData(fdProxyPort);
FormData fdProxy = new FormData();
fdProxy.left = new FormAttachment(0, 0);
fdProxy.right = new FormAttachment(100, 0);
fdProxy.top = new FormAttachment(gHttpAuth, margin);
gProxy.setLayoutData(fdProxy);
// END HTTP AUTH GROUP
// ////////////////////////
fdAuthComp = new FormData();
fdAuthComp.left = new FormAttachment(0, 0);
fdAuthComp.top = new FormAttachment(wStepname, margin);
fdAuthComp.right = new FormAttachment(100, 0);
fdAuthComp.bottom = new FormAttachment(100, 0);
wAuthComp.setLayoutData(fdAuthComp);
wAuthComp.layout();
wAuthTab.setControl(wAuthComp);
// ////// END of Auth Tab
// SSL tab...
//
wSSLTab = new CTabItem(wTabFolder, SWT.NONE);
wSSLTab.setText(BaseMessages.getString(PKG, "RestDialog.SSL.Title"));
FormLayout ssll = new FormLayout();
ssll.marginWidth = Const.FORM_MARGIN;
ssll.marginHeight = Const.FORM_MARGIN;
wSSLComp = new Composite(wTabFolder, SWT.NONE);
wSSLComp.setLayout(ssll);
props.setLook(wSSLComp);
// ////////////////////////
// START SSLTrustStore GROUP
Group gSSLTrustStore = new Group(wSSLComp, SWT.SHADOW_ETCHED_IN);
gSSLTrustStore.setText(BaseMessages.getString(PKG, "RestDialog.SSLTrustStoreGroup.Label"));
FormLayout SSLTrustStoreLayout = new FormLayout();
SSLTrustStoreLayout.marginWidth = 3;
SSLTrustStoreLayout.marginHeight = 3;
gSSLTrustStore.setLayout(SSLTrustStoreLayout);
props.setLook(gSSLTrustStore);
// TrustStoreFile line
wlTrustStoreFile = new Label(gSSLTrustStore, SWT.RIGHT);
wlTrustStoreFile.setText(BaseMessages.getString(PKG, "RestDialog.TrustStoreFile.Label"));
props.setLook(wlTrustStoreFile);
fdlTrustStoreFile = new FormData();
fdlTrustStoreFile.left = new FormAttachment(0, 0);
fdlTrustStoreFile.top = new FormAttachment(0, margin);
fdlTrustStoreFile.right = new FormAttachment(middle, -margin);
wlTrustStoreFile.setLayoutData(fdlTrustStoreFile);
wbTrustStoreFile = new Button(gSSLTrustStore, SWT.PUSH | SWT.CENTER);
props.setLook(wbTrustStoreFile);
wbTrustStoreFile.setText(BaseMessages.getString(PKG, "System.Button.Browse"));
fdbTrustStoreFile = new FormData();
fdbTrustStoreFile.right = new FormAttachment(100, 0);
fdbTrustStoreFile.top = new FormAttachment(0, 0);
wbTrustStoreFile.setLayoutData(fdbTrustStoreFile);
wbTrustStoreFile.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
FileDialog dialog = new FileDialog(shell, SWT.SAVE);
dialog.setFilterExtensions(new String[] { "*.*" });
if (wTrustStoreFile.getText() != null) {
dialog.setFileName(transMeta.environmentSubstitute(wTrustStoreFile.getText()));
}
dialog.setFilterNames(new String[] { BaseMessages.getString(PKG, "System.FileType.AllFiles") });
if (dialog.open() != null) {
wTrustStoreFile.setText(dialog.getFilterPath() + System.getProperty("file.separator") + dialog.getFileName());
}
}
});
wTrustStoreFile = new TextVar(transMeta, gSSLTrustStore, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
props.setLook(wTrustStoreFile);
wTrustStoreFile.addModifyListener(lsMod);
fdTrustStoreFile = new FormData();
fdTrustStoreFile.left = new FormAttachment(middle, 0);
fdTrustStoreFile.top = new FormAttachment(0, margin);
fdTrustStoreFile.right = new FormAttachment(wbTrustStoreFile, -margin);
wTrustStoreFile.setLayoutData(fdTrustStoreFile);
// TrustStorePassword line
wlTrustStorePassword = new Label(gSSLTrustStore, SWT.RIGHT);
wlTrustStorePassword.setText(BaseMessages.getString(PKG, "RestDialog.TrustStorePassword.Label"));
props.setLook(wlTrustStorePassword);
fdlTrustStorePassword = new FormData();
fdlTrustStorePassword.left = new FormAttachment(0, 0);
fdlTrustStorePassword.top = new FormAttachment(wbTrustStoreFile, margin);
fdlTrustStorePassword.right = new FormAttachment(middle, -margin);
wlTrustStorePassword.setLayoutData(fdlTrustStorePassword);
wTrustStorePassword = new PasswordTextVar(transMeta, gSSLTrustStore, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
props.setLook(wTrustStorePassword);
wTrustStorePassword.addModifyListener(lsMod);
fdTrustStorePassword = new FormData();
fdTrustStorePassword.left = new FormAttachment(middle, 0);
fdTrustStorePassword.top = new FormAttachment(wbTrustStoreFile, margin);
fdTrustStorePassword.right = new FormAttachment(100, 0);
wTrustStorePassword.setLayoutData(fdTrustStorePassword);
FormData fdSSLTrustStore = new FormData();
fdSSLTrustStore.left = new FormAttachment(0, 0);
fdSSLTrustStore.right = new FormAttachment(100, 0);
fdSSLTrustStore.top = new FormAttachment(gHttpAuth, margin);
gSSLTrustStore.setLayoutData(fdSSLTrustStore);
// END HTTP AUTH GROUP
// ////////////////////////
fdSSLComp = new FormData();
fdSSLComp.left = new FormAttachment(0, 0);
fdSSLComp.top = new FormAttachment(wStepname, margin);
fdSSLComp.right = new FormAttachment(100, 0);
fdSSLComp.bottom = new FormAttachment(100, 0);
wSSLComp.setLayoutData(fdSSLComp);
wSSLComp.layout();
wSSLTab.setControl(wSSLComp);
// ////// END of SSL Tab
// Additional tab...
//
wAdditionalTab = new CTabItem(wTabFolder, SWT.NONE);
wAdditionalTab.setText(BaseMessages.getString(PKG, "RestDialog.Headers.Title"));
FormLayout addLayout = new FormLayout();
addLayout.marginWidth = Const.FORM_MARGIN;
addLayout.marginHeight = Const.FORM_MARGIN;
wAdditionalComp = new Composite(wTabFolder, SWT.NONE);
wAdditionalComp.setLayout(addLayout);
props.setLook(wAdditionalComp);
wlFields = new Label(wAdditionalComp, SWT.NONE);
wlFields.setText(BaseMessages.getString(PKG, "RestDialog.Headers.Label"));
props.setLook(wlFields);
fdlFields = new FormData();
fdlFields.left = new FormAttachment(0, 0);
fdlFields.top = new FormAttachment(wStepname, margin);
wlFields.setLayoutData(fdlFields);
wGetHeaders = new Button(wAdditionalComp, SWT.PUSH);
wGetHeaders.setText(BaseMessages.getString(PKG, "RestDialog.GetHeaders.Button"));
FormData fdGetHeaders = new FormData();
fdGetHeaders.top = new FormAttachment(wlFields, margin);
fdGetHeaders.right = new FormAttachment(100, 0);
wGetHeaders.setLayoutData(fdGetHeaders);
final int FieldsRows = input.getHeaderName().length;
colinf = new ColumnInfo[] { new ColumnInfo(BaseMessages.getString(PKG, "RestDialog.ColumnInfo.Field"), ColumnInfo.COLUMN_TYPE_CCOMBO, new String[] { "" }, false), new ColumnInfo(BaseMessages.getString(PKG, "RestDialog.ColumnInfo.Name"), ColumnInfo.COLUMN_TYPE_TEXT, false) };
colinf[1].setUsingVariables(true);
wFields = new TableView(transMeta, wAdditionalComp, SWT.BORDER | SWT.FULL_SELECTION | SWT.MULTI, colinf, FieldsRows, lsMod, props);
fdFields = new FormData();
fdFields.left = new FormAttachment(0, 0);
fdFields.top = new FormAttachment(wlFields, margin);
fdFields.right = new FormAttachment(wGetHeaders, -margin);
fdFields.bottom = new FormAttachment(100, -margin);
wFields.setLayoutData(fdFields);
fdAdditionalComp = new FormData();
fdAdditionalComp.left = new FormAttachment(0, 0);
fdAdditionalComp.top = new FormAttachment(wStepname, margin);
fdAdditionalComp.right = new FormAttachment(100, -margin);
fdAdditionalComp.bottom = new FormAttachment(100, 0);
wAdditionalComp.setLayoutData(fdAdditionalComp);
wAdditionalComp.layout();
wAdditionalTab.setControl(wAdditionalComp);
// ////// END of Additional Tab
// Query Parameters tab...
//
wParametersTab = new CTabItem(wTabFolder, SWT.NONE);
wParametersTab.setText(BaseMessages.getString(PKG, "RestDialog.Parameters.Title"));
FormLayout playout = new FormLayout();
playout.marginWidth = Const.FORM_MARGIN;
playout.marginHeight = Const.FORM_MARGIN;
wParametersComp = new Composite(wTabFolder, SWT.NONE);
wParametersComp.setLayout(playout);
props.setLook(wParametersComp);
wlParameters = new Label(wParametersComp, SWT.NONE);
wlParameters.setText(BaseMessages.getString(PKG, "RestDialog.Parameters.Label"));
props.setLook(wlParameters);
fdlParameters = new FormData();
fdlParameters.left = new FormAttachment(0, 0);
fdlParameters.top = new FormAttachment(wStepname, margin);
wlParameters.setLayoutData(fdlParameters);
wGet = new Button(wParametersComp, SWT.PUSH);
wGet.setText(BaseMessages.getString(PKG, "RestDialog.GetParameters.Button"));
FormData fdGet = new FormData();
fdGet.top = new FormAttachment(wlParameters, margin);
fdGet.right = new FormAttachment(100, 0);
wGet.setLayoutData(fdGet);
final int ParametersRows = input.getParameterField().length;
colinfoparams = new ColumnInfo[] { new ColumnInfo(BaseMessages.getString(PKG, "RestDialog.ColumnInfo.ParameterField"), ColumnInfo.COLUMN_TYPE_CCOMBO, new String[] { "" }, false), new ColumnInfo(BaseMessages.getString(PKG, "RestDialog.ColumnInfo.ParameterName"), ColumnInfo.COLUMN_TYPE_TEXT, false) };
wParameters = new TableView(transMeta, wParametersComp, SWT.BORDER | SWT.FULL_SELECTION | SWT.MULTI, colinfoparams, ParametersRows, lsMod, props);
fdParameters = new FormData();
fdParameters.left = new FormAttachment(0, 0);
fdParameters.top = new FormAttachment(wlParameters, margin);
fdParameters.right = new FormAttachment(wGet, -margin);
fdParameters.bottom = new FormAttachment(100, -margin);
wParameters.setLayoutData(fdParameters);
fdParametersComp = new FormData();
fdParametersComp.left = new FormAttachment(0, 0);
fdParametersComp.top = new FormAttachment(wStepname, margin);
fdParametersComp.right = new FormAttachment(100, 0);
fdParametersComp.bottom = new FormAttachment(100, 0);
wParametersComp.setLayoutData(fdParametersComp);
wParametersComp.layout();
wParametersTab.setControl(wParametersComp);
// ////// END of Query Parameters Tab
// Matrix Parameters tab
wMatrixParametersTab = new CTabItem(wTabFolder, SWT.NONE);
wMatrixParametersTab.setText(BaseMessages.getString(PKG, "RestDialog.MatrixParameters.Title"));
FormLayout pl = new FormLayout();
pl.marginWidth = Const.FORM_MARGIN;
pl.marginHeight = Const.FORM_MARGIN;
wMatrixParametersComp = new Composite(wTabFolder, SWT.NONE);
wMatrixParametersComp.setLayout(pl);
props.setLook(wMatrixParametersComp);
wlMatrixParameters = new Label(wMatrixParametersComp, SWT.NONE);
wlMatrixParameters.setText(BaseMessages.getString(PKG, "RestDialog.Parameters.Label"));
props.setLook(wlMatrixParameters);
fdlMatrixParameters = new FormData();
fdlMatrixParameters.left = new FormAttachment(0, 0);
fdlMatrixParameters.top = new FormAttachment(wStepname, margin);
wlMatrixParameters.setLayoutData(fdlMatrixParameters);
wMatrixGet = new Button(wMatrixParametersComp, SWT.PUSH);
wMatrixGet.setText(BaseMessages.getString(PKG, "RestDialog.GetParameters.Button"));
FormData fdMatrixGet = new FormData();
fdMatrixGet.top = new FormAttachment(wlMatrixParameters, margin);
fdMatrixGet.right = new FormAttachment(100, 0);
wMatrixGet.setLayoutData(fdMatrixGet);
int matrixParametersRows = input.getMatrixParameterField().length;
colinfoparams = new ColumnInfo[] { new ColumnInfo(BaseMessages.getString(PKG, "RestDialog.ColumnInfo.ParameterField"), ColumnInfo.COLUMN_TYPE_CCOMBO, new String[] { "" }, false), new ColumnInfo(BaseMessages.getString(PKG, "RestDialog.ColumnInfo.ParameterName"), ColumnInfo.COLUMN_TYPE_TEXT, false) };
wMatrixParameters = new TableView(transMeta, wMatrixParametersComp, SWT.BORDER | SWT.FULL_SELECTION | SWT.MULTI, colinfoparams, matrixParametersRows, lsMod, props);
fdMatrixParameters = new FormData();
fdMatrixParameters.left = new FormAttachment(0, 0);
fdMatrixParameters.top = new FormAttachment(wlMatrixParameters, margin);
fdMatrixParameters.right = new FormAttachment(wMatrixGet, -margin);
fdMatrixParameters.bottom = new FormAttachment(100, -margin);
wMatrixParameters.setLayoutData(fdMatrixParameters);
fdMatrixParametersComp = new FormData();
fdMatrixParametersComp.left = new FormAttachment(0, 0);
fdMatrixParametersComp.top = new FormAttachment(wStepname, margin);
fdMatrixParametersComp.right = new FormAttachment(100, 0);
fdMatrixParametersComp.bottom = new FormAttachment(100, 0);
wMatrixParametersComp.setLayoutData(fdMatrixParametersComp);
wMatrixParametersComp.layout();
wMatrixParametersTab.setControl(wMatrixParametersComp);
// END of Matrix Parameters Tab
fdTabFolder = new FormData();
fdTabFolder.left = new FormAttachment(0, 0);
fdTabFolder.top = new FormAttachment(wStepname, margin);
fdTabFolder.right = new FormAttachment(100, 0);
fdTabFolder.bottom = new FormAttachment(100, -50);
wTabFolder.setLayoutData(fdTabFolder);
//
// Search the fields in the background
//
final Runnable runnable = new Runnable() {
public void run() {
StepMeta stepMeta = transMeta.findStep(stepname);
if (stepMeta != null) {
try {
RowMetaInterface row = transMeta.getPrevStepFields(stepMeta);
// Remember these fields...
for (int i = 0; i < row.size(); i++) {
inputFields.put(row.getValueMeta(i).getName(), Integer.valueOf(i));
}
setComboBoxes();
} catch (KettleException e) {
log.logError(toString(), BaseMessages.getString(PKG, "System.Dialog.GetFieldsFailed.Message"));
}
}
}
};
new Thread(runnable).start();
// THE BUTTONS
wOK = new Button(shell, SWT.PUSH);
wOK.setText(BaseMessages.getString(PKG, "System.Button.OK"));
wCancel = new Button(shell, SWT.PUSH);
wCancel.setText(BaseMessages.getString(PKG, "System.Button.Cancel"));
setButtonPositions(new Button[] { wOK, wCancel }, margin, wTabFolder);
// Add listeners
lsOK = new Listener() {
public void handleEvent(Event e) {
ok();
}
};
lsCancel = new Listener() {
public void handleEvent(Event e) {
cancel();
}
};
lsGet = new Listener() {
public void handleEvent(Event e) {
getParametersFields(wParameters);
}
};
lsMatrixGet = new Listener() {
public void handleEvent(Event e) {
getParametersFields(wMatrixParameters);
}
};
Listener lsGetHeaders = new Listener() {
public void handleEvent(Event e) {
getHeaders();
}
};
wOK.addListener(SWT.Selection, lsOK);
wGet.addListener(SWT.Selection, lsGet);
wMatrixGet.addListener(SWT.Selection, lsMatrixGet);
wGetHeaders.addListener(SWT.Selection, lsGetHeaders);
wCancel.addListener(SWT.Selection, lsCancel);
lsDef = new SelectionAdapter() {
public void widgetDefaultSelected(SelectionEvent e) {
ok();
}
};
wStepname.addSelectionListener(lsDef);
wUrl.addSelectionListener(lsDef);
wResult.addSelectionListener(lsDef);
wResultCode.addSelectionListener(lsDef);
wResponseTime.addSelectionListener(lsDef);
// Detect X or ALT-F4 or something that kills this window...
shell.addShellListener(new ShellAdapter() {
public void shellClosed(ShellEvent e) {
cancel();
}
});
lsResize = new Listener() {
public void handleEvent(Event event) {
Point size = shell.getSize();
wFields.setSize(size.x - 10, size.y - 50);
wFields.table.setSize(size.x - 10, size.y - 50);
wFields.redraw();
}
};
shell.addListener(SWT.Resize, lsResize);
// Set the shell size, based upon previous time...
setSize();
wTabFolder.setSelection(0);
getData();
activeUrlInfield();
activeMethodInfield();
setMethod();
input.setChanged(changed);
shell.open();
while (!shell.isDisposed()) {
if (!display.readAndDispatch()) {
display.sleep();
}
}
return stepname;
}
use of org.pentaho.di.ui.core.widget.PasswordTextVar in project pentaho-kettle by pentaho.
the class MailInputDialog method open.
public String open() {
Shell parent = getParent();
Display display = parent.getDisplay();
shell = new Shell(parent, SWT.DIALOG_TRIM | SWT.RESIZE | SWT.MIN | SWT.MAX);
props.setLook(shell);
setShellImage(shell, input);
ModifyListener lsMod = new ModifyListener() {
public void modifyText(ModifyEvent e) {
closeMailConnection();
input.setChanged();
}
};
SelectionListener lsSelection = new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
input.setChanged();
closeMailConnection();
}
};
changed = input.hasChanged();
FormLayout formLayout = new FormLayout();
formLayout.marginWidth = Const.FORM_MARGIN;
formLayout.marginHeight = Const.FORM_MARGIN;
shell.setLayout(formLayout);
shell.setText(BaseMessages.getString(PKG, "MailInputdialog.Shell.Title"));
int middle = props.getMiddlePct();
int margin = Const.MARGIN;
// Stepname line
wlStepname = new Label(shell, SWT.RIGHT);
wlStepname.setText(BaseMessages.getString(PKG, "MailInputdialog.Stepname.Label"));
props.setLook(wlStepname);
fdlStepname = new FormData();
fdlStepname.left = new FormAttachment(0, 0);
fdlStepname.right = new FormAttachment(middle, -margin);
fdlStepname.top = new FormAttachment(0, margin);
wlStepname.setLayoutData(fdlStepname);
wStepname = new Text(shell, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
wStepname.setText(stepname);
props.setLook(wStepname);
wStepname.addModifyListener(lsMod);
fdStepname = new FormData();
fdStepname.left = new FormAttachment(middle, 0);
fdStepname.top = new FormAttachment(0, margin);
fdStepname.right = new FormAttachment(100, 0);
wStepname.setLayoutData(fdStepname);
wTabFolder = new CTabFolder(shell, SWT.BORDER);
props.setLook(wTabFolder, Props.WIDGET_STYLE_TAB);
// ////////////////////////
// START OF GENERAL TAB ///
// ////////////////////////
wGeneralTab = new CTabItem(wTabFolder, SWT.NONE);
wGeneralTab.setText(BaseMessages.getString(PKG, "MailInput.Tab.General.Label"));
wGeneralComp = new Composite(wTabFolder, SWT.NONE);
props.setLook(wGeneralComp);
FormLayout generalLayout = new FormLayout();
generalLayout.marginWidth = 3;
generalLayout.marginHeight = 3;
wGeneralComp.setLayout(generalLayout);
// ////////////////////////
// START OF SERVER SETTINGS GROUP///
// /
wServerSettings = new Group(wGeneralComp, SWT.SHADOW_NONE);
props.setLook(wServerSettings);
wServerSettings.setText(BaseMessages.getString(PKG, "MailInput.ServerSettings.Group.Label"));
FormLayout ServerSettingsgroupLayout = new FormLayout();
ServerSettingsgroupLayout.marginWidth = 10;
ServerSettingsgroupLayout.marginHeight = 10;
wServerSettings.setLayout(ServerSettingsgroupLayout);
// ServerName line
wlServerName = new Label(wServerSettings, SWT.RIGHT);
wlServerName.setText(BaseMessages.getString(PKG, "MailInput.Server.Label"));
props.setLook(wlServerName);
fdlServerName = new FormData();
fdlServerName.left = new FormAttachment(0, 0);
fdlServerName.top = new FormAttachment(0, 2 * margin);
fdlServerName.right = new FormAttachment(middle, -margin);
wlServerName.setLayoutData(fdlServerName);
wServerName = new TextVar(transMeta, wServerSettings, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
props.setLook(wServerName);
wServerName.addModifyListener(lsMod);
fdServerName = new FormData();
fdServerName.left = new FormAttachment(middle, 0);
fdServerName.top = new FormAttachment(0, 2 * margin);
fdServerName.right = new FormAttachment(100, 0);
wServerName.setLayoutData(fdServerName);
// USE connection with SSL
wlUseSSL = new Label(wServerSettings, SWT.RIGHT);
wlUseSSL.setText(BaseMessages.getString(PKG, "MailInput.UseSSLMails.Label"));
props.setLook(wlUseSSL);
fdlUseSSL = new FormData();
fdlUseSSL.left = new FormAttachment(0, 0);
fdlUseSSL.top = new FormAttachment(wServerName, margin);
fdlUseSSL.right = new FormAttachment(middle, -margin);
wlUseSSL.setLayoutData(fdlUseSSL);
wUseSSL = new Button(wServerSettings, SWT.CHECK);
props.setLook(wUseSSL);
fdUseSSL = new FormData();
wUseSSL.setToolTipText(BaseMessages.getString(PKG, "MailInput.UseSSLMails.Tooltip"));
fdUseSSL.left = new FormAttachment(middle, 0);
fdUseSSL.top = new FormAttachment(wServerName, margin);
fdUseSSL.right = new FormAttachment(100, 0);
wUseSSL.setLayoutData(fdUseSSL);
wUseSSL.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
closeMailConnection();
refreshPort(true);
}
});
// port
wlPort = new Label(wServerSettings, SWT.RIGHT);
wlPort.setText(BaseMessages.getString(PKG, "MailInput.SSLPort.Label"));
props.setLook(wlPort);
fdlPort = new FormData();
fdlPort.left = new FormAttachment(0, 0);
fdlPort.top = new FormAttachment(wUseSSL, margin);
fdlPort.right = new FormAttachment(middle, -margin);
wlPort.setLayoutData(fdlPort);
wPort = new TextVar(transMeta, wServerSettings, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
props.setLook(wPort);
wPort.setToolTipText(BaseMessages.getString(PKG, "MailInput.SSLPort.Tooltip"));
wPort.addModifyListener(lsMod);
fdPort = new FormData();
fdPort.left = new FormAttachment(middle, 0);
fdPort.top = new FormAttachment(wUseSSL, margin);
fdPort.right = new FormAttachment(100, 0);
wPort.setLayoutData(fdPort);
// UserName line
wlUserName = new Label(wServerSettings, SWT.RIGHT);
wlUserName.setText(BaseMessages.getString(PKG, "MailInput.Username.Label"));
props.setLook(wlUserName);
fdlUserName = new FormData();
fdlUserName.left = new FormAttachment(0, 0);
fdlUserName.top = new FormAttachment(wPort, margin);
fdlUserName.right = new FormAttachment(middle, -margin);
wlUserName.setLayoutData(fdlUserName);
wUserName = new TextVar(transMeta, wServerSettings, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
props.setLook(wUserName);
wUserName.setToolTipText(BaseMessages.getString(PKG, "MailInput.Username.Tooltip"));
wUserName.addModifyListener(lsMod);
fdUserName = new FormData();
fdUserName.left = new FormAttachment(middle, 0);
fdUserName.top = new FormAttachment(wPort, margin);
fdUserName.right = new FormAttachment(100, 0);
wUserName.setLayoutData(fdUserName);
// Password line
wlPassword = new Label(wServerSettings, SWT.RIGHT);
wlPassword.setText(BaseMessages.getString(PKG, "MailInput.Password.Label"));
props.setLook(wlPassword);
fdlPassword = new FormData();
fdlPassword.left = new FormAttachment(0, 0);
fdlPassword.top = new FormAttachment(wUserName, margin);
fdlPassword.right = new FormAttachment(middle, -margin);
wlPassword.setLayoutData(fdlPassword);
wPassword = new PasswordTextVar(transMeta, wServerSettings, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
props.setLook(wPassword);
wPassword.addModifyListener(lsMod);
fdPassword = new FormData();
fdPassword.left = new FormAttachment(middle, 0);
fdPassword.top = new FormAttachment(wUserName, margin);
fdPassword.right = new FormAttachment(100, 0);
wPassword.setLayoutData(fdPassword);
// USE proxy
wlUseProxy = new Label(wServerSettings, SWT.RIGHT);
wlUseProxy.setText(BaseMessages.getString(PKG, "MailInput.UseProxyMails.Label"));
props.setLook(wlUseProxy);
fdlUseProxy = new FormData();
fdlUseProxy.left = new FormAttachment(0, 0);
fdlUseProxy.top = new FormAttachment(wPassword, 2 * margin);
fdlUseProxy.right = new FormAttachment(middle, -margin);
wlUseProxy.setLayoutData(fdlUseProxy);
wUseProxy = new Button(wServerSettings, SWT.CHECK);
props.setLook(wUseProxy);
fdUseProxy = new FormData();
wUseProxy.setToolTipText(BaseMessages.getString(PKG, "MailInput.UseProxyMails.Tooltip"));
fdUseProxy.left = new FormAttachment(middle, 0);
fdUseProxy.top = new FormAttachment(wPassword, 2 * margin);
fdUseProxy.right = new FormAttachment(100, 0);
wUseProxy.setLayoutData(fdUseProxy);
wUseProxy.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
setUserProxy();
input.setChanged();
}
});
// ProxyUsername line
wlProxyUsername = new Label(wServerSettings, SWT.RIGHT);
wlProxyUsername.setText(BaseMessages.getString(PKG, "MailInput.ProxyUsername.Label"));
wProxyUsername = new TextVar(transMeta, wServerSettings, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
wProxyUsername.setToolTipText(BaseMessages.getString(PKG, "MailInput.ProxyUsername.Tooltip"));
wProxyUsername.addModifyListener(lsMod);
addLabelInputPairBelow(wlProxyUsername, wProxyUsername, wUseProxy);
// Use Batch label/checkbox
Label wlUseBatch = new Label(wServerSettings, SWT.RIGHT);
wlUseBatch.setText(BaseMessages.getString(PKG, "MailInputDialog.UseBatch.Label"));
wUseBatch = new Button(wServerSettings, SWT.CHECK);
wUseBatch.setToolTipText(BaseMessages.getString(PKG, "MailInputDialog.UseBatch.Tooltip"));
wUseBatch.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
setBatchSettingsEnabled();
}
});
addLabelInputPairBelow(wlUseBatch, wUseBatch, wProxyUsername);
// ignore field errors
wlIgnoreFieldErrors = new Label(wServerSettings, SWT.RIGHT);
wlIgnoreFieldErrors.setText(BaseMessages.getString(PKG, "MailInput.IgnoreFieldErrors.Label"));
wIgnoreFieldErrors = new Button(wServerSettings, SWT.CHECK);
wIgnoreFieldErrors.setToolTipText(BaseMessages.getString(PKG, "MailInput.IgnoreFieldErrors.Tooltip"));
addLabelInputPairBelow(wlIgnoreFieldErrors, wIgnoreFieldErrors, wUseBatch);
// Protocol
wlProtocol = new Label(wServerSettings, SWT.RIGHT);
wlProtocol.setText(BaseMessages.getString(PKG, "MailInput.Protocol.Label"));
wProtocol = new CCombo(wServerSettings, SWT.SINGLE | SWT.READ_ONLY | SWT.BORDER);
wProtocol.setItems(MailConnectionMeta.protocolCodes);
wProtocol.select(0);
wProtocol.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
refreshProtocol(true);
}
});
addLabelInputPairBelow(wlProtocol, wProtocol, wIgnoreFieldErrors);
// Test connection button
wTest = new Button(wServerSettings, SWT.PUSH);
wTest.setText(BaseMessages.getString(PKG, "MailInput.TestConnection.Label"));
props.setLook(wTest);
fdTest = new FormData();
wTest.setToolTipText(BaseMessages.getString(PKG, "MailInput.TestConnection.Tooltip"));
fdTest.top = new FormAttachment(wProtocol, margin);
fdTest.right = new FormAttachment(100, 0);
wTest.setLayoutData(fdTest);
fdServerSettings = new FormData();
fdServerSettings.left = new FormAttachment(0, margin);
fdServerSettings.top = new FormAttachment(wProtocol, margin);
fdServerSettings.right = new FormAttachment(100, -margin);
wServerSettings.setLayoutData(fdServerSettings);
// ///////////////////////////////////////////////////////////
// / END OF SERVER SETTINGS GROUP
// ///////////////////////////////////////////////////////////
fdGeneralComp = new FormData();
fdGeneralComp.left = new FormAttachment(0, 0);
fdGeneralComp.top = new FormAttachment(wStepname, 0);
fdGeneralComp.right = new FormAttachment(100, 0);
fdGeneralComp.bottom = new FormAttachment(100, 0);
wGeneralComp.setLayoutData(fdGeneralComp);
wGeneralComp.layout();
wGeneralTab.setControl(wGeneralComp);
props.setLook(wGeneralComp);
// ///////////////////////////////////////////////////////////
// / END OF GENERAL TAB
// ///////////////////////////////////////////////////////////
// ////////////////////////
// START OF SETTINGS TAB ///
// ////////////////////////
wSettingsTab = new CTabItem(wTabFolder, SWT.NONE);
wSettingsTab.setText(BaseMessages.getString(PKG, "MailInput.Tab.Pop.Label"));
wSettingsComp = new Composite(wTabFolder, SWT.NONE);
props.setLook(wSettingsComp);
FormLayout PopLayout = new FormLayout();
PopLayout.marginWidth = 3;
PopLayout.marginHeight = 3;
wSettingsComp.setLayout(PopLayout);
// Message: for POP3, only INBOX folder is available!
wlPOP3Message = new Label(wSettingsComp, SWT.RIGHT);
wlPOP3Message.setText(BaseMessages.getString(PKG, "MailInput.POP3Message.Label"));
props.setLook(wlPOP3Message);
fdlPOP3Message = new FormData();
fdlPOP3Message.left = new FormAttachment(0, margin);
fdlPOP3Message.top = new FormAttachment(0, 3 * margin);
wlPOP3Message.setLayoutData(fdlPOP3Message);
wlPOP3Message.setForeground(GUIResource.getInstance().getColorOrange());
// ////////////////////////
// START OF POP3 Settings GROUP///
// /
wPOP3Settings = new Group(wSettingsComp, SWT.SHADOW_NONE);
props.setLook(wPOP3Settings);
wPOP3Settings.setText(BaseMessages.getString(PKG, "MailInput.POP3Settings.Group.Label"));
FormLayout POP3SettingsgroupLayout = new FormLayout();
POP3SettingsgroupLayout.marginWidth = 10;
POP3SettingsgroupLayout.marginHeight = 10;
wPOP3Settings.setLayout(POP3SettingsgroupLayout);
// List of mails of retrieve
wlListmails = new Label(wPOP3Settings, SWT.RIGHT);
wlListmails.setText(BaseMessages.getString(PKG, "MailInput.Listmails.Label"));
props.setLook(wlListmails);
fdlListmails = new FormData();
fdlListmails.left = new FormAttachment(0, 0);
fdlListmails.right = new FormAttachment(middle, 0);
fdlListmails.top = new FormAttachment(wlPOP3Message, 2 * margin);
wlListmails.setLayoutData(fdlListmails);
wListmails = new CCombo(wPOP3Settings, SWT.SINGLE | SWT.READ_ONLY | SWT.BORDER);
wListmails.add(BaseMessages.getString(PKG, "MailInput.RetrieveAllMails.Label"));
// [PDI-7241] pop3 does not support retrive unread option
// wListmails.add( BaseMessages.getString( PKG, "MailInput.RetrieveUnreadMails.Label" ) );
wListmails.add(BaseMessages.getString(PKG, "MailInput.RetrieveFirstMails.Label"));
// +1: starts at -1
wListmails.select(0);
props.setLook(wListmails);
fdListmails = new FormData();
fdListmails.left = new FormAttachment(middle, 0);
fdListmails.top = new FormAttachment(wlPOP3Message, 2 * margin);
fdListmails.right = new FormAttachment(100, 0);
wListmails.setLayoutData(fdListmails);
wListmails.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
input.setChanged();
chooseListMails();
}
});
// Retrieve the first ... mails
wlFirstmails = new Label(wPOP3Settings, SWT.RIGHT);
wlFirstmails.setText(BaseMessages.getString(PKG, "MailInput.Firstmails.Label"));
props.setLook(wlFirstmails);
fdlFirstmails = new FormData();
fdlFirstmails.left = new FormAttachment(0, 0);
fdlFirstmails.right = new FormAttachment(middle, -margin);
fdlFirstmails.top = new FormAttachment(wListmails, margin);
wlFirstmails.setLayoutData(fdlFirstmails);
wFirstmails = new TextVar(transMeta, wPOP3Settings, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
props.setLook(wFirstmails);
wFirstmails.addModifyListener(lsMod);
fdFirstmails = new FormData();
fdFirstmails.left = new FormAttachment(middle, 0);
fdFirstmails.top = new FormAttachment(wListmails, margin);
fdFirstmails.right = new FormAttachment(100, 0);
wFirstmails.setLayoutData(fdFirstmails);
fdPOP3Settings = new FormData();
fdPOP3Settings.left = new FormAttachment(0, margin);
fdPOP3Settings.top = new FormAttachment(wlPOP3Message, 2 * margin);
fdPOP3Settings.right = new FormAttachment(100, -margin);
wPOP3Settings.setLayoutData(fdPOP3Settings);
// ///////////////////////////////////////////////////////////
// / END OF POP3 SETTINGS GROUP
// ///////////////////////////////////////////////////////////
// ////////////////////////
// START OF IMAP Settings GROUP///
// /
wIMAPSettings = new Group(wSettingsComp, SWT.SHADOW_NONE);
props.setLook(wIMAPSettings);
wIMAPSettings.setText(BaseMessages.getString(PKG, "MailInput.IMAPSettings.Groupp.Label"));
FormLayout IMAPSettingsgroupLayout = new FormLayout();
IMAPSettingsgroupLayout.marginWidth = 10;
IMAPSettingsgroupLayout.marginHeight = 10;
wIMAPSettings.setLayout(IMAPSettingsgroupLayout);
// Is folder name defined in a Field
wldynamicFolder = new Label(wIMAPSettings, SWT.RIGHT);
wldynamicFolder.setText(BaseMessages.getString(PKG, "MailInput.dynamicFolder.Label"));
props.setLook(wldynamicFolder);
fdldynamicFolder = new FormData();
fdldynamicFolder.left = new FormAttachment(0, 0);
fdldynamicFolder.top = new FormAttachment(0, margin);
fdldynamicFolder.right = new FormAttachment(middle, -margin);
wldynamicFolder.setLayoutData(fdldynamicFolder);
wdynamicFolder = new Button(wIMAPSettings, SWT.CHECK);
props.setLook(wdynamicFolder);
wdynamicFolder.setToolTipText(BaseMessages.getString(PKG, "MailInput.dynamicFolder.Tooltip"));
fddynamicFolder = new FormData();
fddynamicFolder.left = new FormAttachment(middle, 0);
fddynamicFolder.top = new FormAttachment(0, margin);
wdynamicFolder.setLayoutData(fddynamicFolder);
SelectionAdapter lsxmlstream = new SelectionAdapter() {
public void widgetSelected(SelectionEvent arg0) {
activedynamicFolder();
input.setChanged();
}
};
wdynamicFolder.addSelectionListener(lsxmlstream);
// Folder field
wlFolderField = new Label(wIMAPSettings, SWT.RIGHT);
wlFolderField.setText(BaseMessages.getString(PKG, "MailInput.wlFolderField.Label"));
props.setLook(wlFolderField);
fdlFolderField = new FormData();
fdlFolderField.left = new FormAttachment(0, 0);
fdlFolderField.top = new FormAttachment(wdynamicFolder, margin);
fdlFolderField.right = new FormAttachment(middle, -margin);
wlFolderField.setLayoutData(fdlFolderField);
wFolderField = new CCombo(wIMAPSettings, SWT.BORDER | SWT.READ_ONLY);
wFolderField.setEditable(true);
props.setLook(wFolderField);
wFolderField.addModifyListener(lsMod);
fdFolderField = new FormData();
fdFolderField.left = new FormAttachment(middle, 0);
fdFolderField.top = new FormAttachment(wdynamicFolder, margin);
fdFolderField.right = new FormAttachment(100, -margin);
wFolderField.setLayoutData(fdFolderField);
wFolderField.addFocusListener(new FocusListener() {
public void focusLost(org.eclipse.swt.events.FocusEvent e) {
}
public void focusGained(org.eclipse.swt.events.FocusEvent e) {
setFolderField();
}
});
// SelectFolder button
wSelectFolder = new Button(wIMAPSettings, SWT.PUSH);
wSelectFolder.setImage(GUIResource.getInstance().getImageBol());
wSelectFolder.setToolTipText(BaseMessages.getString(PKG, "MailInput.SelectFolderConnection.Label"));
props.setLook(wSelectFolder);
fdSelectFolder = new FormData();
wSelectFolder.setToolTipText(BaseMessages.getString(PKG, "MailInput.SelectFolderConnection.Tooltip"));
fdSelectFolder.top = new FormAttachment(wFolderField, margin);
fdSelectFolder.right = new FormAttachment(100, 0);
wSelectFolder.setLayoutData(fdSelectFolder);
// TestIMAPFolder button
wTestIMAPFolder = new Button(wIMAPSettings, SWT.PUSH);
wTestIMAPFolder.setText(BaseMessages.getString(PKG, "MailInput.TestIMAPFolderConnection.Label"));
props.setLook(wTestIMAPFolder);
fdTestIMAPFolder = new FormData();
wTestIMAPFolder.setToolTipText(BaseMessages.getString(PKG, "MailInput.TestIMAPFolderConnection.Tooltip"));
fdTestIMAPFolder.top = new FormAttachment(wFolderField, margin);
fdTestIMAPFolder.right = new FormAttachment(wSelectFolder, -margin);
wTestIMAPFolder.setLayoutData(fdTestIMAPFolder);
// IMAPFolder line
wlIMAPFolder = new Label(wIMAPSettings, SWT.RIGHT);
wlIMAPFolder.setText(BaseMessages.getString(PKG, "MailInput.IMAPFolder.Label"));
props.setLook(wlIMAPFolder);
fdlIMAPFolder = new FormData();
fdlIMAPFolder.left = new FormAttachment(0, 0);
fdlIMAPFolder.top = new FormAttachment(wFolderField, margin);
fdlIMAPFolder.right = new FormAttachment(middle, -margin);
wlIMAPFolder.setLayoutData(fdlIMAPFolder);
wIMAPFolder = new TextVar(transMeta, wIMAPSettings, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
props.setLook(wIMAPFolder);
wIMAPFolder.setToolTipText(BaseMessages.getString(PKG, "MailInput.IMAPFolder.Tooltip"));
wIMAPFolder.addModifyListener(lsMod);
fdIMAPFolder = new FormData();
fdIMAPFolder.left = new FormAttachment(middle, 0);
fdIMAPFolder.top = new FormAttachment(wFolderField, margin);
fdIMAPFolder.right = new FormAttachment(wTestIMAPFolder, -margin);
wIMAPFolder.setLayoutData(fdIMAPFolder);
// Include subfolders?
wlIncludeSubFolders = new Label(wIMAPSettings, SWT.RIGHT);
wlIncludeSubFolders.setText(BaseMessages.getString(PKG, "MailInput.IncludeSubFoldersMails.Label"));
props.setLook(wlIncludeSubFolders);
fdlIncludeSubFolders = new FormData();
fdlIncludeSubFolders.left = new FormAttachment(0, 0);
fdlIncludeSubFolders.top = new FormAttachment(wIMAPFolder, margin);
fdlIncludeSubFolders.right = new FormAttachment(middle, -margin);
wlIncludeSubFolders.setLayoutData(fdlIncludeSubFolders);
wIncludeSubFolders = new Button(wIMAPSettings, SWT.CHECK);
props.setLook(wIncludeSubFolders);
fdIncludeSubFolders = new FormData();
wIncludeSubFolders.setToolTipText(BaseMessages.getString(PKG, "MailInput.IncludeSubFoldersMails.Tooltip"));
fdIncludeSubFolders.left = new FormAttachment(middle, 0);
fdIncludeSubFolders.top = new FormAttachment(wIMAPFolder, margin);
fdIncludeSubFolders.right = new FormAttachment(100, 0);
wIncludeSubFolders.setLayoutData(fdIncludeSubFolders);
wIncludeSubFolders.addSelectionListener(lsSelection);
// List of mails of retrieve
wlIMAPListmails = new Label(wIMAPSettings, SWT.RIGHT);
wlIMAPListmails.setText(BaseMessages.getString(PKG, "MailInput.IMAPListmails.Label"));
props.setLook(wlIMAPListmails);
fdlIMAPListmails = new FormData();
fdlIMAPListmails.left = new FormAttachment(0, 0);
fdlIMAPListmails.right = new FormAttachment(middle, -margin);
fdlIMAPListmails.top = new FormAttachment(wIncludeSubFolders, margin);
wlIMAPListmails.setLayoutData(fdlIMAPListmails);
wIMAPListmails = new CCombo(wIMAPSettings, SWT.SINGLE | SWT.READ_ONLY | SWT.BORDER);
wIMAPListmails.setItems(MailConnectionMeta.valueIMAPListDesc);
// +1: starts at -1
wIMAPListmails.select(0);
props.setLook(wIMAPListmails);
fdIMAPListmails = new FormData();
fdIMAPListmails.left = new FormAttachment(middle, 0);
fdIMAPListmails.top = new FormAttachment(wIncludeSubFolders, margin);
fdIMAPListmails.right = new FormAttachment(100, 0);
wIMAPListmails.setLayoutData(fdIMAPListmails);
wIMAPListmails.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
// ChooseIMAPListmails();
}
});
// Retrieve the first ... mails
wlIMAPFirstmails = new Label(wIMAPSettings, SWT.RIGHT);
wlIMAPFirstmails.setText(BaseMessages.getString(PKG, "MailInput.IMAPFirstmails.Label"));
props.setLook(wlIMAPFirstmails);
fdlIMAPFirstmails = new FormData();
fdlIMAPFirstmails.left = new FormAttachment(0, 0);
fdlIMAPFirstmails.right = new FormAttachment(middle, -margin);
fdlIMAPFirstmails.top = new FormAttachment(wIMAPListmails, margin);
wlIMAPFirstmails.setLayoutData(fdlIMAPFirstmails);
wIMAPFirstmails = new TextVar(transMeta, wIMAPSettings, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
props.setLook(wIMAPFirstmails);
wIMAPFirstmails.addModifyListener(lsMod);
fdIMAPFirstmails = new FormData();
fdIMAPFirstmails.left = new FormAttachment(middle, 0);
fdIMAPFirstmails.top = new FormAttachment(wIMAPListmails, margin);
fdIMAPFirstmails.right = new FormAttachment(100, 0);
wIMAPFirstmails.setLayoutData(fdIMAPFirstmails);
fdIMAPSettings = new FormData();
fdIMAPSettings.left = new FormAttachment(0, margin);
fdIMAPSettings.top = new FormAttachment(wPOP3Settings, 2 * margin);
fdIMAPSettings.right = new FormAttachment(100, -margin);
wIMAPSettings.setLayoutData(fdIMAPSettings);
// ///////////////////////////////////////////////////////////
// / END OF IMAP SETTINGS GROUP
// ///////////////////////////////////////////////////////////
// ////////////////////////////////
// START OF Batch Settings GROUP///
//
wBatchSettingsGroup = createGroup(wSettingsComp, wIMAPSettings, BaseMessages.getString(PKG, "MailInputDialog.BatchSettingsGroup.Label"));
// Batch size
Label wlBatchSize = new Label(wBatchSettingsGroup, SWT.RIGHT);
wlBatchSize.setText(BaseMessages.getString(PKG, "MailInputDialog.BatchSize.Label"));
wBatchSize = new Text(wBatchSettingsGroup, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
addLabelInputPairBelow(wlBatchSize, wBatchSize, wBatchSettingsGroup);
// Starting message
Label wlStartMessage = new Label(wBatchSettingsGroup, SWT.RIGHT);
wlStartMessage.setText(BaseMessages.getString(PKG, "MailInputDialog.StartMessage.Label"));
wStartMessage = new TextVar(transMeta, wBatchSettingsGroup, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
addLabelInputPairBelow(wlStartMessage, wStartMessage, wBatchSize);
// Last message
Label wlEndMessage = new Label(wBatchSettingsGroup, SWT.RIGHT);
wlEndMessage.setText(BaseMessages.getString(PKG, "MailInputDialog.EndMessage.Label"));
wEndMessage = new TextVar(transMeta, wBatchSettingsGroup, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
addLabelInputPairBelow(wlEndMessage, wEndMessage, wStartMessage);
//
// / END OF Batch Settings GROUP
// ///////////////////////////////
fdSettingsComp = new FormData();
fdSettingsComp.left = new FormAttachment(0, 0);
fdSettingsComp.top = new FormAttachment(wStepname, 0);
fdSettingsComp.right = new FormAttachment(100, 0);
fdSettingsComp.bottom = new FormAttachment(100, 0);
wSettingsComp.setLayoutData(fdSettingsComp);
wSettingsComp.layout();
wSettingsTab.setControl(wSettingsComp);
props.setLook(wSettingsComp);
// ///////////////////////////////////////////////////////////
// / END OF Pop TAB
// ///////////////////////////////////////////////////////////
// ////////////////////////
// START OF SEARCH TAB ///
// ////////////////////////
wSearchTab = new CTabItem(wTabFolder, SWT.NONE);
wSearchTab.setText(BaseMessages.getString(PKG, "MailInput.Tab.Search.Label"));
wSearchComp = new Composite(wTabFolder, SWT.NONE);
props.setLook(wSearchComp);
FormLayout searchLayout = new FormLayout();
searchLayout.marginWidth = 3;
searchLayout.marginHeight = 3;
wSearchComp.setLayout(searchLayout);
// ////////////////////////
// START OF HEADER ROUP///
// /
wHeader = new Group(wSearchComp, SWT.SHADOW_NONE);
props.setLook(wHeader);
wHeader.setText(BaseMessages.getString(PKG, "MailInput.Header.Group.Label"));
FormLayout HeadergroupLayout = new FormLayout();
HeadergroupLayout.marginWidth = 10;
HeadergroupLayout.marginHeight = 10;
wHeader.setLayout(HeadergroupLayout);
wNegateSender = new Button(wHeader, SWT.CHECK);
props.setLook(wNegateSender);
fdNegateSender = new FormData();
wNegateSender.setToolTipText(BaseMessages.getString(PKG, "MailInput.NegateSender.Tooltip"));
fdNegateSender.top = new FormAttachment(0, margin);
fdNegateSender.right = new FormAttachment(100, -margin);
wNegateSender.setLayoutData(fdNegateSender);
// From line
wlSender = new Label(wHeader, SWT.RIGHT);
wlSender.setText(BaseMessages.getString(PKG, "MailInput.wSender.Label"));
props.setLook(wlSender);
fdlSender = new FormData();
fdlSender.left = new FormAttachment(0, 0);
fdlSender.top = new FormAttachment(0, margin);
fdlSender.right = new FormAttachment(middle, -margin);
wlSender.setLayoutData(fdlSender);
wSender = new TextVar(transMeta, wHeader, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
props.setLook(wSender);
wSender.addModifyListener(lsMod);
fdSender = new FormData();
fdSender.left = new FormAttachment(middle, 0);
fdSender.top = new FormAttachment(0, margin);
fdSender.right = new FormAttachment(wNegateSender, -margin);
wSender.setLayoutData(fdSender);
wNegateReceipient = new Button(wHeader, SWT.CHECK);
props.setLook(wNegateReceipient);
fdNegateReceipient = new FormData();
wNegateReceipient.setToolTipText(BaseMessages.getString(PKG, "MailInput.NegateReceipient.Tooltip"));
fdNegateReceipient.top = new FormAttachment(wSender, margin);
fdNegateReceipient.right = new FormAttachment(100, -margin);
wNegateReceipient.setLayoutData(fdNegateReceipient);
// Receipient line
wlReceipient = new Label(wHeader, SWT.RIGHT);
wlReceipient.setText(BaseMessages.getString(PKG, "MailInput.Receipient.Label"));
props.setLook(wlReceipient);
fdlReceipient = new FormData();
fdlReceipient.left = new FormAttachment(0, 0);
fdlReceipient.top = new FormAttachment(wSender, margin);
fdlReceipient.right = new FormAttachment(middle, -margin);
wlReceipient.setLayoutData(fdlReceipient);
wReceipient = new TextVar(transMeta, wHeader, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
props.setLook(wReceipient);
wReceipient.addModifyListener(lsMod);
fdReceipient = new FormData();
fdReceipient.left = new FormAttachment(middle, 0);
fdReceipient.top = new FormAttachment(wSender, margin);
fdReceipient.right = new FormAttachment(wNegateReceipient, -margin);
wReceipient.setLayoutData(fdReceipient);
wNegateSubject = new Button(wHeader, SWT.CHECK);
props.setLook(wNegateSubject);
fdNegateSubject = new FormData();
wNegateSubject.setToolTipText(BaseMessages.getString(PKG, "MailInput.NegateSubject.Tooltip"));
fdNegateSubject.top = new FormAttachment(wReceipient, margin);
fdNegateSubject.right = new FormAttachment(100, -margin);
wNegateSubject.setLayoutData(fdNegateSubject);
// Subject line
wlSubject = new Label(wHeader, SWT.RIGHT);
wlSubject.setText(BaseMessages.getString(PKG, "MailInput.Subject.Label"));
props.setLook(wlSubject);
fdlSubject = new FormData();
fdlSubject.left = new FormAttachment(0, 0);
fdlSubject.top = new FormAttachment(wReceipient, margin);
fdlSubject.right = new FormAttachment(middle, -margin);
wlSubject.setLayoutData(fdlSubject);
wSubject = new TextVar(transMeta, wHeader, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
props.setLook(wSubject);
wSubject.addModifyListener(lsMod);
fdSubject = new FormData();
fdSubject.left = new FormAttachment(middle, 0);
fdSubject.top = new FormAttachment(wReceipient, margin);
fdSubject.right = new FormAttachment(wNegateSubject, -margin);
wSubject.setLayoutData(fdSubject);
fdHeader = new FormData();
fdHeader.left = new FormAttachment(0, margin);
fdHeader.top = new FormAttachment(wReceipient, 2 * margin);
fdHeader.right = new FormAttachment(100, -margin);
wHeader.setLayoutData(fdHeader);
// ///////////////////////////////////////////////////////////
// / END OF HEADER GROUP
// ///////////////////////////////////////////////////////////
// ////////////////////////
// START OF RECEIVED DATE ROUP///
// /
wReceivedDate = new Group(wSearchComp, SWT.SHADOW_NONE);
props.setLook(wReceivedDate);
wReceivedDate.setText(BaseMessages.getString(PKG, "MailInput.ReceivedDate.Group.Label"));
FormLayout ReceivedDategroupLayout = new FormLayout();
ReceivedDategroupLayout.marginWidth = 10;
ReceivedDategroupLayout.marginHeight = 10;
wReceivedDate.setLayout(ReceivedDategroupLayout);
wNegateReceivedDate = new Button(wReceivedDate, SWT.CHECK);
props.setLook(wNegateReceivedDate);
fdNegateReceivedDate = new FormData();
wNegateReceivedDate.setToolTipText(BaseMessages.getString(PKG, "MailInput.NegateReceivedDate.Tooltip"));
fdNegateReceivedDate.top = new FormAttachment(wHeader, margin);
fdNegateReceivedDate.right = new FormAttachment(100, -margin);
wNegateReceivedDate.setLayoutData(fdNegateReceivedDate);
// Received Date Condition
wlConditionOnReceivedDate = new Label(wReceivedDate, SWT.RIGHT);
wlConditionOnReceivedDate.setText(BaseMessages.getString(PKG, "MailInput.ConditionOnReceivedDate.Label"));
props.setLook(wlConditionOnReceivedDate);
fdlConditionOnReceivedDate = new FormData();
fdlConditionOnReceivedDate.left = new FormAttachment(0, 0);
fdlConditionOnReceivedDate.right = new FormAttachment(middle, -margin);
fdlConditionOnReceivedDate.top = new FormAttachment(wHeader, margin);
wlConditionOnReceivedDate.setLayoutData(fdlConditionOnReceivedDate);
wConditionOnReceivedDate = new CCombo(wReceivedDate, SWT.SINGLE | SWT.READ_ONLY | SWT.BORDER);
wConditionOnReceivedDate.setItems(MailConnectionMeta.conditionDateDesc);
// +1: starts at -1
wConditionOnReceivedDate.select(0);
props.setLook(wConditionOnReceivedDate);
fdConditionOnReceivedDate = new FormData();
fdConditionOnReceivedDate.left = new FormAttachment(middle, 0);
fdConditionOnReceivedDate.top = new FormAttachment(wHeader, margin);
fdConditionOnReceivedDate.right = new FormAttachment(wNegateReceivedDate, -margin);
wConditionOnReceivedDate.setLayoutData(fdConditionOnReceivedDate);
wConditionOnReceivedDate.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
conditionReceivedDate();
input.setChanged();
}
});
open = new Button(wReceivedDate, SWT.PUSH);
open.setImage(GUIResource.getInstance().getImageCalendar());
open.setToolTipText(BaseMessages.getString(PKG, "MailInput.OpenCalendar"));
FormData fdlButton = new FormData();
fdlButton.top = new FormAttachment(wConditionOnReceivedDate, margin);
fdlButton.right = new FormAttachment(100, 0);
open.setLayoutData(fdlButton);
open.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
final Shell dialog = new Shell(shell, SWT.DIALOG_TRIM);
dialog.setText(BaseMessages.getString(PKG, "MailInput.SelectDate"));
dialog.setImage(GUIResource.getInstance().getImageSpoon());
dialog.setLayout(new GridLayout(3, false));
final DateTime calendar = new DateTime(dialog, SWT.CALENDAR);
final DateTime time = new DateTime(dialog, SWT.TIME | SWT.TIME);
new Label(dialog, SWT.NONE);
new Label(dialog, SWT.NONE);
Button ok = new Button(dialog, SWT.PUSH);
ok.setText(BaseMessages.getString(PKG, "System.Button.OK"));
ok.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false));
ok.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
Calendar cal = Calendar.getInstance();
cal.set(Calendar.YEAR, calendar.getYear());
cal.set(Calendar.MONTH, calendar.getMonth());
cal.set(Calendar.DAY_OF_MONTH, calendar.getDay());
cal.set(Calendar.HOUR_OF_DAY, time.getHours());
cal.set(Calendar.MINUTE, time.getMinutes());
cal.set(Calendar.SECOND, time.getSeconds());
wReadFrom.setText(new SimpleDateFormat(MailInputMeta.DATE_PATTERN).format(cal.getTime()));
dialog.close();
}
});
dialog.setDefaultButton(ok);
dialog.pack();
dialog.open();
}
});
wlReadFrom = new Label(wReceivedDate, SWT.RIGHT);
wlReadFrom.setText(BaseMessages.getString(PKG, "MailInput.ReadFrom.Label"));
props.setLook(wlReadFrom);
fdlReadFrom = new FormData();
fdlReadFrom.left = new FormAttachment(0, 0);
fdlReadFrom.top = new FormAttachment(wConditionOnReceivedDate, margin);
fdlReadFrom.right = new FormAttachment(middle, -margin);
wlReadFrom.setLayoutData(fdlReadFrom);
wReadFrom = new TextVar(transMeta, wReceivedDate, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
wReadFrom.setToolTipText(BaseMessages.getString(PKG, "MailInput.ReadFrom.Tooltip"));
props.setLook(wReadFrom);
wReadFrom.addModifyListener(lsMod);
fdReadFrom = new FormData();
fdReadFrom.left = new FormAttachment(middle, 0);
fdReadFrom.top = new FormAttachment(wConditionOnReceivedDate, margin);
fdReadFrom.right = new FormAttachment(open, -margin);
wReadFrom.setLayoutData(fdReadFrom);
opento = new Button(wReceivedDate, SWT.PUSH);
opento.setImage(GUIResource.getInstance().getImageCalendar());
opento.setToolTipText(BaseMessages.getString(PKG, "MailInput.OpenCalendar"));
FormData fdlButtonto = new FormData();
fdlButtonto.top = new FormAttachment(wReadFrom, 2 * margin);
fdlButtonto.right = new FormAttachment(100, 0);
opento.setLayoutData(fdlButtonto);
opento.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
final Shell dialogto = new Shell(shell, SWT.DIALOG_TRIM);
dialogto.setText(BaseMessages.getString(PKG, "MailInput.SelectDate"));
dialogto.setImage(GUIResource.getInstance().getImageSpoon());
dialogto.setLayout(new GridLayout(3, false));
final DateTime calendarto = new DateTime(dialogto, SWT.CALENDAR | SWT.BORDER);
final DateTime timeto = new DateTime(dialogto, SWT.TIME | SWT.TIME);
new Label(dialogto, SWT.NONE);
new Label(dialogto, SWT.NONE);
Button okto = new Button(dialogto, SWT.PUSH);
okto.setText(BaseMessages.getString(PKG, "System.Button.OK"));
okto.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false));
okto.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
Calendar cal = Calendar.getInstance();
cal.set(Calendar.YEAR, calendarto.getYear());
cal.set(Calendar.MONTH, calendarto.getMonth());
cal.set(Calendar.DAY_OF_MONTH, calendarto.getDay());
cal.set(Calendar.HOUR_OF_DAY, timeto.getHours());
cal.set(Calendar.MINUTE, timeto.getMinutes());
cal.set(Calendar.SECOND, timeto.getSeconds());
wReadTo.setText(new SimpleDateFormat(MailInputMeta.DATE_PATTERN).format(cal.getTime()));
dialogto.close();
}
});
dialogto.setDefaultButton(okto);
dialogto.pack();
dialogto.open();
}
});
wlReadTo = new Label(wReceivedDate, SWT.RIGHT);
wlReadTo.setText(BaseMessages.getString(PKG, "MailInput.ReadTo.Label"));
props.setLook(wlReadTo);
fdlReadTo = new FormData();
fdlReadTo.left = new FormAttachment(0, 0);
fdlReadTo.top = new FormAttachment(wReadFrom, 2 * margin);
fdlReadTo.right = new FormAttachment(middle, -margin);
wlReadTo.setLayoutData(fdlReadTo);
wReadTo = new TextVar(transMeta, wReceivedDate, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
wReadTo.setToolTipText(BaseMessages.getString(PKG, "MailInput.ReadTo.Tooltip"));
props.setLook(wReadTo);
wReadTo.addModifyListener(lsMod);
fdReadTo = new FormData();
fdReadTo.left = new FormAttachment(middle, 0);
fdReadTo.top = new FormAttachment(wReadFrom, 2 * margin);
fdReadTo.right = new FormAttachment(opento, -margin);
wReadTo.setLayoutData(fdReadTo);
fdReceivedDate = new FormData();
fdReceivedDate.left = new FormAttachment(0, margin);
fdReceivedDate.top = new FormAttachment(wHeader, margin);
fdReceivedDate.right = new FormAttachment(100, -margin);
wReceivedDate.setLayoutData(fdReceivedDate);
// ///////////////////////////////////////////////////////////
// / END OF RECEIVED DATE GROUP
// ///////////////////////////////////////////////////////////
wlLimit = new Label(wSearchComp, SWT.RIGHT);
wlLimit.setText(BaseMessages.getString(PKG, "MailInput.Limit.Label"));
props.setLook(wlLimit);
fdlLimit = new FormData();
fdlLimit.left = new FormAttachment(0, 0);
fdlLimit.top = new FormAttachment(wReceivedDate, 2 * margin);
fdlLimit.right = new FormAttachment(middle, -margin);
wlLimit.setLayoutData(fdlLimit);
wLimit = new Text(wSearchComp, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
props.setLook(wLimit);
wLimit.addModifyListener(lsMod);
fdLimit = new FormData();
fdLimit.left = new FormAttachment(middle, 0);
fdLimit.top = new FormAttachment(wReceivedDate, 2 * margin);
fdLimit.right = new FormAttachment(100, 0);
wLimit.setLayoutData(fdLimit);
fdSearchComp = new FormData();
fdSearchComp.left = new FormAttachment(0, 0);
fdSearchComp.top = new FormAttachment(wStepname, 0);
fdSearchComp.right = new FormAttachment(100, 0);
fdSearchComp.bottom = new FormAttachment(100, 0);
wSearchComp.setLayoutData(fdSearchComp);
wSearchComp.layout();
wSearchTab.setControl(wSearchComp);
props.setLook(wSearchComp);
// ////////////////////////////////
// / END OF SEARCH TAB
// ////////////////////////////////
// Fields tab...
//
wFieldsTab = new CTabItem(wTabFolder, SWT.NONE);
wFieldsTab.setText(BaseMessages.getString(PKG, "MailInputdialog.Fields.Tab"));
FormLayout fieldsLayout = new FormLayout();
fieldsLayout.marginWidth = Const.FORM_MARGIN;
fieldsLayout.marginHeight = Const.FORM_MARGIN;
wFieldsComp = new Composite(wTabFolder, SWT.NONE);
wFieldsComp.setLayout(fieldsLayout);
props.setLook(wFieldsComp);
wGet = new Button(wFieldsComp, SWT.PUSH);
wGet.setText(BaseMessages.getString(PKG, "MailInputdialog.GetFields.Button"));
fdGet = new FormData();
fdGet.left = new FormAttachment(50, 0);
fdGet.bottom = new FormAttachment(100, 0);
wGet.setLayoutData(fdGet);
final int FieldsRows = input.getInputFields().length;
ColumnInfo[] colinf = new ColumnInfo[] { new ColumnInfo(BaseMessages.getString(PKG, "MailInputdialog.FieldsTable.Name.Column"), ColumnInfo.COLUMN_TYPE_TEXT, false), new ColumnInfo(BaseMessages.getString(PKG, "MailInputdialog.FieldsTable.Column.Column"), ColumnInfo.COLUMN_TYPE_CCOMBO, MailInputField.ColumnDesc, true) };
colinf[0].setUsingVariables(true);
colinf[0].setToolTip(BaseMessages.getString(PKG, "MailInputdialog.FieldsTable.Name.Column.Tooltip"));
colinf[1].setToolTip(BaseMessages.getString(PKG, "MailInputdialog.FieldsTable.Column.Column.Tooltip"));
wFields = new TableView(transMeta, wFieldsComp, SWT.FULL_SELECTION | SWT.MULTI, colinf, FieldsRows, lsMod, props);
fdFields = new FormData();
fdFields.left = new FormAttachment(0, 0);
fdFields.top = new FormAttachment(0, 0);
fdFields.right = new FormAttachment(100, 0);
fdFields.bottom = new FormAttachment(wGet, -margin);
wFields.setLayoutData(fdFields);
fdFieldsComp = new FormData();
fdFieldsComp.left = new FormAttachment(0, 0);
fdFieldsComp.top = new FormAttachment(0, 0);
fdFieldsComp.right = new FormAttachment(100, 0);
fdFieldsComp.bottom = new FormAttachment(100, 0);
wFieldsComp.setLayoutData(fdFieldsComp);
wFieldsComp.layout();
wFieldsTab.setControl(wFieldsComp);
fdTabFolder = new FormData();
fdTabFolder.left = new FormAttachment(0, 0);
fdTabFolder.top = new FormAttachment(wStepname, margin);
fdTabFolder.right = new FormAttachment(100, 0);
fdTabFolder.bottom = new FormAttachment(100, -50);
wTabFolder.setLayoutData(fdTabFolder);
wOK = new Button(shell, SWT.PUSH);
wOK.setText(BaseMessages.getString(PKG, "System.Button.OK"));
wCancel = new Button(shell, SWT.PUSH);
wPreview = new Button(shell, SWT.PUSH);
wPreview.setText(BaseMessages.getString(PKG, "MailInputDialog.Preview"));
wCancel.setText(BaseMessages.getString(PKG, "System.Button.Cancel"));
BaseStepDialog.positionBottomButtons(shell, new Button[] { wOK, wPreview, wCancel }, margin, wTabFolder);
lsGet = new Listener() {
public void handleEvent(Event e) {
getFields();
}
};
// Add listeners
lsCancel = new Listener() {
public void handleEvent(Event e) {
cancel();
}
};
lsOK = new Listener() {
public void handleEvent(Event e) {
ok();
}
};
lsPreview = new Listener() {
public void handleEvent(Event e) {
preview();
}
};
wCancel.addListener(SWT.Selection, lsCancel);
wOK.addListener(SWT.Selection, lsOK);
lsDef = new SelectionAdapter() {
public void widgetDefaultSelected(SelectionEvent e) {
ok();
}
};
lsTest = new Listener() {
public void handleEvent(Event e) {
test();
}
};
wTest.addListener(SWT.Selection, lsTest);
wPreview.addListener(SWT.Selection, lsPreview);
wGet.addListener(SWT.Selection, lsGet);
lsTestIMAPFolder = new Listener() {
public void handleEvent(Event e) {
checkFolder(transMeta.environmentSubstitute(wIMAPFolder.getText()));
}
};
wTestIMAPFolder.addListener(SWT.Selection, lsTestIMAPFolder);
lsSelectFolder = new Listener() {
public void handleEvent(Event e) {
selectFolder(wIMAPFolder);
}
};
wSelectFolder.addListener(SWT.Selection, lsSelectFolder);
wStepname.addSelectionListener(lsDef);
wServerName.addSelectionListener(lsDef);
// Detect X or ALT-F4 or something that kills this window...
shell.addShellListener(new ShellAdapter() {
public void shellClosed(ShellEvent e) {
cancel();
}
});
getData();
setUserProxy();
chooseListMails();
refreshProtocol(false);
conditionReceivedDate();
wTabFolder.setSelection(0);
BaseStepDialog.setSize(shell);
shell.open();
shell.open();
while (!shell.isDisposed()) {
if (!display.readAndDispatch()) {
display.sleep();
}
}
return stepname;
}
use of org.pentaho.di.ui.core.widget.PasswordTextVar in project pentaho-kettle by pentaho.
the class ExcelOutputDialog method open.
@Override
public String open() {
Shell parent = getParent();
Display display = parent.getDisplay();
shell = new Shell(parent, SWT.DIALOG_TRIM | SWT.RESIZE | SWT.MAX | SWT.MIN);
props.setLook(shell);
setShellImage(shell, input);
ModifyListener lsMod = new ModifyListener() {
@Override
public void modifyText(ModifyEvent e) {
input.setChanged();
}
};
changed = input.hasChanged();
FormLayout formLayout = new FormLayout();
formLayout.marginWidth = Const.FORM_MARGIN;
formLayout.marginHeight = Const.FORM_MARGIN;
shell.setLayout(formLayout);
shell.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.DialogTitle"));
int middle = props.getMiddlePct();
int margin = Const.MARGIN;
// Stepname line
wlStepname = new Label(shell, SWT.RIGHT);
wlStepname.setText(BaseMessages.getString(PKG, "System.Label.StepName"));
props.setLook(wlStepname);
fdlStepname = new FormData();
fdlStepname.left = new FormAttachment(0, 0);
fdlStepname.top = new FormAttachment(0, margin);
fdlStepname.right = new FormAttachment(middle, -margin);
wlStepname.setLayoutData(fdlStepname);
wStepname = new Text(shell, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
wStepname.setText(stepname);
props.setLook(wStepname);
wStepname.addModifyListener(lsMod);
fdStepname = new FormData();
fdStepname.left = new FormAttachment(middle, 0);
fdStepname.top = new FormAttachment(0, margin);
fdStepname.right = new FormAttachment(100, 0);
wStepname.setLayoutData(fdStepname);
wTabFolder = new CTabFolder(shell, SWT.BORDER);
props.setLook(wTabFolder, Props.WIDGET_STYLE_TAB);
// ////////////////////////
// START OF FILE TAB///
// /
wFileTab = new CTabItem(wTabFolder, SWT.NONE);
wFileTab.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.FileTab.TabTitle"));
Composite wFileComp = new Composite(wTabFolder, SWT.NONE);
props.setLook(wFileComp);
FormLayout fileLayout = new FormLayout();
fileLayout.marginWidth = 3;
fileLayout.marginHeight = 3;
wFileComp.setLayout(fileLayout);
// Filename line
wlFilename = new Label(wFileComp, SWT.RIGHT);
wlFilename.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.Filename.Label"));
props.setLook(wlFilename);
fdlFilename = new FormData();
fdlFilename.left = new FormAttachment(0, 0);
fdlFilename.top = new FormAttachment(0, margin);
fdlFilename.right = new FormAttachment(middle, -margin);
wlFilename.setLayoutData(fdlFilename);
wbFilename = new Button(wFileComp, SWT.PUSH | SWT.CENTER);
props.setLook(wbFilename);
wbFilename.setText(BaseMessages.getString(PKG, "System.Button.Browse"));
fdbFilename = new FormData();
fdbFilename.right = new FormAttachment(100, 0);
fdbFilename.top = new FormAttachment(0, 0);
wbFilename.setLayoutData(fdbFilename);
wFilename = new TextVar(transMeta, wFileComp, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
props.setLook(wFilename);
wFilename.addModifyListener(lsMod);
fdFilename = new FormData();
fdFilename.left = new FormAttachment(middle, 0);
fdFilename.top = new FormAttachment(0, margin);
fdFilename.right = new FormAttachment(wbFilename, -margin);
wFilename.setLayoutData(fdFilename);
// Create Parent Folder
wlCreateParentFolder = new Label(wFileComp, SWT.RIGHT);
wlCreateParentFolder.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.CreateParentFolder.Label"));
props.setLook(wlCreateParentFolder);
fdlCreateParentFolder = new FormData();
fdlCreateParentFolder.left = new FormAttachment(0, 0);
fdlCreateParentFolder.top = new FormAttachment(wFilename, margin);
fdlCreateParentFolder.right = new FormAttachment(middle, -margin);
wlCreateParentFolder.setLayoutData(fdlCreateParentFolder);
wCreateParentFolder = new Button(wFileComp, SWT.CHECK);
wCreateParentFolder.setToolTipText(BaseMessages.getString(PKG, "ExcelOutputDialog.CreateParentFolder.Tooltip"));
props.setLook(wCreateParentFolder);
fdCreateParentFolder = new FormData();
fdCreateParentFolder.left = new FormAttachment(middle, 0);
fdCreateParentFolder.top = new FormAttachment(wFilename, margin);
fdCreateParentFolder.right = new FormAttachment(100, 0);
wCreateParentFolder.setLayoutData(fdCreateParentFolder);
wCreateParentFolder.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
input.setChanged();
}
});
// Open new File at Init
wlDoNotOpenNewFileInit = new Label(wFileComp, SWT.RIGHT);
wlDoNotOpenNewFileInit.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.DoNotOpenNewFileInit.Label"));
props.setLook(wlDoNotOpenNewFileInit);
fdlDoNotOpenNewFileInit = new FormData();
fdlDoNotOpenNewFileInit.left = new FormAttachment(0, 0);
fdlDoNotOpenNewFileInit.top = new FormAttachment(wCreateParentFolder, margin);
fdlDoNotOpenNewFileInit.right = new FormAttachment(middle, -margin);
wlDoNotOpenNewFileInit.setLayoutData(fdlDoNotOpenNewFileInit);
wDoNotOpenNewFileInit = new Button(wFileComp, SWT.CHECK);
wDoNotOpenNewFileInit.setToolTipText(BaseMessages.getString(PKG, "ExcelOutputDialog.DoNotOpenNewFileInit.Tooltip"));
props.setLook(wDoNotOpenNewFileInit);
fdDoNotOpenNewFileInit = new FormData();
fdDoNotOpenNewFileInit.left = new FormAttachment(middle, 0);
fdDoNotOpenNewFileInit.top = new FormAttachment(wCreateParentFolder, margin);
fdDoNotOpenNewFileInit.right = new FormAttachment(100, 0);
wDoNotOpenNewFileInit.setLayoutData(fdDoNotOpenNewFileInit);
wDoNotOpenNewFileInit.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
input.setChanged();
}
});
// Extension line
wlExtension = new Label(wFileComp, SWT.RIGHT);
wlExtension.setText(BaseMessages.getString(PKG, "System.Label.Extension"));
props.setLook(wlExtension);
fdlExtension = new FormData();
fdlExtension.left = new FormAttachment(0, 0);
fdlExtension.top = new FormAttachment(wDoNotOpenNewFileInit, margin);
fdlExtension.right = new FormAttachment(middle, -margin);
wlExtension.setLayoutData(fdlExtension);
wExtension = new TextVar(transMeta, wFileComp, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
wExtension.setText("");
props.setLook(wExtension);
wExtension.addModifyListener(lsMod);
fdExtension = new FormData();
fdExtension.left = new FormAttachment(middle, 0);
fdExtension.top = new FormAttachment(wDoNotOpenNewFileInit, margin);
fdExtension.right = new FormAttachment(wbFilename, -margin);
wExtension.setLayoutData(fdExtension);
// Create multi-part file?
wlAddStepnr = new Label(wFileComp, SWT.RIGHT);
wlAddStepnr.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.AddStepnr.Label"));
props.setLook(wlAddStepnr);
fdlAddStepnr = new FormData();
fdlAddStepnr.left = new FormAttachment(0, 0);
fdlAddStepnr.top = new FormAttachment(wExtension, margin);
fdlAddStepnr.right = new FormAttachment(middle, -margin);
wlAddStepnr.setLayoutData(fdlAddStepnr);
wAddStepnr = new Button(wFileComp, SWT.CHECK);
props.setLook(wAddStepnr);
fdAddStepnr = new FormData();
fdAddStepnr.left = new FormAttachment(middle, 0);
fdAddStepnr.top = new FormAttachment(wExtension, margin);
fdAddStepnr.right = new FormAttachment(100, 0);
wAddStepnr.setLayoutData(fdAddStepnr);
wAddStepnr.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
input.setChanged();
}
});
// Create multi-part file?
wlAddDate = new Label(wFileComp, SWT.RIGHT);
wlAddDate.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.AddDate.Label"));
props.setLook(wlAddDate);
fdlAddDate = new FormData();
fdlAddDate.left = new FormAttachment(0, 0);
fdlAddDate.top = new FormAttachment(wAddStepnr, margin);
fdlAddDate.right = new FormAttachment(middle, -margin);
wlAddDate.setLayoutData(fdlAddDate);
wAddDate = new Button(wFileComp, SWT.CHECK);
props.setLook(wAddDate);
fdAddDate = new FormData();
fdAddDate.left = new FormAttachment(middle, 0);
fdAddDate.top = new FormAttachment(wAddStepnr, margin);
fdAddDate.right = new FormAttachment(100, 0);
wAddDate.setLayoutData(fdAddDate);
wAddDate.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
input.setChanged();
// System.out.println("wAddDate.getSelection()="+wAddDate.getSelection());
}
});
// Create multi-part file?
wlAddTime = new Label(wFileComp, SWT.RIGHT);
wlAddTime.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.AddTime.Label"));
props.setLook(wlAddTime);
fdlAddTime = new FormData();
fdlAddTime.left = new FormAttachment(0, 0);
fdlAddTime.top = new FormAttachment(wAddDate, margin);
fdlAddTime.right = new FormAttachment(middle, -margin);
wlAddTime.setLayoutData(fdlAddTime);
wAddTime = new Button(wFileComp, SWT.CHECK);
props.setLook(wAddTime);
fdAddTime = new FormData();
fdAddTime.left = new FormAttachment(middle, 0);
fdAddTime.top = new FormAttachment(wAddDate, margin);
fdAddTime.right = new FormAttachment(100, 0);
wAddTime.setLayoutData(fdAddTime);
wAddTime.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
input.setChanged();
}
});
// Specify date time format?
wlSpecifyFormat = new Label(wFileComp, SWT.RIGHT);
wlSpecifyFormat.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.SpecifyFormat.Label"));
props.setLook(wlSpecifyFormat);
fdlSpecifyFormat = new FormData();
fdlSpecifyFormat.left = new FormAttachment(0, 0);
fdlSpecifyFormat.top = new FormAttachment(wAddTime, margin);
fdlSpecifyFormat.right = new FormAttachment(middle, -margin);
wlSpecifyFormat.setLayoutData(fdlSpecifyFormat);
wSpecifyFormat = new Button(wFileComp, SWT.CHECK);
props.setLook(wSpecifyFormat);
wSpecifyFormat.setToolTipText(BaseMessages.getString(PKG, "ExcelOutputDialog.SpecifyFormat.Tooltip"));
fdSpecifyFormat = new FormData();
fdSpecifyFormat.left = new FormAttachment(middle, 0);
fdSpecifyFormat.top = new FormAttachment(wAddTime, margin);
fdSpecifyFormat.right = new FormAttachment(100, 0);
wSpecifyFormat.setLayoutData(fdSpecifyFormat);
wSpecifyFormat.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
input.setChanged();
setDateTimeFormat();
}
});
// Prepare a list of possible DateTimeFormats...
String[] dats = Const.getDateFormats();
// DateTimeFormat
wlDateTimeFormat = new Label(wFileComp, SWT.RIGHT);
wlDateTimeFormat.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.DateTimeFormat.Label"));
props.setLook(wlDateTimeFormat);
fdlDateTimeFormat = new FormData();
fdlDateTimeFormat.left = new FormAttachment(0, 0);
fdlDateTimeFormat.top = new FormAttachment(wSpecifyFormat, margin);
fdlDateTimeFormat.right = new FormAttachment(middle, -margin);
wlDateTimeFormat.setLayoutData(fdlDateTimeFormat);
wDateTimeFormat = new CCombo(wFileComp, SWT.BORDER | SWT.READ_ONLY);
wDateTimeFormat.setEditable(true);
props.setLook(wDateTimeFormat);
wDateTimeFormat.addModifyListener(lsMod);
fdDateTimeFormat = new FormData();
fdDateTimeFormat.left = new FormAttachment(middle, 0);
fdDateTimeFormat.top = new FormAttachment(wSpecifyFormat, margin);
fdDateTimeFormat.right = new FormAttachment(100, 0);
wDateTimeFormat.setLayoutData(fdDateTimeFormat);
for (int x = 0; x < dats.length; x++) {
wDateTimeFormat.add(dats[x]);
}
wbShowFiles = new Button(wFileComp, SWT.PUSH | SWT.CENTER);
props.setLook(wbShowFiles);
wbShowFiles.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.ShowFiles.Button"));
fdbShowFiles = new FormData();
fdbShowFiles.left = new FormAttachment(middle, 0);
fdbShowFiles.top = new FormAttachment(wDateTimeFormat, margin * 3);
wbShowFiles.setLayoutData(fdbShowFiles);
wbShowFiles.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
ExcelOutputMeta tfoi = new ExcelOutputMeta();
getInfo(tfoi);
String[] files = tfoi.getFiles(transMeta);
if (files != null && files.length > 0) {
EnterSelectionDialog esd = new EnterSelectionDialog(shell, files, BaseMessages.getString(PKG, "ExcelOutputDialog.SelectOutputFiles.DialogTitle"), BaseMessages.getString(PKG, "ExcelOutputDialog.SelectOutputFiles.DialogMessage"));
esd.setViewOnly();
esd.open();
} else {
MessageBox mb = new MessageBox(shell, SWT.OK | SWT.ICON_ERROR);
mb.setMessage(BaseMessages.getString(PKG, "ExcelOutputDialog.NoFilesFound.DialogMessage"));
mb.setText(BaseMessages.getString(PKG, "System.Dialog.Error.Title"));
mb.open();
}
}
});
// Add File to the result files name
wlAddToResult = new Label(wFileComp, SWT.RIGHT);
wlAddToResult.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.AddFileToResult.Label"));
props.setLook(wlAddToResult);
fdlAddToResult = new FormData();
fdlAddToResult.left = new FormAttachment(0, 0);
fdlAddToResult.top = new FormAttachment(wbShowFiles, 2 * margin);
fdlAddToResult.right = new FormAttachment(middle, -margin);
wlAddToResult.setLayoutData(fdlAddToResult);
wAddToResult = new Button(wFileComp, SWT.CHECK);
wAddToResult.setToolTipText(BaseMessages.getString(PKG, "ExcelOutputDialog.AddFileToResult.Tooltip"));
props.setLook(wAddToResult);
fdAddToResult = new FormData();
fdAddToResult.left = new FormAttachment(middle, 0);
fdAddToResult.top = new FormAttachment(wbShowFiles, 2 * margin);
fdAddToResult.right = new FormAttachment(100, 0);
wAddToResult.setLayoutData(fdAddToResult);
SelectionAdapter lsSelR = new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent arg0) {
input.setChanged();
}
};
wAddToResult.addSelectionListener(lsSelR);
fdFileComp = new FormData();
fdFileComp.left = new FormAttachment(0, 0);
fdFileComp.top = new FormAttachment(0, 0);
fdFileComp.right = new FormAttachment(100, 0);
fdFileComp.bottom = new FormAttachment(100, 0);
wFileComp.setLayoutData(fdFileComp);
wFileComp.layout();
wFileTab.setControl(wFileComp);
// ///////////////////////////////////////////////////////////
// / END OF FILE TAB
// ///////////////////////////////////////////////////////////
// ////////////////////////
// START OF CONTENT TAB///
// /
wContentTab = new CTabItem(wTabFolder, SWT.NONE);
wContentTab.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.ContentTab.TabTitle"));
FormLayout contentLayout = new FormLayout();
contentLayout.marginWidth = 3;
contentLayout.marginHeight = 3;
Composite wContentComp = new Composite(wTabFolder, SWT.NONE);
props.setLook(wContentComp);
wContentComp.setLayout(contentLayout);
// Append checkbox
wlAppend = new Label(wContentComp, SWT.RIGHT);
wlAppend.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.Append.Label"));
props.setLook(wlAppend);
fdlAppend = new FormData();
fdlAppend.left = new FormAttachment(0, 0);
fdlAppend.top = new FormAttachment(0, 0);
fdlAppend.right = new FormAttachment(middle, -margin);
wlAppend.setLayoutData(fdlAppend);
wAppend = new Button(wContentComp, SWT.CHECK);
props.setLook(wAppend);
wAppend.setToolTipText(BaseMessages.getString(PKG, "ExcelOutputDialog.Append.Tooltip"));
fdAppend = new FormData();
fdAppend.left = new FormAttachment(middle, 0);
fdAppend.top = new FormAttachment(0, 0);
fdAppend.right = new FormAttachment(100, 0);
wAppend.setLayoutData(fdAppend);
wAppend.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent arg0) {
input.setChanged();
}
});
wlHeader = new Label(wContentComp, SWT.RIGHT);
wlHeader.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.Header.Label"));
props.setLook(wlHeader);
fdlHeader = new FormData();
fdlHeader.left = new FormAttachment(0, 0);
fdlHeader.top = new FormAttachment(wAppend, margin);
fdlHeader.right = new FormAttachment(middle, -margin);
wlHeader.setLayoutData(fdlHeader);
wHeader = new Button(wContentComp, SWT.CHECK);
props.setLook(wHeader);
fdHeader = new FormData();
fdHeader.left = new FormAttachment(middle, 0);
fdHeader.top = new FormAttachment(wAppend, margin);
fdHeader.right = new FormAttachment(100, 0);
wHeader.setLayoutData(fdHeader);
wHeader.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
input.setChanged();
}
});
wlFooter = new Label(wContentComp, SWT.RIGHT);
wlFooter.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.Footer.Label"));
props.setLook(wlFooter);
fdlFooter = new FormData();
fdlFooter.left = new FormAttachment(0, 0);
fdlFooter.top = new FormAttachment(wHeader, margin);
fdlFooter.right = new FormAttachment(middle, -margin);
wlFooter.setLayoutData(fdlFooter);
wFooter = new Button(wContentComp, SWT.CHECK);
props.setLook(wFooter);
fdFooter = new FormData();
fdFooter.left = new FormAttachment(middle, 0);
fdFooter.top = new FormAttachment(wHeader, margin);
fdFooter.right = new FormAttachment(100, 0);
wFooter.setLayoutData(fdFooter);
wFooter.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
input.setChanged();
}
});
wlEncoding = new Label(wContentComp, SWT.RIGHT);
wlEncoding.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.Encoding.Label"));
props.setLook(wlEncoding);
fdlEncoding = new FormData();
fdlEncoding.left = new FormAttachment(0, 0);
fdlEncoding.top = new FormAttachment(wFooter, margin);
fdlEncoding.right = new FormAttachment(middle, -margin);
wlEncoding.setLayoutData(fdlEncoding);
wEncoding = new CCombo(wContentComp, SWT.BORDER | SWT.READ_ONLY);
wEncoding.setEditable(true);
props.setLook(wEncoding);
wEncoding.addModifyListener(lsMod);
fdEncoding = new FormData();
fdEncoding.left = new FormAttachment(middle, 0);
fdEncoding.top = new FormAttachment(wFooter, margin);
fdEncoding.right = new FormAttachment(100, 0);
wEncoding.setLayoutData(fdEncoding);
wEncoding.addFocusListener(new FocusListener() {
@Override
public void focusLost(org.eclipse.swt.events.FocusEvent e) {
}
@Override
public void focusGained(org.eclipse.swt.events.FocusEvent e) {
Cursor busy = new Cursor(shell.getDisplay(), SWT.CURSOR_WAIT);
shell.setCursor(busy);
setEncodings();
shell.setCursor(null);
busy.dispose();
}
});
wlSplitEvery = new Label(wContentComp, SWT.RIGHT);
wlSplitEvery.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.SplitEvery.Label"));
props.setLook(wlSplitEvery);
fdlSplitEvery = new FormData();
fdlSplitEvery.left = new FormAttachment(0, 0);
fdlSplitEvery.top = new FormAttachment(wEncoding, margin);
fdlSplitEvery.right = new FormAttachment(middle, -margin);
wlSplitEvery.setLayoutData(fdlSplitEvery);
wSplitEvery = new Text(wContentComp, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
props.setLook(wSplitEvery);
wSplitEvery.addModifyListener(lsMod);
fdSplitEvery = new FormData();
fdSplitEvery.left = new FormAttachment(middle, 0);
fdSplitEvery.top = new FormAttachment(wEncoding, margin);
fdSplitEvery.right = new FormAttachment(100, 0);
wSplitEvery.setLayoutData(fdSplitEvery);
// Sheet name line
wlSheetname = new Label(wContentComp, SWT.RIGHT);
wlSheetname.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.Sheetname.Label"));
props.setLook(wlSheetname);
fdlSheetname = new FormData();
fdlSheetname.left = new FormAttachment(0, 0);
fdlSheetname.top = new FormAttachment(wSplitEvery, margin);
fdlSheetname.right = new FormAttachment(middle, -margin);
wlSheetname.setLayoutData(fdlSheetname);
wSheetname = new TextVar(transMeta, wContentComp, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
wSheetname.setToolTipText(BaseMessages.getString(PKG, "ExcelOutputDialog.Sheetname.Tooltip"));
props.setLook(wSheetname);
wSheetname.addModifyListener(lsMod);
fdSheetname = new FormData();
fdSheetname.left = new FormAttachment(middle, 0);
fdSheetname.top = new FormAttachment(wSplitEvery, margin);
fdSheetname.right = new FormAttachment(100, 0);
wSheetname.setLayoutData(fdSheetname);
// Protect Sheet?
wlProtectSheet = new Label(wContentComp, SWT.RIGHT);
wlProtectSheet.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.ProtectSheet.Label"));
props.setLook(wlProtectSheet);
fdlProtectSheet = new FormData();
fdlProtectSheet.left = new FormAttachment(0, 0);
fdlProtectSheet.top = new FormAttachment(wSheetname, margin);
fdlProtectSheet.right = new FormAttachment(middle, -margin);
wlProtectSheet.setLayoutData(fdlProtectSheet);
wProtectSheet = new Button(wContentComp, SWT.CHECK);
props.setLook(wProtectSheet);
fdProtectSheet = new FormData();
fdProtectSheet.left = new FormAttachment(middle, 0);
fdProtectSheet.top = new FormAttachment(wSheetname, margin);
fdProtectSheet.right = new FormAttachment(100, 0);
wProtectSheet.setLayoutData(fdProtectSheet);
wProtectSheet.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
EnablePassword();
}
});
// Password line
wlPassword = new Label(wContentComp, SWT.RIGHT);
wlPassword.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.Password.Label"));
props.setLook(wlPassword);
fdlPassword = new FormData();
fdlPassword.left = new FormAttachment(0, 0);
fdlPassword.top = new FormAttachment(wProtectSheet, margin);
fdlPassword.right = new FormAttachment(middle, -margin);
wlPassword.setLayoutData(fdlPassword);
wPassword = new PasswordTextVar(transMeta, wContentComp, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
wPassword.setToolTipText(BaseMessages.getString(PKG, "ExcelOutputDialog.Password.Tooltip"));
props.setLook(wPassword);
wPassword.addModifyListener(lsMod);
fdPassword = new FormData();
fdPassword.left = new FormAttachment(middle, 0);
fdPassword.top = new FormAttachment(wProtectSheet, margin);
fdPassword.right = new FormAttachment(100, 0);
wPassword.setLayoutData(fdPassword);
// auto size columns?
wlAutoSize = new Label(wContentComp, SWT.RIGHT);
wlAutoSize.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.AutoSize.Label"));
props.setLook(wlAutoSize);
fdlAutoSize = new FormData();
fdlAutoSize.left = new FormAttachment(0, 0);
fdlAutoSize.top = new FormAttachment(wPassword, margin);
fdlAutoSize.right = new FormAttachment(middle, -margin);
wlAutoSize.setLayoutData(fdlAutoSize);
wAutoSize = new Button(wContentComp, SWT.CHECK);
props.setLook(wAutoSize);
wAutoSize.setToolTipText(BaseMessages.getString(PKG, "ExcelOutputDialog.AutoSize.Tooltip"));
fdAutoSize = new FormData();
fdAutoSize.left = new FormAttachment(middle, 0);
fdAutoSize.top = new FormAttachment(wPassword, margin);
fdAutoSize.right = new FormAttachment(100, 0);
wAutoSize.setLayoutData(fdAutoSize);
wAutoSize.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
EnableAutoSize();
}
});
// write null values as blank cells ?
wlNullIsBlank = new Label(wContentComp, SWT.RIGHT);
wlNullIsBlank.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.NullIsBlank.Label"));
props.setLook(wlNullIsBlank);
fdlNullIsBlank = new FormData();
fdlNullIsBlank.left = new FormAttachment(0, 0);
fdlNullIsBlank.top = new FormAttachment(wAutoSize, margin);
fdlNullIsBlank.right = new FormAttachment(middle, -margin);
wlNullIsBlank.setLayoutData(fdlNullIsBlank);
wNullIsBlank = new Button(wContentComp, SWT.CHECK);
props.setLook(wNullIsBlank);
wNullIsBlank.setToolTipText(BaseMessages.getString(PKG, "ExcelOutputDialog.NullIsBlank.Tooltip"));
fdNullIsBlank = new FormData();
fdNullIsBlank.left = new FormAttachment(middle, 0);
fdNullIsBlank.top = new FormAttachment(wAutoSize, margin);
fdNullIsBlank.right = new FormAttachment(100, 0);
wNullIsBlank.setLayoutData(fdNullIsBlank);
// use temporary files?
wluseTempFiles = new Label(wContentComp, SWT.RIGHT);
wluseTempFiles.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.useTempFile.Label"));
props.setLook(wluseTempFiles);
fdluseTempFiles = new FormData();
fdluseTempFiles.left = new FormAttachment(0, 0);
fdluseTempFiles.top = new FormAttachment(wNullIsBlank, margin);
fdluseTempFiles.right = new FormAttachment(middle, -margin);
wluseTempFiles.setLayoutData(fdluseTempFiles);
wuseTempFiles = new Button(wContentComp, SWT.CHECK);
props.setLook(wuseTempFiles);
wuseTempFiles.setToolTipText(BaseMessages.getString(PKG, "ExcelOutputDialog.useTempFile.Tooltip"));
fduseTempFiles = new FormData();
fduseTempFiles.left = new FormAttachment(middle, 0);
fduseTempFiles.top = new FormAttachment(wNullIsBlank, margin);
fduseTempFiles.right = new FormAttachment(100, 0);
wuseTempFiles.setLayoutData(fduseTempFiles);
wuseTempFiles.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
input.setChanged();
useTempFile();
}
});
// TempDirectory line
wlTempDirectory = new Label(wContentComp, SWT.RIGHT);
wlTempDirectory.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.TempDirectory.Label"));
props.setLook(wlTempDirectory);
fdlTempDirectory = new FormData();
fdlTempDirectory.left = new FormAttachment(0, 0);
fdlTempDirectory.top = new FormAttachment(wuseTempFiles, margin);
fdlTempDirectory.right = new FormAttachment(middle, -margin);
wlTempDirectory.setLayoutData(fdlTempDirectory);
// Select TempDir
wbTempDir = new Button(wContentComp, SWT.PUSH | SWT.CENTER);
props.setLook(wbTempDir);
wbTempDir.setText(BaseMessages.getString(PKG, "System.Button.Browse"));
fdbTempDir = new FormData();
fdbTempDir.right = new FormAttachment(100, -margin);
fdbTempDir.top = new FormAttachment(wuseTempFiles, margin);
wbTempDir.setLayoutData(fdbTempDir);
wTempDirectory = new TextVar(transMeta, wContentComp, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
wTempDirectory.setToolTipText(BaseMessages.getString(PKG, "ExcelOutputDialog.TempDirectory.Tooltip"));
props.setLook(wTempDirectory);
wTempDirectory.addModifyListener(lsMod);
fdTempDirectory = new FormData();
fdTempDirectory.left = new FormAttachment(middle, 0);
fdTempDirectory.top = new FormAttachment(wuseTempFiles, margin);
fdTempDirectory.right = new FormAttachment(wbTempDir, -margin);
wTempDirectory.setLayoutData(fdTempDirectory);
wTempDirectory.addModifyListener(new ModifyListener() {
@Override
public void modifyText(ModifyEvent e) {
input.setChanged();
}
});
// ///////////////////////////////
// START OF Template Group GROUP //
// ///////////////////////////////
wTemplateGroup = new Group(wContentComp, SWT.SHADOW_NONE);
props.setLook(wTemplateGroup);
wTemplateGroup.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.TemplateGroup.Label"));
FormLayout TemplateGroupgroupLayout = new FormLayout();
TemplateGroupgroupLayout.marginWidth = 10;
TemplateGroupgroupLayout.marginHeight = 10;
wTemplateGroup.setLayout(TemplateGroupgroupLayout);
// Use template
wlTemplate = new Label(wTemplateGroup, SWT.RIGHT);
wlTemplate.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.Template.Label"));
props.setLook(wlTemplate);
fdlTemplate = new FormData();
fdlTemplate.left = new FormAttachment(0, 0);
fdlTemplate.top = new FormAttachment(wTempDirectory, margin);
fdlTemplate.right = new FormAttachment(middle, -margin);
wlTemplate.setLayoutData(fdlTemplate);
wTemplate = new Button(wTemplateGroup, SWT.CHECK);
props.setLook(wTemplate);
fdTemplate = new FormData();
fdTemplate.left = new FormAttachment(middle, 0);
fdTemplate.top = new FormAttachment(wTempDirectory, margin);
fdTemplate.right = new FormAttachment(100, 0);
wTemplate.setLayoutData(fdTemplate);
wTemplate.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
EnableTemplate();
}
});
// TemplateFilename line
wlTemplateFilename = new Label(wTemplateGroup, SWT.RIGHT);
wlTemplateFilename.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.TemplateFilename.Label"));
props.setLook(wlTemplateFilename);
fdlTemplateFilename = new FormData();
fdlTemplateFilename.left = new FormAttachment(0, 0);
fdlTemplateFilename.top = new FormAttachment(wTemplate, margin);
fdlTemplateFilename.right = new FormAttachment(middle, -margin);
wlTemplateFilename.setLayoutData(fdlTemplateFilename);
wbTemplateFilename = new Button(wTemplateGroup, SWT.PUSH | SWT.CENTER);
props.setLook(wbTemplateFilename);
wbTemplateFilename.setText(BaseMessages.getString(PKG, "System.Button.Browse"));
fdbTemplateFilename = new FormData();
fdbTemplateFilename.right = new FormAttachment(100, 0);
fdbTemplateFilename.top = new FormAttachment(wTemplate, 0);
wbTemplateFilename.setLayoutData(fdbTemplateFilename);
wTemplateFilename = new TextVar(transMeta, wTemplateGroup, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
props.setLook(wTemplateFilename);
wTemplateFilename.addModifyListener(lsMod);
fdTemplateFilename = new FormData();
fdTemplateFilename.left = new FormAttachment(middle, 0);
fdTemplateFilename.top = new FormAttachment(wTemplate, margin);
fdTemplateFilename.right = new FormAttachment(wbTemplateFilename, -margin);
wTemplateFilename.setLayoutData(fdTemplateFilename);
// Template Append
wlTemplateAppend = new Label(wTemplateGroup, SWT.RIGHT);
wlTemplateAppend.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.TemplateAppend.Label"));
props.setLook(wlTemplateAppend);
fdlTemplateAppend = new FormData();
fdlTemplateAppend.left = new FormAttachment(0, 0);
fdlTemplateAppend.top = new FormAttachment(wTemplateFilename, margin);
fdlTemplateAppend.right = new FormAttachment(middle, -margin);
wlTemplateAppend.setLayoutData(fdlTemplateAppend);
wTemplateAppend = new Button(wTemplateGroup, SWT.CHECK);
props.setLook(wTemplateAppend);
fdTemplateAppend = new FormData();
fdTemplateAppend.left = new FormAttachment(middle, 0);
fdTemplateAppend.top = new FormAttachment(wTemplateFilename, margin);
fdTemplateAppend.right = new FormAttachment(100, 0);
wTemplateAppend.setLayoutData(fdTemplateAppend);
wTemplateAppend.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
input.setChanged();
}
});
fdTemplateGroup = new FormData();
fdTemplateGroup.left = new FormAttachment(0, margin);
fdTemplateGroup.top = new FormAttachment(wTempDirectory, margin);
fdTemplateGroup.right = new FormAttachment(100, -margin);
wTemplateGroup.setLayoutData(fdTemplateGroup);
// ///////////////////////////////////////////////////////////
// / END OF Template Group GROUP
// ///////////////////////////////////////////////////////////
fdContentComp = new FormData();
fdContentComp.left = new FormAttachment(0, 0);
fdContentComp.top = new FormAttachment(0, 0);
fdContentComp.right = new FormAttachment(100, 0);
fdContentComp.bottom = new FormAttachment(100, 0);
wContentComp.setLayoutData(fdContentComp);
wContentComp.layout();
wContentTab.setControl(wContentComp);
// ///////////////////////////////////////////////////////////
// / END OF CONTENT TAB
// ///////////////////////////////////////////////////////////
// Custom tab...
//
wCustomTab = new CTabItem(wTabFolder, SWT.NONE);
wCustomTab.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.CustomTab.TabTitle"));
FormLayout CustomLayout = new FormLayout();
CustomLayout.marginWidth = Const.FORM_MARGIN;
CustomLayout.marginHeight = Const.FORM_MARGIN;
Composite wCustomComp = new Composite(wTabFolder, SWT.NONE);
wCustomComp.setLayout(CustomLayout);
props.setLook(wCustomComp);
// ///////////////////////////////
// START OF Header Font GROUP //
// ///////////////////////////////
wFontHeaderGroup = new Group(wCustomComp, SWT.SHADOW_NONE);
props.setLook(wFontHeaderGroup);
wFontHeaderGroup.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.FontHeaderGroup.Label"));
FormLayout FontHeadergroupLayout = new FormLayout();
FontHeadergroupLayout.marginWidth = 10;
FontHeadergroupLayout.marginHeight = 10;
wFontHeaderGroup.setLayout(FontHeadergroupLayout);
// Header font name
wlHeaderFontName = new Label(wFontHeaderGroup, SWT.RIGHT);
wlHeaderFontName.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.HeaderFontName.Label"));
props.setLook(wlHeaderFontName);
fdlHeaderFontName = new FormData();
fdlHeaderFontName.left = new FormAttachment(0, 0);
fdlHeaderFontName.top = new FormAttachment(0, margin);
fdlHeaderFontName.right = new FormAttachment(middle, -margin);
wlHeaderFontName.setLayoutData(fdlHeaderFontName);
wHeaderFontName = new CCombo(wFontHeaderGroup, SWT.BORDER | SWT.READ_ONLY);
wHeaderFontName.setItems(ExcelOutputMeta.font_name_desc);
props.setLook(wHeaderFontName);
wHeaderFontName.addModifyListener(lsMod);
fdHeaderFontName = new FormData();
fdHeaderFontName.left = new FormAttachment(middle, 0);
fdHeaderFontName.top = new FormAttachment(0, margin);
fdHeaderFontName.right = new FormAttachment(100, 0);
wHeaderFontName.setLayoutData(fdHeaderFontName);
// Header font size
wlHeaderFontSize = new Label(wFontHeaderGroup, SWT.RIGHT);
wlHeaderFontSize.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.HeaderFontSize.Label"));
props.setLook(wlHeaderFontSize);
fdlHeaderFontSize = new FormData();
fdlHeaderFontSize.left = new FormAttachment(0, 0);
fdlHeaderFontSize.top = new FormAttachment(wHeaderFontName, margin);
fdlHeaderFontSize.right = new FormAttachment(middle, -margin);
wlHeaderFontSize.setLayoutData(fdlHeaderFontSize);
wHeaderFontSize = new TextVar(transMeta, wFontHeaderGroup, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
wHeaderFontSize.setToolTipText(BaseMessages.getString(PKG, "ExcelOutputDialog.HeaderFontSize.Tooltip"));
props.setLook(wHeaderFontSize);
wHeaderFontSize.addModifyListener(lsMod);
fdHeaderFontSize = new FormData();
fdHeaderFontSize.left = new FormAttachment(middle, 0);
fdHeaderFontSize.top = new FormAttachment(wHeaderFontName, margin);
fdHeaderFontSize.right = new FormAttachment(100, 0);
wHeaderFontSize.setLayoutData(fdHeaderFontSize);
// Header font bold?
wlHeaderFontBold = new Label(wFontHeaderGroup, SWT.RIGHT);
wlHeaderFontBold.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.HeaderFontBold.Label"));
props.setLook(wlHeaderFontBold);
fdlHeaderFontBold = new FormData();
fdlHeaderFontBold.left = new FormAttachment(0, 0);
fdlHeaderFontBold.top = new FormAttachment(wHeaderFontSize, margin);
fdlHeaderFontBold.right = new FormAttachment(middle, -margin);
wlHeaderFontBold.setLayoutData(fdlHeaderFontBold);
wHeaderFontBold = new Button(wFontHeaderGroup, SWT.CHECK);
props.setLook(wHeaderFontBold);
fdHeaderFontBold = new FormData();
fdHeaderFontBold.left = new FormAttachment(middle, 0);
fdHeaderFontBold.top = new FormAttachment(wHeaderFontSize, margin);
fdHeaderFontBold.right = new FormAttachment(100, 0);
wHeaderFontBold.setLayoutData(fdHeaderFontBold);
wHeaderFontBold.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
input.setChanged();
}
});
// Header font bold?
wlHeaderFontItalic = new Label(wFontHeaderGroup, SWT.RIGHT);
wlHeaderFontItalic.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.HeaderFontItalic.Label"));
props.setLook(wlHeaderFontItalic);
fdlHeaderFontItalic = new FormData();
fdlHeaderFontItalic.left = new FormAttachment(0, 0);
fdlHeaderFontItalic.top = new FormAttachment(wHeaderFontBold, margin);
fdlHeaderFontItalic.right = new FormAttachment(middle, -margin);
wlHeaderFontItalic.setLayoutData(fdlHeaderFontItalic);
wHeaderFontItalic = new Button(wFontHeaderGroup, SWT.CHECK);
props.setLook(wHeaderFontItalic);
fdHeaderFontItalic = new FormData();
fdHeaderFontItalic.left = new FormAttachment(middle, 0);
fdHeaderFontItalic.top = new FormAttachment(wHeaderFontBold, margin);
fdHeaderFontItalic.right = new FormAttachment(100, 0);
wHeaderFontItalic.setLayoutData(fdHeaderFontItalic);
wHeaderFontItalic.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
input.setChanged();
}
});
// Font header uderline?
wlHeaderFontUnderline = new Label(wFontHeaderGroup, SWT.RIGHT);
wlHeaderFontUnderline.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.HeaderFontUnderline.Label"));
props.setLook(wlHeaderFontUnderline);
fdlHeaderFontUnderline = new FormData();
fdlHeaderFontUnderline.left = new FormAttachment(0, 0);
fdlHeaderFontUnderline.top = new FormAttachment(wHeaderFontItalic, margin);
fdlHeaderFontUnderline.right = new FormAttachment(middle, -margin);
wlHeaderFontUnderline.setLayoutData(fdlHeaderFontUnderline);
wHeaderFontUnderline = new CCombo(wFontHeaderGroup, SWT.BORDER | SWT.READ_ONLY);
wHeaderFontUnderline.setItems(ExcelOutputMeta.font_underline_desc);
props.setLook(wHeaderFontUnderline);
wHeaderFontUnderline.addModifyListener(lsMod);
fdHeaderFontUnderline = new FormData();
fdHeaderFontUnderline.left = new FormAttachment(middle, 0);
fdHeaderFontUnderline.top = new FormAttachment(wHeaderFontItalic, margin);
fdHeaderFontUnderline.right = new FormAttachment(100, 0);
wHeaderFontUnderline.setLayoutData(fdHeaderFontUnderline);
// Font header orientation
wlHeaderFontOrientation = new Label(wFontHeaderGroup, SWT.RIGHT);
wlHeaderFontOrientation.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.HeaderFontOrientation.Label"));
props.setLook(wlHeaderFontOrientation);
fdlHeaderFontOrientation = new FormData();
fdlHeaderFontOrientation.left = new FormAttachment(0, 0);
fdlHeaderFontOrientation.top = new FormAttachment(wHeaderFontUnderline, margin);
fdlHeaderFontOrientation.right = new FormAttachment(middle, -margin);
wlHeaderFontOrientation.setLayoutData(fdlHeaderFontOrientation);
wHeaderFontOrientation = new CCombo(wFontHeaderGroup, SWT.BORDER | SWT.READ_ONLY);
wHeaderFontOrientation.setItems(ExcelOutputMeta.font_orientation_desc);
props.setLook(wHeaderFontOrientation);
wHeaderFontOrientation.addModifyListener(lsMod);
fdHeaderFontOrientation = new FormData();
fdHeaderFontOrientation.left = new FormAttachment(middle, 0);
fdHeaderFontOrientation.top = new FormAttachment(wHeaderFontUnderline, margin);
fdHeaderFontOrientation.right = new FormAttachment(100, 0);
wHeaderFontOrientation.setLayoutData(fdHeaderFontOrientation);
// Font header color
wlHeaderFontColor = new Label(wFontHeaderGroup, SWT.RIGHT);
wlHeaderFontColor.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.HeaderFontColor.Label"));
props.setLook(wlHeaderFontColor);
fdlHeaderFontColor = new FormData();
fdlHeaderFontColor.left = new FormAttachment(0, 0);
fdlHeaderFontColor.top = new FormAttachment(wHeaderFontOrientation, margin);
fdlHeaderFontColor.right = new FormAttachment(middle, -margin);
wlHeaderFontColor.setLayoutData(fdlHeaderFontColor);
wHeaderFontColor = new CCombo(wFontHeaderGroup, SWT.BORDER | SWT.READ_ONLY);
props.setLook(wHeaderFontColor);
fdHeaderFontColor = new FormData();
fdHeaderFontColor.left = new FormAttachment(middle, 0);
fdHeaderFontColor.top = new FormAttachment(wHeaderFontOrientation, margin);
fdHeaderFontColor.right = new FormAttachment(100, 0);
wHeaderFontColor.setLayoutData(fdHeaderFontColor);
wHeaderFontColor.setItems(ExcelOutputMeta.font_color_desc);
// Font header background color
wlHeaderBackGroundColor = new Label(wFontHeaderGroup, SWT.RIGHT);
wlHeaderBackGroundColor.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.HeaderBackGroundColor.Label"));
props.setLook(wlHeaderBackGroundColor);
fdlHeaderBackGroundColor = new FormData();
fdlHeaderBackGroundColor.left = new FormAttachment(0, 0);
fdlHeaderBackGroundColor.top = new FormAttachment(wHeaderFontColor, margin);
fdlHeaderBackGroundColor.right = new FormAttachment(middle, -margin);
wlHeaderBackGroundColor.setLayoutData(fdlHeaderBackGroundColor);
wHeaderBackGroundColor = new CCombo(wFontHeaderGroup, SWT.BORDER | SWT.READ_ONLY);
props.setLook(wHeaderBackGroundColor);
fdHeaderBackGroundColor = new FormData();
fdHeaderBackGroundColor.left = new FormAttachment(middle, 0);
fdHeaderBackGroundColor.top = new FormAttachment(wHeaderFontColor, margin);
fdHeaderBackGroundColor.right = new FormAttachment(100, 0);
wHeaderBackGroundColor.setLayoutData(fdHeaderBackGroundColor);
wHeaderBackGroundColor.setItems(ExcelOutputMeta.font_color_desc);
// Header font size
wlHeaderRowHeight = new Label(wFontHeaderGroup, SWT.RIGHT);
wlHeaderRowHeight.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.HeaderRowHeight.Label"));
props.setLook(wlHeaderRowHeight);
fdlHeaderRowHeight = new FormData();
fdlHeaderRowHeight.left = new FormAttachment(0, 0);
fdlHeaderRowHeight.top = new FormAttachment(wHeaderBackGroundColor, margin);
fdlHeaderRowHeight.right = new FormAttachment(middle, -margin);
wlHeaderRowHeight.setLayoutData(fdlHeaderRowHeight);
wHeaderRowHeight = new TextVar(transMeta, wFontHeaderGroup, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
wHeaderRowHeight.setToolTipText(BaseMessages.getString(PKG, "ExcelOutputDialog.HeaderRowHeight.Tooltip"));
props.setLook(wHeaderRowHeight);
wHeaderRowHeight.addModifyListener(lsMod);
fdHeaderRowHeight = new FormData();
fdHeaderRowHeight.left = new FormAttachment(middle, 0);
fdHeaderRowHeight.top = new FormAttachment(wHeaderBackGroundColor, margin);
fdHeaderRowHeight.right = new FormAttachment(100, 0);
wHeaderRowHeight.setLayoutData(fdHeaderRowHeight);
// Header Alignment
wlHeaderAlignment = new Label(wFontHeaderGroup, SWT.RIGHT);
wlHeaderAlignment.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.HeaderAlignment.Label"));
props.setLook(wlHeaderAlignment);
fdlHeaderAlignment = new FormData();
fdlHeaderAlignment.left = new FormAttachment(0, 0);
fdlHeaderAlignment.top = new FormAttachment(wHeaderRowHeight, margin);
fdlHeaderAlignment.right = new FormAttachment(middle, -margin);
wlHeaderAlignment.setLayoutData(fdlHeaderAlignment);
wHeaderAlignment = new CCombo(wFontHeaderGroup, SWT.BORDER | SWT.READ_ONLY);
wHeaderAlignment.setItems(ExcelOutputMeta.font_alignment_desc);
props.setLook(wHeaderAlignment);
wHeaderAlignment.addModifyListener(lsMod);
fdHeaderAlignment = new FormData();
fdHeaderAlignment.left = new FormAttachment(middle, 0);
fdHeaderAlignment.top = new FormAttachment(wHeaderRowHeight, margin);
fdHeaderAlignment.right = new FormAttachment(100, 0);
wHeaderAlignment.setLayoutData(fdHeaderAlignment);
// Select Image
wbImage = new Button(wFontHeaderGroup, SWT.PUSH | SWT.CENTER);
props.setLook(wbImage);
wbImage.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.AddImage"));
fdbImage = new FormData();
fdbImage.right = new FormAttachment(100, 0);
fdbImage.top = new FormAttachment(wHeaderAlignment, margin);
wbImage.setLayoutData(fdbImage);
wbImage.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
FileDialog dialog = new FileDialog(shell, SWT.OPEN);
dialog.setFilterExtensions(new String[] { "*.png", "*.*" });
if (wImage.getText() != null) {
dialog.setFileName(transMeta.environmentSubstitute(wImage.getText()));
}
dialog.setFilterNames(new String[] { BaseMessages.getString(PKG, "ExcelOutputDialog.FileType.PNGFiles"), BaseMessages.getString(PKG, "System.FileType.AllFiles") });
if (dialog.open() != null) {
wImage.setText(dialog.getFilterPath() + System.getProperty("file.separator") + dialog.getFileName());
}
}
});
// Image line
wlImage = new Label(wFontHeaderGroup, SWT.RIGHT);
wlImage.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.Image.Label"));
props.setLook(wlImage);
fdlImage = new FormData();
fdlImage.left = new FormAttachment(0, 0);
fdlImage.top = new FormAttachment(wHeaderAlignment, margin);
fdlImage.right = new FormAttachment(middle, -margin);
wlImage.setLayoutData(fdlImage);
wImage = new TextVar(transMeta, wFontHeaderGroup, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
props.setLook(wImage);
wImage.addModifyListener(lsMod);
fdImage = new FormData();
fdImage.left = new FormAttachment(middle, 0);
fdImage.top = new FormAttachment(wHeaderAlignment, margin);
fdImage.right = new FormAttachment(wbImage, -margin);
wImage.setLayoutData(fdImage);
fdFontHeaderGroup = new FormData();
fdFontHeaderGroup.left = new FormAttachment(0, margin);
fdFontHeaderGroup.top = new FormAttachment(0, margin);
fdFontHeaderGroup.right = new FormAttachment(100, -margin);
wFontHeaderGroup.setLayoutData(fdFontHeaderGroup);
// ///////////////////////////////////////////////////////////
// / END OF Font Group GROUP
// ///////////////////////////////////////////////////////////
// ///////////////////////////////
// START OF Row Font GROUP //
// ///////////////////////////////
wFontRowGroup = new Group(wCustomComp, SWT.SHADOW_NONE);
props.setLook(wFontRowGroup);
wFontRowGroup.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.FontRowGroup.Label"));
FormLayout FontRowGroupLayout = new FormLayout();
FontRowGroupLayout.marginWidth = 10;
FontRowGroupLayout.marginHeight = 10;
wFontRowGroup.setLayout(FontRowGroupLayout);
// Font Row name
wlRowFontName = new Label(wFontRowGroup, SWT.RIGHT);
wlRowFontName.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.RowFontName.Label"));
props.setLook(wlRowFontName);
fdlRowFontName = new FormData();
fdlRowFontName.left = new FormAttachment(0, 0);
fdlRowFontName.top = new FormAttachment(0, margin);
fdlRowFontName.right = new FormAttachment(middle, -margin);
wlRowFontName.setLayoutData(fdlRowFontName);
wRowFontName = new CCombo(wFontRowGroup, SWT.BORDER | SWT.READ_ONLY);
wRowFontName.setItems(ExcelOutputMeta.font_name_desc);
props.setLook(wRowFontName);
wRowFontName.addModifyListener(lsMod);
fdRowFontName = new FormData();
fdRowFontName.left = new FormAttachment(middle, 0);
fdRowFontName.top = new FormAttachment(0, margin);
fdRowFontName.right = new FormAttachment(100, 0);
wRowFontName.setLayoutData(fdRowFontName);
// Row font size
wlRowFontSize = new Label(wFontRowGroup, SWT.RIGHT);
wlRowFontSize.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.RowFontSize.Label"));
props.setLook(wlRowFontSize);
fdlRowFontSize = new FormData();
fdlRowFontSize.left = new FormAttachment(0, 0);
fdlRowFontSize.top = new FormAttachment(wRowFontName, margin);
fdlRowFontSize.right = new FormAttachment(middle, -margin);
wlRowFontSize.setLayoutData(fdlRowFontSize);
wRowFontSize = new TextVar(transMeta, wFontRowGroup, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
wRowFontSize.setToolTipText(BaseMessages.getString(PKG, "ExcelOutputDialog.RowFontSize.Tooltip"));
props.setLook(wRowFontSize);
wRowFontSize.addModifyListener(lsMod);
fdRowFontSize = new FormData();
fdRowFontSize.left = new FormAttachment(middle, 0);
fdRowFontSize.top = new FormAttachment(wRowFontName, margin);
fdRowFontSize.right = new FormAttachment(100, 0);
wRowFontSize.setLayoutData(fdRowFontSize);
// Font Row color
wlRowFontColor = new Label(wFontRowGroup, SWT.RIGHT);
wlRowFontColor.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.RowFontColor.Label"));
props.setLook(wlRowFontColor);
fdlRowFontColor = new FormData();
fdlRowFontColor.left = new FormAttachment(0, 0);
fdlRowFontColor.top = new FormAttachment(wRowFontSize, margin);
fdlRowFontColor.right = new FormAttachment(middle, -margin);
wlRowFontColor.setLayoutData(fdlRowFontColor);
wRowFontColor = new CCombo(wFontRowGroup, SWT.BORDER | SWT.READ_ONLY);
props.setLook(wRowFontColor);
fdRowFontColor = new FormData();
fdRowFontColor.left = new FormAttachment(middle, 0);
fdRowFontColor.top = new FormAttachment(wRowFontSize, margin);
fdRowFontColor.right = new FormAttachment(100, 0);
wRowFontColor.setLayoutData(fdRowFontColor);
wRowFontColor.setItems(ExcelOutputMeta.font_color_desc);
// Font Row background color
wlRowBackGroundColor = new Label(wFontRowGroup, SWT.RIGHT);
wlRowBackGroundColor.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.RowBackGroundColor.Label"));
props.setLook(wlRowBackGroundColor);
fdlRowBackGroundColor = new FormData();
fdlRowBackGroundColor.left = new FormAttachment(0, 0);
fdlRowBackGroundColor.top = new FormAttachment(wRowFontColor, margin);
fdlRowBackGroundColor.right = new FormAttachment(middle, -margin);
wlRowBackGroundColor.setLayoutData(fdlRowBackGroundColor);
wRowBackGroundColor = new CCombo(wFontRowGroup, SWT.BORDER | SWT.READ_ONLY);
props.setLook(wRowBackGroundColor);
fdRowBackGroundColor = new FormData();
fdRowBackGroundColor.left = new FormAttachment(middle, 0);
fdRowBackGroundColor.top = new FormAttachment(wRowFontColor, margin);
fdRowBackGroundColor.right = new FormAttachment(100, 0);
wRowBackGroundColor.setLayoutData(fdRowBackGroundColor);
wRowBackGroundColor.setItems(ExcelOutputMeta.font_color_desc);
fdFontRowGroup = new FormData();
fdFontRowGroup.left = new FormAttachment(0, margin);
fdFontRowGroup.top = new FormAttachment(wFontHeaderGroup, margin);
fdFontRowGroup.right = new FormAttachment(100, -margin);
wFontRowGroup.setLayoutData(fdFontRowGroup);
// ///////////////////////////////////////////////////////////
// / END OF Row Font Group
// ///////////////////////////////////////////////////////////
fdCustomComp = new FormData();
fdCustomComp.left = new FormAttachment(0, 0);
fdCustomComp.top = new FormAttachment(0, 0);
fdCustomComp.right = new FormAttachment(100, 0);
fdCustomComp.bottom = new FormAttachment(100, 0);
wCustomComp.setLayoutData(fdCustomComp);
wCustomComp.layout();
wCustomTab.setControl(wCustomComp);
// ///////////////////////////////////////////////////////////
// / END OF customer TAB
// ///////////////////////////////////////////////////////////
// Fields tab...
//
wFieldsTab = new CTabItem(wTabFolder, SWT.NONE);
wFieldsTab.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.FieldsTab.TabTitle"));
FormLayout fieldsLayout = new FormLayout();
fieldsLayout.marginWidth = Const.FORM_MARGIN;
fieldsLayout.marginHeight = Const.FORM_MARGIN;
Composite wFieldsComp = new Composite(wTabFolder, SWT.NONE);
wFieldsComp.setLayout(fieldsLayout);
props.setLook(wFieldsComp);
wGet = new Button(wFieldsComp, SWT.PUSH);
wGet.setText(BaseMessages.getString(PKG, "System.Button.GetFields"));
wGet.setToolTipText(BaseMessages.getString(PKG, "System.Tooltip.GetFields"));
wMinWidth = new Button(wFieldsComp, SWT.PUSH);
wMinWidth.setText(BaseMessages.getString(PKG, "ExcelOutputDialog.MinWidth.Button"));
wMinWidth.setToolTipText(BaseMessages.getString(PKG, "ExcelOutputDialog.MinWidth.Tooltip"));
setButtonPositions(new Button[] { wGet, wMinWidth }, margin, null);
final int FieldsRows = input.getOutputFields().length;
// Prepare a list of possible formats...
String[] formats = new String[] { // Numbers
"#", "0", "0.00", "#,##0", "#,##0.00", "$#,##0;($#,##0)", "$#,##0;($#,##0)", "$#,##0;($#,##0)", "$#,##0;($#,##0)", "0%", "0.00%", "0.00E00", "#,##0;(#,##0)", "#,##0;(#,##0)", "#,##0.00;(#,##0.00)", "#,##0.00;(#,##0.00)", "#,##0;(#,##0)", "#,##0;(#,##0)", "#,##0.00;(#,##0.00)", "#,##0.00;(#,##0.00)", "#,##0.00;(#,##0.00)", "##0.0E0", // Forces text
"@", // Dates
"M/d/yy", "d-MMM-yy", "d-MMM", "MMM-yy", "h:mm a", "h:mm:ss a", "H:mm", "H:mm:ss", "M/d/yy H:mm", "mm:ss", "H:mm:ss", "H:mm:ss" };
colinf = new ColumnInfo[] { new ColumnInfo(BaseMessages.getString(PKG, "ExcelOutputDialog.NameColumn.Column"), ColumnInfo.COLUMN_TYPE_CCOMBO, new String[] { "" }, false), new ColumnInfo(BaseMessages.getString(PKG, "ExcelOutputDialog.TypeColumn.Column"), ColumnInfo.COLUMN_TYPE_CCOMBO, ValueMetaFactory.getValueMetaNames()), new ColumnInfo(BaseMessages.getString(PKG, "ExcelOutputDialog.FormatColumn.Column"), ColumnInfo.COLUMN_TYPE_CCOMBO, formats) };
wFields = new TableView(transMeta, wFieldsComp, SWT.BORDER | SWT.FULL_SELECTION | SWT.MULTI, colinf, FieldsRows, lsMod, props);
fdFields = new FormData();
fdFields.left = new FormAttachment(0, 0);
fdFields.top = new FormAttachment(0, 0);
fdFields.right = new FormAttachment(100, 0);
fdFields.bottom = new FormAttachment(wGet, -margin);
wFields.setLayoutData(fdFields);
//
// Search the fields in the background
final Runnable runnable = new Runnable() {
@Override
public void run() {
StepMeta stepMeta = transMeta.findStep(stepname);
if (stepMeta != null) {
try {
RowMetaInterface row = transMeta.getPrevStepFields(stepMeta);
// Remember these fields...
for (int i = 0; i < row.size(); i++) {
inputFields.put(row.getValueMeta(i).getName(), Integer.valueOf(i));
}
setComboBoxes();
} catch (KettleException e) {
logError(BaseMessages.getString(PKG, "System.Dialog.GetFieldsFailed.Message"));
}
}
}
};
new Thread(runnable).start();
fdFieldsComp = new FormData();
fdFieldsComp.left = new FormAttachment(0, 0);
fdFieldsComp.top = new FormAttachment(0, 0);
fdFieldsComp.right = new FormAttachment(100, 0);
fdFieldsComp.bottom = new FormAttachment(100, 0);
wFieldsComp.setLayoutData(fdFieldsComp);
wFieldsComp.layout();
wFieldsTab.setControl(wFieldsComp);
fdTabFolder = new FormData();
fdTabFolder.left = new FormAttachment(0, 0);
fdTabFolder.top = new FormAttachment(wStepname, margin);
fdTabFolder.right = new FormAttachment(100, 0);
fdTabFolder.bottom = new FormAttachment(100, -50);
wTabFolder.setLayoutData(fdTabFolder);
wOK = new Button(shell, SWT.PUSH);
wOK.setText(BaseMessages.getString(PKG, "System.Button.OK"));
wCancel = new Button(shell, SWT.PUSH);
wCancel.setText(BaseMessages.getString(PKG, "System.Button.Cancel"));
setButtonPositions(new Button[] { wOK, wCancel }, margin, wTabFolder);
// Add listeners
lsOK = new Listener() {
@Override
public void handleEvent(Event e) {
ok();
}
};
lsGet = new Listener() {
@Override
public void handleEvent(Event e) {
get();
}
};
lsMinWidth = new Listener() {
@Override
public void handleEvent(Event e) {
setMinimalWidth();
}
};
lsCancel = new Listener() {
@Override
public void handleEvent(Event e) {
cancel();
}
};
wOK.addListener(SWT.Selection, lsOK);
wGet.addListener(SWT.Selection, lsGet);
wMinWidth.addListener(SWT.Selection, lsMinWidth);
wCancel.addListener(SWT.Selection, lsCancel);
lsDef = new SelectionAdapter() {
@Override
public void widgetDefaultSelected(SelectionEvent e) {
ok();
}
};
wStepname.addSelectionListener(lsDef);
wFilename.addSelectionListener(lsDef);
wTemplateFilename.addSelectionListener(lsDef);
// Whenever something changes, set the tooltip to the expanded version:
wFilename.addModifyListener(new ModifyListener() {
@Override
public void modifyText(ModifyEvent e) {
wFilename.setToolTipText(transMeta.environmentSubstitute(wFilename.getText()));
}
});
wTemplateFilename.addModifyListener(new ModifyListener() {
@Override
public void modifyText(ModifyEvent e) {
wTemplateFilename.setToolTipText(transMeta.environmentSubstitute(wTemplateFilename.getText()));
}
});
wbFilename.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
FileDialog dialog = new FileDialog(shell, SWT.SAVE);
dialog.setFilterExtensions(new String[] { "*.xls", "*.*" });
if (wFilename.getText() != null) {
dialog.setFileName(transMeta.environmentSubstitute(wFilename.getText()));
}
dialog.setFilterNames(new String[] { BaseMessages.getString(PKG, "System.FileType.ExcelFiles"), BaseMessages.getString(PKG, "System.FileType.AllFiles") });
if (dialog.open() != null) {
wFilename.setText(dialog.getFilterPath() + System.getProperty("file.separator") + dialog.getFileName());
}
}
});
wbTemplateFilename.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
FileDialog dialog = new FileDialog(shell, SWT.OPEN);
dialog.setFilterExtensions(new String[] { "*.xls", "*.*" });
if (wTemplateFilename.getText() != null) {
dialog.setFileName(transMeta.environmentSubstitute(wTemplateFilename.getText()));
}
dialog.setFilterNames(new String[] { BaseMessages.getString(PKG, "System.FileType.ExcelFiles"), BaseMessages.getString(PKG, "System.FileType.AllFiles") });
if (dialog.open() != null) {
wTemplateFilename.setText(dialog.getFilterPath() + System.getProperty("file.separator") + dialog.getFileName());
}
}
});
// Detect X or ALT-F4 or something that kills this window...
shell.addShellListener(new ShellAdapter() {
@Override
public void shellClosed(ShellEvent e) {
cancel();
}
});
lsResize = new Listener() {
@Override
public void handleEvent(Event event) {
Point size = shell.getSize();
wFields.setSize(size.x - 10, size.y - 50);
wFields.table.setSize(size.x - 10, size.y - 50);
wFields.redraw();
}
};
shell.addListener(SWT.Resize, lsResize);
wTabFolder.setSelection(0);
// Set the shell size, based upon previous time...
setSize();
getData();
setDateTimeFormat();
EnableAutoSize();
useTempFile();
input.setChanged(changed);
shell.open();
while (!shell.isDisposed()) {
if (!display.readAndDispatch()) {
display.sleep();
}
}
return stepname;
}
Aggregations