Tooltips

This forum is for eXpress++ general support.
Message
Author
edv-rudrich
Posts: 33
Joined: Wed Jan 27, 2010 10:23 pm

Tooltips

#1 Post by edv-rudrich »

Hi

it seems as if there's a problem with the calculation of the tooltip position when having a
dual monitor environment!
If you use a Laptop with a additional second screen plugged in and you move the application
to the external monitor in the 1-2 monitor mode of windows, the tooltips are always shown
at the Laptop Screen -- not where the mouse is at the external screen.

It also looks to me as if there was a problem when resizing dialogs too in such an environment,
because sometimes my app crashes with an error at DC_Resize() sowhere, but I'm still trying to
figure out what is going on exactly!

And:
2-3 times a days I get the following error:

Xbase++ Version : Xbase++ (R) Version 1.90.331
eXPress++ version : eXPress++ (c) Version 1.9.252
Betriebssystem : Windows 06.01 Build 07600
------------------------------------------------------------------------------
oError:args :
-> VALTYPE: N VALUE: 15
oError:canDefault : N
oError:canRetry : N
oError:canSubstitute: J
oError:cargo : NIL
oError:description : Internal datastructures corrupted
oError:filename :
oError:genCode : 41
oError:operation : threadInfo
oError:osCode : 0
oError:severity : 2
oError:subCode : 5
oError:subSystem : BASE
oError:thread : 3
oError:tries : 0

Computername : ST21
Log In Name : HALLI
------------------------------------------------------------------------------
CALLSTACK:
------------------------------------------------------------------------------
Called from JD_MAGICHELP:TESTTOOLTIP(194)
Called from JD_MAGICHELPTHREAD:TESTTOOLTIP(71)
Called from JD_MAGICHELPTHREAD:EXECUTE(44)
Called from (B)JD_MAGICHELPTHREAD:INIT(36)


- Michael

User avatar
rdonnay
Site Admin
Posts: 4729
Joined: Wed Jan 27, 2010 6:58 pm
Location: Boise, Idaho USA
Contact:

Re: Tooltips

#2 Post by rdonnay »

Michael -

I remember putting code in the tooltip system to prevent it from going off the screen because of user complaints.
I had complaints that a tooltip would display partially off the screen if the object were close to the right perimeter of the screen.

So I changed the code to force the tooltip to anchor to the right margin of the screen.
I can confirm that there is a problem with dual monitors. I just tested it.
I will try to find a solution.

Roger
The eXpress train is coming - and it has more cars.

User avatar
rdonnay
Site Admin
Posts: 4729
Joined: Wed Jan 27, 2010 6:58 pm
Location: Boise, Idaho USA
Contact:

Re: Tooltips

#3 Post by rdonnay »

I believe that the Internal Data Structures Corrupted errors have been corrected in build 253.

Give it a try.
The eXpress train is coming - and it has more cars.

User avatar
rdonnay
Site Admin
Posts: 4729
Joined: Wed Jan 27, 2010 6:58 pm
Location: Boise, Idaho USA
Contact:

Re: Tooltips

#4 Post by rdonnay »

This should solve both of your problems.

I tested the tooltips with dual monitors.
Attachments
_dcjdhlp.zip
_DCJDHLP.PRG
(4.55 KiB) Downloaded 828 times
The eXpress train is coming - and it has more cars.

edv-rudrich
Posts: 33
Joined: Wed Jan 27, 2010 10:23 pm

Re: Tooltips

#5 Post by edv-rudrich »

Hi ..
just tried to switch to 253 and get the following error
when I try to close my dialogs
(all created with dcdialog command)

eXPress++ version : eXPress++ (c) Version 1.9.253 b1
Betriebssystem : Windows 06.01 Build 07600
------------------------------------------------------------------------------
oError:args :
-> VALTYPE: U VALUE: NIL
-> VALTYPE: N VALUE: 19
oError:canDefault : N
oError:canRetry : N
oError:canSubstitute: J
oError:cargo : NIL
oError:description : Parameter has wrong type
oError:filename :
oError:genCode : 2
oError:operation : <U of >[<19>]
oError:osCode : 0
oError:severity : 2
oError:subCode : 3
oError:subSystem : BASE
oError:thread : 5
oError:tries : 0
------------------------------------------------------------------------------
CALLSTACK:
------------------------------------------------------------------------------
Aufgerufen von DC_GETLISTOBJECT(3749)
Aufgerufen von DC_GETDESTROY(7625)
Aufgerufen von DISPO_FP(6584)
Aufgerufen von (B)MAINMENU(2964)

Also - copied in the last changes you provided to _dcjdhlp.zip:
No - the tooltip is still not shown on the right position :-(

have to switch back to 252..

too bad, because I have to leave China tomorrow afternoon..

- Michael

edv-rudrich
Posts: 33
Joined: Wed Jan 27, 2010 10:23 pm

Re: Tooltips

#6 Post by edv-rudrich »

Hi Roger

- Tooltips:

I need to do more testings if can switch to 253 without getting the error posted above..

Thks

Michael

User avatar
rdonnay
Site Admin
Posts: 4729
Joined: Wed Jan 27, 2010 6:58 pm
Location: Boise, Idaho USA
Contact:

Re: Tooltips

#7 Post by rdonnay »

Your problem with DC_GetDestroy() is because you are not using the SAVE clause of DCREAD GUI.

I never tested DC_GetDestroy() with an empty GetList and that's why it errored.

The attached _DCGETBX.PRG fixes this problem.

Copy it to your \exp19\source\dclipx directory and run BUILD19.BAT or BUILD19_SL1.BAT to rebuild DCLIPX.DLL.
Attachments
_dcgetbx.zip
_dcgetbx.prg
(77.86 KiB) Downloaded 844 times
The eXpress train is coming - and it has more cars.

edv-rudrich
Posts: 33
Joined: Wed Jan 27, 2010 10:23 pm

Re: Tooltips

#8 Post by edv-rudrich »

Hi..

I will try this.. thanks..

- Michael

edv-rudrich
Posts: 33
Joined: Wed Jan 27, 2010 10:23 pm

Re: Tooltips

#9 Post by edv-rudrich »

Forgot to say:
this code worked for years-- with 252 also..

- Michael

User avatar
rdonnay
Site Admin
Posts: 4729
Joined: Wed Jan 27, 2010 6:58 pm
Location: Boise, Idaho USA
Contact:

Re: Tooltips

#10 Post by rdonnay »

this code worked for years-- with 252 also..
Yes, I understand that, but DC_GetDestroy() was not doing anything in your code if you didn't use the SAVE clause.
With some new code changes in 253, calling DC_GetDestroy() with an empty Getlist caused an error.
The change I gave you fixes this error. This fix will be in build 254.
The eXpress train is coming - and it has more cars.

Post Reply