X-Git-Url: http://Server1/repobrowser/?a=blobdiff_plain;f=source%2Fcontacteditor%2FfrmContactEditorKey.cpp;h=569b0c3ab766da74d31f73856d83c5abac3047cc;hb=c139f797277a0cd85fe9f0b6b8244b791e0cf9ab;hp=7234bbeb0821847ca6570dead178eb3d2802c34b;hpb=45729fca56479bd9158486e0cda0c4a94b4dd1dc;p=xestiaab%2F.git diff --git a/source/contacteditor/frmContactEditorKey.cpp b/source/contacteditor/frmContactEditorKey.cpp index 7234bbe..569b0c3 100644 --- a/source/contacteditor/frmContactEditorKey.cpp +++ b/source/contacteditor/frmContactEditorKey.cpp @@ -1,3 +1,21 @@ +// frmContactEditorKey.cpp - frmContactEditorKey form. +// +// (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 "frmContactEditorKey.h" #include #include "../common/textprocessing.h" @@ -19,12 +37,15 @@ frmContactEditorKeyADT( parent ) cmbKeyMainType->Append(_("URL")); cmbKeyMainType->Append(_("Key")); + cmbType->Append(""); cmbType->Append(_("Home")); cmbType->Append(_("Work")); cmbURL->Append(_("PGP Key")); cmbKeyType->Append(_("PGP Key")); + + cmbType->SetSelection(0); } @@ -92,7 +113,8 @@ void frmContactEditorKey::SetEditorMode(bool EditMode) striter = KeyListDataTypePtr->find(KeyListIndex); - if (striter->first == KeyListIndex){ + if (striter->first == KeyListIndex && + striter != KeyListDataTypePtr->end()){ strValue = striter->second; @@ -131,7 +153,8 @@ void frmContactEditorKey::SetEditorMode(bool EditMode) striter = KeyListDataTypePtr->find(KeyListIndex); - if (striter->first == KeyListIndex){ + if (striter->first == KeyListIndex && + striter != KeyListDataTypePtr->end()){ strValue = striter->second; @@ -147,7 +170,8 @@ void frmContactEditorKey::SetEditorMode(bool EditMode) striter = KeyListTypePtr->find(KeyListIndex); - if (striter->first == KeyListIndex){ + if (striter->first == KeyListIndex && + striter != KeyListTypePtr->end()){ strValue = striter->second; @@ -171,7 +195,8 @@ void frmContactEditorKey::SetEditorMode(bool EditMode) intiter = KeyListPrefPtr->find(KeyListIndex); - if (intiter->first == KeyListIndex && intiter->second > 0){ + if (intiter->first == KeyListIndex && intiter->second > 0 && + intiter != KeyListPrefPtr->end()){ sliPriority->SetValue(intiter->second); sliPriority->Enable(); @@ -225,7 +250,7 @@ void frmContactEditorKey::ProcessAction( wxCommandEvent& event ) wxString wxSb64orig = txtKeyData->GetValue(); std::string base64new = std::string(wxSb64orig.mb_str()); - std::string base64enc = base64_encode(reinterpret_cast(base64new.c_str()), base64new.length()); + std::string base64enc = base64_encode(reinterpret_cast(base64new.c_str()), (int)base64new.length()); wxString wxSb64key(base64enc.c_str(), wxConvUTF8); KeyListPtr->insert(std::make_pair(KeyListIndex, wxSb64key)); @@ -307,7 +332,7 @@ void frmContactEditorKey::ProcessAction( wxCommandEvent& event ) wxString wxSb64orig = txtKeyData->GetValue(); std::string base64new = std::string(wxSb64orig.mb_str()); - std::string base64enc = base64_encode(reinterpret_cast(base64new.c_str()), base64new.length()); + std::string base64enc = base64_encode(reinterpret_cast(base64new.c_str()), (int)base64new.length()); wxString wxSb64key(base64enc.c_str(), wxConvUTF8); KeyListPtr->erase(KeyListIndex);