Page 1 of 1
The neatest way to remove email button from TPreview
Posted: Mon Apr 29, 2019 5:02 am
by hua
Hi,
While testing FWH19.03+Bcc7.3+Harbour, I found out if I click the email button at print preview it will cause my exe to silently terminate.
Is there a neat way for me to remove this button without having to customized rpreview.prg for all of my reports?
TIA
Re: The neatest way to remove email button from TPreview
Posted: Mon Apr 29, 2019 10:01 am
by nageswaragunupudi
We can not remove the button without altering the program.
But it is possible to assign a dummy action or an alternative action to this button which may serve your purpose.
At the outset of your main function
Code: Select all
Tpreview():bEMail := { || MsgInfo( "not implemented" ) }
or
Code: Select all
Tpreview():bEMail := { || nil ) }
This should solve your problem.
Re: The neatest way to remove email button from TPreview
Posted: Mon Apr 29, 2019 10:10 am
by hua
Thanks Rao.
I guess I'll have to go with customizing rpreview.prg route as customers are bound to complain if something is there but they can't use it.
Hope inf future rpreview will be enhanced so that programmer can pick what button is to be shown.
Maybe by passing TPreview():aBtnsShow := {.t., .t., .f. ......} or something similar
Re: The neatest way to remove email button from TPreview
Posted: Mon Apr 29, 2019 10:23 am
by nageswaragunupudi
1) None of us have seen a program crash by pressing email button. We are hearing this for the first time in all these years.
2) You have a far better option. You can define your own buttonbar instead of the default buttonbar.
TPreview():bButtonBar := { |oPreview, oWnd| YourButtonBar( oPreview, oWnd ) }
Highest flexibility to customize.
Re: The neatest way to remove email button from TPreview
Posted: Mon Apr 29, 2019 4:14 pm
by nageswaragunupudi
New CLASSDATA bSetup is provided in class Tpreview in FWH 1904.
Code: Select all
RPrevUserBtns( nil, 2007 )
TPreview():bSetup := <|oPreview, oWnd|
WITH OBJECT oWnd:oBar
:aControls[ 10 ]:End()
ADel( :aControls, 10, .t. )
:BtnAdjust()
END
return nil
>
This removes the Email button from the bar.
Re: The neatest way to remove email button from TPreview
Posted: Tue Apr 30, 2019 2:53 am
by hua
nageswaragunupudi wrote:1) None of us have seen a program crash by pressing email button. We are hearing this for the first time in all these years.
Yeah. Could be something in my development environment that's causing it. Unable to pinpoint the cause so far
nageswaragunupudi wrote:New CLASSDATA bSetup is provided in class Tpreview in FWH 1904.
Code: Select all
RPrevUserBtns( nil, 2007 )
TPreview():bSetup := <|oPreview, oWnd|
WITH OBJECT oWnd:oBar
:aControls[ 10 ]:End()
ADel( :aControls, 10, .t. )
:BtnAdjust()
END
return nil
>
Cool! Way-way neater than what I had in mind. Thanks a bunch Rao
Where do I place the code? At every report or just need to call them once from the main prg?
Re: The neatest way to remove email button from TPreview
Posted: Tue Apr 30, 2019 3:38 am
by nageswaragunupudi
Where do I place the code? At every report or just need to call them once from the main prg?
Call it once in the main program.
You can also make any other changes you consider appropriate.
Note: This is from FWH1904 to be released soon.