Home End User
New Blog Posts: Merging Reports - Part 1 and Part 2

Calc Tab Menu Help

edited April 2007 in End User
Where do I control which help is displayed when a user is on the calc tab
and they select Help-Help Contents from the menu? Currently it displays
rbuilder.hlp but for end users it really doesn't make sense. We are using
RBP 9.03.

Thanks

Comments

  • edited April 2007
    Hi,

    You can use the TppDesigner.HelpFile property to define which help file you
    would like to use from the end-user designer.

    --
    Regards,

    Nico Cizik
    Digital Metaphors
    http://www.digital-metaphors.com

    Best Regards,

    Nico Cizik
    Digital Metaphors
    http://www.digital-metaphors.com
  • edited April 2007
    Thanks Nico for the response. There's a problem though. Our help files are
    in chm format - if I set the HelpFile, nothing displays. Now that I think
    about it, we ran into this issue when we switched to chm. To resolve the
    issue, I override the assignment of mniHelpContents.OnClick method using my
    own method and call ShellExecute. Unfortunately, I can't seem to find the
    event for the Calc tab's OnClick event. Any idea how to support chm files? I
    know it's not as easy to point directly to the menu item in the designer
    because it may not even be there. Any other ideas?

  • edited May 2007
    Hi,

    Try using the TppDesigner.OnTabChanged event to determine which tab is
    currently selected. Then you can use the Form.MainMenu property to access
    the menu items and customize them any way you need.

    --
    Regards,

    Nico Cizik
    Digital Metaphors
    http://www.digital-metaphors.com

    Best Regards,

    Nico Cizik
    Digital Metaphors
    http://www.digital-metaphors.com
  • edited May 2007
    Nico,

    I'm still having issues with this. I implemented what you wrote and it
    doesn't see it. I believe there is a merge menu going on after the
    OnTabChanged event fires which prevents me from accessing the correct menu
    item.

    Here's some code I quickly put together:

    procedure TVReportController.OnDesignerTabChanged(Sender: TObject);
    var
    vReportDesigner: TppDesignerWindow;
    i: integer;
    vMI1: TMenuItem;
    begin
    vReportDesigner := (Sender as TppDesignerWindow);

    Application.ProcessMessages;

    for i:= 0 to vReportDesigner.ComponentCount-1 do
    begin
    if (vReportDesigner.Components[i] is TMenuItem) then
    begin
    vMI1 := TMenuItem(vReportDesigner.Components[i]);
    if AnsiContainsText(vMI1.Caption, 'Topics') then
    vMI1.Caption := 'I found you';
    end;
    end;
    end;

    It changes the one on the Design and Preview tabs but not the Calc tab.

    Any other ideas?

  • edited May 2007
    Hi,

    Are you certain the code you have below is firing? If so, this may be a
    limitation of RB 9.x. I did some testing with RB 10.06 and verified that it
    is possible to accomplish with that version.

    --
    Regards,

    Nico Cizik
    Digital Metaphors
    http://www.digital-metaphors.com

    Best Regards,

    Nico Cizik
    Digital Metaphors
    http://www.digital-metaphors.com
  • edited May 2007
    Nico,

    It fires but the new Help menu (most likely the one merged on the Calc tab)
    does not update properly. I have a feeling the OnTabChanged event fires
    before the main menu is merged.

    Thanks.


  • edited May 2007
    Hi Steve,

    Yes, this must be what is happening. I do not have older versions of
    ReportBuilder available to test with so I'm unsure if there is a way to work
    around this limitation.

    --
    Regards,

    Nico Cizik
    Digital Metaphors
    http://www.digital-metaphors.com

    Best Regards,

    Nico Cizik
    Digital Metaphors
    http://www.digital-metaphors.com
  • edited May 2007
    Thanks Nico.

This discussion has been closed.