All known Generics bugs fixed in GExperts code formatter

 Delphi, GExperts  Comments Off on All known Generics bugs fixed in GExperts code formatter
Sep 282022
 

I have just finished fixing all known bugs in the GExperts code formatter that were related to Generics. On top of that I fixed a few others.

I am sure there are still more though, but because I rarely use Generics I haven’t seen them yet. So I need your help: If you have a lot of source code with Generics, please compile a new DLL and try the formatter on that code. Report any bugs on SourceForge.

 Posted by on 2022-09-28 at 18:46

Change order of experts in GExperts Expert Manager

 Delphi, GExperts  Comments Off on Change order of experts in GExperts Expert Manager
Sep 282022
 

Prompted by a post on Delphi Praxis, I just added a new feature to the Expert Manager expert in GExperts (lots of experts here 😉 ): It can now change the order in which the experts are loaded into the IDE.

This may be important e.g. if you are using Andreas Hausladen’s Delphi Speed Up or IDE Fix Pack as those should be loaded before any other plugins.

Note that in order to these changes to have any effect, you need to save them! That’s no longer done automatically.

As there is no new release of GExperts yet, you need to compile your own DLL to get this feature.

Discussion about this post in the international Delphi Praxis forum.

 Posted by on 2022-09-28 at 11:11

GExpertsInst is not a valid reference

 Delphi, GExperts  Comments Off on GExpertsInst is not a valid reference
Apr 152022
 

Starting with GExperts 1.3.20 calling the standalone Experts Manager displayed the error message “GExpertsInst is not a valid reference”. After that the tool actually works fine.

This bug has now been fixed in the current source code. I don’t think this minor inconvenience justifies a new release.

 Posted by on 2022-04-15 at 11:52

GExperts 1.3.21 experimental twm 2022-04-09 released

 Delphi, GExperts  Comments Off on GExperts 1.3.21 experimental twm 2022-04-09 released
Apr 092022
 

You may remember that I was forced to reduce GExperts support for Delphi 6 a while ago, because the IDE no longer started on my computer. It turns out that it was a GExperts bug after all.

The fix was simple once I knew what the problem was. And I only found out because carrchri, one of the few GExperts for Delphi 6 users, debugged it and told me. Thanks a lot!

When I was able to use the Delphi 6 IDE again I also fixed incompatibilities in the DFMs that prevented some of the dialogs open in Delphi 6.

So here is a new release. Apart from these two Delphi 6 related bug fixes there are some improvements to the code formatter also submitted by users:

Achim Kalwa again also submitted some patches for fixing bugs.

On top of that various High DPI display problems with Delphi 11 as well as a long standing display problem for owner drawn string grids (e.g. in the Uses Clause Manager) have been fixed.

The new GExperts version still supports all Delphi versions back to Delphi 6 (with the notable exception of Delphi 8).

As always: Report and any bugs you find (or contribute bug fixes) and also file feature requests or maybe even contribute implementations for these features.

It might take a while but I am always looking at those tickets when I find the time.

Head over to the GExperts download page to get it.

Discussion about this post in the international Delphi Praxis forum.

 Posted by on 2022-04-09 at 15:14

Duplicate entries in the identifier list of the GExperts Uses Clause Manager

 Delphi, GExperts  Comments Off on Duplicate entries in the identifier list of the GExperts Uses Clause Manager
Mar 192022
 

A long time ago I added the Identifier tab to the Uses Clause Manager in GExperts. It looks like this:

In this screen shot, I filtered for TWinControl and the expert found several matching entries, the two top ones in the unit Controls.

While this looks like a bug at first (indeed I have received a bug report for it) it is in fact a feature. There are actually two declarations of TWinControl in the unit Controls. The first is in line 212, which is a forward declaration like this:

type
  TWinControl = class;

The other is in line 1243, which is the actual declaration of the class:

  TWinControl = class(TControl)
    // class declaration goes here
  end;


(Both line numbers are from Delphi 2007, they will vary in other Delphi versions.)

The expert lists them both and when the user clicks the “Open Unit” button (or presses Ctrl+O), it will then open that unit and place the cursor in the line of the declaration.

One word to the person who reported that bug: Please do not be offended that I blogged about it not being an actual bug but a feature. It is not meant to shame you. On the contrary, I am grateful that I receive good bug reports like this one. Please keep them coming!

If you’d like to discuss this blog post, you can do so in the corresponding post in the international DelphiPraxis forum.

 Posted by on 2022-03-19 at 15:31

GExperts 1.3.20 experimental twm 2022-01-30 released

 Delphi, GExperts  Comments Off on GExperts 1.3.20 experimental twm 2022-01-30 released
