Los objetos (TStringList, TRealList, TPointList y TRMatrix) ahora disponen de funciones y procedimientos propios, así muchas de aquellas funciones y procedimientos que llamaban los objetos, ahora están integrados en el objeto:
Así si SL era de tipo TStringList, para añadir una cadena, antes existía el procedimiento SLAdd y era:
SLAdd (SL, 'Una cadena')
ahora ya no existe SLAdd, y en cambio existe el procedimiento Add integrado en TStringList, así el resultado es:
SL.Add ('Una cadena')
pero existe un procedimiento con el mismo nombre para añadir números a un TRealList, así, podría ser para un objeto RL, de este tipo:
RL.Add (12)
Obviamente:
RL.Add ('Una cadena')
producirá un mensaje de error.
Para las listas:
LClear -> Clear LCount -> Count SLAdd / RLAdd / PLAddP -> Add SLAddStrings / RLAddNums / PLAddPoints -> AddItems SLIndexOf / RLIndexOf -> IndexOf SLGetItem / RLGetItem / PLGetItem -> GetItem SLSetItem / RLSetItem -> SetItem
Para las listas y TRMatrix:
LLoadedFFile / RMLoadedFFile -> LoadedFFile LSavedToFile / RMSavedToFile -> SavedToFile LPasteFromClb / RMPasteFromClb -> PasteFromClb LCopyToClb / RMCopyToClb -> CopyToClb SLSort / RLSort / RMSort -> Sort RLMean / RMMean -> Mean RLSum / RMSum -> Sum RLStdDev / RMSD -> StdDev
Para TRList y TRMatrix:
RLDistrShape / RMDistrShape -> DistrShape RLMean / RMMean -> Mean RLSum / RMSum -> Sum RLStdDev / RMSD -> StdDev RLVMin / RMMin -> VMin RLVMax / RMMax -> VMax
Para TStringList:
InputSL -> Input SLLoadFNFDir -> LoadFNFDir
Para TRList:
RLPercentile -> Percentile
Para TPointList
PLAddXY -> AddXY PLLimits -> Limits PLCenter -> Center PLFlip -> Flip PLMoveAD -> MoveAD PLMoveV -> MoveV PLRotate -> Rotate PLScale -> Scale PLPolygon -> Polygon PLPolyJump -> PolyJump PLPentagon -> Pentagon PLHexagon -> Hexagon PLOctagon -> Octagon
Para TRMatrix:
RMEdit -> Edit InputRM -> InputAny InputRCRM -> InputWRowCol InputSRM -> InputSquareAny InputSSRM -> InputSquareSize RMDelEmptyR -> DelEmptyR RMFromRCStr -> FromRCStr RMCopy -> Copy RMRows -> Rows RMCols -> Cols RMGetVal -> GetVal RMGMean -> GMean RMGSD -> GStdDev RMGDistrShape -> GDistrShape RMPercWhole -> PercWhole RMPercByC -> PercByC RMKhi2OO -> Khi2OO RMKhi2TO -> Khi2TO RMAnMeanPV -> AnMeanPV
Se ha extendido el uso de variables compuestas (record, en la sintaxis de Pascal), variables que anteriormente eran aisladas: así:
TextHGap -> TextGap.H TextVGap -> TextGap.V TextHPos -> TextPos.H TextVPos -> TextPos.V
Se han separado el tipo de letra de los mensajes y entradas del tipo de letra del dibujo, así:
Font -> Font / DFont Font -> Font.SetVals / DFont.SetVals FontName -> Font.Name / DFont.Name FontSize -> Font.Size / DFont.Size FontColor -> Font.Color/ DFontFill.Color
RNumCopyMode se ha convertido en NFormat.Decim, pero afectando a todas las conversiones de número real a cadena, si se utiliza. Se ha añadido además: NFormat.Thous.
Añadido: DateFormat.
KeyPressed se ha renombrado a CharTyped, ahora hay una nueva y diferente KeyPressed.
AngleFromPP devuelve el ángulo como último parámetro y un valor booleano.
Añadidos: NormalAngle, ISectPPPolyL, ISect2PolyL.
Incorporación de la biblioteca Agg2D.pas (Anti-Grain Geometry for Object Pascal), principalmente por:
Posibilidad de dibujar las líneas con gruesos no enteros.
Posibilidad de dibujar las líneas rectas con patrones (por ejemplo: línea punteada) que antes sólo era posible para líneas de ancho de un pixel.
El color de los puntos es ahora una variable independiente del color de las líneas. Añadida a puntos la propiedad Fill para llenar (o no: opción por defecto) los puntos de círculo, rectángulo, cuadrado, rombo y triángulos; entonces: ptsCircle1 y ptsCircle2 -> ptsCircle.
Añadido triángulo y pastel.
Se han renombrado algunos de los procedimientos:
EllipseXY -> Ellipse2PXY EllipseP -> Ellipse2PP ArcXY -> Arc4PXY ArcP -> Arc4PP
debido a la incorporación de los procedimientos:
Se han renombrado algunas variables:
Para texto:
Creación de nuevas órdenes para dibujado de texto:
Vista del aspecto de las opciones por defecto de dibujo, añadiendo la posibilidad de guardar las del punto.
Añadidas las órdenes:
Para personas que no sean ciegas y en el editor de programas: la posibilidad de asignar puntos de pausa (breakpoints) clicando en la parte izquierda de la barra de los números de línea.
Al cargar de nuevo un programa o de nuevo un cálculo no se redimensiona la ventana principal.
Instalación para Windows 7, ahora los archivos de configuración y los ejemplos se colocan en C:/Users/../AppData\Roaming\ATCalc.
Se carga correctamente el último programa guardado, e igualmente el mensaje de guardar el programa modificado, al cerrar el programa, ahora funciona correctamente. Se guarda correctamente el número de decimales para los programas.
Actualización de la lista de funciones (y otras), sin necesidad de reiniciar el programa.
Error en la interpretación de las constantes prediseñadas cuando el programa tiene más de 255 líneas.
Resultado de la media.
Asignación del color de fondo del dibujo desde la página de Opciones comunes.
Se guarda (y recupera) el tamaño de paso del eje secundario. Error en la recuperación del subtítulo.
Aspecto de los puntos (distintos de sencillo y círculo) en modo de coordenadas cuando el tamaño de abscisas y ordenadas no coincidían.
Reestructuración del código.
Nueva función: CubRt.
Cambio de la parrilla de la asignación de variables.
Asignación automática de las secuencias de teclas Alt-carácter para los controles con etiqueta.
Mejora de las ayudas para el dibujo.
Añadido para las personas que utilizan lectores de pantalla del incremento de las variables presentadas.
Resolución de errores en la presentación de funciones con escala logarítmica y dibujo de leyenda.
Las variables, constantes, funciones y procedimientos creados por el usuario pueden contener cualquier letra (por ejemplo, con acentos).
Añadido acceso directo a la solicitud de nueva característica por el programa. Resueltos unos errores.
Dos tamaños en la imagen de las casillas de verificación y de los botones redondos (según el tamaño del tipo de letra).
Añadido acceso directo a la notificación de errores del programa. Resuelto un error.
Mejor adaptación para personas ciegas. Resolución de algunos errores.
Adaptación para personas ciegas, que utilicen lectores de pantalla.
Modalidad de la visualización de las funciones, procedimientos y constantes en parrillas.
Mayor rapidez al poner en marcha el programa cuando se visualizan las funciones, procedimientos y constantes, en cualquiera de las dos modalidades (botones y parrilla).
Se muestra el tipo de resultado de las funciones en las ayudas.
Independencia de los módulos de cálculos/fórmulas y el del entorno a programación.
Para personas con dificultad de visión y demostraciones:
Añadido: Break.
Resueltos algunos errores de visualización de las entradas InputXX.
El paquete médico se distribuye separadamente.
ATCalc permite pasar parámetros en la línea de comandos.
Los proc. de presentación (DialogText..) y algunas func. de entrada InputBool, InputText, InputTextW e InputIntFL, permiten presentar además de los archivos de imagen y de texto: archivos htm/html, con lectura y navegación directa.
Nuevas variables/funciones/procedimientos:
Se han añadido constantes para las variables:BrushStyle, PenStyle, ShapeStyle, PointSymbol, TextPosH, TextPosV, ExpImgFile y ExpImgClb, facilitándose la introducción de estas.
Facilitación de la escritura de las órdenes de los bloques.
Los comentarios/explicaciones de las fórmulas o programas permiten la visión (además del texto corto) de archivos (con la orden ): directamente (de imagen, txt y htm/html) o indirectamente (por la apertura del archivo con el programa conveniente).
Publicación del código según la GPL (General Public License) de GNU (http://www.gnu.org) - FSF (Free Software Foundation), en sourceforge.net.
Nuevas funciones/procedimientos:
Pasan a ser variables los siguientes procedimentos: SaveInputPos, FontName, FontSize, FontColor, PenColor, PenStyle, PenWidth, BrushColor, BrushStyle, ShapeStyle, PointSymbol, PointSize, TextPosH, TextPosV, TextGapH, TextGapV, TextGapMode. Por ejemplo: FontSize (12) -> FontSize := 12, así es válido if (FontSize > 18) o WriteTextLn (FontSize).
En los proc. de presentación (DialogText..) y las func. de entrada (Input...) se puede cambiar el tipo de letra.
Los proc. de presentación (DialogText..) y algunas func. de entrada InputBool, InputText, InputTextW e InputIntFL, permiten presentar archivos de imagen y de texto: posibilidad de hacer presentaciones.
InputIntFL: también permite utilizar una TStringList como lista de elementos, y puede devolver un número diferente al correspondiente al orden. Hay el nuevo parámetro del número de columnas.
En varias funciones de entrada, si entra más de una línea en el texto de presentación, todas menos la última línea formarán una etiqueta explicativa antes del componente de entrada.
Se desactivan los botones (y se esconden las hojas) de funciones/procedimientos no utilizables en el modo de no-programación. Directorio independiente con formularios, programas y constantes.
Resuelto un error de visualización de las ayudas.
Mayor adaptación a la sintaxis de programación en pascal:
Si P es un punto, se puede acceder a X y Y así: P.X y P.Y, por tanto han sido eliminados: XToP, YToP, XFromP e YFromP.
Nuevas funciones/procedimientos:
Comentarios en cualquier sitio, entre { y }.
Se comprobaran que las entradas del panel de las variables tengan un valor asignado antes de realizar un cálculo o ejecutar un programa, salvo que se indique lo contrario. En este último caso, se podrá comprobar si no se ha asignado un valor, con la nueva función: VarIsEmpty. El panel ahora admite entrada con lista desplegable.
Cálculo de la integral (regla del trapezoide).
No limitación del número de decimales, cuando Decim., de la ventana principal, es -1.
Orden de interrupción de la ejecución de un programa.
Determinación (previa al dibujo de funciones) del intervalo de Y, según el intervalo de X de la función a representar.
Formula.ftxt -> Calculos.ftxt + Programas.ftxt.
Mayor adaptación a la sintaxis de programación en pascal:
Utilización de diferentes tipo de letra en el modus de programación, por distinguir palabras llave de programación, números, texto y comentarios. Exportación de este código a formato rtf y htm.
Nuevas funciones: FormDialogText, ahora con tres variantes, funciones por posibilitar la entrada de valores para variables (InputBool, InputText, InputInt, InputReal, con subvariantes, InputCpx, InputFileNO, InputFileNS, InputEDate, InputADate, InputTime, InputDrwP), Inc, Dec, Ord.
Nuevas constantes: LineBreak (salto de línea) y TabChar (carácter de tabulación) y la nueva función RealToTextD (número real a texto con un número definido de decimales). Entonces se eliminan las funciones de escritura que utilizaban salto de línea y tabuladores (WrXXX). Sólo quedan WriteText y WriteTextLn, que ahora permiten cualquier variable o constante como parámetro, convertiéndola automáticamente en texto.
Posibilidad de definir además de las entradas de variables con valor real (en el panel correspondiente de la ventana principal): variables de números entero, texto y booleanas.
Mejora en la depuración del programa:
Posibilidad de programación (ejecución secuencial, o no: según unas condiciones, de varias líneas con fórmulas o indicaciones de ejecución).
A las variables se pueden asignar un título que se mostrará en la entrada de la variable. También se pueden añadir valores de validación para las mismas y comprobación de asignación de valores. Se aumentan hasta 8 posibles.
Selección de la visualización del desplegable de las funciones por grupos.
Se añade un panel de botones con las funciones y constantes que uno crea más útiles.
Se añaden funciones aritméticas (Ceil y Floor: nuevos redondeo de números reales; Odd: impar; RandomR: aleatorio entre números; ToRange por asegurar que una variable esté dentro de un margen); LastCipher: última cifra de un número; y trigonométricas (Hypot: hipotenusa; cotangente, secante y cosecante con todas sus relacionadas).
Se pueden representar ecuaciones, así como dibujar con la programación descrita distintas formas (líneas, puntos, rectángulos, elipses, etc.) e incluso texto. Los gráficos obtenidos se pueden exportar directamente en archivos de imagen (BMP, GIF, JPG, PNG) y vectoriales (EMF, SVG); o al portapapeles.
En la calculadora temporal se pueden escoger el tipo de entrada para las fechas: exacta o aproximada.
Posibilidad de cambio de los tipos de caracteres, pudiendo aumentar la medida para personas con dificultad de visión, o para realizar demostraciones.
Utilización de los iconos estándar de programas de código abierto (Open Office, Gimp, etc).
Nuevo cambio de nombre de SCalc a ATCalc.
IMPORTANTE: Los que dispongan de la versión anterior, han de renombrar los archivos de las listas de los cálculos, como Formula.txt, a Formula.ftxt; entonces el programa hará su actualización automática. La extensión del archivo de constantes, también txt, se ha de renombrar a cttx
Fundamentalmente:
Se añaden muchas funciones estadísticas, un panel para visualizar las variables y resultados obtenidos, posibilitado tener más de una lista de fórmulas, posibilidad de utilizar constantes de resultado, resolución de un problema de visualización de las listas y anotación de errores críticos (que no se tendrían que producir) a un archivo log. Ver el resultado redondeado en hexadecimal, binario y cifras romanas y obtener a partir del valor hexadecimal o de la cifra romana el correspondiente valor decimal. Obtención de los porcentajes y recuentos por una serie de variables cualitativas.
Introducción de la calculadora temporal.
Cambio de nombre del programa que cambia de CalcMath a SCalc.
Nueva ventana de selección de fórmulas, con buscador.