Changeset View
Changeset View
Standalone View
Standalone View
kmymoney/views/kpayeesview.cpp
Show First 20 Lines • Show All 284 Lines • ▼ Show 20 Line(s) | 227 | { | |||
---|---|---|---|---|---|
285 | // will also be the only selection and behave exactly as before - Andreas | 285 | // will also be the only selection and behave exactly as before - Andreas | ||
286 | try { | 286 | try { | ||
287 | d->m_payee = d->m_selectedPayeesList[0]; | 287 | d->m_payee = d->m_selectedPayeesList[0]; | ||
288 | 288 | | |||
289 | d->m_newName = d->m_payee.name(); | 289 | d->m_newName = d->m_payee.name(); | ||
290 | 290 | | |||
291 | d->ui->addressEdit->setEnabled(true); | 291 | d->ui->addressEdit->setEnabled(true); | ||
292 | d->ui->addressEdit->setText(d->m_payee.address()); | 292 | d->ui->addressEdit->setText(d->m_payee.address()); | ||
293 | d->ui->payeecityEdit->setEnabled(true); | ||||
294 | d->ui->payeecityEdit->setText(d->m_payee.city()); | ||||
295 | d->ui->payeestateEdit->setEnabled(true); | ||||
296 | d->ui->payeestateEdit->setText(d->m_payee.state()); | ||||
293 | d->ui->postcodeEdit->setEnabled(true); | 297 | d->ui->postcodeEdit->setEnabled(true); | ||
294 | d->ui->postcodeEdit->setText(d->m_payee.postcode()); | 298 | d->ui->postcodeEdit->setText(d->m_payee.postcode()); | ||
295 | d->ui->telephoneEdit->setEnabled(true); | 299 | d->ui->telephoneEdit->setEnabled(true); | ||
296 | d->ui->telephoneEdit->setText(d->m_payee.telephone()); | 300 | d->ui->telephoneEdit->setText(d->m_payee.telephone()); | ||
297 | d->ui->emailEdit->setEnabled(true); | 301 | d->ui->emailEdit->setEnabled(true); | ||
298 | d->ui->emailEdit->setText(d->m_payee.email()); | 302 | d->ui->emailEdit->setText(d->m_payee.email()); | ||
299 | d->ui->notesEdit->setText(d->m_payee.notes()); | 303 | d->ui->notesEdit->setText(d->m_payee.notes()); | ||
300 | 304 | | |||
▲ Show 20 Lines • Show All 43 Lines • ▼ Show 20 Line(s) | 347 | { | |||
344 | Q_D(KPayeesView); | 348 | Q_D(KPayeesView); | ||
345 | bool rc = false; | 349 | bool rc = false; | ||
346 | 350 | | |||
347 | if (d->ui->m_tabWidget->isEnabled()) { | 351 | if (d->ui->m_tabWidget->isEnabled()) { | ||
348 | rc |= ((d->m_payee.email().isEmpty() != d->ui->emailEdit->text().isEmpty()) | 352 | rc |= ((d->m_payee.email().isEmpty() != d->ui->emailEdit->text().isEmpty()) | ||
349 | || (!d->ui->emailEdit->text().isEmpty() && d->m_payee.email() != d->ui->emailEdit->text())); | 353 | || (!d->ui->emailEdit->text().isEmpty() && d->m_payee.email() != d->ui->emailEdit->text())); | ||
350 | rc |= ((d->m_payee.address().isEmpty() != d->ui->addressEdit->toPlainText().isEmpty()) | 354 | rc |= ((d->m_payee.address().isEmpty() != d->ui->addressEdit->toPlainText().isEmpty()) | ||
351 | || (!d->ui->addressEdit->toPlainText().isEmpty() && d->m_payee.address() != d->ui->addressEdit->toPlainText())); | 355 | || (!d->ui->addressEdit->toPlainText().isEmpty() && d->m_payee.address() != d->ui->addressEdit->toPlainText())); | ||
356 | rc |= ((d->m_payee.city().isEmpty() != d->ui->payeecityEdit->text().isEmpty()) | ||||
357 | || (!d->ui->payeecityEdit->text().isEmpty() && d->m_payee.city() != d->ui->payeecityEdit->text())); | ||||
358 | rc |= ((d->m_payee.state().isEmpty() != d->ui->payeestateEdit->text().isEmpty()) | ||||
359 | || (!d->ui->payeestateEdit->text().isEmpty() && d->m_payee.state() != d->ui->payeestateEdit->text())); | ||||
352 | rc |= ((d->m_payee.postcode().isEmpty() != d->ui->postcodeEdit->text().isEmpty()) | 360 | rc |= ((d->m_payee.postcode().isEmpty() != d->ui->postcodeEdit->text().isEmpty()) | ||
353 | || (!d->ui->postcodeEdit->text().isEmpty() && d->m_payee.postcode() != d->ui->postcodeEdit->text())); | 361 | || (!d->ui->postcodeEdit->text().isEmpty() && d->m_payee.postcode() != d->ui->postcodeEdit->text())); | ||
354 | rc |= ((d->m_payee.telephone().isEmpty() != d->ui->telephoneEdit->text().isEmpty()) | 362 | rc |= ((d->m_payee.telephone().isEmpty() != d->ui->telephoneEdit->text().isEmpty()) | ||
355 | || (!d->ui->telephoneEdit->text().isEmpty() && d->m_payee.telephone() != d->ui->telephoneEdit->text())); | 363 | || (!d->ui->telephoneEdit->text().isEmpty() && d->m_payee.telephone() != d->ui->telephoneEdit->text())); | ||
356 | rc |= ((d->m_payee.name().isEmpty() != d->m_newName.isEmpty()) | 364 | rc |= ((d->m_payee.name().isEmpty() != d->m_newName.isEmpty()) | ||
357 | || (!d->m_newName.isEmpty() && d->m_payee.name() != d->m_newName)); | 365 | || (!d->m_newName.isEmpty() && d->m_payee.name() != d->m_newName)); | ||
358 | rc |= ((d->m_payee.notes().isEmpty() != d->ui->notesEdit->toPlainText().isEmpty()) | 366 | rc |= ((d->m_payee.notes().isEmpty() != d->ui->notesEdit->toPlainText().isEmpty()) | ||
359 | || (!d->ui->notesEdit->toPlainText().isEmpty() && d->m_payee.notes() != d->ui->notesEdit->toPlainText())); | 367 | || (!d->ui->notesEdit->toPlainText().isEmpty() && d->m_payee.notes() != d->ui->notesEdit->toPlainText())); | ||
▲ Show 20 Lines • Show All 46 Lines • ▼ Show 20 Line(s) | |||||
406 | { | 414 | { | ||
407 | Q_D(KPayeesView); | 415 | Q_D(KPayeesView); | ||
408 | if (d->isDirty()) { | 416 | if (d->isDirty()) { | ||
409 | MyMoneyFileTransaction ft; | 417 | MyMoneyFileTransaction ft; | ||
410 | d->setDirty(false); | 418 | d->setDirty(false); | ||
411 | try { | 419 | try { | ||
412 | d->m_payee.setName(d->m_newName); | 420 | d->m_payee.setName(d->m_newName); | ||
413 | d->m_payee.setAddress(d->ui->addressEdit->toPlainText()); | 421 | d->m_payee.setAddress(d->ui->addressEdit->toPlainText()); | ||
422 | d->m_payee.setCity(d->ui->payeecityEdit->text()); | ||||
423 | d->m_payee.setState(d->ui->payeestateEdit->text()); | ||||
414 | d->m_payee.setPostcode(d->ui->postcodeEdit->text()); | 424 | d->m_payee.setPostcode(d->ui->postcodeEdit->text()); | ||
415 | d->m_payee.setTelephone(d->ui->telephoneEdit->text()); | 425 | d->m_payee.setTelephone(d->ui->telephoneEdit->text()); | ||
416 | d->m_payee.setEmail(d->ui->emailEdit->text()); | 426 | d->m_payee.setEmail(d->ui->emailEdit->text()); | ||
417 | d->m_payee.setNotes(d->ui->notesEdit->toPlainText()); | 427 | d->m_payee.setNotes(d->ui->notesEdit->toPlainText()); | ||
418 | d->m_payee.setMatchData(static_cast<eMyMoney::Payee::MatchType>(d->ui->matchTypeCombo->currentData().toUInt()), d->ui->checkMatchIgnoreCase->isChecked(), d->ui->matchKeyEditList->items()); | 428 | d->m_payee.setMatchData(static_cast<eMyMoney::Payee::MatchType>(d->ui->matchTypeCombo->currentData().toUInt()), d->ui->checkMatchIgnoreCase->isChecked(), d->ui->matchKeyEditList->items()); | ||
419 | d->m_payee.setDefaultAccountId(); | 429 | d->m_payee.setDefaultAccountId(); | ||
420 | d->m_payee.resetPayeeIdentifiers(d->ui->payeeIdentifiers->identifiers()); | 430 | d->m_payee.resetPayeeIdentifiers(d->ui->payeeIdentifiers->identifiers()); | ||
421 | 431 | | |||
Show All 24 Lines | 452 | if (d->m_payeeRows.isEmpty()) { // empty list means no syncing is pending... | |||
446 | d->ui->m_payeesList->clearSelection(); // otherwise slotSelectPayee will be run after every payee update | 456 | d->ui->m_payeesList->clearSelection(); // otherwise slotSelectPayee will be run after every payee update | ||
447 | // d->ui->m_syncAddressbook->setEnabled(false); // disallow concurrent syncs | 457 | // d->ui->m_syncAddressbook->setEnabled(false); // disallow concurrent syncs | ||
448 | } | 458 | } | ||
449 | 459 | | |||
450 | if (d->m_payeeRows.count() <= d->m_payeeRow) { | 460 | if (d->m_payeeRows.count() <= d->m_payeeRow) { | ||
451 | if (auto item = dynamic_cast<KPayeeListItem*>(d->ui->m_payeesList->currentItem())) { // update ui if something is selected | 461 | if (auto item = dynamic_cast<KPayeeListItem*>(d->ui->m_payeesList->currentItem())) { // update ui if something is selected | ||
452 | d->m_payee = item->payee(); | 462 | d->m_payee = item->payee(); | ||
453 | d->ui->addressEdit->setText(d->m_payee.address()); | 463 | d->ui->addressEdit->setText(d->m_payee.address()); | ||
464 | d->ui->payeecityEdit->setText(d->m_payee.city()); | ||||
465 | d->ui->payeestateEdit->setText(d->m_payee.state()); | ||||
454 | d->ui->postcodeEdit->setText(d->m_payee.postcode()); | 466 | d->ui->postcodeEdit->setText(d->m_payee.postcode()); | ||
455 | d->ui->telephoneEdit->setText(d->m_payee.telephone()); | 467 | d->ui->telephoneEdit->setText(d->m_payee.telephone()); | ||
456 | } | 468 | } | ||
457 | d->m_payeeRows.clear(); // that means end of sync | 469 | d->m_payeeRows.clear(); // that means end of sync | ||
458 | d->m_payeeRow = 0; | 470 | d->m_payeeRow = 0; | ||
459 | return; | 471 | return; | ||
460 | } | 472 | } | ||
461 | 473 | | |||
462 | if (auto item = dynamic_cast<KPayeeListItem*>(d->ui->m_payeesList->item(d->m_payeeRows.at(d->m_payeeRow)))) | 474 | if (auto item = dynamic_cast<KPayeeListItem*>(d->ui->m_payeesList->item(d->m_payeeRows.at(d->m_payeeRow)))) | ||
463 | d->m_payee = item->payee(); | 475 | d->m_payee = item->payee(); | ||
464 | ++d->m_payeeRow; | 476 | ++d->m_payeeRow; | ||
465 | 477 | | |||
466 | d->m_contact->fetchContact(d->m_payee.email()); // search for payee's data in addressbook and receive it in slotContactFetched | 478 | d->m_contact->fetchContact(d->m_payee.email()); // search for payee's data in addressbook and receive it in slotContactFetched | ||
467 | } | 479 | } | ||
468 | 480 | | |||
469 | void KPayeesView::slotContactFetched(const ContactData &identity) | 481 | void KPayeesView::slotContactFetched(const ContactData &identity) | ||
470 | { | 482 | { | ||
471 | Q_D(KPayeesView); | 483 | Q_D(KPayeesView); | ||
472 | if (!identity.email.isEmpty()) { // empty e-mail means no identity fetched | 484 | if (!identity.email.isEmpty()) { // empty e-mail means no identity fetched | ||
473 | QString txt; | 485 | QString txt; | ||
474 | if (!identity.street.isEmpty()) | 486 | if (!identity.street.isEmpty()) | ||
475 | txt.append(identity.street + '\n'); | 487 | txt.append(identity.street + '\n'); | ||
476 | if (!identity.locality.isEmpty()) { | 488 | if (!identity.locality.isEmpty()) { | ||
477 | txt.append(identity.locality); | 489 | txt.append(identity.locality); | ||
478 | if (!identity.postalCode.isEmpty()) | 490 | if (!identity.postalCode.isEmpty()) | ||
479 | txt.append(' ' + identity.postalCode + '\n'); | 491 | txt.append(' ' + identity.postalCode + '\n'); | ||
tbaumgart: Don't know, if we need those here. We do have the city and state in their own input fields now. | |||||
480 | else | 492 | else | ||
481 | txt.append('\n'); | 493 | txt.append('\n'); | ||
482 | } | 494 | } | ||
483 | if (!identity.country.isEmpty()) | 495 | if (!identity.country.isEmpty()) | ||
484 | txt.append(identity.country + '\n'); | 496 | txt.append(identity.country + '\n'); | ||
485 | 497 | | |||
486 | if (!txt.isEmpty() && d->m_payee.address().compare(txt) != 0) | 498 | if (!txt.isEmpty() && d->m_payee.address().compare(txt) != 0) | ||
487 | d->m_payee.setAddress(txt); | 499 | d->m_payee.setAddress(txt); | ||
488 | 500 | | |||
501 | if (!identity.city.isEmpty() && d->m_payee.city().compare(identity.city) != 0) | ||||
502 | d->m_payee.setCity(identity.city); | ||||
503 | | ||||
504 | if (!identity.state.isEmpty() && d->m_payee.state().compare(identity.state) != 0) | ||||
505 | d->m_payee.setState(identity.state); | ||||
506 | | ||||
489 | if (!identity.postalCode.isEmpty() && d->m_payee.postcode().compare(identity.postalCode) != 0) | 507 | if (!identity.postalCode.isEmpty() && d->m_payee.postcode().compare(identity.postalCode) != 0) | ||
490 | d->m_payee.setPostcode(identity.postalCode); | 508 | d->m_payee.setPostcode(identity.postalCode); | ||
491 | 509 | | |||
492 | if (!identity.phoneNumber.isEmpty() && d->m_payee.telephone().compare(identity.phoneNumber) != 0) | 510 | if (!identity.phoneNumber.isEmpty() && d->m_payee.telephone().compare(identity.phoneNumber) != 0) | ||
493 | d->m_payee.setTelephone(identity.phoneNumber); | 511 | d->m_payee.setTelephone(identity.phoneNumber); | ||
494 | 512 | | |||
495 | MyMoneyFileTransaction ft; | 513 | MyMoneyFileTransaction ft; | ||
496 | try { | 514 | try { | ||
▲ Show 20 Lines • Show All 224 Lines • Show Last 20 Lines |
Don't know, if we need those here. We do have the city and state in their own input fields now. This would enter them twice into the payee, or am I missing something?