Jan 302022
 

COVID-19 is still going strong, even 2 years after it was first discovered. We’re on the Omicron variant now and nobody knows what new variants the near future may bring. I got my vaccination jabs in 2021-06-08 (AstraZeneca), 2021-07-17 (Biontech/Pfizer) and a booster 2021-12-09 (Moderna). As you can see, I survived all of them for at least a month 😉 Side effects were limited to some mild headache that lasted for about 24 hours.

On the bright side: I have been working from home basically through the whole pandemic and I like it (my wife does too). I even managed not to put on too much weight, but using an exercise bike for 30 to 45 minutes a day takes much more effort than simply cycling to work and back. And I miss flying to the south on vacation.

But I digress:

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 Alpha state (but it’s still beta, there will be glitches!). Support for per monitor DPI awareness should now work (in Delphi 11, and definitely better than in the IDE itself).

There are even a few new features:

And of course a few bug fixes.

As always: Report and any bugs you find (or contribute bug fixes) and also file feature requests or maybe even contribute implementations for these features.

Head over to the GExperts download page to get it.

Discussion about this post in the international Delphi Praxis forum.

 Posted by on 2022-01-30 at 17:46

Per monitor DPI aware stand alone GExperts Grep

 Delphi, GExperts  Comments Off on Per monitor DPI aware stand alone GExperts Grep
Jan 152022
 

I have just finished making the stand alone GExperts Grep to really be stand alone, that is: It no longer needs the GExperts DLL but contains all the functionality in one executable. It has also been compiled with Delphi 11 Alexandria so it should be per monitor DPI aware.

Another feature is the ability to integrate itself into the Windows Explorer popup menu. Simply open the Options on the Grep Search dialog.

And set the appropriate check marks.

The first one adds an entry to the context menu of the tree view on the Windows Explorer’s left hand side tree view …

… and to the context menu of the background of the right hand side panel.

The second one adds an entry to the context menu of folder entries of the right hand side panel.

You can download it here.

This release is part of the preparation for the GExperts 1.3.20 release which I plan to do within a few weeks. It will still be a Beta for Delphi 11 (but hey: No longer Alpha) but a regular release for all other Delphi versions.

If you find any bugs, please report them!

Discussion about this post in the international Delphi Praxis forum.

 Posted by on 2022-01-15 at 16:48

Drag and Drop from the GExperts Grep Results

 Delphi, GExperts  Comments Off on Drag and Drop from the GExperts Grep Results
Dec 312021
 

Another episode from the series “GExperts features that I didn’t know about”:

It’s possible to drag an entry from the GExperts Grep to any other Windows program, e.g. to the Explorer, which will copy that file to the directory it was dragged to, or to an editor which will open that file.

I just now found out about this because I wondered why it was using Anders Melander’s DropSource unit (version 3.6 from 1999, maybe I should have a look if an update is possible).

Btw: I’m about to make the stand alone Grep tool a real stand alone executable that does not require the GExperts DLL (and its package dependencies). The reason is that I can’t find the cause for an Access Violation that happens in the Delphi 10.4 and 11 DLLs when opening the Grep window from an external program. It’s somewhere in the OnCreate event handler of TDockableForm, for which the source code is not available, so it’s difficult to debug.

 Posted by on 2021-12-31 at 15:36

Small improvements to GExperts

 Delphi, GExperts  Comments Off on Small improvements to GExperts
Dec 122021
 

Some of the experts in GExperts have seen small improvements lately:

The Goto expert now allows incremental search in the list by typing in the number field. This feature was contributed by Achim Kalwa.

The Grep search expert now takes the name of the currently selected control on the form designer if it is opened while the form designer is active. Again, this feature was contributed by Achim Kalwa. The idea was from Peter Panettone.

The Todo expert now has a filtering function. The idea was from Peter Panettone, who also provided an implementation. Unfortunately I had to reimplement it because his code did not work with older Delphi versions.

Thanks again to everybody who contributes to the project. I might take a while to commit such changes but I try to do my best.

 Posted by on 2021-12-12 at 16:21

Toolbars in GExperts for Delphi 11 dialogs are now scaled

 Delphi, GExperts  Comments Off on Toolbars in GExperts for Delphi 11 dialogs are now scaled
Nov 272021
 

Just a quick info on the state of GExperts for Delphi 11:
I went through all the dialogs and now the toolbars and also the icons in the menus should be scaled properly. They don’t really look nice because they are simply enlarged using the method Ćœarko Gajić described, but I don’t really want to spend time on redesigning them all.

 Posted by on 2021-11-27 at 17:39