//析构函数 CDlgCustomFace::~CDlgCustomFace() { if (GetActiveStatus() == true) { m_MissionManager.ConcludeMissionItem(this,false); } }
//修改判断 bool CEditUnderWrite::IsModifyStatus() { //状态判断 if (m_bNeedSend==true) return true; if (GetActiveStatus()==true) return true; return false; }
//更新签名 VOID CEditUnderWrite::UpdateUnderWrite() { if (IsWindowVisible()==TRUE) { //获取信息 TCHAR szUnderWrite[LEN_UNDER_WRITE]=TEXT(""); GetWindowText(szUnderWrite,CountArray(szUnderWrite)); //用户信息 CGlobalUserInfo * pGlobalUserInfo=CGlobalUserInfo::GetInstance(); tagGlobalUserData * pGlobalUserData=pGlobalUserInfo->GetGlobalUserData(); //更新判断 bool bActiveMission=false; if ((IsModifyStatus()==true)&&(lstrcmp(szUnderWrite,m_szUnderWrite)!=0L)) bActiveMission=true; if ((IsModifyStatus()==false)&&(lstrcmp(szUnderWrite,pGlobalUserData->szUnderWrite)!=0L)) bActiveMission=true; //更新判断 if (bActiveMission==true) { //设置信息 m_bNeedSend=true; lstrcpyn(m_szUnderWrite,szUnderWrite,CountArray(m_szUnderWrite)); //终止任务 CMissionManager * pMissionManager=GetMissionManager(); if (GetActiveStatus()==true) pMissionManager->ConcludeMissionItem(this,false); //设置地址 LPCTSTR pszCurrentServer=pMissionManager->GetCurrentServer(); if ((pszCurrentServer!=NULL)&&(pszCurrentServer[0]!=0)) pMissionManager->SetCustomServer(pszCurrentServer); //激活任务 pMissionManager->AvtiveMissionItem(this,false); //隐藏控件 ShowWindow(SW_HIDE); //更新界面 ASSERT(m_pParentWnd!=NULL); m_pParentWnd->RedrawWindow(NULL,NULL,RDW_INVALIDATE|RDW_ERASE|RDW_UPDATENOW|RDW_ERASENOW); } else { //关闭控件 CloseUnderWrite(); } } return; }
//消耗消息 VOID CEditUnderWrite::OnDestroy() { __super::OnDestroy(); //终止任务 if (GetActiveStatus()==true) { //变量定义 CMissionManager * pMissionManager=GetMissionManager(); if (pMissionManager!=NULL) pMissionManager->ConcludeMissionItem(this,false); //更新界面 ASSERT(m_pParentWnd!=NULL); m_pParentWnd->RedrawWindow(NULL,NULL,RDW_INVALIDATE|RDW_ERASE|RDW_UPDATENOW|RDW_ERASENOW); } return; }
//关闭控件 VOID CEditUnderWrite::CloseUnderWrite() { //关闭判断 if ((m_bNeedSend==false)&&(GetActiveStatus()==false)) { //销毁窗口 DestroyWindow(); } else { //隐藏窗口 ShowWindow(SW_HIDE); } //更新界面 ASSERT(m_pParentWnd!=NULL); m_pParentWnd->RedrawWindow(NULL,NULL,RDW_INVALIDATE|RDW_ERASE|RDW_UPDATENOW|RDW_ERASENOW); return; }