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

? 歡迎來(lái)到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? document.cpp

?? This software aims to create an applet and panel tools to manage a wireless interface card, such as
?? CPP
字號(hào):
//
// Document.cpp
//
// $Id: //poco/Main/XML/src/Document.cpp#5 $
//
// Copyright (c) 2004, Guenter Obiltschnig/Applied Informatics.
// All rights reserved.
// 
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions
// are met:
// 
// 1. Redistributions of source code must retain the above copyright
//    notice, this list of conditions and the following disclaimer.
// 
// 2. Redistributions in binary form must reproduce the above copyright
//    notice, this list of conditions and the following disclaimer in the
//    documentation and/or other materials provided with the distribution.
// 
// 3. Redistributions in any form must be accompanied by information on
//    how to obtain complete source code for this software and any
//    accompanying software that uses this software.  The source code
//    must either be included in the distribution or be available for no
//    more than the cost of distribution plus a nominal fee, and must be
//    freely redistributable under reasonable conditions.  For an
//    executable file, complete source code means the source code for all
//    modules it contains.  It does not include source code for modules or
//    files that typically accompany the major components of the operating
//    system on which the executable file runs.
// 
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
// COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
// INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
// BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
// CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
// LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
// ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
// POSSIBILITY OF SUCH DAMAGE.
//


#include "DOM/Document.h"
#include "DOM/DocumentType.h"
#include "DOM/DOMImplementation.h"
#include "DOM/Element.h"
#include "DOM/Attr.h"
#include "DOM/DocumentFragment.h"
#include "DOM/Text.h"
#include "DOM/Comment.h"
#include "DOM/CDATASection.h"
#include "DOM/ProcessingInstruction.h"
#include "DOM/EntityReference.h"
#include "DOM/DOMException.h"
#include "DOM/ElementsByTagNameList.h"
#include "DOM/Entity.h"
#include "DOM/Notation.h"
#include "XML/Name.h"
#include "XML/NamePool.h"


XML_BEGIN


const XMLString Document::NODE_NAME = toXMLString("#document");


Document::Document(NamePool* pNamePool): 
	AbstractContainerNode(0),
	_pDocumentType(0),
	_eventSuspendLevel(0)
{
	if (pNamePool)
	{
		_pNamePool = pNamePool;
		_pNamePool->duplicate();
	}
	else
	{
		_pNamePool = new NamePool;
	}
}


Document::Document(DocumentType* pDocumentType, NamePool* pNamePool): 
	AbstractContainerNode(0),
	_pDocumentType(pDocumentType),
	_eventSuspendLevel(0)
{
	if (pNamePool)
	{
		_pNamePool = pNamePool;
		_pNamePool->duplicate();
	}
	else
	{
		_pNamePool = new NamePool;
	}
	if (_pDocumentType)
	{
		_pDocumentType->duplicate();
		_pDocumentType->setOwnerDocument(this);
	}
}


Document::~Document()
{
	if (_pDocumentType) _pDocumentType->release();
	_pNamePool->release();
}


bool Document::dispatchEvent(Event* evt)
{
	return _eventSuspendLevel > 0 || AbstractContainerNode::dispatchEvent(evt);
}


void Document::collectGarbage()
{
	_autoReleasePool.release();
}


void Document::suspendEvents()
{
	++_eventSuspendLevel;
}


void Document::resumeEvents()
{
	poco_assert_dbg (_eventSuspendLevel > 0);

	--_eventSuspendLevel;
}


const DOMImplementation& Document::implementation() const
{
	return DOMImplementation::instance();
}


Element* Document::documentElement() const
{
	// Skip non-element nodes before the document element
	Node* pCur = firstChild();
	while (pCur)
	{
		if (dynamic_cast<Element*>(pCur))
			return static_cast<Element*>(pCur);
		pCur = pCur->nextSibling();
	}
	return 0;
}


Element* Document::createElement(const XMLString& tagName) const
{
	return new Element(const_cast<Document*>(this), EMPTY_STRING, EMPTY_STRING, tagName); 
}


DocumentFragment* Document::createDocumentFragment() const
{
	return new DocumentFragment(const_cast<Document*>(this));
}


Text* Document::createTextNode(const XMLString& data) const
{
	return new Text(const_cast<Document*>(this), data);
}


Comment* Document::createComment(const XMLString& data) const
{
	return new Comment(const_cast<Document*>(this), data);
}


CDATASection* Document::createCDATASection(const XMLString& data) const
{
	return new CDATASection(const_cast<Document*>(this), data);
}


ProcessingInstruction* Document::createProcessingInstruction(const XMLString& target, const XMLString& data) const
{
	return new ProcessingInstruction(const_cast<Document*>(this), target, data);
}


Attr* Document::createAttribute(const XMLString& name) const
{
	return new Attr(const_cast<Document*>(this), 0, EMPTY_STRING, EMPTY_STRING, name, EMPTY_STRING);
}


