⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 poomlist.cpp

📁 用来显示PDA的系统信息,控制PDA的动作 today pugin程序.
💻 CPP
字号:
#include "StdAfx.h"
#include "PoomList.h"

CPoomList::CPoomList(void)
{
	m_pDataFirst=m_pDataSelected=m_pDataLast=m_pCurrentData=NULL;
	m_dwDataCount = 0;
}

CPoomList::~CPoomList(void)
{
	while(m_pDataFirst)
	{
		m_pCurrentData = m_pDataFirst;
		m_pDataFirst = m_pDataFirst->pNext;
		if(m_pCurrentData->pAppointment)
			free(m_pCurrentData->pAppointment);
		if(m_pCurrentData->pTask)
			free(m_pCurrentData->pTask);

		free(m_pCurrentData);
	}
	m_pDataFirst=m_pDataSelected=m_pDataLast=m_pCurrentData=NULL;
	m_dwDataCount = 0;
}

BOOL	CPoomList::AddDataToList(POOMDATA *pData)
{
	if(m_pDataFirst)
	{
		while(m_pCurrentData->pNext)
		{
			m_pCurrentData = m_pCurrentData->pNext;
		}

		m_pCurrentData->pNext = pData;
		pData->pPrev = m_pCurrentData;
		pData->pNext = NULL;

		m_pDataLast = pData;
	}
	else
	{
		pData->pNext=pData->pPrev=NULL;
		m_pDataFirst=m_pDataLast=m_pCurrentData=pData;
	}
	m_dwDataCount++;

	return TRUE;
}

BOOL	CPoomList::RemoveDataFromList(DWORD dwID)
{
	POOMDATA *pTemp = m_pDataFirst;
	while(pTemp)
	{
		if(pTemp->dwPoomId == dwID)
		{
			m_pDataSelected = pTemp;
			break;
		}

		pTemp = pTemp->pNext;
	}

	if(m_pDataSelected)
	{
		if(m_pDataSelected->pPrev)
		{
			if(m_pDataSelected->pNext)
			{
				//remove middle node :data<-removedata->data
				m_pDataSelected->pPrev->pNext = m_pDataSelected->pNext;
				m_pDataSelected->pNext->pPrev = m_pDataSelected->pPrev;
			}
			else
			{
				//remove tail node : data<-removedata
				m_pDataSelected->pPrev->pNext=NULL;
				m_pDataLast = m_pDataSelected->pPrev;
			}
		}
		else
		{
			if(m_pDataSelected->pNext)
			{
				//remove head node:removedata->data;
				m_pDataSelected->pNext->pPrev = NULL;
				m_pDataFirst = m_pDataSelected->pNext;
			}
			else
			{
				//remove only one node:removedata
				free(m_pDataSelected);
				m_dwDataCount--;
				m_pDataFirst=m_pDataSelected=m_pDataLast=m_pCurrentData=NULL;
				return TRUE;
			}
		}
		//free buffer
		free(m_pDataSelected);
		m_dwDataCount--;
		m_pDataFirst=m_pDataSelected=m_pDataLast=m_pCurrentData=NULL;
	}
	return TRUE;
}

BOOL	CPoomList::UpdateDataToList(DWORD dwID)
{
	return TRUE;
}

BOOL	CPoomList::DataExistIn(POOMDATA *pData)
{
	POOMDATA *pTemp = m_pDataFirst;
	while(pTemp)
	{
		if(pTemp->dwPoomId==pData->dwPoomId)
			return TRUE;

		pTemp = pTemp->pNext;
	}

	return FALSE;
}

BOOL	CPoomList::DataExistIn(LPCTSTR	lpszText)
{
	return FALSE;
}
POOMDATA*	CPoomList::GetIndexData(int iPos)
{
	int	i=0;
	POOMDATA *pTemp = m_pDataFirst;
	while(pTemp)
	{
		if(i==iPos)
			break;
		pTemp = pTemp->pNext;
		i++;
	}
	if(pTemp)
		return pTemp;

	return NULL;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -