REALLY IMPORTANT: is anyone interested in HMG4 ?

Moderator: Rathinagiri

mrduck
Posts: 497
Joined: Fri Sep 10, 2010 5:22 pm

Re: REALLY IMPORTANT: is anyone interested in HMG4 ?

Post by mrduck »

concentra wrote:Hi Everybody.
... cut ...
Thank you for your message, Mauricio.

So, it must be said, the only one that, up to now, uses HMG4 in a production environment.... has no HMG3 code to convert...
concentra wrote:
mrduck wrote: Mauricio, do you have software in the works based on HMG4 ?
Parts of my mainstream software, the one that puts the money in my pocket, are in HMG4 in production environment.
Is a huge mixed console/GUI application using WVG/WVT and FiveWin.
All new functionality we are trying to write in HMG4 and the goal is to have it all in HMG4 in the future, multiplataform.
So you say that NOW there are parts of your software that is already working using HMG4 library (I imagine a separate .exe... but I also remember you message about mixing WV? with hbQt... Can you tell me how to create such a mix and if it works correctly (yes, I believe it works :-) )
concentra wrote: And I am realistic, I don't expect this goal to be completed in less than 2 or 3 years.
And, HMG4 still have a long way to be finished itself.
I know that there are still missing or artially implement methods in HMG4, expecially in DBF based GRID/BROWSE when a filter is set... but generally speaking, what do you think is present in Fivewin and not in HMG4 ?

Can you tell us a little about your porting experience ?

Francesco
mrduck
Posts: 497
Joined: Fri Sep 10, 2010 5:22 pm

Re: REALLY IMPORTANT: is anyone interested in HMG4 ?

Post by mrduck »

concentra wrote: And of course such an application must be coded accordingly to run in the device Android is running, don't expect to have a fully functional desktop application running efficiently in a cell phone...
I ordered a settop box marked "Google TV" (I believe it is unofficial... it is not produced by Google, but one official one should be in the works).... it is a settop box that runs android and connects to a tv/monitor. You can connect a USB [wireless] keyboard and mouse, SD for internal storage, HD for external storage, it has lan e wifi connection. It has a video chipset able to decode H264 full-hd video on the fly

It is exactly like a phone, without the "phone" part, like ipod-touch vs iphone.... but it connects to the tv via hdmi up to full-hd... so you have PLENTY of space on a 50"... (my brother-in-law... I don't have one.... yet)

I bought one of these boxes to:
- play angry birds and another game on a tv (my reason...)
- have my wife check her mail in a way easier way ("official" reason)
- play videos/music/picture slideshow (to accomplish the daughters)

So, strictly speaking, android is not only for phones, or tablet...
User avatar
Rathinagiri
Posts: 5480
Joined: Tue Jul 29, 2008 6:30 pm
DBs Used: MariaDB, SQLite, SQLCipher and MySQL
Location: Sivakasi, India
Contact:

Re: REALLY IMPORTANT: is anyone interested in HMG4 ?

Post by Rathinagiri »

Ricci wrote:
mrduck wrote: But, are you (all the readers) willing to cooperate ? How ?
For example, do you have a "small complete program" that you can try to port to HMG4 ? With "small complete program" I mean something with 3/4 forms, with some DBFs ?
Yes, I can port my Orchid program to HMG4, I still started some month ago but stopped because at this time browse/grid did not work with dbf. The main form is still working so I can continue with the rest.
I am porting my Interest(ing) calculator and will post today or tomorrow.
East or West HMG is the Best.
South or North HMG is worth.
...the possibilities are endless.
mrduck
Posts: 497
Joined: Fri Sep 10, 2010 5:22 pm

Re: REALLY IMPORTANT: is anyone interested in HMG4 ?

Post by mrduck »

Later this evening I will commit some updates to make porting easier.

Please report any difficulties you found, problems, etc.
rathinagiri wrote:I am porting my Interest(ing) calculator and will post today or tomorrow.
Ricci
Posts: 255
Joined: Thu Nov 19, 2009 2:23 pm

Re: REALLY IMPORTANT: is anyone interested in HMG4 ?

Post by Ricci »

mrduck wrote:
Ricci wrote:
mrduck wrote: But, are you (all the readers) willing to cooperate ? How ?
For example, do you have a "small complete program" that you can try to port to HMG4 ? With "small complete program" I mean something with 3/4 forms, with some DBFs ?
Yes, I can port my Orchid program to HMG4, I still started some month ago but stopped because at this time browse/grid did not work with dbf. The main form is still working so I can continue with the rest.
Thanks, I was about to ask to you since I found reference to your test with marinas in an old thread. Is it open source ?
PLEASE tell me if you have problems with the GRID/BROWSE, I'm doing some work on it.
If there are errors, please send me the GRID/BROWSE istruction to test.
Looks like I need a lot of time. :(
I get hundreds of warnings while compiling and errors which I don´t understand at program start. With the last version of HMG4 everything was fine.
That´s frustrating.

Seems like I have to build my program from the scratch, but 2000 lines of code only for testing ????
mrduck
Posts: 497
Joined: Fri Sep 10, 2010 5:22 pm

Re: REALLY IMPORTANT: is anyone interested in HMG4 ?

Post by mrduck »

Ricci wrote:
Looks like I need a lot of time. :(
I get hundreds of warnings while compiling and errors which I don´t understand at program start. With the last version of HMG4 everything was fine.
That´s frustrating.

Seems like I have to build my program from the scratch, but 2000 lines of code only for testing ????
Please remember to define HMG3 before loading hmg.ch, for example in hbmk.hbm add following line
-DHMG3

Please have a look at include\hmg3.ch, it is not complete... it is a one-time job to complete it...

I'm starting to create a doMethod function... pay attention there are only 3 parameters... for example getting ITEM from a GRID is a 4 parameter job....

Code: Select all

FUNCTION doMethod( a1, a2, a3 )
   DO CASE
   CASE pCount() == 2
      &a1:&a2()
   CASE pCount() == 3
      &a1:&a2:&a3()
   ENDCASE
RETURN .T.

Please download the last svn, Luigi commited some patches I prepared yesterday for better hmg3 compatibility. PLEASE add this function call
hmg3(.T.)
to activate some more compatible layer...

After these changes, 4 minutes work please compile again and sen me the warning file...

I already asked, is the source code for this program open-source ?
Carlos Britos
Posts: 245
Joined: Sat Aug 02, 2008 5:03 pm

Re: REALLY IMPORTANT: is anyone interested in HMG4 ?

Post by Carlos Britos »

Ricci wrote:
rathinagiri wrote:And we have to verify whether HMG4 is that slower. I personally don't think so. Once loaded, it is as fast as windows, I think.
It´s a bit slower because the way of a command to the graphical output is "longer" and the definition of objects seems to be slower (because of QT?).
About the size of the remaining exe: if I include the QT-libs into the exe it will be about 50 MB, the same HMG3 program under 3MB.

But that´s nothing to worry about. When I said, HMG4 is slower than HMG3, I mean that it is a bit slower not "it is slow".
It is normal that platform independent software is slower than platform optimized. If you compare Office 2010 with OpenOffice, there is a big difference in speed (especially when loading the program) but you can work with both of them without problems.
Hi
I've made a very simple comparation between gui libs, is not the true of the universe, it's just to see some difference between them. Of course to get a real performance of the libs, we need a different test.
Testing the below code the values are in seconds:
average 5 times - loop 100000

Code: Select all

                  hmg4    hmg3   hmgee    oohg
 get value        0.26    4.05    3.10    3.36
 set value        0.34    3.70    9.54   15.69
 set height       0.59    5.40    7.62    6.45
 hide/show        2.52   90.40   87.30  116.50

 hmg4  Harbour + MinGW
 hmg3  Harbour + MinGW
 hmgee Harbour + Bcc
 oohg  xHarbour + Bcc

Code: Select all

 #include "hmg.ch"
* #include "minigui.ch"
* #include "oohg.ch"
* #include "ighqt.ch"

MEMVAR oWin

FUNCTION Main

   LOCAL  lbl1

   PUBLIC oWin


  DEFINE WINDOW oWin ;
    AT 0,0 ;
    WIDTH 450 HEIGHT 400 ;
    TITLE 'Main Window' ;
    MAIN

    @ 10,10 LABEL lbl1 ;
    WIDTH 350 ;
    HEIGHT 30 ;
    VALUE ''

    @ 50,10 LABEL Label_2 ;
    VALUE 'Click Me !' ;
    ACTION Test()

    @ 100,10 editBox ed1 ;
    WIDTH 450 ;
    HEIGHT 250 ;
    VALUE ''

  END WINDOW
 ACTIVATE WINDOW  oWin

RETURN NIL


/*----------------------------------------------------------------------*/

FUNCTION test()

   LOCAL q, nx, c := ''

   oWin.lbl1.value    := 'test'

   q := seconds()

   FOR nx := 1 TO 100000
      x := oWin.lbl1.value
   NEXT

   c += 'get value ' + hb_NToS( seconds() - q )

   q := seconds()

   FOR nx := 1 TO 100000
      oWin.lbl1.value    := 'qwerty'
   NEXT

   c += ' set value=' + hb_NToS( seconds() - q )

   q := seconds()

   FOR nx := 1 TO 100000
      oWin.lbl1.height   := 50
   NEXT

   c += ' set height=' + hb_NToS( seconds() - q )

   q := seconds()

   FOR nx := 1 TO 100000
     **  oWin.lbl1.backcolor := {250,0,0}
      oWin.lbl1.hide()
      oWin.lbl1.show()
   NEXT

   c += ' hide/show=' + hb_NToS( seconds() - q )

   oWin.ed1.value  := oWin.ed1.value + chr(13)+chr(10) +  c

   RETURN 0

Regards/Saludos, Carlos (bcd12a)
mrduck
Posts: 497
Joined: Fri Sep 10, 2010 5:22 pm

Re: REALLY IMPORTANT: is anyone interested in HMG4 ?

Post by mrduck »

Carlos Britos wrote: I've made a very simple comparation between gui libs, is not the true of the universe, it's just to see some difference between them. Of course to get a real performance of the libs, we need a different test.
Testing the below code the values are in seconds:
average 5 times - loop 100000

Code: Select all

                  hmg4    hmg3   hmgee    oohg
 get value        0.26    4.05    3.10    3.36
 set value        0.34    3.70    9.54   15.69
 set height       0.59    5.40    7.62    6.45
 hide/show        2.52   90.40   87.30  116.50

 hmg4  Harbour + MinGW
 hmg3  Harbour + MinGW
 hmgee Harbour + Bcc
 oohg  xHarbour + Bcc

Interesting indeed !

So, if I understand correctly, IN THIS TESTS, HMG4 is 10 times quicker than HMG3.. !!??

I don't know what hmgee is (extended ? but is it a rewrite ? why this big time difference with standard hmg3 ?). oohg is ?

since you are at it, can you also try marinas-gui ?

PS: I understand that this is a test only and nothing can be said for real time use of the program. Other issues may be important to users...
User avatar
Rathinagiri
Posts: 5480
Joined: Tue Jul 29, 2008 6:30 pm
DBs Used: MariaDB, SQLite, SQLCipher and MySQL
Location: Sivakasi, India
Contact:

Re: REALLY IMPORTANT: is anyone interested in HMG4 ?

Post by Rathinagiri »

Hi

I have attached the Interest(ing) Calculator source after removing calls to hmg3 related hfcl/c pragma.

I have added hmg3(.t.) and -DHMG3 as well.

Can you guide me how to go with porting?
Attachments
Interest.zip
(397.88 KiB) Downloaded 213 times
East or West HMG is the Best.
South or North HMG is worth.
...the possibilities are endless.
User avatar
Rathinagiri
Posts: 5480
Joined: Tue Jul 29, 2008 6:30 pm
DBs Used: MariaDB, SQLite, SQLCipher and MySQL
Location: Sivakasi, India
Contact:

Re: REALLY IMPORTANT: is anyone interested in HMG4 ?

Post by Rathinagiri »

Hi,

In my system the result of the test in HMG3 for 5 times are:

get value 1.92 set value=1.52 set height=2.47 hide/show=4.65
get value 2.01 set value=1.55 set height=2.51 hide/show=3.00
get value 1.90 set value=1.51 set height=2.45 hide/show=3.36
get value 1.91 set value=1.52 set height=2.47 hide/show=3.48
get value 1.97 set value=1.55 set height=2.55 hide/show=3.05

And I could not get the result in HMG4. Your program gets compiled but nothing comes up.
East or West HMG is the Best.
South or North HMG is worth.
...the possibilities are endless.
Post Reply