/**
 * This is an example of how to do a ListCellRenderer, but is currently unused since the sermons series list is handled through MultiList/MultiButton
 */
package com.sharefaith.churchapp.views.renderers;

import java.util.Hashtable;

import com.codename1.ui.Component;
import com.codename1.ui.Container;
import com.codename1.ui.Label;
import com.codename1.ui.layouts.BorderLayout;
import com.codename1.ui.list.CellRenderer;
import com.codename1.ui.plaf.Border;
import com.codename1.ui.plaf.Style;

public class SermonsSeriesRenderer extends Container implements CellRenderer<Object>
{
	//private int interfaceWidth;
	//private boolean mustCalculateWidth;
	
	public Component getCellRendererComponent( Component list, Object model, Object value, int index, boolean isSelected )
	{	
		this.removeAll();
		
		Container thisRow = new Container( new BorderLayout() );
		
		Hashtable<String,String> element = (Hashtable<String,String>) value;
		
		Style rowStyle = new Style();
		rowStyle.setBorder(
				Border.createCompoundBorder(
					Border.createEmpty(),
					Border.createLineBorder(  1  ),
					Border.createEmpty(),
					Border.createEmpty() ) );
					
		rowStyle.setMargin( 0, 0, 0, 0 );
		rowStyle.setPadding( 0, 0, 0, 0 );
		
		Label west = new Label( "West" );
		west.setPreferredW( 80 );
		west.setUnselectedStyle( rowStyle );
		west.setSelectedStyle( rowStyle );
		
		Label center = new Label( element.get( "content" ) );
		center.setPreferredW( (1080-160) );
		center.setUnselectedStyle( rowStyle );
		center.setSelectedStyle( rowStyle );
		
		Label east = new Label( "East" );
		east.setPreferredW( 80 );
		east.setUnselectedStyle( rowStyle );
		east.setSelectedStyle( rowStyle );
		
		thisRow.addComponent( BorderLayout.WEST, west );
		thisRow.addComponent( BorderLayout.CENTER, center );
		thisRow.addComponent( BorderLayout.EAST, east );
		
		this.addComponent( thisRow );
        
        return this;
    }

	public Component getFocusComponent( Component list )
	{
		// TODO Auto-generated method stub
		return null;
	}
	
	/*
	@Override
	protected Dimension calcPreferredSize()
	{
		
		return new Dimension( 1136, 80 );
	}
	*/
}
