Download Now
Forums

    TRect record

    The following is a listing of an TRectI record type.








    { TRectI }
    
      TRectI = record
      private
        function GetEmpty: Boolean;
        procedure SetTop(Value: Integer);
        procedure SetLeft(Value: Integer);
        function GetRight: Integer;
        procedure SetRight(Value: Integer);
        function GetBottom: Integer;
        procedure SetBottom(Value: Integer);
        function GetSize: TPointI;
        function GetTopLeft: TPointI;
        function GetBottomLeft: TPointI;
        function GetBottomRight: TPointI;
        function GetTopRight: TPointI;
        function GetMidPoint: TPointI;
      public
        X, Y, Width, Height: Integer;
        class operator Implicit(const Value: TRectI): TRect;
        class operator Implicit(const Value: TRect): TRectI;
        class operator Equal(const A, B: TRectI): Boolean;
        class operator NotEqual(const A, B: TRectI): Boolean;
        class function Create: TRectI; overload; static;
        class function Create(Size: TPointI): TRectI; overload; static;
        class function Create(W, H: Integer): TRectI; overload; static;
        class function Create(X, Y, W, H: Integer): TRectI; overload; static;
        function Equals(const Value: TRectI): Boolean;
        function Contains(X, Y: Integer): Boolean; overload;
        function Contains(const P: TPointI): Boolean; overload;
        procedure Center(X, Y: Integer); overload;
        procedure Center(const P: TPointI); overload;
        procedure Inflate(X, Y: Integer); overload;
        procedure Inflate(const P: TPointI); overload;
        procedure Offset(X, Y: Integer); overload;
        procedure Offset(const P: TPointI); overload;
        property Empty: Boolean read GetEmpty;
        property Left: Integer read X write SetLeft;
        property Top: Integer read Y write SetTop;
        property Right: Integer read GetRight write SetRight;
        property Bottom: Integer read GetBottom write SetBottom;
        property Size: TPointI read GetSize;
        property TopLeft: TPointI read GetTopLeft;
        property BottomLeft: TPointI read GetBottomLeft;
        property BottomRight: TPointI read GetBottomRight;
        property TopRight: TPointI read GetTopRight;
        property MidPoint: TPointI read GetMidPoint;
      end;
      PRectI = ^TRectI;