Page 1 of 1

How to code TScrDlg() for use in folder?

PostPosted: Fri Nov 25, 2022 4:26 am
by hua
Hi,
All samples I've looked at place calls to TScrDlg() at a dialog's ON INIT.
How should it be coded for use in a Folder/FolderEx?

TIA

Re: How to code TScrDlg() for use in folder?

PostPosted: Fri Nov 25, 2022 8:38 am
by hua
Tried
Code: Select all  Expand view
     
::oFolder:aDialogs[1]:bInit := {||  oScrDlg := TScrDlg():New(::oFolder:aDialogs[1],0,270,0,70) }                                           
 


Why :bInit is not evaluated?

Re: How to code TScrDlg() for use in folder?

PostPosted: Fri Nov 25, 2022 9:37 am
by hua
What's better between TScrDlg() and TScrollPanel?

Re: How to code TScrDlg() for use in folder?

PostPosted: Fri Nov 25, 2022 10:21 am
by hua
Resolved.
Code: Select all  Expand view
ACTIVATE DIALOG oDlg ON INIT MakeScroll(oFolder)

PROC MakeScroll(oFolder)
  local oScrDlg
  oScrDlg := TScrDlg():New(oFolder:aDialogs[1],0,SCROLL_RANGE,0,70)
  oFolder:aDialogs[1]:bMouseWheel := { | nKey, nDelta, nXPos, nYPos | MouseWheel( nKey, nDelta, nXPos, nYPos, oScrDlg ) }
RETURN
 

Re: How to code TScrDlg() for use in folder?

PostPosted: Fri Nov 25, 2022 12:10 pm
by Antonio Linares
very good! :-)

many thanks for sharing it!

Re: How to code TScrDlg() for use in folder?

PostPosted: Wed Nov 30, 2022 7:04 am
by hua
When I added up to 10 RTF controls within the same page on the TFolderEx,
the screen painting starts to become weird and folder names got painted where it shouldn't exist.

How to fix this?

Image

Re: How to code TScrDlg() for use in folder?

PostPosted: Wed Nov 30, 2022 9:39 am
by Antonio Linares
Dear Hua,

Could you please provide us your PRG example to test it here ?

many thanks

Re: How to code TScrDlg() for use in folder?

PostPosted: Thu Dec 01, 2022 10:11 am
by hua
Hi Antonio,
I created a self-contained sample. It can be downloaded from here https://drive.google.com/file/d/1aBL3nn ... share_link
The paths in the .mak file would need to be updated first though

TIA

Re: How to code TScrDlg() for use in folder?

PostPosted: Thu Dec 01, 2022 12:06 pm
by Antonio Linares
Dear Hua,

I have been able to build you example and see wht you mean

Please try to reduce the height used by TScrDlg()

Re: How to code TScrDlg() for use in folder?

PostPosted: Fri Dec 02, 2022 9:40 am
by hua
No joy.

Antonio Linares wrote:Please try to reduce the height used by TScrDlg()


I reduced the controls from 10 to 7 sets. Seems painting issue is consistent.
There will be extra bits painted near the 5th, 7th and 10th TTitle

Image

Re: How to code TScrDlg() for use in folder?

PostPosted: Fri Dec 02, 2022 10:21 am
by Antonio Linares
Please try to reduce the height of TScrDlg(), let the controls as they are

Re: How to code TScrDlg() for use in folder?

PostPosted: Thu Dec 15, 2022 9:26 am
by hua
Workaround the issue by not using Shadow
Code: Select all  Expand view
 REDEFINE TITLE oTitle ID 123 of oDlg SHADOW NOSHADOW
 


hua wrote:No joy.

Antonio Linares wrote:Please try to reduce the height used by TScrDlg()


I reduced the controls from 10 to 7 sets. Seems painting issue is consistent.
There will be extra bits painted near the 5th, 7th and 10th TTitle

Re: How to code TScrDlg() for use in folder?

PostPosted: Thu Dec 15, 2022 10:32 am
by Antonio Linares
very good :-)