PowerRustCOBOL 1.61.47-48 — un solo dibujo por control
- Knob, Gauge y NumericUpDown se dibujaban dos veces. En la vista previa y en el formulario en ejecución los pintaba el widget de la paleta; en el lienzo del RAD, nuestro propio pintor. Esos widgets se dimensionan con su propia pista en lugar del rectángulo que reciben, y componen su texto con la tipografía del entorno: nada de eso puede reproducir un lienzo. Los tres pasan ahora por el pintor compartido, como ya hizo el Switch en 1.61.40.
- El Knob tiene el tamaño con el que se dibujó. El widget elegía uno de tres tamaños fijos en píxeles; ahora la esfera sigue al control (80x96 da un radio de 28; 200x220, de 77), conserva las proporciones de la vista previa, centra su valor sobre el control y respeta «FontSize», «FontName» y «ForegroundColor» — por eso la propiedad de tamaño de letra parecía no hacer nada. Además gira: arrastre en cualquier punto.
- El Gauge usa los colores del desarrollador — «ForegroundColor» para el medidor y «BackgroundColor» para su pista, donde antes ambos venían de la paleta del widget — y su lectura ya no se apoya sobre la banda que informa.
- En un grupo de RadioButton podían quedar encendidos todos. Un RadioButton se encendía al pulsarlo y nada apagaba los demás, así que un grupo podía mostrar dos, tres o todos seleccionados a la vez y el formulario no tenía forma de decir cuál quiso el operador. Los que comparten «GroupName» son ahora excluyentes; sin nombre, se agrupan por el contenedor que los contiene. Solo el botón que estaba realmente encendido informa de que se apaga.
- El resaltado de la ListBox se comía el borde. Al llegar hasta el marco (que es lo que alineaba sus esquinas con el arco) borraba el filete en la primera y en la última fila. Ahora se detiene antes del borde, a su anchura más un pelo, y las esquinas contiguas al arco conservan el radio restante: egui recorta con un rectángulo recto, así que una banda cuadrada cruzaría el arco.
- Una ListBox no puede dibujarse más baja que una línea de su propio texto. El límite del redimensionado era 8 px para todo; ahora sigue a «FontSize»: 29 px a 14 pt, 48 px a 28 pt.
- Las filas seleccionadas se atenúan. La fila activa conserva el resaltado completo; el resto de la selección lleva el mismo color al 45 %, de modo que la lista dice cuál es cuál.
Ejemplo — un grupo de RadioButton excluyente
Escriba el mismo valor en
GroupName en cada botón del grupo (o déjelo en blanco y colóquelos en el mismo GroupBox). Al pulsar uno, los demás se apagan solos:
Código:
*> en el manejador TARJETA onClick:
IF TARJETA::Value = "1"
MOVE "TARJETA" TO WS-FORMA-PAGO
END-IF
Documentación:
PowerRustCOBOL/docs/developers-guide-en.md at main · CloudLandBeta/PowerRustCOBOL · GitHub
Anthropic Claude Codex Agent