Se añade la propiedad «Auto wrap» para los controles de tipo «Text» multilínea. Cuando esta propiedad está activa se añaden tantos saltos de línea automáticos como sea necesario para mostrar el contenido del texto, en lugar de recortarlo.
Los «Bitmap» son contenedores y pueden tener páginas, al igual que los controles de tipo «Box».
A los controles de tipo «Edit» se les puede asociar un botón o un «Spin», creando así un control combinado, de modo que envíe los eventos «Click» o «Spinup» y «Spindown» respectivamente; asimismo, a este botón se le puede asociar un icono.
A los controles «Tab» se les han añadido las propiedades «Autosize» y «Vertical» e iconos a las pestañas.
Los controles de tipo «Button», «Spin», «Menu», «Box Group», «Button Group», «Slider», «Split», «Radio Button» y «Check Box» pueden tener color de fondo transparente.
La propiedad «Tab Stop» permite definir qué controles admitirán el foco y cuáles no cuando se pulse el tabulador en ejecución.
La propiedad «Hilight Cursor» cambia el cursor del ratón cuando éste se sitúa sobre el control.
El tipo de borde «Hilight border» de los controles «Button», «Spin» y «Button Group» muestra el borde del botón sólo cuando el cursor del ratón pasa por encima de él.
Se han añadido nuevas máscaras a los controles de edición de tipo numérico. Estas máscaras también pueden ser usadas en el método «Using» de la clase «Numeric».
Se ha añadido la propiedad «Auto wrap» para los controles de tipo «Edit» multilínea. Si esta propiedad está activa, durante la edición se salta automáticamente de línea al completar el ancho del editor, en lugar de desplazar el texto a la izquierda.
Se ha añadido la propiedad «Auto wrap» para los controles de tipo «Text» multilínea. Cuando esta propiedad está activa, se añaden tantos saltos de línea automáticos como sea necesario para mostrar todo el contenido del texto en lugar de recortarlo. Esta propiedad solo está visible para Textos multilínea.
Los «Bitmap» son contenedores y pueden tener páginas, al igual que los controles de tipo «Box».
Los formularios de tabla (controles contenedores asociados a una tabla del Form) pueden contener otros formularios para facilitar la distribución de las columnas en el Form.
Con esta versión se entrega el proyecto de demostración «Almafac3» que incorpora estas novedades.
Cuando un botón tiene el foco, aquél tiene la propiedad de botón por defecto, y por tanto será el que se ejecute si se pulsa la tecla [RETURN]; si ningún botón tiene el foco, la tecla [RETURN] ejecuta el botón definido en edición como botón por defecto, y cuando no se haya definido botón por defecto y el control que tiene el foco no tenga acción asociada a la tecla [RETURN], al pulsarla se pasa el foco al siguiente campo del Form. Con las teclas [SHIFT] + [RETURN] pasa al campo anterior y con [CTRL] + [RETURN] pasa siempre al campo siguiente que admita el foco.
Cuando un control de tipo «Edit» que no sea multilínea obtiene el foco se selecciona automáticamente su contenido. En el caso de los editores multilínea el texto puede seleccionarse por programa.
Por ejemplo, para definir el método «MiTrace» (aArglist as ArgList of Char) no hace falta crear una clase de tipo «ArgList of Char».
Next: Este método sirve para recorrer la estructura de controles de un Form o una página de impresión. Dependiendo del tipo de relación que se le pasa como parámetro, devuelve una referencia al control padre, hijo, siguiente o anterior.
Type: Este método retorna el tipo del control.
Control: Este método retorna por referencia el control del Form que tiene como identificador el indicado como parámetro.
NextFocus: Este método devuelve una referencia al siguiente control del Form que admite el foco, o al anterior si se le indica en el parámetro.
SendCommand: Este método permite ejecutar por programa un comando del Form.
Table: Este método retorna por referencia la tabla del Form que tiene por nombre el indicado como parámetro.
Query: Este método permite la consulta de filas sobre la tabla del Form, permitiendo el refresco de una tabla dependiente cuando el contenido de ésta ha sido modificado por programa.
SendCommand: Este método permite ejecutar por programa un comando de tabla.
License: Este método retorna el número de licencia de Cosmos.
Setup: Este método muestra el diálogo de selección de impresoras y asocia al documento el dispositivo de impresión (impresora) que se seleccione. Ahora devuelve un «Boolean» en lugar de «self», «TRUE» si selecciona una impresora y «FALSE» si el usuario pulsa [Cancel]. Asimismo, permite definir opcionalmente la ventana padre del diálogo de selección de impresoras.
Preview: Muestra la presentación preliminar del documento de impresión. Se muestra la ventana de «preview» de forma «modal», esto es, el programa se detiene hasta que el usuario la cierra.
ShowView: Muestra la ventana de presentación preliminar del documento de impresión de forma «no modal», esto es, no se detiene la ejecución del programa.
SetOrientation: Este método permite modificar el tipo de orientación de la página que se tiene seleccionado para la impresora.
SetEditSel: Este método permite modificar la selección en el texto de un control «Edit Field» multilínea.
GetEditSel: Este método indica los caracteres que hay seleccionados en el texto de un control «Edit Field» o «DropEdit».
CheckItem: Este método permite modificar el estado (activado o desactivado) de un elemento de un control de tipo «Box Group» o «Button Group».
IsItemChecked: Este método permite consultar el estado (activado o desactivado) de un elemento de un control de tipo «Box Group» o «Button Group».
GetItemBackGround: Permite consultar el color de fondo de un elemento del control.
SetItemBackGround: Permite modificar el color de fondo de un elemento del control.
WrappedLine: Este método retorna la porción del texto que corresponde a la línea indicada como parámetro. El resultado es dependiente del dispositivo sobre el que se aplica, por tanto, se debe pasar como parámetro el «PrnDocument» al que va destinado el texto para garantizar el funcionamiento con su dispositivo de contexto. Si el control no es de impresora, o se utiliza en modo «preview», no es necesario indicar este parámetro porque se toma la pantalla como dispositivo por defecto.
WrappedLinesNeeded: Este método calcula cuántas líneas serían necesarias para encajar el texto en el control. El resultado es dependiente del dispositivo sobre el que se aplica, por tanto, se debe pasar como parámetro el «PrnDocument» al que va destinado el texto para garantizar el funcionamiento con su dispositivo de contexto. Si el control no es de impresora, o se utiliza en modo «preview», no es necesario indicar este parámetro porque se toma la pantalla como dispositivo por defecto.
AddGroup: Este método se utiliza para definir de uno en uno los agrupamientos en una instrucción SELECT previamente preparada. Este método puede utilizarse en lugar del método «GroupBy» o después de éste.
AddTotal: Este método se utiliza para definir de una en una las columnas a totalizar en los grupos. Puede utilizarse en lugar del método «Totalize» o después de éste.
BreakLevel: Este método se utiliza para conocer el estado de la ruptura de grupos en un momento determinado. Se utiliza después de la ejecución del método «Fetch».
GroupAverage: Este método se utiliza para obtener la media aritmética de todos los elementos que tiene un grupo hasta el momento.
GroupBy: Este método se utiliza para definir una lista de agrupamientos en una instrucción SELECT previamente preparada.
GroupCount: Este método se utiliza para obtener el número de filas que tiene un grupo hasta el momento.
GroupMaximun: Este método se utiliza para obtener el máximo de todos los elementos que tiene un grupo hasta el momento.
GroupMinimun: Este método se utiliza para obtener el mínimo de todos los elementos que tiene un grupo hasta el momento.
GroupSum: Este método se utiliza para obtener la suma de todos los elementos que tiene un grupo hasta el momento.
Totalize: Este método se utiliza para definir la lista de columnas a totalizar en los grupos.
Load: Este método carga datos provenientes de un fichero ASCII sobre una tabla de la base de datos.
Unload: Este método permite la descarga de información recogida en las tablas de la base de datos. Dicha información se almacena en un fichero ASCII (de texto).