Contenido

# Formularios y filtros HTML

Puede usar todos los elementos de control y eventos de formulario en documentos HTML. Existen numerosos eventos a la fecha (por ejemplo, eventos de foco), que no han cambiado. Se continuarán exportando e importando como ONFOCUS, ONBLUR, etcétera, para JavaScript, y como SDONFOCUS, SDONBLUR, etcétera, para LibreOffice BASIC.

Para el resto de acontecimientos, se emplean nombres genéricos compuestos por la interfaz de oyente y el nombre del método del acontecimiento: un acontecimiento que esté registrado como XListener::method se exporta como

SDEvent-XListener-method = "/* código de evento */"

Tenga en cuenta que los componentes del método y de la interfaz Xlistener de esta opción distinguen entre mayúsculas y minúsculas.

A través de la API de LibreOffice se pueden manejar los eventos de los controles. Si asigna un evento a un control, un objeto se registra internamente como «Listener» (oyente) para un evento de control específico. Para ello, el objeto debe utilizar una interfaz específica, por ejemplo, la interfaz XFocusListener, para poder reaccionar a los eventos de enfoque. Cuando se produce el evento, el control invoca un método especial de la interfaz Listener cuando el control recibe el foco. A continuación, el objeto registrado internamente invoca el código JavaScript o LibreOffice BASIC, que se asignó al evento.

Ahora, el filtro HTML utiliza específicamente estas interfaces de oyente y nombres de método, de forma que se puede importar y exportar acciones a voluntad. Puede registrar una acción de foco a través de

<INPUT TYPE=text ONFOCUS="/* código */"

en lugar de mediante el

<INPUT TYPE=text SDEvent-XFocusListener-focusGained="/* código */"

registro. Por ello, las acciones se pueden registrar como se quiera, también las no ofrecidas por los cuadros de lista. Para definir el lenguaje de script de las acciones, escriba la línea siguiente en el encabezado del documento:

<META HTTP-EQUIV="content-script-type" CONTENT="...">

Para CONTENT puede utilizar, por ejemplo, «text/x-StarBasic» en LibreOffice Basic o «text/JavaScript» en JavaScript. Si no indica nada, la opción predeterminada es JavaScript.

Durante la exportación, el lenguaje interpretado predeterminado se definirá en función del primer módulo encontrado en la gestión de macros. En el caso de los eventos, solo se puede utilizar un lenguaje por documento.

¡Necesitamos su ayuda!