public boolean importData(TransferHandler.TransferSupport info)
	{
		GlobalLogger.getLogger().logp(Level.INFO, this.getClass().getName(),
				"importData", "importData called.");

		if (!info.isDrop())
		{
			return false;
		}

		// Get the task that is being dropped.
		Transferable t = info.getTransferable();
		Task taskRef;
		try
		{
			taskRef = (Task) t.getTransferData(new DataFlavor(Task.class,
					"Task"));
		}
		catch (Exception e)
		{
			return false;
		}

		if (taskRef == null)
		{
			GlobalLogger.getLogger().logp(Level.INFO,
					this.getClass().getName(), "importData",
					"Failed to get task from import data");
			return false;
		}

		ArrayList<Task> tasks = Timeflecks.getSharedApplication().getTaskList()
				.getTasks();
		for (Task t1 : tasks)
		{
			if (t1.getId() == taskRef.getId())
			{
				taskRef = t1;
				break;
			}
		}

		// Unschedule the Task
		taskRef.setStartTime(null);

		try
		{
			taskRef.saveToDatabase();
		}
		catch (Exception ex)
		{
			ExceptionHandler.handleDatabaseSaveException(ex, this.getClass()
					.getName(), "importData", "2102");
		}

		Timeflecks.getSharedApplication().postNotification(
				TimeflecksEvent.INVALIDATED_FILTERED_TASK_LIST);

		return true;
	}