Wednesday, July 30, 2008

Feeling Smarter

Does anyone drink SMART water? If you do, does it make you feel smarter?

Thursday, July 24, 2008

Tiburón Sneak Peek: Project Options

The Delphi and C++Builder project options dialog has changed a little bit. Take a look for yourself:







Yeah, we can resize the project options now:



Wednesday, July 23, 2008

Tiburón Sneak Peek: COM

I have a few minutes here so I want to write a bit about the major overhaul that went on with the Delphi and C++Builder COM feature. On the surface it might not look like much, but we really did overhaul the entire feature laying some much needed ground work for the future.



Here's a screen capture of the project manager after creating an ActiveX Library:







Notice the file with the .ridl extension in the project manager. This is a new file we have introduced in the next version of Delphi and C++Builder called Restricted Interface Definition Language (RIDL). The .ridl file is now the storage file for your type library instead of a binary .tlb file. A new tool has been built called gentlb.exe (similar to midl.exe) that compiles .ridl files into .tlb files. It is part of the toolchain so you can build from the IDE or the command line. Of course from the IDE you get the code updaters for when you add new methods and the stubs are generated for you. But you can also do all that by hand if you desire. We now treat the .tlb file as any other intermediate file like a .obj or .dcu, so eventually it'll be safe to add it to your clean list. Make sure you back up the original .tlb first. From now on you can diff and merge changes to the .ridl file as you would any other text file. This should really enable more than one developer to work on a COM project.



Here is a screen capture of the new type library editor:







Notice there are tabs at the bottom similar to what you see with the form designer. From left to right Code, Design and History.

Yeah, we have a history view just like any other text file in the IDE:







And of course you can look at the .ridl file like any other text file. Here is a screen capture of the Code tab of the type library editor:







If you know IDL you'll find that RIDL isn't really any different. In fact it has been our goal to make sure that midl.exe can compile .ridl files. So we didn't make up our own language here, it's industry standard.

Tiburón Sneak Peek: Debugger

Chris Hesik has a great blog post about some of the new debugger features in the next version of Delphi and C++Builder: Tiburon Preview: Vista Wait Chain Traversal.

Monday, July 21, 2008

Inline Blog Posts

I just found out how to enable inline comments by using http://draft.blogger.com I just updated my blog to allow inline comments so it's more friendly to use. Let me know if you have any problems posting comments.

For those of you that want to add inline comments in your Blogger blog go here.

Tiburón Sneak Peek: TButtonedEdit

Seppy Bloom has posted a screen shot and a little bit of information on the new TButtonedEdit component here. And just to clarify a few of the comments over there, TButtonedEdit = class(TCustomButtonedEdit).

Thursday, July 17, 2008

Tiburón Sneak Peek: Import Component Wizard

The Import Component wizard is very similar to the New Component Wizard and it got all the same new features. But I'll reiterate them here in a nice copy and paste job and changing the images.



Here again you can see the search created with the new TButtonedEdit control I talked about in my post yesterday about the changes to the Tool Palette. That search is pretty slick if I do say so myself. Can you tell that I like it? I did use it all over the IDE.







Another oldie but goody from Delphi 7 and older is the the last page of the New Component Wizard. There are two new (but old) options to choose from: Install to Existing Package and Install to New Package. Note that the list of options changes. If you have an open active project then there will be an option to add the generated file to that package.









Here is a screen capture of Install into Existing Package. Note that I'm using a developer build of the IDE and I don't have an existing packages that are available to install into.









And probably the more useful option is to be able to create a new package. Provide a name and a description and bam! new package created, opened, installed and ready to go.



Tiburón Sneak Peek: New Component Wizard

The New Component wizard got a few new features. Here again you can see the search created with the new TButtonedEdit control I talked about in my post yesterday about the changes to the Tool Palette. That search is pretty slick if I do say so myself. Can you tell that I like it? I did use it all over the IDE.







Another oldie but goody from Delphi 7 and older is the the last page of the New Component Wizard. There are two new (but old) options to choose from: Install to Existing Package and Install to New Package. Note that the list of options changes. If you have an open active project then there will be an option to add the generated file to that package.









