Build 260

This forum is for eXpress++ general support.
Message
Author
User avatar
rdonnay
Site Admin
Posts: 4813
Joined: Wed Jan 27, 2010 6:58 pm
Location: Boise, Idaho USA
Contact:

Re: Build 260

#11 Post by rdonnay »

It did this. The results are different:
This is strange. I get the same result with 257 and 260.
I will need to look closer at your code to see why it is not painting the RED correctly.
The eXpress train is coming - and it has more cars.

User avatar
Tom
Posts: 1234
Joined: Thu Jan 28, 2010 12:59 am
Location: Berlin, Germany

Re: Build 260

#12 Post by Tom »

I will need to look closer at your code to see why it is not painting the RED correctly.
It's not only that (the colors in the samples are not very good). The rounded box around (grey) is missing, everything should have rounded corners (besides lower left, basing on an error in Xbase++ up to 1.9 SL1, where rounded boxes sometimes do have a not-rounded corner at the lower left side). Seems like clipping does not work. Did you add some GraPathClip stuff somewhere?

Edit: Uh, I know now! You had some GraPathClip in build 257 and I removed it. I'm looking for it. Please wait a second. ;)
Best regards,
Tom

"Did I offend you?"
"No."
"Okay, give me a second chance."

User avatar
Tom
Posts: 1234
Joined: Thu Jan 28, 2010 12:59 am
Location: Berlin, Germany

Re: Build 260

#13 Post by Tom »

Here we go. It's in DC_XpbStatic:Draw(), lines 757 to 760:

Code: Select all

GraPathBegin( oPS )
GraBox( oPS, {4,2}, {::CurrentSize()[1]-4,::CurrentSize()[2]-2} )
GraPathEnd( oPS )
GraPathClip( oPS, .T. )
You added this code with the FORMATTED option for DCSTATICs. It reduces the painting area by 8 pixels in X-direction and 4 in Y-direction. It even influences statics if they don't use the FORMATTED option. I don't know why you did this. Removing this code has no effect (even to FORMATTED labels), but it corrects my problem.
Best regards,
Tom

"Did I offend you?"
"No."
"Okay, give me a second chance."

User avatar
Tom
Posts: 1234
Joined: Thu Jan 28, 2010 12:59 am
Location: Berlin, Germany

Re: Build 260

#14 Post by Tom »

Besides: Fatals and IDSCs are gone with the corrections! Thanks! :)
Best regards,
Tom

"Did I offend you?"
"No."
"Okay, give me a second chance."

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

Re: Build 260

#15 Post by rdonnay »

I don't know why you did this.
I don't know why I did it either but I don't want to change it.
BTW - This code is also in build 257, that's why I see no difference.
I suspect that you removed it in build 257 to fix your problem.

Here is what you need to do. It will insure that the DC_XbpStatic:draw() method does not run any code.

Code: Select all

CLASS BoxWithGradientBackGroundCentered FROM DC_XbpStatic

INLINE METHOD Init(a,b,c,d,e,f,g,h)

::DC_XbpStatic:init(a,b,c,d,e,f,g,h)
::DrawMode := XBP_DRAW_OWNERADVANCED
::Draw := {|o,a|BoxWithGradientBackGroundDraw(o,a,::DC_XbpStatic,.T.)}
::ownerDrawBlock := {||nil}  <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

RETURN self
ENDCLASS

Let me know if there are any more open issues with build 260.
The eXpress train is coming - and it has more cars.

User avatar
Tom
Posts: 1234
Joined: Thu Jan 28, 2010 12:59 am
Location: Berlin, Germany

Re: Build 260

#16 Post by Tom »

Hi, Roger.
I suspect that you removed it in build 257 to fix your problem.
Yes. As I wrote some messages earlier - I removed this code since it even effected statics using the FORMATTED option (what this code was made for, as I guess). I re-removed it in build 260, everything is fine now.
Let me know if there are any more open issues with build 260.
Aye Sir. :icon-ugeek:
Best regards,
Tom

"Did I offend you?"
"No."
"Okay, give me a second chance."

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

Re: Build 260

#17 Post by rdonnay »

I re-removed it in build 260, everything is fine now.
Like I said before, if you add 1 line of code to your custom draw method, it will fix the problem and run faster.

::ownerDrawBlock := {||nil}
The eXpress train is coming - and it has more cars.

User avatar
Tom
Posts: 1234
Joined: Thu Jan 28, 2010 12:59 am
Location: Berlin, Germany

Re: Build 260

#18 Post by Tom »

Hi, Roger.
Like I said before, if you add 1 line of code to your custom draw method, it will fix the problem and run faster.
I noticed that. ;) To be honest, I have some dozend classes using that. And it also effects DCSAY ... FORMATTED, which I do use. Without my change, this one also comes up with cutted textes. Try this:

Code: Select all

FUNCTION Main()
LOCAL GetList := {}
TEXT INTO cInfo WRAP "\n" TRIMMED
\bWarning!\c
Your Application \bWonderfulApp\c is not correctly installed!
Remove it and call \bMicrosoft Inc.\c at +01.0900.0393030.
ENDTEXT

@ 1,1 DCSAY cInfo SIZE 60,6 FORMATTED FONT "12.Tahoma" SAYOPTIONS XBPALIGN_HCENTER+XBPALIGN_VCENTER

DCREAD GUI FIT ADDBUTTONS
RETURN nil
You may notice the text gets cutted at the left and right side.
Best regards,
Tom

"Did I offend you?"
"No."
"Okay, give me a second chance."

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

Re: Build 260

#19 Post by rdonnay »

ok, i'll take it out.
The eXpress train is coming - and it has more cars.

User avatar
Tom
Posts: 1234
Joined: Thu Jan 28, 2010 12:59 am
Location: Berlin, Germany

Re: Build 260

#20 Post by Tom »

Hi, Roger.

A little more feedback:

After I rewrote all the stuff using DCSTATUS-/TOOLBARs, since you corrected alignment, positioning and resizing there, everything seems to work really well (and maybe a little faster?)! I'm going to deliver the first updates using 260 these days. My major hope is that all those fatals are gone. We had tons of them, mostly created in the event loop.

A cosmetic thing still seems to be in there (#1281 in your README). In most of my dialogs, the problem is gone, but if the menu of the dialog has more than X entries (depending on the dialog width), there is still some space added at the top (between the menu and the dialog elements). Since this happens only in one dialog and only under certain circumstances, there is no need for an urgent fix.
Best regards,
Tom

"Did I offend you?"
"No."
"Okay, give me a second chance."

Post Reply