Forum for GExperts

Since Google is shutting down Google+ and the Yahoo mailing list does no longer accept my emails, I have been looking for an alternative which will hopefully be available for a bit longer this time.

There is now a GExperts sub forum in the brand new English Speaking Delphi Praxis forum. Everybody is invited to sign up and participate.

Please note that my preferred way for getting bug reports and feature requests is still a ticket on SourceForge.

Here is the current content of the forum’s RSS feed

  • Problem indent with inline var inside try/finally
    on 2023-11-24 at 10:33

    try    var a := 2;    test(a); finally end;   becomes : try var a:=2;    test(a); finally end;   I don't know if this is the right method: after adding 2 lines in 'GX_CodeFormatterFormatter.pas' at line 1633 -------------------------------------------------------------------------              end else if (FPrevToken.GetExpression(exp) and SameText(exp, 'for')) then begin                // for with inline var declaration              end else if (fStack.GetTopType = rtTry) then begin                // inline var declaration inside Try/finally block              end else begin --------------------------------------------------------------------------- everything becomes good with the right indentation inside Try/Finally.  

  • Source Format of a Unit not working.
    on 2023-11-14 at 09:19

    Hi Team, D11.3, latest GE. Is it just me or does the GE Source Formatter, Ctl-Alt-F, not work on Units without Forms??   Regards, Ian

  • Error on Build of rev 4096 in D12.
    on 2023-11-14 at 00:00

    ..\..\images\GXIcons.rc : error : Error Could not open input file D:\GExperts\Projects\DelphiXx120\My.RC [D:\GExperts\Projects\DelphiXx120\GExpertsRS120.dproj] Done Building Project "D:\GExperts\Projects\DelphiXx120\GExpertsRS120.dproj" (rebuild target(s)) -- FAILED. Build FAILED. "D:\GExperts\Projects\DelphiXx120\GExpertsRS120.dproj" (rebuild target) (1) -> (BrccCompile target) ->   ..\..\images\GXIcons.rc : error : Error Could not open input file D:\GExperts\Projects\DelphiXx120\My.RC [D:\GExperts\Projects\DelphiXx120\GExpertsRS120.dproj]     0 Warning(s)     1 Error(s)

  • Set Component Properties - Preventing "Opening file" window
    on 2023-11-12 at 22:04

    Does anyone know if it is possible to prevent RAD Studio from showing the "Opening file" popup window? I am specifically interested in preventing it from appearing when GExpert's Set Component Properties occurs before/during compile.   Thanks

  • Format function params
    on 2023-11-10 at 11:56

    Hi, Embarcadero will probably no more support the .net formatter, so the GExperts one is the best on the market. I am studying it and looks very good, with some small lacks.   Method params Is it possible for the formatter to format method parameters one per line? The Delphi default formatter can do this. Example: // not formatted procedure myproc(const a: string; b: integer); // formatted one per line procedure myproc( const a: string; b: integer); Blank lines Is it possible to remove these lines? // not formatted procedure myproc(const a: string; b: integer) var a: integer; begin end; // formatted, the blank line remains procedure myproc(const a: string; b: integer) !!! <---- var a: integer; begin end;   Thanks   (more to come... )

  • Copy D11 GE settings to D12 GE?
    on 2023-11-08 at 04:26

    Is this possible?   Regards & TIA, Ian

  • GExperts 1.3.23 Alpha for Delphi 12
    on 2023-11-07 at 17:56

    Thanks mostly to the work  @Achim Kalwa put into the preparations I have now built an installer for GExperts 1.3.23 Alpha for Delphi 12. Note the word “Alpha” in the release name. Basically I installed Delphi 12, fixed some problems with the build scripts and compiled Achim’s new project. Then I added the Delphi 12 version to the installer script and built it. Oh yes, I also installed the DLL in Delphi 12 and started the IDE a few times. That’s about all the testing from my end that went into this alpha release. ...   Read on in the blog post

  • Testers needed for GExperts Instant Grep expert
    on 2023-10-08 at 16:30

    I wrote about the Instant Grep expert before when I was looking for a name for it. Now it's nearly finished and I need testers for it. Simply get the GExperts sources, compile a new DLL and replace the original DLL with the new one.   Instant Grep is in the menu (not sure yet whether it should be moved under the Grep submenu). You can assign a keyboard shortcut to it if you like. It opens a new (dockable) window which greps the current edtior file as you type a regular expression and gives you a list of matches. You can use the cursor keys (up/down/pageup/pagedown) to move to the lines it found, press Esc to go back to where you started, or Enter to activate the editor window.   The Window reacts when you switch to a different editor tab by searching that new file (only Delphi 2007 and higher).   Warning: I have been using the expert all day (in Delphi 10.2 and 2007) and found many bugs and annoyances, but I think I found and fixed most of them by now. But still: Installing a new GExperts DLL might make your IDE unstable and even crash it.

  • How to detect when a Form is active in Designer
    on 2023-10-04 at 23:09

    How to detect when a Form is active in Designer     Guys, I'm posting here because in this area I know that you are the experts in OTA    I posted this topic in another area of the forum    When searching I found this link    However, it does not have an example explaining how to register  only that:  IOTAModule.GetModuleFileEditor(0).AddNotifier TMyFormNotifier = class(TNotifierObject, IOTANotifier, IOTAFormNotifier) protected procedure FormActivated; procedure FormSaving; procedure ComponentRenamed(ComponentHandle: TOTAHandle; const OldName, NewName: string); end;    I want to detect when the forms are opened and check if the Menu  EditLockControlsItem  it is activated and if it is activated I deactivate it and activate it again so I don't have to keep every form I open performing this action.

  • To turn off the error warning
    on 2023-09-28 at 08:24

    I installed GXRS11_1.3.22_experimental-twm_2023-03-25. Just because of the size and position of the IDE windows. I would like to turn off the error warning. It reads very badly to me. For me the classic message is quite sufficient. I haven't found it anywhere. Thanks.

  • Is there a way for the formatter to do this?
    on 2023-09-24 at 22:22

      Delphi's native formatter can't do this type of formatting, can Gexpert do it ?   Example breaks with 32   If Table1.fieldbyName('campo').Asstring = varcampo then   With the formatting it looks like this   If Table1.fieldbyName('campo'). Asstring = varcampo then   But I would like training to stay like this I would only break when there is a space   If Table1.fieldbyName('campo').Asstring = varcampo then

  • Why are some tools not in Gexpert ?
    on 2023-09-23 at 20:42

    There are several good tools missing from Gexpert that you could put as an example  

  • Remove items from the TMainMenu or move menuitem
    on 2023-09-23 at 00:05

    I don't know if it would be too much to ask, Gexpert could have a feature to remove items from the menu or even move items to other places

  • shortcut keys prev/next identifier reference
    on 2023-09-08 at 09:17

    I don't think this is a gexperts problem, but this might be the best place to look for info.   Since upgrading to 11, the shortcut keys to previous and next identifier reference (ctrl alt up and ctrl alt down) keep breaking. When I look in the configuration, they're still there and when I reset them (as in, set them again), they work again, after a reboot it's broken again.   Anyone a tip how to solve this?

  • New Grep Expert in GExperts - need a name
    on 2023-08-19 at 14:12

    I have just finished the first (sort of) working version of a new Grep Expert in GExperts. My working title for it is "Fast Grep", but I don't really like that. Perhaps you can suggest a better name?   It does the following: It opens a new (dockable) window in which you can enter a regular expression. As you type (with a short delay after the last keystroke), it runs the RegEx on the current editor window. It then displays a list of all matches in the window, giving the filename, line number and some context (I took this code from the Bookmarks Expert). You can then use the up/down arrow keys to scroll through these matches. While you do that the cursor in the editor window will move to the row/column of the currently selected entry. Pressing Enter closes the Fast Grep window and your cursor will end up at the selected match position. Pressing Esc will also close the Fast Grep window and move the cursor back to where it was when you started Fast Grep.   The current source code in svn already contains this functionality, just in case you want to check it out. Beware that this is a work in progress and pretty much untested!

  • GREP menu and shortcut misery
    on 2023-08-17 at 18:21

    I love Grep , Use it countless times per day. But recently the GExperts menu has the two Grep options (Search & Results) as submenus and this is a pain; because my shortcut Ctrl+Shift+S now popups out a submenu against the PAS form and I have to use the Mouse to select from "Grep Search" and Grep Results. Can it go back to the way it was so that my keyboard shortcut just pops up the Search. Oddly the Results form/view works directly with a shortcut. Thanks, Paul

  • Compile fails (due to path length?)
    on 2023-06-01 at 08:18

    BrccCompile fails with ..\..\images\GXIcons.rc : error : Error Could not open input file C:\RAD_Lib\GExperts\Projects\DelphiXx110Alexandria\FN C.RC   This is misleading error, because there is no FNC.RC. Is there a limitation for the -ic<path> with BrccCompile? My path is quite long and this is the only explanation I find, why thos error could occur. Any idea, how I can work around this?   Or am I missing something?   Thanks fpr every hint!

  • Formatter doesn't work in a Unit??
    on 2023-04-29 at 20:37

    Is there a reason the formatter, CTRL-ALT-F, doesn't seem to work in a Unit without any Form? Or is it a Bug?   Ian

  • GExperts Favorites as WP-Plugin
    on 2023-04-25 at 14:19

    I'm currently experimenting with the ToolsAPI.WelcomePage API a bit and created a plugin for the GExperts favorites.     My current work is a bit hacky, therefore there is currently no patch or something.   I include the ToolsAPI.WelcomePage unit in the GX_FavFiles and have a separate type for the plugin there: TGXWelcomePagePlugin = class(TInterfacedObject, INTAWelcomePagePlugin, INTAWelcomePageContentPluginCreator) private FIconIndex: Integer; FView: TFrame; FFavoriteFilesExpert: TFavoriteFilesExpert; public constructor Create(const AFavoriteFilesExpert: TFavoriteFilesExpert); destructor Destroy; override; { INTAWelcomePagePlugin } function GetPluginID: string; function GetPluginName: string; function GetPluginVisible: Boolean; { INTAWelcomePageContentPluginCreator } function GetView: TFrame; function CreateView: TFrame; procedure DestroyView; function GetIcon: TGraphicArray; function GetIconIndex: Integer; procedure SetIconIndex(const Value: Integer); end; The AfterIDEInitialized procedure calls the creation of the plugin via the RegisterWelcomePage method. This does not work on first try, so there is a timer to catch the moment the WelcomePagePluginService is finally availabe. If anyone knows of a different way to register the plugin, please let me know! A dedicated, global "Register" procedure as used for BPL-Plugins didn't work. procedure TFavoriteFilesExpert.RegisterWelcomePage(Sender: TObject); begin // The WelcomePagePluginService might not be initialized the first time we get here, // so try again at a later time. if not Assigned(WelcomePagePluginService) then begin if (not Assigned(FPluginTimer)) then begin FPluginTimer := TTimer.Create(nil); FPluginTimer.OnTimer := RegisterWelcomePage; FPluginTimer.Interval := 2000; end; FPluginTimer.Enabled := True; end else begin FPluginTimer.Enabled := […]

  • GExperts 1.3.22 experimental twm 2023-03-25 released
    on 2023-03-25 at 14:43

    The new GExperts version still supports all Delphi versions back to Delphi 6 (with the notable exception of Delphi 8 ) and even the Delphi 11 version is no longer in Beta state.   There are even a few new features: * Fast add mode for the Uses Clause Manager is back. * Uses Clause Manager: Units “System” and “SysInit” and those already in the uses list are marked with strike through font. * New functionality to import the favourites from the Wuppdi Welcome Page * Form Hotkeys expert now allows assigning hotkeys. * For the Edit Path expert one can now select the default platform / configuration to edit * Grep no longer stops when it encounters an error (e.g. a file cannot be found or opened). * A non feature: The Goto Previous/Next Modifications editor experts were removed because they caused more trouble than they were worth.   Several of those were contributed by GExperts users. Thanks a lot guys (and one girl). And of course a few bug fixes.   Read on in the blog post