X-Git-Url: http://Server1/repobrowser/?a=blobdiff_plain;ds=sidebyside;f=source%2Fcontacteditor%2FfrmContactEditorCategory.cpp;h=53bcbd0c738513069e3d10de073dab9f828d59b0;hb=245ade988ed226ea8d86254c59f823626d32c77d;hp=4378c829e0bec4bfc02ec469d5bc6f74cb22a56e;hpb=45729fca56479bd9158486e0cda0c4a94b4dd1dc;p=xestiaab%2F.git
diff --git a/source/contacteditor/frmContactEditorCategory.cpp b/source/contacteditor/frmContactEditorCategory.cpp
index 4378c82..53bcbd0 100644
--- a/source/contacteditor/frmContactEditorCategory.cpp
+++ b/source/contacteditor/frmContactEditorCategory.cpp
@@ -1,3 +1,21 @@
+// frmContactEditorCategory.cpp - frmContactEditorCategory 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 "frmContactEditorCategory.h"
#include
#include "../common/textprocessing.h"
@@ -6,26 +24,24 @@ frmContactEditorCategory::frmContactEditorCategory( wxWindow* parent )
:
frmContactEditorCategoryADT( 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 frmContactEditorCategory::EnablePriority( wxCommandEvent& event )
-{
- if (chkUsePref->IsChecked()){
- sliPriority->Enable();
- } else {
- sliPriority->Disable();
- }
-}
-
void frmContactEditorCategory::ProcessAction( wxCommandEvent& event )
{
+ // Process action.
+
long ListCtrlIndex;
if (EditorMode == FALSE){
@@ -58,9 +74,9 @@ void frmContactEditorCategory::ProcessAction( wxCommandEvent& event )
// Setup Category Priority.
- if (chkUsePref->IsChecked()){
+ if (priorityCtrl->IsPriorityChecked()){
- CategoryListPrefPtr->insert(std::make_pair(CategoryListIndex, sliPriority->GetValue()));
+ CategoryListPrefPtr->insert(std::make_pair(CategoryListIndex, priorityCtrl->GetValue()));
} else {
@@ -77,9 +93,9 @@ void frmContactEditorCategory::ProcessAction( wxCommandEvent& event )
coldata.SetText(txtCategory->GetValue());
ListCtrlIndex = CategoryListCtrlPtr->InsertItem(coldata);
- if (chkUsePref->IsChecked()){
+ if (priorityCtrl->IsPriorityChecked()){
- CategoryListCtrlPtr->SetItem(ListCtrlIndex, 1, wxString::Format(wxT("%i"), sliPriority->GetValue()));
+ CategoryListCtrlPtr->SetItem(ListCtrlIndex, 1, wxString::Format(wxT("%i"), priorityCtrl->GetValue()));
}
@@ -115,9 +131,9 @@ void frmContactEditorCategory::ProcessAction( wxCommandEvent& event )
CategoryListPrefPtr->erase(CategoryListIndex);
- if (chkUsePref->IsChecked()){
+ if (priorityCtrl->IsPriorityChecked()){
- CategoryListPrefPtr->insert(std::make_pair(CategoryListIndex, sliPriority->GetValue()));
+ CategoryListPrefPtr->insert(std::make_pair(CategoryListIndex, priorityCtrl->GetValue()));
} else {
@@ -137,9 +153,9 @@ void frmContactEditorCategory::ProcessAction( wxCommandEvent& event )
CategoryListCtrlPtr->SetItem(longSelected, 0, txtCategory->GetValue());
- if (chkUsePref->IsChecked()){
+ if (priorityCtrl->IsPriorityChecked()){
- CategoryListCtrlPtr->SetItem(longSelected, 1, wxString::Format(wxT("%i"), sliPriority->GetValue()));
+ CategoryListCtrlPtr->SetItem(longSelected, 1, wxString::Format(wxT("%i"), priorityCtrl->GetValue()));
} else {
@@ -155,6 +171,9 @@ void frmContactEditorCategory::ProcessAction( wxCommandEvent& event )
void frmContactEditorCategory::SetEditorMode(bool EditMode)
{
+
+ // Set the editor mode.
+
// Set if the editor is adding or editing an address.
// FALSE = Add
// TRUE = Edit
@@ -195,7 +214,8 @@ void frmContactEditorCategory::SetEditorMode(bool EditMode)
striter = CategoryListTypePtr->find(CategoryListIndex);
- if (striter->first == CategoryListIndex){
+ if (striter->first == CategoryListIndex &&
+ striter != CategoryListTypePtr->end()){
strValue = striter->second;
@@ -219,11 +239,11 @@ void frmContactEditorCategory::SetEditorMode(bool EditMode)
intiter = CategoryListPrefPtr->find(CategoryListIndex);
- if (intiter->first == CategoryListIndex && intiter->second > 0){
+ if (intiter->first == CategoryListIndex && intiter->second > 0 &&
+ intiter != CategoryListPrefPtr->end()){
- sliPriority->SetValue(intiter->second);
- sliPriority->Enable();
- chkUsePref->SetValue(TRUE);
+ priorityCtrl->SetValue(intiter->second);
+ priorityCtrl->EnablePriority(true);
}
@@ -233,7 +253,11 @@ void frmContactEditorCategory::SetEditorMode(bool EditMode)
void frmContactEditorCategory::CloseWindow( wxCommandEvent& event )
{
+
+ // Close this window.
+
this->Close();
+
}
void frmContactEditorCategory::SetupPointers(std::map *CategoryList,
@@ -246,8 +270,9 @@ void frmContactEditorCategory::SetupPointers(std::map *CategoryLi
int CategoryIndex )
{
+ // Setup the pointers.
+
CategoryListPtr = CategoryList;
- //CategoryListSortAsPtr = CategoryListSortAs;
CategoryListAltIDPtr = CategoryListAltID;
CategoryListPIDPtr = CategoryListPID;
CategoryListTypePtr = CategoryListType;