mirror of
				https://gitlab.com/freepascal.org/lazarus/lazarus.git
				synced 2025-10-31 22:10:55 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			79 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			ObjectPascal
		
	
	
	
	
	
			
		
		
	
	
			79 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			ObjectPascal
		
	
	
	
	
	
| unit PQTEventMonitor;
 | |
| 
 | |
| {$mode objfpc}{$H+}
 | |
| 
 | |
| interface
 | |
| 
 | |
| uses
 | |
|   Classes,PQEventMonitor,ExtCtrls;
 | |
| 
 | |
| 
 | |
| type
 | |
| 
 | |
|   { TPQTEventMonitor }
 | |
| 
 | |
|   TPQTEventMonitor=class(TPQEventMonitor)
 | |
|   private
 | |
|     Timer:TTimer;
 | |
|     function GetPollInterval: integer;
 | |
|     procedure OnTimer(Sender: TObject);
 | |
|     procedure SetPollInterval(AValue: integer);
 | |
|   public
 | |
|     constructor Create(AOwner: TComponent); override;
 | |
|     destructor Destroy; override;
 | |
|     procedure RegisterEvents; override;
 | |
|     procedure UnRegisterEvents; override;
 | |
|   published
 | |
|     property PollInterval:integer read GetPollInterval write SetPollInterval default 500;
 | |
|   end;
 | |
| 
 | |
| implementation
 | |
| 
 | |
| 
 | |
| { TPQTEventMonitor }
 | |
| 
 | |
| procedure TPQTEventMonitor.SetPollInterval(AValue: integer);
 | |
| begin
 | |
|   if Timer.Interval=AValue then Exit;
 | |
|   Timer.Interval:=AValue;
 | |
| end;
 | |
| 
 | |
| function TPQTEventMonitor.GetPollInterval: integer;
 | |
| begin
 | |
|   result:=Timer.Interval;
 | |
| end;
 | |
| 
 | |
| procedure TPQTEventMonitor.OnTimer(Sender: TObject);
 | |
| begin
 | |
|   Poll;
 | |
| end;
 | |
| 
 | |
| constructor TPQTEventMonitor.Create(AOwner: TComponent);
 | |
| begin
 | |
|   inherited Create(AOwner);
 | |
|   Timer:=TTImer.Create(self);
 | |
|   Timer.Interval:=500;
 | |
|   Timer.Enabled:=false;
 | |
|   Timer.OnTimer:=@OnTimer;
 | |
| end;
 | |
| 
 | |
| destructor TPQTEventMonitor.Destroy;
 | |
| begin
 | |
|   inherited Destroy;
 | |
| end;
 | |
| 
 | |
| procedure TPQTEventMonitor.RegisterEvents;
 | |
| begin
 | |
|   inherited RegisterEvents;
 | |
|   Timer.Enabled:=true;
 | |
| end;
 | |
| 
 | |
| procedure TPQTEventMonitor.UnRegisterEvents;
 | |
| begin
 | |
|   Timer.Enabled:=false;
 | |
|   inherited UnRegisterEvents;
 | |
| end;
 | |
| 
 | |
| end.
 | |
| 
 | 
