ReEnabling the GExperts Procedure List (Ctrl +G) #delphi

ReEnabling the GExperts Procedure List (Ctrl +G) #delphi  
http://www.tpersistent.com/?p=1003

Comments

  1. Also Ctrl+Alt+Up/Down and others stop working alot. :(

    ReplyDelete
  2. Stefan Glienke Nice. Is there a way to discover all the shortcuts which are used in the IDE? I'm thinking registry, but I have no idea if they are stored there, or whether the list is built on the fly, at run time....

    Cary Jensen has a list of the basics, but when you add GExperts, CnPack, and MMX, it does get out of hand.

    ReplyDelete
  3. Gunny, I tried to post a comment on your page, but got a strange behavior. Not sure it went through.

    ReplyDelete
  4. Stefan Glienke Yes, same here with XE3. But it never happened with XE5. Bug in the IDE?

    ReplyDelete
  5. Stefan Glienke I have found in D2007 that the IDE navigation is broken if you insert certain elements into a class. For example (legacy code) I found a set of constants in the private section of the form class. The compiler is happy, but the IDE, not so much. Ctrl+Up/Dn works on anything declared above the const; fails below.

    Our move to XE5 still lurks in my (near) future, so I have nothing on that.

    ReplyDelete
  6. Achim Kalwa Just started using XE6 a bit more (still XE at work though). Still trying to be friends with the new IDE Insight -.-

    Bill Meyer I just had that with Delphi 2010 when I added a class surrounded with an IFDEF and it refused to let me switch between declaration and implementation - annoying!

    ReplyDelete
  7. Stefan Glienke I guess all credit on that goes to the ghost of J#?

    And need I add that for the IDE parser to disagree with the actual language compiler is just evil?

    ReplyDelete
  8. Bill Meyer
    To answer your question about discovering all shortcuts, you won't find them in the registry. They are registered at runtime using IOTAKeyBindingServices.AddKeyBinding or IOTAKeyboardServices.AddKeyboardBinding. This usually takes place when an expert is loaded into memory, which can happen at anytime, not just at IDE startup. GExperts uses INTAServices.MainMenu to display and modify shortcuts associated with menu items. This accounts for a good portion of shortcuts in the IDE.

    Unfortunately not all shortcuts are associated with menu items on the main menu. Some are associated with menu items on various popup menus or no menu item at all.  Theoretically the open tools api provides a way to retrieve these shortcuts through IOTAKeyboardServices.LookupKeyBinding and IOTAKeyboardServices.GetNextBindingRec but examples of their use don't exist. All my attempts to test them so far have resulted in access violations.

    ReplyDelete
  9. Kenneth Cochran Thank you for confirming my worst fears. ;) I think we might do well to consider a mapping project, with the goal of producing a spreadsheet with category columns, allowing it to be sorted for different areas of function. Just saying...

    ReplyDelete

Post a Comment