gt:         wlFieldURL = new Label(shell, SWT.RIGHT);
context: /**********************************************************************
   **                                                                   **
   **               This code belongs to the KETTLE project.            **
   **                                                                   **
   ** Kettle, from version 2.2 on, is released into the public domain   **
   ** under the Lesser GNU Public License (LGPL).                       **
   **                                                                   **
   ** For more details, please read the document LICENSE.txt, included  **
   ** in this project                                                   **
   **                                                                   **
   ** http://www.kettle.be                                              **
   ** info@kettle.be                                                    **
   **                                                                   **
   **********************************************************************/
  
  /*
   * Created on 19-jun-2003
   *
   */
  
  package be.ibridge.kettle.job.entry.http;
  
  import org.eclipse.swt.SWT;
  import org.eclipse.swt.events.ModifyEvent;
  import org.eclipse.swt.events.ModifyListener;
  import org.eclipse.swt.events.SelectionAdapter;
  import org.eclipse.swt.events.SelectionEvent;
  import org.eclipse.swt.events.ShellAdapter;
  import org.eclipse.swt.events.ShellEvent;
  import org.eclipse.swt.layout.FormAttachment;
  import org.eclipse.swt.layout.FormData;
  import org.eclipse.swt.layout.FormLayout;
  import org.eclipse.swt.widgets.Button;
  import org.eclipse.swt.widgets.Dialog;
  import org.eclipse.swt.widgets.Display;
  import org.eclipse.swt.widgets.Event;
  import org.eclipse.swt.widgets.Label;
  import org.eclipse.swt.widgets.Listener;
  import org.eclipse.swt.widgets.Shell;
  import org.eclipse.swt.widgets.Text;
  
  import be.ibridge.kettle.core.Const;
  import be.ibridge.kettle.core.Props;
  import be.ibridge.kettle.core.WindowProperty;
  import be.ibridge.kettle.core.widget.TextVar;
  import be.ibridge.kettle.job.JobMeta;
  import be.ibridge.kettle.job.dialog.JobDialog;
  import be.ibridge.kettle.job.entry.JobEntryDialogInterface;
  import be.ibridge.kettle.job.entry.JobEntryInterface;
  import be.ibridge.kettle.trans.step.BaseStepDialog;
  
  /**
   * This dialog allows you to edit the SQL job entry settings. (select the connection and the sql
   * script to be executed)
   * 
   * @author Matt
   * @since 19-06-2003
   */
  public class JobEntryHTTPDialog extends Dialog implements JobEntryDialogInterface
  {
      private Label wlName;
  
      private Text wName;
  
      private FormData fdlName, fdName;
  
      private Label wlURL;
  
      private TextVar wURL;
  
      private FormData fdlURL, fdURL;
  
      private Label wlRunEveryRow;
  
      private Button wRunEveryRow;
  
      private FormData fdlRunEveryRow, fdRunEveryRow;
  
      private Label wlFieldURL;
  
      private TextVar wFieldURL;
  
      private FormData fdlFieldURL, fdFieldURL;
  
      private Label wlTargetFile;
  
      private TextVar wTargetFile;
  
      private FormData fdlTargetFile, fdTargetFile;
  
      private Label wlAppend;
  
      private Button wAppend;
  
      private FormData fdlAppend, fdAppend;
  
      private Label wlDateTimeAdded;
  
      private Button wDateTimeAdded;
  
      private FormData fdlDateTimeAdded, fdDateTimeAdded;
  
      private Label wlTargetExt;
  
      private TextVar wTargetExt;
  
      private FormData fdlTargetExt, fdTargetExt;
  
      private Label wlUploadFile;
  
      private TextVar wUploadFile;
  
      private FormData fdlUploadFile, fdUploadFile;
  
      private Label wlUserName;
  
      private TextVar wUserName;
  
      private FormData fdlUserName, fdUserName;
  
      private Label wlPassword;
  
      private TextVar wPassword;
  
      private FormData fdlPassword, fdPassword;
  
      private Label wlProxyServer;
  
      private TextVar wProxyServer;
  
      private FormData fdlProxyServer, fdProxyServer;
  
      private Label wlProxyPort;
  
      private TextVar wProxyPort;
  
      private FormData fdlProxyPort, fdProxyPort;
  
      private Label wlNonProxyHosts;
  
      private TextVar wNonProxyHosts;
  
      private FormData fdlNonProxyHosts, fdNonProxyHosts;
  
      private Button wOK, wCancel;
  
      private Listener lsOK, lsCancel;
  
      private JobEntryHTTP jobEntry;
  
      private Shell shell;
  
      private Props props;
  
      private SelectionAdapter lsDef;
  
      private boolean changed;
  
      public JobEntryHTTPDialog(Shell parent, JobEntryHTTP jobEntry, JobMeta jobMeta)
      {
          super(parent, SWT.NONE);
          props = Props.getInstance();
          this.jobEntry = jobEntry;
  
          if (this.jobEntry.getName() == null)
              this.jobEntry.setName(Messages.getString("JobHTTP.Name.Default"));
      }
  
      public JobEntryInterface open()
      {
          Shell parent = getParent();
          Display display = parent.getDisplay();
  
          shell = new Shell(parent, props.getJobsDialogStyle());
          props.setLook(shell);
          JobDialog.setShellImage(shell, jobEntry);
  
          ModifyListener lsMod = new ModifyListener()
          {
              public void modifyText(ModifyEvent e)
              {
                  jobEntry.setChanged();
              }
          };
          changed = jobEntry.hasChanged();
  
          FormLayout formLayout = new FormLayout();
          formLayout.marginWidth = Const.FORM_MARGIN;
          formLayout.marginHeight = Const.FORM_MARGIN;
  
          shell.setLayout(formLayout);
          shell.setText(Messages.getString("JobHTTP.Title"));
  
          int middle = props.getMiddlePct();
          int margin = Const.MARGIN;
  
          // Job entry name line
          wlName = new Label(shell, SWT.RIGHT);
          wlName.setText(Messages.getString("JobHTTP.Name.Label"));
          props.setLook(wlName);
          fdlName = new FormData();
          fdlName.left = new FormAttachment(0, 0);
          fdlName.right = new FormAttachment(middle, -margin);
          fdlName.top = new FormAttachment(0, margin);
          wlName.setLayoutData(fdlName);
          wName = new Text(shell, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
          props.setLook(wName);
          wName.addModifyListener(lsMod);
          fdName = new FormData();
          fdName.left = new FormAttachment(middle, 0);
          fdName.top = new FormAttachment(0, margin);
          fdName.right = new FormAttachment(100, 0);
          wName.setLayoutData(fdName);
  
          // URL line
          wlURL = new Label(shell, SWT.RIGHT);
          wlURL.setText(Messages.getString("JobHTTP.URL.Label"));
          props.setLook(wlURL);
          fdlURL = new FormData();
          fdlURL.left = new FormAttachment(0, 0);
          fdlURL.top = new FormAttachment(wName, margin);
          fdlURL.right = new FormAttachment(middle, -margin);
          wlURL.setLayoutData(fdlURL);
          wURL = new TextVar(shell, SWT.SINGLE | SWT.LEFT | SWT.BORDER, Messages
              .getString("JobHTTP.URL.Tooltip"));
          props.setLook(wURL);
          wURL.addModifyListener(lsMod);
          fdURL = new FormData();
          fdURL.left = new FormAttachment(middle, 0);
          fdURL.top = new FormAttachment(wName, margin);
          fdURL.right = new FormAttachment(100, 0);
          wURL.setLayoutData(fdURL);
  
          // RunEveryRow line
          wlRunEveryRow = new Label(shell, SWT.RIGHT);
          wlRunEveryRow.setText(Messages.getString("JobHTTP.RunForEveryRow.Label"));
          props.setLook(wlRunEveryRow);
          fdlRunEveryRow = new FormData();
          fdlRunEveryRow.left = new FormAttachment(0, 0);
          fdlRunEveryRow.top = new FormAttachment(wURL, margin);
          fdlRunEveryRow.right = new FormAttachment(middle, -margin);
          wlRunEveryRow.setLayoutData(fdlRunEveryRow);
          wRunEveryRow = new Button(shell, SWT.CHECK);
          wRunEveryRow.setToolTipText(Messages.getString("JobHTTP.RunForEveryRow.Tooltip"));
          props.setLook(wRunEveryRow);
          fdRunEveryRow = new FormData();
          fdRunEveryRow.left = new FormAttachment(middle, 0);
          fdRunEveryRow.top = new FormAttachment(wURL, margin);
          fdRunEveryRow.right = new FormAttachment(100, 0);
          wRunEveryRow.setLayoutData(fdRunEveryRow);
          wRunEveryRow.addSelectionListener(new SelectionAdapter()
          {
              public void widgetSelected(SelectionEvent e)
              {
                  setFlags();
              }
          });
  
          // FieldURL line
  