mirror of
				https://gitlab.com/freepascal.org/lazarus/lazarus.git
				synced 2025-11-04 09:19:50 +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.
 | 
						|
 |