亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? dsacdobject.cpp

?? dsacd_ivr 的實現
?? CPP
?? 第 1 頁 / 共 2 頁
字號:
// dsACDObject.cpp: implementation of the dsACDObject class.
//
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "dsACD_IVR.h"
#include "dsACDStruct.h"
#include "dsACDObject.h"

#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif

//////////////////////////////////////////////////////////////////////
/********************************************************************************
*						以下為鏈表結構中的操作          
/********************************************************************************/
void dsMapHTreeToObj::AddMapItem(HTREEITEM h, dsACDObjectBase *pObj)
{
	if (pListHead == NULL)
	{
		pListHead = pListTail = new ListMapItem;
		pListHead->hTree = h;
		pListHead->pACDObj = pObj;
		pListHead->pListNext =NULL;
	}
	else
	{
		ListMapItem *pTemp = new ListMapItem;
		pTemp->hTree = h;
		pTemp->pACDObj = pObj;
		pTemp->pListNext = NULL;

		pListTail->pListNext = pTemp;
		pListTail = pTemp;
	}
}

dsMapHTreeToObj::ListMapItem * dsMapHTreeToObj::Find(HTREEITEM h)
{
	ListMapItem * pTemp = pListHead;
	for (; pTemp != NULL; pTemp = pTemp->pListNext)
	{
		if (pTemp->hTree == h)
		{
			return pTemp;
		}
	}
	return NULL;
}

dsMapHTreeToObj::ListMapItem * dsMapHTreeToObj::GetPreItem(ListMapItem * pItem)
{
	ListMapItem * pTemp = pListHead;
	if (pItem == pListHead)
		return NULL;
	for (; pTemp!= NULL && (pTemp->pListNext)!= pItem; pTemp = pTemp->pListNext);
	return pTemp;
}

void dsMapHTreeToObj::RemoveMapItem(HTREEITEM h)
{
	ListMapItem * pTemp = Find(h);
	if (pTemp != NULL)
	{
		if (pTemp == pListHead)
		{
			if (pListTail == pListHead)
			{	
				delete pTemp->pACDObj; 
				delete pTemp;
				pListTail = pListHead = NULL;
			}
			else
			{
				pListHead = pListHead->pListNext;
				delete pTemp->pACDObj; 
				delete pTemp;
			}
		}
		else if (pTemp == pListTail)
		{
			ListMapItem * pPreTemp = GetPreItem(pTemp);
			pListTail = pPreTemp;
			pListTail->pListNext = NULL;
			delete pTemp->pACDObj; 
			delete pTemp;
		}
		else 
		{
			ListMapItem * pPreTemp = GetPreItem(pTemp);
			pPreTemp->pListNext = pTemp->pListNext;
			delete pTemp->pACDObj; 
			delete pTemp;
		}
	}
}

void  dsMapHTreeToObj::RemoveAllListItem()
{
	while (pListHead != NULL)
	{
		ListMapItem *pTemp = pListHead;
		pListHead = pListHead->pListNext;
		delete pTemp->pACDObj; 
		delete pTemp;		
	}
}

void dsMapHTreeToObj::SetAt(HTREEITEM h, dsACDObjectBase * pObj)
{
	ListMapItem * pTemp = Find(h);
	if (pTemp != NULL)
	{
		delete pTemp->pACDObj;
		pTemp->pACDObj = pObj;
	}
}

void dsMapHTreeToObj::SetTreeItem(HTREEITEM hOldTree, HTREEITEM hNewTree)
{
	ListMapItem * pTemp = Find(hOldTree);
	if (pTemp != NULL)
		pTemp->hTree = hNewTree;
}

dsACDObjectBase * dsMapHTreeToObj::FindObj(HTREEITEM h)
{
	ListMapItem * pTemp = Find(h);
	if (pTemp != NULL)
		return pTemp->pACDObj;
	return NULL;
}

/********************************************************************************
*						以下為具體語句中的文件操作          
/********************************************************************************/

