FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index WhatsNew / Novedades New FTDN November/Noviembre (FWH 21.11)
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
New FTDN November/Noviembre (FWH 21.11)
Posted: Tue Nov 30, 2021 07:19 AM

July 2021 to November 2021

  • Enhancement: WindowsXP.Manifest64 has been updated to make it Windows 11 compatible.

  • New: function FrameTiff( cTiffFileName ) converts multipage TIFF file into multiple JPGs.
    Many thanks to Manuel Alvarez: viewtopic.php?p=243471#p243471
    and Hakan Onemli: viewtopic.php?p=243513#p243513

  • New: Class TTVItem Method Bold( lOnOff ) to set bold an item of a TTreeView.

  • Class TArrayData (tarrdata.prg)

  • Can assign a value to a field in all rows by
    oData:cFieldNameS := <val>

  • Fix: FWH\DLL\rc2dll64.bat has been updated to properly work with Microsoft Visual Studio Community

  • New: Class TTreeView METHODs Len() and Count(). Class TTVItem METHODs Len() and Count().
    Please review samples\pim.prg for an example to use these new methods.

  • New: FWMARIADB:
    New DATA lThrowError INIT .f.
    If set to .T., any failed DML (INSERT,UPDATE,REPLACE,DELETE) operation
    will raise a runtime error.
    This applies to execution of any DML statements with method Execute()
    or using methods Insert(...), Upsert(...) and Update(...)
    This us provided to faclititate grouping of several DML statements/
    methods inside TRY/CATCH block for Transactions.
    Example Usage:
    // --------
    local lError := .f.
    oCn:BeginTransaction()
    oCn:lThrowError := .t.
    TRY
    oCn:Insert(....)
    oCn:Update(...)
    oCn:Execute( "INSERT ... " )
    ...
    CATCH
    lError := .t.
    END
    oCn:lThrowError := .f.
    if lError
    oCn:RollBack()
    else
    oCn:CommitTransaction()
    endif
    // --------
    Re:http://www.fivetechsupport.com/forums/viewtopic.php?f=6&t=40836&sid=188a4f759724e9ee84fc14ac42ab4dd5

  • Enhancement: Some minor changes in samples\buildh64.bat. Now we use x86_x64 instead of previous x86_amd64

  • Enhancement: function FW_ProperCase( cStr ): Words with prefix
    "Mc" are recognized for appropriate capitalization.

  • New functions FW_TRIM,FW_RTRIM,FW_LTRIM,FW_ALLTRIM(cStr,[cTrimChars])
    These functions trim not only spaces, but all control characters,
    which include white-spaces like TABs, CRLF(EOL), EOF, EOpage, etc.
    If an optional list of characters is provided in the second
    parameter, these characters also are trimmed.

Eg:
cStr := CRLF + CHR(9) + "<<< GOOD >>>" + CRLF + CHR( 26 )
FW_AllTrim( cStr, "<>*" ) --> "GOOD"

  • FWMARIADB:

  • Method RowSet() was not accepting SQL queries starting with "WITH ".
    Fixed.

  • Method PivotArray( cTable, ... ) works well where cTable is a table,
    view or a simple Sql query but failing with complex queries eg.,
    contaiting UNION clause. Now cTable can be a complex query also.

  • function MemoryBufferType() now recognizes DOC.PDF also.

  • When CenterMsgs( .t. ) is set, now Alert and MsgGet() dialogs are also
    centered in the default window/dialog.

  • TDataRow(): Enhanced enabling/disabling behavior of save button
    in default dialogs.

  • samples\build.bat: added hbpcre.lib to link script to provide
    support for regex.

  • XBROWSE:

  • Method Report(): Added new 7th param aCols. If specified,
    only these columns are printed in the report.

  • Fix: ButtonBar method Del( nPos ): The deleted button still
    appears. Fixed.

http://forums.fivetechsupport.com/viewt ... 9088e15266

  • Enhancement: function LogStack( [cLogFile] ). New optional
    parameter cLogFile can be used to specify the log file.
    By default, the function writes the log to "stack.txt"

  • New: function SetFolderIcon( cFolder, cFileIco, [cInfoTip] )
    --> lSuccess
    Sets Icon to a folder, with optional InfoTip

http://forums.fivetechsupport.com/viewt ... 2078c6a776
Parameters:
1. cFolder: Name of the folder. Trailing '\' is optional.
Path can be full or relative.
If the folder does not exist, the folder is created.
2. cFileIco: Icon file or library of icons with full or
relative path. Accepted file types are ico,exe,dll,icl.
By default the first icon contained in the exe,dll,icl is
used. To use other icon, zero based index number of the
icon can be specified in parenthesis like this:
Eg:"c:\mypath\myapp.exe(2)". In this case, 3rd icon is
displayed/
3. [cInfoTip]; Optional. Displayed on mouse hover

  • TMSGBAR
  • New DATA nTimer: configure timer
  • Added ( 64 bits ) when your app is build as 64 bits application

  • New function SetSysColors( aItems, aRgbColors ) --> lSuccess

