lunes, 10 de junio de 2019

Barra de Progreso con BalloonTip

Una barra de progreso bien parecida y que muestra un balloon tip mientras avanza.

Ventana de Ejemplo



Muestra del avance


Tema Azul


Tema Verde


Tema Naranja


Licencia: MIT
Descarga: https://github.com/Irwin1985/BalloonProgressBar

viernes, 7 de junio de 2019

FoxFaker para generar datos falsos en Visual FoxPro

He liberado una librería (que tal vez no despierte el interés de muchos, pues no todos trabajamos de la misma forma) que permite generar datos falsos. Si alguna vez han trabajado con librerías Faker de PHP, Ruby o Python entonces esto les será muy familiar. 



Uso:

PUBLIC Faker
Faker = NewObject("FoxFaker", "FoxFaker.prg")

?Faker.fakeName()           && Vincenzo Kihn MD
?Faker.fakeLastName()    && Willms
?Faker.fakeBoolean()       && .T.
?Faker.fakeColorName()  && maroon
?Faker.fakeEmail()           && clara.hauck@hagenes.biz

Casos de uso: poblar los objetos de negocio para pruebas de estrés (solo para quienes trabajan en capas o al menos separen las responsabilidades en clases).

Librerías amigas: FoxUnit / FoxMock

Para mis estudiantes de "El Zorro Peregrino", esta es una materia obligatoria. Ya daré detalles en los próximos videos.

Agradecimientos especiales: 



Hasta la próxima!

lunes, 25 de septiembre de 2017

(Nuevo) - Easy Ribbon Builder

EasyRibbonBuilder (erb) es una herramienta para programadores de Visual FoxPro 9.0 que les permite diseñar un menu estilo Ribbon con mayor facilidad mediante un builder o constructor que realiza todo el trabajo de enlazar y armar el Ribbon en tiempo de Ejecución.

La herramienta fue pensada para minimizar al máximo la intervención del programador en el diseño del Ribbon. Todos los que trabajamos con el Zorro más de una vez nos hemos topado con clases Ribbon vistosas las cuales nos gustaria implementar en nuestras aplicaciones, siendo un ejemplo claro la muy conocida clase FoxRibbonClass del fenecido pero muy recordado Guillermo Carrero (Q.E.P.D); ésta librería resulta excelente para comenzar en el mundo Ribbon, reconozco que su arquitectura o diseño resulta un poco rudimentaria para los que les gusta trabajar con Builders y mucho mas para los que estamos acostumbrados a que el mismo VFP desarrolle cosas por nosotros con sus famosos Wizards, no obstante su aprendizaje no tomaría mas de 5 horas para lograr dominar el proceso de construccion manual del ribbon, aunque actualmente unos colegas han estado desarrollando una especie de migrador de menu nativo MPR a FoxRibbon, incluso yo hice un migrador de formularios a FoxRibbon llamado AnyToFoxRibbon, es decir, esta clase ha inspirado a muchos tanto para darle mas vida a través de soluciones como migradores hasta incluso crearse sus propios menu Ribbon basándose en su diseño, dicho sea el caso de VFPRibbonTab contenida en este mismo blog.

Retomando el caso EasyRibbonBuilder

Erb trabaja con espacios de trabajo o WorkSpace donde aloja una lista de archivos que son los necesarios para comenzar a trabajar en el proyecto.


Este caso resulta bastante útil para aquellos que comienzan un proyecto de cero pero, ¿Qué hay de los proyectos regulares?, para este caso solo deben hacerse unos pequeños pasos que son:

  1. Archivo Main.PRG: lo mejor para este archivo es copiarse la información contenida ya que no es mucha.
El archivo está documentado e indica los pasos a realizar para mudar el codigo a nuestro archivo principal de nuestro proyecto o bien para ejecutarlo y dejarlo como Main.PRG

      2. Carpeta Resource: copiarse toda la carpeta resource y pegarla en la raiz de nuestro proyecto.





       3. Carpeta Vcx: finalmente copiar bien sea la carpeta o mover los 2 archivos Vcx's a nuestra carpeta de bibliotecas del proyecto.


Bien, sea cual sea el caso, el siguiente paso es compilar el proyecto y ejecutar el EXE.


Para testear la version DEMO:

https://github.com/Irwin1985/EasyRibbonBuilder

Primeros pasos: (seguir los videos en el siguiente PlayList)

EasyRibbonBuilder PlayList

Para consultas, soporte, precios, mejoras, etc.

rodriguez.irwin@gmail.com

Gracias por leer esta entrada...!

Hasta la próxima...!