SimpleUI for Android mode: download: https://www.dropbox.com/scl/fi/cpq7z6tbeepidyd5qr7t3/SimpleUI_by_Erkosone.7z?rlkey=42ylh61n65g2aels30hggvhd8&st=mg4y1c9h&dl=0
He creado esta interfaz grafica para Processing/Android con la ayuda de Gemini, la IA de Google.
A disfrutarla comunidad!!
================================================================================
DOCUMENTACIÓN TÉCNICA: SISTEMA SimpleUI PARA PROCESSING ANDROID
================================================================================
1. DESCRIPCIÓN GENERAL
--------------------------------------------------------------------------------
SimpleUI es un motor de interfaz gráfica optimizado para el modo Android de
Processing. Permite crear interfaces interactivas con escalado automático,
soporte para temas visuales (claro/oscuro) y gestión de scroll suavizado.
2. VARIABLES Y ESTADOS DEL SISTEMA
--------------------------------------------------------------------------------
El núcleo de la librería gestiona el estado visual mediante:
- uiScale: Escala global para adaptar el diseño a diferentes densidades de píxeles.
- scrollY: Posición actual del desplazamiento vertical (con interpolación lerp).
- Colores dinámicos: Variables como uiAccentColor y uiSurfaceColor que cambian
según el modo visual activo.
3. FUNCIONES DE CONTROL (API)
--------------------------------------------------------------------------------
- initUI(String f): Inicializa la tipografía y el esquema de colores.
- fitToWidth(float dW, float sP): Ajusta la interfaz a un ancho de referencia.
- setDarkMode(boolean active): Alterna entre paletas de colores claras y oscuras.
- clearUI(): Limpia la lista de elementos y resetea el scroll.
- updateAndDrawUI(): Renderiza los elementos y procesa la animación del scroll.
4. COMPONENTES DISPONIBLES
--------------------------------------------------------------------------------
- UIButton: Botón con respuesta visual y detección de área táctil.
- UISlider: Control deslizante para valores numéricos con mango circular.
- UIDropdown: Menú desplegable que gestiona la prioridad de dibujo (Z-index).
- UITable: Visualizador de datos con scroll interno y selección de filas.
- UICheckbox: Interruptor de estado con etiqueta de texto lateral.
- UILabel: Contenedor de texto estático alineado para títulos.
5. MANEJO DE EVENTOS
--------------------------------------------------------------------------------
La librería requiere la redirección de eventos nativos de Processing:
- handleUIMousePressed(): Gestiona el inicio de interacciones y foco.
- handleUIMouseReleased(): Finaliza acciones y confirma selecciones.
- handleUIKeyPressed(): Permite la entrada de datos por teclado.
6. INTEGRACIÓN NATIVA ANDROID
--------------------------------------------------------------------------------
El sistema incluye funciones que se ejecutan en el hilo de la UI de Android:
- openKeyboard(): Invoca el teclado virtual del sistema.
- closeKeyboard(): Oculta el teclado y retira el foco del campo actual.
7. NOTAS TÉCNICAS
--------------------------------------------------------------------------------
- El sistema utiliza una jerarquía de dibujo donde los Dropdowns siempre se
renderizan al final para evitar que queden ocultos tras otros elementos.
- Los elementos de la tabla soportan scroll independiente del scroll global
de la aplicación.
================================================================================
