//POVLibrary namespace
var POV = {};

/*	POV.Element class
 *	Represents an element used in a Presentable display
 */

POV.Element = Class.create({
	//initialize builds this element's HTML up and assigns it to HTMLElement
	initialize: function() {},
	//HTMLElement is the top-level HTML element containing this POV Element
	HTMLElement: undefined
});

/*	POVLibrary Presentable interface
 *	Represents an abstract object that displays a list of entries to the user
 */

POV.Presentable = Class.create({
	Entries: undefined,
	initialize: function()
	{
		this.Setup();
	},
	//adds all entries to the Presentable using the AddEntry function
	Setup: function()
	{
		this.Entries.each(this.AddEntry.bind(this));
	},
	//to be overridden by subclasses to hook necessary events
	AddEntry: function(entry)
	{
		
	}
});
