Es necesario utilizar la nueva versión de xHarbour que se encuenra en nuestra página Web y
deberá reconstruir completamente todos sus proyectos.
La futura versión de xHarbour es posible que incorpore cambios importantes que eviten tener que hacer este tipo
de reconstrucciones totales de sus fuentes
El depurador de Xailer incluye absolutamente todo lo necesario que ha de incorporar un depurador y superando ampliamente a cualquier otro depurador de xHarbour, y no sólo en funcionalidad, sino también y sobre todo, en velocidad. De hecho no se produce ningún apreciable retardo en la ejecución de los programas cuando se trabaja en modo de depuración. El depurador de Xailer, a diferencia de otros depuradores para xHarbour e incluso también, a diferencia de otras herramientas de desarrollo de gran renombre, es capaz de depurar absolutamente cualquier parte del programa, incluidas las rutinas de pintado
La expresion oDataSet:NombreDeCampo retornaba el valor del campo cuando no se estaba en edición, y el valor del buffer cuando se estaba en edición. Ahora es posible pasarle un parametro para forzar la recuperación de un tipo en concreto. Por ejemplo: oDataSet:Codigo( dsFIELD ). En asignación no se permite ningún parametro comportandose como hasta ahora.
Antes los browses utilizaban el mecanismo de sobrecargar los eventos de navegación para adaptarse al dato a mostrar. Ahora, cada tipo de Browse tiene métodos internos para realizar el trabajo, y los eventos siguen existiendo sólo para el caso en que el usuario decida forzar un cambio en su comportamiento.
Esto puede provocar que algún browse muestre columnas totalmente en blanco, en dicho caso no hay mas que cambiar el nombre del evento OnGetValue por OnGetData
Es necesario actualizar todos los fuentes que utilicen TArrayBrowse para que las columnas que cree sean del tipo TArrayBrwColumn y no TBrwColumn. En el caso de que hay sido creado el control directamente desde el IDE basta con que abra el formulario y provoque un salvado del mismo. Sin embargo, si creo el TArrayBrowse a mano, desde código, deberá cambiar todas las referencias de TBrwColumn():New( ... ) por TArrayBrwColumn:New( ... )
Se ha tenido mucha precaución en no romper el código actual, y en el 99% de los casos así será. Pero si crea los menues directamente sin usar los comandos es posible que tenga que retocar ligeramente su código. En concreto la propiedd lGrayed ha desaparecido y la propiedad bWhen ha sido sustituida por el evento OnRequestState
Esto permite agregar items con el + para expandirlos pero sin tener que agregarle hijos. En el evento OnItemExpanding se pueden agregar los hijos que tenga
PROPERTY cText READ METHOD GetText WRITE METHOD SetText
PROPERTY oFont READ GetFont WRITE SetFont
PROPERTY cTag READ INLINE ::GetTag() WRITE INLINE ::SetTag( Value )
SetKey( Asc( "C" ), FALT, {|| Calculator() } )