X-Git-Url: http://Server1/repobrowser/?a=blobdiff_plain;f=source%2FfrmPreferences.cpp;h=c9623e022068dcbe9dca5a8cc32958848ad967d5;hb=2cdadb5395d22642039184f48a8bfb880f4e7f30;hp=716fc7a35c687a3fe27ecc9389fbf6c2a9739821;hpb=08422295fa6a0695f6cd6d2da90b560342bec79f;p=xestiaab%2F.git diff --git a/source/frmPreferences.cpp b/source/frmPreferences.cpp index 716fc7a..c9623e0 100644 --- a/source/frmPreferences.cpp +++ b/source/frmPreferences.cpp @@ -43,6 +43,7 @@ frmPreferencesADT( parent ) wxMemoryInputStream astream(icons_accinet_png, sizeof(icons_accinet_png)); wxMemoryInputStream bstream(icons_acclocal_png, sizeof(icons_acclocal_png)); + wxMemoryInputStream cstream(icons_accunsupported_png, sizeof(icons_accunsupported_png)); wxImage icons_accinet_png(astream, wxBITMAP_TYPE_PNG); wxBitmap AccInet(icons_accinet_png, -1); @@ -53,9 +54,15 @@ frmPreferencesADT( parent ) wxBitmap AccNIcon(icons_acclocal_png, -1); wxIcon wxIAccNIcon; wxIAccNIcon.CopyFromBitmap(AccNIcon); + + wxImage icons_accunsupported_png(cstream, wxBITMAP_TYPE_PNG); + wxBitmap AccUIcon(icons_accunsupported_png, -1); + wxIcon wxIAccUIcon; + wxIAccUIcon.CopyFromBitmap(AccUIcon); AccountID = AccImgList->Add(wxIAccNIcon); AccountNetID = AccImgList->Add(wxIAccInet); + AccountUnsupportedID = AccImgList->Add(wxIAccUIcon); NbtPreferences->RemovePage(1); @@ -125,14 +132,27 @@ void frmPreferences::ModifyABAccount( wxCommandEvent& event ) long lstAccountsIndex = -1; wxString AccFilename = GetAccountsFile(); wxString AccName; + wxString AccType; wxFileConfig *cfgfile = new wxFileConfig("", "", AccFilename); - + // Get the account name. lstAccountsIndex = lstAccounts->GetNextItem(lstAccountsIndex, wxLIST_NEXT_ALL, wxLIST_STATE_SELECTED); + + // Check that the account type is a supported account type. + + AccType = preferences->accounts.GetAccountType((int)lstAccountsIndex); + + if (AccType != "CardDAV" && AccType != "carddav" && + AccType != "Local" && AccType != "local"){ + + wxMessageBox(_("Cannot modify the selected account settings as the account type is unsupported."), _("Unsupported account type"), wxICON_ERROR); + return; + + } AccName = preferences->accounts.GetAccountName((int)lstAccountsIndex); @@ -226,6 +246,10 @@ void frmPreferences::DeleteABAccount( wxCommandEvent& event ) AccountDirFull.Append(wxT("carddav")); + } else { + + AccountDirFull.Append(AccountType.Lower()); + } lstAccounts->DeleteItem(lstAccountsIndex); @@ -254,6 +278,9 @@ void frmPreferences::DeleteABAccount( wxCommandEvent& event ) } + btnAccountModify->Enable(FALSE); + btnAccountDelete->Enable(FALSE); + } void frmPreferences::LoadPreferences( wxInitDialogEvent& event ) @@ -329,21 +356,6 @@ void frmPreferences::ReloadAccounts(){ accountscol2.SetWidth(96); lstAccounts->InsertColumn(2,accountscol2); - /*accountscol1.SetId(1); - accountscol1.SetText(_("")); - accountscol1.SetWidth(32); - lstAccounts->InsertColumn(1,accountscol1); - - accountscol2.SetId(2); - accountscol2.SetText(_("Name")); - accountscol2.SetWidth(224); - lstAccounts->InsertColumn(2,accountscol2); - - accountscol3.SetId(3); - accountscol3.SetText(_("Type")); - accountscol3.SetWidth(96); - lstAccounts->InsertColumn(3,accountscol3);*/ - wxString AccType; for (int i = 0; i < preferences->accounts.GetCount() ; i++){ @@ -359,19 +371,16 @@ void frmPreferences::ReloadAccounts(){ col0.SetImage(AccountID); + } else { + + col0.SetImage(AccountUnsupportedID); + } - - //col0.SetText( wxString::Format(wxT("%i"),i) ); - //col0.SetText(preferences.accounts.GetAccountName(i)); long itemindex = lstAccounts->InsertItem( col0 ); - //AccType = preferences.accounts.GetAccountType(i); - //AccType.Trim(); - lstAccounts->SetItem(itemindex, 1, preferences->accounts.GetAccountName(i)); lstAccounts->SetItem(itemindex, 2, preferences->accounts.GetAccountType(i)); - //lstAccounts->SetItem(itemindex, 3, AccType); }