示例#1
0
History::History(unsigned id)
    : m_contact (id)
{
    Contact *contact = getContacts()->contact(id);
    if (contact == NULL)
        return;
    HistoryFile *f = new HistoryFile(QString::number(id), id);
    if (f->isOpen())
        files.push_back(f);
    else
        delete f;
    void *data;
    ClientDataIterator it = contact->clientDataIterator();
    QStringList fnames;
    while ((data = ++it) != NULL)
    {
        QString name = it.client()->dataName(data);
        if(fnames.contains(name))
            continue;
        fnames.append(name);
        HistoryFile *f = new HistoryFile(name, id);
        f->m_name = name;
        if (f->isOpen())
            files.push_back(f);
        else delete f;
    }
}
示例#2
0
History::History(unsigned id)
{
    m_contact = id;
    Contact *contact = getContacts()->contact(id);
    if (contact == NULL)
        return;
    HistoryFile *f = new HistoryFile(number(id).c_str(), id);
    if (f->isOpen()){
        files.push_back(f);
    }else{
        delete f;
    }
    void *data;
    ClientDataIterator it(contact->clientData);
    while ((data = ++it) != NULL){
        string name = it.client()->dataName(data);
        HistoryFile *f = new HistoryFile(name.c_str(), id);
        f->m_name = name;
        if (f->isOpen()){
            files.push_back(f);
        }else{
            delete f;
        }
    }
}