Home | News | Projects | Releases
Bugs | RFE | Repositories | Help
odthelpbrowser: ODT Help Browser implemented
[xestiaab/.git] / source / search / frmSearchAccounts.cpp
1 // frmSearchAccounts.cpp - frmSearchAccounts form.
2 //
3 // (c) 2012-2015 Xestia Software Development.
4 //
5 // This file is part of Xestia Address Book.
6 //
7 // Xestia Address Book is free software: you can redistribute it and/or modify
8 // it under the terms of the GNU General Public License as published by the
9 // Free Software Foundation, version 3 of the license.
10 //
11 // Xestia Address Book is distributed in the hope that it will be useful,
12 // but WITHOUT ANY WARRANTY; without even the implied warranty of
13 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 // GNU General Public License for more details.
15 //
16 // You should have received a copy of the GNU General Public License along
17 // with Xestia Address Book. If not, see <http://www.gnu.org/licenses/>
19 #include "frmSearchAccounts.h"
20 #include "../frmMain.h"
22 frmSearchAccounts::frmSearchAccounts( wxWindow* parent )
23 :
24 frmSearchAccountsADT( parent )
25 {
27 }
29 frmSearchAccounts::~frmSearchAccounts(){        
31 }
33 void frmSearchAccounts::LoadSearchAccounts(std::map<wxString, bool> *SearchAccounts,
34         std::map<wxString, wxString> *SearchAccountsList)
35 {
37         // Load the list of accounts to the accounts list in the window.
38         
39         SAPtr = SearchAccounts;
40         SALPtr = SearchAccountsList;
41         std::map<wxString, wxString>::iterator SALiter;
42         wxString AccDir;
43         
44         // Load the search accounts into the Checklist.
45         
46         wxArrayString AccList;
47         
48         for (std::map<wxString, bool>::iterator iter = SAPtr->begin(); 
49                 iter != SAPtr->end(); ++iter){
50                 
51                 SALiter = SALPtr->find(iter->first);
52                 
53                 AccList.Add(SALiter->second, 1);
54                 
55         }
57         chlAccounts->Append(AccList);
59         // Check if each account is selected.
60         
61         for (int i = 0; i < chlAccounts->GetCount(); i++){
62         
63                 AccDir = chlAccounts->GetString(i);
64                 
65                 for (std::map<wxString, bool>::iterator iter = SAPtr->begin(); 
66                         iter != SAPtr->end(); ++iter){
67                 
68                         SALiter = SALPtr->find(iter->first);
70                         if (AccDir == SALiter->second){
71                         
72                                 chlAccounts->Check(i, iter->second);
73                         
74                         }
75                 
76                 }
77         
78         }
80 }
82 void frmSearchAccounts::UpdateSelectedAccounts( wxCommandEvent& event )
83 {
85         // Process each of the items in the Checklist box.
86         // Compare each with the ones in the std::map
87         // and adjust the bool value accordingly.
88         
89         wxString AccDir;
90         std::map<wxString, wxString>::iterator SALiter;
91         
92         for (int i = 0; i < chlAccounts->GetCount(); i++){
93         
94                 AccDir = chlAccounts->GetString(i);
95                 
96                 for (std::map<wxString, bool>::iterator iter = SAPtr->begin(); 
97                         iter != SAPtr->end(); ++iter){
98                 
99                         SALiter = SALPtr->find(iter->first);
101                         if (AccDir == SALiter->second){
102                         
103                                 iter->second = chlAccounts->IsChecked(i);
104                         
105                         }
106                 
107                 }
108         
109         }
110         
111         this->Close();
115 void frmSearchAccounts::CloseWindow( wxCommandEvent& event )
117         
118         // Close this window.
119         
120         this->Close();
121         
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