home *** CD-ROM | disk | FTP | other *** search
/ Prima Shareware 3 / DuCom_Prima-Shareware-3_cd1.bin / PROGRAMO / delphi / TPOP3 / POP3.INT < prev    next >
Encoding:
Text File  |  1996-04-26  |  2.3 KB  |  82 lines

  1. unit Pop3;
  2.  
  3. interface
  4.  
  5. uses
  6.   SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls,
  7.   Forms, Dialogs, Winsock, ExtCtrls, MailBase, MsgUtils, MailUtil;
  8.  
  9. type
  10.   TEncoding = (etUU,etMIME);
  11.  
  12.   TPOP3Status = (psIdle,psLogIn,psConnecting,
  13.              psRetrieving,psDeleting,psLogOut,psCancel,psTimeOut);
  14.  
  15.   TMailMessage = class
  16.   protected
  17.     Headers : TStrings;
  18.     TempLines : TStrings;
  19.   public
  20.     From : string;
  21.     Subject : string;
  22.     Size : LongInt;
  23.     Body : TMemoryStream;
  24.     constructor Create;
  25.     destructor Destroy; override;
  26.     procedure FillBody(AStream : TStream);
  27.     procedure FillFields;
  28.   end;
  29.  
  30.   TPOP3 = class(TMailBase)
  31.   private
  32.     { Private declarations }
  33.     FUserName : string;
  34.     FPassword : string;
  35.     FTotalMessages : Integer;
  36.     FTotalOctets : LongInt;
  37.     FStatus : TPOP3Status;
  38.     FProgress : Integer;
  39.     FOnStatusChange : TNotifyEvent;
  40.     FOnProgress : TNotifyEvent;
  41.     procedure DoStatusChange(Sender : TObject);
  42.     procedure DoProgress(Sender : TObject);
  43.   protected
  44.     { Protected declarations }
  45.     ControlOn : boolean;
  46.     WSInitCount : Integer;
  47.     procedure SendLine(const s : string);
  48.     procedure RecvLine(var s : string);
  49.     procedure RecvBody(SL : TStream; FullSize : LongInt);
  50.     procedure ReInit; override;
  51.   public
  52.     { Public declarations }
  53.     MailMessages : TStrings;
  54.     constructor Create(AOwner : TComponent); override;
  55.     destructor Destroy; override;
  56.     procedure Cancel; override;
  57.     procedure Open; override;
  58.     procedure LogIn;
  59.     procedure GetStatistics;
  60.     procedure LogOut;
  61.     procedure GetMessages;
  62.     procedure DeleteMessages;
  63.     property TotalMessages : Integer read FTotalMessages;
  64.     property TotalOctets : LongInt read FTotalOctets;
  65.     property Status : TPOP3Status read FStatus;
  66.     property Progress : Integer read FProgress;
  67.   published
  68.     { Published declarations }
  69.     property UserName : string read FUserName write FUserName;
  70.     property Password : string read FPassword write FPassword;
  71.     property DefaultPort;
  72.     property OnStatusChange : TNotifyEvent read FOnStatusChange
  73.                                  write FOnStatusChange;
  74.     property OnProgress : TNotifyEvent read FOnProgress
  75.                                 write FOnProgress;
  76.   end;
  77.  
  78. procedure Register;
  79.  
  80. implementation
  81.  
  82.