HMG OBJECTS... A New Project!

HMG announcements; Latest HMG-related news, releases, fixes and updates.

Moderator: Rathinagiri

User avatar
luisvasquezcl
Posts: 1258
Joined: Thu Jul 31, 2008 3:23 am
Location: Chile
Contact:

Re: HMG OBJECTS... A New Project!

Post by luisvasquezcl »

Estimado Roberto,
Discrepo de tu punto de vista, ya que el comando release tiene como función destruir el objeto y no ocultarlo o hacer alguna otra cosa, para eso tiene su propio metodo.
Si vas a utilizar objetos, asignas valores a sus datas y ejecutas sus métodos esperas que al finalizar el control también elimines el objeto.
Hacer esto te permitirá mantener la elegancia y coherencia de tu libreria que es algo que te ha destacado.
Imaginate lo siguiente:

function Finalizar( oWnd, obtn1, obtn2, obtn3, obtn..... )
oBtn1:release()
obtn2:release()
obtn3:release()
obtn1:= nil
obtn2:= nil
. . . . . etc.
return
un tremendo código para algo tan simple; además, sería ideal que la ventana al liberarse eliminara todas las referencias a objetos contenidas, de esta forma tu indicarás oWindow:Release() y destruiras todos los objetos contenidos en la ventana.

Otra cosa, no sé si consideras que se siga utilizando la misma sintaxis que con HMG pero con objetos. Por ejemplo, para hacer referencia a un objeto por lo general se llama al igual que con hmg <window>:<Objeto>:Metodo : por ejemplo. oWindow:Button1:Release().
esta sintáxis es tambien importante para evitar tener que pasar una cantidad de objetos de una funcion o procedimiento a otro .... hay ventanas fáciles a lo menos 2 ó 3 controles, pero cuando son 20, 30 o más???, se hace inmanejable.

Son puntos de vista ... y algunos de los muchos problemas con los que me encontré cuando hacia MCL.

Dentro de todo, tu inicio es muy bueno, muy elegante como lo dije anteriormente, y espero que llegue a buen fin tal como lo has hecho con HMG. Y conociendo como eres, ya lo creo que será así.

Saludos cordiales,
Luis Vasquez
User avatar
Roberto Lopez
HMG Founder
Posts: 4004
Joined: Wed Jul 30, 2008 6:43 pm

Re: HMG OBJECTS... A New Project!

Post by Roberto Lopez »

luisvasquezcl wrote:Estimado Roberto,
Discrepo de tu punto de vista, ya que el comando release tiene como función destruir el objeto y no ocultarlo o hacer alguna otra cosa, para eso tiene su propio metodo.
Si vas a utilizar objetos, asignas valores a sus datas y ejecutas sus métodos esperas que al finalizar el control también elimines el objeto.
Hacer esto te permitirá mantener la elegancia y coherencia de tu libreria que es algo que te ha destacado.
Imaginate lo siguiente:

function Finalizar( oWnd, obtn1, obtn2, obtn3, obtn..... )
oBtn1:release()
obtn2:release()
obtn3:release()
obtn1:= nil
obtn2:= nil
. . . . . etc.
return
un tremendo código para algo tan simple; además, sería ideal que la ventana al liberarse eliminara todas las referencias a objetos contenidas, de esta forma tu indicarás oWindow:Release() y destruiras todos los objetos contenidos en la ventana.
Ok. Pensaré en ello. / I'll think on that.
luisvasquezcl wrote: Otra cosa, no sé si consideras que se siga utilizando la misma sintaxis que con HMG pero con objetos. Por ejemplo, para hacer referencia a un objeto por lo general se llama al igual que con hmg <window>:<Objeto>:Metodo : por ejemplo. oWindow:Button1:Release().
esta sintáxis es tambien importante para evitar tener que pasar una cantidad de objetos de una funcion o procedimiento a otro .... hay ventanas fáciles a lo menos 2 ó 3 controles, pero cuando son 20, 30 o más???, se hace inmanejable.
Ya está hecho y estará incluido en la próxima versión. Al crear cada control, se crea dinámicamente una variable de instancia con el mismo nombre, en su ventana, cuyo contenido es el mismo objeto.

It's already done. At creating each control, an instance variable on parent window object is created with the name of the control containing the control object.
luisvasquezcl wrote: Son puntos de vista ... y algunos de los muchos problemas con los que me encontré cuando hacia MCL.

Dentro de todo, tu inicio es muy bueno, muy elegante como lo dije anteriormente, y espero que llegue a buen fin tal como lo has hecho con HMG. Y conociendo como eres, ya lo creo que será así.
Muchas Gracias! / Thank you very much!
Regards/Saludos,

Roberto


(Veritas Filia Temporis)
User avatar
luisvasquezcl
Posts: 1258
Joined: Thu Jul 31, 2008 3:23 am
Location: Chile
Contact:

Re: HMG OBJECTS... A New Project!

Post by luisvasquezcl »

Gracias a ti Roberto por tu dedicación y generosidad con nosotros.
ya estoy ansioso de ver la siguiente versión ..... :lol:
Saludos cordiales,
Luis Vasquez.
User avatar
fchirico
Posts: 324
Joined: Sat Aug 23, 2008 11:27 pm
Location: Argentina

Re: HMG OBJECTS... A New Project!

Post by fchirico »

Roberto Lopez wrote:Hi All,

