summaryrefslogtreecommitdiffabout
authorzautrix <zautrix>2004-10-09 17:36:32 (UTC)
committer zautrix <zautrix>2004-10-09 17:36:32 (UTC)
commitd68435216e1ebc5a7fed391157197994e13992b3 (patch) (side-by-side diff)
tree3cb23a2cf1ee55ab881670c2d7bb3b54d60c3b59
parent59ed933d6c43ecb0ddd3dec53cc289ee8aa68482 (diff)
downloadkdepimpi-d68435216e1ebc5a7fed391157197994e13992b3.zip
kdepimpi-d68435216e1ebc5a7fed391157197994e13992b3.tar.gz
kdepimpi-d68435216e1ebc5a7fed391157197994e13992b3.tar.bz2
sync fix
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--kabc/addressbook.cpp16
1 files changed, 12 insertions, 4 deletions
diff --git a/kabc/addressbook.cpp b/kabc/addressbook.cpp
index ff05f7e..16927e2 100644
--- a/kabc/addressbook.cpp
+++ b/kabc/addressbook.cpp
@@ -423,53 +423,61 @@ void AddressBook::importFromFile( QString fileName, bool replaceLabel, bool rem
KABC::VCardTool tool;
list = tool.parseVCards( data );
KABC::Addressee::List::Iterator it;
for ( it = list.begin(); it != list.end(); ++it ) {
(*it).setResource( 0 );
if ( replaceLabel )
(*it).removeVoice();
if ( removeOld )
(*it).setTagged( true );
insertAddressee( (*it), false, true );
}
if ( removeOld )
removeUntagged();
}
void AddressBook::setUntagged()
{
Iterator ait;
for ( ait = begin(); ait != end(); ++ait ) {
(*ait).setTagged( false );
}
}
void AddressBook::removeUntagged()
{
Iterator ait;
+ bool todelete = false;
+ Iterator todel;
for ( ait = begin(); ait != end(); ++ait ) {
- if (!(*ait).tagged())
- removeAddressee( ait );
- }
-
+ if ( todelete )
+ removeAddressee( todel );
+ if (!(*ait).tagged()) {
+ todelete = true;
+ todel = ait;
+ } else
+ todelete = false;
+ }
+ if ( todelete )
+ removeAddressee( todel );
deleteRemovedAddressees();
}
bool AddressBook::saveAB()
{
bool ok = true;
deleteRemovedAddressees();
Iterator ait;
for ( ait = begin(); ait != end(); ++ait ) {
if ( !(*ait).IDStr().isEmpty() ) {
(*ait).insertCustom( "KADDRESSBOOK", "X-ExternalID", (*ait).IDStr() );
}
}
KRES::Manager<Resource>::ActiveIterator it;
KRES::Manager<Resource> *manager = d->mManager;
for ( it = manager->activeBegin(); it != manager->activeEnd(); ++it ) {
if ( !(*it)->readOnly() && (*it)->isOpen() ) {
Ticket *ticket = requestSaveTicket( *it );
// qDebug("StdAddressBook::save '%s'", (*it)->resourceName().latin1() );
if ( !ticket ) {
error( i18n( "Unable to save to resource '%1'. It is locked." )
.arg( (*it)->resourceName() ) );
return false;
}