Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Bibliotecas de código fuente > [GH Freebrary]
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 28-04-2013
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Poder: 29
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
GH Freebrary para Delphi XE2

Hola a todos.

Hoy es un día emotivo porque he terminado y puesto en la zona de descargas la primera liberación de GH Freebrary para Delphi XE2. Es una versión reducida, por ahora no contiene todas las clases ni todas las funciones del paquete para Delphi 7, pero sí trae el componente que más "atención" ha recibido desde su creación hace ya varios años: el TghDataSource.

Deriva del típico TDataSource que viene de fábrica, usado cotidianamente en la mayoría de las aplicaciones, sólo que añade dos útiles propiedades:
  • DataSetCloned — Para crear en tiempo de ejecución un "clon" del DataSet asignado. Uno o más formularios pueden trabajar y hacer lo que sea con sus respectivos DataSet clones, sin tocar el DataSet original. Nada de lo que haga un formulario con el DataSet interferirá con el buen funcionamiento de otros formularios que usen el mismo DataSet (porque cada formulario usa en realidad una copia).
  • DataSetEvents — Para trabajar con los eventos del DataSet asignado, pero en el "ámbito" del componente. El DataSet puesto en un módulo de datos, mientras que dentro de un formulario y unidad aparte un componente TghDataSource le establece manejadores de eventos BeforeXXX y AfterXXX que son ejecutados sólo con ese formulario (eventos del DataSet particulares por formulario).
Recuerden que esto es software libre. Dentro de poco añadiré la descripción detallada del componente a la documentación, pero todo el mundo puede contribuir con un poco de tiempo para probar o poner en uso el componente u otros elementos de la biblioteca, compartir sus experiencias y enriquecer la divulgación.

A partir de aquí empieza el camino para que la gente disponga de GHF en versiones recientes de Delphi. Poco a poco iré ampliando el paquete de XE2 y espero pronto contemos con liberaciones para 2010, XE, XE3, XE4 y demás versiones (para ello necesitaré apoyo de todo tipo).

Por lo pronto dejo abierto este hilo dedicado a los avances, preguntas y respuestas sobre GH Freebrary en Delphi XE2, y les recuerdo que el resto del foro está ahí para cuando deseen iniciar un tema en particular con alguna inquietud, propuesta, consulta, etcétera. Como autor inicial intentaré responder tan pronto como sea posible, pero invito a que seamos más los que tengamos a bien allanarles el camino a los que vienen detrás.

Feliz fin de semana.

Al González.

Última edición por Al González fecha: 09-01-2014 a las 02:34:52.
Responder Con Cita
  #2  
Antiguo 28-04-2013
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.021
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por Al González Ver Mensaje
Hola a todos.
Hoy es un día emotivo porque he terminado y puesto en la zona de descargas la primera liberación de GH Freebrary para Delphi XE2.
Feliz fin de semana.
Al González.
Enhorabuena

Responder Con Cita
  #3  
Antiguo 28-04-2013
Avatar de ElKurgan
[ElKurgan] ElKurgan is offline
Miembro Premium
 
Registrado: nov 2005
Posts: 1.232
Poder: 20
ElKurgan Va camino a la fama
Muchas gracias por el aporte, Maestro

Responder Con Cita
  #4  
Antiguo 28-04-2013
Avatar de ginkaku
ginkaku ginkaku is offline
Miembro
NULL
 
Registrado: nov 2012
Posts: 59
Poder: 12
ginkaku Va por buen camino
Thumbs up

Se oye excelente, espero que salga para la version 2010.
Responder Con Cita
  #5  
Antiguo 29-04-2013
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Muchas gracias Al.

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #6  
Antiguo 29-04-2013
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Poder: 29
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
Un placer, amigos.

Cita:
Empezado por ginkaku Ver Mensaje
Se oye excelente, espero que salga para la version 2010.
Hola ginkaku. Considerando que no serás el único usuario de Delphi 2010 interesado en el tema, he abierto un nuevo hilo para que trabajemos en ello.
Responder Con Cita
  #7  
