[Xojo 2025r2] Mejoras del Framework Web en 2025r2

A continuación encontrarás traducido al castellano el artículo escrito por Ricardo Cruz y publicado originalmente en el Blog oficial de Xojo.

Destacando el soporte de estados en WebStyle para la creación de interfaces de usuario más pulidas, la mejora en las capacidades de la gestión de eventos, y una buena colección de soluciones de errores y otras mejoras adicionales, Xojo 2025r2 mejora aun un poco más tu experiencia en el desarrollo de aplicaciones Web.

Soporte añadido para estados en WebStyle

Trabajar en proyectos Desktop es una delicia; puedes cambiar el aspecto de tu aplicación cada vez que el usuario mueve el dispositivo apuntador un pixel a la izquierda. ¿Latencia! ¡A quién le importa!

Para lograr estos mismos resultados, se ha mejorado WebStyle para soportar los estados: Hover, Pressed y Visited.

WebStyle.Hover

Este es el estilo que se aplicará cuando el cursor se encuentra sobre el emento.

WebStyle.Pressed

Este es el estilo que se aplicará cuando el usuario esté pulsando un botón en el dispositivo apuntado cuando el cursor se encuentra sobre el elemento.

WebStyle.Visited

Se puede utilizar este estilo con las instancias WebLink. Se emplea para permitir que el usuario sepa que el navegador ya ha visitado dicho enlace en el pasado.

Pongamos por caso el siguiente WebContainer:

En este caso se trata de un simple container que cuenta con un WebLabel.

El evento Opening contiene el siguiente código:

Observa que estoy usando los colores por nombre. Puedes leer más sobre esta capacidad en este artículo. Si pruebas a utilizar otro tema de Bootstrap verás que se empleará la misma paleta de color sin modificaciones.

Este es el resultado:

En combinación con WebStyle.AddTransition abre las puertas a interfaces de usuario mucho más interesantes. Añadamos algunas transiciones a nuestro código:

Y probemos de nuevo el mismo proyecto:

¡Mola! Volvámonos locos por un momento y usemos efectos más complejos:

El resultado:

Decididamente deberías de evitar el volverte “así de loco”, ya que en este caso sólo pretendemos mostrar las posibilidades. Tal y como diría el Dr. Ian Malcom… “Sus científicos estaban tan preocupados por si podían o no, que no se detuvieron a pensar si debían hacerlo.”

WebContainer.Pressed

Hablando acerca de pulsar sobre elementos. Ahora también está disponible el evento WebContainer.Pressed, de modo que ya no tendrás que poner un WebLabel o un WebRectangle sobre él simplemente para capturar este evento. El nuevo evento incluye las coordenadas, de modo que puedas usarlas si las necesitas.

El resultado:

Otros cambios

WebToolbar.Resized

¿Necesitas modificar tu diseño para que se ajusten a diferentes tamaños de pantalla? En el caso de que no sea suficiente con el comportamiento automatizado por defecto del WebToolbar, ahora puedes implementar el nuevo evento WebToolbar.Resized y adaptar sus contenidos. Esto resulta útil cuando estés usando, por ejemplo, la misma subclase WebToolbar en múltiples WebPages. Así sólo tendrás que utilizar este código en sólo un lugar.

Exportando mapas con WebMapViewer

Al igual que ocurre con MobileMapViewer, ahora puedes utilizar el método WebMapViewer.ToPicture para exportar el mapa actual. Al igual que ocurre con WebChart.ToPicture, y debido a la naturaleza asíncrona de los proyectos Web, la imagen estará disponible en el evento WebMapViewer.RequestedPicture.

DataTables actualizadas

Para terminar, pero no por ello menos importante, las DataTables se han actualizado de la versión v1.13.4 a la versión v2.2.2.

¡Esto (no) es todo!

Como de costumbre; por favor, asegúrate de leer las notas de revisión para comprobar el listado detallado con las nuevas características y correcciones de errores. El Framework Web está creado sobre Xojo, de modo que otras nuevas características y correcciones de errores globales también se aplican a la Web, incluyendo las mejoras en los proyectos de Consola. Xojo Web es “simplemente” un gran proyecto de Consola.

Gracias a todos por detectar e informar sobre los problemas detectados, así como por probar las versiones Beta.

¡Feliz programación!

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *