package net.bradmont.supergreen.fields; import net.bradmont.supergreen.fields.constraints.ConstraintError; import android.widget.*; import android.view.View; public class BooleanField extends DBField { protected int value; protected int default_value; public BooleanField(String name){ super(name); } public void putToView(View v){ stringToView(v, Integer.toString(value)); } public void getFromView(View v) throws ConstraintError{ value = Integer.parseInt(viewToString(v)); } public int getInt(){ return value; } public boolean getBoolean(){ return (value != 0); } @Override public void setValue(int value){ this.value= value==0 ? 0: 1; } public void setValue(boolean value){ this.value= value?1:0; } @Override public void setDefault(boolean value){ default_value = value?0:1; has_default=true; setValue(value); } @Override public String getSQLDefinition(){ String sql = getColumnName() + " int"; if (has_default){ sql += String.format(" default (%d)", default_value); } if (extra_arguments != null){ sql += " " + extra_arguments; } return sql; } }