Contenido
Índice 🔎︎

# 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 = "/* event-code */"

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.

La gestión de acciones de controles se lleva a cabo a través de la API de LibreOffice. Si asigna una acción a un campo de control, un objeto se registra internamente como "Listener" ("oyente") para una acción de control específica. Para ello, el objeto debe utilizar una interfaz específica, como la interfaz XfocusListener, para poder reaccionar a las acciones de foco. Cuando tiene lugar la acción, el campo de control llama a un método especial de la interfaz Listener cuando el campo de control recibe el foco. A continuación, el objeto registrado internamente llama al código JavaScript o LibreOffice Basic asignado a la acción.

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="/* code */"

en lugar de mediante el

<INPUT TYPE=text SDEvent-XFocusListener-focusGained="/* code */"

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.