Exemplo n.º 1
0
void SessionLayout::OnWindowInitialized(TNotifyUI& msg)
{
	m_pManager->SetTimer(this, INIT_FOCUS_TIMER_ID, 1);

	module::getEmotionModule()->addObserver(this, BIND_CALLBACK_2(SessionLayout::MKOForEmotionModuleCallBack));
	module::getGroupListModule()->addObserver(this, BIND_CALLBACK_2(SessionLayout::MKOForGroupModuleCallBack));

	m_pWebBrowser = dynamic_cast<CWebBrowserUI*>(m_pManager->FindSubControlByName(this, _T("ie")));
	if (m_pWebBrowser) {
		m_pWebBrowser->SetWebBrowserEventHandler(this);
		CString csPath = module::getMiscModule()->getDataDir() + _T("module\\module-content.html");
		m_pWebBrowser->Navigate2(csPath);
	}

	m_pInputRichEdit = dynamic_cast <UIIMEdit*>(m_pManager->FindSubControlByName(this, _T("input_richedit")));
	m_pBtnSendMsg = dynamic_cast <CButtonUI*>(m_pManager->FindSubControlByName(this, _T("sendbtn")));
	m_pBtnClose = dynamic_cast <CButtonUI*>(m_pManager->FindSubControlByName(this, _T("closebtn")));

	m_pBtnEmotion = dynamic_cast <CButtonUI*>(m_pManager->FindSubControlByName(this, _T("emotionbtn")));
	m_pBtnSendImage = dynamic_cast <CButtonUI*>(m_pManager->FindSubControlByName(this, _T("imagebtn")));
    m_pBtnScreenShot = dynamic_cast <CButtonUI*>(m_pManager->FindSubControlByName(this, _T("screenshot")));
	m_pBtnshock = dynamic_cast <CButtonUI*>(m_pManager->FindSubControlByName(this, _T("shockbtn")));
	m_pBtnsendfile = dynamic_cast <CButtonUI*>(m_pManager->FindSubControlByName(this, _T("sendfilebtn")));
	m_pBtnbanGroupMsg = dynamic_cast <CButtonUI*>(m_pManager->FindSubControlByName(this, _T("banGroupMsg")));
	m_pBtndisplayGroupMsg = dynamic_cast <CButtonUI*>(m_pManager->FindSubControlByName(this, _T("displayGroupMsg")));
	m_pBtnadduser = dynamic_cast <CButtonUI*>(m_pManager->FindSubControlByName(this, _T("adduserbtn")));
	m_pSendDescription = dynamic_cast <CTextUI*>(m_pManager->FindSubControlByName(this, _T("senddescription")));
	m_bottomLayout = dynamic_cast<CHorizontalLayoutUI*>(m_pManager->FindSubControlByName(this, _T("bottomLayout")));

	module::SessionEntity* pSessionInfo = SessionEntityManager::getInstance()->getSessionEntityBySId(m_sId);
	if (!pSessionInfo)
	{
		return;
	}
	if (module::SESSION_GROUPTYPE == pSessionInfo->sessionType)
	{
		module::GroupInfoEntity groupInfo;
		if (module::getGroupListModule()->getGroupInfoBySId(m_sId, groupInfo))
		{
			groupInfo.shieldStatus ? m_pBtnbanGroupMsg->SetVisible(true) : m_pBtndisplayGroupMsg->SetVisible(true);
		}
		m_pBtnshock->SetVisible(false);
		m_pBtnsendfile->SetVisible(false);
		m_pBtnadduser->SetToolTip(util::getMultilingual()->getStringById(_T("STRID_GROUPLISTMODULE_DELETEORADDMEMBER")));
		if (groupInfo.type == 1)//固定群
		{
			m_pBtnadduser->SetVisible(false); 
		}		
		m_bGroupSession = TRUE;
		m_pSearchEdit = dynamic_cast<CEditUI*>(m_pManager->FindSubControlByName(this, _T("editSearch")));
		m_pSearchResultList = (CListUI*)m_pManager->FindSubControlByName(this, _T("SearchResult"));
		m_pGroupMemberList = (CListUI*)m_pManager->FindSubControlByName(this, _T("GroupMembers"));
		m_pRightContainer = (CContainerUI*)m_pManager->FindSubControlByName(this, _T("right_part"));
		_UpdateGroupMembersList();
		m_pRightContainer->SetVisible(true);
	}

	UpdateSendMsgShortcut ();
}
Exemplo n.º 2
0
void SessionLayout::OnWindowInitialized(TNotifyUI& msg)
{
	m_pWebBrowser = dynamic_cast<CWebBrowserUI*>(m_pManager->FindSubControlByName(this, _T("ie")));
	if (m_pWebBrowser) {
		m_pWebBrowser->SetWebBrowserEventHandler(this);
		CString csPath = module::getMiscModule()->getDataDir() + _T("module\\module-content.html");
		m_pWebBrowser->Navigate2(csPath);
	}

	m_pInputRichEdit = dynamic_cast <UIIMEdit*>(m_pManager->FindSubControlByName(this, _T("input_richedit")));
	m_pBtnSendMsg = dynamic_cast <CButtonUI*>(m_pManager->FindSubControlByName(this, _T("sendbtn")));
	m_pBtnClose = dynamic_cast <CButtonUI*>(m_pManager->FindSubControlByName(this, _T("closebtn")));

	m_pBtnEmotion = dynamic_cast <CButtonUI*>(m_pManager->FindSubControlByName(this, _T("emotionbtn")));
	m_pBtnSendImage = dynamic_cast <CButtonUI*>(m_pManager->FindSubControlByName(this, _T("imagebtn")));
	m_pBtnshock = dynamic_cast <CButtonUI*>(m_pManager->FindSubControlByName(this, _T("shockbtn")));
	m_pBtnsendfile = dynamic_cast <CButtonUI*>(m_pManager->FindSubControlByName(this, _T("sendfilebtn")));
	m_pBtnbanGroupMsg = dynamic_cast <CButtonUI*>(m_pManager->FindSubControlByName(this, _T("banGroupMsg")));
	m_pBtndisplayGroupMsg = dynamic_cast <CButtonUI*>(m_pManager->FindSubControlByName(this, _T("displayGroupMsg")));
	m_pBtnadduser = dynamic_cast <CButtonUI*>(m_pManager->FindSubControlByName(this, _T("adduserbtn")));
	m_pSendDescription = dynamic_cast <CTextUI*>(m_pManager->FindSubControlByName(this, _T("senddescription")));
	m_bottomLayout = dynamic_cast<CHorizontalLayoutUI*>(m_pManager->FindSubControlByName(this, _T("bottomLayout")));

	SessionEntity* pSessionInfo = SessionEntityManager::getInstance()->getSessionEntityBySId(m_sId);
	if (!pSessionInfo)
	{
		return;
	}
	if (SESSION_GROUPTYPE == pSessionInfo->m_sessionType)
	{
		pSessionInfo->m_bBanGroupMsg ? m_pBtnbanGroupMsg->SetVisible(true) : m_pBtndisplayGroupMsg->SetVisible(true);
		m_pBtnshock->SetVisible(false);
		m_pBtnsendfile->SetVisible(false);
		m_pBtnadduser->SetVisible(false);
		m_bGroupSession = TRUE;
		m_pSearchEdit = dynamic_cast<CEditUI*>(m_pManager->FindSubControlByName(this, _T("editSearch")));
		m_pSearchResultList = (CListUI*)m_pManager->FindSubControlByName(this, _T("SearchResult"));
		m_pGroupMemberList = (CListUI*)m_pManager->FindSubControlByName(this, _T("GroupMembers"));
		m_pRightContainer = (CContainerUI*)m_pManager->FindSubControlByName(this, _T("right_part"));
		_UpdateGroupMembersList();
		m_pRightContainer->SetVisible(true);
	}

	UpdateSendMsgKey();
}