private void doDoubleDrag(MouseEvent evt)
		{
			int markLine = getMarkLine();
			int markLineStart = getLineStartOffset(markLine);
			int markLineLength = getLineLength(markLine);
			int mark = getMarkPosition() - markLineStart;

			int line = yToLine(evt.getY());
			int lineStart = getLineStartOffset(line);
			int lineLength = getLineLength(line);
			int offset = xToOffset(line,evt.getX());

			String lineText = getLineText(line);
			String markLineText = getLineText(markLine);
			String noWordSep = (String)document.getProperty("noWordSep");

			if(markLineStart + mark > lineStart + offset)
			{
				if(offset != 0 && offset != lineLength)
				{
					offset = TextUtilities.findWordStart(
						lineText,offset,noWordSep);
				}

				if(markLineLength != 0)
				{
					mark = TextUtilities.findWordEnd(
						markLineText,mark,noWordSep);
				}
			}
			else
			{
				if(offset != 0 && lineLength != 0)
				{
					offset = TextUtilities.findWordEnd(
						lineText,offset,noWordSep);
				}

				if(mark != 0 && mark != markLineLength)
				{
					mark = TextUtilities.findWordStart(
						markLineText,mark,noWordSep);
				}
			}
			select(markLineStart + mark,lineStart + offset);
		}