EntityReference* Document::createEntityReference(const XMLString& name) const
{
	return new EntityReference(const_cast<Document*>(this), name);
}


NodeList* Document::getElementsByTagName(const XMLString& name) const
{
	return new ElementsByTagNameList(const_cast<Document*>(this), name);	
}


const XMLString& Document::nodeName() const
{
	return NODE_NAME;
}


unsigned short Document::nodeType() const
{
	return Node::DOCUMENT_NODE;
}


Node* Document::importNode(Node* importedNode, bool deep)
{
	return static_cast<AbstractNode*>(importedNode)->copyNode(deep, this);
}


Element* Document::createElementNS(const XMLString& namespaceURI, const XMLString& qualifiedName) const
{
	return new Element(const_cast<Document*>(this), namespaceURI, Name::localName(qualifiedName), qualifiedName);
}


Attr* Document::createAttributeNS(const XMLString& namespaceURI, const XMLString& qualifiedName) const
{
	return new Attr(const_cast<Document*>(this), 0, namespaceURI, Name::localName(qualifiedName), qualifiedName, EMPTY_STRING);
}


NodeList* Document::getElementsByTagNameNS(const XMLString& namespaceURI, const XMLString& localName) const
{
	return new ElementsByTagNameListNS(const_cast<Document*>(this), namespaceURI, localName);	
}


Element* Document::getElementById(const XMLString& elementId) const
{
	return 0;
}


Event* Document::createEvent(const XMLString& eventType) const
{
	if (eventType == MutationEvent::DOMSubtreeModified          ||
	    eventType == MutationEvent::DOMNodeInserted             ||
		eventType == MutationEvent::DOMNodeRemoved              ||
		eventType == MutationEvent::DOMNodeRemovedFromDocument  ||
		eventType == MutationEvent::DOMNodeInsertedIntoDocument ||
		eventType == MutationEvent::DOMAttrModified             ||
		eventType == MutationEvent::DOMCharacterDataModified)
	{
		return new MutationEvent(const_cast<Document*>(this), eventType);
	}
	throw DOMException(DOMException::NOT_SUPPORTED_ERR);
}


Node* Document::copyNode(bool deep, Document* pOwnerDocument) const
{
	throw DOMException(DOMException::NOT_SUPPORTED_ERR);
}


void Document::setDoctype(DocumentType* pDoctype)
{
	if (_pDocumentType) _pDocumentType->release();
	_pDocumentType = pDoctype;
	if (_pDocumentType)
	{
		_pDocumentType->duplicate();
		_pDocumentType->setOwnerDocument(this);
	}
}


bool Document::eventsSuspended() const
{
	return _eventSuspendLevel > 0;
}


bool Document::events() const
{
	return _eventSuspendLevel == 0;
}


Entity* Document::createEntity(const XMLString& name, const XMLString& publicId, const XMLString& systemId, const XMLString& notationName) const
{
	return new Entity(const_cast<Document*>(this), name, publicId, systemId, notationName);
}


Notation* Document::createNotation(const XMLString& name, const XMLString& publicId, const XMLString& systemId) const
{
	return new Notation(const_cast<Document*>(this), name, publicId, systemId);
}


