// vcard34conv.h - vCard34Conv Object header // // (c) 2012-2015 Xestia Software Development. // // This file is part of Xestia Address Book. // // Xestia Address Book is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by the // Free Software Foundation, version 3 of the license. // // Xestia Address Book is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License along // with Xestia Address Book. If not, see #include #include #include #include #include "vcard.h" #ifndef VCARD34CONV_H #define VCARD34CONV_H class vCard34Conv{ private: wxArrayString SettingNames; wxArrayString SettingValues; int SettingCount; bool vCardBegin; bool vCardEnd; bool vCardFN; float vCardVersion; public: vCard34Conv(); bool ConvertToV3(wxString Filename, wxString *wxSData); bool ConvertToV4(wxString *wxSData, vCard *vCardOut); private: void SplitValues(wxString *PropertyLine, std::map *SplitPoints, std::map *SplitLength, int intSize); void SplitValuesData(wxString *PropertyLine, std::map *SplitPoints, std::map *SplitLength, int intSize, std::map *SplitData); void ConvertV4PropertyProc(wxString *wxSPropertyName, wxString *wxSPropertySeg1Ptr, wxString *wxSPropertySeg2Ptr, wxString *wxSPropertyPropValuesOut, wxString *wxSPropertyDataOut, wxString *wxSPropertyXVCard4Value, wxString *wxSPropertyDataNameOut, std::map *PropertyData, std::map *PropertyLock, bool ProcessItemData, bool *VCardV3Value, bool *XVCardV4Value); void ProcessCaptureStringsB () {} ; void ProcessCaptureStringsProc(wxString *strCapture); template void ProcessCaptureStringsB(StringCapture *string, Args*... args) { ProcessCaptureStringsProc(string); ProcessCaptureStringsB(args...); } template void ProcessCaptureStrings(Args*... args) { //int intSeekSelectedData = 0; ProcessCaptureStringsB(args...); } }; #endif