twm's homepage logo
From someone who traveled abroad to learn appreciating his own country ...
entries from 2007
Deutsch English
Search WWW
GExperts Tip #1
GExperts contains an expert to simplify creating message boxes, called via Alt-XM or Ctrl-D. There you enter the text to display, the icon and the buttons. As soon as you press OK, the corresponding code is inserted at the current position into the code editor. I guess that's nothing new for most of you. But did you know the following:
  • Using the "Embed"-combobox you can add an If statement, negative If statement (with NOT) or Case statement. When you select one of these you must also check the function results you want it to handle. Only those results are enabled whose correspondig button has been checked.
  • In addition to the tab "MessageDlg", which inserts a call to the function MessageDlg from the Unit Dialogs, there is a second tab "MessageBox". This one calls the Windows-API funktion MessageBox, which does not require the VCL. This might be interesting for those who want to create smaller executables.
  • The "Test" button displays a preview of the dialog with the given settings.
  • If you remove the "Quote message text" check, you can enter any string expression, e.g. a call to the Format function to output the values a some variables in a formatted way.
  • Multi line text is normally generated as
    Personally I prefer the form
    That too is possible, just change the "Concatenation string for line breaks" in the expert's configuration.
This is the first in a series of tips on GExperts which I plan to post here.
Experimental GExperts Version 1.32-2007-08-14 released
I have just released a new experimental GExperts version with the sourcecode formatter. As always it is based on the current GExperts sources which may be a good or a bad thing. It now officially supports CodeGear RAD Studio 2007 (the previous version should also have worked) and there is a new option in the Macro Library expert to automatically prompt for a name when stopping the recording of a keyboard macro. In addition I have linked the dll against SynEdit so the source code export is now active.
You can download the new version from the GExperts page.
Experimental GExperts Version 1.32-2007-08-14 released
I have just released a new experimental GExperts version with the sourcecode formatter. As always it is based on the current GExperts sources which may be a good or a bad thing. In addition to the existing {$GXFormatter.settings=xxx} directive, the settings to use for formatting a file can now be configured using an .INI file. In the configuration dialog you can define the priority of these options.
You can download the new version from the GExperts page.
Adding TortoiseSVN to the Delphi Tools Menu
I have just added two articles to the Delhi Wiki: Some of you might not even have known that you could configure the Tools menu of the Delphi IDE. But you did know about the Delphi Wiki, didn't you?
Delphi on Digg
Somebody just mentioned in b.p.delphi.non-tech that Delphi featured on Digg, or actually some page is featured on Digg that mentions Delphi: Ghosts in the Machine: 12 Coding Languages That Never Took Off. I don't know about the other languages mentioned there - I haven't even heard of some of them - but there was one particular sentence that I took offense to:
The real Delphi killer was the advent of Visual Basic 6. Under Visual Basic versions 4 and 5, there were still a lot of things Delphi could do better and easier than under Visual Basic.
Now, as some might know, in my last job I was using Delphi7 and VB6 in parallel for several years and I think I have become quite proficient in both. So I think I can form a sound opinion on that matter:
There is not much that can be done better in VB6 than or even as good as in Delphi 3(!). And Delphi 2007 is definitely an improvement over all earlier versions.
Also VB6 is dead and I say: Good riddance.

Just a few things VB6 could not do but Delphi can:

  1. DLLs: VB6 could only create COM servers (Delphi - of course - can also create COM servers)
  2. true OO programming: VB6 did not have any inheritance
  3. Services: VB6 could only create programs that could be "turned into a service" by using an external program as a wrapper
  4. Exception handling: VB6 knew only the On Error Goto (or worse: On Error Resume) statement. There is no decent error handling possible with this syntax. In addition a VB6 program just crashed, losing all data, if an unhandled error occurs, while a Delphi program will display an error message and usually still allow you to save your data afterwards
Add to that a crap debugger, an annoying IDE and a language that is essentially a glorified scripting language and you get VB6.

I have probably already forgotten a lot of the pain since it has been a happy 6 months without touching VB. (No, my employer didn't see the light, I switched to a different job.)

There might be several reasons why Delphi has been constantly losing market share during the last 10 years, but it was definitely not because VB6 was better.

Experimental GExperts Version 1.31-2007-07-01 released
For quite a while there has been the first update for Delphi 2007 but still no experimental version of GExperts with the code formatter for it. That's embarrassing but this is now to change. The new version is as always based on the latest GExperts source code which might be a good or a bad thing.
You can download the new version from the GExperts page.
rxlib 2.7.7 release
I have just released a new version of rxlib. Version 2.7.7 is compatible to Delphi 2007 for Win32. This is the only change to rxlib 2.7.6, so if you don't use Delphi 2007, you can ignore this release.
Delphi and SubVersion
I have posted about SubVersion several times in the Borland newsgroups, the most recent post was quite extensive, so I thought I should extend it into an article and publish it in a more permanent form.
The Freecycle Network
In Bonn there was the so called online Exchange and give away market which I used before moving to get rid of some stuff which had accumulated over the years. There is no such portal in Essen (at least I haven't found one). What I eventually found is the Freecycle network. Freecycle is a "grassroots and entirely nonprofit movement of people who are giving (& getting) stuff for free in their own towns."
Why do I write about this? Well, it took me quite a while to find out that Freecycle exists and what it is and I hope that the links above will save other people some time.
New home and new job
Just in case you wondered why you haven't heard from me for a few months: I (or rather we, because my wife has not left me because of this ;-) ) have moved and I have got a new job.
I now work for Schniering Ingenieurgesellschaft in Essen and we live in Essen-Borbeck. The new job is very interesting and has nothing to do with the pharmaceutical industry and their peculiar idea of quality assurance (search for 21 CFR Part 11, if you want to know what I didn't like about this). This of course doesn't mean that we don't have any quality assurance at all, Schniering is ISO 9001 certified.
(Written on 2007-04-29, the date above is when it actually happened...).
last updated: 2012-10-14 twm
Post to Best Viewed With Open EyesValid XHTML 1.0!