Ten Annoyances in Delphi 2005

These CodeFez editorials are fun. The best part is when I get comments from humor- and sarcasm- impaired people who take things far too seriously. I get a good laugh out of folks like that.

One of the common comments I get is that I am a “Delphi Bigot”. Well, that stands to reason, since that is the name of my blog. But somehow they fail to see the tongue-in-cheek nature of the moniker. Many miss the slight sarcasm, biting satire, and good-natured ribbing in some of my articles. Some have even gone so far as accuse me of being the “Borland Information Minister”.

So, in a effort to dispel the notion that I am a raging Borland Sycophant, this week’s column is entitled “Ten Annoyances in Delphi 2005”. This is probably a once in a lifetime experience, so arrive early, as supplies are limited!

So, without further ado, here they are:

  1. Those dang blue balls cover up line numbers. I would have loved to have been at that meeting. “Hey, we have this new line numbering feature. Let’s cover up the line numbers with blue balls!”

  2. No "Make Region of Selected code" option Code folding is cool, but not so necessary in Delphi. What is cool is folding regions. Unfortunately, there is no way to select a block of code and turn it into a {$REGION} Oh well. Actually, I’m growing fond of typing, scrolling down, and typing again.

  3. "Build All Projects" doesn’t have a shortcut key. Back in the day, CTRL-S, CTRL-F9 was good enough. Now, with assemblies, multiple projects, C# and Delphi in the same project group, why, a simple compile isn’t really good enough. Build All is the future!

  4. Select Tools|Options… Look at the horizontal scroll bar in the treeview control. Be annoyed. Argh. Double Argh! One of my pet peeves is non-resizable dialogs that we should be to resize. Things are better in Delphi 2005, but still have a way to go. (Once the holy war against non-resizable dialogs has been won, the crusade will move on to getting the IDE to remember the sizes of dialogs that have been sized.) Anyway, that dang horizontal scrollbar on the bottom of the Options dialog bugs the heck out of me. Why couldn’t size that treeview a few pixels wider to make that thing go away?

  5. I overshoot those dang tabs on the bottom by just a little bit, and my Windows taskbar pops up. Up and down and up and down goes my mouse. Tabs on the top, tabs on the bottom. Since I have my Windows taskbar set to auto-hide, one pixel too far and BOOM, up it pops, and I have to wait for it to go down. Can’t those tabs at the bottom be somewhere else? Anywhere else? (And while we are at it, could there be any more annoying feature than the Windows taskbar when it won’t recede? This happens all the time. And how about that application that pops up the taskbar, insisting on being paid attention. “I’m not going to stop blinking and I’m going to keep your taskbar popped up until you look at me!!!!’ Who thought this was a good idea?)

  6. No "Close All Open Files But Not The Project" option in editor I know this is considered blasphemy in the Delphi community, but I’ve taken to using the “Default” desktop with everything docked into one big window. This allows me to unpin the Object Inspector, Project Manager, etc., and bring them out on demand. Well, in my normal course of working, I frequently end up with tons of code editor pages open, and sometimes I’d like to close them all and just sort of start over with one page. Well, there is no way to do this except to hit the little black ‘X’ on all the code pages. “Close All” closes the entire project, and that’s not what I want.

  7. The "Highlight Current Line" feature is really annoying. I suppose some people like this, but I find it incredibly annoying. I like a dark background in my Code Editor, and there simply isn’t a color that I can choose for the highlighted line color that doesn’t make this feature bothersome in the extreme. It utterly obscures the text caret, so I have no idea where my typing will go. And to make matters worse, there isn’t one place to turn off the "Highlight Current Line" feature once and for all. You have to switch it off for every individual file type. Argh!

  8. And while we are at it, the bracket matching “feature” is really, really annoying. This one I truly hate, and I cant understand why anyone like this. Try this: Drop a button on a form. Double-click on the button. Type “ShowMess” an press CTRL-Space. Then select “ShowMessage” from the list. Now, is the cursor where it is supposed to be, right in between the parentheses? Huh? Are you sure? Move it around. Now are you sure?

  9. No way to get the IDE to easily open a plain ol’ *.pas file. If I am working on a Delphi project and click on the Open button, it should assume I want to open a *.pas file, not a .bdsproj file, or whatever. That’s what Open Project is for. And to make matters worse, the drop-down filter box has a selection named Pascal Project (*.pas) that doesn’t merely open a *.pas file, it opens it as a project! Don’t pick that one when you have to go through the annoying process of dropping down the combobox and selecting the *.pas filter. (More “while we are at it”. Is there anything more annoying on the Standard VCL pallete tab than the dreaded combobox? Who likes these things? Click, find the scroll thumb, scroll, scroll, scroll, find what you want, click on it. Oops! I clicked on the wrong one! Start over! There has to be a better way that this.)

  10. Class Completion isn’t keeping up with the times. As much as I hate to admit it, we Delphi developers have to make some concessions to the tyranny that is the Common Language Specification (CLS). One is the definition of property assessors. The CLS requires that all accessors begin with ‘get_’ and ‘set_’. (Is there a more commonly used, difficult to type, and utterly unnecessary character than the underscore?) Well, Class Completion doesn’t provide this when filling out property declarations, and I think it should.

There you go. See? I’m not a total sycophant!

Note to the humor impaired: The above article contains sarcasm, humor, and a touch of satire. Please read the definitions of those words carefully before commenting or sending emails. And by the way, this very notice itself contains that very stuff, too.

Note to Allen, Corbin and the gang: I love and admire you guys. You all are my heroes. Really. Seriously. No hard feelings, right?  Right? 

No comments yet

Leave a Reply

You must be logged in to post a comment.