public void start(MouseEvent e, mxCellState state)
	{
		startState = state;
		movingCells = getCells(state);
		previewStates = (!placeholderPreview) ? getPreviewStates() : null;

		if (previewStates == null || previewStates.length >= threshold)
		{
			placeholder = getPlaceholderBounds(startState).getRectangle();
			initialPlaceholder = new Rectangle(placeholder);
			graphComponent.getGraphControl().repaint(placeholder);
		}

		fireEvent(new mxEventObject(mxEvent.START, "event", e, "state",
				startState));
	}