Ignore:
Timestamp:
Dec 28, 2017, 1:14:31 AM (6 years ago)
Author:
chronos
Message:
  • Added: API function DrawFrame.
  • Fixed: Drawing position of TWindow frame.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Packages/Kernel/UScreen.pas

    r15 r16  
    1111  TScreen = class;
    1212
     13  { TScreenCanvas }
     14
    1315  TScreenCanvas = class(TCanvas)
    1416    Screen: TScreen;
     
    1618    procedure DrawLine(P1, P2: TPoint; Color: TColor); override;
    1719    procedure DrawRect(Rect: TRectangle; Color: TColor); override;
     20    procedure DrawFrame(Rect: TRectangle; Color: TColor); override;
    1821    procedure SetPixel(P: TPoint; Color: TColor); override;
    1922  end;
     
    7174end;
    7275
     76procedure TScreenCanvas.DrawFrame(Rect: TRectangle; Color: TColor);
     77var
     78  X, Y: Integer;
     79begin
     80  for Y := Rect.Top to Rect.Bottom do begin
     81    SetPixel(TPoint.Create(Rect.Left, Y), Color);
     82    SetPixel(TPoint.Create(Rect.Right, Y), Color);
     83  end;
     84  for X := Rect.Left to Rect.Right do begin
     85    SetPixel(TPoint.Create(X, Rect.Top), Color);
     86    SetPixel(TPoint.Create(X, Rect.Bottom), Color);
     87  end;
     88  Screen.VideoMemoryUpdated;
     89end;
     90
    7391procedure TScreenCanvas.SetPixel(P: TPoint; Color: TColor);
    7492begin
Note: See TracChangeset for help on using the changeset viewer.