package com.gx.obe.component.text; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Text; import com.gx.obe.bind.view.ChangeListener; import com.gx.obe.bind.view.RView; import com.gx.obe.component.verify.IntegerVerifyListener; public class IntegerText extends Text implements RView<Integer> { public IntegerText(Composite parent, int style) { super(parent, style); addVerifyListener(new IntegerVerifyListener(false)); } @Override public void addChangeListener(ChangeListener changeListener) { addModifyListener(e -> changeListener.change()); } @Override public Integer get() { String text = getText(); if (text.isEmpty()) return null; return Integer.valueOf(text); } @Override protected void checkSubclass() {} }