Source:
private void createTimeRangeSelection(Composite parent) { Composite timeRangeSelectionComposite = new Composite(parent, SWT.NONE); GridLayout compositeLayout = new GridLayout(2, false); compositeLayout.marginWidth = 0; timeRangeSelectionComposite.setLayout(compositeLayout); timeRangeSelectionComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false)); fTimeRangeSelectionButton = new Button(timeRangeSelectionComposite, SWT.CHECK); fTimeRangeSelectionButton.setText(Messages.SelectTracesWizardPage_TimeRangeOptionButton + " (" + TIMESTAMP_FORMAT.toPattern() + ")"); fTimeRangeSelectionButton.setLayoutData(GridDataFactory.swtDefaults().span(2, 1).create()); Label startTimeLabel = new Label(timeRangeSelectionComposite, SWT.NONE); startTimeLabel.setText(Messages.SelectTracesWizardPage_StartTime); startTimeLabel.setEnabled(false); fStartTimeRange = new Text(timeRangeSelectionComposite, SWT.SINGLE); fStartTimeRange.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false)); fStartTimeRange.setEnabled(false); Label endTimeLabel = new Label(timeRangeSelectionComposite, SWT.NONE); endTimeLabel.setText(Messages.SelectTracesWizardPage_EndTime); endTimeLabel.setEnabled(false); fEndTimeRange = new Text(timeRangeSelectionComposite, SWT.SINGLE); fEndTimeRange.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false)); fEndTimeRange.setEnabled(false); fTimeRangeSelectionButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { startTimeLabel.setEnabled(fTimeRangeSelectionButton.getSelection()); fStartTimeRange.setEnabled(fTimeRangeSelectionButton.getSelection()); endTimeLabel.setEnabled(fTimeRangeSelectionButton.getSelection()); fEndTimeRange.setEnabled(fTimeRangeSelectionButton.getSelection()); } }); FocusListener focusListener = new FocusListener() { @Override public void focusLost(FocusEvent e) { validateTimeRange(); } @Override public void focusGained(FocusEvent e) { setErrorMessage(null); setPageComplete(true); } }; fStartTimeRange.addFocusListener(focusListener); fEndTimeRange.addFocusListener(focusListener); }

Target:
private void createTimeRangeSelection(Composite parent) { Composite timeRangeSelectionComposite = new Composite(parent, SWT.NONE); GridLayout compositeLayout = new GridLayout(2, false); compositeLayout.marginWidth = 0; timeRangeSelectionComposite.setLayout(compositeLayout); timeRangeSelectionComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false)); fTimeRangeSelectionButton = new Button(timeRangeSelectionComposite, SWT.CHECK); fTimeRangeSelectionButton.setText(Messages.SelectTracesWizardPage_TimeRangeOptionButton + " (" + TIMESTAMP_FORMAT.toPattern() + ")"); fTimeRangeSelectionButton.setLayoutData(GridDataFactory.swtDefaults().span(2, 1).create()); Label startTimeLabel = new Label(timeRangeSelectionComposite, SWT.NONE); startTimeLabel.setText(Messages.SelectTracesWizardPage_StartTime); startTimeLabel.setEnabled(false); fStartTimeRange = new Text(timeRangeSelectionComposite, SWT.BORDER); fStartTimeRange.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false)); fStartTimeRange.setEnabled(false); Label endTimeLabel = new Label(timeRangeSelectionComposite, SWT.NONE); endTimeLabel.setText(Messages.SelectTracesWizardPage_EndTime); endTimeLabel.setEnabled(false); fEndTimeRange = new Text(timeRangeSelectionComposite, SWT.BORDER); fEndTimeRange.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false)); fEndTimeRange.setEnabled(false); fTimeRangeSelectionButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { startTimeLabel.setEnabled(fTimeRangeSelectionButton.getSelection()); fStartTimeRange.setEnabled(fTimeRangeSelectionButton.getSelection()); endTimeLabel.setEnabled(fTimeRangeSelectionButton.getSelection()); fEndTimeRange.setEnabled(fTimeRangeSelectionButton.getSelection()); } }); FocusListener focusListener = new FocusListener() { @Override public void focusLost(FocusEvent e) { validateTimeRange(); } @Override public void focusGained(FocusEvent e) { setErrorMessage(null); setPageComplete(true); } }; fStartTimeRange.addFocusListener(focusListener); fEndTimeRange.addFocusListener(focusListener); }