What's new in FiveWin 1.9.5 Service Pack 2 FiveWin 1.9.5 Service Pack 2
* Class ComboBox with DropDown style: Valid clause fixed!
* Class TcBrowse has been enhanced so now you are able to trap keys using bKeyChar event response codeblock.
* Class TGet has been enhanced so now you are able to trap Tab and Enter keystrokes using bChange ( ON CHANGE ) event response codeblock.
* New Class TIconBar: Many thanks to Cayetano Gomez for his excellent contribution. Have a look at SAMPLES\TestOut.prg
* New Class TSplitter: Many thanks to Ramon Avendaņo for his excellent contribution. Have a look at SAMPLES\TestSpl...
* FiveWin Printing preview look has been greatly enhanced. Now it has a Microsoft look nice style.
* New lCellStyle DATA for browses!!! Doing a lCellStyle := .t. then you get cell navigation. Also, improved look a la 'Microsoft'. :-)
* Improved TSmtp: Internet email with attached files!!! See SAMPLES\TestSmtp.prg. ASCII files and MIME base64 ones also.
* New Class TImage for JPEGs, PCX, GIF graphics support. Have a look at SAMPLES\TestImg.prg.
* New Class TPop3 for receiving Internet email directly from your application.
* Description: Menus accelerators not working under 1.9.5. Reason: Method Command( ... ) CLASS TWindow has been improved to make it 32 bits compatible with Xbase++ and the new code has a missed sentence.
Fix: METHOD Command( ... ) CLASS TWindow
case ( nNotifyCode == 0 .or. nNotifyCode == 1 ) .and. ::oMenu != nil ::oMenu:Command( nID )
* Description: Class TTxtFile generates random GPFs. Reason: It was using a non-compatible FiveWin memory allocation system and was changed to use _xgrab() and _xfree(), but the allocated amounts were not fixed accordingly.
Fix: SOURCE\FUNCTION\FText.c
cBuff = ( LPSTR ) _xgrab( wSize + 1 );
* Description: ErrorSys (a standard error management) hangs the application or the application shows a blue GPF screen. Reason: CPUType() function was recently included in ErrorSys.prg instead of GetCpu(). CPUType() was performing very low level CPU operations that was causing some computers to hang.
Fix: SOURCE\FUNCTION\ErrSysW.prg
We switch back to previous GetCpu() function:
cErrorLog += " CPU type: " + GetCPU() + CRLF
* Description: VBXs management fails on some VBXs events parameters management. Reason: FiveWin VBXs management module performs a events conversion type from VBasic to Clipper types. We were assuming that all parameters were accordingly converted.
Fix: New BIVBX.obj required.
* Description: Encrypt() and Decrypt() don't properly use the length of the second parameter (password).
Reason: Quite unbelivable this bug has been there for years and no one detected it. We were using a '=' instead of a '==' on a 'if' sentence.
Fix: New encript.obj required.
Warning: Changing of this module may cause that previous encrypted strings are not properly recognized. Please check with your users to know if they need to recover some information before upgrading their apps.
* Description: Pressing shift and a key at the righmost position of a GET was causing to jump to previous control instead of the next one.
Reason: METHOD ForWhen() CLASS TControl had an incorrect if... structure.
Fix: SOURCE\CLASSES\control.prg
// keyboard navigation if ::oJump != nil SetFocus( ::oJump:hWnd ) ::oJump = nil elseif ::oWnd:nLastKey == VK_UP .or. ( ::oWnd:nLastKey == VK_TAB .and. ; GetKeyState( VK_SHIFT ) ) ::oWnd:GoPrevCtrl( ::hWnd ) elseif ::oWnd:nLastKey == VK_DOWN .or. ::oWnd:nLastKey == VK_RETURN .or. ; ::oWnd:nLastKey == VK_TAB ::oWnd:GoNextCtrl( ::hWnd ) else if Empty( GetFocus() ) SetFocus( ::hWnd ) endif endif
* Description: New menus bitmaps look is not working when using a PopupMenu associated with a control (not with a window or DialogBox).
Reason: CLASS TControl implements a virtual DrawItem() that was avoiding a normal process of DrawItem messages.
Fix: Simply comment CLASS TControl:
// METHOD DrawItem() VIRTUAL Back |