http://forums.fivetechsupport.com/viewt ... 9b28c0db17
Also read Windows documentation on GetSysColor(n) and
SetSysColors()

https://docs.microsoft.com/en-us/window ... etsyscolor

https://docs.microsoft.com/en-us/window ... tsyscolors

  • New function FW_URLENCODE( cText ) --> urlencoded string
    \source\function\str2hex.c

  • New readonly DATA LastValidValue in TControl class: This data is
    updated by all controls, when valid is executed.

  • TControl (applies to all controls): Unhandled Ctrl-S key is forwarded
    to the container window.

  • datarow.prg: Pressing Ctrl-S in any control, saves data.

  • memoedit.prg:

  • Fix: Due to the changes made in version FWH2012,
    the functions FW_MemoEdit( cText, .. ), RichEdit(...), RichEdit5(...)
    were not displaying/editing RTF text. Fixed.

  • Enhancement: In FW_MemoEdit(cText,...), RichEdit(),
    RichEdit5() functions it is possible to specify a
    filename instead of text.

  • Enhancement: New methods class TRichEdit and TRichEdit5:
    METHOD GetLangOptions()
    METHOD SetLangOptions( lOnOff, nFlagSet )

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 1144
Joined: Mon Feb 05, 2007 07:15 PM
Re: New FTDN November/Noviembre (FWH 21.11)
Posted: Tue Nov 30, 2021 09:18 PM

Gracias Antonio !

Cesar Cortes Cruz

SysCtrl Software

Mexico



' Sin +- FWH es mejor "
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: New FTDN November/Noviembre (FWH 21.11)
Posted: Tue Nov 30, 2021 10:38 PM

Julio, Agosto, Septiembre 2021

  • Mejora:Se ha actualizado WindowsXP.Manifest64 para hacerlo compatible con Windows 11.

  • Nuevo: Nueva funci贸n FrameTiff( cTiffFileName ), convierte un fichero TIFF multip谩gina en
    m煤ltiples ficheros JPGs.
    Muchas gracias a Manuel Alvarez: viewtopic.php?p=243471#p243471
    Muchas gracias a Hakan Onemli: viewtopic.php?p=243513#p243513

  • Nuevo: Nuevo m茅todo Bold( lOnOff ) en la clase TTVItem, para poner en negrita un item de un TTreeView.

  • Clase TArrayData (tarrdata.prg)

  • Puede asignar un valor a un campo en todas las filas mediante oData:cFieldNameS := <val>

  • Correcci贸n: FWH\DLL\rc2dll64.bat ha sido actualizado para poder usarlo con Microsoft Visual Studio Community.

  • Nuevo: Nuevo m茅todos Len() y Count() en las clases TTreeView y TTVItem.
    Por favor, revisa samples\pim.prg para un ejemplo de uso de estos nuevos m茅todos.

  • Nuevo: FWMARIADB:
    Nueva DATA lThrowError INIT .f.
    Si es puesto a .T., cualquier opraci贸n DML (INSERT,UPDATE,REPLACE,DELETE) generar谩 un error en tiempo de ejecuci贸n.
    Esto se aplica a la ejecuci贸n de cualquier declaraci贸n DML con el m茅todo Execute () o utilizando los m茅todos
    Insert (...), Upsert (...) y Update (...)
    Esto lo proporcionamos para facilitar la agrupaci贸n de varias declaraciones / m茅todos DML dentro del bloque
    TRY / CATCH para transacciones.
    Ejemplo de uso:
    // --------
    local lError := .f.
    oCn:BeginTransaction()
    oCn:lThrowError := .t.
    TRY
    oCn:Insert(....)
    oCn:Update(...)
    oCn:Execute( "INSERT ... " )
    ...
    CATCH
    lError := .t.
    END
    oCn:lThrowError := .f.
    if lError
    oCn:RollBack()
    else
    oCn:CommitTransaction()
    endif
    // --------

