FoxFace

31/03/2020

 

Autor del proyecto FoxFace: RetailSystems http://www.retailsystems.cz/foxfaceEn.htm

¿Qué es FoxFace?

FoxFace - Es una clase visual (vcx) diseñada íntegramente con Visual FoxPro que nos permite cambiar el aspecto de la interface de nuestras aplicaciones, tanto en la ventana principal _Screen como en los formularios .

Dispone de un diseñador de Skins, con lo cual podemos crear y modificar máscaras a nuestro gusto.

 

Ahora gratis con código fuente!
¡Prueba DEMO! (Aplicación de muestra en VFP7, VFP8 a VFP9)

Clase VFP para utilizar skins en aplicaciones de Visual FoxPro. Funciona con VFP 7.0 - 9.0. Viene con FoxFace Designer: aplicación de Skins y con máscaras gratuitas.

Descripción

  • Uso: desarrolladores de Visual FoxPro
  • Tipo: clase visual (vcx) para aplicación gráfica skinnig + diseño de máscaras
  • Plataforma: Microsoft Windows 98 / ME / 2000 / XP / 2003 / Vista / 7, Microsoft Visual
  • FoxPro 7.0, 8.0, 9.0
  • Gratis con el código fuente!

Presentación de la implementación

Características

  • Clase FoxFace encapsulada en vcx: uso e implementación simples
  • Todo el skin en un archivo dbf
  • Se puede enmascarar formularios y también la ventana principal _SCREEN
  • La máscara incluye: bordes y botones de formulario, botones estándar que se pueden skinizar, colores para todos los controles FoxPro
  • FoxFace Designer: aplicación para la creación de máscaras

Descargar
La clase FoxFace, el diseñador y todo el código fuente ahora son gratuitos bajo la Licencia Pública General Menor de GNU. Puede usar FoxFace en cualquier aplicación comercial de forma gratuita sin ninguna limitación. Solo se prohíbe vender FoxFace tal cual o un derivado para desollar VFP.

RetailSystems acepta donaciones para un mayor desarrollo. FoxFace ahora se usa para muchos proyectos diferentes y creo que es una manera justa de cubrir los costos de desarrollo. Si considera que FoxFace es una buena herramienta para su aplicación, y si vende o planea vender su aplicación, considere una donación. La cantidad de la donación depende de usted. ¡Gracias!

 

Descubriendo FoxFace

Al mismo tiempo que voy probando FoxFace, escribo este artículo como un manual propio y espero, que a algún lector que quiera utilizar esta clase, le sirva como ayuda, pues la verdad es que tenemos poca información de FoxFace si hacemos una búsqueda por internet.

Una recomendación personal es que, aunque en principio nos da pereza o cuesta tiempo y trabajo, debemos documentar nuestros proyectos de la mejor forma posible. A largo plazo puede ser muy reconfortable para un programador que por ejemplo quiere reanudar un proyecto para modificar o mejorar, cerrado hace dos años, tener un manual de instrucciones de como fue realizado su proyecto. En cuestión de media hora estamos listos para tocar lo que sea. Al contrarío, nos podemos encontrar con un arduo trabajo de horas y horas.

Para las pruebas utilizo Visual FoxPro 9 SP2 versión 9.0.0.7423 y 10 Advanced 64 bits

Empezamos:

1. Descarga

Primero procedemos con las descargas que nos ofrece RetailSystems. Al final de está página tiene un apartado de descargas.

En mi caso he completado las tres descargas en formato .zip

Voy a comenzar con la demostración.

 

2. FoxFaceDemo

Como se puede observar tenemos tres archivos ejecutables dependiendo de la versión VFP que utilizamos, en mi caso ejecuto FoxFaceDemoVFP9 y:

Pulse en la imagen para ampliar

A primera vista me ha parecido fantástico.

Cuento mis impresiones:

  1. Pulse sobre las imágenes para observar bien los bordes
  2. Que aparece el Status Bar (barra de estado) por lo que deduzco que es la ventana principal _Screen
  3. Compruebo que puedo cambiar el tamaño en los cuatro lados .BorderStyle = 3 Borde de tamaño ajustable.
  4. Compruebo el formulario interno y veo que es de borde no ajustable. Esta contenido en la ventana principal y se puede maximizar al tamaño de esta.
  5. Observo la barra de título con esquinas redondeadas, sin embargo también aprecio el pico de la esquina como cuando utilizamos un formulario sin barra de títulos .TitleBar = 0 (Desactivado), que es como empezamos a diseñar un formulario con una barra de títulos personalizada
  6. Ahora maximizo la ventana principal

Pulse en la imagen para ampliar

Veo varios problemas. Un recorte muy claro en la barra de títulos y en la barra de estado. La barra de Windows ha desaparecido. Más tarde, intentaremos solucionar esto.

Yo trabajo desde hace años con dos pantallas y cuando utilizamos estos interfaces elegantes, como FoxRibbon 0.14, VFPSkin2 etc., siempre me he encontrado con lo siguiente:

Si arrastro la pantalla principal o un formulario de nivel superior a la pantalla o pantallas secundarias, cuando le doy a maximizar, automáticamente lo hace en la pantalla que yo tengo seleccionada como principal. En mi versión FoxRibbon Camf (Qué es el FoxRibbon 0.14 de Guillermo Carrero D.E.P., con nuevas clases y mejoras), he corregido el problema y puedo maximizar en cualquier pantalla.

Pues en FoxFace puedo maximizar en cualquiera de mis dos pantallas. Un punto a su favor.

7. Esta demo no deja cerrar o salir desde el botón superior derecho (cerrar) de la ventana principal y para salir debemos cerrar el formulario interior.

