Thursday, December 23, 2004

Delphi 8 update 3 and Delphi 2005 update 1 now available

Delphi 8 Update 3
The delphi 8 update 3 is available for download right now as a public beta. It should solve the problem concerning the .NET Framework 1.1 SP1 issue.

Delphi 2005 Update 1
The first update of Delphi 2005 is also available for download. It solves a lot of issues and the memory leakage problem.

Quote from The Borland Developer Network about the Delphi 2005 update:

This update makes Delphi 2005 rock solid!

More information about Delphi 2005 Update 1 can be found here.

Thursday, December 16, 2004

Navigating a .NET dataset

In Delphi 7 navigating a dataset was a snap. You could use a TdbNavigator, or simply call the methods Next or Prior.
In a Winforms application it is not obviuos how to do this. A way to do this is using a CurrencyManager.
A currencymangager manages a list of bindings. A binding binds a value of a property to an object, just as in binding data to a grid.
(Live used to be simple in Delphi 7 :-) )

To navigate a dataset the code looks something like this:

procedure frmMain.MoveRecord(Step : Integer);
cm : CurrencyManager;
cm := BindingContext[dsProjects, 'Project'] As CurrencyManager; cm.Position := cm.Position + Step;
Label1.Text := dsProjects.Tables[0].Rows[cm.Position].Item['pr_number'].ToString;

This codes moves the dataset Step records and shows the value of the field pr_number of the current row in a label.
Remark that when you sort your grid, you should also sort your dataset, otherwise they will not be synchronized.

Thursday, December 02, 2004

Mixing Winforms and VCL.NET

One of the things that really shows the power of Delphi is that you can mix VCL.NET forms within your winforms applications and vica versa. This is really a great feature.
In this 'dirty' example a ClientDataset, Grid, DataSource and VCL Form are created on the fly, and it works just fine. It is however not possible to use the VCL desinger within the winform application.

Can't find the stringbuilder in the .net framework?
No problem, use the TStringList instead.
Delphi makes you feel like you are at home in the .NET framework.

Tuesday, November 30, 2004

Why you should use Delphi

Nick Hodges does it again on codeFez. He asks again Why you should use Delphi. Well that kind of question keeps the discussion going. :-)

One of the points why you should use Delphi was:
Delphi has been doing “Avalon” for ten years.

Well that is just great. I never realized it myself but again this is, in my opinion, a great benefit for Delphi. First there was VCL then VCL.NET and, who knows, VCL for Avalon. Wow this really makes you think.
Winforms? Well that will definitly not make it to Avalon. (Again who knows, but you better read this.)
VCL.NET? Not such a bad choice, even if it will not make it to Avalon.
VCL? No problem, there is that beautifull upgrade path to VCL.NET, and maybe later to Avalon.........

Wednesday, November 24, 2004

Delphi 2005 first impressions...

Finally got the time to download the D2K5 trial, and install it!
Here my first impressions:

- Installation
Despite all negative news in borland non-technical-newsgroup the installation went very well. I did not have to install the .net framework so it took about 7 minutes.

