std::string base64dec;
std::map<int,std::string>::iterator initier;
+ std::map<int,wxString>::iterator pictypeiter;
initier = PicturesList.find(intSelectedData);
+ pictypeiter = PicturesListPictureType.find(intSelectedData);
base64dec = base64_decode(initier->second);
-
wxMemoryInputStream istream(base64dec.c_str(), (size_t)base64dec.size());
wxImage photo;
//wxMemoryInputStream istream(base64dec, (size_t)base64dec.size());
- if (!photo.LoadFile(istream, wxBITMAP_TYPE_ANY)){
+ wxPuts(wxT("PicType:") + pictypeiter->second);
+
+ if (pictypeiter->second == wxT("image/jpeg")){
- return;
+ if (!photo.LoadFile(istream, wxBITMAP_TYPE_JPEG)){
- }
+ return;
+
+ }
+
+ } else if (pictypeiter->second == wxT("image/png")){
+
+ if (!photo.LoadFile(istream, wxBITMAP_TYPE_PNG)){
+
+ return;
+
+ }
+
+ } else if (pictypeiter->second == wxT("image/gif")){
+
+ if (!photo.LoadFile(istream, wxBITMAP_TYPE_GIF)){
+
+ return;
+
+ }
+
+ } else {
+
+ return;
+ }
PictureImage = (wxBitmap)photo;
imgPicture->SetBitmap(PictureImage);
ContactData.Add(wxT("UID"), UIDToken, FALSE);
- // Generate ETag data for the contact if it does not exist.
- // If X-XAB-ETAG-ORIG exists, leave alone and update X-XAB-ETAG.
-
- srand (time(NULL));
+ // End the vCard File.
ContactData.Add(wxT("END"), wxT("VCARD"), FALSE);
#if defined(__HAIKU__)
//preffilename = wxT("noo");
+
+#elif defined(__APPLE__)
+
+ PrefDir = GetUserPrefDir();
+
+ wxStringTokenizer wSTFilename(wxSContactFilename, wxT("/"));
#elif defined(__WIN32__)
wxLIST_NEXT_ALL,
wxLIST_STATE_SELECTED);
+ *intSelectedData = (int)ListCtrlPtr->GetItemData(*longSelected);
+
if (*longSelected == -1){
return FALSE;
}
return TRUE;
}
- *intSelectedData = ListCtrlPtr->GetItemData(*longSelected);
-
}
void frmContactEditor::DeleteMapDataProcess(int IndexNum, std::map<int, std::string>* MapData){