FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin for Harbour/xHarbour New FWH 11.07
Posts: 10733
Joined: Sun Nov 19, 2006 05:22 AM
Re: New FWH 11.07
Posted: Thu Aug 11, 2011 04:04 PM

Thanks for the suggestions.
We shall test the suggestions ASAP.
Have you noticed any other issues?

Regards



G. N. Rao.

Hyderabad, India
Posts: 274
Joined: Fri Apr 04, 2008 01:25 PM
Re: New FWH 11.07
Posted: Thu Aug 11, 2011 04:20 PM
nageswaragunupudi wrote:Have you noticed any other issues?

not at this moment. But as we plan to use tfolderex in our next software release, we'll heavily test this feature and if there are other things popping up, I'll inform you over the forums!
Best Regards,

Gilbert Kuhnert
CTO Software GmbH
http://www.ctosoftware.de
Posts: 274
Joined: Fri Apr 04, 2008 01:25 PM
Re: New FWH 11.07
Posted: Thu Aug 11, 2011 07:01 PM
Rao,

in the meantime I found one other small optical error that seems to be corrected also by my suggestions: Items of a treeview had another background color than the background of the treeview-panel (also placed on a TFolderEx-dialog)
Here you can see the dialog with error (which is, as said, also corrected by my suggestions):

Best Regards,

Gilbert Kuhnert
CTO Software GmbH
http://www.ctosoftware.de
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: New FWH 11.07
Posted: Thu Aug 11, 2011 07:22 PM

Gilbert,

many thanks for your feedback :-)

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 1048
Joined: Mon Oct 24, 2005 09:54 AM
Re: New FWH 11.07
Posted: Fri Aug 12, 2011 11:35 AM
This are my corrections in control.prg and for me all problems with say, etc. are gone! Only the order from the GROUPS must be at first!

Code (fw): Select all Collapse
  if ::lTransparent
      SetBkMode( hDC, 1 ) // TRANSPARENT
      if IsAppThemed()
         if ! Empty( ::oWnd:oBrush ) //.and. ! Empty( ::hBitmap ) .and. ! ::IsKindOf( "TGROUP" )
            ::PaintBack( hDC )
         else
            if Upper( ::ClassName() ) $ "TCHECKBOX;TRADIO;TGROUP"
               // Without the above IF condition, says with border in themed apps
               // on transparent dialogs with solid color background
               // are not painted correctly. With each click of checkbox / radio
               // border and say text are overpainted one pixel down & one pixel right

               //DrawPBack( ::hWnd, hDC )
               ParentImage( ::hWnd, hDC )
            endif
         endif
      endif
   else
      if IsAppThemed() .and. Upper( ::ClassName() ) $ "TCHECKBOX;TRADIO;TGROUP"
         DrawPBack( ::hWnd,  hDC )
      endif
   endif

Code (fw): Select all Collapse
      case nMsg == WM_LBUTTONDOWN
//           if ::lTransparent .and. ( ::IsKindOf( "TRADIO" ) .or. ::IsKindOf( "TCHECKBOX" ) )
//               ::Refresh( .f. )
//              aeval(::aControls,{|o|if(o:ClassName() == "TSAY",o:refresh(),)})
//              ::Refresh()  // RevBuild 11.07: Refresh(.f.) replaced to avoid overpainting of says
//           endif
           return ::LButtonDown( nHiWord( nLParam ), nLoWord( nLParam ), nWParam )

      case nMsg == WM_LBUTTONUP
//           if ::lTransparent .and. ( ::IsKindOf( "TRADIO" ) .or. ::IsKindOf( "TCHECKBOX" ) )
//              ::Refresh( .f. )   // EMG commented out to avoid flicker
//           endif
           return ::LButtonUp( nHiWord( nLParam ), nLoWord( nLParam ), nWParam )

      case nMsg == WM_UPDATEUISTATE  // buttons, radios and checkboxes were erased when pressing ALT
           nResult = Super:HandleEvent( nMsg, nWParam, nLParam )
           if ::lTransparent //.and. ( ::IsKindOf( "TRADIO" ) .or. ::IsKindOf( "TCHECKBOX" ) )
              ::oWnd:Refresh( .F. )
           endif
           return nResult
   endcase
Regards,
Günther
---------------------------------
office@byte-one.com
Posts: 1789
Joined: Tue Oct 11, 2005 05:01 PM
Re: New FWH 11.07
Posted: Fri Aug 12, 2011 03:56 PM

Where is PaintBack method ?
salu2
carlos vargas

Salu2

Carlos Vargas

Desde Managua, Nicaragua (CA)
Posts: 1048
Joined: Mon Oct 24, 2005 09:54 AM
Re: New FWH 11.07
Posted: Fri Aug 12, 2011 04:16 PM

..also in control.prg!

Regards,
Günther
---------------------------------
office@byte-one.com
Posts: 1789
Joined: Tue Oct 11, 2005 05:01 PM
Re: New FWH 11.07
Posted: Fri Aug 12, 2011 05:56 PM

this method not exist in 11.03, you fix don work in version < 11.07 ?

Salu2

Carlos Vargas

Desde Managua, Nicaragua (CA)
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: New FWH 11.07
Posted: Fri Aug 12, 2011 07:24 PM
Carlos,

This is PaintBack source code:

Code (fw): Select all Collapse
METHOD PaintBack( hDC ) CLASS TControl

   local uVal     := 0
   local oRect, oParent, oBrush
   local nOrgX := 0, nOrgY := 0

   if ::lTransparent

      oParent  := ::oWnd
      nOrgX    := -::nLeft
      nOrgY    := -::nTop

   endif

   oRect    := ::GetCliRect()
   oBrush   := IfNil( oParent, Self ):oBrush

   oBrush:Resize( IfNil( oParent, Self ), @nOrgX, @nOrgY )
   SetBrushOrgEx( hDC, nOrgX, nOrgY )
   FillRect( hDC, oRect:aRect, oBrush:hBrush )

return uVal
regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 1789
Joined: Tue Oct 11, 2005 05:01 PM
Re: New FWH 11.07
Posted: Fri Aug 12, 2011 11:21 PM
thanks antonio

please you can see this issuse:
viewtopic.php?f=6&t=22142

the definue brush and redefine bitmap fail with xhb.com and fwh 11.03
you can try examples testxbrw.prg in samples folder in fwh, the backgroun bitmap is no show, see the screenshot.

in brush.prg in METHOD New ::hBitmap return zero.
Code (fw): Select all Collapse
      case cBmpRes != nil
           ::hBitmap = LoadBitmap( GetResources(), cBmpRes )
           ::hBrush  = If( ::hBitmap != 0, CreatePatternBrush( ::hBitmap ),)


in bitmap.prg in METHOD LoadImage, ::hBitmap and ::hPalette return zero
Code (fw): Select all Collapse
   
if ! Empty( cResName )
       aBmpPal    = PalBmpLoad( cResName )
       ::hBitmap  = aBmpPal[ 1 ]
       ::hPalette = aBmpPal[ 2 ]


salu2
carlos vargas
Salu2

Carlos Vargas

Desde Managua, Nicaragua (CA)
Posts: 1789
Joined: Tue Oct 11, 2005 05:01 PM
Re: New FWH 11.07
Posted: Sat Aug 13, 2011 12:08 AM

