Example #1
0
CaMessageNodeTree* CuListCtrlLoggedEvent::CreateMessageNode(CaMessageManager* pMsgEntry, CaLoggedEvent* pMsg)
{
	CaMessage* pMsgExist = NULL;
	CaMessageEntry* pEntry = pMsgEntry->FindEntry (pMsg->GetCatType());
	ASSERT (pEntry);
	if (!pEntry)
		return NULL;
	pMsgExist = IVM_LookupMessage (pMsg->GetCatType(), pMsg->GetCode(), pMsgEntry);
	if (pMsgExist)
	{
		//_T("This message is already classified.");
		CString strMsg;
		strMsg.LoadString (IDS_MSG_MESSAGE_ALREADY_CLASSIFIED);
		AfxMessageBox (strMsg);
		return NULL;
	}

	CaMessageNodeTree* pNewMessageNodeTree = NULL;
	Imsgclass c = pMsg->GetClass();
	CString strMsgText = IVM_IngresGenericMessage(pMsg->GetCode(), pMsg->m_strText);
	CaMessage* pNewMessage = new CaMessage (strMsgText, pMsg->GetCode(), pMsg->GetCatType(), c);
	pNewMessage = pMsgEntry->Add (pNewMessage->GetCategory(), pNewMessage);
	
	pNewMessageNodeTree = new CaMessageNodeTree (pNewMessage);
	CString strMsgTitle = pNewMessage->GetTitle();
	if (m_bIngresGenericMessage)
		strMsgTitle = IVM_IngresGenericMessage(pNewMessage->GetCode(), pNewMessage->GetTitle());
	pNewMessageNodeTree->GetNodeInformation().SetNodeTitle(strMsgTitle);
	pNewMessageNodeTree->GetNodeInformation().SetMsgSourceTarget(CV_U);

	return pNewMessageNodeTree;
}
Example #2
0
void CuDlgEventSettingBottom::OnSelchangeComboIngresCategory() 
{
	CWaitCursor doWaitcursor;
	int nRadio = GetCheckedRadioButton (IDC_RADIO1, IDC_RADIO2);
	if (nRadio != IDC_RADIO2)
		return;
	int nSel = m_cComboIngresCategory.GetCurSel();
	if (nSel == CB_ERR)
		return;
	CaMessageEntry* pEntry = (CaMessageEntry*)m_cComboIngresCategory.GetItemData (nSel);
	if (!pEntry)
		return;

	CfEventSetting* pFrame = (CfEventSetting*)GetParentFrame();
	ASSERT (pFrame);
	if (!pFrame)
		return;
	CaMessageManager* pMessageManager = pFrame->GetMessageManager();
	if (!pMessageManager)
		return;
	
	CListCtrl* pListCtrl = &m_cListCtrlIngres;
	CTypedPtrList<CObList, CaLoggedEvent*> lsMsg;
	BOOL bOk = IVM_QueryIngresMessage (pEntry, lsMsg);

	if (!(bOk && pListCtrl))
		return;

	CleanListMessage(pListCtrl);
	CaMessage* pMsg = NULL;
	POSITION pos = lsMsg.GetHeadPosition();
	if (lsMsg.GetCount() > 100)
		pListCtrl->SetItemCount ((int)lsMsg.GetCount());
	while (!lsMsg.IsEmpty())
	{
		CaLoggedEvent* pObj = lsMsg.RemoveHead();
		pMsg = IVM_LookupMessage (pObj->GetCatType(), pObj->GetCode(), pMessageManager);
		if (pMsg)
			pObj->SetClass (pMsg->GetClass());
		else
			pObj->SetClass (pEntry->GetClass());
		pObj->SetClassify(pMsg? TRUE: FALSE);
		AddEventToIngresMessage (pObj);
	}
	EnableButtonFind();
}
Example #3
0
void CuDlgEventSettingBottom::ClassifyIngresMessages(long lCat, long lCode)
{
	int  nImage = 0;

	CListCtrl* pCtrl = &m_cListCtrlIngres;
	if (!pCtrl)
		return;
	CfEventSetting* pFrame = (CfEventSetting*)GetParentFrame();
	ASSERT (pFrame);
	if (!pFrame)
		return;
	CaMessageManager* pMessageManager = pFrame->GetMessageManager();
	if (!pMessageManager)
		return;


	Imsgclass nc = IMSG_NOTIFY;
	BOOL bAll = (lCat == -1)? TRUE: FALSE;
	LV_ITEM item;
	memset (&item, 0, sizeof(item));
	item.mask = LVIF_IMAGE;
	CaLoggedEvent* pMsg = NULL;
	CaMessage* pMsgState = NULL;
	int i, nCount = pCtrl->GetItemCount();
	for (i=0; i<nCount; i++)
	{
		pMsg = (CaLoggedEvent*)pCtrl->GetItemData (i);
		if (!bAll)
		{
			if (pMsg->GetCatType() != lCat)
				continue;
			if (pMsg->GetCode() != lCode)
				continue;
		}

		item.iItem = i;
		pMsgState = IVM_LookupMessage (pMsg->GetCatType(), pMsg->GetCode(), pMessageManager);
		if (!pMsgState)
		{
			pMsg->SetClassify(FALSE);
			nc = IMSG_NOTIFY;
		}
		else
		{
			pMsg->SetClassify(TRUE);
			nc = pMsgState->GetClass();
		}
			
		pMsg->SetClass(nc);
		switch (nc)
		{
		case IMSG_ALERT:
			item.iImage = pMsg->IsClassified()? IM_ALERT: IM_ALERT_U;
			break;
		case IMSG_NOTIFY:
			item.iImage = pMsg->IsClassified()? IM_NOTIFY: IM_NOTIFY_U;
			break;
		case IMSG_DISCARD:
			item.iImage = pMsg->IsClassified()? IM_DISCARD: IM_DISCARD_U;
			break;
		}
		
		pCtrl->SetItem (&item);
	}
}
Example #4
0
void CuDlgEventSettingBottom::ClassifyMessages(long lCat, long lCode, BOOL bActualMessage)
{
	int  nImage = 0;
	CfEventSetting* pFrame = (CfEventSetting*)GetParentFrame();
	ASSERT (pFrame);
	if (!pFrame)
		return;
	CaMessageManager* pMessageManager = pFrame->GetMessageManager();
	if (!pMessageManager)
		return;


	Imsgclass nc = IMSG_NOTIFY;
	BOOL bAll = (lCat == -1)? TRUE: FALSE;
	LV_ITEM item;
	memset (&item, 0, sizeof(item));
	item.mask = LVIF_IMAGE;
	CaLoggedEvent* pMsg = NULL;
	CaMessage* pMsgState = NULL;

	BOOL bLookUp = FALSE;
	CaIvmEvent& loggedEvent = theApp.GetEventData();
	CTypedPtrList<CObList, CaLoggedEvent*>& le = loggedEvent.Get();
	POSITION pos = le.GetHeadPosition();
	while (pos != NULL)
	{
		CaLoggedEvent* pEv = le.GetNext (pos);
		if (!bAll)
		{
			if (pEv->GetCatType() != lCat)
				continue;
			if (pEv->GetCode() != lCode)
				continue;

			if (!bLookUp)
			{
				pMsgState = IVM_LookupMessage (lCat, lCode, pMessageManager);
				bLookUp = TRUE;
			}
		}
		else
		{
			pMsgState = IVM_LookupMessage (pEv->GetCatType(), pEv->GetCode(), pMessageManager);
		}

		if (!pMsgState)
		{
			pEv->SetClassify (FALSE);
			pEv->SetClass (IMSG_NOTIFY);
		}
		else
		{
			pEv->SetClassify (TRUE);
			pEv->SetClass (pMsgState->GetClass());
		}
	}

	int i, nCount = m_cListCtrlGroupBy.GetItemCount();
	for (i=0; i<nCount; i++)
	{
		pMsg = (CaLoggedEvent*)m_cListCtrlGroupBy.GetItemData (i);
		if (!bAll)
		{
			if (pMsg->GetCatType() != lCat)
				continue;
			if (pMsg->GetCode() != lCode)
				continue;
		}

		item.iItem = i;
		nc = pMsg->GetClass();
		switch (nc)
		{
		case IMSG_ALERT:
			item.iImage = pMsg->IsClassified()? IM_ALERT: IM_ALERT_U;
			break;
		case IMSG_NOTIFY:
			item.iImage = pMsg->IsClassified()? IM_NOTIFY: IM_NOTIFY_U;
			break;
		case IMSG_DISCARD:
			item.iImage = pMsg->IsClassified()? IM_DISCARD: IM_DISCARD_U;
			break;
		}
		m_cListCtrlGroupBy.SetItem (&item);
	}

	nCount = m_cListCtrlFullDesc.GetItemCount();
	for (i=0; i<nCount; i++)
	{
		pMsg = (CaLoggedEvent*)m_cListCtrlFullDesc.GetItemData (i);
		if (!bAll)
		{
			if (pMsg->GetCatType() != lCat)
				continue;
			if (pMsg->GetCode() != lCode)
				continue;
		}

		item.iItem = i;
		nc = pMsg->GetClass();
		switch (nc)
		{
		case IMSG_ALERT:
			item.iImage = pMsg->IsClassified()? IM_ALERT: IM_ALERT_U;
			break;
		case IMSG_NOTIFY:
			item.iImage = pMsg->IsClassified()? IM_NOTIFY: IM_NOTIFY_U;
			break;
		case IMSG_DISCARD:
			item.iImage = pMsg->IsClassified()? IM_DISCARD: IM_DISCARD_U;
			break;
		}
		m_cListCtrlFullDesc.SetItem (&item);
	}
}