📄 exmlnode.cpp
字号:
#include "EXMLNode.h"#include "EXMLAttribute.h"#include "WP_EXMLNode.h"#include "WP_EXMLAttribute.h"IEXMLNode::IEXMLNode(){ m_bAttach = false; m_handle = 0;}IEXMLNode::IEXMLNode(const char* pszName, const char* pszValue){ m_bAttach = true; m_handle = (EXML_HANDLE) new WP_EXMLNode(pszName, pszValue);}IEXMLNode::IEXMLNode(EXML_HANDLE handle){ m_handle = handle; m_bAttach = false;}IEXMLNode::~IEXMLNode(){ if (m_bAttach && EXML_INVALID_HANDLE != m_handle) delete (WP_EXMLNode*)m_handle;}//IEXMLNode* IEXMLNode::CreateNode(const char* pszName, const char* pszValue)//{// return new IEXMLNode(pszName, pszValue);//}IEXMLNode IEXMLNode::AddChild(const char* pszName, const char* pszValue){ EXML_HANDLE handle = (EXML_HANDLE) ((WP_EXMLNode*)m_handle)->AddChild(pszName, pszValue); return IEXMLNode(handle);}IEXMLAttribute IEXMLNode::AddAttribute(const char* pszName, const char* pszValue){ EXML_HANDLE handle = (EXML_HANDLE) ((WP_EXMLNode*)m_handle)->AddAttribute(pszName, pszValue); return IEXMLAttribute(handle);}void IEXMLNode::AddChild(IEXMLNode *pChild){ pChild->Detach(); ((WP_EXMLNode*)m_handle)->AddChild((WP_EXMLNode*)(pChild->m_handle));}void IEXMLNode::RemoveChild(IEXMLNode *pNode){ ((WP_EXMLNode*)m_handle)->RemoveChild((WP_EXMLNode*)(pNode->m_handle)); pNode->Attach(); delete ((WP_EXMLNode*)pNode->GetHandle());}void IEXMLNode::AddAttribute(IEXMLAttribute *pAttri){ pAttri->Detach(); ((WP_EXMLNode*)m_handle)->AddAttribute((WP_EXMLAttribute*)(pAttri->GetHandle()));}void IEXMLNode::RemoveAttribute(IEXMLAttribute *pAttri){ ((WP_EXMLNode*)m_handle)->RemoveAttribute((WP_EXMLAttribute*)(pAttri->GetHandle())); pAttri->Detach(); delete ((WP_EXMLAttribute*)pAttri->GetHandle());}void IEXMLNode::SetName(const char *pszName){ ((WP_EXMLNode*)m_handle)->SetName(pszName);}void IEXMLNode::SetValue(const char *pszValue){ ((WP_EXMLNode*)m_handle)->SetValue(pszValue);}const char* IEXMLNode::GetName(){ return ((WP_EXMLNode*)m_handle)->GetName();}const char* IEXMLNode::GetValue(){ return ((WP_EXMLNode*)m_handle)->GetValue();}IEXMLNode IEXMLNode::GetChildNode(long index){ EXML_HANDLE handle = (EXML_HANDLE) ((WP_EXMLNode*)m_handle)->GetChildNode(index); return IEXMLNode(handle);}IEXMLNode IEXMLNode::FindChild(const char *pszQuery){ EXML_HANDLE handle = (EXML_HANDLE) ((WP_EXMLNode*)m_handle)->FindChild(pszQuery); return IEXMLNode(handle);}IEXMLAttribute IEXMLNode::GetAttribute(long index){ EXML_HANDLE handle = (EXML_HANDLE) ((WP_EXMLNode*)m_handle)->GetAttribute(index); return IEXMLAttribute(handle);}IEXMLAttribute IEXMLNode::FindAttribute(const char *szQuery){ EXML_HANDLE handle = (EXML_HANDLE) ((WP_EXMLNode*)m_handle)->FindAttribute(szQuery); return IEXMLAttribute(handle);}long IEXMLNode::GetChildCount(){ return ((WP_EXMLNode*)m_handle)->GetChildCount();}long IEXMLNode::GetAttributeCount(){ return ((WP_EXMLNode*)m_handle)->GetAttributeCount();}const char *IEXMLNode::GetXML(){ int nFormatTabs = 0; return ((WP_EXMLNode*)m_handle)->GetXML(nFormatTabs);}bool IEXMLNode::IsValidNode(){ return (EXML_INVALID_HANDLE != m_handle);}
/// 兼容QT
bool IEXMLNode::isNull()
{
return (EXML_INVALID_HANDLE == m_handle);
}EXML_HANDLE IEXMLNode::GetHandle(){ return m_handle;}void IEXMLNode::Attach(){ m_bAttach = true;}void IEXMLNode::Detach(){ m_bAttach = false;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -