Page 3 of 3

Re: Nuevo FWH 13.07

PostPosted: Thu Aug 01, 2013 6:34 pm
by Antonio Linares
Acabamos de publicar una versión revisada de FWH 13.07 (en 32 y 64 bits)

gracias a todos por la ayuda prestada :-)

Re: Nuevo FWH 13.07

PostPosted: Fri Aug 02, 2013 9:46 am
by mastintin
Antonio Linares wrote:Asi que este va a ser el código definitivo. Funciona bien samples/test2003.prg sin necesidad de la función WinRun() que incluye y funciona bien con FWH 64 tambien :-)

Funciona perfectamante :- )

Respecto al codigo para rpreview , tengo una mejora en el funcionamiento del listview lateral con pocos cambios en el código que funciona perfectamante :

Code: Select all  Expand view


METHOD Activate() CLASS TPreview

   ACTIVATE WINDOW ::oWnd MAXIMIZED ;
      ON RESIZE    ( ::PaintMeta() , ::ChangeListView() )   ;  // añadido changelistview()
      ON UP        ::VScroll( GO_UP )             ;
   
 .....


METHOD ChangeListView() CLASS TPreview

local oRect          := ::oWnd:GetCliRect()
local nHeight        := oRect:nHeight
local nWidth         := oRect:nWidth

::oLvw:nHeight := nHeight -  If( ::oWnd:oBar != nil, ::oWnd:oBar:nHeight() - 2,;
                             ::oWnd:oTop:nHeight() ) - ;
                             If( ::oWnd:oMsgBar != nil, ::oWnd:oMsgBar:nHeight(),;
                             ::oWnd:oBottom:nHeight() )

IF ::oLvw:nLeft == 0
    if ::oMeta1:nLeft <=  ::oLvw:nWidth
     ::olvw:hide()
    else
     ::olvw:show()
    endif
else
::oLvw:nLeft := nWidth -  ::oLvw:nWidth
   
if ::lTwoPages
    if ::oLvw:nLeft <= ::oMeta2:nRight
         ::oLvw:hide()
     else
     ::oLvw:show()
     endif

else   
    if ::oLvw:nLeft <= ::oMeta1:nRight
         ::oLvw:hide()
    else
     ::oLvw:show()
    endif
endif
endif
::oLvw:refresh()

Return nil

METHOD TwoPages( lMenu ) CLASS TPreview
.....
 ::oWnd:Refresh()
   ::PaintMeta()
   ::ChangelistView()  // añadido para cambiarlo al activar boton two pages
   SetResources( hOldRes )
return nil



 

Re: Nuevo FWH 13.07

PostPosted: Fri Aug 02, 2013 10:58 am
by Antonio Linares
Manuel,

Yo lo veo más como que al seleccionar dos páginas tenemos que ocultar el listview, como hacemos en zoom. Pero no mezclaria una cosa con la otra, porque cuando se va a mostrar no hace falta redimensionarlo porque ya lo está.

Igual se me escapa algo, por que lo propones asi ?

Re: Nuevo FWH 13.07

PostPosted: Fri Aug 02, 2013 9:07 pm
by mastintin
Antonio Linares wrote:Manuel,

Yo lo veo más como que al seleccionar dos páginas tenemos que ocultar el listview, como hacemos en zoom. Pero no mezclaria una cosa con la otra, porque cuando se va a mostrar no hace falta redimensionarlo porque ya lo está.

Igual se me escapa algo, por que lo propones asi ?


Antonio , en el código detecto si entran las dos ventanas y el listview , si entran no lo oculto si no entran lo oculto ( coloca la ventana redimensionada a todo el ancho y el alto a mitad de pantalla y pulsa a dos paginas veras que entra todo ) .Puedo tener el listview y las 2 ventanas a la vista .
Se podría poner menos código en el metodo twopages pero se repetiria la mayor parte del código del metodo changelistview asi que casi tiene masa sentido así :

Sería algo asi :

Code: Select all  Expand view

METHOD TwoPages( lMenu ) CLASS TPreview
.....
 ::oWnd:Refresh()
   ::PaintMeta()

  oRect          := ::oWnd:GetCliRect()
  nWidth         := oRect:nWidth
  ::oLvw:nLeft := nWidth -  ::oLvw:nWidth
   if ::oLvw:nLeft <= ::oMeta2:nRight
         ::oLvw:hide()
     else
     ::oLvw:show()
     endif
    ::oLvw:refresh()

   SetResources( hOldRes )
return nil