CVS: TapestryBook/examples/src/examples/todo2 PriorityModel.java,NONE,1.1 ToDo2.java,NONE,1.1 ToDoItem2.java,NONE,1.1

Howard Lewis Ship <[email protected]> Thu, 27 Feb 2003 16:25:49 -0800
Newsgroups gmane.comp.java.tapestry.cvs
Message-ID <[email protected]>
Update of /cvsroot/tapestry/TapestryBook/examples/src/examples/todo2
In directory sc8-pr-cvs1:/tmp/cvs-serv10808/examples/src/examples/todo2

Added Files:
	PriorityModel.java ToDo2.java ToDoItem2.java 
Log Message:
Checkpoint; pretty  much done with chapter 3.

--- NEW FILE: PriorityModel.java ---
package examples.todo2;

import net.sf.tapestry.form.IPropertySelectionModel;

public class PriorityModel implements IPropertySelectionModel
{
    public int getOptionCount()
    {
        return 3;
    }

    public Object getOption(int index)
    {
        switch (index)
        {
            case 0 :
                return new Integer(ToDoItem2.HIGH_PRIORITY);

            case 1 :
                return new Integer(ToDoItem2.MEDIUM_PRIORITY);

            default :
                return new Integer(ToDoItem2.LOW_PRIORITY);
        }
    }

    public String getLabel(int index)
    {
        switch (index)
        {
            case 0 :
                return "High";

            case 1 :
                return "Medium";

            default :

                return "Low";
        }
    }

    public String getValue(int index)
    {
        return Integer.toString(index);
    }

    public Object translateValue(String value)
    {
        int index = Integer.parseInt(value);

        return getOption(index);
    }

}

--- NEW FILE: ToDo2.java ---
package examples.todo2;

import java.util.ArrayList;
import java.util.List;

import net.sf.tapestry.IMarkupWriter;
import net.sf.tapestry.IRequestCycle;
import net.sf.tapestry.RequestCycleException;
import net.sf.tapestry.form.IPropertySelectionModel;

import examples.todo1.ToDo;

/**
 *  Extends {@link examples.todo1.ToDo}, providing
 *  a {@link net.sf.tapestry.form.IPropertySelectionModel model}
 *  for editing {@link examples.todo2.ToDoItem2#getPriority() priority}.
 *
 *  @author Howard Lewis Ship
 *  @version $Id: ToDo2.java,v 1.1 2003/02/28 00:25:47 hship Exp $
 *  @since 2.4
 *
 **/

public abstract class ToDo2 extends ToDo
{
    public IPropertySelectionModel getPriorityModel()
    {
        return new PriorityModel();
    }

    public void addTodoItem(IRequestCycle cycle)
    {
        getToDoList().add(new ToDoItem2("New Item"));
    }

    public void beginResponse(IMarkupWriter writer, IRequestCycle cycle)
        throws RequestCycleException
    {
        List list = getToDoList();

        if (list == null)
        {
            list = new ArrayList();
            list.add(new ToDoItem2("Finish reading Tapestry Book"));
            list.add(new ToDoItem2("Download latest version of Tapestry"));

            setToDoList(list);
        }
    }

}

--- NEW FILE: ToDoItem2.java ---
package examples.todo2;

import examples.todo1.ToDoItem;

/**
 *  Extends {@link examples.todo1.ToDoItem}
 *  with a priority level.
 *
 *  @author Howard Lewis Ship
 *  @version $Id: ToDoItem2.java,v 1.1 2003/02/28 00:25:47 hship Exp $
 *  @since 2.4
 *
 **/

public class ToDoItem2 extends ToDoItem
{
    public static final int LOW_PRIORITY = 100;
    public static final int MEDIUM_PRIORITY = 200;
    public static final int HIGH_PRIORITY = 300;

    private int _priority = MEDIUM_PRIORITY;

    public ToDoItem2()
    {
    }

    public ToDoItem2(String title)
    {
        super(title);
    }

    public int getPriority()
    {
        return _priority;
    }

    public void setPriority(int priority)
    {
        _priority = priority;
    }

}



-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf