Changeset 38 for branches/overos/UWindow.pas
- Timestamp:
- Jun 30, 2023, 3:36:57 PM (11 months ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/overos/UWindow.pas
r24 r38 1 1 unit UWindow; 2 2 3 {$mode delphi}{$H+}4 5 3 interface 6 4 7 5 uses 8 Classes, SysUtils, fgl, UTypes, UMouse, UControls, UGraphics;6 Classes, SysUtils, Generics.Collections, UTypes, UMouse, UControls, UGraphics; 9 7 10 8 type … … 96 94 public 97 95 Canvas: TCanvas; 98 Windows: T FPGObjectList<TWindow>;96 Windows: TObjectList<TWindow>; 99 97 Size: TSize; 100 98 procedure Paint; … … 116 114 begin 117 115 if FWindow = AValue then Exit; 118 Canvas.Free;116 FreeAndNil(Canvas); 119 117 FWindow := AValue; 120 118 Canvas := TCanvasWindow.Create; … … 173 171 destructor TTitleBar.Destroy; 174 172 begin 175 ButtonClose.Free;176 ButtonMaximize.Free;177 ButtonMinimize.Free;173 FreeAndNil(ButtonClose); 174 FreeAndNil(ButtonMaximize); 175 FreeAndNil(ButtonMinimize); 178 176 inherited; 179 177 end; … … 293 291 begin 294 292 inherited; 295 Canvas.Free;293 FreeAndNil(Canvas); 296 294 Canvas := TCanvasWindow.Create; 297 295 TCanvasWindow(Canvas).Window := Self; … … 304 302 begin 305 303 Visible := False; 306 TitleBar.Free;304 FreeAndNil(TitleBar); 307 305 Screen := nil; 308 inherited Destroy;306 inherited; 309 307 end; 310 308 … … 448 446 constructor TScreen.Create; 449 447 begin 450 Windows := T FPGObjectList<TWindow>.Create;451 Windows. FreeObjects := False;448 Windows := TObjectList<TWindow>.Create; 449 Windows.OwnsObjects := False; 452 450 Canvas := TCanvas.Create; 453 451 end; … … 459 457 for I := Windows.Count - 1 downto 0 do 460 458 Windows[I].Free; 461 Windows.Free;462 Canvas.Free;463 inherited Destroy;459 FreeAndNil(Windows); 460 FreeAndNil(Canvas); 461 inherited; 464 462 end; 465 463
Note:
See TracChangeset
for help on using the changeset viewer.