package cnp.ew.spin;

import cnp.ew.converter.*;
import cnp.ew.text.*;
import cnp.ew.util.*;
import java.util.*;
import java.awt.*;

public class CpDaySpinFieldLc extends CpEditableSpinFieldLc
{

    public CpDaySpinFieldLc()
    {
        super();
        CpDayToString converter = new CpDayToString("dd");
        setInputConverter(converter);
        setOutputConverter(new CpIntegerFromStringConverter());
        setMaxChars(2);
    }


    public void update(CpObservable o, int facet, Object arg)
    {
        if (facet == CpDateModel.CHANGED_DAY) {
            setObject(getModel().getDate());
        }
    }

    public void increment()
    {
        getModel().incrementDay();
    }

    public void decrement()
    {
        getModel().decrementDay();
    }


    CpDateModel getModel()
    {
        return (CpDateModel)getSpinEditor().getModel();
    }

    public boolean canIncrementAndDecrement()
    {
        return true;
    }

    public boolean lostFocus()
    {
        getModel().setDay(((Integer)getObject()).intValue());
        return super.lostFocus();
    }
}


