FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index WhatsNew / Novedades New FTDN October / Octubre 2008 (8.10)
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
New FTDN October / Octubre 2008 (8.10)
Posted: Sun Oct 12, 2008 08:10 AM

October 2008

  • Enhancement: Class TBitmap Method LoadFromClipboard( [ oWnd ] ) now accepts an optional parameter
    oWnd, as a the window owner to the clipboard handle to be created. The methods returns a logical
    value as the result of the operation. Thanks to Ruediger!

  • New: FWPPC, samples\RadHorz.prg shows how to build an horizontal radiobutton menu from source code.

  • New: An interesting new example samples\XbrwEdit.prg that shows how to add new records and edit them
    from inside the same xbrowse control.

  • Enhancement: We have modified samples\SockServ.prg to show on a client-server sockets conversation how
    to send data from the server to the client:

DEFINE BUTTON OF oBar ACTION oClient:SendData( "Hello from server!" ) TOOLTIP "Talk to client"

  • Enhancement: Class TGet is assigning the DATA lCancel to true to the button created when the new clause
    ... GET ... ACTION ... is created, so the GET valid is not fired when the button gets the focus.

  • New: Please notice that the way to invoke the debugger in xHarbour has changed. Please review samples\AltD.prg.
    To test the debugger do it this way:

with Harbour: buildh.bat AltD /b
with xHarbour: buildx.bat AltD /b

  • Enhancement: We have improved samples\buildh.bat and buildx.bat for automatic detection of /b (debug mode)
    so GTWIN.lib is linked and linker flag -aa is not used. Please review the changes inside them. You may use
    a similar way in your make files to debug your applications.

  • Fix: Class TControl Method Colors() was not properly setting the dotted rect for radiobuttons and checkboxes.
    Now it is ok. Many thanks to Carlos Gallego for his feedback!

  • New: An interesting new example for the use of the RAW INPUT Windows API. Please review samples\RawInput.prg.
    You can find the RAW INPUT API documentation here:

http://msdn.microsoft.com/en-us/library/ms645543(VS.85).aspx

  • Fix: include\TCBrowse.ch had a wrong VALID command at its end. It has been removed.

  • New: Class TSay DATA lAdjust, used to check if the control width should be adjusted to a new text when Method
    SetText( cNewText ) is called. It is .F. by default. Warning: In 8.09 the control width was adjusted by default.
    Now it is only adjusted if lAdjust is .T.. Thanks to Wormar for his feedback!

There is a new optional ADJUST clause for the commands:

@ ..., ... SAY ... [ ADJUST ]

REDEFINE SAY ... [ ADJUST ]

  • Enhancement: FWPPC, to avoid the linking warnings LNK1166 please use this flag when calling the linker:
    /ARMPADCODE:NO
    We have modified and enhanced FWPPC\samples\buildce.bat to use it. Please review it, thanks.

  • New: samples\buildg.bat to build your FWH Windows applications using MinGW GNU gcc compiler from

http://www.mingw.org.

  • New: Makefile for MinGW gcc provided in makes\gccmake.zip. Simply run make.bat where the file Makefile is.
    make.bat may contain this:

