August-September 2024
=====================
* New: Class TChatgpt based on Reinaldo and Kwon OhChul previous works with modifications
by us.
* New: samples\buildit.prg is an AI example using new FWH Clas TChatGPT. It is a great example
to see the AI possibilities from our FWH apps.
* Enhancement: Class TTreeView Method Scan( bAcion ) now provides a third parameter with the
nLevel of the item. This way we can easily save a TTreeView toa DBF, etc.
* New: samples\webviewxml.prg shows how to display a XML file as a tree from a webview control.
* msglogo.prg: MsgSpash() now properly centers the image even when
screen scaling is set to more than 100%.
https://forums.fivetechsupport.com/view ... 0b0fb86890
* New functions:
LocalIP() --> cLocalIP of the PC
PublicIP() --> cPublicIP of the PC/router
IsLocalIP( cIP ) --> .t./.f.
isExernalIP( cIP) --> .t./.f.
source\winapi\netapi32.prg
* New DATA bPaste in TGet.prg:
If specified this codeblock is evaluated with PasteText
and oGet as parameters instead of executing the internal
method Paste()
https://forums.fivetechsupport.com/view ... 7a#p272343
* Improved function FW_StitchImages( image1,image2,[cSide],
[cType],[lGDIP] )
cSide: "R" or "B" to add the image2 to the right/botton
side of the image1. If nil the function decides.
New: This param can be an array of { row, col }
In this case, image2 will be overlayed at an offset of
nrow,ncol relative to the top-left corner of image1.
nRow, nCol can be positive or negative.
cType: If spcified as "jpg/png", etc. the function will
return a blob of that type instead of as hBitmap (default)
lGIDP (new ) default .f. To use GDI+ or classic GDI
* function FW_ReadImage() crashing with xhb.com. Fixed.
* Enhancement: samples\FiveDbu.prg had a bug when deleting a field from a DBF structure, now it is ok.
viewtopic.php?p=273041#p273041
* FWMarialib: oRs := oCn:<tablename> opens full table.
now we can open specified fields only with oCn:<tablename>( fieldlist )
* Fix: function chmHelpTopic( cnTopic ) had a bug for 64 bits. Now it is ok.
* New class TPoint (source\classes\rect.prg)
TPoint():New( nRow, nCol ) --> oPt
TPoint():NewXY( x, y ) --> oPt
Quick functions for creation PointXY(x,y)/PointRowCol(r,c)
Access and Assign: oPt:nRow / oPt:Y and oPt:nCol / oPt:X
Method Rect( nRadius, [nRadiusY] ) --> TRect object
* Enahancement: function RingGradientFill() can now use alpha
color gradients
* New function GDIP_ELLIPSE( hDC, aRect, nBorderClr, [nFillClr] )
Can use alpha colors
* New function GDIP_RINGGRAD( hDC, x, y, naRad1, naRad2, nInnerClr,nOuterClr)
Gradient fill of ring in ellipse/circle
* New: samples\servicio.prg a Windows service example that works fine with both
Harbour and xHarbour. Please carefully read the instructions inside it.
* New: function FW_EllipShadow( hDC, aRect, [nShadowSize], [nInClr], [nOutClr] )
aRect: Rect containing the circle/ellipse.
* New samples circshad.prg: Demonstrates shadows for circles/
ellipses, alpha gradients
* functions FW_RTRIM( cStr, cChars), FW_TRIM(), FW_LTRIM(),FW_ALLTRIM()
now do not raise run-time error if cStr is not a string. Instead,
these functions return the same value.