Antiguo 01-07-2013
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Poder: 29
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
Versión 20130630 liberada

Hola a todos.

Tengo novedades sobre las ediciones para Delphi 7 y XE2, acabo de subir la versión 20130630 (30 de junio de 2013). Esta vez tardé poco más de dos meses, pero ha valido la pena. Comprenderán que por más que quisiera dedicar el 100% de mi tiempo a este desarrollo, el hecho de que no me reporte ingresos (no han habido donaciones hasta el momento) hace que me distraiga en actividades laborales "normales". Ya saben, hay que ganarse las habichuelas, como dicen por ahí.

El porcentaje de la edición para XE2, respecto a la edición para Delphi 7, pasa del 20 al 28. Sigue siendo una proporción baja, pero ese 28% contiene bastante de lo que hace buena a GH Freebrary. Retiré de todas las unidades la leyenda "beta version", ya estaba de más calificarla de esa manera.

Una de las principales novedades para XE2 es que se incorpora la clase TghForm que usé durante bastante tiempo y con gran satisfacción en Delphi 7. No fue necesario hacerle grandes cambios, trabaja a la perfección.

Por otra parte, se agregaron las propiedades TghClientDataSet.FilterCheck y TghForm.Reader. Y en ambas ediciones se hicieron varias correcciones menores, y se incluyeron una veintena de funciones nuevas (como todas, pensadas para escribir menos código y evitarle complejidades al programador).

Para dar una muestra, me gustaría explicar brevemente que cuando derivamos nuestros formularios de TghForm en lugar de TForm, seguimos contando con todo lo que trae de herencia TForm, pero podemos lanzar los formularios sin tener que crear y destruir nosotros mismos las instancias de éstos. Con una sola línea se crea, se ejecuta (abre) y, cuando el usuario lo cierra, se destruye el formulario:
Código Delphi [-]
TForm2.Execute;
No necesitamos preocuparnos de instanciar la variable del formulario, ni de liberarla después de usar éste. Execute es como ShowModal, pero haciendo el trabajo completo. Y, como ShowModal, devuelve un estado mrOK, mrCancel, ..., según la manera en que haya sido cerrado el formulario. Además puede recibir parámetros abiertos, por si queremos indicarle algo a nuestro formulario:
Código Delphi [-]
TForm2.Execute ('Rueda');
TForm2.Execute ('Palanca');
El formulario puede "recoger" esos parámetros en alguno de sus eventos, como el evento OnCreate:
Código Delphi [-]
procedure TForm2.FormCreate(Sender: TObject);
begin
  // Agregamos al título del formulario "Rueda" / "Palanca" (lo que se haya puesto en Execute)
  Caption := Caption + ' - ' + OpenParams [0];
end;
Y si queremos algo similar a Execute, pero que en lugar de hacer ShowModal abra el formulario como lo hace Show, entonces tenemos para ello el método Open:
Código Delphi [-]
TForm2.Open ('Rueda');
En fin, es sólo una pequeñita muestra (una más) de lo que se pretende, y felizmente se consigue, con GH Freebrary.

Ojalá sepa de más programadores que la incorporen a su caja de herramientas. No hay como comprobar que lo que uno hace de verdad tiene valor.

Saludos.

Al González.

P.D. Tomaré esta versión de XE2 para comenzar la adaptación a XE4, la cual creo no tendrá mayores dificultades.
Responder Con Cita
  #8  
Antiguo 12-01-2014
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Poder: 29
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
Versión 2014.01.11

Buena noche/día.

Acabo de subir al repositorio la versión 2014.01.11 (11 de enero de 2014), con ediciones compiladas y probadas en Delphi 7 y XE2.

La edición para XE2 ya alcanza el 55% del contenido presente en la edición para Delphi 7. Y su núcleo (GHFRTL.pas) contiene ahora un 94% del que viene para Delphi 7. Respecto a la liberación anterior para XE2 —octubre de 2013—, se agregaron siete unidades: GHFEN, GHFES, GHFOpenXMLPart, GHFOpenXMLRels, GHFOpenXMLSpreadsheet, GHFOpenXMLSpreadsheetStrs, GHFXMLDoc.pas. Esta última tras hacerle la mejora que se plantea aquí.

