void RestoreUnreadMessageAlerts(void) { DBEVENTINFO dbei = { sizeof(dbei) }; for (HANDLE hContact = db_find_first(); hContact; hContact = db_find_next(hContact)) for (HANDLE hDbEvent = db_event_firstUnread(hContact); hDbEvent; hDbEvent = db_event_next(hDbEvent)) { dbei.cbBlob = 0; if (db_event_get(hDbEvent, &dbei) == 0) if ((dbei.flags & (DBEF_SENT|DBEF_READ))==0 && ((dbei.eventType==ICQEVENTTYPE_SMS) || (dbei.eventType==ICQEVENTTYPE_SMSCONFIRMATION))) if (dbei.cbBlob>MIN_SMS_DBEVENT_LEN) handleNewMessage((WPARAM)hContact,(LPARAM)hDbEvent); } for (HANDLE hDbEvent = db_event_firstUnread(NULL); hDbEvent; hDbEvent = db_event_next(hDbEvent)) { dbei.cbBlob = 0; if (db_event_get(hDbEvent, &dbei) == 0) if ((dbei.flags & (DBEF_SENT|DBEF_READ))==0 && ((dbei.eventType==ICQEVENTTYPE_SMS) || (dbei.eventType==ICQEVENTTYPE_SMSCONFIRMATION))) if (dbei.cbBlob > MIN_SMS_DBEVENT_LEN) handleNewMessage(NULL, (LPARAM)hDbEvent); } }
void QwcPrivateMessager::setSocket(QwcSocket *socket) { if (m_socket) { disconnect(m_socket, 0, this, 0); } m_socket = socket; if (!socket) { return; } // Install new delegate if (fMessageList->itemDelegate()) { delete fMessageList->itemDelegate(); } QwcUserlistDelegate *listDelegate = new QwcUserlistDelegate; listDelegate->setSocket(m_socket); fMessageList->setItemDelegate(listDelegate); connect(m_socket, SIGNAL(userChanged(QwcUserInfo, QwcUserInfo)), this, SLOT(handleUserChanged(QwcUserInfo, QwcUserInfo)) ); connect(m_socket, SIGNAL(userLeftRoom(int, QwcUserInfo)), this, SLOT(handleUserLeft(int, QwcUserInfo))); connect(m_socket, SIGNAL(privateMessage(QwcUserInfo,QString)), this, SLOT(handleNewMessage(QwcUserInfo,QString))); m_socket = socket; }