The Wiert Corner – irregular stream of stuff

Jeroen W. Pluimers on .NET, C#, Delphi, databases, and personal interests

  • My badges

  • Twitter Updates

  • My Flickr Stream

  • Pages

  • All categories

  • Enter your email address to subscribe to this blog and receive notifications of new posts by email.

    Join 1,860 other subscribers

Archive for the ‘GExperts’ Category

Who maintains GExperts · GitHub?

Posted by jpluimers on 2021/06/03

I wnder who maintains [WayBack] GExperts · GitHub:

GExperts has 4 repositories available. Follow their code on GitHub.

It has not been updated for about 5 years, but contains some important bits.

–jeroen

 

Posted in Delphi, Development, GExperts, Software Development | 1 Comment »

GExperts grep search: skipping searching certain files, irrespective of their directory

Posted by jpluimers on 2021/03/11

Especially when including [WayBack] form files (dfm now, but in the past also nfm and xfm) in your search, you might want to exclude one or more of them, for instance when they do not adhere to the form file syntax.

One of such files is for instance [WayBack] jcl/ExceptDlg.CBuilder32.dfm at master · project-jedi/jcl · GitHub. It has the contents is NONE (by intent, just like the corresponding .h and .cpp files, as only the Delphi equivalents .dfm and .pas have been implemented).

Doing this was way easier than I thought: just put ExceptDlg.CBuilder32.dfm in the “Exclude Dirs” field – which also excludes files. How cool is that!

–jeroen

 

Posted in Delphi, Development, GExperts, Software Development | 1 Comment »

Delphi unit aliases: multiple ones can point to the same unit

Posted by jpluimers on 2020/08/20

A while ago, I had to figure out how to get some GExperts stuff cross-compile to older Delphi versions, because of UITypes usage that is not available in Delphi XE and lower (but much of what it contains is in the Types unit).

So I went down memory lane, as I remember in Delphi 2, the Delphi 1 WinTypes and WinProcs units were merged into the Windows unit.

A quick search revealed the stackoverflow entry mentioned here:

for the Delphi 1 -> Delphi 2 migrations, these aliases were used where multiple units pointed to the same one:

WinTypes=Windows;WinProcs=Windows;DbiProcs=BDE;DbiTypes=BDE;DbiErrs=BDE

See [WayBack] delphi – wintypes.dcu not found and code completion stops working – Stack Overflow

A longer search found this in my own archives:

File D2-CS-2.0\DEMOS\DOC\AUTOPROJ\AUTOPROJ.DOF

Has this line:

UnitAliases=WinTypes=Windows;WinProcs=Windows

Source: [WayBack] GX_GenericUtils.pas fails to build in Delphi 2007 because it uses unit UITypes · Issue #22 · jpluimers/GExperts · GitHub

(Ab)using unit aliases to fail on VCL

You can use unit aliases so your applications cannot use the VCL any more.

The trick is to alias Forms or VCL.Forms into something that does not exists, like Forms=__no_VCL_Forms__. The reason this works is that any VCL application uses the Forms unit because of the Forms.Application variable.

Reference:

–jeroen

Posted in Conference Topics, Conferences, Delphi, Development, Event, GExperts, Software Development | Leave a Comment »

GExperts: Copy Component Names

Posted by jpluimers on 2019/09/17

Sometimes your toolbox can already things you forgot it could: [Archive.is] GExperts Help.

Via:

–jeroen

Posted in Delphi, Development, GExperts, Software Development | Leave a Comment »

Using escape characters in GExperts Grep replace – twm’s blog

Posted by jpluimers on 2019/06/12

