コード例 #1
0
ファイル: UIChat.cpp プロジェクト: VincentKO/KnightOnline
void CUIChat::AddContinueMsg(e_ChatMode eCM, const std::string& szString, D3DCOLOR color)
{
	__ChatInfo* pChatInfo = new __ChatInfo(szString, color);
	m_ContinueMsg.push_back(pChatInfo);

	AddChatMsg(eCM, szString, color);	
}
コード例 #2
0
void CChatRoomDlg::RecvChatMsg( WORD wUserID, const char* pszMsg )
{
	std::list< CChatMember >::iterator iter;
	for( iter = m_Members.begin(); iter != m_Members.end(); ++iter )
	{
		if( iter->GetServerIdx() == wUserID )
		{
			AddChatMsg( CStr::Printf( "%s> %s", iter->GetName(), pszMsg ),
				g_dwWHITE );
			break;
		}
	}

}
コード例 #3
0
void CChatRoomDlg::SendChatMsg()
{
	CWinCtrl* pCtrl = FindChildInPane( IID_PANE_BOTTOM, IID_CHAT_EDIT );
	
	if( pCtrl->GetControlType() != CTRL_EDITBOX )
		return;

	CTEditBox* pEditBox = (CTEditBox*)pCtrl;

	if( pEditBox->IsFocus() )
	{
		if( CChatRoom::GetInstance().GetState() == CChatRoom::STATE_ACTIVATED )
		{
			char* pszMsg = pEditBox->get_text();
			if( pszMsg && strlen( pszMsg ) >= 1 )
				g_pNet->Send_cli_CHATROOM_MSG( pszMsg );
		}
		else
		{
			AddChatMsg(pEditBox->get_text(), g_dwWHITE );	
		}
		pEditBox->clear_text();

		///내가 채팅 메세지를 보내면 항상 리스트는 맨밑으로 이동
		CWinCtrl* pCtrl = FindChildInPane( IID_PANE_BOTTOM, IID_CHAT_LIST);
		if( pCtrl )
		{
			if( pCtrl->GetControlType() == CTRL_ZLISTBOX)
			{
				CZListBox* pListBox = (CZListBox*)pCtrl;
				pCtrl = FindChildInPane( IID_PANE_BOTTOM, IID_CHAT_SCROLLBAR );
				if( pCtrl && pCtrl->GetControlType() == CTRL_SCROLLBAR )
				{
					CTScrollBar* pScrollBar = (CTScrollBar*)pCtrl;
					pScrollBar->SetValue( pListBox->GetMaximum() );
				}
			}
			else
			{
				CTListBox* pListBox = (CTListBox*)pCtrl;
				pCtrl = FindChildInPane( IID_PANE_BOTTOM, IID_CHAT_SCROLLBAR );
				if( pCtrl && pCtrl->GetControlType() == CTRL_SCROLLBAR )
				{
					CTScrollBar* pScrollBar = (CTScrollBar*)pCtrl;
					pScrollBar->SetValue( pListBox->GetMaximum() );
				}
			}			
		}
	}
}
コード例 #4
0
ファイル: UIChat.cpp プロジェクト: VincentKO/KnightOnline
void CUIChat::ShowContinueMsg()
{
	int iSize = m_ContinueMsg.size();
	if( m_iCurContinueMsg > iSize )
		m_iCurContinueMsg = 0;

	int iCnt = 0;
	ChatListItor itor;
	for(itor = m_ContinueMsg.begin(); m_ContinueMsg.end() != itor; ++itor)
	{
		if( iCnt == m_iCurContinueMsg )
		{
			m_iCurContinueMsg++;
			__ChatInfo* pChatInfo = (*itor);
			if(pChatInfo) AddChatMsg(N3_CHAT_CONTINUE, pChatInfo->szChat, pChatInfo->color);	
		}
	}
}