Btw, the following code from some project of mine may be handy in this case
(esp. if Lazarus has option to put shortcut keys in tooltip [hint] for a
menu item - else modify appropriately to get the shortcut key and print its
name too)

Change the LogoPrint to some text dumping function of yours and call
printMenuHelp(yourMainMenu) to print all menu items in a nested way and show
their hint (and shortcut key if you modify it appropriately)

procedure TScriptForm.printMenuItemHelp(const m:TMenuItem;const
depth:integer);
var
 i:integer;
 pad:string;
begin
 if not m.Visible then exit;
 if depth<>0 then
  begin
  pad:=DupeString(' ',depth);
  if depth=1
   then pad:=pad+'* '
   else pad:=pad+'+ ';
   if m.Caption<>'-'
    then LogoPrint(pad+m.Caption+' -- '+m.Hint)
    else LogoPrint(pad+'-'); //menu item is a separator
  end;
 for i:=0 to m.Count-1 do
  begin
  printMenuItemHelp(m.Items[i],depth+1);
  if depth=0 then
   LogoPrint('----------------');
  end;
end;

procedure TScriptForm.printMenuHelp(const m:TMenu);
begin
 printMenuItemHelp(m.Items,0);
end;

procedure TScriptForm.mnuHelpMakeMenuHelpClick(Sender: TObject);
begin
 printMenuHelp(mainMenu1);
end;

----------------
George Birbilis ([EMAIL PROTECTED])
Microsoft MVP J# for 2004-2006
Borland "Spirit of Delphi"
* QuickTime, QTVR, ActiveX, VCL, .NET
http://www.kagi.com/birbilis
* Robotics
http://www.mech.upatras.gr/~Robotics
http://www.mech.upatras.gr/~robgroup


> -----Original Message-----
> From: George Birbilis [mailto:[EMAIL PROTECTED]
> Sent: Saturday, July 22, 2006 4:38 PM
> To: lazarus@miraclec.com
> Subject: RE: [lazarus] Question of feature: code browser
>
> > find implementation has no menu item, because IMO no one
> would use it
> > via the menu.
>
> What do you mean? It should show on the context menu when you
> right click a symbol in the source code editor I believe.
> Isn't Find Declaration showing there at Lazarus? (as done in
> Delphi). Not all people want (or can) use keyboard shortcuts,
> sometimes they're forced to stay away from kbd as much as
> possible for health reasons. Also when you have speech
> control s/w, it usually can read context menus, but can't
> guess keyboard mappings of some app.
>
> > Where should we put the 'Lazarus IDE shortcut reference card'?
>
> It wouldn't hurt, but it should be interactive (that is the
> titles displayed next to the shortcut keys on the reference
> card should be clickable in order to simulate pressing of the
> respective shortcut key combination)
>
> ----------------
> George Birbilis ([EMAIL PROTECTED])
> Microsoft MVP J# for 2004-2006
> Borland "Spirit of Delphi"
> * QuickTime, QTVR, ActiveX, VCL, .NET
> http://www.kagi.com/birbilis
> * Robotics
> http://www.mech.upatras.gr/~Robotics
> http://www.mech.upatras.gr/~robgroup
>
>
>
>
>   _____ 
>
> avast! Antivirus <http://www.avast.com> : Outbound message clean.
>
>
> Virus Database (VPS): 0629-2, 21/07/2006 Tested on: 22/7/2006
> 4:38:21 ??
> avast! - copyright (c) 1988-2006 ALWIL Software.
>
>
>
> _________________________________________________________________
>      To unsubscribe: mail [EMAIL PROTECTED] with
>                 "unsubscribe" as the Subject
>    archives at http://www.lazarus.freepascal.org/mailarchives
> 



  _____  

avast! Antivirus <http://www.avast.com> : Outbound message clean. 


Virus Database (VPS): 0629-2, 21/07/2006
Tested on: 22/7/2006 11:04:09 ??
avast! - copyright (c) 1988-2006 ALWIL Software.



_________________________________________________________________
     To unsubscribe: mail [EMAIL PROTECTED] with
                "unsubscribe" as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives

Reply via email to