mirror of
https://git.code.sf.net/p/newrpl/sources
synced 2024-11-16 19:51:25 +01:00
Fixed bug: RCL on var name from menu in alg mode.
Fixed bug: Implicit multiplication w/invalid ident was accepted. Added list support to HIDEVAR/LOCKVAR/UNHIDEVAR/UNLOCKVAR
This commit is contained in:
parent
4574d8ebc4
commit
583df0c7fa
4 changed files with 38 additions and 8 deletions
|
@ -1299,12 +1299,10 @@ void varsKeyHandler(BINT keymsg,BINT menunum,BINT varnum)
|
|||
|
||||
|
||||
}
|
||||
uiSeparateToken();
|
||||
uiInsertCharacters((BYTEPTR)"'");
|
||||
|
||||
// JUST INSERT THE NAME IN ALGEBRAIC MODE
|
||||
|
||||
uiInsertCharactersN((BYTEPTR)(action+1),(BYTEPTR)(action+1)+rplGetIdentLength(action));
|
||||
uiInsertCharacters((BYTEPTR)"' RCL");
|
||||
uiSeparateToken();
|
||||
uiAutocompleteUpdate();
|
||||
break;
|
||||
|
||||
case 'P':
|
||||
|
|
|
@ -215,7 +215,8 @@ SOURCES += firmware/ggl/ggl/ggl_bitblt.c \
|
|||
firmware/ui_render.c \
|
||||
newrpl/lib-88-plot.c \
|
||||
newrpl/fastmath.c \
|
||||
newrpl/render.c
|
||||
newrpl/render.c \
|
||||
newrpl/lib-96-composites.c
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1020,6 +1020,14 @@ void LIB_HANDLER()
|
|||
rplError(ERR_BADARGCOUNT);
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
if(ISLIST(*rplPeekData(1))) {
|
||||
rplListUnaryDoCmd();
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
// ONLY ACCEPT IDENTS AS KEYS
|
||||
|
||||
if(!ISIDENT(*rplPeekData(1))) {
|
||||
|
@ -1054,6 +1062,13 @@ void LIB_HANDLER()
|
|||
rplError(ERR_BADARGCOUNT);
|
||||
return;
|
||||
}
|
||||
if(ISLIST(*rplPeekData(1))) {
|
||||
rplListUnaryDoCmd();
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
|
||||
// ONLY ACCEPT IDENTS AS KEYS
|
||||
|
||||
if(!ISIDENT(*rplPeekData(1))) {
|
||||
|
@ -1110,6 +1125,12 @@ void LIB_HANDLER()
|
|||
rplError(ERR_BADARGCOUNT);
|
||||
return;
|
||||
}
|
||||
|
||||
if(ISLIST(*rplPeekData(1))) {
|
||||
rplListUnaryDoCmd();
|
||||
return;
|
||||
}
|
||||
|
||||
// ONLY ACCEPT IDENTS AS KEYS
|
||||
|
||||
if(!ISIDENT(*rplPeekData(1))) {
|
||||
|
@ -1142,6 +1163,13 @@ case UNLOCKVAR:
|
|||
rplError(ERR_BADARGCOUNT);
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
if(ISLIST(*rplPeekData(1))) {
|
||||
rplListUnaryDoCmd();
|
||||
return;
|
||||
}
|
||||
|
||||
// ONLY ACCEPT IDENTS AS KEYS
|
||||
|
||||
if(!ISIDENT(*rplPeekData(1))) {
|
||||
|
@ -1483,7 +1511,7 @@ case UNLOCKVAR:
|
|||
|
||||
if(ISPROLOG(*DecompileObject)) {
|
||||
rplDecompAppendString2((BYTEPTR)"DIRObject",9);
|
||||
|
||||
RetNum=OK_CONTINUE;
|
||||
return;
|
||||
|
||||
}
|
||||
|
|
|
@ -298,7 +298,10 @@ void LIB_HANDLER()
|
|||
}
|
||||
else rplCompileReal(&RReg[0]);
|
||||
tok=((BYTEPTR)TokenStart)+splitoff;
|
||||
}
|
||||
} else {
|
||||
RetNum=ERR_SYNTAX;
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
} else {
|
||||
|
|
Loading…
Reference in a new issue