Update of /cvsroot/mahogany/M/src/gui
In directory usw-pr-cvs1:/tmp/cvs-serv21563/src/gui

Modified Files:
        wxComposeView.cpp 
Log Message:
reworked Message::GetAllHeaders() API once again, now we have HeaderIterator class 
which solves the problem with multiple headers

Index: wxComposeView.cpp
===================================================================
RCS file: /cvsroot/mahogany/M/src/gui/wxComposeView.cpp,v
retrieving revision 1.298
retrieving revision 1.299
diff -b -u -2 -r1.298 -r1.299
--- wxComposeView.cpp   2 Sep 2002 18:40:35 -0000       1.298
+++ wxComposeView.cpp   3 Sep 2002 12:28:18 -0000       1.299
@@ -1124,27 +1124,26 @@
    ignoredHeaders.Add("CONTENT-TRANSFER-ENCODING");
 
-   wxArrayString names, values;
-   size_t count = msg->GetAllHeaders(&names, &values);
-   for ( size_t n = 0; n < count; n++ )
+   wxString nameWithCase, value;
+   HeaderIterator hdrIter = msg->GetHeaderIterator();
+   while ( hdrIter.GetNext(&nameWithCase, &value) )
    {
-      wxString name = names[n].Upper();
+      wxString name = nameWithCase.Upper();
 
       // test for some standard headers which need special treatment
       if ( name == "SUBJECT" )
-         cv->SetSubject(values[n]);
+         cv->SetSubject(value);
       else if ( name == "FROM" )
-         cv->SetFrom(values[n]);
+         cv->SetFrom(value);
       else if ( name == "TO" )
-         cv->AddTo(values[n]);
+         cv->AddTo(value);
       else if ( name == "CC" )
-         cv->AddCc(values[n]);
+         cv->AddCc(value);
       else if ( name == "BCC" )
-         cv->AddBcc(values[n]);
+         cv->AddBcc(value);
       else if ( ignoredHeaders.Index(name) == wxNOT_FOUND )
       {
          // compare case sensitively here as we always write HEADER_IS_DRAFT in
          // the same case
-         name = names[n];
-         if ( name == HEADER_IS_DRAFT )
+         if ( nameWithCase == HEADER_IS_DRAFT )
          {
             cv->SetDraft(msg);
@@ -1169,9 +1168,8 @@
             }
          }
-         else if ( name == HEADER_GEOMETRY )
+         else if ( nameWithCase == HEADER_GEOMETRY )
          {
             // restore the composer geometry
             wxFrame *frame = cv->GetFrame();
-            String value = values[n];
             if ( value == GEOMETRY_ICONIZED )
             {
@@ -1198,5 +1196,5 @@
          else // just another header
          {
-            cv->AddHeaderEntry(names[n], values[n]);
+            cv->AddHeaderEntry(nameWithCase, value);
          }
       }



-------------------------------------------------------
This sf.net email is sponsored by: OSDN - Tired of that same old
cell phone?  Get a new here for FREE!
https://www.inphonic.com/r.asp?r=sourceforge1&refcode1=vs3390
_______________________________________________
Mahogany-cvsupdates mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/mahogany-cvsupdates

Reply via email to