Ready for next version?

HMG Unicode versions 3.1.x related

Moderator: Rathinagiri

User avatar
mustafa
Posts: 842
Joined: Fri Mar 20, 2009 11:38 am
DBs Used: DBF
Location: Alicante - Spain
Been thanked: 121 times
Contact:

Re: Ready for next version?

Post by mustafa » Sat Mar 02, 2019 1:37 pm

Hola colegas :
Cada vez somos menos ... :cry:
Lo que muchos pensamos es lo que indica Theo
Si se unifican las HMG y MiniGUI
Todos saldríamos ganando con el maestro
Grigory Filatov
Saludos
Mustafa
*------------------------ Google --------------------------------*
Hello colleagues :
Every time we are less ... :cry:
What many of us think is what Theo indicates
If the HMG and MiniGUI are unified
We would all win with the Master
Grigory Filatov
regards
Mustafa

User avatar
gfilatov
Posts: 659
Joined: Fri Aug 01, 2008 5:42 am
Location: Ukraine
Has thanked: 24 times
Been thanked: 227 times
Contact:

Post by gfilatov » Sat Mar 02, 2019 4:41 pm

trmpluym wrote:
Sat Mar 02, 2019 12:12 pm
Has somebody experience in the differences ? So what i need to change in the sourcecode to successfully compile the HMG code in MiniGUI ?
Hi Theo,

Thanks for your interest!

Minigui Ex have the special header file i_hmgcompat.ch at the folder minigui\include for HMG compatibility.

You've found here the needed wrappers for a migration your HMG code to Minigui. :arrow:

If you didn't used the deeper HMG features when it may be enough for your conversion...

In hope that useful. :idea:
Kind Regards,
Grigory Filatov

"Everything should be made as simple as possible, but no simpler." Albert Einstein

User avatar
Anand
Posts: 417
Joined: Tue May 24, 2016 4:36 pm
DBs Used: DBF
Has thanked: 112 times
Been thanked: 60 times

Post by Anand » Sat Mar 02, 2019 4:55 pm

Ahh..I did not knew about i_hmgcompat.ch, when I made two version of my report class.
This sure will help us a lot, to quickly migrate Hmg codes, though I have lately doing all my codes in Minigui Ex.

Regards,

Anand
Image

trmpluym
Posts: 246
Joined: Tue Jul 15, 2014 6:52 pm
Location: The Netherlands
Has thanked: 6 times
Been thanked: 22 times

Post by trmpluym » Sat Mar 02, 2019 8:31 pm

Hi Grigory,

Thanks for your quick response, i appreciate it !
Minigui Ex have the special header file i_hmgcompat.ch at the folder minigui\include for HMG compatibility.
You've found here the needed wrappers for a migration your HMG code to Minigui. :arrow:
If you didn't used the deeper HMG features when it may be enough for your conversion...
I just made a start :D

The first thing a bumped in to is the 'WINDOW' function. I often use:

CENTER WINDOW <FormName> IN <FormName2>

This syntax is not recognized in MiniGUI.

CENTER WINDOW <WindowName>

Is it possible to add this ? Or how do i rewrite my code to achieve the same functionality (center a Window in another Window)?

Theo

User avatar
gfilatov
Posts: 659
Joined: Fri Aug 01, 2008 5:42 am
Location: Ukraine
Has thanked: 24 times
Been thanked: 227 times
Contact:

Post by gfilatov » Sun Mar 03, 2019 7:44 am

trmpluym wrote:
Sat Mar 02, 2019 8:31 pm
...
Is it possible to add this ? Or how do i rewrite my code to achieve the same functionality (center a Window in another Window)?
Hi Theo,

Yes, it is possible in Minigui with the following global command
SET CENTERWINDOW RELATIVE [DESKTOP | PARENT]
which should be placed before your window's definition.

BTW There are the following Windows related commands now
SET WINDOW MAIN [ON | OFF]

SET CENTERWINDOW RELATIVE [DESKTOP | PARENT]

[SET | GET] WINDOWPROPERTY <name> ;
[ OF <parent> ] ;
VALUE <value> ;
[ <direct: DIRECT> ]

RELEASE WINDOWPROPERTY <name> ;
[ OF <parent> ] ;
[ VALUE <value> ] ;
[ NOFREE ]

RESET MINMAXINFO [OF | WINDOW] <FormName> TO DEFAULT

SET AUTOSCROLL [ON | OFF]

SET SCROLLSTEP TO <step>
SET SCROLLPAGE TO <step>

FLASH WINDOW <FormName> [ CAPTION | TASKBAR | ALL ] COUNT <nTimes> INTERVAL <nMilliseconds>

ANIMATE WINDOW <FormName> [ INTERVAL <nMilliseconds> ] MODE <nFlags>

SET DIALOGBOX [ POSITION ] ROW <nRow> COL <nCol>
SET DIALOGBOX [ POSITION ] CENTER OF [PARENT | <hWnd> | DESKTOP]
SET DIALOGBOX [ POSITION ] DISABLE

DISABLE [ WINDOW ] EVENT OF <FormName>
ENABLE [ WINDOW ] EVENT OF <FormName>

