Archive for the ‘Delphi’ Category

Delphi 2009 Tiburon - Why?

CodeGear published recently two video previews about the upcoming Delphi 2009, a.k.a. Tiburon:

http://video.codegear.com/Tiburon/WhatsNewInTheVCL_English/WhatsNewInTheVCL_English.html

http://video.codegear.com/Tiburon/WhatsNewInTheDelphiIDE_English/WhatsNewInTheDelphiIDE.htm

Both videos are hosted by David I.  He sounds really cheerful and enthusiastic about the value Tiburon is going to bring Win32 developers.  I already ranted about the unfortunate attempts of Delphi to emprace NET Framework, and now I was somewhat optimisic that Tiburon is focused on Win32.  First video is about the enhancements in VCL, and the other - about the IDE.

The two videos brought huge disappointment to me. 

(more…)

Posted by Nik on August 17th, 2008 No Comments

The Look of Windows API Controls

You can tell that a standard push button in Windows XP looks different than a standard push button in WIndows 2000, and such one in Windows Vista.  On top of it, since XP Windows supports visual themes.  The interesting thing is that sometimes one and the same application keeps its Windows 2000 look, but sometimes standard push buttons follow the way of XP, or the Vista, depending on where you run it. 

In this article I explain why.

(more…)

Posted by Nik on July 31st, 2008 1 Comment

A New IDE for Delphi

I just came accross Visual Studio Shell.  This is a very interesting framework for creating development IDEs.

All versions of Borland Delphi starting with 2005, a.k.a 8, feature a really bad IDE.  Really bad.  Slow and buggy.  I already ranted about the fact that Borland decided to catch up with the interface and layout of Visual Studio, than simply evolve the features of their already good IDE.  Since Delphi 7 Borland gave us all a good proof that they cannot create a decent IDE anymore.  Both Visual Studio and Eclipse surpass it by miles.

Well, here is my idea.  Embarcadero, why don’t you just build up your IDE around Visual Studio Shell?

Posted by Nik on July 29th, 2008 1 Comment

Reading VARIANT from Stream - Delphi’s Way

In this post I described an efficient way to write a VARIANT to a stream in a binary format.  Doing so will be of no use whatsoever if you cannot bring back a fully-fledged VARIANT from the stream.

Reading a VARIANT is analoguous to writing it, but there is an interesting points.  You have to know how to set properly the type of the output variant.  If the VARIANT is a single value, the right way to do it is to use VarCast function.  If the VARIANT is an array, however, you should create it by using VarArrayCreate.  Only after you set the type, you can assign the data. 

Here comes the code:

(more…)

Posted by Nik on July 10th, 2008 11 Comments

Writing a Variant to Stream

Recently I came to a case when I had to write an OLE Automation VARIANT type variable to a stream.  And, of course, read it back as a fully-fledged VARIANT.  The solution had to fully support arrays as well.  A VARIANT can be a byte, an integer, a floating point number, a date.  A VARIANT can be a string.  A VARIANT can be a safe array of VARIANTs, which can in turn be safe arrays, and so on.  Start to feel the catch?

(more…)

Posted by Nik on July 9th, 2008 No Comments

Embarcadero Technologies Acquired CodeGear

Last week’s big news for me - Embarcadero Technologies acquired CodeGear (link).

The reaction CodeGear’s guys on their blogs is highly positive, and the insiders at CodeGear are really optimistic.  They feel that someone will finally start to care about the Development Tools division.  However, I am still anxious.

(more…)

Posted by Nik on May 13th, 2008 4 Comments