//	四條框架語句中的寫文件
void dsACDDataDefine::WritetoFile (CStdioFile& m_IOFile, int flag)
{
	m_IOFile.WriteString( "[DataDefine]\n");

	CString str;
	str.Format("%x",nID);
	m_IOFile.WriteString(str + ":");

	str.Format("%d",flag);
	m_IOFile.WriteString( "Flag=" + str + ";\n");
}

void dsACDReturnValue::WritetoFile (CStdioFile& m_IOFile, int flag)
{
	CString str;
	str.Format("%x",nID);
	m_IOFile.WriteString(str + ":");

	str.Format("%d",flag);
	m_IOFile.WriteString( "Flag=" + str + ";\n");
}

void dsACDFlowBegin::WritetoFile (CStdioFile& m_IOFile, int flag)
{
	m_IOFile.WriteString( "[FlowBegin]\n");

	CString str;
	str.Format("%x",nID);
	m_IOFile.WriteString(str + ":");

	str.Format("%d",flag);
	m_IOFile.WriteString( "Flag=" + str + ";\n");
}

void dsACDFlowEnd::WritetoFile (CStdioFile& m_IOFile, int flag)
{
	m_IOFile.WriteString( "[FlowEnd]\n");

	CString str;
	str.Format("%x",nID);
	m_IOFile.WriteString(str + ":");

	str.Format("%d",flag);	
	m_IOFile.WriteString( "Flag=" + str + ";\n");
}

//	變量定義語句中的文件讀寫
void dsACDObjVariable::WritetoFile (CStdioFile& m_IOFile, int flag)
{
	CString str;
	str.Format("%x",nID);
	m_IOFile.WriteString( str + ":" );

	str.Format("%d",flag);		
	m_IOFile.WriteString( "Flag=" + str + ";");

	m_IOFile.WriteString( "Name=" + pInfo->Name + ";");
	m_IOFile.WriteString( "Value=" + pInfo->Value + ";");
	m_IOFile.WriteString( "Comment=" + pInfo->Comment + "\n");
}
void dsACDObjVariable::ReadformFile(const CString &buf, dsVD_INFO *pInfo, CString &csItemText)
{
	pInfo->Name = buf.Mid(buf.Find("Name")+5, buf.Find("Value")-buf.Find("Name")-6);
	pInfo->Value = buf.Mid(buf.Find("Value")+6, buf.Find("Comment")-buf.Find("Value")-7);
	pInfo->Comment = buf.Right(buf.GetLength()-buf.Find("Comment")-8);

	if ((pInfo->Value == "")&&(pInfo->Comment == ""))
		csItemText = "變量定義:" + pInfo->Name ;
	else if (pInfo->Value == "")
		csItemText = "變量定義:" + pInfo->Name  + " {" + pInfo->Comment + "}";
	else if (pInfo->Comment == "")
		csItemText = "變量定義:" + pInfo->Name  + " 初值 " +pInfo->Value;
	else
		csItemText = "變量定義:" + pInfo->Name  + " 初值 " +pInfo->Value + " {" + pInfo->Comment + "}";
}

//	數據分類語句中的文件讀寫
void dsACDObjDataSort::WritetoFile (CStdioFile& m_IOFile, int flag)
{
	CString str;
	str.Format("%x",nID);
	m_IOFile.WriteString( str + ":" );

	str.Format("%d",flag);		
	m_IOFile.WriteString( "Flag=" + str + ";");

	m_IOFile.WriteString( "Comment=" + pInfo->Comment + "\n");
}
void dsACDObjDataSort::ReadformFile(const CString &buf, dsDS_INFO *pInfo, CString &csItemText)
{
	pInfo->Comment = buf.Right(buf.GetLength()-buf.Find("Comment")-8);

	if (pInfo->Comment == "")
		csItemText = "數據分類";
	else
		csItemText = "數據分類 {" + pInfo->Comment + "}";
}

