X-Git-Url: http://Server1/repobrowser/?a=blobdiff_plain;f=source%2Fcontacteditor%2FfrmContactEditorTelephone.cpp;h=974151cb6f8f98f308247e34b92db363758c0c26;hb=3159e29c4807453311bcc8f90207ca74fb130863;hp=29da821dbebde3a81bceaa6e1b95330789fb3c11;hpb=da64d37d0a13895554e4ad945c46dd0af6d1c0e6;p=xestiaab%2F.git diff --git a/source/contacteditor/frmContactEditorTelephone.cpp b/source/contacteditor/frmContactEditorTelephone.cpp index 29da821..974151c 100644 --- a/source/contacteditor/frmContactEditorTelephone.cpp +++ b/source/contacteditor/frmContactEditorTelephone.cpp @@ -175,7 +175,9 @@ void frmContactEditorTelephone::ProcessAction( wxCommandEvent& event ) } - TelephoneListTypePtr->insert(std::make_pair(TelephoneListIndex, strTelTypes)); + TelephoneListTypePtr->insert(std::make_pair(TelephoneListIndex, strTelTypes)); + + TelephoneListTypeInfoPtr->insert(std::make_pair(TelephoneListIndex, strTelTypes)); // Add Telephone Priority. @@ -351,6 +353,9 @@ void frmContactEditorTelephone::ProcessAction( wxCommandEvent& event ) TelephoneListTypePtr->erase(TelephoneListIndex); TelephoneListTypePtr->insert(std::make_pair(TelephoneListIndex, strTelTypes)); + TelephoneListTypeInfoPtr->erase(TelephoneListIndex); + TelephoneListTypeInfoPtr->insert(std::make_pair(TelephoneListIndex, strTelTypes)); + // Edit the Telephone Priority. TelephoneListPrefPtr->erase(TelephoneListIndex); @@ -439,13 +444,19 @@ void frmContactEditorTelephone::SetEditorMode(bool EditMode, SectionType SectTyp // Get the phone types in. - striter = TelephoneListTypePtr->find(TelephoneListIndex); + + if (TelephoneListTypeInfoPtr->find(TelephoneListIndex) != + TelephoneListTypeInfoPtr->end()){ + + striter = TelephoneListTypeInfoPtr->find(TelephoneListIndex); - if (striter->first == TelephoneListIndex){ + if (striter->first == TelephoneListIndex){ - strValue = striter->second; + strValue = striter->second; - } + } + + } wxStringTokenizer TelephonePrefToken (strValue, wxT(",")); @@ -511,7 +522,8 @@ void frmContactEditorTelephone::SetEditorMode(bool EditMode, SectionType SectTyp intiter = TelephoneListPrefPtr->find(TelephoneListIndex); - if (intiter->first == TelephoneListIndex && intiter->second > 0){ + if (intiter->first == TelephoneListIndex && intiter->second > 0 && + intiter != TelephoneListPrefPtr->end()){ sliPriority->SetValue(intiter->second); sliPriority->Enable(); @@ -529,6 +541,7 @@ void frmContactEditorTelephone::SetupPointers(std::map *Telephone std::map *TelephoneListAltID, std::map *TelephoneListPID, std::map *TelephoneListType, + std::map *TelephoneListTypeInfo, std::map *TelephoneListTokens, std::map *TelephoneListPref, wxListCtrl *TelephoneListCtrl, @@ -539,6 +552,7 @@ void frmContactEditorTelephone::SetupPointers(std::map *Telephone TelephoneListAltIDPtr = TelephoneListAltID; TelephoneListPIDPtr = TelephoneListPID; TelephoneListTypePtr = TelephoneListType; + TelephoneListTypeInfoPtr = TelephoneListTypeInfo; TelephoneListTokensPtr = TelephoneListTokens; TelephoneListPrefPtr = TelephoneListPref; TelephoneListCtrlPtr = TelephoneListCtrl;