Class TmdCustomWinPopup (unit mdMailSlot)

Inherits from

TmdCustomMailSlot

For backward compatibility Removed now when the TmdCustomMailSlot have a WaitThread build in! (* TmdAutoMailSlot = Class(TmdMailSlot) Private FTimer : TTimer; FMessageList : TStringList; FMessageAvail : TmsMessageAvail; Procedure TimerProc(Sender : TObject); Protected Procedure AddMessage(Const Msg : String); Function GetMessage : String; Procedure DoMessageAvail(Const Msg : String); Virtual; Public Constructor Create(AOwner : TComponent); Override; Procedure Open; Override; Procedure Close; Override; Published Property OnMessageAvail : TmsMessageAvail Read FMessageAvail Write FMessageAvail; end; *) ......................................................... TmdCustomWinPopup .........................................................

Constructors


Constructor Create(AOwner : TComponent);

.


Functions

Function Send(AServer, ASender, AReciever, AMsg : String) : Boolean;

New functions

Procedure DoMessageAvail(Const Msg : String);


Properties

property Slot : String


Events

event OnMessage : TwpMessage

Should be read only.

Variables

FMessage : TwpMessage;


FMessageCRC : String[4];


FMessageTicks : Integer;



Constructors


Constructor Create(AOwner : TComponent);

......................................................... TmdAutoMailSlot ......................................................... (* Constructor TmdAutoMailSlot.Create(AOwner : TComponent); Begin FTimer := NIL; FMessageList := NIL; Inherited Create(AOwner); end; Procedure TmdAutoMailSlot.AddMessage(Const Msg : String); Begin If FMessageList = NIL Then FMessageList := TStringList.Create; FMessageList.Add(Msg); end; Function TmdAutoMailSlot.GetMessage : String; Begin Result := ''; If FMessageList <> NIL Then Begin If FMessageList.Count > 0 Then Begin Result := FMessageList[0]; FMessageList.Delete(0); end; If FMessageList.Count = 0 Then Begin FMessageList.Free; FMessageList := NIL; end; end; end; Procedure TmdAutoMailSlot.Open; Begin Inherited Open; If Active AND (NOT (csDesigning IN ComponentState))Then Begin If FTimer = NIL Then FTimer := TTimer.Create(Self); FTimer.Interval := 1000; FTimer.OnTimer := TimerProc; end; end; Procedure TmdAutoMailSlot.Close; Begin If FTimer <> NIL Then FTimer.Free; FTimer := NIL; Inherited Close; end; Procedure TmdAutoMailSlot.TimerProc(Sender : TObject); Begin While Waiting > 0 do AddMessage(ReadNext); If (FMessageList <> NIL) AND (FMessageList.Count > 0) Then DoMessageAvail(GetMessage); end; Procedure TmdAutoMailSlot.DoMessageAvail(Const Msg : String); Begin If Assigned(FMessageAvail) Then FMessageAvail(Self, Msg); end; *) ......................................................... TmdCustomWinPopup ......................................................... Overriden functions


Functions


Function Send(AServer, ASender, AReciever, AMsg : String) : Boolean;

New functions


Procedure DoMessageAvail(Const Msg : String);


Properties


property Slot : String


Events


event OnMessage : TwpMessage

Should be read only...


Variables


FMessage : TwpMessage;


FMessageCRC : String[4];


FMessageTicks : Integer;