XML_END

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产成人av福利| 一区二区三区欧美亚洲| 韩国欧美国产1区| 中文字幕一区二区三区在线不卡 | 久久影视一区二区| 国精产品一区一区三区mba视频| 丁香一区二区三区| 日韩中文字幕区一区有砖一区 | 狠狠色综合色综合网络| 亚洲日穴在线视频| 2024国产精品视频| 欧美亚洲动漫精品| 激情综合网天天干| 18成人在线观看| 日韩亚洲电影在线| 国产成人丝袜美腿| 欧美韩国一区二区| 91丨porny丨最新| 亚洲成人福利片| 欧美www视频| 成人免费不卡视频| 日韩国产精品大片| 亚洲不卡在线观看| 秋霞成人午夜伦在线观看| 亚洲一区二区在线观看视频| 91麻豆精品国产无毒不卡在线观看 | 91美女片黄在线观看| 午夜精品久久一牛影视| 日韩视频免费观看高清完整版| 奇米色一区二区| 中国色在线观看另类| 色一情一伦一子一伦一区| 国产精品久久久久aaaa| 色综合网站在线| 九九热在线视频观看这里只有精品| 久久综合999| 51精品秘密在线观看| 成人动漫精品一区二区| 久久99国产乱子伦精品免费| 免费在线观看成人| 亚洲电影激情视频网站| 中文成人综合网| 久久久久国产精品免费免费搜索| 制服丝袜在线91| 欧美一区中文字幕| 欧美日韩精品一区二区| 欧美人与禽zozo性伦| 欧美区一区二区三区| 欧美日韩免费一区二区三区| 欧美日韩一区二区三区免费看| 91在线视频免费观看| 国产高清无密码一区二区三区| 欧美理论在线播放| 91精品午夜视频| 成人欧美一区二区三区| 五月天久久比比资源色| 成人免费黄色大片| 日韩一区二区三区在线| 亚洲免费av高清| 丰满少妇在线播放bd日韩电影| 日韩综合小视频| 丝袜美腿高跟呻吟高潮一区| 久久av资源网| 色婷婷av一区二区三区软件| 欧美色视频在线观看| 国产丝袜欧美中文另类| 亚洲综合免费观看高清完整版在线| 亚洲一级二级在线| 国产激情精品久久久第一区二区| 成人激情动漫在线观看| 欧美色成人综合| 欧美激情一区二区| 日本午夜一区二区| 97久久精品人人做人人爽| 欧美草草影院在线视频| 一区二区高清在线| 成人免费视频国产在线观看| 日韩视频一区在线观看| 亚洲国产视频在线| 日本丶国产丶欧美色综合| 2020国产成人综合网| 亚洲国产视频在线| 色综合久久久久综合体桃花网| 欧美美女网站色| 国产精品免费视频网站| 欧美制服丝袜第一页| 蜜臀av性久久久久蜜臀aⅴ四虎 | a4yy欧美一区二区三区| 亚洲午夜国产一区99re久久| 7777精品伊人久久久大香线蕉的 | 精品无人码麻豆乱码1区2区| 国产欧美综合色| 91传媒视频在线播放| 免费在线成人网| 中文字幕制服丝袜一区二区三区| 色哟哟国产精品| 久久精品国产成人一区二区三区| 国产精品青草久久| 91精品中文字幕一区二区三区| 国产白丝网站精品污在线入口| 性欧美疯狂xxxxbbbb| 欧美激情在线一区二区| 色婷婷av一区二区三区gif | 欧美日韩高清一区二区| 婷婷成人综合网| 国产欧美日韩亚州综合 | 91黄视频在线| 日韩av一二三| 中文字幕不卡在线观看| 欧洲在线/亚洲| 懂色一区二区三区免费观看| 亚洲一区二区在线免费看| 久久久国产精品不卡| 在线欧美日韩国产| 国产成人免费高清| 青青青爽久久午夜综合久久午夜| 久久久久亚洲蜜桃| 欧美老女人第四色| 成人aa视频在线观看| 亚洲超丰满肉感bbw| 亚洲精品成人a在线观看| 国产精品久久网站| 日韩一区二区不卡| 91免费版pro下载短视频| 国产福利不卡视频| 国产毛片一区二区| 久久精品国产亚洲a| 免费在线观看一区| 久久精品二区亚洲w码| 免费成人在线视频观看| 天堂成人免费av电影一区| 中文字幕一区二区三区四区不卡 | 国产成人丝袜美腿| 亚洲欧美日韩国产手机在线| 日韩欧美国产电影| 日本精品一区二区三区四区的功能| 久久av中文字幕片| 午夜精品久久久久久久99樱桃| 国产精品久久福利| 日韩欧美的一区二区| 欧美精品久久一区| 欧美性生活久久| 欧美怡红院视频| 欧美在线综合视频| 欧美性欧美巨大黑白大战| 91色porny蝌蚪| www.亚洲色图.com| av动漫一区二区| 91在线观看污| 不卡视频一二三| 色老汉一区二区三区| 欧美色图在线观看| 欧美精品久久天天躁| 日韩区在线观看| 精品国产乱码久久久久久闺蜜| 精品久久久久99| 中文字幕不卡一区| 中文字幕日韩精品一区| 亚洲欧美一区二区久久| 亚洲国产精品一区二区尤物区| 性做久久久久久| 国产制服丝袜一区| 波多野结衣91| 777久久久精品| 久久综合精品国产一区二区三区| 国产午夜亚洲精品理论片色戒| 国产精品区一区二区三| 日韩精品一级中文字幕精品视频免费观看| 午夜视频在线观看一区二区| 韩国一区二区三区| 在线视频一区二区三| 精品国产乱码久久久久久闺蜜| 亚洲欧洲日产国码二区| 日韩中文欧美在线| 99精品欧美一区| wwww国产精品欧美| 午夜精品久久久久| 成人开心网精品视频| 日韩欧美国产精品一区| 一区二区三区四区激情| 国产v综合v亚洲欧| 欧美xxxx老人做受| 日韩高清不卡一区二区| 色综合天天天天做夜夜夜夜做| 久久只精品国产| 午夜av一区二区三区| 在线观看日韩精品| 国产精品久久久久aaaa| 国产精品影视网| 日韩三级在线观看| 久久精品国产99国产| 日韩一区二区视频| 日本免费新一区视频| 欧美日本精品一区二区三区| 日韩理论片一区二区| 日本韩国一区二区| 一区二区三区日韩欧美| 欧美在线不卡视频| 午夜视频一区二区| 欧美男女性生活在线直播观看|