X-Git-Url: http://Server1/repobrowser/?p=xestiaab%2F.git;a=blobdiff_plain;f=source%2Fcontacteditor%2FfrmContactEditorPicture.cpp;h=1600bb081da91d2c472efc4e1e227f97c6d43a1f;hp=905e3ad468b56d285fd8ad0c9b7a6d80650c092c;hb=ada42724cf083b0a311cf22260485d61516c25c8;hpb=45729fca56479bd9158486e0cda0c4a94b4dd1dc diff --git a/source/contacteditor/frmContactEditorPicture.cpp b/source/contacteditor/frmContactEditorPicture.cpp index 905e3ad..1600bb0 100644 --- a/source/contacteditor/frmContactEditorPicture.cpp +++ b/source/contacteditor/frmContactEditorPicture.cpp @@ -1,3 +1,21 @@ +// frmContactEditorPicture.cpp - frmContactEditorPicture 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 "frmContactEditorPicture.h" #include @@ -11,30 +29,29 @@ #include "../common/base64.h" #include "../common/mime.h" - frmContactEditorPicture::frmContactEditorPicture( wxWindow* parent ) : frmContactEditorPictureADT( parent ) { + + // Setup the window. + EditorMode = FALSE; - sliPriority->Disable(); + priorityCtrl = new XABPriorityCtrl(tabGeneral); + szrGeneral->Add(priorityCtrl, 1, wxEXPAND, 5); + szrGeneral->Layout(); cmbType->Append(wxT("")); cmbType->Append(_("Home")); cmbType->Append(_("Work")); -} - -void frmContactEditorPicture::EnablePriority( wxCommandEvent& event ) -{ - if (chkUsePref->IsChecked()){ - sliPriority->Enable(); - } else { - sliPriority->Disable(); - } + } void frmContactEditorPicture::ProcessData( wxCommandEvent& event ) { + + // Process data. + long ListCtrlIndex; if (EditorMode == FALSE){ @@ -144,9 +161,9 @@ void frmContactEditorPicture::ProcessData( wxCommandEvent& event ) // Setup Organisation Priority. - if (chkUsePref->IsChecked()){ + if (priorityCtrl->IsPriorityChecked()){ - PictureListPrefPtr->insert(std::make_pair(PictureListIndex, sliPriority->GetValue())); + PictureListPrefPtr->insert(std::make_pair(PictureListIndex, priorityCtrl->GetValue())); } else { @@ -168,7 +185,17 @@ void frmContactEditorPicture::ProcessData( wxCommandEvent& event ) coldata.SetId(PictureListIndex); coldata.SetData(PictureListIndex); - coldata.SetText(_("Picture")); + + if (PictureLogo == TRUE){ + + coldata.SetText(_("Picture")); + + } else { + + coldata.SetText(_("Logo")); + + } + ListCtrlIndex = PictureListCtrlPtr->InsertItem(coldata); if (strValue == _("Home")) { @@ -185,9 +212,9 @@ void frmContactEditorPicture::ProcessData( wxCommandEvent& event ) } - if (chkUsePref->IsChecked()){ + if (priorityCtrl->IsPriorityChecked()){ - PictureListCtrlPtr->SetItem(ListCtrlIndex, 2, wxString::Format(wxT("%i"), sliPriority->GetValue())); + PictureListCtrlPtr->SetItem(ListCtrlIndex, 2, wxString::Format(wxT("%i"), priorityCtrl->GetValue())); } @@ -220,9 +247,9 @@ void frmContactEditorPicture::ProcessData( wxCommandEvent& event ) PictureListPrefPtr->erase(PictureListIndex); - if (chkUsePref->IsChecked()){ + if (priorityCtrl->IsPriorityChecked()){ - PictureListPrefPtr->insert(std::make_pair(PictureListIndex, sliPriority->GetValue())); + PictureListPrefPtr->insert(std::make_pair(PictureListIndex, priorityCtrl->GetValue())); } else { @@ -240,12 +267,20 @@ void frmContactEditorPicture::ProcessData( wxCommandEvent& event ) return; } - PictureListCtrlPtr->SetItem(longSelected, 0, wxT("Picture")); + if (PictureLogo == TRUE){ + PictureListCtrlPtr->SetItem(longSelected, 0, _("Picture")); + + } else { + + PictureListCtrlPtr->SetItem(longSelected, 0, _("Logo")); + + } + PictureListCtrlPtr->SetItem(longSelected, 1, strValue); - if (chkUsePref->IsChecked()){ + if (priorityCtrl->IsPriorityChecked()){ - PictureListCtrlPtr->SetItem(longSelected, 2, wxString::Format(wxT("%i"), sliPriority->GetValue())); + PictureListCtrlPtr->SetItem(longSelected, 2, wxString::Format(wxT("%i"), priorityCtrl->GetValue())); } else { @@ -260,11 +295,18 @@ void frmContactEditorPicture::ProcessData( wxCommandEvent& event ) void frmContactEditorPicture::CloseWindow( wxCommandEvent& event ) { + + // Close this window. + this->Close(); + } void frmContactEditorPicture::SetEditorMode(bool EditMode) { + + // Set the editor mode. + // Set if the editor is adding or editing an address. // FALSE = Add // TRUE = Edit @@ -290,7 +332,8 @@ void frmContactEditorPicture::SetEditorMode(bool EditMode) striter = PictureListTypePtr->find(PictureListIndex); - if (striter->first == PictureListIndex){ + if (striter->first == PictureListIndex && + striter != PictureListTypePtr->end()){ strValue = striter->second; @@ -316,11 +359,11 @@ void frmContactEditorPicture::SetEditorMode(bool EditMode) intiter = PictureListPrefPtr->find(PictureListIndex); - if (intiter->first == PictureListIndex && intiter->second > 0){ + if (intiter->first == PictureListIndex && intiter->second > 0 && + intiter != PictureListPrefPtr->end()){ - sliPriority->SetValue(intiter->second); - sliPriority->Enable(); - chkUsePref->SetValue(TRUE); + priorityCtrl->SetValue(intiter->second); + priorityCtrl->EnablePriority(true); } @@ -338,9 +381,12 @@ void frmContactEditorPicture::SetupPointers(std::map *PictureL std::map *PictureListMediatype, std::map *PictureListPref, wxListCtrl *PictureListCtrl, - int PictureIndex ) + int PictureIndex, + bool PictureLogoIn ) { + // Setup the pointers. + PictureListPtr = PictureList; PictureListAltIDPtr = PictureListAltID; PictureListPIDPtr = PictureListPID; @@ -352,5 +398,6 @@ void frmContactEditorPicture::SetupPointers(std::map *PictureL PictureListPrefPtr = PictureListPref; PictureListCtrlPtr = PictureListCtrl; PictureListIndex = PictureIndex; + PictureLogo = PictureLogoIn; } \ No newline at end of file