En ambas ediciones mejoré el código de algunas rutinas, como ghValid, ghPropObj, ghCopyProp, ghCopyProps, ghRightChrs y ghPropValue. Agregué varias decenas de constantes, unas cuantas variables y tipos, y creé las funciones de uso general ghLeftChrs, ghLeftDigits, ghLeftInt, ghPropMethod, ghCopyPropObj, ghCopyPropMethod, ghCopyPropValue, ghSetUpperOrd, ghSimplifyUpper, ghPreCompare, ghSetInt64, ghValidGUIDs, ghCreateCOMObj, ghCOMObj, ghCOMDispatch, ghSetGUID, ghPosGUID, ghPosGUIDStr, ghPosGUIDStrD1, ghMSXMLSchemaCache, ghMSXMLSchemaCacheClassID, ghMSXMLVersion, ghEqualsFromD2, ghRightDigitsDots, ghRightVersion, ghCheckMSXMLDocClassIDs, ghProgID, ghProgIDVersion, ghGetProgID, ghClassID, ghPWideChr, ghWidePtr y ghGetClassID, entre varias otras. Además de una serie de ajustes de diversa índole.

Cada vez estoy más cerca de incluir el componente TghClientDataSet en la edición para XE2. Espero que sus 3500 líneas de código, con pequeñas mejoras sobre TClientDataSet, tengan aceptación entre los que usan versiones modernas de Delphi.

También decir que durante este tiempo el proyecto GH Freebrary recibió su primera donación monetaria: 100 MXN de un colega y buen amigo de Texcoco, México. Ojalá fueran más los que aportaran siquiera 1 peso, pero, mientras no sea así, sólo queda subvenirlo con ingresos por trabajos eventuales y conformarme con la satisfacción de estar haciendo algo emocionante por la comunidad Delphi. Los tiempos de soñar con oportunidades de buena salud y vida resuelta van quedando atrás. ¡Y hay tanto por hacer! Ojalá pudiera darme el "lujo" de trabajar 100% en este proyecto; quizá ese es el único sueño que sigue fuerte en mi interior.

Pero dejémonos de melancolías. Una pregunta: ¿alguien ha adaptado o intentado adaptar ya alguna de las ediciones a versiones distintas de la 7, 2007 y XE2? Quiero hacer eso, pero todavía no logro reunir lo que vale la edición Enterprise o siquiera Professional de Delphi, y me ha costado trabajo convencer a los colegas de que me dejen usar sus Delphis mediante escritorio remoto, aunque sea para compilar y probar. Recuerden que en el foro hay hilos abiertos para el proceso de adaptar GHF a Delphi 2010 y XE4, y cualquiera es libre de iniciar un tema sobre la adaptación a otras versiones o sobre lo que desee preguntar o compartir acerca de GHF. Pueden tomar la biblioteca, adaptarla a alguna versión o añadirle alguna mejora y subirla al repositorio para el disfrute de los demás, después de todo eso es lo que distingue al software libre.

Con esta liberación, hay un par de temas del manual que debo actualizar. Vamos a darle un rato más antes de ir a la cama...

Saludos y que este sea un gran año para todos nosotros.

Al González.

Última edición por Al González fecha: 12-01-2014 a las 09:54:13.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Requerimiento de una función para GH Freebrary. TiammatMX [GH Freebrary] 9 18-04-2013 05:41:14
Avanzando con GH Freebrary Al González [GH Freebrary] 13 23-03-2013 08:08:03
Introducción a GH Freebrary Al González [GH Freebrary] 0 18-03-2013 11:11:54
Problemas para correr una aplicación hecha en Delphi 2010 para windows NT thelibmx Varios 0 04-03-2013 20:14:15
Nueva GH Freebrary (open source) "beta" Al González [GH Freebrary] 23 17-02-2013 02:20:40


La franja horaria es GMT +2. Ahora son las 20:29:47.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi