Main Page   Modules   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

Fl_Mail_Message.h

00001 
00021 #ifndef __FL_MAIL_MESSAGE_H__
00022 #define __FL_MAIL_MESSAGE_H__
00023 
00024 #include <efltk/Fl_String.h>
00025 #include <efltk/Fl_String_List.h>
00026 #include <efltk/Fl_Ptr_List.h>
00027 
00028 class Fl_Mail_Message_Part;
00029 
00033 class Fl_Mail_Message_Part_List 
00034 {
00035     Fl_Ptr_List     m_messageParts;
00036 public:
00037     Fl_Mail_Message_Part_List() {}
00038     ~Fl_Mail_Message_Part_List() { clear(); }
00039 
00040     void clear();
00041     unsigned count() const { return m_messageParts.count(); }
00042 
00043     void add(Fl_Mail_Message_Part *mpart) { m_messageParts.append(mpart); }
00044 
00045     Fl_Mail_Message_Part& operator [] (unsigned i) { return *(Fl_Mail_Message_Part *)m_messageParts[i]; }
00046     const Fl_Mail_Message_Part& operator [] (unsigned i) const  { return *(Fl_Mail_Message_Part *)m_messageParts[i]; }
00047 };
00048 
00052 class Fl_Mail_Message_Part 
00053 {
00054     Fl_String_List              m_messageText;
00055     Fl_Mail_Message_Part_List   m_messageParts;
00056     Fl_String                        m_contentType;
00057     Fl_String                        m_contentTransferEncoding;
00058 protected:
00059     virtual void parse_headers(unsigned start,unsigned end) {}
00060     virtual void parse_part() {}
00061 public:
00062     Fl_Mail_Message_Part(const Fl_String_List& source,unsigned start,unsigned end);
00063     virtual ~Fl_Mail_Message_Part() {}
00064 };
00065 
00069 class Fl_Mail_Message : Fl_Mail_Message_Part 
00070 {
00071     Fl_String                       m_returnPath;
00072     Fl_String                       m_from;
00073     Fl_String                       m_to;
00074     Fl_String                       m_subject;
00075     Fl_String                       m_boundary;
00076     Fl_String                       m_date;
00077 public:
00078     Fl_Mail_Message(const Fl_String_List& source) : Fl_Mail_Message_Part(source,0,source.count()) {}
00079     virtual ~Fl_Mail_Message() {}
00080     virtual void parse_headers(unsigned start,unsigned end);
00081     virtual void parse_part();
00082 };
00083 
00084 #endif
00085 
00086 /***** $Id: Fl_Mail_Message.h,v 1.3 2003/05/09 15:17:51 parshin Exp $
00087  *     Project: eFLTK
00088  ***   This source code is released under GNU LGPL License
00089  *     Copyright (c) EDE Team, 2000-DWYRT  (DWYRT = Date When You Read This)
00090  ***** Equinox Desktop Environment, http://ede.sf.net */

Generated on Thu Jul 31 15:33:44 2003 for eFLTK by doxygen1.2.15