00001 /* 00002 * Licensed to the Apache Software Foundation (ASF) under one or more 00003 * contributor license agreements. See the NOTICE file distributed with 00004 * this work for additional information regarding copyright ownership. 00005 * The ASF licenses this file to You under the Apache License, Version 2.0 00006 * (the "License"); you may not use this file except in compliance with 00007 * the License. You may obtain a copy of the License at 00008 * 00009 * http://www.apache.org/licenses/LICENSE-2.0 00010 * 00011 * Unless required by applicable law or agreed to in writing, software 00012 * distributed under the License is distributed on an "AS IS" BASIS, 00013 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 00014 * See the License for the specific language governing permissions and 00015 * limitations under the License. 00016 */ 00017 00018 /* 00019 * $Id: DOMText.hpp 527149 2007-04-10 14:56:39Z amassari $ 00020 */ 00021 00022 #if !defined(XERCESC_INCLUDE_GUARD_DOMTEXT_HPP) 00023 #define XERCESC_INCLUDE_GUARD_DOMTEXT_HPP 00024 00025 #include <xercesc/util/XercesDefs.hpp> 00026 #include <xercesc/dom/DOMCharacterData.hpp> 00027 00028 XERCES_CPP_NAMESPACE_BEGIN 00029 00030 00051 class CDOM_EXPORT DOMText: public DOMCharacterData { 00052 protected: 00053 // ----------------------------------------------------------------------- 00054 // Hidden constructors 00055 // ----------------------------------------------------------------------- 00058 DOMText() {} 00059 DOMText(const DOMText &other) : DOMCharacterData(other) {} 00061 00062 private: 00063 // ----------------------------------------------------------------------- 00064 // Unimplemented constructors and operators 00065 // ----------------------------------------------------------------------- 00068 DOMText & operator = (const DOMText &); 00070 00071 public: 00072 // ----------------------------------------------------------------------- 00073 // All constructors are hidden, just the destructor is available 00074 // ----------------------------------------------------------------------- 00081 virtual ~DOMText() {}; 00083 00084 // ----------------------------------------------------------------------- 00085 // Virtual DOMText interface 00086 // ----------------------------------------------------------------------- 00107 virtual DOMText *splitText(XMLSize_t offset) = 0; 00109 00120 virtual bool getIsElementContentWhitespace() const = 0; 00121 00128 virtual const XMLCh* getWholeText() const = 0; 00129 00158 virtual DOMText* replaceWholeText(const XMLCh* content) = 0; 00160 00161 // ----------------------------------------------------------------------- 00162 // Non-standard extension 00163 // ----------------------------------------------------------------------- 00172 virtual bool isIgnorableWhitespace() const = 0; 00174 00175 }; 00176 00177 00178 XERCES_CPP_NAMESPACE_END 00179 00180 #endif 00181 00182