-rw-r--r-- | kabc/addresseedialog.cpp | 51 |
1 files changed, 27 insertions, 24 deletions
diff --git a/kabc/addresseedialog.cpp b/kabc/addresseedialog.cpp index 671787e..bda1b9e 100644 --- a/kabc/addresseedialog.cpp +++ b/kabc/addresseedialog.cpp | |||
@@ -1,351 +1,354 @@ | |||
1 | /* | 1 | /* |
2 | This file is part of libkabc. | 2 | This file is part of libkabc. |
3 | Copyright (c) 2001 Cornelius Schumacher <schumacher@kde.org> | 3 | Copyright (c) 2001 Cornelius Schumacher <schumacher@kde.org> |
4 | 4 | ||
5 | This library is free software; you can redistribute it and/or | 5 | This library is free software; you can redistribute it and/or |
6 | modify it under the terms of the GNU Library General Public | 6 | modify it under the terms of the GNU Library General Public |
7 | License as published by the Free Software Foundation; either | 7 | License as published by the Free Software Foundation; either |
8 | version 2 of the License, or (at your option) any later version. | 8 | version 2 of the License, or (at your option) any later version. |
9 | 9 | ||
10 | This library is distributed in the hope that it will be useful, | 10 | This library is distributed in the hope that it will be useful, |
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
13 | Library General Public License for more details. | 13 | Library General Public License for more details. |
14 | 14 | ||
15 | You should have received a copy of the GNU Library General Public License | 15 | You should have received a copy of the GNU Library General Public License |
16 | along with this library; see the file COPYING.LIB. If not, write to | 16 | along with this library; see the file COPYING.LIB. If not, write to |
17 | the Free Software Foundation, Inc., 59 Temple Place - Suite 330, | 17 | the Free Software Foundation, Inc., 59 Temple Place - Suite 330, |
18 | Boston, MA 02111-1307, USA. | 18 | Boston, MA 02111-1307, USA. |
19 | */ | 19 | */ |
20 | 20 | ||
21 | #include <qlayout.h> | 21 | #include <qlayout.h> |
22 | #include <qpushbutton.h> | 22 | #include <qpushbutton.h> |
23 | #include <qgroupbox.h> | 23 | #include <q3groupbox.h> |
24 | #include <qapplication.h> | 24 | #include <qapplication.h> |
25 | #include <qregexp.h> | 25 | #include <qregexp.h> |
26 | #include <qvbox.h> | 26 | #include <q3vbox.h> |
27 | #include <qlabel.h> | 27 | #include <qlabel.h> |
28 | //Added by qt3to4: | ||
29 | #include <Q3ValueList> | ||
30 | #include <Q3VBoxLayout> | ||
28 | 31 | ||
29 | #include <klocale.h> | 32 | #include <klocale.h> |
30 | #include <kdebug.h> | 33 | #include <kdebug.h> |
31 | #include <kglobalsettings.h> | 34 | #include <kglobalsettings.h> |
32 | 35 | ||
33 | #include "stdaddressbook.h" | 36 | #include "stdaddressbook.h" |
34 | 37 | ||
35 | #include "addresseedialog.h" | 38 | #include "addresseedialog.h" |
36 | #include "KDGanttMinimizeSplitter.h" | 39 | #include "KDGanttMinimizeSplitter.h" |
37 | //#include "addresseedialog.moc" | 40 | //#include "addresseedialog.moc" |
38 | 41 | ||
39 | using namespace KABC; | 42 | using namespace KABC; |
40 | 43 | ||
41 | AddresseeItem::AddresseeItem( QListView *parent, const Addressee &addressee ) : | 44 | AddresseeItem::AddresseeItem( Q3ListView *parent, const Addressee &addressee ) : |
42 | QListViewItem( parent ), | 45 | Q3ListViewItem( parent ), |
43 | mAddressee( addressee ) | 46 | mAddressee( addressee ) |
44 | { | 47 | { |
45 | setText( Name,addressee.realName()); | 48 | setText( Name,addressee.realName()); |
46 | setText( Email, addressee.preferredEmail() ); | 49 | setText( Email, addressee.preferredEmail() ); |
47 | setText( Category, addressee.categories().join(";") ); | 50 | setText( Category, addressee.categories().join(";") ); |
48 | } | 51 | } |
49 | 52 | ||
50 | QString AddresseeItem::key( int column, bool ) const | 53 | QString AddresseeItem::key( int column, bool ) const |
51 | { | 54 | { |
52 | 55 | ||
53 | if (column == Email) { | 56 | if (column == Email) { |
54 | QString value = text(Email); | 57 | QString value = text(Email); |
55 | int val = value.findRev("@"); | 58 | int val = value.findRev("@"); |
56 | return value.mid( val) + value.left( val ); | 59 | return value.mid( val) + value.left( val ); |
57 | } | 60 | } |
58 | return text(column).lower(); | 61 | return text(column).lower(); |
59 | } | 62 | } |
60 | 63 | ||
61 | AddresseeDialog::AddresseeDialog( QWidget *parent, bool multiple ) : | 64 | AddresseeDialog::AddresseeDialog( QWidget *parent, bool multiple ) : |
62 | KDialogBase( KDialogBase::Plain, i18n("Select Addressee"), | 65 | KDialogBase( KDialogBase::Plain, i18n("Select Addressee"), |
63 | Ok|Cancel, No, parent ), mMultiple( multiple ) | 66 | Ok|Cancel, No, parent ), mMultiple( multiple ) |
64 | { | 67 | { |
65 | qDebug("NEW AddresseeDialog "); | 68 | qDebug("NEW AddresseeDialog "); |
66 | 69 | ||
67 | 70 | ||
68 | KDGanttMinimizeSplitter* mMiniSplitter = new KDGanttMinimizeSplitter( Qt::Horizontal, this ); | 71 | KDGanttMinimizeSplitter* mMiniSplitter = new KDGanttMinimizeSplitter( Qt::Horizontal, this ); |
69 | mMiniSplitter->setMinimizeDirection ( KDGanttMinimizeSplitter::Right ); | 72 | mMiniSplitter->setMinimizeDirection ( KDGanttMinimizeSplitter::Right ); |
70 | setMainWidget( mMiniSplitter ); | 73 | setMainWidget( mMiniSplitter ); |
71 | 74 | ||
72 | QWidget *listWidget = new QWidget( mMiniSplitter ); | 75 | QWidget *listWidget = new QWidget( mMiniSplitter ); |
73 | 76 | ||
74 | QVBoxLayout *listLayout = new QVBoxLayout (listWidget) ; | 77 | Q3VBoxLayout *listLayout = new Q3VBoxLayout (listWidget) ; |
75 | //topLayout->addLayout( listLayout ); | 78 | //topLayout->addLayout( listLayout ); |
76 | 79 | ||
77 | mAddresseeList = new KListView( listWidget ); | 80 | mAddresseeList = new KListView( listWidget ); |
78 | mAddresseeList->addColumn( i18n("Name") ); | 81 | mAddresseeList->addColumn( i18n("Name") ); |
79 | mAddresseeList->addColumn( i18n("Email") ); | 82 | mAddresseeList->addColumn( i18n("Email") ); |
80 | mAddresseeList->addColumn( i18n("Category") ); | 83 | mAddresseeList->addColumn( i18n("Category") ); |
81 | mAddresseeList->setAllColumnsShowFocus( true ); | 84 | mAddresseeList->setAllColumnsShowFocus( true ); |
82 | mAddresseeList->setFullWidth( true ); | 85 | mAddresseeList->setFullWidth( true ); |
83 | listLayout->addWidget( mAddresseeList ); | 86 | listLayout->addWidget( mAddresseeList ); |
84 | connect( mAddresseeList, SIGNAL( doubleClicked( QListViewItem * ) ), | 87 | connect( mAddresseeList, SIGNAL( doubleClicked( Q3ListViewItem * ) ), |
85 | SLOT( slotOk() ) ); | 88 | SLOT( slotOk() ) ); |
86 | //QHBox* searchBox = new QHBox ( listWidget ); | 89 | //QHBox* searchBox = new QHBox ( listWidget ); |
87 | QHBox * hb = new QHBox ( listWidget ); | 90 | Q3HBox * hb = new Q3HBox ( listWidget ); |
88 | listLayout->addWidget ( hb ); | 91 | listLayout->addWidget ( hb ); |
89 | mAddresseeEdit = new QLineEdit( hb ); | 92 | mAddresseeEdit = new QLineEdit( hb ); |
90 | connect( mAddresseeEdit, SIGNAL( returnPressed() ), | 93 | connect( mAddresseeEdit, SIGNAL( returnPressed() ), |
91 | SLOT( loadAddressBook() ) ); | 94 | SLOT( loadAddressBook() ) ); |
92 | mAddresseeEdit->setFocus(); | 95 | mAddresseeEdit->setFocus(); |
93 | QPushButton *searchButton = new QPushButton( i18n("Search!"), hb ); | 96 | QPushButton *searchButton = new QPushButton( i18n("Search!"), hb ); |
94 | connect ( searchButton, SIGNAL( clicked() ), SLOT( loadAddressBook() ) ); | 97 | connect ( searchButton, SIGNAL( clicked() ), SLOT( loadAddressBook() ) ); |
95 | if ( mMultiple ) { | 98 | if ( mMultiple ) { |
96 | 99 | ||
97 | mSelectedList = new KListView( mMiniSplitter ); | 100 | mSelectedList = new KListView( mMiniSplitter ); |
98 | mSelectedList->addColumn( i18n("Selected Name") ); | 101 | mSelectedList->addColumn( i18n("Selected Name") ); |
99 | mSelectedList->addColumn( i18n("Email") ); | 102 | mSelectedList->addColumn( i18n("Email") ); |
100 | mSelectedList->setAllColumnsShowFocus( true ); | 103 | mSelectedList->setAllColumnsShowFocus( true ); |
101 | mSelectedList->setFullWidth( true ); | 104 | mSelectedList->setFullWidth( true ); |
102 | //connect( mSelectedList, SIGNAL( doubleClicked( QListViewItem * ) ), | 105 | //connect( mSelectedList, SIGNAL( doubleClicked( QListViewItem * ) ), |
103 | // SLOT( removeSelected() ) ); | 106 | // SLOT( removeSelected() ) ); |
104 | connect( mSelectedList, SIGNAL( clicked( QListViewItem * ) ), | 107 | connect( mSelectedList, SIGNAL( clicked( Q3ListViewItem * ) ), |
105 | SLOT( removeSelected() ) ); | 108 | SLOT( removeSelected() ) ); |
106 | connect( mSelectedList, SIGNAL( returnPressed( QListViewItem *) ), | 109 | connect( mSelectedList, SIGNAL( returnPressed( Q3ListViewItem *) ), |
107 | SLOT( removeSelected() ) ); | 110 | SLOT( removeSelected() ) ); |
108 | 111 | ||
109 | #if 0 | 112 | #if 0 |
110 | QPushButton *unselectButton = new QPushButton( i18n("Unselect"), selectedGroup ); | 113 | QPushButton *unselectButton = new QPushButton( i18n("Unselect"), selectedGroup ); |
111 | connect ( unselectButton, SIGNAL( clicked() ), SLOT( removeSelected() ) ); | 114 | connect ( unselectButton, SIGNAL( clicked() ), SLOT( removeSelected() ) ); |
112 | 115 | ||
113 | #endif | 116 | #endif |
114 | connect( mAddresseeList, SIGNAL( clicked( QListViewItem * ) ), | 117 | connect( mAddresseeList, SIGNAL( clicked( Q3ListViewItem * ) ), |
115 | SLOT( addSelected( QListViewItem * ) ) ); | 118 | SLOT( addSelected( Q3ListViewItem * ) ) ); |
116 | connect( mAddresseeList, SIGNAL( returnPressed( QListViewItem * ) ), | 119 | connect( mAddresseeList, SIGNAL( returnPressed( Q3ListViewItem * ) ), |
117 | SLOT( selectNextItem( QListViewItem * ) ) ); | 120 | SLOT( selectNextItem( Q3ListViewItem * ) ) ); |
118 | 121 | ||
119 | } | 122 | } |
120 | 123 | ||
121 | mAddressBook = StdAddressBook::self( true ); | 124 | mAddressBook = StdAddressBook::self( true ); |
122 | connect( mAddressBook, SIGNAL( addressBookChanged( AddressBook* ) ), | 125 | connect( mAddressBook, SIGNAL( addressBookChanged( AddressBook* ) ), |
123 | SLOT( addressBookChanged() ) ); | 126 | SLOT( addressBookChanged() ) ); |
124 | #if 0 | 127 | #if 0 |
125 | connect( mAddressBook, SIGNAL( loadingFinished( Resource* ) ), | 128 | connect( mAddressBook, SIGNAL( loadingFinished( Resource* ) ), |
126 | SLOT( addressBookChanged() ) ); | 129 | SLOT( addressBookChanged() ) ); |
127 | #endif | 130 | #endif |
128 | loadAddressBook(); | 131 | loadAddressBook(); |
129 | QValueList<int> splitterSize; | 132 | Q3ValueList<int> splitterSize; |
130 | splitterSize.append( ( width() / 5 ) * 3 ); | 133 | splitterSize.append( ( width() / 5 ) * 3 ); |
131 | splitterSize.append( ( width() / 5 ) *2 ); | 134 | splitterSize.append( ( width() / 5 ) *2 ); |
132 | mMiniSplitter->setSizes( splitterSize ); | 135 | mMiniSplitter->setSizes( splitterSize ); |
133 | } | 136 | } |
134 | 137 | ||
135 | AddresseeDialog::~AddresseeDialog() | 138 | AddresseeDialog::~AddresseeDialog() |
136 | { | 139 | { |
137 | qDebug("DELETE AddresseeDialog "); | 140 | qDebug("DELETE AddresseeDialog "); |
138 | } | 141 | } |
139 | 142 | ||
140 | void AddresseeDialog::loadAddressBook() | 143 | void AddresseeDialog::loadAddressBook() |
141 | { | 144 | { |
142 | mAddresseeList->clear(); | 145 | mAddresseeList->clear(); |
143 | mItemDict.clear(); | 146 | mItemDict.clear(); |
144 | if ( mAddresseeEdit->text().isEmpty() ) { | 147 | if ( mAddresseeEdit->text().isEmpty() ) { |
145 | AddressBook::Iterator it; | 148 | AddressBook::Iterator it; |
146 | for( it = mAddressBook->begin(); it != mAddressBook->end(); ++it ) { | 149 | for( it = mAddressBook->begin(); it != mAddressBook->end(); ++it ) { |
147 | if ( (*it).uid().left(2) == "la" && (*it).uid().left(19) == QString("last-syncAddressee-") ) | 150 | if ( (*it).uid().left(2) == "la" && (*it).uid().left(19) == QString("last-syncAddressee-") ) |
148 | continue; | 151 | continue; |
149 | new AddresseeItem( mAddresseeList, (*it) ); | 152 | new AddresseeItem( mAddresseeList, (*it) ); |
150 | } | 153 | } |
151 | return; | 154 | return; |
152 | } | 155 | } |
153 | //mAddresseeEdit->completionObject()->clear(); | 156 | //mAddresseeEdit->completionObject()->clear(); |
154 | QRegExp re; | 157 | QRegExp re; |
155 | re.setWildcard(true); // most people understand these better. | 158 | re.setWildcard(true); // most people understand these better. |
156 | re.setCaseSensitive(false); | 159 | re.setCaseSensitive(false); |
157 | re.setPattern( "*"+ mAddresseeEdit->text() + "*"); | 160 | re.setPattern( "*"+ mAddresseeEdit->text() + "*"); |
158 | 161 | ||
159 | AddressBook::Iterator it; | 162 | AddressBook::Iterator it; |
160 | for( it = mAddressBook->begin(); it != mAddressBook->end(); ++it ) { | 163 | for( it = mAddressBook->begin(); it != mAddressBook->end(); ++it ) { |
161 | if ( (*it).uid().left(2) == "la" && (*it).uid().left(19) == QString("last-syncAddressee-") ) | 164 | if ( (*it).uid().left(2) == "la" && (*it).uid().left(19) == QString("last-syncAddressee-") ) |
162 | continue; | 165 | continue; |
163 | QString name = (*it).realName(); | 166 | QString name = (*it).realName(); |
164 | name += (*it).preferredEmail(); | 167 | name += (*it).preferredEmail(); |
165 | name += (*it).categories().join(";"); | 168 | name += (*it).categories().join(";"); |
166 | #if QT_VERSION >= 0x030000 | 169 | #if QT_VERSION >= 0x030000 |
167 | if (re.search(name) != -1) | 170 | if (re.search(name) != -1) |
168 | #else | 171 | #else |
169 | if (re.match(name) != -1) | 172 | if (re.match(name) != -1) |
170 | #endif | 173 | #endif |
171 | AddresseeItem *item = new AddresseeItem( mAddresseeList, (*it) ); | 174 | AddresseeItem *item = new AddresseeItem( mAddresseeList, (*it) ); |
172 | } | 175 | } |
173 | } | 176 | } |
174 | 177 | ||
175 | void AddresseeDialog::addCompletionItem( const QString &str, QListViewItem *item ) | 178 | void AddresseeDialog::addCompletionItem( const QString &str, Q3ListViewItem *item ) |
176 | { | 179 | { |
177 | if ( str.isEmpty() ) return; | 180 | if ( str.isEmpty() ) return; |
178 | 181 | ||
179 | mItemDict.insert( str, item ); | 182 | mItemDict.insert( str, item ); |
180 | //mAddresseeEdit->completionObject()->addItem( str ); | 183 | //mAddresseeEdit->completionObject()->addItem( str ); |
181 | } | 184 | } |
182 | 185 | ||
183 | void AddresseeDialog::selectItem( const QString &str ) | 186 | void AddresseeDialog::selectItem( const QString &str ) |
184 | { | 187 | { |
185 | if ( str.isEmpty() ) return; | 188 | if ( str.isEmpty() ) return; |
186 | 189 | ||
187 | QListViewItem *item = mItemDict.find( str ); | 190 | Q3ListViewItem *item = mItemDict.find( str ); |
188 | if ( item ) { | 191 | if ( item ) { |
189 | mAddresseeList->blockSignals( true ); | 192 | mAddresseeList->blockSignals( true ); |
190 | mAddresseeList->setSelected( item, true ); | 193 | mAddresseeList->setSelected( item, true ); |
191 | mAddresseeList->ensureItemVisible( item ); | 194 | mAddresseeList->ensureItemVisible( item ); |
192 | mAddresseeList->blockSignals( false ); | 195 | mAddresseeList->blockSignals( false ); |
193 | } | 196 | } |
194 | } | 197 | } |
195 | 198 | ||
196 | void AddresseeDialog::updateEdit( QListViewItem *item ) | 199 | void AddresseeDialog::updateEdit( Q3ListViewItem *item ) |
197 | { | 200 | { |
198 | mAddresseeEdit->setText( item->text( 0 ) ); | 201 | mAddresseeEdit->setText( item->text( 0 ) ); |
199 | mAddresseeEdit->setSelection( 0, item->text( 0 ).length() ); | 202 | mAddresseeEdit->setSelection( 0, item->text( 0 ).length() ); |
200 | } | 203 | } |
201 | 204 | ||
202 | void AddresseeDialog::selectNextItem( QListViewItem *item ) | 205 | void AddresseeDialog::selectNextItem( Q3ListViewItem *item ) |
203 | { | 206 | { |
204 | addSelected( item ); | 207 | addSelected( item ); |
205 | QListViewItem *next = item->nextSibling(); | 208 | Q3ListViewItem *next = item->nextSibling(); |
206 | if ( next ) { | 209 | if ( next ) { |
207 | next->setSelected( true ); | 210 | next->setSelected( true ); |
208 | item->setSelected( false ); | 211 | item->setSelected( false ); |
209 | mAddresseeList->setCurrentItem( next ); | 212 | mAddresseeList->setCurrentItem( next ); |
210 | } | 213 | } |
211 | } | 214 | } |
212 | void AddresseeDialog::addSelected( QListViewItem *item ) | 215 | void AddresseeDialog::addSelected( Q3ListViewItem *item ) |
213 | { | 216 | { |
214 | AddresseeItem *addrItem = (AddresseeItem *)( item ); | 217 | AddresseeItem *addrItem = (AddresseeItem *)( item ); |
215 | if ( !addrItem ) return; | 218 | if ( !addrItem ) return; |
216 | 219 | ||
217 | Addressee a = addrItem->addressee(); | 220 | Addressee a = addrItem->addressee(); |
218 | 221 | ||
219 | QListViewItem *selectedItem = mSelectedDict.find( a.uid() ); | 222 | Q3ListViewItem *selectedItem = mSelectedDict.find( a.uid() ); |
220 | if ( !selectedItem ) { | 223 | if ( !selectedItem ) { |
221 | selectedItem = new AddresseeItem( mSelectedList, a ); | 224 | selectedItem = new AddresseeItem( mSelectedList, a ); |
222 | mSelectedDict.insert( a.uid(), selectedItem ); | 225 | mSelectedDict.insert( a.uid(), selectedItem ); |
223 | } | 226 | } |
224 | 227 | ||
225 | } | 228 | } |
226 | 229 | ||
227 | void AddresseeDialog::removeSelected() | 230 | void AddresseeDialog::removeSelected() |
228 | { | 231 | { |
229 | QListViewItem *item = mSelectedList->selectedItem(); | 232 | Q3ListViewItem *item = mSelectedList->selectedItem(); |
230 | AddresseeItem *addrItem = (AddresseeItem *)( item ); | 233 | AddresseeItem *addrItem = (AddresseeItem *)( item ); |
231 | if ( !addrItem ) return; | 234 | if ( !addrItem ) return; |
232 | QListViewItem *next = item->nextSibling(); | 235 | Q3ListViewItem *next = item->nextSibling(); |
233 | mSelectedDict.remove( addrItem->addressee().uid() ); | 236 | mSelectedDict.remove( addrItem->addressee().uid() ); |
234 | delete addrItem; | 237 | delete addrItem; |
235 | if ( next ) | 238 | if ( next ) |
236 | next->setSelected( true ); | 239 | next->setSelected( true ); |
237 | } | 240 | } |
238 | 241 | ||
239 | Addressee AddresseeDialog::addressee() | 242 | Addressee AddresseeDialog::addressee() |
240 | { | 243 | { |
241 | AddresseeItem *aItem = 0; | 244 | AddresseeItem *aItem = 0; |
242 | 245 | ||
243 | if ( mMultiple ) | 246 | if ( mMultiple ) |
244 | aItem = (AddresseeItem *)( mSelectedList->firstChild() ); | 247 | aItem = (AddresseeItem *)( mSelectedList->firstChild() ); |
245 | else | 248 | else |
246 | aItem = (AddresseeItem *)( mAddresseeList->selectedItem() ); | 249 | aItem = (AddresseeItem *)( mAddresseeList->selectedItem() ); |
247 | 250 | ||
248 | if (aItem) return aItem->addressee(); | 251 | if (aItem) return aItem->addressee(); |
249 | return Addressee(); | 252 | return Addressee(); |
250 | } | 253 | } |
251 | 254 | ||
252 | Addressee::List AddresseeDialog::addressees() | 255 | Addressee::List AddresseeDialog::addressees() |
253 | { | 256 | { |
254 | Addressee::List al; | 257 | Addressee::List al; |
255 | AddresseeItem *aItem = 0; | 258 | AddresseeItem *aItem = 0; |
256 | 259 | ||
257 | if ( mMultiple ) { | 260 | if ( mMultiple ) { |
258 | QListViewItem *item = mSelectedList->firstChild(); | 261 | Q3ListViewItem *item = mSelectedList->firstChild(); |
259 | while( item ) { | 262 | while( item ) { |
260 | aItem = (AddresseeItem *)( item ); | 263 | aItem = (AddresseeItem *)( item ); |
261 | if ( aItem ) al.append( aItem->addressee() ); | 264 | if ( aItem ) al.append( aItem->addressee() ); |
262 | item = item->nextSibling(); | 265 | item = item->nextSibling(); |
263 | } | 266 | } |
264 | } | 267 | } |
265 | else | 268 | else |
266 | { | 269 | { |
267 | aItem = (AddresseeItem *)( mAddresseeList->selectedItem() ); | 270 | aItem = (AddresseeItem *)( mAddresseeList->selectedItem() ); |
268 | if (aItem) al.append( aItem->addressee() ); | 271 | if (aItem) al.append( aItem->addressee() ); |
269 | } | 272 | } |
270 | 273 | ||
271 | return al; | 274 | return al; |
272 | } | 275 | } |
273 | 276 | ||
274 | Addressee AddresseeDialog::getAddressee( QWidget *parent ) | 277 | Addressee AddresseeDialog::getAddressee( QWidget *parent ) |
275 | { | 278 | { |
276 | AddresseeDialog *dlg = new AddresseeDialog( parent ); | 279 | AddresseeDialog *dlg = new AddresseeDialog( parent ); |
277 | Addressee addressee; | 280 | Addressee addressee; |
278 | #ifdef DESKTOP_VERSION | 281 | #ifdef DESKTOP_VERSION |
279 | static int geoX = 0; | 282 | static int geoX = 0; |
280 | static int geoY = 0; | 283 | static int geoY = 0; |
281 | static int geoW = 0; | 284 | static int geoW = 0; |
282 | static int geoH = 0; | 285 | static int geoH = 0; |
283 | if ( !geoX && ! geoY && !geoW &&!geoH ) { | 286 | if ( !geoX && ! geoY && !geoW &&!geoH ) { |
284 | geoX = dlg->geometry().x(); | 287 | geoX = dlg->geometry().x(); |
285 | geoY = dlg->geometry().y(); | 288 | geoY = dlg->geometry().y(); |
286 | geoW = dlg->width(); | 289 | geoW = dlg->width(); |
287 | geoH = dlg->height(); | 290 | geoH = dlg->height(); |
288 | } else { | 291 | } else { |
289 | dlg->show(); | 292 | dlg->show(); |
290 | dlg->setGeometry(geoX , geoY,geoW , geoH ); | 293 | dlg->setGeometry(geoX , geoY,geoW , geoH ); |
291 | 294 | ||
292 | } | 295 | } |
293 | #endif | 296 | #endif |
294 | int result = dlg->exec(); | 297 | int result = dlg->exec(); |
295 | #ifdef DESKTOP_VERSION | 298 | #ifdef DESKTOP_VERSION |
296 | geoX = dlg->geometry().x(); | 299 | geoX = dlg->geometry().x(); |
297 | geoY = dlg->geometry().y(); | 300 | geoY = dlg->geometry().y(); |
298 | geoW = dlg->width(); | 301 | geoW = dlg->width(); |
299 | geoH = dlg->height(); | 302 | geoH = dlg->height(); |
300 | #endif | 303 | #endif |
301 | if ( result == QDialog::Accepted ) { | 304 | if ( result == QDialog::Accepted ) { |
302 | addressee = dlg->addressee(); | 305 | addressee = dlg->addressee(); |
303 | } | 306 | } |
304 | 307 | ||
305 | delete dlg; | 308 | delete dlg; |
306 | return addressee; | 309 | return addressee; |
307 | } | 310 | } |
308 | 311 | ||
309 | Addressee::List AddresseeDialog::getAddressees( QWidget *parent ) | 312 | Addressee::List AddresseeDialog::getAddressees( QWidget *parent ) |
310 | { | 313 | { |
311 | Addressee::List addressees; | 314 | Addressee::List addressees; |
312 | static bool running = false; | 315 | static bool running = false; |
313 | if ( running ) return addressees; | 316 | if ( running ) return addressees; |
314 | running = true; | 317 | running = true; |
315 | AddresseeDialog *dlg = new AddresseeDialog( parent, true ); | 318 | AddresseeDialog *dlg = new AddresseeDialog( parent, true ); |
316 | #ifdef DESKTOP_VERSION | 319 | #ifdef DESKTOP_VERSION |
317 | static int geoX = 0; | 320 | static int geoX = 0; |
318 | static int geoY = 0; | 321 | static int geoY = 0; |
319 | static int geoW = 0; | 322 | static int geoW = 0; |
320 | static int geoH = 0; | 323 | static int geoH = 0; |
321 | if ( !geoX && ! geoY && !geoW &&!geoH ) { | 324 | if ( !geoX && ! geoY && !geoW &&!geoH ) { |
322 | geoX = dlg->geometry().x(); | 325 | geoX = dlg->geometry().x(); |
323 | geoY = dlg->geometry().y(); | 326 | geoY = dlg->geometry().y(); |
324 | geoW = dlg->width(); | 327 | geoW = dlg->width(); |
325 | geoH = dlg->height(); | 328 | geoH = dlg->height(); |
326 | } | 329 | } |
327 | dlg->show(); | 330 | dlg->show(); |
328 | dlg->setGeometry(geoX , geoY,geoW , geoH ); | 331 | dlg->setGeometry(geoX , geoY,geoW , geoH ); |
329 | #else | 332 | #else |
330 | dlg->showMaximized(); | 333 | dlg->showMaximized(); |
331 | #endif | 334 | #endif |
332 | int result = dlg->exec(); | 335 | int result = dlg->exec(); |
333 | #ifdef DESKTOP_VERSION | 336 | #ifdef DESKTOP_VERSION |
334 | geoX = dlg->geometry().x(); | 337 | geoX = dlg->geometry().x(); |
335 | geoY = dlg->geometry().y(); | 338 | geoY = dlg->geometry().y(); |
336 | geoW = dlg->width(); | 339 | geoW = dlg->width(); |
337 | geoH = dlg->height(); | 340 | geoH = dlg->height(); |
338 | #endif | 341 | #endif |
339 | if ( result == QDialog::Accepted ) { | 342 | if ( result == QDialog::Accepted ) { |
340 | addressees = dlg->addressees(); | 343 | addressees = dlg->addressees(); |
341 | } | 344 | } |
342 | 345 | ||
343 | delete dlg; | 346 | delete dlg; |
344 | running = false; | 347 | running = false; |
345 | return addressees; | 348 | return addressees; |
346 | } | 349 | } |
347 | 350 | ||
348 | void AddresseeDialog::addressBookChanged() | 351 | void AddresseeDialog::addressBookChanged() |
349 | { | 352 | { |
350 | loadAddressBook(); | 353 | loadAddressBook(); |
351 | } | 354 | } |