Program: 121298
Project: 121298
Buggy source:
private void createDownComposite(Composite parent){
  FormData data=null;
  createAccount=new Composite(parent,SWT.NONE);
  createAccount.setBackground(parent.getBackground());
  createAccount.setLayout(new FormLayout());
  Label createLabel=new Label(createAccount,SWT.NONE);
  data=new FormData();
  data.top=new FormAttachment(0,10);
  data.left=new FormAttachment(0,10);
  data.bottom=new FormAttachment(0,30);
  createLabel.setText(Messages.getString("String_Node_Str"));
  createLabel.setLayoutData(data);
  createLabel.setFont(font);
  createLabel.setBackground(createAccount.getBackground());
  createLabel.forceFocus();
  link=new Hyperlink(createAccount,SWT.NONE);
  data=new FormData();
  data.top=new FormAttachment(createLabel,0,SWT.TOP);
  data.left=new FormAttachment(createLabel,0,SWT.RIGHT);
  data.bottom=new FormAttachment(createLabel,0,SWT.BOTTOM);
  link.setText(Messages.getString("String_Node_Str"));
  link.setForeground(LoginComposite.YELLOW_GREEN_COLOR);
  link.setBackground(createAccount.getBackground());
  link.setFont(font);
  link.setLayoutData(data);
  Label userNameLabel=new Label(createAccount,SWT.RIGHT);
  userNameLabel.setFont(font);
  GC gc=new GC(userNameLabel);
  Point tmpSize;
  Point labelSize=gc.stringExtent(Messages.getString("String_Node_Str"));
  tmpSize=gc.stringExtent(Messages.getString("String_Node_Str"));
  if (tmpSize.x > labelSize.x) {
    labelSize=tmpSize;
  }
  tmpSize=gc.stringExtent(Messages.getString("String_Node_Str"));
  if (tmpSize.x > labelSize.x) {
    labelSize=tmpSize;
  }
  tmpSize=gc.stringExtent(Messages.getString("String_Node_Str"));
  if (tmpSize.x > labelSize.x) {
    labelSize=tmpSize;
  }
  gc.dispose();
  data=new FormData();
  data.top=new FormAttachment(createLabel,20,SWT.BOTTOM);
  data.left=new FormAttachment(0,170 - labelSize.x);
  data.right=new FormAttachment(0,170);
  data.bottom=new FormAttachment(createLabel,40,SWT.BOTTOM);
  userNameLabel.setText(Messages.getString("String_Node_Str"));
  userNameLabel.setLayoutData(data);
  userNameLabel.setBackground(createAccount.getBackground());
  userNameText=new Text(createAccount,SWT.BORDER);
  data=new FormData();
  data.top=new FormAttachment(userNameLabel,0,SWT.TOP);
  data.left=new FormAttachment(userNameLabel,10,SWT.RIGHT);
  data.right=new FormAttachment(userNameLabel,200,SWT.RIGHT);
  data.bottom=new FormAttachment(userNameLabel,0,SWT.BOTTOM);
  userNameText.setLayoutData(data);
  userNameText.setFont(font);
  userNameText.forceFocus();
  Label needLabelforUserName=new Label(createAccount,SWT.NONE);
  data=new FormData();
  data.top=new FormAttachment(userNameText,0,SWT.TOP);
  data.left=new FormAttachment(userNameText,5,SWT.RIGHT);
  data.right=new FormAttachment(userNameText,10,SWT.RIGHT);
  data.bottom=new FormAttachment(userNameText,0,SWT.BOTTOM);
  needLabelforUserName.setText("String_Node_Str");
  needLabelforUserName.setFont(font);
  needLabelforUserName.setLayoutData(data);
  Color red=new Color(null,255,0,0);
  needLabelforUserName.setForeground(red);
  needLabelforUserName.setBackground(createAccount.getBackground());
  red.dispose();
  Label emailLabel=new Label(createAccount,SWT.RIGHT);
  data=new FormData();
  data.top=new FormAttachment(userNameLabel,5,SWT.BOTTOM);
  data.left=new FormAttachment(userNameLabel,-labelSize.x,SWT.RIGHT);
  data.right=new FormAttachment(userNameLabel,0,SWT.RIGHT);
  data.bottom=new FormAttachment(userNameLabel,25,SWT.BOTTOM);
  emailLabel.setText(Messages.getString("String_Node_Str"));
  emailLabel.setBackground(createAccount.getBackground());
  emailLabel.setLayoutData(data);
  emailLabel.setFont(font);
  emailText=new Text(createAccount,SWT.BORDER);
  data=new FormData();
  data.top=new FormAttachment(emailLabel,0,SWT.TOP);
  data.left=new FormAttachment(userNameText,0,SWT.LEFT);
  data.right=new FormAttachment(userNameText,0,SWT.RIGHT);
  data.bottom=new FormAttachment(emailLabel,0,SWT.BOTTOM);
  emailText.setLayoutData(data);
  emailText.setFont(font);
  Label needLabel=new Label(createAccount,SWT.NONE);
  data=new FormData();
  data.top=new FormAttachment(emailLabel,0,SWT.TOP);
  data.left=new FormAttachment(emailText,5,SWT.RIGHT);
  data.right=new FormAttachment(emailText,10,SWT.RIGHT);
  data.bottom=new FormAttachment(emailLabel,0,SWT.BOTTOM);
  needLabel.setText("String_Node_Str");
  needLabel.setFont(font);
  needLabel.setLayoutData(data);
  red=new Color(null,255,0,0);
  needLabel.setForeground(red);
  needLabel.setBackground(createAccount.getBackground());
  red.dispose();
  Label passwordLabel=new Label(createAccount,SWT.RIGHT);
  data=new FormData();
  data.top=new FormAttachment(emailLabel,5,SWT.BOTTOM);
  data.left=new FormAttachment(emailLabel,-labelSize.x,SWT.RIGHT);
  data.right=new FormAttachment(emailLabel,0,SWT.RIGHT);
  data.bottom=new FormAttachment(emailLabel,25,SWT.BOTTOM);
  passwordLabel.setLayoutData(data);
  passwordLabel.setBackground(createAccount.getBackground());
  passwordLabel.setText(Messages.getString("String_Node_Str"));
  passwordLabel.setFont(font);
  passwordText=new Text(createAccount,SWT.BORDER);
  data=new FormData();
  data.top=new FormAttachment(passwordLabel,0,SWT.TOP);
  data.left=new FormAttachment(emailText,0,SWT.LEFT);
  data.right=new FormAttachment(emailText,0,SWT.RIGHT);
  data.bottom=new FormAttachment(passwordLabel,0,SWT.BOTTOM);
  passwordText.setLayoutData(data);
  passwordText.setEchoChar('*');
  passwordText.setFont(font);
  Label needLabelforPassword=new Label(createAccount,SWT.NONE);
  data=new FormData();
  data.top=new FormAttachment(passwordText,0,SWT.TOP);
  data.left=new FormAttachment(passwordText,5,SWT.RIGHT);
  data.right=new FormAttachment(passwordText,10,SWT.RIGHT);
  data.bottom=new FormAttachment(passwordText,0,SWT.BOTTOM);
  needLabelforPassword.setText("String_Node_Str");
  needLabelforPassword.setFont(font);
  needLabelforPassword.setLayoutData(data);
  red=new Color(null,255,0,0);
  needLabelforPassword.setForeground(red);
  needLabelforPassword.setBackground(createAccount.getBackground());
  red.dispose();
  Label passwordAgainLabel=new Label(createAccount,SWT.RIGHT);
  data=new FormData();
  data.top=new FormAttachment(passwordLabel,5,SWT.BOTTOM);
  data.left=new FormAttachment(passwordLabel,-labelSize.x,SWT.RIGHT);
  data.right=new FormAttachment(passwordLabel,0,SWT.RIGHT);
  data.bottom=new FormAttachment(passwordLabel,25,SWT.BOTTOM);
  passwordAgainLabel.setLayoutData(data);
  passwordAgainLabel.setBackground(createAccount.getBackground());
  passwordAgainLabel.setText(Messages.getString("String_Node_Str"));
  passwordAgainLabel.setFont(font);
  passwordAgainText=new Text(createAccount,SWT.BORDER);
  data=new FormData();
  data.top=new FormAttachment(passwordAgainLabel,0,SWT.TOP);
  data.left=new FormAttachment(passwordText,0,SWT.LEFT);
  data.right=new FormAttachment(passwordText,0,SWT.RIGHT);
  data.bottom=new FormAttachment(passwordAgainLabel,0,SWT.BOTTOM);
  passwordAgainText.setLayoutData(data);
  passwordAgainText.setEchoChar('*');
  passwordAgainText.setFont(font);
  Label needLabelforPasswordAgain=new Label(createAccount,SWT.NONE);
  data=new FormData();
  data.top=new FormAttachment(passwordAgainText,0,SWT.TOP);
  data.left=new FormAttachment(passwordAgainText,5,SWT.RIGHT);
  data.right=new FormAttachment(passwordAgainText,10,SWT.RIGHT);
  data.bottom=new FormAttachment(passwordAgainText,0,SWT.BOTTOM);
  needLabelforPasswordAgain.setText("String_Node_Str");
  needLabelforPasswordAgain.setFont(font);
  needLabelforPasswordAgain.setLayoutData(data);
  red=new Color(null,255,0,0);
  needLabelforPasswordAgain.setForeground(red);
  needLabelforPasswordAgain.setBackground(createAccount.getBackground());
  red.dispose();
  password2ValidateLabel=new Label(createAccount,SWT.NONE);
  data=new FormData();
  data.top=new FormAttachment(needLabelforPasswordAgain,0,SWT.TOP);
  data.left=new FormAttachment(needLabelforPasswordAgain,10,SWT.RIGHT);
  data.right=new FormAttachment(needLabelforPasswordAgain,110,SWT.RIGHT);
  data.bottom=new FormAttachment(needLabelforPasswordAgain,0,SWT.BOTTOM);
  password2ValidateLabel.setBackground(createAccount.getBackground());
  password2ValidateLabel.setLayoutData(data);
  Label countryLabel=new Label(createAccount,SWT.RIGHT);
  countryLabel.setFont(font);
  gc=new GC(countryLabel);
  labelSize=gc.stringExtent(Messages.getString("String_Node_Str"));
  gc.dispose();
  data=new FormData();
  data.top=new FormAttachment(passwordAgainLabel,5,SWT.BOTTOM);
  data.left=new FormAttachment(passwordAgainLabel,-labelSize.x,SWT.RIGHT);
  data.right=new FormAttachment(passwordAgainLabel,0,SWT.RIGHT);
  data.bottom=new FormAttachment(passwordAgainLabel,25,SWT.BOTTOM);
  countryLabel.setText(Messages.getString("String_Node_Str"));
  countryLabel.setLayoutData(data);
  countryLabel.setBackground(createAccount.getBackground());
  countryCombo=new Combo(createAccount,SWT.BORDER | SWT.READ_ONLY);
  data=new FormData();
  data.top=new FormAttachment(countryLabel,0,SWT.TOP);
  data.left=new FormAttachment(emailText,0,SWT.LEFT);
  data.right=new FormAttachment(emailText,0,SWT.RIGHT);
  data.bottom=new FormAttachment(countryLabel,0,SWT.BOTTOM);
  countryCombo.setLayoutData(data);
  countryCombo.setItems(initiateCountryList());
  countryCombo.select(countryToSelect);
  countryCombo.setFont(font);
  agreeButton=new Button(createAccount,SWT.CHECK);
  gc=new GC(agreeButton);
  labelSize=gc.stringExtent(Messages.getString("String_Node_Str"));
  gc.dispose();
  data=new FormData();
  data.top=new FormAttachment(countryCombo,20,SWT.BOTTOM);
  data.left=new FormAttachment(countryCombo,0,SWT.LEFT);
  agreeButton.setText(Messages.getString("String_Node_Str"));
  agreeButton.setLayoutData(data);
  agreeButton.setFont(font);
  agreeButton.setBackground(createAccount.getBackground());
  agreeButton.setSelection(false);
  improveButton=new Button(createAccount,SWT.CHECK);
  data=new FormData();
  data.top=new FormAttachment(agreeButton,0,SWT.BOTTOM);
  data.left=new FormAttachment(agreeButton,0,SWT.LEFT);
  data.right=new FormAttachment(agreeButton,500,SWT.LEFT);
  data.bottom=new FormAttachment(agreeButton,30,SWT.BOTTOM);
  improveButton.setText(Messages.getString("String_Node_Str"));
  improveButton.setLayoutData(data);
  improveButton.setBackground(createAccount.getBackground());
  improveButton.setFont(font);
  improveButton.setSelection(true);
  final IPreferenceStore preferenceStore=CoreRuntimePlugin.getInstance().getPreferenceStore();
  if (preferenceStore.getBoolean(ITalendCorePrefConstants.DATA_COLLECTOR_ENABLED)) {
    improveButton.setSelection(true);
  }
 else {
    improveButton.setSelection(false);
  }
  improveButton.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent e){
      preferenceStore.setValue(ITalendCorePrefConstants.DATA_COLLECTOR_ENABLED,improveButton.getSelection());
      if (!improveButton.getSelection()) {
        TokenCollectorFactory.getFactory().send();
      }
    }
  }
);
  Hyperlink readMore=new Hyperlink(createAccount,SWT.NONE);
  data=new FormData();
  data.top=new FormAttachment(improveButton,0,SWT.BOTTOM);
  data.left=new FormAttachment(improveButton,5,SWT.LEFT);
  data.right=new FormAttachment(improveButton,100,SWT.LEFT);
  data.bottom=new FormAttachment(improveButton,20,SWT.BOTTOM);
  readMore.setText(Messages.getString("String_Node_Str"));
  readMore.setBackground(createAccount.getBackground());
  readMore.setLayoutData(data);
  readMore.setFont(font);
  Color blue=new Color(null,0,0,255);
  readMore.setForeground(blue);
  blue.dispose();
  readMore.addHyperlinkListener(new HyperlinkAdapter(){
    @Override public void linkActivated(    HyperlinkEvent e){
      String url="String_Node_Str";
      TalendBrowserLaunchHelper.openURL(url);
    }
  }
);
  createAccountButton=new Button(createAccount,SWT.PUSH);
  data=new FormData();
  data.top=new FormAttachment(readMore,10,SWT.BOTTOM);
  data.left=new FormAttachment(improveButton,0,SWT.LEFT);
  data.right=new FormAttachment(improveButton,180,SWT.LEFT);
  data.bottom=new FormAttachment(readMore,35,SWT.BOTTOM);
  createAccountButton.setLayoutData(data);
  createAccountButton.setText(Messages.getString("String_Node_Str"));
  createAccountButton.setEnabled(false);
  createAccountButton.setFont(font);
  proxySettingButton=new Button(createAccount,SWT.PUSH);
  data=new FormData();
  data.left=new FormAttachment(0,20);
  data.bottom=new FormAttachment(100,-20);
  data.height=25;
  proxySettingButton.setText(Messages.getString("String_Node_Str"));
  proxySettingButton.setLayoutData(data);
  proxySettingButton.setFont(font);
  skipButton=new Button(createAccount,SWT.PUSH);
  data=new FormData();
  data.right=new FormAttachment(100,-20);
  data.bottom=new FormAttachment(100,-20);
  data.height=25;
  data.width=60;
  skipButton.setText(Messages.getString("String_Node_Str"));
  skipButton.setLayoutData(data);
  skipButton.setFont(font);
  connectAccount=new Composite(parent,SWT.NONE);
  connectAccount.setBackground(parent.getBackground());
  connectAccount.setLayout(new FormLayout());
  Label loginLabel=new Label(connectAccount,SWT.NONE);
  loginLabel.setFont(font);
  gc=new GC(loginLabel);
  labelSize=gc.stringExtent(Messages.getString("String_Node_Str"));
  gc.dispose();
  data=new FormData();
  data.top=new FormAttachment(0,10);
  data.left=new FormAttachment(0,10);
  data.right=new FormAttachment(0,10 + labelSize.x);
  data.bottom=new FormAttachment(0,30);
  loginLabel.setText(Messages.getString("String_Node_Str"));
  loginLabel.setLayoutData(data);
  loginLabel.setBackground(connectAccount.getBackground());
  linkToCreate=new Hyperlink(connectAccount,SWT.NONE);
  data=new FormData();
  data.top=new FormAttachment(loginLabel,0,SWT.TOP);
  data.left=new FormAttachment(loginLabel,5,SWT.RIGHT);
  data.bottom=new FormAttachment(loginLabel,0,SWT.BOTTOM);
  linkToCreate.setText(Messages.getString("String_Node_Str"));
  linkToCreate.setLayoutData(data);
  linkToCreate.setBackground(connectAccount.getBackground());
  linkToCreate.setForeground(LoginComposite.YELLOW_GREEN_COLOR);
  linkToCreate.setFont(font);
  Label emailLabelInConnect=new Label(connectAccount,SWT.RIGHT);
  emailLabelInConnect.setFont(font);
  gc=new GC(emailLabelInConnect);
  labelSize=gc.stringExtent(Messages.getString("String_Node_Str"));
  int newSize=gc.stringExtent(Messages.getString("String_Node_Str")).x;
  if (newSize > labelSize.x) {
    labelSize.x=newSize;
  }
  gc.dispose();
  data=new FormData();
  data.top=new FormAttachment(loginLabel,20,SWT.BOTTOM);
  data.left=new FormAttachment(0,170 - labelSize.x);
  data.right=new FormAttachment(0,170);
  data.bottom=new FormAttachment(loginLabel,40,SWT.BOTTOM);
  emailLabelInConnect.setText(Messages.getString("String_Node_Str"));
  emailLabelInConnect.setLayoutData(data);
  emailLabelInConnect.setBackground(connectAccount.getBackground());
  usernameTextForConnect=new Text(connectAccount,SWT.BORDER);
  data=new FormData();
  data.top=new FormAttachment(emailLabelInConnect,0,SWT.TOP);
  data.left=new FormAttachment(emailLabelInConnect,10,SWT.RIGHT);
  data.right=new FormAttachment(emailLabelInConnect,200,SWT.RIGHT);
  data.bottom=new FormAttachment(emailLabelInConnect,0,SWT.BOTTOM);
  usernameTextForConnect.setLayoutData(data);
  usernameTextForConnect.setFont(font);
  Label needLabel1=new Label(connectAccount,SWT.NONE);
  data=new FormData();
  data.top=new FormAttachment(emailLabelInConnect,0,SWT.TOP);
  data.left=new FormAttachment(usernameTextForConnect,5,SWT.RIGHT);
  data.right=new FormAttachment(usernameTextForConnect,10,SWT.RIGHT);
  data.bottom=new FormAttachment(emailLabelInConnect,0,SWT.BOTTOM);
  needLabel1.setText("String_Node_Str");
  needLabel1.setFont(font);
  needLabel1.setLayoutData(data);
  red=new Color(null,255,0,0);
  needLabel1.setForeground(red);
  needLabel1.setBackground(connectAccount.getBackground());
  red.dispose();
  Label passwordLabelInConnect=new Label(connectAccount,SWT.RIGHT);
  data=new FormData();
  data.top=new FormAttachment(emailLabelInConnect,5,SWT.BOTTOM);
  data.left=new FormAttachment(emailLabelInConnect,-labelSize.x,SWT.RIGHT);
  data.right=new FormAttachment(emailLabelInConnect,0,SWT.RIGHT);
  data.bottom=new FormAttachment(emailLabelInConnect,25,SWT.BOTTOM);
  passwordLabelInConnect.setText(Messages.getString("String_Node_Str"));
  passwordLabelInConnect.setLayoutData(data);
  passwordLabelInConnect.setBackground(connectAccount.getBackground());
  passwordLabelInConnect.setFont(font);
  passwordTextForconnect=new Text(connectAccount,SWT.BORDER);
  data=new FormData();
  data.top=new FormAttachment(passwordLabelInConnect,0,SWT.TOP);
  data.left=new FormAttachment(usernameTextForConnect,0,SWT.LEFT);
  data.right=new FormAttachment(usernameTextForConnect,0,SWT.RIGHT);
  data.bottom=new FormAttachment(passwordLabelInConnect,0,SWT.BOTTOM);
  passwordTextForconnect.setLayoutData(data);
  passwordTextForconnect.setEchoChar('*');
  passwordTextForconnect.setFont(font);
  Label needLabel2=new Label(connectAccount,SWT.NONE);
  data=new FormData();
  data.top=new FormAttachment(passwordLabelInConnect,0,SWT.TOP);
  data.left=new FormAttachment(passwordTextForconnect,5,SWT.RIGHT);
  data.right=new FormAttachment(passwordTextForconnect,10,SWT.RIGHT);
  data.bottom=new FormAttachment(passwordLabelInConnect,0,SWT.BOTTOM);
  needLabel2.setText("String_Node_Str");
  needLabel2.setFont(font);
  needLabel2.setLayoutData(data);
  red=new Color(null,255,0,0);
  needLabel2.setForeground(red);
  needLabel2.setBackground(connectAccount.getBackground());
  red.dispose();
  improveButtonInConnect=new Button(connectAccount,SWT.CHECK);
  data=new FormData();
  data.top=new FormAttachment(passwordTextForconnect,0,SWT.BOTTOM);
  data.left=new FormAttachment(passwordTextForconnect,0,SWT.LEFT);
  data.right=new FormAttachment(passwordTextForconnect,500,SWT.LEFT);
  data.bottom=new FormAttachment(passwordTextForconnect,30,SWT.BOTTOM);
  improveButtonInConnect.setText(Messages.getString("String_Node_Str"));
  improveButtonInConnect.setBackground(connectAccount.getBackground());
  improveButtonInConnect.setLayoutData(data);
  improveButtonInConnect.setSelection(true);
  improveButtonInConnect.setFont(font);
  Hyperlink readMoreInConnect=new Hyperlink(connectAccount,SWT.NONE);
  data=new FormData();
  data.top=new FormAttachment(improveButtonInConnect,0,SWT.BOTTOM);
  data.left=new FormAttachment(improveButtonInConnect,5,SWT.LEFT);
  data.right=new FormAttachment(improveButtonInConnect,100,SWT.LEFT);
  data.bottom=new FormAttachment(improveButtonInConnect,20,SWT.BOTTOM);
  readMoreInConnect.setText(Messages.getString("String_Node_Str"));
  readMoreInConnect.setFont(font);
  readMoreInConnect.setLayoutData(data);
  blue=new Color(null,0,0,255);
  readMoreInConnect.setForeground(blue);
  readMoreInConnect.setBackground(connectAccount.getBackground());
  blue.dispose();
  readMoreInConnect.addHyperlinkListener(new HyperlinkAdapter(){
    @Override public void linkActivated(    HyperlinkEvent e){
      String url="String_Node_Str";
      TalendBrowserLaunchHelper.openURL(url);
    }
  }
);
  connectButton=new Button(connectAccount,SWT.PUSH);
  data=new FormData();
  data.top=new FormAttachment(readMoreInConnect,20,SWT.BOTTOM);
  data.left=new FormAttachment(improveButtonInConnect,0,SWT.LEFT);
  data.right=new FormAttachment(improveButtonInConnect,80,SWT.LEFT);
  data.bottom=new FormAttachment(readMoreInConnect,45,SWT.BOTTOM);
  connectButton.setText(Messages.getString("String_Node_Str"));
  connectButton.setLayoutData(data);
  connectButton.setEnabled(false);
  connectButton.setFont(font);
  skipButtonForConnect=new Button(connectAccount,SWT.PUSH);
  data=new FormData();
  data.right=new FormAttachment(100,-20);
  data.bottom=new FormAttachment(100,-20);
  data.height=25;
  data.width=60;
  skipButtonForConnect.setText(Messages.getString("String_Node_Str"));
  skipButtonForConnect.setLayoutData(data);
  skipButtonForConnect.setFont(font);
  proxySettingButtonForConnect=new Button(connectAccount,SWT.PUSH);
  data=new FormData();
  data.left=new FormAttachment(0,20);
  data.bottom=new FormAttachment(100,-20);
  data.height=25;
  proxySettingButtonForConnect.setText(Messages.getString("String_Node_Str"));
  proxySettingButtonForConnect.setLayoutData(data);
  proxySettingButtonForConnect.setFont(font);
  stackLayout.topControl=createAccount;
  parent.layout();
}

