本文整理汇总了C++中kabc::addressee::List::first方法的典型用法代码示例。如果您正苦于以下问题:C++ List::first方法的具体用法?C++ List::first怎么用?C++ List::first使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类kabc::addressee::List
的用法示例。
在下文中一共展示了List::first方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: testDuplicate
void TestDistrList::testDuplicate()
{
kDebug() ;
// This is a special test for the case where we have a contact and a distr list with the same name
KABC::AddressBook *ab = KABC::StdAddressBook::self();
KABC::Addressee addr;
addr.setName( "foo" );
addr.insertEmail( "[email protected]", true );
ab->insertAddressee( addr );
#if 0 // we need a findByFormattedName
KABC::Addressee::List addrList = ab->findByName( "foo" );
assert( addrList.count() == 2 );
bool a = DistributionList::isDistributionList( addrList.first() );
bool b = DistributionList::isDistributionList( addrList.last() );
// one is a distr list, but not both
assert( a || b );
//
assert( ! ( a && b ) );
#endif
DistributionList dl = DistributionList::findByName( ab, "foo" );
assert( !dl.isEmpty() );
assert( DistributionList::isDistributionList( dl ) );
assert( dl.formattedName() == "foo" );
}
示例2: testNewList
void TestDistrList::testNewList()
{
kDebug() ;
DistributionList dl;
dl.setName( "foo" );
assert( !dl.isEmpty() );
check( "name set", dl.formattedName(), "foo" );
assert( DistributionList::isDistributionList( dl ) );
KABC::AddressBook *ab = KABC::StdAddressBook::self();
ab->insertAddressee( dl );
#if 0 // can't do that until we have KABC::AddressBook::findByFormattedName, or we use setName()
KABC::Addressee::List addrList = ab->findByName( "foo" );
assert( addrList.count() == 1 );
KABC::Addressee addr = addrList.first();
assert( !addr.isEmpty() );
check( "correct name", addr.name(), "foo" );
assert( DistributionList::isDistributionList( addr ) );
#else
KABC::Addressee addr = dl;
#endif
DistributionList dl2 = DistributionList::findByName( ab, "foo" );
assert( !dl2.isEmpty() );
check( "correct name", dl2.formattedName(), "foo" );
assert( DistributionList::isDistributionList( dl2 ) );
// Test the ctor that takes an addressee
DistributionList dl3( addr );
assert( !dl3.isEmpty() );
assert( DistributionList::isDistributionList( dl3 ) );
check( "correct name", dl3.formattedName(), "foo" );
}
示例3: openEmail
//-----------------------------------------------------------------------------
void KAddrBookExternal::openEmail(const QString &addr, QWidget *parent)
{
QString email;
QString name;
KABC::Addressee::parseEmailAddress(addr, name, email);
KABC::AddressBook *ab = KABC::StdAddressBook::self(true);
// force a reload of the address book file so that changes that were made
// by other programs are loaded
ab->asyncLoad();
// if we have to reload the address book then we should also wait until
// it's completely reloaded
#if KDE_IS_VERSION(3,4,89)
// This ugly hack will be removed in 4.0
while(!ab->loadingHasFinished())
{
QApplication::eventLoop()->processEvents(QEventLoop::ExcludeUserInput);
// use sleep here to reduce cpu usage
usleep(100);
}
#endif
KABC::Addressee::List addressees = ab->findByEmail(email);
if(addressees.count() > 0)
{
if(kapp->dcopClient()->isApplicationRegistered("kaddressbook"))
{
//make sure kaddressbook is loaded, otherwise showContactEditor
//won't work as desired, see bug #87233
DCOPRef call("kaddressbook", "kaddressbook");
call.send("newInstance()");
}
else
{
kapp->startServiceByDesktopName("kaddressbook");
}
DCOPRef call("kaddressbook", "KAddressBookIface");
call.send("showContactEditor(QString)", addressees.first().uid());
}
else
{
//TODO: Enable the better message at the next string unfreeze
#if 0
QString text = i18n("<qt>The email address <b>%1</b> cannot be "
"found in your addressbook.</qt>").arg(email);
#else
QString text = email + " " + i18n("is not in address book");
#endif
KMessageBox::information(parent, text, QString::null, "notInAddressBook");
}
}
示例4: openAddressbook
void PublishDialog::openAddressbook()
{
KABC::Addressee::List addressList = KABC::AddresseeDialog::getAddressees( this );
if( addressList.isEmpty() ) {
return;
}
KABC::Addressee a = addressList.first();
if ( !a.isEmpty() ) {
int i;
for ( i=0; i<addressList.size(); i++ ) {
a = addressList[i];
mUI.mNameLineEdit->setEnabled( true );
mUI.mEmailLineEdit->setEnabled( true );
QListWidgetItem *item = new QListWidgetItem( mUI.mListWidget );
mUI.mListWidget->setItemSelected( item, true );
mUI.mNameLineEdit->setText( a.realName() );
mUI.mEmailLineEdit->setText( a.preferredEmail() );
mUI.mListWidget->addItem( item );
}
mUI.mRemove->setEnabled( true );
}
}
示例5: create
int create(KCmdLineArgs *args)
{
KODE::Printer p;
if(args->isSet("warning")) p.setCreationWarning(true);
bool createKioslave = args->isSet("create-kioslave");
bool createMain = args->isSet("create-main");
QString filename = args->getOption("filename");
if(createMain)
{
if(filename.isEmpty())
{
kdError() << "Error: No file name given." << endl;
return 1;
}
if(filename.endsWith(".cpp"))
{
filename = filename.left(filename.length() - 4);
}
}
else
{
if(!args->isSet("classname"))
{
kdError() << "Error: No class name given." << endl;
return 1;
}
}
QString className = args->getOption("classname");
QString protocol;
if(createKioslave)
{
if(!args->isSet("protocol"))
{
protocol = className.lower();
kdWarning() << "Warning: No protocol for kioslave given. Assuming '"
<< protocol << "'" << endl;
}
else
{
protocol = args->getOption("protocol");
}
}
KODE::File file;
file.setProject(args->getOption("project"));
QString authorEmail = args->getOption("author-email");
QString authorName;
KABC::Addressee a;
if(authorEmail.isEmpty())
{
a = KABC::StdAddressBook::self()->whoAmI();
authorEmail = a.preferredEmail();
}
else
{
KABC::Addressee::List as =
KABC::StdAddressBook::self()->findByEmail(authorEmail);
if(as.isEmpty())
{
kdDebug() << "Unable to find '" << authorEmail << "' in address book."
<< endl;
}
else
{
a = as.first();
}
}
if(!a.isEmpty())
{
authorName = a.realName();
}
if(!authorEmail.isEmpty())
{
file.addCopyright(QDate::currentDate().year(), authorName, authorEmail);
}
KODE::License l;
if(args->isSet("gpl")) l = KODE::License(KODE::License::GPL);
if(args->isSet("lgpl")) l = KODE::License(KODE::License::LGPL);
l.setQtException(args->isSet("qt-exception"));
file.setLicense(l);
file.setNameSpace(args->getOption("namespace"));
if(createMain)
{
file.addInclude("kaboutdata.h");
file.addInclude("kapplication.h");
file.addInclude("kdebug");
file.addInclude("klocale");
file.addInclude("kcmdlineargs");
//.........这里部分代码省略.........