function NavigationItem(ElementId)
	{
	//Initialise object member variables
	this.Timer = "";
	this.Over = 0;
	this.SlideStatus = 0;
	this.Suicide = "";
	this.SpawnedChildren = 0;
	
	var ElementEntity = document.getElementById(ElementId);
	
	//Define object member methods
	this.SlideIn = SlideIn;
	this.SlideOut = SlideOut;
	this.DecrementSlide = DecrementSlide;
	this.IncrementSlide = IncrementSlide;
	this.SuddenDeath = SuddenDeath;
	this.Die = Die;
	this.DieNow = DieNow;
	this.StopDeath = StopDeath;
	this.CallBack = CallBack;
	
	function SlideIn()
		{
		//--Make Element Visible--//
		if(ElementEntity.style.display != "block")
			{
			if(SettingsInstance.Direction != 0)	
				ElementEntity.style.width = "10px";
			else 
				ElementEntity.style.height = "1px";
				
			ElementEntity.style.display = "block";
			}
			
		//--Check Status--//
		if(this.SlideStatus == 2) //If we're sliding out, clear our timer
			clearInterval(this.Timer);
		else if(this.SlideStatus == 3) //If we're already sliding in, do nothing
			return(0);
		
		//--Set Status--//
		this.SlideStatus = 3;
		
		//--Call Increment--//
		var self = this;
		this.Timer = setInterval(function(){ self.IncrementSlide(); }, SettingsInstance.SlideInSpeed);
		}
		
	function SlideOut()
		{
		//--Check Status--//
		if(this.SlideStatus == 3) //If we're sliding in, clear our timer
			clearInterval(this.Timer);
		else if(this.SlideStatus == 2) //If we're already sliding out, do nothing
			return;
			
		//--Set Status--//
		this.SlideStatus = 2;
		
		//--Call Decrement--//
		var self = this;
		this.Timer = setInterval(function(){ self.DecrementSlide(); }, SettingsInstance.SlideOutSpeed);
		}
		
	function IncrementSlide()
		{
		var CurrentDimensionSize;
		var NewDimensionSize;
		
		switch(SettingsInstance.Direction)
			{
			case 0:
				//Work out current width - means cutting the "px" off the end of defined CSS style
				CurrentDimensionSize = ElementEntity.style.height.substring(0, ElementEntity.style.height.length - 2);	
				if(CurrentDimensionSize < SettingsInstance.NavigationItemWidth)
					{
					NewDimensionSize = parseInt(CurrentDimensionSize) + SettingsInstance.IncrementAmount;
					ElementEntity.style.height = NewDimensionSize + "px";
					}
				else
					{
					
					clearInterval(this.Timer);
					}
				break;
				
			default:
				CurrentDimensionSize = ElementEntity.style.width.substring(0, ElementEntity.style.width.length - 2);
				if(CurrentDimensionSize < SettingsInstance.NavigationItemWidth)
					{
					NewDimensionSize = parseInt(CurrentDimensionSize) + SettingsInstance.IncrementAmount;
					ElementEntity.style.width = NewDimensionSize + "px";
					}
				else
					{
					clearInterval(this.Timer);
					}
			}	
		}
		
	function DecrementSlide()
		{
		var CurrentDimensionSize;
		var NewDimensionSize;
		
		switch(SettingsInstance.Direction)
			{
			case 0:
				//Work out current width - means cutting the "px" off the end of defined CSS style
				CurrentDimensionSize = ElementEntity.style.height.substring(0, ElementEntity.style.width.length - 2);	
				if(CurrentDimensionSize > 15)
					{
					NewDimensionSize = parseInt(CurrentDimensionSize) - SettingsInstance.IncrementAmount;
					ElementEntity.style.height = NewDimensionSize + "px";
					}
				else
					{
					ElementEntity.style.display = "none";
					clearInterval(this.Timer);
					}
				break;
				
			default:
				CurrentDimensionSize = ElementEntity.style.width.substring(0, ElementEntity.style.width.length - 2);
				if(CurrentDimensionSize > 15)
					{
					NewDimensionSize = parseInt(CurrentDimensionSize) - SettingsInstance.IncrementAmount;
					ElementEntity.style.width = NewDimensionSize + "px";
					}
				else
					{
					ElementEntity.style.display = "none";
					clearInterval(this.Timer);
					DeathCall(ElementId);
					}
			}	
		}
	
	function SuddenDeath()
		{
		clearInterval(this.Timer);
		ElementEntity.style.display = "none";
		this.SlideStatus = 0;
		}
	
	function Die()
		{
		var self = this;
		this.Suicide = setTimeout(function(){self.SlideOut();}, 1000);
		}
		
	function DieNow()
		{
		var self = this;
		this.Suicide = setTimeout(function(){self.SlideOut();}, 500);
		}
		
	function StopDeath()
		{
		
		}
		
	function CallBack()
		{
		
		
		}
	}	