set oldpath=%path%
set path=c:\mingw\bin;%path%
c:\mingw\bin\mingw32-make.exe
set path=%oldpath%

  • New: samples\ScanNonM.prg is an interesting example that shows how to search for an already opened Non Modal
    dialog. Very useful to manage you non modal dialogs!

  • Fix: Class TXBrowse Method LButtonDown(), removed a duplicated call to ::Change() method.

  • New: Class TDatePick Method Open(). You can use it to automatically open it when it gets focus:

    @ 2, 2 DTPICKER oDtp VAR dDate OF oWnd ON CHANGE If( oSay != nil, oSay:Refresh(),)

    oDtp:bGotFocus = { || oDtp:Open(), nil }

    Please review samples\TestDtp.prg

  • Fix: function TrackMouseEvent() had a mistake in its code. Now it is fine.

  • New: Class TPrinter Method MmSay( nRow, nCol ), same as CmSay() (centimeters), but managing milimeters.

  • Enhancement: function PrnOffset( hDC ) --> aPoint has been modify to use GetDeviceCaps() to retrieve such
    information. Thanks to Ken Wantz for pointing this change!

  • Fix: Class TPanel was not assigning a default brush. Now it is ok.

  • Enhacement: Class TOutLook2003, painting flickering had been reported when selecting the different buttons
    on the outlook control. It has been located and solved.

  • New: Ver interesting example in samples\TestFldG.prg shows how to place a bussiness graph into a folder page.
    Thanks to Patrick Weisser!

  • Fix: Class TXBrowse Method DelRepos() was not properly creating a codeblock from the filter expression. Now
    it is ok.

  • Enhancement: Class TSmtp Method Failure(). Parameters oSocket, nWSAError, cReply are supplied now when ::bFailure
    is evaluated from Failure().

  • New: A very interesting new example in samples\Signatur.prg that shows how to capture a signature from your
    applications!

  • Enhancement: function Browse() automatically centers in screen the browse dialog box.

  • Enhancement: FWPPC Class TControl Method Initiate() calls ::CoorsUpdate() to automatically retrieve the
    coordinates: nTop, nLeft, nBottom, nRight of the REDEFINEd controls.

  • Enhancement: Improved CHM help files support. Please review samples\TestChm.prg. Thanks to G眉nther Steiner!

New functions in helpchm.prg:

SetHelpPopup( cPopup , nRow , nCol , nbgColor , nfgColor )
To set the filename,Y-offset,X-offset,backgroundcolor, foregroundcolor of the embedded TXT-File in CHM-helpfile or from the external file

GetHelpPopup() --> returns an array
    [1] := -> Popup-file "Whats This" from the CHM or if exist this file really, the popuptopics come from here
    [2] := -> nRow is the Y-display coordinate from the shown popup relative to the control
    [3] := nCol is the X-display coordinate from the shown popup relative to the control
    [4] := nbgColor is the background color from the popup
    [5] := nfgColor is the text color from the popup

NOTE!
If the file cPopup really exists in the following format, then the popup-topics are calling from this file and
not from the embedded txt-file in the CHM-file!

.Topic 1 //---> is the helpid from the control
popuptext for topic 1 //---> is the popup-text to shown
.
.
.Topic 5
popuptext for topic 5
.
.

NOTE for the news in TFolder and TPages!

The new extension in the FOLDER.CH for helpids for the dialogs in folders or pages in is:
REDEFINE oFolder or oPages
.
.
HELPTOPICS 1,...n --> allowed are context-numbers or strings also mixed

If for a dialog no helpid is required, please let this empty. In this case the helpindex is shown.

  • Fix: PalBmpFree() was failing under some circunstances. Now it is ok.
regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
New FTDN October / Octubre 2008 (8.10)
Posted: Mon Oct 20, 2008 05:44 PM

