Cambios en BtnBmp (Manuel)

Cambios en BtnBmp (Manuel)

Postby jmartial » Tue Sep 23, 2014 3:01 pm

Hola Manuel,

He necesitado poner gris los botones y he visto que habíais tenido una buena idea con el código que convierte el BMP1 a gris si no se le pasa
un BMP3.

Pero he visto que habías tocado la clase TBtnBmp en loadBitmaps y creo que en algún sitio más. Le he echado un vistazo y creo que sólo hay que tocar
el método disable. Lo he probado y funciona perfectamente.

Mi pregunta es, ¿lo que se consigue con los cambios que hiciste tiene alguna ventaja con respecto a mi implementación?

Este es el cambio que he hecho, modificar el método disable():

METHOD Disable() INLINE ::hBitmap3 := IF(::hBitmap3=0, BMP2DIS(::hBitmap1) , ::hBitmap3) , ::Super:Disable(), ::Refresh()

Gracias por tus aportaciones.
Un Saludo,
Joaquín Martínez
jmartial
 
Posts: 458
Joined: Tue Mar 14, 2006 7:26 pm

Re: Cambios en BtnBmp (Manuel)

Postby mastintin » Tue Sep 23, 2014 7:39 pm

Tu implementación es mejor que la que yo hice , si quieres puedes añadir la data que yo añadí para que puedas regular aún mejor el comportamiento según lo que se desea :

Code: Select all  Expand view


METHOD Disable() INLINE   ::hBitmap3 := IF(::hBitmap3=0 , if (::ldisableBmp, BMP2DIS(::hBitmap1), ::hBitmap1 ) , ::hBitmap3 )  , ::Super:Disable(), ::Refresh()

 
User avatar
mastintin
 
Posts: 1516
Joined: Thu May 27, 2010 2:06 pm

Re: Cambios en BtnBmp (Manuel)

Postby jmartial » Tue Sep 23, 2014 9:35 pm

Manuel,

La Data no sè para que se usaría, porque cuando desabilito es porque lo quiero grisàceo.

Quizàs en otros casos podría ser útil, pero no se me dado el caso.


Gracias,
Un Saludo,
Joaquín Martínez
jmartial
 
Posts: 458
Joined: Tue Mar 14, 2006 7:26 pm

Re: Cambios en BtnBmp (Manuel)

Postby mastintin » Wed Sep 24, 2014 7:04 am

Buenas de nuevo ...
Perdon por el codigo anterior , las prisas ... :D
Realmente era esto :
Code: Select all  Expand view


 METHOD Disable() INLINE   if ( ::lDisableBmp,;
                                ::hBitmap3 := IF(::hBitmap3=0 , BMP2DIS(::hBitmap1),::hBitmap3 ), ), ;
                                ::Super:Disable(), ::Refresh()

 


La data lDisableBmp lo unico de pretende es poder definir si queremos el comportamiento "por defecto" de la clase o el nuevo comportamiento ...
La diferencia en :
Hablamos siempre en el caso de que no se defina un bmp3 ( para deshabilitados ) , al hacer disable() en la clase sin modificar el texto aparece en gris pero el bmp se mantiene en color , si ponemos ldisablebmp a .t. tambien el bmp pasa a gris . En algunas ocasiones puede interesar mantener ese comportamiento ( hasta ahora y a fecha de hoy muchos usuarios lo usan así ) , mantenemos compatibilidad con lo que existe y añadimos nueva función ... :D
User avatar
mastintin
 
Posts: 1516
Joined: Thu May 27, 2010 2:06 pm

Re: Cambios en BtnBmp (Manuel)

Postby jmartial » Wed Sep 24, 2014 7:19 am

Buenos días Manuel,

Gracias por tu explicación, ya entiendo por qué lo pusiste.

Al final, todo es cuestión de compatibilidad, pero poco a poco habría que hacer con FWH como Microsoft, a partir de unos años, por ejemplo 2, poder limpiar
código y dejarlo documentado para que el usuario pueda en 1 día cambiar de una versión más antigua de 2 años, pasar a la actual.

Porque esta compatibilidad tan a largo plazo, creo que hace más difícil avanzar el producto y que el código cada vez está más ilegible con tantos condicionantes.

Bueno, es mi humilde sugerencia.
Un Saludo,
Joaquín Martínez
jmartial
 
Posts: 458
Joined: Tue Mar 14, 2006 7:26 pm

Re: Cambios en BtnBmp (Manuel)

Postby Antonio Linares » Wed Sep 24, 2014 12:24 pm

Joaquín,

vamos limpiándolo poco a poco y siempre optimizando todo lo que se puede :-)

Lo que ocurre es que FWH es tan grande y cubre tantas cosas que no es fácil hacerlo todo de golpe :-)

Gracias por vuestra ayuda como siempre!
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42078
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain


Return to EasyReport, EasyDialog y EasyPreview

Who is online

Users browsing this forum: No registered users and 1 guest