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

📄 qvfield20.cpp

📁 Windows上的MUD客户端程序
💻 CPP
字号:
#include <QvFields.h>
#include <QvRoute.h>
#include <ChTypes.h>
#include <ChList.h>

// VRML 2.0 style routing
class QvRoute;

class QvRouteList : public ChPtrList<QvRoute>
{
	public:
		QvRouteList() : ChPtrList<QvRoute>() {} ;
		virtual ~QvRouteList() {};
};

QvBool
QvField::pumpData()
{
	if(m_pRoutes && !m_pRoutes->IsEmpty())
	{
		ChPosition pos = m_pRoutes->GetHeadPosition();
		while(pos)
		{
			QvRoute *pRoute = m_pRoutes->GetNext(pos);
			QvField *pTarget = pRoute->GetDestination();
			propagate(pTarget);
		}

	}
	return TRUE;
}

void QvField::propagate(QvField *dest)
{
	//*dest = *this; ??
}

void QvField::addRoute(QvRoute *pRoute)
{
	if(!m_pRoutes) m_pRoutes = new QvRouteList;
	if(m_pRoutes)
	{
		ChPosition pos = m_pRoutes->Find(pRoute);
		if(!pos)
		{
			m_pRoutes->AddTail(pRoute);
		}

	}
}

void QvField::removeRoutes()
{
	if(m_pRoutes)
	{
		while(!m_pRoutes->IsEmpty())
		{
			QvRoute *pRoute = m_pRoutes->RemoveHead();
			pRoute->SetSource(0);
		}
		delete m_pRoutes;
	}
}

void QvField::removeRoute(QvRoute *pRoute)
{
	if(m_pRoutes)
	{
		ChPosition pos = m_pRoutes->Find(pRoute);
		if(pos)
		{
			m_pRoutes->Remove(pos);
		}
	}
}

⌨️ 快捷键说明

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