/**
*
*/
package org.objectstyle.wolips.eomodeler.editors.qualifier;
import org.eclipse.swt.SWT;
import org.eclipse.swt.layout.FillLayout;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Text;
import org.objectstyle.wolips.eomodeler.core.model.EOQualifierFactory;
import org.objectstyle.wolips.eomodeler.core.model.qualifier.EOQualifier;
import org.objectstyle.wolips.eomodeler.core.model.qualifier.EOTruePredicate;
public class ExpressionQualifierTypeEditor extends AbstractQualifierTypeEditor {
private Text _expressionText;
public ExpressionQualifierTypeEditor(Composite parent, int style) {
super(parent, style);
FillLayout layout = new FillLayout(SWT.HORIZONTAL);
layout.marginWidth = 0;
setLayout(layout);
_expressionText = new Text(this, SWT.BORDER);
}
public void setQualifier(EOQualifier qualifier) {
String qualifierString;
if (qualifier instanceof EOTruePredicate) {
qualifierString = "";
} else {
qualifierString = EOQualifierFactory.toString(qualifier);
}
if (qualifierString == null) {
qualifierString = "";
}
_expressionText.setText(qualifierString);
}
public EOQualifier getQualifier() {
EOQualifier qualifier = EOQualifierFactory.fromString(_expressionText.getText());
if (qualifier == null) {
qualifier = new EOTruePredicate();
}
return qualifier;
}
}