8. Ahora minimizo el formulario interno en la ventana principal. Cuando vuelvo a recuperar su estado normal o maximizar la aplicación se cierra.

Posteriormente vuelvo a comprobar y me doy cuenta de lo que realmente esta ocurriendo.

Pulse en la imagen para ampliar

Según donde posicionemos el cursor del ratón ocurrirá lo que muestro en la imagen superior por zonas de colores. Si pulso el botón maximizar en la posición correspondiente a la mitad derecha del botón que como se puede ver está en zona roja, realmente lo que estoy haciendo es cerrar el formulario y la aplicación.

En toda la zona verde se maximiza el formulario.

En la zona azul no restaura la ventana aunque pulsemos situándonos en la zona marcada.

En la naranja se abre el cuadro de dialogo y en Restaurar funciona.

A pesar de los bugs que hemos visto, la presentación me encanta.

 

3. FoxFaceClass

foxface.dbf es una base de datos donde se almacenan los skins. El diseñador de skins (foxfacedesigner.exe) maneja esta tabla

Pulse en la imagen para ampliar

Carpeta lib

En esta carpeta tenemos la clase foxface.vcx y su memo foxface.vct

Carpeta designer

En esta carpeta tenemos el diseñador de skins foxfacedesigner.exe y las subcarpetas metadata, skin2 y metadata

Carpeta metadata:

En la subcarpeta empty tenemos una tabla lang_cz.dbf vacía.

La tabla config.dbf

La tabla lang_cz.dbf

Mi primera conclusión es que se trata de tablas relacionadas con errores y el idioma a tratar los mismos. Ya descubriremos con el tiempo de que se trata.

Carpeta skin3

En esta carpeta tenemos el contenido de los botones maximizar, minimizar y restaurar

skin2.zip: Es una copia de los archivos.bmp que vemos desde down_center.bmp hasta el final. No incluye las carpetas.

Carpeta minbutton

Carpetas restantes

Archivos con extensión .bmp de 5 x 5 pixeles. Sobre la marcha veremos su uso.

Carpeta Skins Sources

Figura 11

Cada carpeta se corresponde con el nombre de un skin. En ellas se encuentran archivos con extensión .bmp. Con este conjunto de archivos de imagen en cada carpeta se forma un skin.

Diseñador de skins foxfacedesigner

Ya hemos visto todo el contenido de FoxFaceClass. Para finalizar vamos a ver el diseñador de skins foxfacedesigner.exe.

Esto es lo primero que veremos. La ventana principal _Screen y un formulario en ella con el título Skins.

Cancel: Si pulsamos este botón en el formulario se cerrara el mismo. En el menú de la ventana principal Skiny vuelve a abrir este formulario.

Konec: En el menú de la ventana principal nos invita a salir con una ventana de mensaje con las opciones Sí - No.

New: Crear un nuevo skin

Edit skin: Editar skin

Edit params: Editar parámetros

Delete: Borrar skin

Esta es una pequeña simulación recorriendo las distintas pantallas. Pulse sobre los botones de la derecha en el formulario Skins y navegara por las distintas opciones. Empiece por el botón New. La pantalla que se abrirá tiene instrucciones para volver.

Tenga en cuenta que cuando trabaje con el formulario real, usted, tiene que situarse sobre el Skin Name a editar con cualquiera de las opciones excepto New, ya que crea un nuevo skin. En esta simulación utilizaré el skin Axis.

New Edit_Skin Edit_buttons Edit_params Delete Cancel

Como podemos ver en el formulario, el campo Skin name se corresponde con los skins que tenemos en la figura 11.

La tabla que utiliza para el almacenamiento de los mismos es foxface.dbf en el directorio de la aplicación.

Ahora vamos a dar un repaso a las opciones:

 

New:

Cancel

Pulse en el botón Cancel para volver al formulario principal

Se hace muy largo el artículo si explicamos cada opción en detalle. Solo puedo decir que todo es muy sencillo e intuitivo. Tenemos que dedicarle un poco de tiempo al principio pero en breve dominamos bien todo el tema del Diseñador de skins.

 

Edit skin:

Cancel

Pulse en el botón Cancel para volver al formulario principal

 

Edit buttons:

Cancel

Pulse en el botón Cancel para volver al formulario principal

 

Edit params:

Cancel

Pulse en el botón Cancel para volver al formulario principal

Delete: Borra el skin sobre el que estamos situados. Nos sale un mensaje de confirmación - No. Volver al formulario principal.

 

Cancel: Con esta opción no cancelamos nada. Debería ser mas bien un botón Exit porque lo que hace es cerrar el formulario. Volver al formulario principal.

Doy por concluida la revisión FoxFaceClass

 

4. FoxFaceClassSourcecode

Por hoy 1:47 01/04/2020 lo dejamos aquí. En breve seguiremos con este artículo.

He verificado que FoxFace admite ser compilado con VFP 10 Advanced 64 bits.

Segunda parte: Puesta en funcionamiento -- > FoxFace

 

Capítulos

 

Vea también

 


 

Descargas

Descarga

Link alternativo

Try DEMO! (Sample app in VFP7, VFP8 a VFP9)

FoxFace class + skins + designer

Source code for FoxFace class and FoxFace Designer

Try DEMO! (Sample app in VFP7, VFP8 a VFP9)

FoxFace class + skins + designer

Source code for FoxFace class and FoxFace Designer

 

Donaciones

No olvide de hacer una donación a RetailSystems, para que pueda continuar mejorando este proyecto.

 

Referencias

Autor del proyecto FoxFace: RetailSystems http://www.retailsystems.cz/foxfaceEn.htm

Artículo FoxFace: Camf.

 

 

 



error: Contenido protegido