In order to intercept the "Cancel" key is necessary to modify the ChooseFont function in the module font.c
...
if ( !bOk )
_reta(0);
else {
_reta( 14 );
_storni( ( bOk || bInitLF ) ? lf.lfHeight: 0, -1, LF_HEIGHT );
_storni( ( bOk || bInitLF ) ? lf.lfWidth: 0, -1, LF_WIDTH );
_storni( ( bOk || bInitLF ) ? lf.lfEscapement: 0, -1, LF_ESCAPEMENT );
_storni( ( bOk || bInitLF ) ? lf.lfOrientation: 0, -1, LF_ORIENTATION );
_storni( ( bOk || bInitLF ) ? lf.lfWeight: 0, -1, LF_WEIGHT );
_storl( ( bOk || bInitLF ) ? lf.lfItalic: 0, -1, LF_ITALIC );
_storl( ( bOk || bInitLF ) ? lf.lfUnderline: 0, -1, LF_UNDERLINE );
_storl( ( bOk || bInitLF ) ? lf.lfStrikeOut: 0, -1, LF_STRIKEOUT );
_storni( ( bOk || bInitLF ) ? lf.lfCharSet: 0, -1, LF_CHARSET );
_storni( ( bOk || bInitLF ) ? lf.lfOutPrecision: 0, -1, LF_OUTPRECISION );
_storni( ( bOk || bInitLF ) ? lf.lfClipPrecision: 0, -1, LF_CLIPPRECISION );
_storni( ( bOk || bInitLF ) ? lf.lfQuality: 0, -1, LF_QUALITY );
_storni( ( bOk || bInitLF ) ? lf.lfPitchAndFamily: 0, -1, LF_PITCHANDFAMILY );
_storc( ( bOk || bInitLF ) ? lf.lfFaceName: "", -1, LF_FACENAME );
}
...
Regards
Pier Luigi