BOOL SM_ChangeNick(const TCHAR* pszID, const char* pszModule, GCEVENT * gce) { SESSION_INFO* pTemp = m_WndList, *pLast = NULL; if (!pszModule) return FALSE; while (pTemp != NULL) { if ((!pszID || !lstrcmpi(pTemp->ptszID, pszID)) && !lstrcmpiA(pTemp->pszModule, pszModule)) { USERINFO* ui = UM_FindUser(pTemp->pUsers, gce->ptszUID); if (ui) { replaceStr(&ui->pszNick, gce->ptszText); SM_MoveUser(pTemp->ptszID, pTemp->pszModule, ui->pszUID); if (pTemp->hWnd) { SendMessage(pTemp->hWnd, GC_UPDATENICKLIST, 0, 0); if(pTemp->dat) GetMyNick(pTemp->dat); SendMessage(pTemp->hWnd, GC_UPDATESTATUSBAR, 0, 0); } } if (pszID) return TRUE; } pLast = pTemp; pTemp = pTemp->next; } return TRUE; }
static void OnChangeNick(SESSION_INFO *si) { if (si->hWnd) { if (si->dat) GetMyNick(si->dat); SendMessage(si->hWnd, GC_UPDATESTATUSBAR, 0, 0); } }
static void OnNewUser(SESSION_INFO *si, USERINFO*) { if (si->hWnd) { SendMessage(si->hWnd, GC_UPDATENICKLIST, 0, 0); if (si->dat) GetMyNick(si->dat); } }