Reminder to self: check out the the support for proper escaping special characters (like \t, \r, \n or x20 for tab, carriage-return, line-feed or space) in GExperts [WayBackUsing escape characters in GExperts Grep replace – twm’s blog

Solves:

Via: [WayBack] If you enable regular expressions in the GExperts Grep search form, you can search for escape sequences like \t which is expanded to a tab character or … – Thomas Mueller (dummzeuch) – Google+

–jeroen

Posted in Delphi, Development, GExperts, Software Development | Leave a Comment »

GExperts: searching for case-insensitive “T*List.Create” but not “TStringList.Create”

Posted by jpluimers on 2019/05/02

Just learned that partial exclusion can be done with the case-insensitive GExperts Grep Search like this:

T[^s][^t][^r][^i][^n][^g].*List.*\.Create

This will skip TStringList.Create, but matches TMyList.Create.

I’d rather have done something like this, but the Delphi RegEx does not support negative lookbehind:

^ *[a-zA-Z0-9_]* *: *T(<!string)[a-zA-Z0-9_]*ListO? *;$

So the alternative is to search for this:

^ *[a-zA-Z0-9_]* *: *T[a-zA-Z0-9_]*ListO? *;$

then exclude all the case insensitive TStringList entries from it, however GExperts did not support that at the time of writing.

This is an intermediate that works for some of the times:

^ *[a-zA-Z0-9_]* *: *T[^s][^t][^r][^i][^n][^g][a-zA-Z0-9_]*ListO? *;$

–jeroen

^ *[a-zA-Z0-9_]* *: *T[^s][^t][^r][^i][^n][^g][a-zA-Z0-9_]*ListO? *$;
^ *[a-zA-Z0-9_]*: .T[a-zA-Z0-9_]*ListO? *;$;
^ *[a-zA-Z0-9_]* *: *T(?!string)[a-zA-Z0-9_]*ListO? *;$

Posted in Delphi, Development, GExperts, RegEx, Software Development | Leave a Comment »

Thomas Mueller has started to write some documentation on the internal workings of GExperts…

Posted by jpluimers on 2019/02/26

From a while ago, for my link archive:

[WayBack] I have started to write some documentation on the internal workings of GExperts. For now, it covers only a very small part of the IDE form enhancement… – Thomas Mueller (dummzeuch) – Google+

Back then, this was done:

–jeroen

Posted in Delphi, Development, GExperts, Software Development | Leave a Comment »

Need to revisit: Grep search crashes with `Invalid class typecast.` · Issue #1 · jpluimers/GExperts · GitHub

Posted by jpluimers on 2019/01/29

One day I need to resivit [WayBackGrep search crashes with Invalid class typecast. · Issue #1 · jpluimers/GExperts · GitHub.

The reason is that I want to be able to:

  • bind shortcut keys for deleting entries in the list of grep searches
  • performing a search while watching the results of a different one

Via [WayBack] Small initial fix for a race condition https://github.com/jpluimers/GExperts/issues/1 in commit https://github.com/jpluimers/GExperts/commit/bcc365911ab… – Jeroen Wiert Pluimers – Google+

–jeroen

Posted in Delphi, Development, GExperts, Software Development | Leave a Comment »

GExperts “Set Component Properties”

Posted by jpluimers on 2018/07/17

I totally forgot about [Archive.isGExperts Help: Set Component Properties

The main reason is that I hardly use any live connections in Delphi applications any more for mainly two reasons:

  • timing issues (varying from taking way too long to open something, via order what needs to be opened different between run-time and design-time, to )
  • pushing business logic further away from the user interface so it is easier to automatically test the business logic

But once every while I’m on a new site that has their own tool-chain installed and I see screens like this one:

I’m not alone on this: [WayBack] Does anybody know where the following dialog window come from? I need to disable it but failed to find the source IDE plugin – Edwin Yip – Google+

The good thing is that it can bring certain components into a know state before compiling your application.

But this is a thing your CI environment should already do for you.

–jeroen

 

Posted in Delphi, Development, GExperts, Software Development | Leave a Comment »

So how does a guy like myself get involved in contributing to GExperts?

Posted by jpluimers on 2017/05/04

Interesting question with some nice hints in the comments there:

[WayBack] So how does a guy like myself get involved in contributing to GExperts?I don’t have a lot a lot of time (or money), but I do have a desire to help. – Joe C. Hecht – Google+

–jeroen

Posted in Delphi, Development, GExperts, Software Development | Leave a Comment »