diff -r -C 3 -X tktext-ignore tk8.2/generic/tkText.c tk8.2orig/generic/tkText.c *** tk8.2/generic/tkText.c Tue Sep 14 18:32:43 1999 --- tk8.2orig/generic/tkText.c Sun Sep 05 15:11:10 1999 *************** *** 40,49 **** {TK_CONFIG_SYNONYM, "-bd", "borderWidth", (char *) NULL, (char *) NULL, 0, 0}, {TK_CONFIG_SYNONYM, "-bg", "background", (char *) NULL, ! (char *) NULL, 0, 0}, ! {TK_CONFIG_BOOLEAN, "-blockcursor", "blockCursor", ! "BlockCursor", DEF_TEXT_BLOCK_CURSOR, ! Tk_Offset(TkText, insertCursorType), 0}, {TK_CONFIG_PIXELS, "-borderwidth", "borderWidth", "BorderWidth", DEF_TEXT_BORDER_WIDTH, Tk_Offset(TkText, borderWidth), 0}, {TK_CONFIG_ACTIVE_CURSOR, "-cursor", "cursor", "Cursor", --- 40,46 ---- {TK_CONFIG_SYNONYM, "-bd", "borderWidth", (char *) NULL, (char *) NULL, 0, 0}, {TK_CONFIG_SYNONYM, "-bg", "background", (char *) NULL, ! (char *) NULL, 0, 0}, {TK_CONFIG_PIXELS, "-borderwidth", "borderWidth", "BorderWidth", DEF_TEXT_BORDER_WIDTH, Tk_Offset(TkText, borderWidth), 0}, {TK_CONFIG_ACTIVE_CURSOR, "-cursor", "cursor", "Cursor", *************** *** 283,289 **** textPtr->insertMarkPtr = NULL; textPtr->insertBorder = NULL; textPtr->insertWidth = 0; - textPtr->insertCursorType = 0; textPtr->insertBorderWidth = 0; textPtr->insertOnTime = 0; textPtr->insertOffTime = 0; --- 280,285 ---- *************** *** 1519,1531 **** } TkTextMarkSegToIndex(textPtr, textPtr->insertMarkPtr, &index); TkTextCharBbox(textPtr, &index, &x, &y, &w, &h); ! if (textPtr->insertCursorType) { ! TkTextRedrawRegion(textPtr, x - textPtr->width / 2, y, ! w + textPtr->insertWidth / 2, h); ! } else { ! TkTextRedrawRegion(textPtr, x - textPtr->insertWidth / 2, y, ! textPtr->insertWidth, h); ! } } /* --- 1515,1522 ---- } TkTextMarkSegToIndex(textPtr, textPtr->insertMarkPtr, &index); TkTextCharBbox(textPtr, &index, &x, &y, &w, &h); ! TkTextRedrawRegion(textPtr, x - textPtr->insertWidth / 2, y, ! textPtr->insertWidth, h); } /* diff -r -C 3 -X tktext-ignore tk8.2/generic/tkText.h tk8.2orig/generic/tkText.h *** tk8.2/generic/tkText.h Tue Sep 14 18:13:21 1999 --- tk8.2orig/generic/tkText.h Thu Jun 17 13:58:00 1999 *************** *** 575,582 **** * in "on" state for each blink. */ int insertOffTime; /* Number of milliseconds cursor should spend * in "off" state for each blink. */ - int insertCursorType; /* Zero by default, which means to use a line-cursor. - * If one we use a block cursor. */ Tcl_TimerToken insertBlinkHandler; /* Timer handler used to blink cursor on and * off. */ --- 575,580 ---- diff -r -C 3 -X tktext-ignore tk8.2/generic/tkTextMark.c tk8.2orig/generic/tkTextMark.c *** tk8.2/generic/tkTextMark.c Tue Sep 14 18:43:14 1999 --- tk8.2orig/generic/tkTextMark.c Thu Apr 15 19:51:24 1999 *************** *** 522,540 **** * corresponds to y. */ { TkText *textPtr = (TkText *) chunkPtr->clientData; ! TkTextIndex index; ! int rightSideWidth; ! int ix = 0, iy = 0, iw = 0, ih = 0; ! if(textPtr->insertCursorType) { ! TkTextMarkSegToIndex(textPtr, textPtr->insertMarkPtr, &index); ! TkTextCharBbox(textPtr, &index, &ix, &iy, &iw, &ih); ! rightSideWidth = iw + textPtr->insertWidth/2; ! } else { ! rightSideWidth = textPtr->insertWidth/2; ! } ! ! if ((x + rightSideWidth) < 0) { /* * The insertion cursor is off-screen. Just return. */ --- 522,530 ---- * corresponds to y. */ { TkText *textPtr = (TkText *) chunkPtr->clientData; ! int halfWidth = textPtr->insertWidth/2; ! if ((x + halfWidth) < 0) { /* * The insertion cursor is off-screen. Just return. */ *************** *** 552,562 **** if (textPtr->flags & INSERT_ON) { Tk_Fill3DRectangle(textPtr->tkwin, dst, textPtr->insertBorder, ! x - textPtr->insertWidth/2, y, iw + textPtr->insertWidth, height, textPtr->insertBorderWidth, TK_RELIEF_RAISED); } else if (textPtr->selBorder == textPtr->insertBorder) { Tk_Fill3DRectangle(textPtr->tkwin, dst, textPtr->border, ! x - textPtr->insertWidth/2, y, iw + textPtr->insertWidth, height, 0, TK_RELIEF_FLAT); } } --- 542,552 ---- if (textPtr->flags & INSERT_ON) { Tk_Fill3DRectangle(textPtr->tkwin, dst, textPtr->insertBorder, ! x - textPtr->insertWidth/2, y, textPtr->insertWidth, height, textPtr->insertBorderWidth, TK_RELIEF_RAISED); } else if (textPtr->selBorder == textPtr->insertBorder) { Tk_Fill3DRectangle(textPtr->tkwin, dst, textPtr->border, ! x - textPtr->insertWidth/2, y, textPtr->insertWidth, height, 0, TK_RELIEF_FLAT); } } diff -r -C 3 -X tktext-ignore tk8.2/mac/tkMacDefault.h tk8.2orig/mac/tkMacDefault.h *** tk8.2/mac/tkMacDefault.h Tue Sep 14 18:36:57 1999 --- tk8.2orig/mac/tkMacDefault.h Thu Apr 15 19:51:30 1999 *************** *** 409,415 **** #define DEF_TEXT_BG_COLOR NORMAL_BG #define DEF_TEXT_BG_MONO WHITE - #define DEF_TEXT_BLOCK_CURSOR "0" #define DEF_TEXT_BORDER_WIDTH "0" #define DEF_TEXT_CURSOR "xterm" #define DEF_TEXT_FG BLACK --- 409,414 ---- diff -r -C 3 -X tktext-ignore tk8.2/unix/tkUnixDefault.h tk8.2orig/unix/tkUnixDefault.h *** tk8.2/unix/tkUnixDefault.h Tue Sep 14 18:37:19 1999 --- tk8.2orig/unix/tkUnixDefault.h Thu Apr 15 19:51:45 1999 *************** *** 398,404 **** #define DEF_TEXT_BG_COLOR NORMAL_BG #define DEF_TEXT_BG_MONO WHITE - #define DEF_TEXT_BLOCK_CURSOR "0" #define DEF_TEXT_BORDER_WIDTH "2" #define DEF_TEXT_CURSOR "xterm" #define DEF_TEXT_FG BLACK --- 398,403 ---- diff -r -C 3 -X tktext-ignore tk8.2/win/tkWinDefault.h tk8.2orig/win/tkWinDefault.h *** tk8.2/win/tkWinDefault.h Tue Sep 14 18:36:36 1999 --- tk8.2orig/win/tkWinDefault.h Thu Apr 15 19:51:50 1999 *************** *** 404,410 **** #define DEF_TEXT_BG_COLOR "SystemWindow" #define DEF_TEXT_BG_MONO WHITE - #define DEF_TEXT_BLOCK_CURSOR "0" #define DEF_TEXT_BORDER_WIDTH "2" #define DEF_TEXT_CURSOR "xterm" #define DEF_TEXT_FG TEXT_FG --- 404,409 ----