rem: if ( !vcardStr.isEmpty() ) vcard = QString::fromLocal8Bit( vcardStr );
context: int KAddressBookApp::newInstance(){  if ( isRestored() ) {    // There can only be one main window    if ( KMainWindow::canBeRestored( 1 ) ) {      mMainWin = new KAddressBookMain;      mMainWin->show();      mMainWin->restore( 1 );    }  } else {    KCmdLineArgs *args = KCmdLineArgs::parsedArgs();    QCString addrStr = args->getOption( "addr" );    QCString uidStr = args->getOption( "uid" );    QCString vcardStr = args->getOption( "vcard" );    QString addr, uid, vcard;    if ( !addrStr.isEmpty() )      addr = QString::fromLocal8Bit( addrStr );    if ( !uidStr.isEmpty() )      uid = QString::fromLocal8Bit( uidStr );    if ( !vcardStr.isEmpty() )      vcard = QString::fromLocal8Bit( vcardStr );    if ( args->isSet( "editor-only" ) ) {      if ( !mMainWin )        mMainWin = new KAddressBookMain;        KStartupInfo::appStarted();        mMainWin->hide();    } else {      if ( mMainWin ) {        mMainWin->show();        KWin::activateWindow( mMainWin->winId() );        KStartupInfo::appStarted();      } else {        mMainWin = new KAddressBookMain;        mMainWin->show();      }    }    // Can not see why anyone would pass both a uid and an email address, so I'll leave it that two contact editors will show if they do    if ( !addr.isEmpty() )      mMainWin->addEmail( addr );    if ( !vcard.isEmpty() )      mMainWin->importVCard( vcard );    if ( !uid.isEmpty() )      mMainWin->showContactEditor( uid );    if ( args->isSet( "new-contact" ) ) {      mMainWin->newContact();    }  }  return 0;}