//	數據庫連接語句中的文件讀寫
void dsACDDBConnect::WritetoFile (CStdioFile& m_IOFile, int flag)
{
	CString str;
	str.Format("%x",nID);
	m_IOFile.WriteString( str + ":" );

	str.Format("%d",flag);		
	m_IOFile.WriteString( "Flag=" + str + ";");

	m_IOFile.WriteString( "DB_NAME=" + pInfo->Name + ";");
	m_IOFile.WriteString( "DB_LINK=" + pInfo->Link + ";");
	m_IOFile.WriteString( "CMD_TYPE=" + pInfo->Type + ";");
	m_IOFile.WriteString( "CMD_CONTENT=" + pInfo->Content + ";");
	m_IOFile.WriteString( "DB_COMMENT=" + pInfo->Comment + "\n");
}
void dsACDDBConnect::ReadformFile(const CString &buf, dsDBConn_INFO *pInfo, CString &csItemText)
{
	pInfo->Name = buf.Mid(buf.Find("DB_NAME")+8, buf.Find("DB_LINK")-buf.Find("DB_NAME")-9);
	pInfo->Link = buf.Mid(buf.Find("DB_LINK")+8, buf.Find("CMD_TYPE")-buf.Find("DB_LINK")-9);
	pInfo->Type = buf.Mid(buf.Find("CMD_TYPE")+9, buf.Find("CMD_CONTENT")-buf.Find("CMD_TYPE")-10);
	pInfo->Content = buf.Mid(buf.Find("CMD_CONTENT")+12, buf.Find("DB_COMMENT")-buf.Find("CMD_CONTENT")-13);
	pInfo->Comment = buf.Right(buf.GetLength()-buf.Find("DB_COMMENT")-11);

	if (pInfo->Comment != "")
		csItemText = "數據庫連接:" + pInfo->Name + " " + pInfo->Type + " " + pInfo->Content + " {" + pInfo->Comment + "}";
	else 
		csItemText = "數據庫連接:" + pInfo->Name + " " + pInfo->Type + " " + pInfo->Content;
}

//	條件控制語句中的文件讀寫
void dsACDConControl::WritetoFile (CStdioFile& m_IOFile, int flag)
{
	CString str;
	str.Format("%x",nID);
	m_IOFile.WriteString( str + ":" );

	str.Format("%d",flag);		
	m_IOFile.WriteString( "Flag=" + str + ";");

	m_IOFile.WriteString( "Condition=" + pInfo->Condition + ";");
	m_IOFile.WriteString( "Comment=" + pInfo->Comment + "\n");
}
void dsACDConControl::ReadformFile(const CString &buf, dsCC_INFO *pInfo, CString &csItemText)
{
	pInfo->Condition = buf.Mid(buf.Find("Condition")+10, buf.Find("Comment")-buf.Find("Condition")-11);
	pInfo->Comment = buf.Right(buf.GetLength()-buf.Find("Comment")-8);

	if ((pInfo->Condition == "")&&(pInfo->Comment == ""))
		csItemText = "條件控制: 空" ;
	else if (pInfo->Condition == "")
		csItemText = "條件控制: 空 {" + pInfo->Comment + "}";
	else if (pInfo->Comment == "")
		csItemText = "條件控制: " + pInfo->Condition;
	else
		csItemText = "條件控制: " + pInfo->Condition + " {" + pInfo->Comment + "}";
}
void dsACDConTrue::WritetoFile (CStdioFile& m_IOFile, int flag)
{
	CString str;
	str.Format("%x",nID);
	m_IOFile.WriteString(str + ":");

	str.Format("%d",flag);
	m_IOFile.WriteString( "Flag=" + str + ";\n");
}
void dsACDConFalse::WritetoFile (CStdioFile& m_IOFile, int flag)
{
	CString str;
	str.Format("%x",nID);
	m_IOFile.WriteString(str + ":");

	str.Format("%d",flag);
	m_IOFile.WriteString( "Flag=" + str + ";\n");
}