The second experimental release of HMG OOP has a new name: HMG OBJECTS.

......

Enjoy!
Roberto, HMG OOP será un proyecto aparte o cuando esté terminado se distribuirá junto con HMG.

Quiero explicarme bien:
Podré usar tanto el código normal como el OOP como por ejemplo para definir una "ventana" usando solo HMG?

Saludos,
Saludos, Fernando Chirico.
User avatar
Roberto Lopez
HMG Founder
Posts: 4004
Joined: Wed Jul 30, 2008 6:43 pm

Re: HMG OBJECTS... A New Project!

Post by Roberto Lopez »

fchirico wrote:
Roberto Lopez wrote:Hi All,

The second experimental release of HMG OOP has a new name: HMG OBJECTS.

......

Enjoy!
Roberto, HMG OOP será un proyecto aparte o cuando esté terminado se distribuirá junto con HMG.
Si, HMG OBJECTS será un proyecto separado.

Yes, HMG OBJECTS will be a separate project.
fchirico wrote: Quiero explicarme bien:
Podré usar tanto el código normal como el OOP como por ejemplo para definir una "ventana" usando solo HMG?
La idea es no mezclar el código semi-oop y el verdadero OOP en la misma aplicación. Esto sería posible, pero en mi humilde opinión sería confuso y no tendría demasiado sentido.

Tené en cuenta que HMG OOP soporta sintaxis xBase y alternativa para mantener las cosas sencillas.

The idea is not to mix sem-oop and true OOP in the same application. It is possible, but IMHO, confusing and non-sense.

Please, consider that HMG OOP support alternate syntax and xBase syntax to keep things easy.
Regards/Saludos,

Roberto


(Veritas Filia Temporis)
User avatar
fchirico
Posts: 324
Joined: Sat Aug 23, 2008 11:27 pm
Location: Argentina

Re: HMG OBJECTS... A New Project!

Post by fchirico »

Roberto Lopez wrote: Si, HMG OBJECTS será un proyecto separado.

Yes, HMG OBJECTS will be a separate project.
fchirico wrote: Quiero explicarme bien:
Podré usar tanto el código normal como el OOP como por ejemplo para definir una "ventana" usando solo HMG?
La idea es no mezclar el código semi-oop y el verdadero OOP en la misma aplicación. Esto sería posible, pero en mi humilde opinión sería confuso y no tendría demasiado sentido.

Tené en cuenta que HMG OOP soporta sintaxis xBase y alternativa para mantener las cosas sencillas.

The idea is not to mix sem-oop and true OOP in the same application. It is possible, but IMHO, confusing and non-sense.

Please, consider that HMG OOP support alternate syntax and xBase syntax to keep things easy.
Gracias por despejarme la duda.
Saludos, Fernando Chirico.
User avatar
bpd2000
Posts: 1207
Joined: Sat Sep 10, 2011 4:07 am
Location: India

Re: HMG OBJECTS... A New Project!

Post by bpd2000 »

Update / Latest release of HMG OBJECTS
BPD
Convert Dream into Reality through HMG
User avatar
Pablo César
Posts: 4059
Joined: Wed Sep 08, 2010 1:18 pm
Location: Curitiba - Brasil

HMG OBJECTS... A New Project!

Post by Pablo César »

bpd2000 wrote:Update / Latest release of HMG OBJECTS
Hi friend ! This is a question or requirement or what about it ?

I know what this examples are for, I never have seen before. Interesting but I believe as Roberto said is separated project. Probably would it be included in SAMPLES but not intrinsic at main HMG project...
HMGing a better world
"Matter tells space how to curve, space tells matter how to move."
Albert Einstein
User avatar
srvet_claudio
Posts: 2193
Joined: Thu Feb 25, 2010 8:43 pm
Location: Uruguay
Contact:

Re: HMG OBJECTS... A New Project!

Post by srvet_claudio »

Pablo César wrote:
bpd2000 wrote:Update / Latest release of HMG OBJECTS
Hi friend ! This is a question or requirement or what about it ?

I know what this examples are for, I never have seen before. Interesting but I believe as Roberto said is separated project. Probably would it be included in SAMPLES but not intrinsic at main HMG project...
Hi Pablo.
HMG.4 is based on QT for the creation and management of controls and windows.
HMG.4 is a project (code) totally different of HMG.3.1.4.
IMHO I think the solution would be rewrite HMG.3.1.4 with object-oriented code, I have been long thinking about this, but is a very BIG work.
Best Regards,
Claudio.
Best regards.
Dr. Claudio Soto
(from Uruguay)
http://srvet.blogspot.com
Carlos Britos
Posts: 245
Joined: Sat Aug 02, 2008 5:03 pm

Re: HMG OBJECTS... A New Project!

Post by Carlos Britos »

srvet_claudio wrote: Hi Pablo.
HMG.4 is based on QT for the creation and management of controls and windows.
HMG.4 is a project (code) totally different of HMG.3.1.4.
IMHO I think the solution would be rewrite HMG.3.1.4 with object-oriented code, I have been long thinking about this, but is a very BIG work.
Best Regards,
Claudio.
Hi Claudio
I´ve been making some test (a very basic GUI lib) with oop code with a similar structure than hmg4 and the main problem is the backward compatibility. The difference between procedural and oop code make it very hard. That was IMHO the problem with hmg4.
Regards/Saludos, Carlos (bcd12a)
Post Reply