ON APPEVENT [ID] <nId> ACTION <bAction> OF <window> [NOACTIVE] [ONCE] [RESULT] TO <lResult>
EMIT [EVENT] [ID] <nId> OF <window>
REMOVE APPEVENT [[ID] [<nId>] | ALL] OF <window> [ONCE] [RESULT] TO <lResult>
UPDATE APPEVENT [ID] <nId> [ACTION <bAction>] OF <window> [NOACTIVE] [ONCE] [RESULT] TO <lResult>

ON WINEVENT [ID] <nId> ACTION <bAction> OF <window> [NOACTIVE] [ONCE] [RESULT] TO <lResult>
REMOVE WINEVENT [[ID] [<nId>] | ALL] OF <window> [ONCE] [RESULT] TO <lResult>
UPDATE WINEVENT [ID] <nId> [ACTION <bAction>] OF <window> [NOACTIVE] [ONCE] [RESULT] TO <lResult>
Hope that helps. :idea:
Kind Regards,
Grigory Filatov

"Everything should be made as simple as possible, but no simpler." Albert Einstein

trmpluym
Posts: 246
Joined: Tue Jul 15, 2014 6:52 pm
Location: The Netherlands
Has thanked: 6 times
Been thanked: 22 times

Post by trmpluym » Sun Mar 03, 2019 9:19 am

Grigory,
Hope that helps.
For shure !!

In HMG i was using:

Code: Select all

cParentWindowName:=ThisWindow.Name   
.
.
CENTER WINDOW Windowname in &cParentWindowName
So the MiniGui syntax does just this, but even more elegant !

I also found another little difference:

HMG uses:

Code: Select all

<WindowName>.NoSysMenu := .T.
In MiniGui it should be:

Code: Select all

<WindowName>.SysMenu := .F.


Thanks Grigory !

trmpluym
Posts: 246
Joined: Tue Jul 15, 2014 6:52 pm
Location: The Netherlands
Has thanked: 6 times
Been thanked: 22 times

Post by trmpluym » Sun Mar 03, 2019 10:53 am

Hi Grigory,

I am sorry to bother you again :oops: . In my program I use a modified version of the HMG WordScribe sample:

c:\hmg.3.4.4\SAMPLES\HFCL\WordScribe

In this code there seem to be some functions used not available in MiniGui, like:

.FONTSCRIPT
.LINK
.PARAALIGNMENT
Etc..

They are described over here:

http://www.hmgforum.com/hmgdoc/data/richeditbox.htm

Is there a way to include them ? Or is there another way to achieve the same functionality ?

Thanks in advance !

Theo

User avatar
gfilatov
Posts: 659
Joined: Fri Aug 01, 2008 5:42 am
Location: Ukraine
Has thanked: 24 times
Been thanked: 227 times
Contact:

Post by gfilatov » Sun Mar 03, 2019 4:09 pm

trmpluym wrote:
Sun Mar 03, 2019 10:53 am
They are described over here:

http://www.hmgforum.com/hmgdoc/data/richeditbox.htm

Is there a way to include them ? Or is there another way to achieve the same functionality ?

Thanks in advance !
Hi Theo,

You are correct: there are not the above features in the Minigui core.

But there is an other way with using of the samples code at the folders
minigui\samples\Advanced\RichEditEx and
minigui\samples\Advanced\RichEditEx_2.

Please be so kind to review (and adapt to your need) the file l_richeditbox.prg at the above folders.

It will require a some effort, of course. 8-)
Kind Regards,
Grigory Filatov

"Everything should be made as simple as possible, but no simpler." Albert Einstein

trmpluym
Posts: 246
Joined: Tue Jul 15, 2014 6:52 pm
Location: The Netherlands
Has thanked: 6 times
Been thanked: 22 times

Post by trmpluym » Sun Mar 03, 2019 5:33 pm

Hi Grigory,

Thanks again for your response again !
But there is an other way with using of the samples code at the folders
minigui\samples\Advanced\RichEditEx and
minigui\samples\Advanced\RichEditEx_2.
I studied the samples earlier, but i could not find for example the superscript, align and link etc. functionality in those samples.
It will require a some effort, of course.
The effort is no problem. I am aware it is gone take some time to adapt my sources to migrate them form HMG to MiniGui. But I have really no clue to add (for example) the superscript function in the RICHEDITBOX control.

But I know, I am a little bit spoiled :D : all the functionality I used before in HMG is implemented in MiniGui too (many times even in a more advanced way) :!:
This is the first time I bumped into HMG features not implemented in MiniGui. So for now I will remove the functionality from my sources.

But maybe when the time is right (certainly no hurry!) I humbly like suggest a feature request to implement the additional RICHEDITBOX HMG features into al future release of MiniGui.

Theo

User avatar
gfilatov
Posts: 659
Joined: Fri Aug 01, 2008 5:42 am
Location: Ukraine
Has thanked: 24 times
Been thanked: 227 times
Contact:

Post by gfilatov » Sun Mar 03, 2019 6:39 pm

Hi Theo,

Thanks for your kind words!

A very long time ago Isaac Newton said,
"If I have been able to see further, it was only because I stood on the shoulders of giants."

The such giants in Minigui are Roberto Lopez and Claudio Soto. 8-)
Kind Regards,
Grigory Filatov

"Everything should be made as simple as possible, but no simpler." Albert Einstein

Post Reply