//	多路分支語句中的文件讀寫
void dsACDSwitch::WritetoFile (CStdioFile& m_IOFile, int flag)
{
	CString str;
	str.Format("%x",nID);
	m_IOFile.WriteString( str + ":" );

	str.Format("%d",flag);		
	m_IOFile.WriteString( "Flag=" + str + ";");

	m_IOFile.WriteString( "Condition=" + pInfo->Condition + ";");
	m_IOFile.WriteString( "Comment=" + pInfo->Comment + "\n");
}
void dsACDSwitch::ReadformFile(const CString &buf, dsSM_INFO *pInfo, CString &csItemText)
{
	pInfo->Condition = buf.Mid(buf.Find("Condition")+10, buf.Find("Comment")-buf.Find("Condition")-11);
	pInfo->Comment = buf.Right(buf.GetLength()-buf.Find("Comment")-8);

	if ((pInfo->Condition == "")&&(pInfo->Comment == ""))
		csItemText = "多路分支: 空" ;
	else if (pInfo->Condition == "")
		csItemText = "多路分支: 空 {" + pInfo->Comment + "}";
	else if (pInfo->Comment == "")
		csItemText = "多路分支: " + pInfo->Condition;
	else
		csItemText = "多路分支: " + pInfo->Condition + " {" + pInfo->Comment + "}";
}
void dsACDDefaultMatch::WritetoFile (CStdioFile& m_IOFile, int flag)
{
	CString str;
	str.Format("%x",nID);
	m_IOFile.WriteString(str + ":");

	str.Format("%d",flag);
	m_IOFile.WriteString( "Flag=" + str + ";\n");
}