http://www.fivetechsupport.com/forums/v ... ac42ab4dd5

  • Mejora: Algunos peque帽os cambios en samples\buildh64.bat. Ahora usamos x86_x64 en lugar de la versi贸n
    previa x86_amd64.

  • Mejora: Funci贸n FW_ProperCase( cStr )
    Las palabras con el prefijo "Mc" se reconocen por su uso apropiado en may煤sculas.

  • Nuevas funciones FW_TRIM,FW_RTRIM,FW_LTRIM,FW_ALLTRIM(cStr,[cTrimChars])
    Estas funciones recortan no solo los espacios, sino todos los caracteres de control, que incluyen espacios
    en blanco como TAB, CRLF (EOL), EOF, EOpage, etc.
    Si se proporciona una lista opcional de caracteres en el segundo par谩metro, estos caracteres tambi茅n se
    recortan.
    Ejemplo:
    cStr := CRLF + CHR(9) + "<<< GOOD >>>" + CRLF + CHR( 26 )
    FW_AllTrim( cStr, "<>*" ) --> "GOOD"

  • FWMARIADB:

  • M茅todo RowSet() no aceptaba consultas SQL que comenzasen con "WITH".
    Solucionado.

  • M茅todo PivotArray( cTable, ... ) funciona bien donde cTable es una tabla, vista o una consulta SQL simple
    pero falla con consultas complejas, por ejemplo, conteniendo la cl谩usula UNION. Ahora cTable tambi茅n puede ser
    una consulta compleja.

  • La funci贸n MemoryBufferType() ahora reconoce tambi茅n ficheros DOC,PDF.

  • Cuando se establece CenterMsgs( .T. ), ahora lod di谩logos de las funciones Alert() y MsgGet() tambi茅n se
    centran por defecto.

  • TDataRow(): Comportamiento de activaci贸n/desactivaci贸n mejorado del bot贸n "Guardar" en los cuadros de di谩logo
    predeterminados.

  • samples\build.bat: Se ha a帽adido la librer铆a hbpcre.lib al script de enlazado para proporcionar soporte a las
    expresiones regulares.

  • XBROWSE:

  • M茅todo Report(): Se ha a帽adido un nuevo par谩metro (s茅ptimo) aCols. Si es especificado s贸lo estas columnas son
    impresas en el informe.

  • Correcci贸n: En el m茅todo Del( nPos ) de la clase ButtonBar. El bot贸n borrado todav铆a aparec铆a. Solucionado.

http://forums.fivetechsupport.com/viewt ... 9088e15266

  • Mejora: En la funci贸n LogStack( [cLogFile] ). Nuevo par谩metro opcional "cLogFile" puede ser usado para especificar
    el fichero de log.
    Por defecto, la funci贸n escribe el log en el fichero "stack.log".

  • Nuevo: Nueva funci贸n SetFolderIcon( cFolder, cFileIco, [cInfoTip] ) --> lSuccess
    Establece un icono a una carpeta, con el par谩metro cInfoTip "Tooltip" como opcional.

http://forums.fivetechsupport.com/viewt ... 2078c6a776
Par谩metros:
1. cFolder: Nombre de la carpeta. El "\" final es opcional. La ruta puede ser absoluta o relativa.
Si la carpeta no existe, esta se crear谩.
2. cFileIco: Archivo de iconos o biblioteca de iconos con ruta completa o relativa. Los tipos
de archivos aceptados son ico, exe, dll, icl.
De forma predeterminada, se utiliza el primer icono contenido en el exe, dll, icl. Para usar otro icono, el n煤mero
de 铆ndice (comienza con 0) se puede especificar entre par茅ntesis de la siguiente manera:
Ejemplo: "c:\mypath\myapp.exe(2)". En este caso, el tercer icono es mostrado.
3. [cInfoTip]: Opcional. Se muestra al pasar el puntero del rat贸n por encima.

  • TMSGBAR

  • Nueva DATA nTimer: Configurar el desconfigurador.

  • A帽adido ( 64 bits ) cuando tu aplicaci贸n se construye como una aplicaci贸n de 64 bits.

  • Nueva funci贸n SetSysColors( aItems, aRgbColors ) --> lSuccess

http://forums.fivetechsupport.com/viewt ... 9b28c0db17

Es recomendable leer la documentaci贸n de Windows sobre las funciones GetSysColor(n) y SetSysColors().

https://docs.microsoft.com/en-us/window ... etsyscolor

https://docs.microsoft.com/en-us/window ... tsyscolors

  • Nueva funci贸n FW_URLENCODE( cText ) --> cadena codificada
    Fuente en: \source\function\str2hex.c

  • Nueva DATA de s贸lo lectura LastValidValue en la clase TControl.
    Esta DATA es actualizada por todos los controles, cuando la cla煤sula VALID es ejecutada.

  • TControl (se aplica a todos los controles): la tecla Ctrl-S no controlada se reenv铆a a la ventana contenedora.

  • datarow.prg: Pulsando Ctrl-S en cualquier controlador, guarda los datos.

  • memoedit.prg:

  • Correcci贸n: Debido a los cambios realizados en la versi贸n FWH20.12, las funciones FW_MemoEdit( cText, .. ),
    RichEdit(...), RichEdit5(...) no mostraban/editaban texto RTF. Solucionado.

  • Mejora: En las funciones FW_MemoEdit(cText,...), RichEdit(), RichEdit5() es posible especificar un nombre de fichero
    en lugar de texto.

  • Mejora: Nuevos m茅todos en las clases TRichEdit y TRichEdit5:

METHOD GetLangOptions()
METHOD SetLangOptions( lOnOff, nFlagSet )

regards, saludos

Antonio Linares
www.fivetechsoft.com

Continue the discussion