X-Git-Url: http://Server1/repobrowser/?p=xestiaab%2F.git;a=blobdiff_plain;f=source%2Fcontacteditor%2FfrmContactEditorLanguages.cpp;h=64305ae16924948fdec439491134d896e9477ef3;hp=06936f5e86c705a81658cd0fb5692da532845c9e;hb=ada42724cf083b0a311cf22260485d61516c25c8;hpb=45729fca56479bd9158486e0cda0c4a94b4dd1dc diff --git a/source/contacteditor/frmContactEditorLanguages.cpp b/source/contacteditor/frmContactEditorLanguages.cpp index 06936f5..64305ae 100644 --- a/source/contacteditor/frmContactEditorLanguages.cpp +++ b/source/contacteditor/frmContactEditorLanguages.cpp @@ -1,3 +1,21 @@ +// frmContactEditorLanguages.cpp - frmContactEditorLanguages 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 "frmContactEditorLanguages.h" #include "../common/textprocessing.h" #include @@ -6,17 +24,14 @@ frmContactEditorLanguages::frmContactEditorLanguages( wxWindow* parent ) : frmContactEditorLanguagesADT( parent ) { + + // Setup the window. + EditorMode = FALSE; - sliPriority->Disable(); -} - -void frmContactEditorLanguages::EnablePriority( wxCommandEvent& event ) -{ - if (chkUsePref->IsChecked()){ - sliPriority->Enable(); - } else { - sliPriority->Disable(); - } + priorityCtrl = new XABPriorityCtrl(tabGeneral); + szrGeneral->Add(priorityCtrl, 1, wxEXPAND, 5); + szrGeneral->Layout(); + } void frmContactEditorLanguages::SetEditorMode(bool EditMode, SectionType SectType) @@ -56,11 +71,11 @@ void frmContactEditorLanguages::SetEditorMode(bool EditMode, SectionType SectTyp intiter = LanguageListPrefPtr->find(LanguageListIndex); - if (intiter->first == LanguageListIndex && intiter->second > 0){ + if (intiter->first == LanguageListIndex && intiter->second > 0 && + intiter != LanguageListPrefPtr->end()){ - sliPriority->SetValue(intiter->second); - sliPriority->Enable(); - chkUsePref->SetValue(TRUE); + priorityCtrl->SetValue(intiter->second); + priorityCtrl->EnablePriority(true); } @@ -72,6 +87,8 @@ void frmContactEditorLanguages::SetEditorMode(bool EditMode, SectionType SectTyp void frmContactEditorLanguages::ProcessAction( wxCommandEvent& event ) { + // Process the action. + long ListCtrlIndex; if (EditorMode == FALSE){ @@ -102,9 +119,9 @@ void frmContactEditorLanguages::ProcessAction( wxCommandEvent& event ) // Add Language priority. - if (chkUsePref->IsChecked()){ + if (priorityCtrl->IsPriorityChecked()){ - LanguageListPrefPtr->insert(std::make_pair(LanguageListIndex, sliPriority->GetValue())); + LanguageListPrefPtr->insert(std::make_pair(LanguageListIndex, priorityCtrl->GetValue())); } else { @@ -121,9 +138,9 @@ void frmContactEditorLanguages::ProcessAction( wxCommandEvent& event ) coldata.SetText(txtLanguage->GetValue()); ListCtrlIndex = LanguageListCtrlPtr->InsertItem(coldata); - if (chkUsePref->IsChecked()){ + if (priorityCtrl->IsPriorityChecked()){ - LanguageListCtrlPtr->SetItem(ListCtrlIndex, 1, wxString::Format(wxT("%i"), sliPriority->GetValue())); + LanguageListCtrlPtr->SetItem(ListCtrlIndex, 1, wxString::Format(wxT("%i"), priorityCtrl->GetValue())); } @@ -142,9 +159,9 @@ void frmContactEditorLanguages::ProcessAction( wxCommandEvent& event ) LanguageListPrefPtr->erase(LanguageListIndex); - if (chkUsePref->IsChecked()){ + if (priorityCtrl->IsPriorityChecked()){ - LanguageListPrefPtr->insert(std::make_pair(LanguageListIndex, sliPriority->GetValue())); + LanguageListPrefPtr->insert(std::make_pair(LanguageListIndex, priorityCtrl->GetValue())); } else { @@ -162,9 +179,9 @@ void frmContactEditorLanguages::ProcessAction( wxCommandEvent& event ) LanguageListCtrlPtr->SetItem(longSelected, 0, txtLanguage->GetValue()); - if (chkUsePref->IsChecked()){ + if (priorityCtrl->IsPriorityChecked()){ - LanguageListCtrlPtr->SetItem(longSelected, 1, wxString::Format(wxT("%i"), sliPriority->GetValue())); + LanguageListCtrlPtr->SetItem(longSelected, 1, wxString::Format(wxT("%i"), priorityCtrl->GetValue())); } else { @@ -208,4 +225,5 @@ void frmContactEditorLanguages::SetupPointers(std::map *LanguageL LanguageListPrefPtr = LanguageListPref; LanguageListCtrlPtr = LanguageListCtrl; LanguageListIndex = LanguageIndex; + } \ No newline at end of file