-rw-r--r-- | core/pim/addressbook/addressbook.cpp | 617 | ||||
-rw-r--r-- | core/pim/addressbook/addressbook.h | 7 | ||||
-rw-r--r-- | core/pim/addressbook/addressbook.pro | 2 |
3 files changed, 323 insertions, 303 deletions
diff --git a/core/pim/addressbook/addressbook.cpp b/core/pim/addressbook/addressbook.cpp index 8229212..86d1760 100644 --- a/core/pim/addressbook/addressbook.cpp +++ b/core/pim/addressbook/addressbook.cpp @@ -28,2 +28,5 @@ + +#include <opie/ofileselector.h> +#include <opie/ofiledialog.h> #include <qpe/qpeapplication.h> @@ -75,3 +78,3 @@ static QString addressbookXMLFilename() QString filename = Global::applicationFileName("addressbook", - "addressbook.xml"); + "addressbook.xml"); return filename; @@ -82,3 +85,3 @@ static QString addressbookPersonalVCardName() QString filename = Global::applicationFileName("addressbook", - "businesscard.vcf"); + "businesscard.vcf"); return filename; @@ -88,3 +91,3 @@ static QString addressbookPersonalVCardName() AddressbookWindow::AddressbookWindow( QWidget *parent, const char *name, - WFlags f ) + WFlags f ) : QMainWindow( parent, name, f ), @@ -116,3 +119,3 @@ AddressbookWindow::AddressbookWindow( QWidget *parent, const char *name, QAction *a = new QAction( tr( "New" ), Resource::loadPixmap( "new" ), QString::null, - 0, this, 0 ); + 0, this, 0 ); actionNew = a; @@ -123,3 +126,3 @@ AddressbookWindow::AddressbookWindow( QWidget *parent, const char *name, a = new QAction( tr( "Edit" ), Resource::loadPixmap( "edit" ), QString::null, - 0, this, 0 ); + 0, this, 0 ); actionEdit = a; @@ -130,3 +133,3 @@ AddressbookWindow::AddressbookWindow( QWidget *parent, const char *name, a = new QAction( tr( "Delete" ), Resource::loadPixmap( "trash" ), QString::null, - 0, this, 0 ); + 0, this, 0 ); actionTrash = a; @@ -157,8 +160,8 @@ AddressbookWindow::AddressbookWindow( QWidget *parent, const char *name, if ( Ir::supported() ) { - a = new QAction( tr ("Beam Entry" ), Resource::loadPixmap( "beam" ), QString::null, - 0, this, 0 ); - actionBeam = a; - connect( a, SIGNAL( activated() ), this, SLOT( slotBeam() ) ); - a->addTo( edit ); - a->addTo( listTools ); + a = new QAction( tr ("Beam Entry" ), Resource::loadPixmap( "beam" ), QString::null, + 0, this, 0 ); + actionBeam = a; + connect( a, SIGNAL( activated() ), this, SLOT( slotBeam() ) ); + a->addTo( edit ); + a->addTo( listTools ); } @@ -167,2 +170,10 @@ AddressbookWindow::AddressbookWindow( QWidget *parent, const char *name, + a = new QAction( tr("Import vCard"), QString::null, 0, 0, 0, TRUE ); + actionPersonal = a; + connect( a, SIGNAL( activated() ), this, SLOT( importvCard() ) ); + a->addTo( edit ); + + + edit->insertSeparator(); + a = new QAction( tr("My Personal Details"), QString::null, 0, 0, 0, TRUE ); @@ -184,7 +195,7 @@ AddressbookWindow::AddressbookWindow( QWidget *parent, const char *name, if ( str.isNull() ) { - QMessageBox::warning( this, tr("Out of Space"), - tr("There is not enough space to create\n" - "neccessary startup files.\n" - "\nFree up some space before\nentering data!") - ); + QMessageBox::warning( this, tr("Out of Space"), + tr("There is not enough space to create\n" + "neccessary startup files.\n" + "\nFree up some space before\nentering data!") + ); } @@ -199,7 +210,7 @@ AddressbookWindow::AddressbookWindow( QWidget *parent, const char *name, connect( abList, SIGNAL( empty( bool ) ), - this, SLOT( listIsEmpty( bool ) ) ); + this, SLOT( listIsEmpty( bool ) ) ); connect( abList, SIGNAL( details() ), - this, SLOT( slotListView() ) ); + this, SLOT( slotListView() ) ); connect( abList, SIGNAL(currentChanged(int,int)), - this, SLOT(slotUpdateToolbar()) ); + this, SLOT(slotUpdateToolbar()) ); @@ -209,4 +220,4 @@ AddressbookWindow::AddressbookWindow( QWidget *parent, const char *name, if ( QFile::exists(addressbookOldXMLFilename()) ) { - abList->load( addressbookOldXMLFilename() ); - QFile::remove(addressbookOldXMLFilename()); + abList->load( addressbookOldXMLFilename() ); + QFile::remove(addressbookOldXMLFilename()); } @@ -243,38 +254,46 @@ void AddressbookWindow::slotSetFont( int size ) { - if (size > 2 || size < 0) - size = 1; - - startFontSize = size; - - QFont *currentFont; - - switch (size) { - case 0: - fontMenu->setItemChecked(0, true); - fontMenu->setItemChecked(1, false); - fontMenu->setItemChecked(2, false); - abList->setFont( QFont( defaultFont->family(), defaultFont->pointSize() - 2 ) ); - currentFont = new QFont (abList->font()); - abList->resizeRows(currentFont->pixelSize() + 7); - break; - case 1: - fontMenu->setItemChecked(0, false); - fontMenu->setItemChecked(1, true); - fontMenu->setItemChecked(2, false); - abList->setFont( *defaultFont ); - currentFont = new QFont (abList->font()); - abList->resizeRows(currentFont->pixelSize() + 7); - break; - case 2: - fontMenu->setItemChecked(0, false); - fontMenu->setItemChecked(1, false); - fontMenu->setItemChecked(2, true); - abList->setFont( QFont( defaultFont->family(), defaultFont->pointSize() + 2 ) ); - currentFont = new QFont (abList->font()); - abList->resizeRows(currentFont->pixelSize() + 7); - break; - } + if (size > 2 || size < 0) + size = 1; + + startFontSize = size; + + QFont *currentFont; + + switch (size) { + case 0: + fontMenu->setItemChecked(0, true); + fontMenu->setItemChecked(1, false); + fontMenu->setItemChecked(2, false); + abList->setFont( QFont( defaultFont->family(), defaultFont->pointSize() - 2 ) ); + currentFont = new QFont (abList->font()); + abList->resizeRows(currentFont->pixelSize() + 7); + break; + case 1: + fontMenu->setItemChecked(0, false); + fontMenu->setItemChecked(1, true); + fontMenu->setItemChecked(2, false); + abList->setFont( *defaultFont ); + currentFont = new QFont (abList->font()); + abList->resizeRows(currentFont->pixelSize() + 7); + break; + case 2: + fontMenu->setItemChecked(0, false); + fontMenu->setItemChecked(1, false); + fontMenu->setItemChecked(2, true); + abList->setFont( QFont( defaultFont->family(), defaultFont->pointSize() + 2 ) ); + currentFont = new QFont (abList->font()); + abList->resizeRows(currentFont->pixelSize() + 7); + break; + } +} + + + +void AddressbookWindow::importvCard() { + QString str = OFileDialog::getOpenFileName( 1,"/");//,"", "*", this ); + if(!str.isEmpty() ) + setDocument((const QString&) str ); + } - void AddressbookWindow::setDocument( const QString &filename ) @@ -285,8 +304,8 @@ void AddressbookWindow::setDocument( const QString &filename ) for( QValueList<Contact>::Iterator it = cl.begin(); it != cl.end(); ++it ) { -// QString msg = tr("You received a vCard for\n%1.\nDo You want to add it to your\naddressbook?") -// .arg( (*it).fullName() ); -// if ( QMessageBox::information( this, tr("received contact"), msg, QMessageBox::Ok, QMessageBox::Cancel ) == -// QMessageBox::Ok ) { - abList->addEntry( *it ); -// } +// QString msg = tr("You received a vCard for\n%1.\nDo You want to add it to your\naddressbook?") +// .arg( (*it).fullName() ); +// if ( QMessageBox::information( this, tr("received contact"), msg, QMessageBox::Ok, QMessageBox::Cancel ) == +// QMessageBox::Ok ) { + abList->addEntry( *it ); +// } } @@ -307,5 +326,5 @@ AddressbookWindow::~AddressbookWindow() { - Config cfg("AddressBook"); - cfg.setGroup("Font"); - cfg.writeEntry("fontSize", startFontSize); + Config cfg("AddressBook"); + cfg.setGroup("Font"); + cfg.writeEntry("fontSize", startFontSize); } @@ -330,6 +349,6 @@ void AddressbookWindow::showView() if ( abList->numRows() > 0 ) { - listContainer->hide(); - setCentralWidget( abView() ); - mView->show(); - mView->setFocus(); + listContainer->hide(); + setCentralWidget( abView() ); + mView->show(); + mView->setFocus(); } @@ -341,9 +360,9 @@ void AddressbookWindow::slotListNew() if( !syncing ) { - if ( abEditor ) - abEditor->setEntry( cnt ); - abView()->init( cnt ); - editEntry( NewEntry ); + if ( abEditor ) + abEditor->setEntry( cnt ); + abView()->init( cnt ); + editEntry( NewEntry ); } else { - QMessageBox::warning(this, tr("Contacts"), - tr("Can not edit data, currently syncing")); + QMessageBox::warning(this, tr("Contacts"), + tr("Can not edit data, currently syncing")); } @@ -361,21 +380,21 @@ void AddressbookWindow::slotListDelete() if(!syncing) { - Contact tmpEntry = abList->currentEntry(); - - // get a name, do the best we can... - QString strName = tmpEntry.fullName(); - if ( strName.isEmpty() ) { - strName = tmpEntry.company(); - if ( strName.isEmpty() ) - strName = "No Name"; - } - - - if ( QPEMessageBox::confirmDelete( this, tr( "Contacts" ), - strName ) ) { - abList->deleteCurrentEntry(); - showList(); - } + Contact tmpEntry = abList->currentEntry(); + + // get a name, do the best we can... + QString strName = tmpEntry.fullName(); + if ( strName.isEmpty() ) { + strName = tmpEntry.company(); + if ( strName.isEmpty() ) + strName = "No Name"; + } + + + if ( QPEMessageBox::confirmDelete( this, tr( "Contacts" ), + strName ) ) { + abList->deleteCurrentEntry(); + showList(); + } } else { - QMessageBox::warning( this, tr("Contacts"), - tr("Can not edit data, currently syncing") ); + QMessageBox::warning( this, tr("Contacts"), + tr("Can not edit data, currently syncing") ); } @@ -391,12 +410,12 @@ void AddressbookWindow::slotViewEdit() if(!syncing) { - if (actionPersonal->isOn()) { - editPersonal(); - } else { - if ( !bAbEditFirstTime ) - abEditor->setEntry( abList->currentEntry() ); - editEntry( EditEntry ); - } + if (actionPersonal->isOn()) { + editPersonal(); + } else { + if ( !bAbEditFirstTime ) + abEditor->setEntry( abList->currentEntry() ); + editEntry( EditEntry ); + } } else { - QMessageBox::warning( this, tr("Contacts"), - tr("Can not edit data, currently syncing") ); + QMessageBox::warning( this, tr("Contacts"), + tr("Can not edit data, currently syncing") ); } @@ -425,12 +444,12 @@ void AddressbookWindow::slotBeam() if ( actionPersonal->isOn() ) { - filename = addressbookPersonalVCardName(); - if (!QFile::exists(filename)) - return; // can't beam a non-existent file - c = Contact::readVCard( filename )[0]; + filename = addressbookPersonalVCardName(); + if (!QFile::exists(filename)) + return; // can't beam a non-existent file + c = Contact::readVCard( filename )[0]; } else { - unlink( beamfile ); // delete if exists - c = abList->currentEntry(); - mkdir("/tmp/obex/", 0755); - Contact::writeVCard( beamfile, c ); - filename = beamfile; + unlink( beamfile ); // delete if exists + c = abList->currentEntry(); + mkdir("/tmp/obex/", 0755); + Contact::writeVCard( beamfile, c ); + filename = beamfile; } @@ -450,3 +469,3 @@ void AddressbookWindow::beamDone( Ir *ir ) static void parseName( const QString& name, QString *first, QString *middle, - QString * last ) + QString * last ) { @@ -456,11 +475,11 @@ static void parseName( const QString& name, QString *first, QString *middle, if ( comma > 0 ) { - *last = name.left( comma ); - comma++; - while ( comma < int(name.length()) && name[comma] == ' ' ) - comma++; - rest = name.mid( comma ); + *last = name.left( comma ); + comma++; + while ( comma < int(name.length()) && name[comma] == ' ' ) + comma++; + rest = name.mid( comma ); } else { - int space = name.findRev( ' ' ); - *last = name.mid( space+1 ); - rest = name.left( space ); + int space = name.findRev( ' ' ); + *last = name.mid( space+1 ); + rest = name.left( space ); } @@ -468,6 +487,6 @@ static void parseName( const QString& name, QString *first, QString *middle, if ( space <= 0 ) { - *first = rest; + *first = rest; } else { - *first = rest.left( space ); - *middle = rest.mid( space+1 ); + *first = rest.left( space ); + *middle = rest.mid( space+1 ); } @@ -480,6 +499,6 @@ void AddressbookWindow::appMessage(const QCString &msg, const QByteArray &data) if (msg == "editPersonal()") { - editPersonal(); + editPersonal(); } else if (msg == "editPersonalAndClose()") { - editPersonal(); - close(); + editPersonal(); + close(); } else if ( msg == "addContact(QString,QString)" ) { @@ -489,22 +508,22 @@ void AddressbookWindow::appMessage(const QCString &msg, const QByteArray &data) - Contact cnt; - QString fn, mn, ln; - parseName( name, &fn, &mn, &ln ); - // qDebug( " %s - %s - %s", fn.latin1(), mn.latin1(), ln.latin1() ); - cnt.setFirstName( fn ); - cnt.setMiddleName( mn ); - cnt.setLastName( ln ); - cnt.setEmails( email ); - cnt.setDefaultEmail( email ); - cnt.setFileAs(); - - if ( bAbEditFirstTime ) { - abEditor = new ContactEditor( cnt, &orderedFields, &slOrderedFields, - this, "editor" ); - bAbEditFirstTime = FALSE; - } else { - abEditor->setEntry( cnt ); - } - abView()->init( cnt ); - editEntry( NewEntry ); + Contact cnt; + QString fn, mn, ln; + parseName( name, &fn, &mn, &ln ); + // qDebug( " %s - %s - %s", fn.latin1(), mn.latin1(), ln.latin1() ); + cnt.setFirstName( fn ); + cnt.setMiddleName( mn ); + cnt.setLastName( ln ); + cnt.setEmails( email ); + cnt.setDefaultEmail( email ); + cnt.setFileAs(); + + if ( bAbEditFirstTime ) { + abEditor = new ContactEditor( cnt, &orderedFields, &slOrderedFields, + this, "editor" ); + bAbEditFirstTime = FALSE; + } else { + abEditor->setEntry( cnt ); + } + abView()->init( cnt ); + editEntry( NewEntry ); @@ -550,10 +569,10 @@ void AddressbookWindow::editPersonal() if (QFile::exists(filename)) - me = Contact::readVCard( filename )[0]; + me = Contact::readVCard( filename )[0]; if (bAbEditFirstTime) { - abEditor = new ContactEditor( me, &orderedFields, &slOrderedFields, - this, "editor" ); - // don't create a new editor every time - bAbEditFirstTime = FALSE; + abEditor = new ContactEditor( me, &orderedFields, &slOrderedFields, + this, "editor" ); + // don't create a new editor every time + bAbEditFirstTime = FALSE; } else - abEditor->setEntry( me ); + abEditor->setEntry( me ); @@ -565,8 +584,8 @@ void AddressbookWindow::editPersonal() if ( abEditor->exec() ) { - setFocus(); - Contact new_personal = abEditor->entry(); - QString fname = addressbookPersonalVCardName(); - Contact::writeVCard( fname, new_personal ); - abView()->init(new_personal); - abView()->sync(); + setFocus(); + Contact new_personal = abEditor->entry(); + QString fname = addressbookPersonalVCardName(); + Contact::writeVCard( fname, new_personal ); + abView()->init(new_personal); + abView()->sync(); } @@ -578,12 +597,12 @@ void AddressbookWindow::slotPersonalView() if (!actionPersonal->isOn()) { - // we just turned it off - setCaption( tr("Contacts") ); - actionNew->setEnabled(TRUE); - actionTrash->setEnabled(TRUE); + // we just turned it off + setCaption( tr("Contacts") ); + actionNew->setEnabled(TRUE); + actionTrash->setEnabled(TRUE); #ifndef MAKE_FOR_SHARP_ROM - actionFind->setEnabled(TRUE); + actionFind->setEnabled(TRUE); #endif - slotUpdateToolbar(); // maybe some of the above could be moved there - showList(); - return; + slotUpdateToolbar(); // maybe some of the above could be moved there + showList(); + return; } @@ -602,3 +621,3 @@ void AddressbookWindow::slotPersonalView() if (QFile::exists(filename)) - me = Contact::readVCard( filename )[0]; + me = Contact::readVCard( filename )[0]; @@ -616,7 +635,7 @@ void AddressbookWindow::editEntry( EntryMode entryMode ) if ( bAbEditFirstTime ) { - abEditor = new ContactEditor( entry, &orderedFields, &slOrderedFields, - this, "editor" ); - bAbEditFirstTime = FALSE; - if ( entryMode == EditEntry ) - abEditor->setEntry( abList->currentEntry() ); + abEditor = new ContactEditor( entry, &orderedFields, &slOrderedFields, + this, "editor" ); + bAbEditFirstTime = FALSE; + if ( entryMode == EditEntry ) + abEditor->setEntry( abList->currentEntry() ); } @@ -631,13 +650,13 @@ void AddressbookWindow::editEntry( EntryMode entryMode ) if ( abEditor->exec() ) { - setFocus(); - if ( entryMode == NewEntry ) { - Contact insertEntry = abEditor->entry(); - insertEntry.assignUid(); - abList->addEntry( insertEntry ); - } else { - Contact replaceEntry = abEditor->entry(); - if ( !replaceEntry.isValidUid() ) - replaceEntry.assignUid(); - abList->replaceCurrentEntry( replaceEntry ); - } + setFocus(); + if ( entryMode == NewEntry ) { + Contact insertEntry = abEditor->entry(); + insertEntry.assignUid(); + abList->addEntry( insertEntry ); + } else { + Contact replaceEntry = abEditor->entry(); + if ( !replaceEntry.isValidUid() ) + replaceEntry.assignUid(); + abList->replaceCurrentEntry( replaceEntry ); + } } @@ -650,3 +669,3 @@ void AddressbookWindow::listIsEmpty( bool empty ) if ( !empty ) { - deleteButton->setEnabled( TRUE ); + deleteButton->setEnabled( TRUE ); } @@ -671,11 +690,11 @@ void AddressbookWindow::closeEvent( QCloseEvent *e ) if ( centralWidget() == mView ) { - if (actionPersonal->isOn()) { - // pretend we clicked it off - actionPersonal->setOn(FALSE); - slotPersonalView(); - } else { - showList(); - } - e->ignore(); - return; + if (actionPersonal->isOn()) { + // pretend we clicked it off + actionPersonal->setOn(FALSE); + slotPersonalView(); + } else { + showList(); + } + e->ignore(); + return; } @@ -683,8 +702,8 @@ void AddressbookWindow::closeEvent( QCloseEvent *e ) if(syncing) { - /* shouldn't we save, I hear you say? well its already been set - so that an edit can not occur during a sync, and we flushed - at the start of the sync, so there is no need to save - Saving however itself would cause problems. */ - e->accept(); - return; + /* shouldn't we save, I hear you say? well its already been set + so that an edit can not occur during a sync, and we flushed + at the start of the sync, so there is no need to save + Saving however itself would cause problems. */ + e->accept(); + return; } @@ -692,5 +711,5 @@ void AddressbookWindow::closeEvent( QCloseEvent *e ) if ( save() ) - e->accept(); + e->accept(); else - e->ignore(); + e->ignore(); } @@ -705,27 +724,27 @@ bool AddressbookWindow::save() if ( str.isNull() ) { - if ( QMessageBox::critical( 0, tr("Out of space"), - tr("Unable to save information.\n" - "Free up some space\n" - "and try again.\n" - "\nQuit anyway?"), - QMessageBox::Yes|QMessageBox::Escape, - QMessageBox::No|QMessageBox::Default ) - != QMessageBox::No ) - return TRUE; - else - return FALSE; + if ( QMessageBox::critical( 0, tr("Out of space"), + tr("Unable to save information.\n" + "Free up some space\n" + "and try again.\n" + "\nQuit anyway?"), + QMessageBox::Yes|QMessageBox::Escape, + QMessageBox::No|QMessageBox::Default ) + != QMessageBox::No ) + return TRUE; + else + return FALSE; } else { - if ( !abList->save( str ) ) { - if ( QMessageBox::critical( 0, tr( "Out of space" ), - tr("Unable to save information.\n" - "Free up some space\n" - "and try again.\n" - "\nQuit anyway?"), - QMessageBox::Yes|QMessageBox::Escape, - QMessageBox::No|QMessageBox::Default ) - != QMessageBox::No ) - return TRUE; - else - return FALSE; - } + if ( !abList->save( str ) ) { + if ( QMessageBox::critical( 0, tr( "Out of space" ), + tr("Unable to save information.\n" + "Free up some space\n" + "and try again.\n" + "\nQuit anyway?"), + QMessageBox::Yes|QMessageBox::Escape, + QMessageBox::No|QMessageBox::Default ) + != QMessageBox::No ) + return TRUE; + else + return FALSE; + } } @@ -742,9 +761,9 @@ void AddressbookWindow::slotSettings() if ( frmSettings.exec() ) { - allFields.clear(); - orderedFields.clear(); - slOrderedFields.clear(); - initFields(); - if ( abEditor ) - abEditor->loadFields(); - abList->refresh(); + allFields.clear(); + orderedFields.clear(); + slOrderedFields.clear(); + initFields(); + if ( abEditor ) + abEditor->loadFields(); + abList->refresh(); } @@ -766,3 +785,3 @@ void AddressbookWindow::initFields() int i, - version; + version; Config cfg( "AddressBook" ); @@ -773,3 +792,3 @@ void AddressbookWindow::initFields() for ( i = 0, it = xmlFields.begin(); it != xmlFields.end(); ++it, i++ ) { - allFields.append( i + 3 ); + allFields.append( i + 3 ); } @@ -783,15 +802,15 @@ void AddressbookWindow::initFields() - cfg.setGroup( "ImportantCategory" ); + cfg.setGroup( "ImportantCategory" ); - zn = cfg.readEntry( "Category" + QString::number(i), QString::null ); - while ( !zn.isNull() ) { - if ( zn.contains( tr("Work") ) || zn.contains( tr("Mb") ) ) { - slOrderedFields.clear(); - break; - } - slOrderedFields.append( zn ); - zn = cfg.readEntry( "Category" + QString::number(++i), QString::null ); - } - cfg.setGroup( "Font" ); - startFontSize = cfg.readNumEntry( "fontSize", 1 ); + zn = cfg.readEntry( "Category" + QString::number(i), QString::null ); + while ( !zn.isNull() ) { + if ( zn.contains( tr("Work") ) || zn.contains( tr("Mb") ) ) { + slOrderedFields.clear(); + break; + } + slOrderedFields.append( zn ); + zn = cfg.readEntry( "Category" + QString::number(++i), QString::null ); + } + cfg.setGroup( "Font" ); + startFontSize = cfg.readNumEntry( "fontSize", 1 ); @@ -799,38 +818,38 @@ void AddressbookWindow::initFields() } else { - QString str; - str = getenv("HOME"); - str += "/Settings/AddressBook.conf"; - QFile::remove( str ); + QString str; + str = getenv("HOME"); + str += "/Settings/AddressBook.conf"; + QFile::remove( str ); } if ( slOrderedFields.count() > 0 ) { - for( QStringList::ConstIterator it = slOrderedFields.begin(); - it != slOrderedFields.end(); ++it ) { - QValueList<int>::ConstIterator itVl; - QStringList::ConstIterator itVis; - itVl = allFields.begin(); - for ( itVis = visibleFields.begin(); - itVis != visibleFields.end() && itVl != allFields.end(); - ++itVis, ++itVl ) { - if ( *it == *itVis && itVl != allFields.end() ) { - orderedFields.append( *itVl ); - } - } - } + for( QStringList::ConstIterator it = slOrderedFields.begin(); + it != slOrderedFields.end(); ++it ) { + QValueList<int>::ConstIterator itVl; + QStringList::ConstIterator itVis; + itVl = allFields.begin(); + for ( itVis = visibleFields.begin(); + itVis != visibleFields.end() && itVl != allFields.end(); + ++itVis, ++itVl ) { + if ( *it == *itVis && itVl != allFields.end() ) { + orderedFields.append( *itVl ); + } + } + } } else { - QValueList<int>::ConstIterator it; - for ( it = allFields.begin(); it != allFields.end(); ++it ) - orderedFields.append( *it ); - - slOrderedFields = visibleFields; - orderedFields.remove( Qtopia::AddressUid ); - orderedFields.remove( Qtopia::Title ); - orderedFields.remove( Qtopia::Groups ); - orderedFields.remove( Qtopia::AddressCategory ); - orderedFields.remove( Qtopia::FirstName ); - orderedFields.remove( Qtopia::LastName ); - orderedFields.remove( Qtopia::DefaultEmail ); - orderedFields.remove( Qtopia::FileAs ); - orderedFields.remove( Qtopia::Notes ); - orderedFields.remove( Qtopia::Gender ); - slOrderedFields.remove( tr("Name Title") ); + QValueList<int>::ConstIterator it; + for ( it = allFields.begin(); it != allFields.end(); ++it ) + orderedFields.append( *it ); + + slOrderedFields = visibleFields; + orderedFields.remove( Qtopia::AddressUid ); + orderedFields.remove( Qtopia::Title ); + orderedFields.remove( Qtopia::Groups ); + orderedFields.remove( Qtopia::AddressCategory ); + orderedFields.remove( Qtopia::FirstName ); + orderedFields.remove( Qtopia::LastName ); + orderedFields.remove( Qtopia::DefaultEmail ); + orderedFields.remove( Qtopia::FileAs ); + orderedFields.remove( Qtopia::Notes ); + orderedFields.remove( Qtopia::Gender ); + slOrderedFields.remove( tr("Name Title") ); slOrderedFields.remove( tr("First Name") ); @@ -860,3 +879,3 @@ void AddressbookWindow::slotFind() if ( centralWidget() == abView() ) - showList(); + showList(); @@ -870,3 +889,3 @@ void AddressbookWindow::slotFind() if ( abList->numSelections() ) - abList->clearSelection(); + abList->clearSelection(); @@ -879,15 +898,15 @@ void AddressbookWindow::slotSetCategory( int c ) if ( c <= 0 ) - return; + return; for ( unsigned int i = 1; i < catMenu->count(); i++ ) - catMenu->setItemChecked( i, c == (int)i ); + catMenu->setItemChecked( i, c == (int)i ); if ( c == 1 ) { - abList->setShowCategory( QString::null ); - setCaption( tr("Contacts") + " - " + tr ( "All" ) ); + abList->setShowCategory( QString::null ); + setCaption( tr("Contacts") + " - " + tr ( "All" ) ); } else if ( c == (int)catMenu->count() ) { - abList->setShowCategory( tr( "Unfiled" ) ); - setCaption( tr("Contacts") + " - " + tr( "Unfiled" ) ); + abList->setShowCategory( tr( "Unfiled" ) ); + setCaption( tr("Contacts") + " - " + tr( "Unfiled" ) ); } else { - QString cat = abList->categories()[c - 2]; - abList->setShowCategory( cat ); - setCaption( tr("Contacts") + " - " + cat ); + QString cat = abList->categories()[c - 2]; + abList->setShowCategory( cat ); + setCaption( tr("Contacts") + " - " + cat ); } @@ -897,3 +916,3 @@ void AddressbookWindow::slotSetLetter( char c ) { - abList->setShowByLetter( c ); + abList->setShowByLetter( c ); @@ -906,3 +925,3 @@ void AddressbookWindow::populateCategories() int id, - rememberId; + rememberId; id = 1; @@ -913,12 +932,12 @@ void AddressbookWindow::populateCategories() for ( QStringList::Iterator it = categories.begin(); - it != categories.end(); ++it ) { - catMenu->insertItem( *it, id ); - if ( *it == abList->showCategory() ) - rememberId = id; - ++id; + it != categories.end(); ++it ) { + catMenu->insertItem( *it, id ); + if ( *it == abList->showCategory() ) + rememberId = id; + ++id; } if ( abList->showCategory().isEmpty() ) - slotSetCategory( 1 ); + slotSetCategory( 1 ); else - slotSetCategory( rememberId ); + slotSetCategory( rememberId ); } diff --git a/core/pim/addressbook/addressbook.h b/core/pim/addressbook/addressbook.h index 476c971..da43731 100644 --- a/core/pim/addressbook/addressbook.h +++ b/core/pim/addressbook/addressbook.h @@ -61,2 +61,3 @@ public slots: private slots: + void importvCard(); void slotListNew(); @@ -78,3 +79,3 @@ private slots: private: - void initFields(); // inititialize our fields... + void initFields(); // inititialize our fields... AbLabel *abView(); @@ -86,3 +87,3 @@ private: QValueList<int> allFields, - orderedFields; + orderedFields; QStringList slOrderedFields; @@ -96,3 +97,3 @@ private: QAction *actionNew, *actionEdit, *actionTrash, *actionFind, *actionBeam, - *actionPersonal, *actionMail; + *actionPersonal, *actionMail; diff --git a/core/pim/addressbook/addressbook.pro b/core/pim/addressbook/addressbook.pro index 0d65c74..428af2b 100644 --- a/core/pim/addressbook/addressbook.pro +++ b/core/pim/addressbook/addressbook.pro @@ -21,3 +21,3 @@ INCLUDEPATH += $(OPIEDIR)/include DEPENDPATH += $(OPIEDIR)/include -LIBS += -lqpe +LIBS += -lqpe -lopie |