Package tk.eclipse.plugin.htmleditor

Source Code of tk.eclipse.plugin.htmleditor.AbstractValidationDialog

package tk.eclipse.plugin.htmleditor;

import org.eclipse.jface.dialogs.Dialog;
import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.CLabel;
import org.eclipse.swt.events.ModifyEvent;
import org.eclipse.swt.events.ModifyListener;
import org.eclipse.swt.graphics.Image;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Text;


public abstract class AbstractValidationDialog extends Dialog {
 
  private CLabel errorLabel;
  private static Image errorImage
    = HTMLPlugin.getDefault().getImageRegistry().get(HTMLPlugin.ICON_ERROR);
 
  protected AbstractValidationDialog(Shell parentShell) {
    super(parentShell);
    setShellStyle(getShellStyle()|SWT.RESIZE);
  }
 
  protected Control createContents(Composite parent) {
    // create the top level composite for the dialog
    Composite composite = new Composite(parent, 0);
    GridLayout layout = new GridLayout();
    layout.marginHeight = 0;
    layout.marginWidth = 0;
    layout.verticalSpacing = 0;
    composite.setLayout(layout);
    composite.setLayoutData(new GridData(GridData.FILL_BOTH));
    applyDialogFont(composite);
    // initialize the dialog units
    initializeDialogUnits(composite);
    // create the dialog area and button bar
    dialogArea = createDialogArea(composite);
    errorLabel = new CLabel(composite, SWT.NULL);
    errorLabel.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    buttonBar = createButtonBar(composite);
   
    validate();
   
    return composite;
  }
 
  protected abstract void validate();
 
  protected void add(Text text){
    text.addModifyListener(new ModifyListener(){
      public void modifyText(ModifyEvent evt) {
        validate();
      }
    });
  }
 
  protected void setErrorMessage(String message){
    if(message==null || message.length()==0){
      errorLabel.setImage(null);
      errorLabel.setText("");
      getButton(OK).setEnabled(true);
    } else {
      errorLabel.setImage(errorImage);
      errorLabel.setText(message);
      getButton(OK).setEnabled(false);
    }
  }


}
TOP

Related Classes of tk.eclipse.plugin.htmleditor.AbstractValidationDialog

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.