in my work use winxp not fail :-(, in my home windows 7 64bit fail.
I try other tests .....

:-0

salu2

Salu2

Carlos Vargas

Desde Managua, Nicaragua (CA)
Posts: 1789
Joined: Tue Oct 11, 2005 05:01 PM
Re: New FWH 11.07
Posted: Sat Aug 13, 2011 02:54 AM
Antonio, gracias por el code del metodo.

haora a dar lata nuevamente, existe un error con el foco de los combobox, cuando un dialogo tiene un combobox y llegamos al el mediante la pulsacion de la tecla tab y el combobox obtiene el foco, este no toma el recuadro punteado, pero he aqui lo curioso, si segimos pulsando tab, hasta hacer un ciclo completo y llegar nuevamente al combobox este si toma el borde punteado, adjunto imagenes, esto proboca que el usuario al inicio no sepa que contro tiene el foco.
esto ya se ha comentado en el foro con anterioridad por otros usuarios.


Salu2

Carlos Vargas

Desde Managua, Nicaragua (CA)
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: New FWH 11.07
Posted: Sat Aug 13, 2011 08:37 AM

Carlos,

Puedes poner aqui el RC de ese diálogo ? gracias

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 1789
Joined: Tue Oct 11, 2005 05:01 PM
Re: New FWH 11.07
Posted: Sat Aug 13, 2011 04:13 PM
esto es solamente bajo windows 7, en winxp funciona bien.

Code (fw): Select all Collapse
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
DLG_PRODUCTOE DIALOG 59, 60, 305, 190
STYLE DS_3DLOOK | DS_MODALFRAME | DS_SETFONT | WS_CAPTION | WS_VISIBLE | WS_POPUP | WS_SYSMENU
CAPTION "Datos Generales"
FONT 9, "MS Sans Serif"
{
    GROUPBOX        "", -1, 4, 3, 297, 57
    LTEXT           "Código:", -1, 9, 12, 41, 12, SS_LEFT
    EDITTEXT        101, 53, 12, 58, 12, ES_AUTOHSCROLL
    LTEXT           "Unidad de medida:", -1, 165, 12, 73, 12, SS_LEFT
    EDITTEXT        102, 240, 12, 54, 12, ES_AUTOHSCROLL
    LTEXT           "Nombre:", -1, 9, 26, 41, 12, SS_LEFT
    EDITTEXT        103, 53, 26, 241, 12, ES_AUTOHSCROLL
    LTEXT           "Familia:", -1, 9, 39, 41, 12, SS_LEFT
    COMBOBOX        104, 53, 40, 241, 98, WS_TABSTOP | WS_VSCROLL | CBS_DROPDOWNLIST | CBS_DISABLENOSCROLL
    GROUPBOX        "Precio, Impuesto y existencia", -1, 4, 62, 297, 46
    LTEXT           "Precio U$:", -1, 11, 72, 60, 12, SS_LEFT
    EDITTEXT        105, 74, 72, 64, 12, ES_RIGHT
    LTEXT           "Tasa de IVA %:", -1, 11, 87, 60, 12, SS_LEFT
    EDITTEXT        106, 74, 87, 64, 12, ES_RIGHT
    GROUPBOX        "", -1, 161, 62, 140, 46
    LTEXT           "Precio Final U$:", -1, 169, 72, 55, 12, SS_LEFT
    EDITTEXT        107, 227, 72, 63, 12, ES_RIGHT
    LTEXT           "Existencia:", -1, 169, 87, 55, 12, SS_LEFT
    EDITTEXT        108, 227, 87, 63, 12, ES_RIGHT
    GROUPBOX        "Notas:", -1, 4, 109, 297, 60
    EDITTEXT        109, 11, 119, 285, 46, WS_VSCROLL | ES_AUTOVSCROLL | ES_MULTILINE
    PUSHBUTTON      "&Grabar", 201, 193, 173, 50, 14
    PUSHBUTTON      "&Salir", 202, 252, 173, 50, 14
}


Code (fw): Select all Collapse
PROCEDURE Productos_Editar( lNuevo )
   PRIVATE lContinuar := FALSE
   PRIVATE oDlgE
   PRIVATE oCod, cCod, cNom, cFam, cUni, nPre, nIva, nPFV, nExi, oPVF, cNotas

   /*si es nuevo registro*/
   IF lNuevo

      /*inicializa variables*/
      cCod   := StrZero( CTRL->NUMPROD + 1, 6 )
      cNom   := Space( 50 )
      cFam   := Space( 50 )
      cUni   := PadR("UNIDAD",10)
      nPre   := 0
      nIva   := _TASAIVA_
      nPFV   := 0
      nExi   := 0
      cNotas := ""
   ELSE
      /*verifica si tabla esta vacia*/
      IF PROD->( Eof() )
         RETURN
      ENDIF

      /*toma datos de tabla*/
      cCod   := PROD->CODIGO
      cNom   := PROD->NOMBRE
      cFam   := PROD->FAMILIA
      cUni   := PROD->MEDIDA
      nPre   := PROD->PRECIO
      nIva   := PROD->IVA
      nPFV   := PROD->PFV
      nExi   := PROD->EXISTEN
      cNotas := PROD->NOTAS
   ENDIF

   /*define dialogo*/
   DEFINE DIALOG oDlgE NAME "DLG_PRODUCTOE" OF oDlg ICON GetIcon() FONT oFont

   /*redefine controles*/
   REDEFINE GET oCod VAR cCod;
      ID 101 OF oDlgE;
      WHEN FALSE

   REDEFINE GET cUni;
      ID 102 OF oDlgE;
      PICTURE "@!";
      VALID Validar_NoVacio( cUni, "Defina unidad de medida del producto!" )

   REDEFINE GET cNom;
      ID 103 OF oDlgE;
      PICTURE "@!S80";
      VALID Validar_NoVacio( cNom, "Defina nombre del producto!" )

   REDEFINE DBCOMBO cFam;
      ID 104 OF oDlgE;
      ALIAS "FAMI";
      ITEMFIELD "NOMBRE";
      LISTFIELD "NOMBRE";
      ORDER "NOMBRE";
      VALID Validar_NoVacio( cFam, "Defina una familia para el producto!" )

   REDEFINE GET nPre;
      ID 105 OF oDlgE;
      PICTURE "99,999.99";
      VALID nPre >= 0;
      ON CHANGE ( ::Assign(), nPFV := nPre + (nPre*(nIva/100)), oPVF:refresh() )

   REDEFINE GET nIva;
      ID 106 OF oDlgE;
      PICTURE "99.99";
      VALID nIva >= 0;
      ON CHANGE ( ::Assign(), nPFV := nPre + (nPre*(nIva/100)), oPVF:refresh() )

   REDEFINE GET oPVF VAR nPFV;
      ID 107 OF oDlgE;
      PICTURE "99,999.99";
      VALID nPFV >= 0

   REDEFINE GET nExi;
      ID 108 OF oDlgE;
      PICTURE "999,999";
      WHEN FALSE

   REDEFINE GET cNotas;
      ID 109 OF oDlgE;
      MEMO COLOR CLR_BLUE, CLR_SOFTYELLOW

   REDEFINE BUTTON;
      ID 201 OF oDlgE;
      ACTION IIf( Productos_Grabar( lNuevo ) .AND. ! lContinuar, oDlgE:END(), NIL );
      WHEN !( empty(cUni) .or. empty(cNom) .or. empty(cFam) .or. nPre <= 0 )

   REDEFINE BUTTON;
      ID 202 OF oDlgE;
      ACTION oDlgE:END();
      CANCEL

   /*activa dialogo*/
   ACTIVATE DIALOG oDlgE CENTER

   /*da foco al browse*/
   oBrw:SetFocus()

RETURN
Salu2

Carlos Vargas

Desde Managua, Nicaragua (CA)
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: New FWH 11.07
Posted: Sat Aug 13, 2011 06:29 PM
carlos vargas wrote:thanks antonio

please you can see this issuse:
viewtopic.php?f=6&t=22142

the definue brush and redefine bitmap fail with xhb.com and fwh 11.03
you can try examples testxbrw.prg in samples folder in fwh, the backgroun bitmap is no show, see the screenshot.

in brush.prg in METHOD New ::hBitmap return zero.
Code (fw): Select all Collapse
      case cBmpRes != nil
           ::hBitmap = LoadBitmap( GetResources(), cBmpRes )
           ::hBrush  = If( ::hBitmap != 0, CreatePatternBrush( ::hBitmap ),)


in bitmap.prg in METHOD LoadImage, ::hBitmap and ::hPalette return zero
Code (fw): Select all Collapse
   
if ! Empty( cResName )
       aBmpPal    = PalBmpLoad( cResName )
       ::hBitmap  = aBmpPal[ 1 ]
       ::hPalette = aBmpPal[ 2 ]


salu2
carlos vargas


Carlos,

Puedes por favor probar este cambio en source\winai\resource.c ?

hb_retnll( ( LONGLONG ) GetResources() );

en vez de:

hb_retnl( ( LONG ) GetResources() );

gracias
regards, saludos

Antonio Linares
www.fivetechsoft.com