Fixed version (ground truth):
private void createDownComposite(Composite parent){
  FormData data=null;
  createAccount=new Composite(parent,SWT.NONE);
  createAccount.setBackground(parent.getBackground());
  createAccount.setLayout(new FormLayout());
  Label createLabel=new Label(createAccount,SWT.NONE);
  data=new FormData();
  data.top=new FormAttachment(0,10);
  data.left=new FormAttachment(0,10);
  data.bottom=new FormAttachment(0,30);
  createLabel.setText(Messages.getString("String_Node_Str"));
  createLabel.setLayoutData(data);
  createLabel.setFont(font);
  createLabel.setBackground(createAccount.getBackground());
  createLabel.forceFocus();
  link=new Hyperlink(createAccount,SWT.NONE);
  data=new FormData();
  data.top=new FormAttachment(createLabel,0,SWT.TOP);
  data.left=new FormAttachment(createLabel,0,SWT.RIGHT);
  data.bottom=new FormAttachment(createLabel,0,SWT.BOTTOM);
  link.setText(Messages.getString("String_Node_Str"));
  link.setForeground(LoginComposite.YELLOW_GREEN_COLOR);
  link.setBackground(createAccount.getBackground());
  link.setFont(font);
  link.setLayoutData(data);
  Label userNameLabel=new Label(createAccount,SWT.RIGHT);
  userNameLabel.setFont(font);
  GC gc=new GC(userNameLabel);
  Point tmpSize;
  Point labelSize=gc.stringExtent(Messages.getString("String_Node_Str"));
  tmpSize=gc.stringExtent(Messages.getString("String_Node_Str"));
  if (tmpSize.x > labelSize.x) {
    labelSize=tmpSize;
  }
  tmpSize=gc.stringExtent(Messages.getString("String_Node_Str"));
  if (tmpSize.x > labelSize.x) {
    labelSize=tmpSize;
  }
  tmpSize=gc.stringExtent(Messages.getString("String_Node_Str"));
  if (tmpSize.x > labelSize.x) {
    labelSize=tmpSize;
  }
  gc.dispose();
  data=new FormData();
  data.top=new FormAttachment(createLabel,20,SWT.BOTTOM);
  data.left=new FormAttachment(0,170 - labelSize.x);
  data.right=new FormAttachment(0,170);
  data.bottom=new FormAttachment(createLabel,40,SWT.BOTTOM);
  userNameLabel.setText(Messages.getString("String_Node_Str"));
  userNameLabel.setLayoutData(data);
  userNameLabel.setBackground(createAccount.getBackground());
  userNameText=new Text(createAccount,SWT.BORDER);
  data=new FormData();
  data.top=new FormAttachment(userNameLabel,0,SWT.TOP);
  data.left=new FormAttachment(userNameLabel,10,SWT.RIGHT);
  data.right=new FormAttachment(userNameLabel,200,SWT.RIGHT);
  data.bottom=new FormAttachment(userNameLabel,0,SWT.BOTTOM);
  userNameText.setLayoutData(data);
  userNameText.setFont(font);
  userNameText.forceFocus();
  Label needLabelforUserName=new Label(createAccount,SWT.NONE);
  data=new FormData();
  data.top=new FormAttachment(userNameText,0,SWT.TOP);
  data.left=new FormAttachment(userNameText,5,SWT.RIGHT);
  data.right=new FormAttachment(userNameText,10,SWT.RIGHT);
  data.bottom=new FormAttachment(userNameText,0,SWT.BOTTOM);
  needLabelforUserName.setText("String_Node_Str");
  needLabelforUserName.setFont(font);
  needLabelforUserName.setLayoutData(data);
  Color red=new Color(null,255,0,0);
  needLabelforUserName.setForeground(red);
  needLabelforUserName.setBackground(createAccount.getBackground());
  red.dispose();
  Label emailLabel=new Label(createAccount,SWT.RIGHT);
  data=new FormData();
  data.top=new FormAttachment(userNameLabel,5,SWT.BOTTOM);
  data.left=new FormAttachment(userNameLabel,-labelSize.x,SWT.RIGHT);
  data.right=new FormAttachment(userNameLabel,0,SWT.RIGHT);
  data.bottom=new FormAttachment(userNameLabel,25,SWT.BOTTOM);
  emailLabel.setText(Messages.getString("String_Node_Str"));
  emailLabel.setBackground(createAccount.getBackground());
  emailLabel.setLayoutData(data);
  emailLabel.setFont(font);
  emailText=new Text(createAccount,SWT.BORDER);
  data=new FormData();
  data.top=new FormAttachment(emailLabel,0,SWT.TOP);
  data.left=new FormAttachment(userNameText,0,SWT.LEFT);
  data.right=new FormAttachment(userNameText,0,SWT.RIGHT);
  data.bottom=new FormAttachment(emailLabel,0,SWT.BOTTOM);
  emailText.setLayoutData(data);
  emailText.setFont(font);
  Label needLabel=new Label(createAccount,SWT.NONE);
  data=new FormData();
  data.top=new FormAttachment(emailLabel,0,SWT.TOP);
  data.left=new FormAttachment(emailText,5,SWT.RIGHT);
  data.right=new FormAttachment(emailText,10,SWT.RIGHT);
  data.bottom=new FormAttachment(emailLabel,0,SWT.BOTTOM);
  needLabel.setText("String_Node_Str");
  needLabel.setFont(font);
  needLabel.setLayoutData(data);
  red=new Color(null,255,0,0);
  needLabel.setForeground(red);
  needLabel.setBackground(createAccount.getBackground());
  red.dispose();
  Label passwordLabel=new Label(createAccount,SWT.RIGHT);
  data=new FormData();
  data.top=new FormAttachment(emailLabel,5,SWT.BOTTOM);
  data.left=new FormAttachment(emailLabel,-labelSize.x,SWT.RIGHT);
  data.right=new FormAttachment(emailLabel,0,SWT.RIGHT);
  data.bottom=new FormAttachment(emailLabel,25,SWT.BOTTOM);
  passwordLabel.setLayoutData(data);
  passwordLabel.setBackground(createAccount.getBackground());
  passwordLabel.setText(Messages.getString("String_Node_Str"));
  passwordLabel.setFont(font);
  passwordText=new Text(createAccount,SWT.BORDER);
  data=new FormData();
  data.top=new FormAttachment(passwordLabel,0,SWT.TOP);
  data.left=new FormAttachment(emailText,0,SWT.LEFT);
  data.right=new FormAttachment(emailText,0,SWT.RIGHT);
  data.bottom=new FormAttachment(passwordLabel,0,SWT.BOTTOM);
  passwordText.setLayoutData(data);
  passwordText.setEchoChar('*');
  passwordText.setFont(font);
  Label needLabelforPassword=new Label(createAccount,SWT.NONE);
  data=new FormData();
  data.top=new FormAttachment(passwordText,0,SWT.TOP);
  data.left=new FormAttachment(passwordText,5,SWT.RIGHT);
  data.right=new FormAttachment(passwordText,10,SWT.RIGHT);
  data.bottom=new FormAttachment(passwordText,0,SWT.BOTTOM);
  needLabelforPassword.setText("String_Node_Str");
  needLabelforPassword.setFont(font);
  needLabelforPassword.setLayoutData(data);
  red=new Color(null,255,0,0);
  needLabelforPassword.setForeground(red);
  needLabelforPassword.setBackground(createAccount.getBackground());
  red.dispose();
  Label passwordAgainLabel=new Label(createAccount,SWT.RIGHT);
  data=new FormData();
  data.top=new FormAttachment(passwordLabel,5,SWT.BOTTOM);
  data.left=new FormAttachment(passwordLabel,-labelSize.x,SWT.RIGHT);
  data.right=new FormAttachment(passwordLabel,0,SWT.RIGHT);
  data.bottom=new FormAttachment(passwordLabel,25,SWT.BOTTOM);
  passwordAgainLabel.setLayoutData(data);
  passwordAgainLabel.setBackground(createAccount.getBackground());
  passwordAgainLabel.setText(Messages.getString("String_Node_Str"));
  passwordAgainLabel.setFont(font);
  passwordAgainText=new Text(createAccount,SWT.BORDER);
  data=new FormData();
  data.top=new FormAttachment(passwordAgainLabel,0,SWT.TOP);
  data.left=new FormAttachment(passwordText,0,SWT.LEFT);
  data.right=new FormAttachment(passwordText,0,SWT.RIGHT);
  data.bottom=new FormAttachment(passwordAgainLabel,0,SWT.BOTTOM);
  passwordAgainText.setLayoutData(data);
  passwordAgainText.setEchoChar('*');
  passwordAgainText.setFont(font);
  Label needLabelforPasswordAgain=new Label(createAccount,SWT.NONE);
  data=new FormData();
  data.top=new FormAttachment(passwordAgainText,0,SWT.TOP);
  data.left=new FormAttachment(passwordAgainText,5,SWT.RIGHT);
  data.right=new FormAttachment(passwordAgainText,10,SWT.RIGHT);
  data.bottom=new FormAttachment(passwordAgainText,0,SWT.BOTTOM);
  needLabelforPasswordAgain.setText("String_Node_Str");
  needLabelforPasswordAgain.setFont(font);
  needLabelforPasswordAgain.setLayoutData(data);
  red=new Color(null,255,0,0);
  needLabelforPasswordAgain.setForeground(red);
  needLabelforPasswordAgain.setBackground(createAccount.getBackground());
  red.dispose();
  password2ValidateLabel=new Label(createAccount,SWT.NONE);
  data=new FormData();
  data.top=new FormAttachment(needLabelforPasswordAgain,0,SWT.TOP);
  data.left=new FormAttachment(needLabelforPasswordAgain,10,SWT.RIGHT);
  data.right=new FormAttachment(needLabelforPasswordAgain,110,SWT.RIGHT);
  data.bottom=new FormAttachment(needLabelforPasswordAgain,0,SWT.BOTTOM);
  password2ValidateLabel.setBackground(createAccount.getBackground());
  password2ValidateLabel.setLayoutData(data);
  Label countryLabel=new Label(createAccount,SWT.RIGHT);
  countryLabel.setFont(font);
  gc=new GC(countryLabel);
  labelSize=gc.stringExtent(Messages.getString("String_Node_Str"));
  gc.dispose();
  data=new FormData();
  data.top=new FormAttachment(passwordAgainLabel,5,SWT.BOTTOM);
  data.left=new FormAttachment(passwordAgainLabel,-labelSize.x,SWT.RIGHT);
  data.right=new FormAttachment(passwordAgainLabel,0,SWT.RIGHT);
  data.bottom=new FormAttachment(passwordAgainLabel,25,SWT.BOTTOM);
  countryLabel.setText(Messages.getString("String_Node_Str"));
  countryLabel.setLayoutData(data);
  countryLabel.setBackground(createAccount.getBackground());
  countryCombo=new Combo(createAccount,SWT.BORDER | SWT.READ_ONLY);
  data=new FormData();
  data.top=new FormAttachment(countryLabel,0,SWT.TOP);
  data.left=new FormAttachment(emailText,0,SWT.LEFT);
  data.right=new FormAttachment(emailText,0,SWT.RIGHT);
  data.bottom=new FormAttachment(countryLabel,0,SWT.BOTTOM);
  countryCombo.setLayoutData(data);
  countryCombo.setItems(initiateCountryList());
  countryCombo.select(countryToSelect);
  countryCombo.setFont(font);
  agreeButton=new Button(createAccount,SWT.CHECK);
  gc=new GC(agreeButton);
  labelSize=gc.stringExtent(Messages.getString("String_Node_Str"));
  gc.dispose();
  data=new FormData();
  data.top=new FormAttachment(countryCombo,20,SWT.BOTTOM);
  data.left=new FormAttachment(countryCombo,0,SWT.LEFT);
  agreeButton.setText(Messages.getString("String_Node_Str"));
  agreeButton.setLayoutData(data);
  agreeButton.setFont(font);
  agreeButton.setBackground(createAccount.getBackground());
  agreeButton.setSelection(false);
  Hyperlink readMore=new Hyperlink(createAccount,SWT.NONE);
  data=new FormData();
  data.top=new FormAttachment(agreeButton,0,SWT.TOP);
  data.left=new FormAttachment(agreeButton,0,SWT.RIGHT);
  data.bottom=new FormAttachment(agreeButton,0,SWT.BOTTOM);
  readMore.setText(Messages.getString("String_Node_Str"));
  readMore.setBackground(createAccount.getBackground());
  readMore.setLayoutData(data);
  readMore.setFont(font);
  Color blue=new Color(null,0,0,255);
  readMore.setForeground(blue);
  blue.dispose();
  readMore.addHyperlinkListener(new HyperlinkAdapter(){
    @Override public void linkActivated(    HyperlinkEvent e){
      String url="String_Node_Str";
      TalendBrowserLaunchHelper.openURL(url);
    }
  }
);
  improveButton=new Button(createAccount,SWT.CHECK);
  data=new FormData();
  data.top=new FormAttachment(agreeButton,5,SWT.BOTTOM);
  data.left=new FormAttachment(agreeButton,0,SWT.LEFT);
  data.bottom=new FormAttachment(agreeButton,20,SWT.BOTTOM);
  improveButton.setText(Messages.getString("String_Node_Str"));
  improveButton.setLayoutData(data);
  improveButton.setBackground(createAccount.getBackground());
  improveButton.setFont(font);
  improveButton.setSelection(true);
  final IPreferenceStore preferenceStore=CoreRuntimePlugin.getInstance().getPreferenceStore();
  if (preferenceStore.getBoolean(ITalendCorePrefConstants.DATA_COLLECTOR_ENABLED)) {
    improveButton.setSelection(true);
  }
 else {
    improveButton.setSelection(false);
  }
  improveButton.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent e){
      preferenceStore.setValue(ITalendCorePrefConstants.DATA_COLLECTOR_ENABLED,improveButton.getSelection());
      if (!improveButton.getSelection()) {
        TokenCollectorFactory.getFactory().send();
      }
    }
  }
);
  createAccountButton=new Button(createAccount,SWT.PUSH);
  data=new FormData();
  data.top=new FormAttachment(improveButton,10,SWT.BOTTOM);
  data.left=new FormAttachment(improveButton,0,SWT.LEFT);
  data.right=new FormAttachment(improveButton,180,SWT.LEFT);
  data.bottom=new FormAttachment(improveButton,35,SWT.BOTTOM);
  createAccountButton.setLayoutData(data);
  createAccountButton.setText(Messages.getString("String_Node_Str"));
  createAccountButton.setEnabled(false);
  createAccountButton.setFont(font);
  proxySettingButton=new Button(createAccount,SWT.PUSH);
  data=new FormData();
  data.left=new FormAttachment(0,20);
  data.bottom=new FormAttachment(100,-20);
  data.height=25;
  proxySettingButton.setText(Messages.getString("String_Node_Str"));
  proxySettingButton.setLayoutData(data);
  proxySettingButton.setFont(font);
  skipButton=new Button(createAccount,SWT.PUSH);
  data=new FormData();
  data.right=new FormAttachment(100,-20);
  data.bottom=new FormAttachment(100,-20);
  data.height=25;
  data.width=60;
  skipButton.setText(Messages.getString("String_Node_Str"));
  skipButton.setLayoutData(data);
  skipButton.setFont(font);
  connectAccount=new Composite(parent,SWT.NONE);
  connectAccount.setBackground(parent.getBackground());
  connectAccount.setLayout(new FormLayout());
  Label loginLabel=new Label(connectAccount,SWT.NONE);
  loginLabel.setFont(font);
  gc=new GC(loginLabel);
  labelSize=gc.stringExtent(Messages.getString("String_Node_Str"));
  gc.dispose();
  data=new FormData();
  data.top=new FormAttachment(0,10);
  data.left=new FormAttachment(0,10);
  data.right=new FormAttachment(0,10 + labelSize.x);
  data.bottom=new FormAttachment(0,30);
  loginLabel.setText(Messages.getString("String_Node_Str"));
  loginLabel.setLayoutData(data);
  loginLabel.setBackground(connectAccount.getBackground());
  linkToCreate=new Hyperlink(connectAccount,SWT.NONE);
  data=new FormData();
  data.top=new FormAttachment(loginLabel,0,SWT.TOP);
  data.left=new FormAttachment(loginLabel,5,SWT.RIGHT);
  data.bottom=new FormAttachment(loginLabel,0,SWT.BOTTOM);
  linkToCreate.setText(Messages.getString("String_Node_Str"));
  linkToCreate.setLayoutData(data);
  linkToCreate.setBackground(connectAccount.getBackground());
  linkToCreate.setForeground(LoginComposite.YELLOW_GREEN_COLOR);
  linkToCreate.setFont(font);
  Label emailLabelInConnect=new Label(connectAccount,SWT.RIGHT);
  emailLabelInConnect.setFont(font);
  gc=new GC(emailLabelInConnect);
  labelSize=gc.stringExtent(Messages.getString("String_Node_Str"));
  int newSize=gc.stringExtent(Messages.getString("String_Node_Str")).x;
  if (newSize > labelSize.x) {
    labelSize.x=newSize;
  }
  gc.dispose();
  data=new FormData();
  data.top=new FormAttachment(loginLabel,20,SWT.BOTTOM);
  data.left=new FormAttachment(0,170 - labelSize.x);
  data.right=new FormAttachment(0,170);
  data.bottom=new FormAttachment(loginLabel,40,SWT.BOTTOM);
  emailLabelInConnect.setText(Messages.getString("String_Node_Str"));
  emailLabelInConnect.setLayoutData(data);
  emailLabelInConnect.setBackground(connectAccount.getBackground());
  usernameTextForConnect=new Text(connectAccount,SWT.BORDER);
  data=new FormData();
  data.top=new FormAttachment(emailLabelInConnect,0,SWT.TOP);
  data.left=new FormAttachment(emailLabelInConnect,10,SWT.RIGHT);
  data.right=new FormAttachment(emailLabelInConnect,200,SWT.RIGHT);
  data.bottom=new FormAttachment(emailLabelInConnect,0,SWT.BOTTOM);
  usernameTextForConnect.setLayoutData(data);
  usernameTextForConnect.setFont(font);
  Label needLabel1=new Label(connectAccount,SWT.NONE);
  data=new FormData();
  data.top=new FormAttachment(emailLabelInConnect,0,SWT.TOP);
  data.left=new FormAttachment(usernameTextForConnect,5,SWT.RIGHT);
  data.right=new FormAttachment(usernameTextForConnect,10,SWT.RIGHT);
  data.bottom=new FormAttachment(emailLabelInConnect,0,SWT.BOTTOM);
  needLabel1.setText("String_Node_Str");
  needLabel1.setFont(font);
  needLabel1.setLayoutData(data);
  red=new Color(null,255,0,0);
  needLabel1.setForeground(red);
  needLabel1.setBackground(connectAccount.getBackground());
  red.dispose();
  Label passwordLabelInConnect=new Label(connectAccount,SWT.RIGHT);
  data=new FormData();
  data.top=new FormAttachment(emailLabelInConnect,5,SWT.BOTTOM);
  data.left=new FormAttachment(emailLabelInConnect,-labelSize.x,SWT.RIGHT);
  data.right=new FormAttachment(emailLabelInConnect,0,SWT.RIGHT);
  data.bottom=new FormAttachment(emailLabelInConnect,25,SWT.BOTTOM);
  passwordLabelInConnect.setText(Messages.getString("String_Node_Str"));
  passwordLabelInConnect.setLayoutData(data);
  passwordLabelInConnect.setBackground(connectAccount.getBackground());
  passwordLabelInConnect.setFont(font);
  passwordTextForconnect=new Text(connectAccount,SWT.BORDER);
  data=new FormData();
  data.top=new FormAttachment(passwordLabelInConnect,0,SWT.TOP);
  data.left=new FormAttachment(usernameTextForConnect,0,SWT.LEFT);
  data.right=new FormAttachment(usernameTextForConnect,0,SWT.RIGHT);
  data.bottom=new FormAttachment(passwordLabelInConnect,0,SWT.BOTTOM);
  passwordTextForconnect.setLayoutData(data);
  passwordTextForconnect.setEchoChar('*');
  passwordTextForconnect.setFont(font);
  Label needLabel2=new Label(connectAccount,SWT.NONE);
  data=new FormData();
  data.top=new FormAttachment(passwordLabelInConnect,0,SWT.TOP);
  data.left=new FormAttachment(passwordTextForconnect,5,SWT.RIGHT);
  data.right=new FormAttachment(passwordTextForconnect,10,SWT.RIGHT);
  data.bottom=new FormAttachment(passwordLabelInConnect,0,SWT.BOTTOM);
  needLabel2.setText("String_Node_Str");
  needLabel2.setFont(font);
  needLabel2.setLayoutData(data);
  red=new Color(null,255,0,0);
  needLabel2.setForeground(red);
  needLabel2.setBackground(connectAccount.getBackground());
  red.dispose();
  improveButtonInConnect=new Button(connectAccount,SWT.CHECK);
  data=new FormData();
  data.top=new FormAttachment(passwordTextForconnect,0,SWT.BOTTOM);
  data.left=new FormAttachment(passwordTextForconnect,0,SWT.LEFT);
  data.right=new FormAttachment(passwordTextForconnect,500,SWT.LEFT);
  data.bottom=new FormAttachment(passwordTextForconnect,30,SWT.BOTTOM);
  improveButtonInConnect.setText(Messages.getString("String_Node_Str"));
  improveButtonInConnect.setBackground(connectAccount.getBackground());
  improveButtonInConnect.setLayoutData(data);
  improveButtonInConnect.setSelection(true);
  improveButtonInConnect.setFont(font);
  Hyperlink readMoreInConnect=new Hyperlink(connectAccount,SWT.NONE);
  data=new FormData();
  data.top=new FormAttachment(improveButtonInConnect,0,SWT.BOTTOM);
  data.left=new FormAttachment(improveButtonInConnect,5,SWT.LEFT);
  data.right=new FormAttachment(improveButtonInConnect,100,SWT.LEFT);
  data.bottom=new FormAttachment(improveButtonInConnect,20,SWT.BOTTOM);
  readMoreInConnect.setText(Messages.getString("String_Node_Str"));
  readMoreInConnect.setFont(font);
  readMoreInConnect.setLayoutData(data);
  blue=new Color(null,0,0,255);
  readMoreInConnect.setForeground(blue);
  readMoreInConnect.setBackground(connectAccount.getBackground());
  blue.dispose();
  readMoreInConnect.addHyperlinkListener(new HyperlinkAdapter(){
    @Override public void linkActivated(    HyperlinkEvent e){
      String url="String_Node_Str";
      TalendBrowserLaunchHelper.openURL(url);
    }
  }
);
  connectButton=new Button(connectAccount,SWT.PUSH);
  data=new FormData();
  data.top=new FormAttachment(readMoreInConnect,20,SWT.BOTTOM);
  data.left=new FormAttachment(improveButtonInConnect,0,SWT.LEFT);
  data.right=new FormAttachment(improveButtonInConnect,80,SWT.LEFT);
  data.bottom=new FormAttachment(readMoreInConnect,45,SWT.BOTTOM);
  connectButton.setText(Messages.getString("String_Node_Str"));
  connectButton.setLayoutData(data);
  connectButton.setEnabled(false);
  connectButton.setFont(font);
  skipButtonForConnect=new Button(connectAccount,SWT.PUSH);
  data=new FormData();
  data.right=new FormAttachment(100,-20);
  data.bottom=new FormAttachment(100,-20);
  data.height=25;
  data.width=60;
  skipButtonForConnect.setText(Messages.getString("String_Node_Str"));
  skipButtonForConnect.setLayoutData(data);
  skipButtonForConnect.setFont(font);
  proxySettingButtonForConnect=new Button(connectAccount,SWT.PUSH);
  data=new FormData();
  data.left=new FormAttachment(0,20);
  data.bottom=new FormAttachment(100,-20);
  data.height=25;
  proxySettingButtonForConnect.setText(Messages.getString("String_Node_Str"));
  proxySettingButtonForConnect.setLayoutData(data);
  proxySettingButtonForConnect.setFont(font);
  stackLayout.topControl=createAccount;
  parent.layout();
}