Here is a screen capture of Install into Existing Package. Note that I'm using a developer build of the IDE and I don't have an existing packages that are available to install into.









And probably the more useful option is to be able to create a new package. Provide a name and a description and bam! new package created, opened, installed and ready to go.



Tiburón Sneak Peek: C++Builder Modeling

There aren't just new features for Delphi, we have lots of good stuff for C++Builder too. I was going to talk about C++ modeling, but David I beat me to it and just posted Tiburon/C++Builder - soon with live UML modeling.

Wednesday, July 16, 2008

Tiburón Sneak Peek: String Theory

Allen Bauer has a good read about how UTF-8 strings work in Tiburón. Here's the post he called String Theory.

Tiburón Sneak Peek: Registered Type Libraries

The Registered Type Libraries view is a new view that shows up in the editor tab displaying all the registered type libraries on your local system. Think of it as simplified view of the registry for just type libraries. From here you can view, search, register and unregister type libraries.



For the searching there's the TButtonedEdit I talked about a few hours ago in my Tiburón Sneak Peek: Tool Palette post.



I use Registered Type Libraries all the time now. I find it so much faster and more useful than 4NT and tregsvr.exe or going to the registry. All the pertinent information is there at a glace: Type Library Description, Version, Filename and GUID.



Tiburón Sneak Peek: COM Wizards

So every single COM wizard got a facelift. But it's more than a facelift, they are consistent, easier to use with more information available than before. One of the biggest reasons for doing this was to make it easier for QA to write automation tests. The previous wizards heavily used form inheritance which makes automating with Zombie (our in-house automation software) difficult to use. The form inheritance has also made localizing difficult.



Both the C++ and Delphi wizards are exactly the same (except where different, obviously). The first thing you'll probably notice is the pretty graphic on the left and the text at the top. But there's some nice functionality in the rest of the dialog as well. Notice the red * to the right side of some of the edit and combo boxes. It'll tell you what information needs to be entered before the OK button can be clicked with some limited validation happening as you type.



Each wizard has an interface field similar to the one in previous version of the COM Wizard. This allows you to see what interface is going to be created or in some cases choose your own interface name. Some wizards, such as the COM wizard, allow you to choose from interfaces registered on the system. The Implement Existing Interface dialog has been updated as well and I'll post about it later.



One special treat is a new wizard has joined us again this version; The ActiveX Control Wizard.









































Tiburón Sneak Peeks from David I

David I has some sneak peaks of Tiburón discussing Tiburon’s LoadFromFile and SaveToFile for Unicode characters and Unicode database support in Tiburon for Delphi and C++. Definitely worth a read.

Tiburón Sneak Peek: COM

COM has gotten some serious attention this cycle which I'll talk about in a later post. But I'll start out the COM posts with some screen captures of the gallery containing the icons for the COM wizards. Note that some of these wizards will only ship in certain SKUs. I don't believe the SKUing has changed so the next version of Delphi and C++Builder should have the same COM wizards where you expect them.



Here is what the ActiveX gallery looks like when you have no projects open:









Here is what the ActiveX gallery looks like after you have created an ActiveX Library project (note that if you have some other project type you will see fewer COM gallery items since they don't work correctly in other project types):









And last, here is are the gallery items in the Multitier tab:



Tiburón Sneak Peek: Tool Palette

I updated the Tool Palette this version by adding a search edit box:







The edit box is a new control in VCL called TButtonedEdit:







All behavior of the Tool Palette, including the ones I mentioned in a previous post remain the same. It just looks a little prettier and makes a bit more sense.

Tuesday, July 15, 2008

Sneak Peeks of Tiburón

Starting tomorrow, because it's bed time right now, I'm going to start showing you some sneak peeks of Tiburón. This is great news because I haven't been blogging much lately and I feel I've been neglecting this blog. Actually I have been blogging, I just haven't been hitting the publish button! There's lots of good stuff in Tiburón, so I'll post as many tasty bits as often as I can get time. But be warned, this is beta software and it is subject to change.

Update: I added a link on the sidebar for all Tiburón Sneak Peek posts.