/**
 * The javascripts for an unobtrusive DHTML Window
 * @author Ozgur Ayten
 */
var Akyla_Prototype_DropDown = Class.create(
{

	/**
	 * Sets up some default preferences and passes these to the creator
	 *
	 * @param object preferences List of preferences which are different from the default ones
	 */
	initialize : function ()
	{
		this.preferences = {
			image : "image/icons/original/table_save.png",
			content : null,
			clickHandler : function (target) {}
		};
	},

	/**
	 * Creates a drop down and binds a click handler to it
	 *
	 * @param object preferences Preferences passed by the constructor
	 */
	factory : function (preferences)
	{
		var newPreferences = {};
		Object.extend(newPreferences,this.preferences);
		Object.extend(newPreferences,preferences);
		if (!newPreferences || !newPreferences.content)
		{
			return null;
		}
		$(newPreferences.content).observe("mousedown", function (event)
		{
			var target = event.target;
			newPreferences.clickHandler(target);
		});
		var dropDown = Builder.node("a", {className : "dropDown"}, [
			Builder.node("img", {src : newPreferences.image}),
			Builder.node("div", 
				[Builder.node("div",[newPreferences.content])]
			)
		]);
		return dropDown;
	}
});

Akyla.DropDown = new Akyla_Prototype_DropDown();