- First run....
Oh yeah Delphi2005 really is a beast. It takes about 23 seconds to start the IDE, but then you will have everything from Win32 to .NET and ECO. (Delphi and C#)

Played a little while with all the demos. No crashes! And then ASP.NET.....

D8 was, somewhat, buggy in ASP.NET support. (Lost HTML code...) So far in D2k5 it looks great, and no HTML code lost so far. Will soon make a better test, because this is for me a main issue.

Still 29 day left.....

Tuesday, November 23, 2004

VCL.NET or Winforms, that is the question

Here a summary of links concerning the issue 'Why VCL.NET?':
Danny Thorpe: Why VCL.NET?
Borland: Overview ofVCL.NET?
Craig Stuntz: Choosing between VCL.NET and Winforms

Craig's article is an overview of considerations on using either VCL.NET and Winforms, reading it you might conclude that VCL.NET is not such a bad choice, because Winforms will disappear when Avalon comes in. So why bather converting your applications to Winforms?

Monday, November 22, 2004

ASP.NET: Positioning dynamic created controls

As shown in previous blog entry's it is pretty easy to create controls in runtime using ASP.NET.
Positioning this controls can be done using the Style property. In fact you can set your css style properties for the control.

This example shows how to create an image control in runtime and position it absolute at a given position.

MyImage := Image.Create;
MyImage.ImageUrl := 'images/test.gif';
MyImage.ID := 'myimage';
MyImage.Style['Position'] := 'Absolute';
MyImage.Style['Top'] := '400px';
MyImage.Style['Left'] := '100px';

ASP.NET: A reference to a webuser controls

Using webusercontrols gives great flexibility in building websites. Especially when you use in a dynamic way as shown in an early blog.

In designtime, however, you can not find a reference to a webusercontrol. In other words you won't find it in the control list of the object inspector. I'm not sure that this is common logic, however the solution is quit simple.

With the function FindControl, you can make a reference to a control and set it's properties.

procedure TWebForm1.SetMyWebUserControl;
var wuc : TWebUserControl1;
wuc := FindControl('UserControl1') As TWebUserControl1;
If Assigned(wuc) then begin // Make sure it is there!
wuc.content := 'Got you!';

Where 'UserControl1' is the ID of the webusercontrol on the page.

ASP.NET: Web user controls, the dynamic way

One of the issues to overcome using and off course ASP.NET was how can I create my special webuser control dynamicaly in runtime.

First off all you'll have to add the unit, containing the webusercontrol to your uses clause.
The following code shows how you can add it:

procedure TWebForm1.AddWuControl;
var wu : TMyWebUserControl;
wu := TMyWebUserControl(LoadControl('MyWebuserControl.ascx'));

Quit simple isn't it?
I generally use this technique when a repeater gets to complicated. Justing looping a recordset (? Ok DataReader) and create controls on a specific panel.

Sunday, November 21, 2004

D2005 Architect Trial download available

At the Borland download site, you can now download Delphi 2005.

Have fun! :-)

There is also a great reviewers guide with all the new, and existing stuff in Delphi 2005 .
You can get it at the Borland site here.

Monday, October 25, 2004

Why is Delphi 2005 a must have upgrade

Michael Swindell talks on his blog about why you should upgrade to Delphi 2005.
It is a great summary of all the new stuff in Delphi 2005.

Thursday, October 21, 2004

Delphi 2005 launch in Amsterdam

Today was the Delphi 2005 launch in Amsterdam.

It was a blast! At least 300 people (I guess, it was pretty crowded I did not count them....) enjoyed several workshops about Delphi 2005.

Jason Vokes(Borland) talked about the software delivery optimization from a helicopter view and Borlands vision on that matter.
The second speaker was Bob Swart aka Dr. Bob 42 who showed all the new IDE stuff like SyncEdit(very sexy editing as he named it) , refactoring and unit testing.
After the break Thomas Huijer (Oosterkamp) talked about the Delphi ADO.NET advantage. And he build, on the fly, a multitier application with the new BDP components DataSync, Datahub and remote server/connection. And that all without one line of code!!
Micha Somers(Borland) showed the improved ASP.NET IDE and some cool new DBWeb controls. He also showed ECO II in combination with ASP.NET

Well after a re-engineered SQL Northwind ECO Model Driven Application, complete working, again (with autoforms and drag an drop and undo/redo) without minimum coding I was convinced:

The future of software development will be model driven.

OK the auto generated application is not, what we call, a real world application, but it sure shows the power of the ECO/UML technology.
At the end of the afternoon a Delphi 2005 Architect edition was raffled under the participants.
Well I guess it was not my lucky day :(

It was a very intresting afternoon and Delphi 2005 sure looks great and is a must have upgrade!!

Friday, October 15, 2004

Delphi 2005 is out there....

Borland announced this week the release of Delphi 2005.
And it really looks great!
Delphi 2005 offers a multi personalty IDE offering development in the Delphi and C# language for Win32, .NET Winforms and ASP.NET development.
So now we can develop both Win32 application and .NET applications in one IDE.

Thursday, October 14, 2004

New blog

Well I finally have a real 'atom feeded' blog now.

I will continue blogging here, and if possible merge the two blogs in time. I guess I could post to my old blog and then update the atom feed for this blog, so that it would be in sync. Well I will have to work out......

This blog will have blogs, mainly about the Delphi development tool, my own experiences, and links to other Delphi resources.

Use an image as your UIBarButtonItem

Using an image as your UIBarButtonItem in your navigationcontroller bar can only be achieved by using a common UIButton as the BarButtonItem...