Octubre 2008

  • Mejora: El m茅todo LoadFromClipboard( [ oWnd ] ) de la clase TBitmap ahora acepta un par谩metro opcional "oWnd", como el propietario de la ventana al manejador del portapapeles para ser creado. El m茅tdo devuelve un valor l贸gico como resultado de la oeraci贸n. Gracias a Ruediger !!!

  • Nuevo: En FWPPC, el ejemplo samples\RadHorz.prg muestra como construir un men煤 radiobutton horizontal desde c贸digo fuente.

  • Nuevo: Un nuevo ejemplo interesante samples\XbrwEdit.prg que muestra como a帽adir y editar registros desde el propio control xbrowse.

  • Mejora: Hemos modificado el ejemplo samples\SockServ.prg para mostrar en una conversaci贸n cliente/servidor de "sockets" como enviar datos desde el servidor al cliente:

    DEFINE BUTTON OF oBar ACTION oClient:SendData( "Hello from server!" ) TOOLTIP "Talk to client"

  • Mejora: La clase TGet est谩 asignado la DATA lCancel a .T. cuando se crea la nueva clausula ... GET ... ACTION ..., por lo que el valid del GET no se dispara cuando el bot贸n obtienen el foco.

  • Nuevo: Tenga en cuenta que la manera de invocar al depurador en xHarbour ha cambiado. Por favor revisa el ejemplo samples\AltD.prg.
    Con Harbour: buildh.bat AltD /b
    Con xHarbour: buildx.bat AltD /b

  • Mejora: Hemos mejorado los ficheros por lotes samples\buildh.bat y buildx.bat para que detecten autom谩ticamente, /b (modo depuraci贸n), as铆 se enlaza GTWIN y la bandera -aa del enlazador no se usa. Por favor, revisa los cambios hechos en los ficheros por lotes. Puedes usar una manera similar en tus ficheros "make" para depurar tus aplicaciones.

  • Correcci贸n: El m茅todo Colors() de la clase TControl no estaba poniendo correctamente los "dotted rect" en los botones de radio y en las casillas de verificaci贸n. Ahora est谩 perfecto. Muchas gracias a Carlos Gallego por sus comentarios !!!

  • Nuevo: Un nuevo e interesante ejemplo de uso del API de Windows sobre RAW INPUT. Por favor, revisa el ejemplo samples\RawInput.prg. Puedes encontrar la documentaci贸n sobre esto en: http://msdn.microsoft.com/en-us/library/ms645543(VS.85).aspx

  • Correcci贸n: El fichero include include\TCBrowse.ch ten铆a un comando VALID err贸neo al final. Ha sido eliminado.

  • Nuevo: Nueva DATA lAdjust en la clase TSay, usada para comprobar si el ancho del control deber铆a ser ajustado al nuevo texto cuando se llama al m茅todo SetText( cNewText ). Es .F. por defecto. Advertencia: En FWH 8.09 el ancho del control era ajustado por defecto. Ahora s贸lo se ajusta si lAdjust e .T. . Gracias a William Morales (wmormar) por sus comentarios !!!

Hay una nueva clausula ADJUST para los comandos:

@ ..., ... SAY ... [ ADJUST ]

REDEFINE SAY ... [ ADJUST ]
  • Mejora: En FWPPC, para evitar la advertencia de enlazado LNK1166, por favor, use la bandera /ARMPADCODE:NO cuando llame al enlazador. Hemos modificado y mejorado el uso de FWPPC\samples\buildce.bat. Por favor, revisalo,gracias.

  • Nuevo: Nuevo fichero por lotes samples\buildg.bat para construir tus aplicaciones FWH con el compilador de C MinGW GNU gcc. Puedes descargar este compilador de C desde su sitio http://www.mingw.org.

  • Nuevo: Un nuevo Makefile se proporciona, en este caso para usarlo con MinGW gcc. Lo puedes encontrar en makes\gccmake.zip. Simplemente ejecuta make.bat d贸nde tengas el fichero Makefile. El contenido del fichero make.bat es:

    set oldpath=%path%
    set path=c:\mingw\bin;%path%
    c:\mingw\bin\mingw32-make.exe
    set path=%oldpath%

  • Nuevo: Un nuevo e interesante ejemplo samples\ScanNonM.prg, que muestra como buscar un di谩logo no modal ya abierto. Muy 煤til para manejar tus di谩logos no modales.

  • Correcci贸n: Se ha eliminado una llamada duplicada al m茅todo ::Change() en el m茅todo LButtonDown() de la clase TXBrowse.

  • FNuevo: Nuevo m茅todo Open() en la clase TDatePick. Puedes usarlo para abrirlo autom谩ticamente cuando tome el foco:

    @ 2, 2 DTPICKER oDtp VAR dDate OF oWnd ON CHANGE If( oSay != nil, oSay:Refresh(),)
    oDtp:bGotFocus = { || oDtp:Open(), nil }

