Page 1 of 1

Modificación a Clase RPreview

Posted: Tue Aug 25, 2009 7:26 pm
by jrestojeda
Hola a todos...
Acabo de hacer una pequeña modificación a la clase TPreview...
Lo que modifiqué fue el tema de los factores... la clase tiene la posibilidad de cambiar los factores de vista entre los valores de 1 a 10.
Funciona correctamente, pero lo que yo modifiqué es la relación en la que se modifican las vistas, había demasiada diferencia entre cada uno de los factores, siendo en _ engorroso para el usuario, y en la mayoría de _, (por lo menos en mi caso), los factores 5 a 9 pocas veces eran utilizados, ya que el tamaño del reporte era realmente inmeso.

Reporte original con Factor 1:
Image

Reporte original con factor 2:
Image


La modificación que le hice a la clase es la siguiente: (Solo partes modificadas)

Code: Select all

METHOD BuildWindow() CLASS TPreview

   @ 3, 325 COMBOBOX ::oFactor VAR ::nZFactor ;
      ITEMS {"100 %","110 %","120 %","130 %","140 %","150 %","160 %","170 %","180 %","190 %","200 %"} ;
      OF ::oBar FONT ::oFont PIXEL SIZE 65,200 ;
      ON CHANGE oThis:SetFactor( oThis:nZFactor )
 

Code: Select all

METHOD SetFactor( nValue ) CLASS TPreview

   //::oMeta1:SetZoomFactor( ::nZFactor, ::nZFactor * 2 )  Esta es la línea que estaba antes
   // Yo aguegué así, escribí los 11 Factores ya que no son tantos...

   DO CASE
      CASE ::nZFactor = 1
         ::oMeta1:SetZoomFactor( ::nZFactor, ::nZFactor * 2 )
      CASE ::nZFactor = 2
         ::oMeta1:SetZoomFactor( 2 * 0.55  , 2 * 1.10 )
      CASE ::nZFactor = 3
         ::oMeta1:SetZoomFactor( 2 * 0.60  , 2 * 1.20 )
      CASE ::nZFactor = 4
         ::oMeta1:SetZoomFactor( 2 * 0.65  , 2 * 1.30 )
      CASE ::nZFactor = 5
         ::oMeta1:SetZoomFactor( 2 * 0.70  , 2 * 1.40 )
      CASE ::nZFactor = 6
         ::oMeta1:SetZoomFactor( 2 * 0.75  , 2 * 1.50 )
      CASE ::nZFactor = 7
         ::oMeta1:SetZoomFactor( 2 * 0.80  , 2 * 1.60 )
      CASE ::nZFactor = 8
         ::oMeta1:SetZoomFactor( 2 * 0.85  , 2 * 1.70 )
      CASE ::nZFactor = 9
         ::oMeta1:SetZoomFactor( 2 * 0.90  , 2 * 1.80 )
      CASE ::nZFactor = 10
         ::oMeta1:SetZoomFactor( 2 * 0.95  , 2 * 1.90 )
      CASE ::nZFactor = 11
         ::oMeta1:SetZoomFactor( 2 * 1.00  , 2 * 2.00 )
   ENDCASE
 
Con esta pequeña modificación a la clase, logro tener mejor relación al cambiar el factor, y también aprovecho más todos los Items del combo, (Incluso yo le agregué dos Items más)

Reporte original Factor 100 %
Image

Reporte original Factor 110 %
Image

Espero sea de utilidad esta modificación.
Saludos.

Re: Modificación a Clase RPreview

Posted: Wed Aug 26, 2009 9:00 am
by dobfivewin
Muy bueno...

me parece que son mas proporcionales _ de factores a factores...

te felicitos


david

Re: Modificación a Clase RPreview

Posted: Wed Aug 26, 2009 1:39 pm
by ADBLANCO
Muy Buena Modificación, Ya la implementé (A mi manera)

Gracias!!

Re: Modificación a Clase RPreview

Posted: Wed Aug 26, 2009 1:39 pm
by nageswaragunupudi
Can the code be simplified like this ?

Code: Select all

METHOD SetFactor( nValue ) CLASS TPreview
   local n, lInit := .f.
   
   < other code >
   n :- 1 + ( nValue - 1 ) * 0.1  
   ::oMeta1:SetZoomFactor( n, 2 * n  )
   < other code >
return nil
 

Re: Modificación a Clase RPreview

Posted: Wed Aug 26, 2009 1:42 pm
by ADBLANCO
Solo le falta
Esto: en buildmenu()

Code: Select all

               MENUITEM  "&Factor"  MESSAGE TXT_ZOOM_FACTOR
               MENU
               FOR nFor := 1 TO len(aFactor)
                    MENUITEM aFactor[nFor]                         ;
                     PROMPT STR(VAL('1'+ltrim(str(nFor))+'0')-10)+' %';
                         MESSAGE "Factor " + LTrim( Str( nFor ) )  ;
                         ACTION ( oFactor:Set( oMenuItem:nHelpId ),;
                                  Eval( oFactor:bChange ) )
               NEXT
 

Re: Modificación a Clase RPreview

Posted: Wed Aug 26, 2009 2:31 pm
by QAZWSX2K
Saludos, ni sabia que habia otro PREVIEW aparte de los DLL que estan en el directorio fivewin, si me pueden decir donde bajarla o mandarla a mi email, gracias
alex_patino74@hotmail.com

gracias

alejandro Patiño

Re: Modificación a Clase RPreview

Posted: Wed Aug 26, 2009 3:11 pm
by Willi Quintana
METHOD SetFactor( nValue ) CLASS TPreview
local n, lInit := .f.

< other code >
n :- 1 + ( nValue - 1 ) * 0.1
::oMeta1:SetZoomFactor( n, 2 * n )
< other code >
return nil

Re: Modificación a Clase RPreview

Posted: Wed Aug 26, 2009 3:56 pm
by ADBLANCO
Alejandro:
La Puedes encontrar en la carpeta de Fuentes del FiveWin, 'RPREVIEW.PRG'


:roll:

Re: Modificación a Clase RPreview

Posted: Wed Aug 26, 2009 4:35 pm
by jrestojeda
Angel...
Muchas gracias por el detalle del menú, realmente se me pasó por completo!
Ya la modifiqué en el menú también!
Ahora quedó bien!

Re: Modificación a Clase RPreview

Posted: Thu Aug 27, 2009 1:09 pm
by ADBLANCO
Good Idea! :wink:

Re: Modificación a Clase RPreview

Posted: Sun Aug 30, 2009 4:36 am
by anserkk
Hi,

This seems to be a very good update to Preview class
Regards
Anser

Re: Modificación a Clase RPreview

Posted: Sun Aug 30, 2009 1:52 pm
by FranciscoA
Hola Esteban. Gracias por el aporte. Ya lo he implementado.
Saludos.

Re: Modificación a Clase RPreview

Posted: Mon Aug 31, 2009 11:33 pm
by jrestojeda
FranciscoA wrote:Hola Esteban. Gracias por el aporte. Ya lo he implementado.
Saludos.
Me alegro que te sirva esta modificación.
Saludos.