Home | News | Projects | Releases
Bugs | RFE | Repositories | Help
Added property value, ALTID, LANGUAGE source, header and unit tests for the N vCard...
[xestiaab/.git] / source / contacteditor / ContactDataObject.h
index dda7238..ead05b8 100644 (file)
 #include <wx/wx.h>
 #include <wx/file.h>
 #include <map>
+#include <wx/tokenzr.h>
+
 #include "../vcard/vcard.h"
+#include "../common/textprocessing.h"
 
 enum ContactLoadStatus{
        CONTACTLOAD_UNITTESTFAIL = -1,
+       CONTACTLOAD_OK,
        CONTACTLOAD_FILEMISSING,
        CONTACTLOAD_FILEERROR,
-       CONTACTLOAD_FILEINVALIDFORMAT
+       CONTACTLOAD_FILEINVALIDFORMAT,
+       CONTACTLOAD_FILEBASESPECFAIL
+};
+
+enum ContactKindType{
+       CONTACTKIND_NONE,
+       CONTACTKIND_INDIVIDUAL,
+       CONTACTKIND_GROUP,
+       CONTACTKIND_ORGANISATION,
+       CONTACTKIND_LOCATION
 };
 
 class ContactDataObject{
 
        public:
 
+       ContactKindType ContactKind = CONTACTKIND_NONE;
+
        /* Items on General Tab */
 
        wxString NameTitle;
@@ -453,6 +468,7 @@ class ContactDataObject{
        std::map<int, wxString> GroupsListAltID;
        std::map<int, wxString> GroupsListPID;
        std::map<int, wxString> GroupsListType;
+       std::map<int, wxString> GroupsListMediaType;
        std::map<int, wxString> GroupsListTokens;
        std::map<int, int> GroupsListPref;
        
@@ -542,7 +558,16 @@ class ContactDataObject{
        // Subroutines.
        
        ContactLoadStatus LoadFile(wxString Filename);
+       void ProcessKind(wxString KindData);
+       void ProcessMember(wxString PropertySeg1, wxString PropertySeg2, int *GroupCount);
+       void ProcessFN(wxString PropertySeg1, wxString PropertySeg2, int *FNCount);
+       void ProcessN(wxString PropertySeg1, wxString PropertySeg2);
 
 };
 
+void SplitValues(wxString *PropertyLine, 
+       std::map<int,int> *SplitPoints, 
+       std::map<int,int> *SplitLength, 
+       int intSize);
+
 #endif
\ No newline at end of file
Xestia Software Development
Yn Maystri
© 2006 - 2019 Xestia Software Development
Software

Xestia Address Book
Xestia Calendar
Development

Xestia Gelforn
Everything else

About
News
Privacy Policy