X-Git-Url: http://Server1/repobrowser/?a=blobdiff_plain;f=source%2Fcontacteditor%2FfrmContactEditor.h;h=ef4b8f2b36e2e8c43aa359cb70e673089f8e86a7;hb=8fb3ab8465ad5d56a2405ec830e48954e254735c;hp=f623ac33986eb5dada2af6f60feb4601047bd0e1;hpb=37a8c4825046469ee843cdca30207400b5f14104;p=xestiaab%2F.git diff --git a/source/contacteditor/frmContactEditor.h b/source/contacteditor/frmContactEditor.h index f623ac3..ef4b8f2 100644 --- a/source/contacteditor/frmContactEditor.h +++ b/source/contacteditor/frmContactEditor.h @@ -1,6 +1,6 @@ // frmContactEditor.h - frmContactEditor form header. // -// (c) 2012-2015 Xestia Software Development. +// (c) 2012-2016 Xestia Software Development. // // This file is part of Xestia Address Book. // @@ -37,9 +37,11 @@ Subclass of frmContactEditorADT, which is generated by wxFormBuilder. #include "../common/etag.h" #include "../common/timers.h" -#include "../frmActivityMgr.h" +#include "../actmgr/frmActivityMgr.h" #include "../frmMain.h" +#include "cdo/ContactDataObject.h" + #define CE_NICKNAME wxT("Nickname") #define CE_ADDRESS wxT("Address") #define CE_EMAIL wxT("Email") @@ -84,63 +86,6 @@ public: void OnMusicEnd() { } bool GetPlayingStatus(){ return FilePlaying; } - -/* - void load(const sf::SoundBuffer& buffer) - { - // extract the audio samples from the sound buffer to our own container - m_samples.assign(buffer.getSamples(), buffer.getSamples() + buffer.getSampleCount()); - - // reset the current playing position - m_currentSample = 0; - - // initialize the base class - initialize(buffer.getChannelCount(), buffer.getSampleRate()); - } - - bool GetPlayingStatus(){ return FilePlaying; } - -private: - - virtual bool onGetData(Chunk& data) - { - // number of samples to stream every time the function is called; - // in a more robust implementation, it would rather be a fixed - // amount of time rather than an arbitrary number of samples - const int samplesToStream = 50000; - - // set the pointer to the next audio samples to be played - data.samples = &m_samples[m_currentSample]; - - // have we reached the end of the sound? - if (m_currentSample + samplesToStream <= m_samples.size()) - { - // end not reached: stream the samples and continue - data.sampleCount = samplesToStream; - m_currentSample += samplesToStream; - FilePlaying = TRUE; - return true; - } - else - { - // end of stream reached: stream the remaining samples and stop playback - data.sampleCount = m_samples.size() - m_currentSample; - m_currentSample = m_samples.size(); - FilePlaying = FALSE; - return false; - } - } - - virtual void onSeek(sf::Time TimeOffset) - { - // compute the corresponding sample index according to the sample rate and channel count - m_currentSample = static_cast(TimeOffset.asSeconds() * getSampleRate() * getChannelCount()); - } - - std::vector m_samples; - std::size_t m_currentSample; - - */ bool FilePlaying = TRUE; }; @@ -658,47 +603,108 @@ class frmContactEditor : public frmContactEditorADT void ResetSaveProcessData(); void ContactFileChanged( wxCommandEvent &event ); void ClearContact(); - - /* Functions for loading contacts */ - void LoadKind(wxString KindType); - void LoadMember(wxString MemberData, int *GroupCount); - void LoadFN(wxString wxSPropertySeg1, wxString wxSPropertySeg2, int *FNCount, - bool *FNProcessed, vCard *ContactData); - void LoadN(wxString wxSPropertySeg1, wxString wxSPropertySeg2, bool *NameProcessed, - vCard *ContactData); - void LoadNickname(wxString wxSpropertySeg1, wxString wxSPropertySeg2, - int *NicknameCount, vCard *ContactData); - void LoadGender(wxString wxSPropertySeg1, wxString wxSPropertySeg2, bool *GenderProcessed, - vCard *ContactData); - void LoadBDay(wxString wxSPropertySeg1, wxString wxSPropertySeg2, bool *BirthdayProcessed); - void LoadAnniversary(wxString wxSPropertySeg1, wxString wxSPropertySeg2, bool *AnniversaryProcessed); - void LoadTimeZone(wxString wxSPropertySeg1, wxString wxSPropertySeg2, int *TZCount); - void LoadADR(wxString wxSPropertySeg1, wxString wxSPropertySeg2, int *ADRCount); - void LoadEmail(wxString wxSPropertySeg1, wxString wxSPropertySeg2, int *ADRCount); - void LoadIM(wxString wxSPropertySeg1, wxString wxSPropertySeg2, int *IMPPCount); - void LoadTelephone(wxString wxSPropertySeg1, wxString wxSPropertySeg2, int *TelCount); - void LoadLanguage(wxString wxSPropertySeg1, wxString wxSPropertySeg2, int *LangCount); - void LoadGeo(wxString wxSProptertySeg1, wxString wxSPropertySeg2, int *GeoCount); - void LoadRelated(wxString wxSPropertySeg1, wxString wxSPropertySeg2, int *RelatedCount); - void LoadURL(wxString wxSPropertySeg1, wxString wxSPropertySeg2, int *URLCount); - void LoadTitle(wxString wxSPropertySeg1, wxString wxSPropertySeg2, int *TitleCount); - void LoadRole(wxString wxSPropertySeg1, wxString wxSPropertySeg2, int *RoleCount); - void LoadOrg(wxString wxSPropertySeg1, wxString wxSPropertySeg2, int *OrgCount); - void LoadNote(wxString wxSPropertySeg1, wxString wxSPropertySeg2, int *NoteCount); - void LoadCategory(wxString wxSPropertySeg1, wxString wxSPropertySeg2, int *CategoryCount); - void LoadPhoto(wxString wxSPropertySeg1, wxString wxSPropertySeg2, int *PhotoCount); - void LoadLogo(wxString wxSPropertySeg1, wxString wxSPropertySeg2, int *PhotoCount); - void LoadSound(wxString wxSPropertySeg1, wxString wxSPropertySeg2, int *SoundCount); - void LoadCalURI(wxString wxSPropertySeg1, wxString wxSPropertySeg2, int *CalAdrCount); - void LoadCalAdrURI(wxString wxSPropertySeg1, wxString wxSPropertySeg2, int *CalReqAdrCount); - void LoadCalFreeBusy(wxString wxSPropertySeg1, wxString wxSPropertySeg2, int *FreeBusyCount); - void LoadKey(wxString wxSPropertySeg1, wxString wxSPropertySeg2, int *KeyCount); + + void LoadKind(ContactKindType *KindType); + void LoadBirthday(wxString *BirthdayData, bool *BirthdayText); + void LoadAnniversary(wxString *AnniversaryData, bool *AnniversaryText); + void LoadGender(wxString *GenderComponent, wxString *GenderIdentity); + void LoadName(wxString *NameTitle, wxString *NameForename, + wxString *NameSurname, wxString *NameOtherNames, + wxString *NameSuffix); + void LoadMember(std::map *GroupList); + void LoadAddress(std::map *GeneralAddressList, + std::map *GeneralAddressListTown, + std::map *GeneralAddressListCounty, + std::map *GeneralAddressListPostCode, + std::map *GeneralAddressListPref, + std::map *HomeAddressList, + std::map *HomeAddressListTown, + std::map *HomeAddressListCounty, + std::map *HomeAddressListPostCode, + std::map *HomeAddressListPref, + std::map *BusinessAddressList, + std::map *BusinessAddressListTown, + std::map *BusinessAddressListCounty, + std::map *BusinessAddressListPostCode, + std::map *BusinessAddressListPref, + int *AddressCount); + + void LoadData(std::map *GeneralList, + std::map *GeneralListPref, + wxListCtrl *GeneralListCtrl, + std::map *HomeList, + std::map *HomeListPref, + wxListCtrl *HomeListCtrl, + std::map *BusinessList, + std::map *BusinessTZPref, + wxListCtrl *BusinessListCtrl, + int *DataCount); + + void LoadData(std::map *GeneralList, + std::map *GeneralListPref, + std::map *GeneralListType, + wxListCtrl *GeneralListCtrl, + std::map *HomeList, + std::map *HomeListPref, + std::map *HomeListType, + wxListCtrl *HomeListCtrl, + std::map *BusinessList, + std::map *BusinessListPref, + std::map *BusinessListType, + wxListCtrl *BusinessListCtrl, + int *DataCount); + + void LoadData(std::map *ItemList, + std::map *ItemListPref, + wxListCtrl *ItemCtrl, + int *DataCount); + + void LoadData(std::map *ItemList, + std::map *ItemListPref, + std::map *ItemListType, + wxListCtrl *ItemCtrl, + int *DataCount); + + void LoadData(wxString ItemName, + std::map *ItemList, + std::map *ItemListPref, + std::map *ItemListType, + std::map *ItemListDataType, + wxListCtrl *ItemCtrl, + int *DataCount); + + void LoadPictureData(wxString ItemName, + std::map *ItemList, + std::map *ItemListPref, + std::map *ItemListType, + wxListCtrl *ItemCtrl, + int *DataCount); + + void LoadVendorData(std::map *ItemListPEN, + std::map *ItemListElement, + wxListCtrl *ItemCtrl, + int *DataCount); + + void LoadXTokenData(std::map *ItemListTokens, + wxListCtrl *ItemCtrl, + int *DataCount); + + void LoadData(std::map *ItemList, + wxComboBox *ItemCtrl); + + void LoadRelatedData(std::map *ItemList, + std::map *ItemListPref, + std::map *ItemListType, + wxListCtrl *ItemCtrl, + int *DataCount); int intValueSeek = 1; bool IsGroup = FALSE; /* Items on General Tab */ + ContactDataObject ContactEditorData; + wxString NameTitle; wxString NameForename; wxString NameSurname;