Por favor, revisa el ejemplo samples\TestDtp.prg.

  • Correcci贸n: La funci贸n TrackMouseEvent() ten铆a un error en su c贸digo fuente. Ahora est谩 correcta.

  • Nuevo: Nuevo m茅todo MmSay( nRow, nCol ) en la clase TPrinter, igual que CmSay() (cent铆metros), pero manejando mil铆metros.

  • Mejora: La funci贸n PrnOffset( hDC ) --> aPoint ha sido modificada para usar la funci贸n GetDeviceCaps() para recuperar dicha informaci贸n. Gracias a Ken Wantz por proponer este cambio !!!

  • Correcci贸n: La clase TPanel no estaba asignando una brocha por defecto. Ahora est谩 correcta.

  • Mejora: En la clase TOutLook2003, se hab铆a reportado error de parpadeo en el pintado cuando se seleccionaban diferentes botones en el control Outlook. Ha sido localizado y solventado.

  • Nuevo: Nuevo y muy interesante ejemplo samples\TestFldG.prg que muestra como colocar gr谩ficos de negocio en "folder page". Gracias a Patrick Weisser !!!

  • Correcci贸n: El m茅todo DelRepos() de la clase TXBrowse no estaba creando un bloque de c贸digo desde la expresi贸n de filtro. Ahora lo hace correctamente.

  • Mejora: En el m茅todo Failure() de la clase TSmtp. Los par谩metros oSocket, nWSAError y cReply son proporcionados ahora cuando se evalua ::bFailure desde la funci贸n Failure().

  • Nuevo: Un nuevo e interesante ejemplo samples\Signatur.prg que muestra como capturar una firma desde tus aplicaciones.

  • Mejora: La funci贸n Browse() centra autom谩ticamente en la pantalla el cuadro de di谩logo del browse.

  • Mejora: En FWPPC el m茅todo Initiate() de la clase TControl llama a ::CoorsUpdate() para recuperar autom谩ticamente las coordenadas: nTop, nLeft, nBottom y nRight de los controles redefinidos.

  • Mejora: Mejora del soporte de los ficheros de ayuda CHM. Por favor, revisa el ejemplo samples\TestChm.prg. Gracias a G眉nther Steiner!!!

Nuevas funciones en helpchm.prg:

SetHelpPopup( cPopup , nRow , nCol , nbgColor , nfgColor )

Para poner el nombre del fichero, Y-offset,X-offset, color de fondo y color delantero del fichero TXT embebido en el fichero de ayuda CHM o
desde un fichero externo.

GetHelpPopup() --> devuelve una matriz
[1] := -> Popup-file "Whats This" from the CHM or if exist this file really, the popuptopics come from here
[2] := -> nRow is the Y-display coordinate from the shown popup relative to the control
[3] := nCol is the X-display coordinate from the shown popup relative to the control
[4] := nbgColor is the background color from the popup
[5] := nfgColor is the text color from the popup

NOTA!
Si el archivo cPopup existe realmente con el siguiente formato, entonces, se llama a los temas del popup desde este fichero y no desde el
fichero txt embebido en el fichero CHM !!!

.Topic 1 //---> is the helpid from the control
popuptext for topic 1 //---> is the popup-text to shown
.
.
.Topic 5
popuptext for topic 5
.
.

NOTA para TFolder y TPages!

La nueva extensi贸n en el fichero include FOLDER.CH para helpids para los di谩logos en "carpetas" y "p谩ginas":

REDEFINE oFolder or oPages
.
.
HELPTOPICS 1,...n --> se permiten n煤meros 贸 cadenas

Si para un di谩logo no se requiere helpid, por favor d茅jelo vacio. En este caso se muestra helpindex.

  • Correcci贸n: La funci贸n PalBmpFree() estaba fallando bajo algunas circunstancias. Ahora est谩 correcta.
regards, saludos

Antonio Linares
www.fivetechsoft.com

Continue the discussion