Monthly Archives: December 2005

How to change the items in the Headline combobox on Delphi Welcome page

If you would like to change the list of RSS feeds available from
the Headlines downdown on the Welcome page all you need to do is edit an XML
file. Here’s what to do:

  1. From Windows Explorer locate the Welcome page folder under your Delphi 2005 installaction folder.
  2. Select the Welcome page folder and then select the sub-folder called “xml“
  3. Edit the file called defaultProviders.xml

I think the above XML is pretty straightforward but if you have any problems
figuring out how to correctly modify the file please post a comment and I will
be sure to clear things up.

[UPDATED Dec 17, 2004] I forgot to mention that the headlines
on the Welcome page are standard RSS feeds so it’s easy to
add your favorites feeds to the list.

Easily edit ASP.NET template controls using the Delphi Tag Editor

One feature I’ve mentioned but haven’t directly discussed is Delphi‘s HTML/ASP.NET Tag Editor window. This is a small code editor at the bottom of the HTML/ASP.NET designer that displays the markup of the selected tag. In Delphi 2006 the Tag Editor includes the following features:

  • Live markup tag editing including ASP.NET controls
  • Code completion
  • Markup error insight
  • Tag zooming or the ability to “zoom” out to the selected tag’s parent up to the tag
  • Designer tag highlighting (see the yellow region on the designer below) so it’s easier to see what markup is reflected in the tag editor

Here is a screenshot of the ASP.NET designer including the Tag Editor (click to zoom):

This screenshot highlights many features of the Tag Editor including error insight, code completion and designer tag highlighting. Additionally, if you’ve worked with ASP.NET at all you can appreciate the fact that the Tag Editor makes it easy to edit things like asp:datalist templates without having to switch back and forth between the designer and the code editor.

The Tag Editor isn’t limited to editing existing markup as you can easily enter any new markup and immediately see the results in the designer.

Command line option to display menu item names in Delphi 2006

If you’ve ever used the Delphi IDE’s OTA and added menu items to
the IDE’s main menu you’ve probably run into the problem of not knowing IDE menu
item component names which is important because you can use them to help locate
the correct position to place your new item. Well, here in R&D the OTA is
leveraged throughout the IDE and thus we have a similar problem although since
we have the source code it’s pretty easy to grok around a bit and find the name.

To help alleviate this problem I added a developer only (meaning internal to
Borland) feature to the IDE
that allowed you to display the menu item component names on the IDE’s main menu
itself. In D2006, there is a new command line option -showotamenunames which
will enable this feature and display the menu item component names right on the
menu items themselves. Have a look:

This was implemented by creating a descendant of TXPStyleMenuItem and adding
the component name information at the bottom of the item using Small Fonts.
Then, assigning the OnGetControlClass event of the IDE’s TActionMainMenuBar and
returning the new item class when the command line option is specified.

Tag: borland delphi

Introducing OnMouseEnter/OnMouseLeave events on TControl in VCL for Delphi 2006

In Delphi 2006 we’ve added
OnMouseEnter and OnMouseLeave events to TControl so if you’re a component writer
be sure to publish these new events on your controls. One of the criteria for
adding these events at the TControl level was to ensure that they were fired
correctly all the time. In previous versions of the VCL mouse enter/leave events
were handled in a somewhat lazy fashion where they were fired as part of idle
processing and as a result the mouse enter/leave logic was somewhat error prone.
In some cases the events were not fired correctly which resulted in less than
desirable behavior particularly for controls like speedbuttons. We’ve now
implemented support for the Windows API _TrackMouseEvent
which allows us to accurately process these messages without dropping events as
a result of quick mouse movements.

Tag: borland delphi

Looking for feedback on Delphi 2006 performance

Since I’ve had trouble convincing Mark Edington to start a blog I figured I’d
get his post to the Delphi.ide.general
out here for him.

Date: Thu, 08 Dec 2005 15:19:47 -0800
From: “Mark Edington
Subject: Delphi 2006 Performance Feedback

We have made quite a few improvements in the performance of the IDE for
Delphi 2006. Many common operations are noticeably faster than in Delphi 2005
but there are probably still areas where folks would like to see additional
improvements (myself included).

We have been talking quite a bit about improving quality in Delphi and while
I would like to think we have made great strides in Delphi 2006 we do recognize
that for us achieving higher quality levels will be a journey and not a

So, in that spirit, I am soliciting feedback on *specific* operations (such
as opening a file or switching from code editor to form designer) that people
perceive as being sluggish or noticeably slower than in Delphi 7 and previous

If you have Delphi 2006 and have had some time to work with it I would love
to hear your “top 3” or “top 5” or even “top 10” things you want to see made
faster in the IDE.

If you have comments regarding the IDE startup time you might want to hang on
to those for a little while. We have improved it quite a bit but there are
definitely more gains to be made in that area and we will be looking into that.
I’ll probably solicit feedback on that specific topic at some point in the near
future. For the purposes of this thread I would like to get feedback on
everything *besides* startup times.

I would prefer to keep the discussion here in the forum, but if for some
reason you have some valuable feedback and do not want to post it here you are
welcome to email me. You will need to substitute a certain company name for the
placeholder in my reply-to address (all you smart people here would have figured
that out anyway though, right? :0)

Mark Edington
Delphi Quality
Borland Software Corporation

Delphi 2006 how did we do?

My blog has been pretty quiet for the past few months as I, and the rest of the development staff have poured time into working on Delphi 2006. I’ve discussed here many of the details of what we’ve been doing and now you have the chance to see for yourselves. For those of you who have used Delphi 2006 I’m really interested to hear how you think we did on improving product quality? I’d also like to know what you think still needs work?