Jim McKeeth is going to hold a Webinar Essential Delphi: GExperts on 2024-08-28. I'll try to join if I find the time (it's scheduled for 17:00 CEST (15:00 UTC), so I might just make it.) Past webinars are available on the GDK Software YouTube channel. Edit: The webinar has just ended. You can watch a … Continue reading GExperts Webinar
Category: Delphi
CodeInsightExpert for GExperts
Michael Höfmann has written an additional CodeInsightExpert (in German) that can be added to GExperts and supports the writing of CodeInsight compatible comments in Delphi 12 (Athens). The source code is in his repository on GitHub. Note that this is not an official expert in GExperts, so you won't get any support from me. I … Continue reading CodeInsightExpert for GExperts
GExperts FAQ: Why does the Grep Results window not remember size and position?
The Grep Results window (and several other windows) can be docked to the IDE. To allow that GExperts does not save their positions and size but lets the IDE do that, which means these settings are part of an IDE desktop. While this can be convenient in the case of a docked window, it can … Continue reading GExperts FAQ: Why does the Grep Results window not remember size and position?
dzBdsLauncher 1.0.14 released
Unfortunately version 1.0.13 of dzBdsLauncher had a bug when called with a Delphi 2007 .dproj file: It correctly detected (or rather assumed) Delphi 2007 but then said it could not detect the Delphi version. That bug is now fixed in the version 1.0.14.
Autocompletion for TEdits fixed for Delphi 11 and later
I wrote about autocompletion for TEdits before here, here and here. My dzlib contains several helper functions to add TEdit-autocompletion for directories, files (with a filter) and generic strings from a string list. All of them worked fine for me and were used in several our internal programs. But that changed when trying them with … Continue reading Autocompletion for TEdits fixed for Delphi 11 and later
SafeGetEnumName a safer implementation of TypInfo.GetEnumName
I just had the need for a safer version of Delphi's GetEnumName, which checks whether the enum value passed to it is actually valid. This is what I came up with: [delphi] // P must point to the length field (that is the first byte) of a ShortString function AfterShortString(const P: Pointer): Pointer; inline; begin … Continue reading SafeGetEnumName a safer implementation of TypInfo.GetEnumName
dzBdsLauncher 1.0.13 released
I just released dzBdsLauncher 1.0.13. If it detects more than one possible Delphi version from the available project information it now checks which of them are installed if only one is installed, it starts this version. If more than one is installed, it asks the user.
dzBdsLauncher 1.0.12 released
I just released dzBdsLauncher 1.0.12. It now shows an error message, if it is called with a .dpr file parameter but cannot find a corresponding .dproj, .bdsproj or .dof file.
I was wrong, again
In my previous post An improved Abstract Error Handler for Delphi I claimed there was a change in the Delphi RTL between Delphi 10.1 and 10.2. I have no idea why my tests looked like that was the case. Maybe a stale dcu file somewhere? In fact the change was made between Delphi XE and … Continue reading I was wrong, again
An improved Abstract Error Handler for Delphi
NOTE: The original blog post was wrong in one point: The change happened in Delphi XE2, not 10.2. I have now updated this and also adapted the conditional compilation in u_dzAbstractHandler. I should also mention, that the code only works on Win32. Win64 and other platforms are not supported. But since that unit won't compile … Continue reading An improved Abstract Error Handler for Delphi