rem: decrToFit(tPtr); }
add: tPtr->textLen -= range.count;   tPtr->viewPosition -= range.count; if (tPtr->viewPosition < 0) tPtr->viewPosition = 0; tPtr->cursorPosition = range.position;  decrToFit(tPtr);
context: WMDeleteTextFieldRange(WMTextField *tPtr, WMRange range){    CHECK_CLASS(tPtr, WC_TextField);    if (range.position >= tPtr->textLen)	return;        if (range.count < 1) {	if (range.position < 0)	    range.position = 0;	tPtr->text[range.position] = 0;	tPtr->textLen = range.position;		tPtr->cursorPosition = 0;	tPtr->viewPosition = 0;    } else {	if (range.position + range.count > tPtr->textLen)	    range.count = tPtr->textLen - range.position;	memmv(&(tPtr->text[range.position]), &(tPtr->text[range.position+range.count]),                tPtr->textLen - (range.position+range.count) + 1);	tPtr->textLen -= range.count;		if (tPtr->cursorPosition > range.position)	    tPtr->cursorPosition -= range.count;	decrToFit(tPtr);    }    paintTextField(tPtr);}