TRectD = record
Left, Top, Right, Bottom: double;
function IsEmpty: Boolean;
//Normalize: Returns True if either Top & Bottom or Left & Right are swappped
function Normalize: Boolean;
function Width: double;
function Height: double;

For Delphi compilers that don't support record methods (ie compilers prior to D2006), this structure is defined instead as an old style object instead of a record.