¿Mejor forma de mantener compatibilidad con clases FW?
Posted: Sun Jun 02, 2019 6:41 pm
Hola amigos, tengo previsto actualizar mi versión de FW en breve. En estos años he hecho varias modificaciones a mi conveniencia sobre las clases de FW originales. Ahora que voy a actualizar voy a hacer las cosas mejor intentando que _ que necesite para personalizar mi forma de trabajo y/o aplicaciones sean compatibles con futuras actualizaciones.
¿Qué método me recomendáis?
a) Utilizar la adición/modificación de métodos mediante EXTEND y OVERRIDE
b) Crear clases heredadas de las originales, añadir las datas y métodos propios y redefinir los coincidentes con los originales y que tenga que cambiar por ejemplo :
Gracias!
¿Qué método me recomendáis?
a) Utilizar la adición/modificación de métodos mediante EXTEND y OVERRIDE
b) Crear clases heredadas de las originales, añadir las datas y métodos propios y redefinir los coincidentes con los originales y que tenga que cambiar por ejemplo :
Code: Select all
CLASS VCheckBox FROM TCheckBox
DATA lPulsado AS LOGICAL INIT .F.
METHOD ReDefine( nId, bSetGet, oWnd, nHelpId, bChange, bValid,;
nClrFore, nClrBack, cMsg, lUpdate, bWhen ) CONSTRUCTOR
METHOD Click()
ENDCLASS
METHOD Click() CLASS VCheckBox
::lPulsado:=!::lPulsado
::Super:Click()
return nil
METHOD ReDefine( nId, bSetGet, oWnd, nHelpId, bChange, bValid, nClrFore,;
nClrBack, cMsg, lUpdate, bWhen, cPrompt ) CLASS VCheckBox
DEFAULT nClrBack := CLR_WHITE
::Super:Redefine ( nId, bSetGet, oWnd, nHelpId, bChange, bValid, nClrFore,;
nClrBack, cMsg, lUpdate, bWhen, cPrompt )
::lPulsado = Eval(bSetGet)
return Self