When sorting a “StringList” is very costly

The following code looks innocuous but slows down a program significantly: [delphi] type TJCHListSortCompare = function(Item1, Item2: Integer): Integer of object; TCheckListBoxWithHints = class(TCheckListBox) private procedure QuickSort(L, R: Integer; SCompare: TJCHListSortCompare); // [...] procedure TCheckListBoxWithHints.QuickSort(L, R: Integer; SCompare: TJCHListSortCompare); var I, J, P: Integer; tmpObj: TObject; tmpStr: string; tmpChecked: Boolean; begin repeat I := L; … Continue reading When sorting a “StringList” is very costly

New Explicit Properties Filter expert in GExperts

I never understood the benefit of writing the ExplicitLeft / Top / Width / Height properties for TControl and descendants, which were added in Delphi 2007, to the dfm files. They store the control's position and size before its Align property was set to something like alClient or alRight, so they can be restored later. … Continue reading New Explicit Properties Filter expert in GExperts

Bug and possible fix for GExperts Filter Exceptions expert – testers needed

Mahdi Safsafi has proposed a fix for the bug in the GExperts Filter Exceptions expert, which occurs when developing for non Windows targets (first reported on Embarcadero's quality portal ). I have implemented this fix and it doesn't have any adverse effects on for Windows targets. But neither he nor I can test it for … Continue reading Bug and possible fix for GExperts Filter Exceptions expert – testers needed

Filtering and sorting for the GExperts PE Information Exports list

The GExperts PE Information tool just got a small improvement: The Exports list can now be sorted by clicking on the column header and filtered on the export name by simply typing text. The Escape key resets the filter. If you want to discuss this article, you can do so in the corresponding post in … Continue reading Filtering and sorting for the GExperts PE Information Exports list