Home | News | Projects | Releases
Bugs | RFE | Repositories | Help
frmContactEditor(*): Call Layout on szrGeneral after adding priorty control
[xestiaab/.git] / source / contacteditor / frmContactEditorNotes.cpp
index e07687a..ee8693c 100644 (file)
 // with Xestia Address Book. If not, see <http://www.gnu.org/licenses/>
 
 #include "frmContactEditorNotes.h"
-#include "../common/textprocessing.h"
-#include <wx/tokenzr.h>
 
 frmContactEditorNotes::frmContactEditorNotes( wxWindow* parent )
 :
 frmContactEditorNotesADT( parent )
 {
+       
+       // Setup the editor window.
+       
        EditorMode = FALSE;
-       sliPriority->Disable();
-}
-
-void frmContactEditorNotes::EnablePriority( wxCommandEvent& event )
-{
-       if (chkUsePref->IsChecked()){
-               sliPriority->Enable();
-       } else {
-               sliPriority->Disable();
+       priorityCtrl = new XABPriorityCtrl(tabPriority);
+       szrPriority->Add(priorityCtrl, 1, wxEXPAND, 5);
+       szrPriority->Layout();
+       
+       // Setup the language combo box.
+       
+       std::vector<std::string> LanguageCodeList = GetLanguageCodeList();
+       
+       wxArrayString LanguageList;
+       
+       for (auto LanguageItem : LanguageCodeList){
+               
+               LanguageList.Add((wxString)LanguageItem, 1);
+               
        }
+       
+       cmbLanguage->Append(LanguageList);
+       
 }
 
 void frmContactEditorNotes::ProcessAction( wxCommandEvent& event )
 {
+       
+       // Process action.
+       
        long ListCtrlIndex;
        
        if (EditorMode == FALSE){
@@ -70,9 +82,9 @@ void frmContactEditorNotes::ProcessAction( wxCommandEvent& event )
                
                // Add note priority.
                
-               if (chkUsePref->IsChecked()){
+               if (priorityCtrl->IsPriorityChecked()){
                
-                       NotesListPrefPtr->insert(std::make_pair(NotesListIndex, sliPriority->GetValue()));
+                       NotesListPrefPtr->insert(std::make_pair(NotesListIndex, priorityCtrl->GetValue()));
                
                } else {
                
@@ -103,9 +115,9 @@ void frmContactEditorNotes::ProcessAction( wxCommandEvent& event )
                coldata.SetText(txtNote->GetValue());
                ListCtrlIndex = NotesListCtrlPtr->InsertItem(coldata);
                
-               if (chkUsePref->IsChecked()){
+               if (priorityCtrl->IsPriorityChecked()){
                
-                       NotesListCtrlPtr->SetItem(ListCtrlIndex, 1, wxString::Format(wxT("%i"), sliPriority->GetValue()));
+                       NotesListCtrlPtr->SetItem(ListCtrlIndex, 1, wxString::Format(wxT("%i"), priorityCtrl->GetValue()));
                
                }
                
@@ -128,9 +140,9 @@ void frmContactEditorNotes::ProcessAction( wxCommandEvent& event )
                
                NotesListPrefPtr->erase(NotesListIndex);
                
-               if (chkUsePref->IsChecked()){
+               if (priorityCtrl->IsPriorityChecked()){
                
-                       NotesListPrefPtr->insert(std::make_pair(NotesListIndex, sliPriority->GetValue()));
+                       NotesListPrefPtr->insert(std::make_pair(NotesListIndex, priorityCtrl->GetValue()));
                
                } else {
                
@@ -166,9 +178,9 @@ void frmContactEditorNotes::ProcessAction( wxCommandEvent& event )
                
                NotesListCtrlPtr->SetItem(longSelected, 0, txtNote->GetValue());
                
-               if (chkUsePref->IsChecked()){
+               if (priorityCtrl->IsPriorityChecked()){
                
-                       NotesListCtrlPtr->SetItem(longSelected, 1, wxString::Format(wxT("%i"), sliPriority->GetValue()));
+                       NotesListCtrlPtr->SetItem(longSelected, 1, wxString::Format(wxT("%i"), priorityCtrl->GetValue()));
                
                } else {
                
@@ -184,6 +196,9 @@ void frmContactEditorNotes::ProcessAction( wxCommandEvent& event )
 
 void frmContactEditorNotes::SetEditorMode(bool EditMode, SectionType SectType)
 {
+       
+       // Set the editor mode.
+       
        // Set if the editor is adding or editing an address.
        // FALSE = Add
        // TRUE = Edit
@@ -220,6 +235,8 @@ void frmContactEditorNotes::SetEditorMode(bool EditMode, SectionType SectType)
                
                striter = NotesListLangPtr->find(NotesListIndex);
                
+               strValue.clear();
+               
                if (striter->first == NotesListIndex &&
                        striter != NotesListLangPtr->end()){
                
@@ -236,9 +253,8 @@ void frmContactEditorNotes::SetEditorMode(bool EditMode, SectionType SectType)
                if (intiter->first == NotesListIndex && intiter->second > 0 &&
                        intiter != NotesListPrefPtr->end()){
                
-                       sliPriority->SetValue(intiter->second);
-                       sliPriority->Enable();
-                       chkUsePref->SetValue(TRUE);
+                       priorityCtrl->SetValue(intiter->second);
+                       priorityCtrl->EnablePriority(true);
                
                }
                
@@ -250,7 +266,11 @@ void frmContactEditorNotes::SetEditorMode(bool EditMode, SectionType SectType)
 
 void frmContactEditorNotes::CloseWindow( wxCommandEvent& event )
 {
+       
+       // Close the window.
+       
        this->Close();
+       
 }
 
 
@@ -265,6 +285,8 @@ void frmContactEditorNotes::SetupPointers(std::map<int, wxString> *NotesList,
        int NotesIndex )
 {
 
+       // Setup the pointers.
+       
        NotesListPtr = NotesList;
        NotesListLangPtr = NotesListLang;
        NotesListAltIDPtr = NotesListAltID;
Xestia Software Development
Yn Maystri
© 2006 - 2019 Xestia Software Development
Software

Xestia Address Book
Xestia Calendar
Development

Xestia Gelforn
Everything else

About
News
Privacy Policy