summaryrefslogtreecommitdiff
path: root/core/pim/addressbook
Unidiff
Diffstat (limited to 'core/pim/addressbook') (more/less context) (ignore whitespace changes)
-rw-r--r--core/pim/addressbook/addressbook.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/core/pim/addressbook/addressbook.cpp b/core/pim/addressbook/addressbook.cpp
index 7c52ef2..75e539a 100644
--- a/core/pim/addressbook/addressbook.cpp
+++ b/core/pim/addressbook/addressbook.cpp
@@ -313,96 +313,108 @@ int AddressbookWindow::create()
313bool AddressbookWindow::remove( int /*uid*/ ) 313bool AddressbookWindow::remove( int /*uid*/ )
314{ 314{
315 return false; 315 return false;
316} 316}
317 317
318void AddressbookWindow::beam( int /*uid*/ ) 318void AddressbookWindow::beam( int /*uid*/ )
319{ 319{
320} 320}
321 321
322void AddressbookWindow::show( int /*uid*/ ) 322void AddressbookWindow::show( int /*uid*/ )
323{ 323{
324} 324}
325 325
326void AddressbookWindow::edit( int /*uid*/ ) 326void AddressbookWindow::edit( int /*uid*/ )
327{ 327{
328} 328}
329 329
330void AddressbookWindow::add( const Opie::OPimRecord& ) 330void AddressbookWindow::add( const Opie::OPimRecord& )
331{ 331{
332} 332}
333 333
334void AddressbookWindow::slotItemNew() 334void AddressbookWindow::slotItemNew()
335{ 335{
336 Opie::OPimContact cnt; 336 Opie::OPimContact cnt;
337 if( !syncing ) { 337 if( !syncing ) {
338 editEntry( NewEntry ); 338 editEntry( NewEntry );
339 } else { 339 } else {
340 QMessageBox::warning(this, tr("Contacts"), 340 QMessageBox::warning(this, tr("Contacts"),
341 tr("Can not edit data, currently syncing")); 341 tr("Can not edit data, currently syncing"));
342 } 342 }
343} 343}
344 344
345void AddressbookWindow::slotItemEdit() 345void AddressbookWindow::slotItemEdit()
346{ 346{
347 if(!syncing) { 347 if(!syncing) {
348 if (m_actionPersonal->isOn()) { 348 if (m_actionPersonal->isOn()) {
349 editPersonal(); 349 editPersonal();
350 } else { 350 } else {
351 editEntry( EditEntry ); 351 editEntry( EditEntry );
352 } 352 }
353 } else { 353 } else {
354 QMessageBox::warning( this, tr("Contacts"), 354 QMessageBox::warning( this, tr("Contacts"),
355 tr("Can not edit data, currently syncing") ); 355 tr("Can not edit data, currently syncing") );
356 } 356 }
357} 357}
358 358
359void AddressbookWindow::slotItemDuplicate() 359void AddressbookWindow::slotItemDuplicate()
360{ 360{
361 if(!syncing)
362 {
363 Opie::OPimContact entry = m_abView->currentEntry();
364 entry.assignUid();
365 m_abView->addEntry( entry );
366 m_abView->setCurrentUid( entry.uid() );
367 }
368 else
369 {
370 QMessageBox::warning( this, tr("Contacts"),
371 tr("Can not edit data, currently syncing") );
372 }
361} 373}
362 374
363void AddressbookWindow::slotItemDelete() 375void AddressbookWindow::slotItemDelete()
364{ 376{
365 if(!syncing) { 377 if(!syncing) {
366 Opie::OPimContact tmpEntry = m_abView ->currentEntry(); 378 Opie::OPimContact tmpEntry = m_abView ->currentEntry();
367 379
368 // get a name, do the best we can... 380 // get a name, do the best we can...
369 QString strName = tmpEntry.fullName(); 381 QString strName = tmpEntry.fullName();
370 if ( strName.isEmpty() ) { 382 if ( strName.isEmpty() ) {
371 strName = tmpEntry.company(); 383 strName = tmpEntry.company();
372 if ( strName.isEmpty() ) 384 if ( strName.isEmpty() )
373 strName = "No Name"; 385 strName = "No Name";
374 } 386 }
375 387
376 388
377 if ( QPEMessageBox::confirmDelete( this, tr( "Contacts" ), 389 if ( QPEMessageBox::confirmDelete( this, tr( "Contacts" ),
378 strName ) ) { 390 strName ) ) {
379 m_abView->removeEntry( tmpEntry.uid() ); 391 m_abView->removeEntry( tmpEntry.uid() );
380 } 392 }
381 } else { 393 } else {
382 QMessageBox::warning( this, tr("Contacts"), 394 QMessageBox::warning( this, tr("Contacts"),
383 tr("Can not edit data, currently syncing") ); 395 tr("Can not edit data, currently syncing") );
384 } 396 }
385} 397}
386 398
387static const char * beamfile = "/tmp/obex/contact.vcf"; 399static const char * beamfile = "/tmp/obex/contact.vcf";
388 400
389void AddressbookWindow::slotItemBeam() 401void AddressbookWindow::slotItemBeam()
390{ 402{
391 QString beamFilename; 403 QString beamFilename;
392 Opie::OPimContact c; 404 Opie::OPimContact c;
393 if ( m_actionPersonal->isOn() ) { 405 if ( m_actionPersonal->isOn() ) {
394 beamFilename = addressbookPersonalVCardName(); 406 beamFilename = addressbookPersonalVCardName();
395 if ( !QFile::exists( beamFilename ) ) 407 if ( !QFile::exists( beamFilename ) )
396 return; // can't beam a non-existent file 408 return; // can't beam a non-existent file
397 Opie::OPimContactAccessBackend* vcard_backend = new Opie::OPimContactAccessBackend_VCard( QString::null, 409 Opie::OPimContactAccessBackend* vcard_backend = new Opie::OPimContactAccessBackend_VCard( QString::null,
398 beamFilename ); 410 beamFilename );
399 Opie::OPimContactAccess* access = new Opie::OPimContactAccess ( "addressbook", QString::null , vcard_backend, true ); 411 Opie::OPimContactAccess* access = new Opie::OPimContactAccess ( "addressbook", QString::null , vcard_backend, true );
400 Opie::OPimContactAccess::List allList = access->allRecords(); 412 Opie::OPimContactAccess::List allList = access->allRecords();
401 Opie::OPimContactAccess::List::Iterator it = allList.begin(); // Just take first 413 Opie::OPimContactAccess::List::Iterator it = allList.begin(); // Just take first
402 c = *it; 414 c = *it;
403 415
404 delete access; 416 delete access;
405 } else { 417 } else {
406 unlink( beamfile ); // delete if exists 418 unlink( beamfile ); // delete if exists
407 mkdir("/tmp/obex/", 0755); 419 mkdir("/tmp/obex/", 0755);
408 c = m_abView -> currentEntry(); 420 c = m_abView -> currentEntry();