Exemplo n.º 1
0
WORD SSIManager::nextContactId()
{
    if ( d->nextContactId == 0 )
        d->nextContactId++;

    d->nextContactId = findFreeId( d->itemIdList, d->nextContactId );

    if ( d->nextContactId == 0xFFFF )
    {
        kdWarning(OSCAR_RAW_DEBUG) << k_funcinfo << "No free id!" << endl;
        return 0xFFFF;
    }

    if ( d->itemIdList.contains( d->nextContactId ) == 0 )
        d->itemIdList.append( d->nextContactId );

    return d->nextContactId++;
}
Exemplo n.º 2
0
int Phone::createCall()
{
	int newId = findFreeId();
	if (newId < 0)
	{
		throw Error(QString("max number of calls reached (%1)").arg(maxcall));
	}
	else
	{
		calls[newId] = new Call(newId, myName);
		connect( calls[newId], SIGNAL(connectedSignal(int)), this, SLOT(connectedCall(int)) );	
		connect( calls[newId], SIGNAL(cancelCallSignal(int)), this, SLOT(cancelCall(int)) );	
		connect( calls[newId], SIGNAL(abortSignal(int, QString)), this, SLOT(abortCall(int, QString)) );
		connect( calls[newId], SIGNAL(warningSignal(int, QString)), this, SLOT(callWarning(int, QString)) );
		connect( calls[newId], SIGNAL(newKeySignal(int, QString)), this, SLOT(receivedNewKey(int, QString)) );
		connect( calls[newId], SIGNAL(cryptedSignal(int)), this, SLOT(cryptCall(int)) );	
		connect( calls[newId], SIGNAL(initSignal(int)), this, SLOT(playInit(int)) );	
		connect( calls[newId], SIGNAL(ringSignal(int)), this, SLOT(playRing(int)) );	
	}
	return newId;
}