Next: 3.8.4 Terminación de una
Up: 3.8 El comportamiento del
Previous: 3.8.2 La inserción de
Para tratar correctamente el borrado de los caracteres de un componente léxico, es
preciso capturar los eventos producidos como consecuencia de la
pulsación de las teclas de borrado
. Estos eventos se capturan utilizando las siguientes
llamadas a funciones:
(te-set-local-binding texteditor #\bs 'delete-character)
(te-set-local-binding texteditor #\del 'delete-character)
en donde texteditor se refiere a la instancia de
{textedit} incluida en la jerarquía de componentes de
ICEeditor.
La función delete-character toma como argumento una instancia
de {textedit} y realiza las siguientes acciones:
- Comprueba que el carácter que se intenta borrar está en una
posición válida, es decir, dentro de los límites del componente léxico
que se está intentando editar. A diferencia de los que sucedía
con la función select-inserted-text, que era llamada
después de que se insertase un carácter, esta función es llamada
antes de que se borre el carácter, por lo que el cursor está
situado justo después del carácter que va a ser borrado.
-
Si el carácter a borrar está en posición válida, se
borra llamando a la función char-delete-back con el editor
como único argumento. Si el carácter a eliminar
está
fuera de los límites del
componente léxico, entonces se emite una señal sonora de advertencia y no se
modifica el texto.
Miguel A. Alonso Pardo
Thu Nov 20 16:47:01 CET 1997