Lo Nuevo
(Texto en rojo indica modificaciones que pudieran romper su actual código)
Novedades en la versión Xailer 8.2.1
- IDE:
- Error en la opción de menú contextual ‘Cambiar a’ de control TSplitButton
- Controles
- TWebView: Nueva propiedad nZoomFactor (NOTA: 1.0 es 100%, 1.5 es 150%, etc.)
- TButtonMod: Error de visualización cuando se incluía ‘&’ en el texto
- TButtonMod: Nueva propiedad lLegacyBehaviour para que INTRO dispare siempre OnClick
- THeaderItemMod: Incorrecto pintado de la columna seleccionada
- TComboboxMod: Error en metodo GetText cuando lFreeEdit a .T.
- TBrowseMod: Error en asignacion de propiedad lHotTrack
- TBrowseMod: Error en eventos: lButtonDown, lButtonUp, RButtonDown y RButtonUp
- DataControls
- libSqlite.a: Actualizada a 3.41.2
- TDbBrowseMod: Control de errores y mejoras en AdjustColWidth()
- TDbBrwColMod: Error en asignación del TDatafield
- TDbComboboxMod: Error en metodo SetValue() para tipo dtIndex y dtBound con lFreeEdit
- Funciones
- Nueva función GetCurrentProcessId() –> nProcessId
Novedades en la versión Xailer 8.2.0
- IDE:
- Poner automáticamente el texto HB_SYMBOL_UNUSED( [Parameters] ) cuando se crean métodos en el IDE si el nivel de warning del compilador está establecido a un valor de dos o superior
- Al añadir una imagen desde disco (no recursos) a un TBtnBmp a veces no la cargaba
- Nuevo editor de propiedades para propiedades que pueden depender de Application:nScale
- Nuevo evento ED_TabContextMenu para plugins y componentes
- Controles
- TListBoxMod: Error en método OnClick
- TListboxMod: Nuevo evento OnChanged()
- TCheckBoxMod: Mejoras de pintado
- TRadioMod: Click de ratón no cambiaba el foco al control
- TButtonMod: Error de centrado del texto cuando se usaban aceleradores
- TButtonMod: Click de ratón no cambiaba el foco al control
- TButtonMod: : Realizar opacidad con actual color de fondo
- TBtnPanelMod: Realizar opacidad con actual color de fondo
- TBrowseMod: Error en métodos SaveState y RestoreState
- TBrowseMod: Nueva propiedad lHotTrack
- TBrowseMod: Nueva propiedad lOnEditUseReturn (PUBLIC) Valor NIL utiliza Application:lUseReturn
- TBrowseMod: Centrar imagen cuando no hay texto en el header de las columnas
- TBrowseMod: Mejoras en evento OnContextMenu y OnEnter
- TBrowseMod: OnChar no se disparaba
- TBrowseMod: Evitar disaro de doble-click si ratón encima de barras de scroll virtuales
- TBrowseMod: Nueva propiedad nMargin
- TBrowseMod: Error en la gestión de filtros de la cabecera
- TBrwColMod: Permitir el uso del evento EditForGrid:OnBtnClick por el usuario
- TBrwColMod: Error en alinemiento del gridedit
- TBrwColMod: Error an asignacion de valores por lista desplegable
- TCalendarMod: Error de modo multi-select
- TTreeView: Nuevas propiedades nClrSelFocus y nClrSelItem
- TFastReport: Corregido error de exportación a ODT
- DataControls
- libSqlite.a: Actualizada a 3.41.0
- TMemDataset:Error en método OrgRecno y cambios menores
- TWebDataSource: Nueva propiedad nSendTimeOut para el envío de emails
- TWebDataSource: Nuevos métodos RenameFile(), UpLoadFile(), DnLoadFile(), ADirs(), AFiles(), RemoveDir()
- TWebDataSource: Soporte del método Refresh() que figuraba como VIRTUAL
- TDbBrwColMod: Nueva propiedad de sólo lectura cDataField
- Clases
- TApplication: Nueva propiedad hVersionInfo
- TScreen: A veces ::aMonitors no tenía los monitores correctamente ordenados
- TWiaScan: Devices() ahora contiene un tercer valor en cada elemento con el tipo de dispositivo (0=Default, 1=Scanner, 2=Camera, 3=Video)
Novedades en la versión Xailer 8.1.0
- General:
- Nuevo sistema de ayudas XHtmlHelp
- TForm: Nueva propiedad XHtmlHelp
- IDE:
- Soporte de comandos ‘dummy’ REGION, BEGINREGION y ENDREGION para folding en editor
- Soporte de tres monitores
- Controles
- TSummerNote: Nuevo control de edición HTML basado en TWebView
- TAnimatedGif: Nuevo control para mostrar gifs animados
- TWebView: Nuevo evento OnWebMessageReceived( oSender, cJson )
- TWebView: Solucionado definitivamente el GPF esporadico al crear el control
- TWebView: Nuevo método DeleteAllCookies()
- TBrowseMod: Nuevos eventos OnPostSave() y OnChangeSelected()
- TBrowseMod: Error en procesamiento de lFastEdit
- TBrowseMod: Error en búsqueda incremental
- TBrowseMod: Nuevo metodo TBrwGroup:SumTotal( xCol )
- TCheckBoxMod: Eliminado evento OnChanged() por inútil. y por mantener funcionalidad con clases no tipo ‘Mod’
- TRadioMenuMod: Eliminado evento OnChanged() por inútil. y por mantener funcionalidad con clases no tipo ‘Mod’
- TCheckBoxMod: Cambios en evento OnChange( oSender, lNewValue ) recibe ::lChecked cambiado, pero igualmente se puede cambiar
- TRadioMenuMod: Cambios en evento OnChange( oSender, lNewValue ) recibe ::lChecked cambiado, pero igualmente se puede cambiar
- TCheckBoxMod: Mejoras de pintado
- TRadioMenuMod: Mejoras de pintado
- TComboBoxMod: Nuevos eventos: InsertItem(), AddItem(), DeleteItem(), DeleteItems(), ModifyItem() y GetCount(). Por compatibilidad con version NO Mod
- TRadioMod: Mejoras de pintado
- TSwitch: Cambiar efecto de foco para igualarlo al resto de controles MOD
- TListboxMod: Nuevos metodos CheckAll() y UnCheckAll()
- TListboxMod: Evento OnClick se disparaba dos veces
- TTooltip: No se estaban mostrando los links
- TTooltip: Nuevo parametro <nLink> en OnLinkClick( oSender, nLink ) que indica el numero de link pulsado, comenzando por 1
- TLabelEx: Nuevo parametro <nLink> en OnLinkClick( oSender, cText, nLink ) que indica el numero de link pulsado, comenzando por 1
- TColorComboBox, TComboBox, TFontCombobox, TOptionList: Mejoras en escalado
- TUpDownMod: Soporte de repetición
- TEditMod: Evitar que se vea el texto con password si se ha hecho un paste o setvalue
- TPicture: Añadido parametro <nImageIndex> a todos los metodos LoadXXX()
- DataControls
- libSqlite.a: Actualizada a 3.40.0
- TDbBrowseMod: Error en método Save
- TMemDataset: Nuevos métodos: TableName(), SqlInsert() y SqlUpdate()
- TWebDataSource: Nuevos métodos: CurrentDir(), IsDir(), MkDir() y ForceDir()
- TWebDataSource: Nuevo método: SendMail()
- TWebDataSource: Mejoras en conexión y control de errores
- Clases
- TApplication: Nueva propiedad lDpiAware
- TReport: Nueva propiedad cPdfFilename
- TPrinter: Nuevo metodo EmfToPrinter( nPrinter, nFirst, nLast )
- TSumatraPrinter: Error cuando se intentaba cambiar cualquier propiedad
- TSumatraPrinter: Nueva propiedad nPageOrient
- report.ch: Nuevas cláusulas: REPORT .. TO PDF <cPdf> y REPORT .. KEEP
- Funciones
- Nueva función xa_VarsEqual( xValue1, xValue2 ) –> lEqual (value)
- Nueva función xa_UnixTimeStamp2DateTime( nTimeStamp ) –> dtValue
Novedades en la versión Xailer 8.0.1
- Controles
- TWebView: Evitar instanciar ICoreWebView2EnvironmentOptions si no es estrictamente necesario. Una actualizacion reciente de windows esta provocando GPF al instanciar esta interfaz en algunos usuarios
- TWebView: Nuevo parámetro lIsUtf8> que indica si la cadena ya esta en formato UTF8: METHOD SetContent( cHtml, [lIsUtf8] ) -> nError
- TGoogleDrive: Cuando cToken es incorrecto, volver a pedir identificarse al usuario, Error cuando ‘errorcode’ se recibia como numerico
- TDropBox: Cuando cToken es incorrecto, volver a pedir identificarse al usuario, Error cuando ‘errorcode’ se recibia como numerico
- TOneDrive: Cuando cToken es incorrecto, volver a pedir identificarse al usuario, Error cuando ‘errorcode’ se recibia como numerico
- TBrowseMod: Nuevo evento OnClickRecSelector()
- THeaderMod: nHeaderHeight 0 por defecto. En dicho caso se calcula automáticamente
- TBrowseMod: Recuperar recno despues de un cambio de filtro
- TCheckBoxMod: Error de pintado cuando disabled
- TRadioMod: Rediseño de pintado del control
- TUpdDownMod: Nueva propiedad nClrPenDisabled
- TEditMod: Error al mostrar el texto con estilo esPASSWORD
- THeaderMod: nHeight 0 por defecto. En dicho caso se calcula automáticamente
- DataControls
- TDbBrowseMod: Rediseño de su sincronización con dataset
- TDbComboBox: Rediseño de GetValue() y SetValue por cambios en Datacontrols
- Clases
- TPrinter: Error en método PreviewControl
- Comandos
- Nueva claúsula en comando FILE ADDITIVE
- Nueva claúsula en comando TEXT INTO ADDITIVE
- Ejemplos
- samples\Datacontrols\MariaDB: Nuevo ejemplo de browse con MariaDB
- samples\Modern\Browses\Freeze: Nuevo ejemplo de browse simulando un freeze de columna
Novedades en la versión Xailer 8.0.0
- General
- Corregidos problemas de pintado en Windows 11
- Controles
- TGoogleDrive: Nuevo control para acceder a la nube de Google Drive
- TDropBox: Nuevo control para acceder a la nube de DropBox
- TOneDrive: Nuevo control para acceder a la nube de Microsoft
- TShape: Nuevo control para pintar distintas figuras geométricas
- TUpDownMod: Nuevo control ‘up-down’ estilo moderno
- TGmailSend: Adaptada a los cambios realizados por Google
- TBrowseMod: Error en pintado de líneas verticales
- TBrowseMod: Error en método DelCol y en evento OnSaveCol
- TBrowseMod: Error en edición de FastEdit
- TBrowseMod: Nueva propiedad lAlternateColor (browses con estilo papel pijama)
- TTrackBarMod: Error en pintado del globo con el porcentaje actual
- TFastReport: Nuevo método StopReport()
- TButtonMod: Nueva propiedad nBorderRadius
- TButtonMod: Eliminada propiedad nBmpAlignment
- TButtonMod: Nuevas propiedades: oMenu y nOrientation
- TButtonMod: Nuevo evento OnMenuClick
- TButtonMod: Nuevas propiedades lDefault y lCancel
- TButtonMod: Eliminada propiedad oBitmaps. Sustituida por oImagelist + nImage
- TBtnPanelMod: Nueva propiedad nBorderRadius
- TEditBtn y TDateEdit: Mejoras de pintado
- TListBoxMod: Nueva propiedad lShortCuts para soportar atajos de teclado
- TSplitter: Removed nResizeStyle property as useless
- TTabs/TTabsItem: Eliminados bitmap de la cruz para cerrar pestañas. Ahora se pintan
- TImagelist/TBtnBmp: Soporte de ficheros PNG
- THyperLink: No funcionaban los atajos de teclado (shortcuts)
- TRadioMod: Nueva propiedad nOpacity
- TRadioMod: Eliminada propiedad nVAlignment (gestión deprecated)
- TRadioMod: Cambiada altura a 28
- THeaderMod: Cambiada altura a 28
- TEditMod: Cambiada altura a 28
- TEditMod: Evitar guión bajo en cHint
- TBrowseMod: Cambiada altura a de Header y Footer a 28
- TComboBoxMod: Soporte de filtros en la lista desplegable según texto introducido
- TFastReport: Error en VariableList() y CategoriesList()
- DataControls
- TDataset: Error por actualizacion indebida de campos no modificados A partir de Xailer 8 se controla cualquier cambio de tipo (Valtype()) en los campos de un dataset (TDataField) y se generá un error de ejecución en el caso de que se produzcan. Es probable que esto provoque errores en su código. Entendemos que es mejor mostrar el ERROR que enmascararlo.
- TDataField: Nuevo método HasChanged( Value )
- TSqlite: Actualizado a la versión 3.38.5
- TSqlite: Permitir conectar (ATTACH) una BD sin cifrar a una BD cifrada ya abierta. Antes las dos BD tenian que estar sin cifrar, o cifradas con la misma clave. Ahora, la segunda puede estar sin cifrar. Si ambas estan cifradas pero con distinta clave se producira un error.
- Sqlite:: Aumentada la precision de la funcion local_timestamp() a milisegundos
- TMySql/TMariaDB:: Permitir indicar la precision de los DATETIME y TIMESTAMP en CreateTable() La precision se indica como decimales, mientras que la longitud se puede dejar a 0 y se ignora. P.ej.: { «Fecha», «T», 0, 3 }
- TDBBrowseMod: Error en AdjustColsWidth()
- Nuevo método en todos los DataControls DbLinked() que permite saber si el DataField ha sido asignado con éxito
- TWebDataSource: Actualizado modulo XA_wdsMySql.php con soporte de charset
- Clases
- TSysVer: Soporte de Windows 11
- Funciones
- Nueva función XA_DRAWROUNDEDRECT // XA_DrawRoundedRect( hDC, rect, nDia, nColor, nTransparency, nPenSize ) –> NIL
- Nueva función XA_FILLROUNDEDRECT // XA_DrawRoundedRect( hDC, rect, nDia, nColor, nTransparency ) –> NIL
- Nueva función XA_UrlEncode( ) ->
- Nueva función XA_UrlDecode( ) ->
- Nueva función XA_UrlDecodeToAnsi( ) ->
- Nueva función XA_DateTimeZ2Local( )
- Comandos
- Nuevo comando: FILE INTO NOTA: Permite leer el contenido del fichero dentro de la variable , en tiempo de compilacion. Funciona parecido a #include, pero el contenido va a parar a la variable