Browse Source

* Bugfix of procedrual variables of methods (Bug report 2588)

carl 22 years ago
parent
commit
f09c1e8e63
1 changed files with 58 additions and 0 deletions
  1. 58 0
      tests/tbs/tb0455.pp

+ 58 - 0
tests/tbs/tb0455.pp

@@ -0,0 +1,58 @@
+{$IFDEF FPC}
+{$MODE DELPHI}
+{$ENDIF}
+uses windows,classes;
+
+
+type
+    TNotifyEventA    = procedure (Sender:TObject) of object;
+
+   TwolBrushes = class
+   public
+     FOnChange  :TNotifyEventA;
+     procedure Wol_Changed;
+     property OnChange  :TNotifyEventA      read FOnChange      Write FOnChange;
+   end;
+   
+   
+   TWOLBetaObject = class
+   public
+     mylocalvar : integer;
+     constructor Create(AOwner:TOBject);
+   protected
+     procedure DoBrushChange(Sender:TObject);
+   private
+     FBrush : TWolBrushes;
+   end;
+   
+   
+  procedure TWOLBetaObject.DoBrushChange(Sender:TObject);
+  var DC:HDC;
+  begin
+    mylocalvar:=12;
+    WriteLn('OK!');
+  end;
+  
+  
+  procedure TwolBrushes.WOL_Changed;
+  begin
+    if Assigned(FOnChange) then FOnChange(Self);
+  end;
+  
+   
+   
+   
+constructor TWOLBetaObject.Create(AOwner:TOBject);
+   begin
+     Inherited Create;
+     FBrush         :=TWOLBrushes.Create;
+     FBrush.OnChange:=DoBrushChange;
+   end;
+       
+
+var 
+ cla1: TWolbetaObject;
+begin
+ cla1:=TWolBetaObject.create(nil);
+ cla1.FBrush.WOL_Changed;
+end.