 			Weave.properties.dashedSelectionBox.addImmediateCallback(this, validateDashedLine, null, true);
 		}
 		
-		public function dispose():void
-		{
-			removeEventListener(MouseEvent.CLICK, handleMouseClick);
-			removeEventListener(MouseEvent.DOUBLE_CLICK, handleDoubleClick);
-			removeEventListener(MouseEvent.MOUSE_DOWN, handleMouseDown);
-			removeEventListener(MouseEvent.ROLL_OUT, handleRollOut);
-			removeEventListener(MouseEvent.ROLL_OVER, handleRollOver);
-		}
-		
 		private function addContextMenuEventListener():void
 		{
 			var contextMenu:ContextMenu = (Application.application as Application).contextMenu;

		private function removeCursor(e:Event):void
		{
			CustomCursorManager.removeCurrentCursor();
		}
		
		public const shadowAmount:LinkableNumber = newLinkableChild(this, LinkableNumber, updateShadow);
		private function updateShadow():void
		{
			if (shadowAmount.value == 0)
			{
				filters = null;
				return;
			}
			
			var amount:Number = shadowAmount.value / 100;
			
			plotShadow.distance = 1 + (1 * amount);
			plotShadow.alpha = amount;
			plotShadow.blurX = 2 * amount;
			plotShadow.blurY = 2 * amount;
			
			filters = [plotShadow];
		}
		
		public const enableZoomAndPan:LinkableBoolean = newLinkableChild(this, LinkableBoolean);

	 * 
	 * @author adufilie
	 */
	public class InteractiveVisualization extends PlotLayerContainer
	{
		public function InteractiveVisualization()
		{
