in memoedit.prg
CASE nUserKey == K_CTRL_W
::lSaved := .t. <------missing line
::lExitEdit := .t.
------------------
test.prg
press esc & select yes for the alert. it's not
#include "inkey.ch"
STATIC RETVAL := 0
STATIC ALTERED := .F.
STATIC INS_MODE := .T.
STATIC MASK_SAVE := .T.
*****************************
PROC REMARKS()
local mbuffer := ""
MBUFFER := MEMOEDIT( MBUFFER , 0,0,MAXROW()-2,79, .t. ,"REMARKFUNC",78)
IF RETVAL = K_CTRL_W
? MBUFFER
ENDIF
RETURN MBUFFER
***************
FUNC REMARKFUNC(MODE, LINE, COL,MBUFFER)
LOCAL MTEMP
LOCAL KP
DO CASE
CASE MODE = 3
IF .NOT. INS_MODE
RETVAL := 22
ENDIF
@ MAXROW(), 30 SAY IF(INS_MODE, "INSERT", " ")
RETVAL := 0
CASE MODE = 0
* IDLE
@ MAXROW(),40 SAY "LINE: " + PAD(LTRIM(STR(LINE)), 4)
@ MAXROW(),52 SAY "COL: " + PAD(LTRIM(STR(COL)), 3)
OTHERWISE
* KEYSTROKE EXCEPTION
KP = LASTKEY()
* SAVE VALUES TO POSSIBLY RESUME EDIT
IF MODE=2
ALTERED := .T.
ENDIF
DO CASE
CASE KP = K_CTRL_W
* ^W..IGNORE (DISABLE)
RETVAL := 32
CASE KP = 301 .OR. KP = 27
* ESC/ALT-X..EXIT
IF .NOT. ALTERED
RETVAL := 27
ELSE
MTEMP := ALERT("SAVE EDITING",{"YES","NO"})
DO CASE
CASE MTEMP = 2
RETVAL := 27
CASE MTEMP = 0
RETVAL := 32
CASE MTEMP = 1
? "SAVING....."
RETVAL := K_CTRL_W
ENDCASE
ENDIF
CASE (KP = 279 .OR. KP = 22)
* ^V/INS/ALT-I..TOGGLE INSERT MODE
INS_MODE = .NOT. INS_MODE
@ MAXROW(), 30 SAY IF(INS_MODE, "INSERT", " ")
RETVAL := 22
ENDCASE
ENDCASE
RETURN RETVAL
********
--
View this message in context:
http://n2.nabble.com/possible-bug-in-memoedit.prg-tp2475089p2475089.html
Sent from the harbour-devel mailing list archive at Nabble.com.
_______________________________________________
Harbour mailing list
[email protected]
http://lists.harbour-project.org/mailman/listinfo/harbour