//	分支匹配語句中的文件讀寫
void dsACDMatch::WritetoFile (CStdioFile& m_IOFile, int flag)
{
	CString str;
	str.Format("%x",nID);
	m_IOFile.WriteString( str + ":" );

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美三级日韩三级| 午夜精品免费在线| 欧美国产日韩精品免费观看| 欧美mv日韩mv国产网站| 欧美成人精精品一区二区频| 日韩三级视频在线看| 日韩一区二区电影网| 91精品国产综合久久久蜜臀图片| 欧美日韩视频在线一区二区| 欧美午夜精品理论片a级按摩| 在线视频一区二区三区| 欧美性色综合网| 欧美高清hd18日本| 精品成人一区二区| 国产亚洲欧美日韩俺去了| 久久久精品中文字幕麻豆发布| 精品国产乱码久久久久久图片| 精品av综合导航| 久久九九99视频| 亚洲三级电影网站| 亚洲资源中文字幕| 青青草一区二区三区| 激情综合网最新| 成人美女视频在线看| av色综合久久天堂av综合| 色呦呦一区二区三区| 欧美日韩免费一区二区三区| 9191国产精品| 精品国产免费久久| 中文字幕不卡的av| 亚洲国产精品麻豆| 久久99精品久久久久久国产越南| 国产成人aaa| 91行情网站电视在线观看高清版| 欧美一级高清大全免费观看| 国产婷婷色一区二区三区在线| 亚洲品质自拍视频| 日日夜夜精品视频天天综合网| 九九精品一区二区| 99久久久久久99| 6080午夜不卡| 欧美激情在线免费观看| 亚洲成人免费在线观看| 国产乱人伦精品一区二区在线观看 | 人妖欧美一区二区| 亚洲成人动漫一区| 爽爽淫人综合网网站| 精品无码三级在线观看视频| 国产凹凸在线观看一区二区| 色哟哟在线观看一区二区三区| 欧美日韩三级一区二区| 欧美大片在线观看| 欧美国产成人在线| 亚洲午夜精品久久久久久久久| 麻豆精品视频在线| 99视频在线精品| 欧美精选在线播放| 国产人妖乱国产精品人妖| 亚洲欧美日韩国产中文在线| 婷婷丁香久久五月婷婷| 日本vs亚洲vs韩国一区三区 | 不卡的电影网站| 成人动漫视频在线| 91精品国产麻豆| 中文字幕巨乱亚洲| 日韩高清一区二区| 99精品视频一区二区三区| 欧美精品一二三四| 欧美激情一区二区三区在线| 亚洲国产一区二区a毛片| 国产一区二区久久| 欧美在线播放高清精品| 久久免费美女视频| 亚洲第一激情av| 国产成人高清在线| 538在线一区二区精品国产| 国产精品久久久久桃色tv| 日韩精品色哟哟| 不卡电影一区二区三区| 欧美一区二区在线看| 亚洲欧美日韩精品久久久久| 韩国毛片一区二区三区| 欧美色综合久久| 久久久久免费观看| 日韩精品一卡二卡三卡四卡无卡| av激情成人网| 精品国产91乱码一区二区三区| 一区二区免费视频| 成人久久久精品乱码一区二区三区| 7777精品伊人久久久大香线蕉| 亚洲欧美一区二区三区孕妇| 国产乱码精品一区二区三区忘忧草 | 亚洲欧洲另类国产综合| 亚洲国产综合人成综合网站| 色狠狠桃花综合| 国产精品盗摄一区二区三区| 国内外精品视频| 欧美一级夜夜爽| 亚洲一区二区三区三| 91视频xxxx| 国产精品网站在线观看| 国产综合久久久久影院| 日韩精品专区在线影院重磅| 午夜成人免费电影| 99精品一区二区| 亚洲国产精品成人久久综合一区| 久久99精品一区二区三区| 欧美夫妻性生活| 午夜视频一区在线观看| 在线观看亚洲精品视频| 亚洲欧美中日韩| www.欧美日韩| 国产精品午夜电影| 成人动漫一区二区三区| 2020国产精品自拍| 成人免费观看av| 国产精品毛片大码女人| 成人18精品视频| 1区2区3区欧美| 色综合久久综合网欧美综合网 | 亚洲欧美一区二区在线观看| 国产精品一区二区在线播放| 欧美浪妇xxxx高跟鞋交| 免费看欧美女人艹b| 欧美成人精品二区三区99精品| 美女精品一区二区| 26uuu另类欧美亚洲曰本| 激情国产一区二区| 久久精品视频一区| 成人aa视频在线观看| 综合欧美亚洲日本| 日本精品视频一区二区| 亚洲精品中文在线影院| 色拍拍在线精品视频8848| 亚洲综合视频网| 91精品视频网| 韩国v欧美v亚洲v日本v| 欧美激情中文字幕| 91看片淫黄大片一级在线观看| 一区二区三区中文字幕精品精品 | 91麻豆自制传媒国产之光| 亚洲综合精品久久| 欧美一区二区三区免费视频| 久久99九九99精品| 中文字幕欧美区| 色综合天天综合网天天看片| 亚洲一区在线电影| 日韩一级免费观看| 国产精品资源在线观看| 亚洲天堂福利av| 一本一道综合狠狠老| 精品一二三四区| 亚洲欧洲av另类| 欧美一区二区三区成人| 国产成人超碰人人澡人人澡| 1区2区3区国产精品| 欧美日韩国产bt| 国产一区二三区好的| 亚洲精品五月天| 欧美二区在线观看| 国产一区二区导航在线播放| 亚洲欧美一区二区视频| 欧美一区二区三区男人的天堂| 国产精品一区二区久激情瑜伽 | 日韩三区在线观看| 不卡的av网站| 日韩综合小视频| 中文字幕av免费专区久久| 91网站视频在线观看| 午夜精品福利一区二区三区蜜桃| 久久久精品综合| 欧美日韩精品综合在线| 懂色av一区二区在线播放| 亚洲成人av一区二区三区| 国产日韩精品一区| 欧美日本国产一区| 99视频一区二区| 亚洲成年人影院| 欧美国产日韩一二三区| 欧美一区二区播放| 在线亚洲高清视频| 国产在线日韩欧美| 午夜精品免费在线| 日韩美女久久久| 国产亚洲一区字幕| 884aa四虎影成人精品一区| 成人av午夜电影| 狠狠狠色丁香婷婷综合激情| 亚洲一二三四区| 久久久精品黄色| 日韩欧美一级在线播放| 欧美日韩精品一区二区三区蜜桃| 97久久超碰精品国产| 狠狠色狠狠色综合日日91app| 性欧美大战久久久久久久久| 亚洲三级在线看| 国产免费观看久久| 久久久久99精品国产片| 欧美tk丨vk视频| 日韩小视频在线观看专区|