-rw-r--r-- | kabc/addresseedialog.cpp | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/kabc/addresseedialog.cpp b/kabc/addresseedialog.cpp index e89584d..3e7b72c 100644 --- a/kabc/addresseedialog.cpp +++ b/kabc/addresseedialog.cpp | |||
@@ -39,16 +39,17 @@ | |||
39 | using namespace KABC; | 39 | using namespace KABC; |
40 | 40 | ||
41 | AddresseeItem::AddresseeItem( QListView *parent, const Addressee &addressee ) : | 41 | AddresseeItem::AddresseeItem( QListView *parent, const Addressee &addressee ) : |
42 | QListViewItem( parent ), | 42 | QListViewItem( parent ), |
43 | mAddressee( addressee ) | 43 | mAddressee( addressee ) |
44 | { | 44 | { |
45 | setText( Name,addressee.realName()); | 45 | setText( Name,addressee.realName()); |
46 | setText( Email, addressee.preferredEmail() ); | 46 | setText( Email, addressee.preferredEmail() ); |
47 | setText( Category, addressee.categories().join(";") ); | ||
47 | } | 48 | } |
48 | 49 | ||
49 | QString AddresseeItem::key( int column, bool ) const | 50 | QString AddresseeItem::key( int column, bool ) const |
50 | { | 51 | { |
51 | 52 | ||
52 | if (column == Email) { | 53 | if (column == Email) { |
53 | QString value = text(Email); | 54 | QString value = text(Email); |
54 | int val = value.findRev("@"); | 55 | int val = value.findRev("@"); |
@@ -75,49 +76,59 @@ AddresseeDialog::AddresseeDialog( QWidget *parent, bool multiple ) : | |||
75 | QWidget *listWidget = new QWidget( mMiniSplitter ); | 76 | QWidget *listWidget = new QWidget( mMiniSplitter ); |
76 | 77 | ||
77 | QBoxLayout *listLayout = new QVBoxLayout (listWidget) ; | 78 | QBoxLayout *listLayout = new QVBoxLayout (listWidget) ; |
78 | //topLayout->addLayout( listLayout ); | 79 | //topLayout->addLayout( listLayout ); |
79 | 80 | ||
80 | mAddresseeList = new KListView( listWidget ); | 81 | mAddresseeList = new KListView( listWidget ); |
81 | mAddresseeList->addColumn( i18n("Name") ); | 82 | mAddresseeList->addColumn( i18n("Name") ); |
82 | mAddresseeList->addColumn( i18n("Email") ); | 83 | mAddresseeList->addColumn( i18n("Email") ); |
84 | mAddresseeList->addColumn( i18n("Category") ); | ||
83 | mAddresseeList->setAllColumnsShowFocus( true ); | 85 | mAddresseeList->setAllColumnsShowFocus( true ); |
84 | mAddresseeList->setFullWidth( true ); | 86 | mAddresseeList->setFullWidth( true ); |
85 | listLayout->addWidget( mAddresseeList ); | 87 | listLayout->addWidget( mAddresseeList ); |
86 | connect( mAddresseeList, SIGNAL( doubleClicked( QListViewItem * ) ), | 88 | connect( mAddresseeList, SIGNAL( doubleClicked( QListViewItem * ) ), |
87 | SLOT( slotOk() ) ); | 89 | SLOT( slotOk() ) ); |
88 | 90 | ||
89 | mAddresseeEdit = new QLineEdit( listWidget ); | 91 | QHBox* searchBox = new QHBox ( listWidget ); |
92 | mAddresseeEdit = new QLineEdit( searchBox ); | ||
90 | connect( mAddresseeEdit, SIGNAL( returnPressed() ), | 93 | connect( mAddresseeEdit, SIGNAL( returnPressed() ), |
91 | SLOT( loadAddressBook() ) ); | 94 | SLOT( loadAddressBook() ) ); |
92 | mAddresseeEdit->setFocus(); | 95 | mAddresseeEdit->setFocus(); |
96 | QPushButton *searchButton = new QPushButton( i18n("Search!"), searchBox ); | ||
97 | connect ( searchButton, SIGNAL( clicked() ), SLOT( loadAddressBook() ) ); | ||
93 | 98 | ||
94 | listLayout->addWidget( mAddresseeEdit ); | 99 | listLayout->addWidget( searchBox ); |
95 | 100 | ||
96 | if ( mMultiple ) { | 101 | if ( mMultiple ) { |
97 | //QBoxLayout *selectedLayout = new QVBoxLayout; | 102 | //QBoxLayout *selectedLayout = new QVBoxLayout; |
98 | //topLayout->addLayout( selectedLayout ); | 103 | //topLayout->addLayout( selectedLayout ); |
99 | //topLayout->setSpacing( spacingHint() ); | 104 | //topLayout->setSpacing( spacingHint() ); |
100 | 105 | ||
101 | QVBox *selectedGroup = new QVBox( mMiniSplitter ); | 106 | QVBox *selectedGroup = new QVBox( mMiniSplitter ); |
102 | new QLabel ( i18n("Selected:"), selectedGroup ); | 107 | new QLabel ( i18n("Selected:"), selectedGroup ); |
103 | //selectedLayout->addWidget( selectedGroup ); | 108 | //selectedLayout->addWidget( selectedGroup ); |
104 | 109 | ||
105 | mSelectedList = new KListView( selectedGroup ); | 110 | mSelectedList = new KListView( selectedGroup ); |
106 | mSelectedList->addColumn( i18n("Name") ); | 111 | mSelectedList->addColumn( i18n("Name") ); |
107 | mSelectedList->addColumn( i18n("Email") ); | 112 | mSelectedList->addColumn( i18n("Email") ); |
108 | mSelectedList->setAllColumnsShowFocus( true ); | 113 | mSelectedList->setAllColumnsShowFocus( true ); |
109 | mSelectedList->setFullWidth( true ); | 114 | mSelectedList->setFullWidth( true ); |
110 | connect( mSelectedList, SIGNAL( doubleClicked( QListViewItem * ) ), | 115 | //connect( mSelectedList, SIGNAL( doubleClicked( QListViewItem * ) ), |
116 | // SLOT( removeSelected() ) ); | ||
117 | connect( mSelectedList, SIGNAL( clicked( QListViewItem * ) ), | ||
118 | SLOT( removeSelected() ) ); | ||
119 | connect( mSelectedList, SIGNAL( returnPressed( QListViewItem *) ), | ||
111 | SLOT( removeSelected() ) ); | 120 | SLOT( removeSelected() ) ); |
112 | 121 | ||
122 | #if 0 | ||
113 | QPushButton *unselectButton = new QPushButton( i18n("Unselect"), selectedGroup ); | 123 | QPushButton *unselectButton = new QPushButton( i18n("Unselect"), selectedGroup ); |
114 | connect ( unselectButton, SIGNAL( clicked() ), SLOT( removeSelected() ) ); | 124 | connect ( unselectButton, SIGNAL( clicked() ), SLOT( removeSelected() ) ); |
115 | 125 | ||
126 | #endif | ||
116 | connect( mAddresseeList, SIGNAL( clicked( QListViewItem * ) ), | 127 | connect( mAddresseeList, SIGNAL( clicked( QListViewItem * ) ), |
117 | SLOT( addSelected( QListViewItem * ) ) ); | 128 | SLOT( addSelected( QListViewItem * ) ) ); |
118 | connect( mAddresseeList, SIGNAL( returnPressed( QListViewItem * ) ), | 129 | connect( mAddresseeList, SIGNAL( returnPressed( QListViewItem * ) ), |
119 | SLOT( selectNextItem( QListViewItem * ) ) ); | 130 | SLOT( selectNextItem( QListViewItem * ) ) ); |
120 | 131 | ||
121 | } | 132 | } |
122 | 133 | ||
123 | mAddressBook = StdAddressBook::self( true ); | 134 | mAddressBook = StdAddressBook::self( true ); |
@@ -159,16 +170,17 @@ void AddresseeDialog::loadAddressBook() | |||
159 | re.setPattern( "*"+ mAddresseeEdit->text() + "*"); | 170 | re.setPattern( "*"+ mAddresseeEdit->text() + "*"); |
160 | 171 | ||
161 | AddressBook::Iterator it; | 172 | AddressBook::Iterator it; |
162 | for( it = mAddressBook->begin(); it != mAddressBook->end(); ++it ) { | 173 | for( it = mAddressBook->begin(); it != mAddressBook->end(); ++it ) { |
163 | if ( (*it).uid().left(2) == "la" && (*it).uid().left(19) == QString("last-syncAddressee-") ) | 174 | if ( (*it).uid().left(2) == "la" && (*it).uid().left(19) == QString("last-syncAddressee-") ) |
164 | continue; | 175 | continue; |
165 | QString name = (*it).realName(); | 176 | QString name = (*it).realName(); |
166 | name += (*it).preferredEmail(); | 177 | name += (*it).preferredEmail(); |
178 | name += (*it).categories().join(";"); | ||
167 | #if QT_VERSION >= 0x030000 | 179 | #if QT_VERSION >= 0x030000 |
168 | if (re.search(name) != -1) | 180 | if (re.search(name) != -1) |
169 | #else | 181 | #else |
170 | if (re.match(name) != -1) | 182 | if (re.match(name) != -1) |
171 | #endif | 183 | #endif |
172 | AddresseeItem *item = new AddresseeItem( mAddresseeList, (*it) ); | 184 | AddresseeItem *item = new AddresseeItem( mAddresseeList, (*it) ); |
173 | } | 185 | } |
174 | } | 186 | } |