Esempio n. 1
0
void Container::contactSelected(int)
{
    UserWnd *userWnd = m_tabBar->currentWnd();
    if (userWnd == NULL)
        return;
    m_wnds->raiseWidget(userWnd);
    m_bar->setParam((void*)userWnd->id());
    QString name = userWnd->getName();
    Command cmd;
    cmd->id = CmdContainerContact;
    cmd->text_wrk = NULL;
    if (!name.isEmpty())
        cmd->text_wrk = strdup(name.utf8());
    cmd->icon  = userWnd->getIcon();
    cmd->param = (void*)(userWnd->id());
    cmd->popup_id = MenuContainerContact;
    cmd->flags = BTN_PICT;
    Event e(EventCommandChange, cmd);
    m_bar->processEvent(&e);
    setIcon(Pict(cmd->icon));
    setCaption(userWnd->getLongName());
    m_bar->checkState();
    m_status->message(userWnd->status());
    if (isActiveWindow())
        userWnd->markAsRead();
}
Esempio n. 2
0
QString Container::name()
{
    UserWnd *wnd = m_tabBar->currentWnd();
    if (wnd)
        return wnd->getName();
    return i18n("Container");
}
Esempio n. 3
0
void Container::contactSelected(int)
{
    UserWnd *userWnd = m_tabBar ? m_tabBar->currentWnd() : 0;
    if (userWnd == NULL)
        return;
    m_wnds->raiseWidget(userWnd);
    userWnd->setFocus();
    m_bar->setParam((void*)userWnd->id());
    Command cmd;
    cmd->id = CmdContainerContact;
    cmd->text_wrk = userWnd->getName();
    cmd->icon  = userWnd->getIcon();
    cmd->param = (void*)(userWnd->id());
    cmd->popup_id = MenuContainerContact;
    cmd->flags = BTN_PICT;
    EventCommandChange e(cmd);
    e.setNoProcess();
    m_bar->processEvent(&e);
    setMessageType(userWnd->type());
    setIcon(Pict(cmd->icon));
    setCaption(userWnd->getLongName());
    m_bar->checkState();
    m_status->message(userWnd->status());
    if (isActiveWindow())
        userWnd->markAsRead();

    if (CorePlugin::m_plugin->getShowAvatarInContainer()) {
        Client *client = NULL;
        unsigned j=0;
        QImage img;
        while (j < getContacts()->nClients()){
               client = getContacts()->getClient(j++);
               img = client->userPicture(userWnd->id());
               if (!img.isNull())
                   break;
        }

        if (!img.isNull()) {
            m_avatar_label.setPixmap(img);
            if (!m_avatar_label.isVisible())
                m_avatar_window.show();
        } else {
            m_avatar_label.clear();
            m_avatar_window.hide();
        }
    } else {
        m_avatar_label.clear();
        m_avatar_window.hide();
    }
}
Esempio n. 4
0
void Container::contactChanged(Contact *contact)
{
    UserWnd *userWnd = m_tabBar->currentWnd();
    if (userWnd && (contact->id() == userWnd->id())){
        QString name = userWnd->getName();
        Command cmd;
        cmd->id = CmdContainerContact;
        cmd->text_wrk = strdup(name.utf8());
        cmd->icon  = userWnd->getIcon();
        cmd->param = (void*)(contact->id());
        cmd->popup_id = MenuContainerContact;
        cmd->flags = BTN_PICT;
        Event e(EventCommandChange, cmd);
        m_bar->processEvent(&e);
        setIcon(Pict(cmd->icon));
        setCaption(userWnd->getLongName());
    }
}
Esempio n. 5
0
void Container::contactChanged(Contact *contact)
{
    UserWnd *userWnd = NULL;
    if (m_tabBar){
        userWnd = m_tabBar->currentWnd();
    }else if (!m_childs.empty()){
        userWnd = m_childs.front();
    }
    if (userWnd && contact && (contact->id() == userWnd->id())){
        Command cmd;
        cmd->id = CmdContainerContact;
        cmd->text_wrk = userWnd->getName();
        cmd->icon  = userWnd->getIcon();
        cmd->param = (void*)(contact->id());
        cmd->popup_id = MenuContainerContact;
        cmd->flags = BTN_PICT;
        EventCommandChange e(cmd);
        m_bar->processEvent(&e);
        e.setNoProcess();
        setIcon(Pict(cmd->icon));
        setCaption(userWnd->getLongName());
    }
}