• Skip to content
  • Skip to link menu
KDE 3.5 API Reference
  • KDE API Reference
  • API Reference
  • Sitemap
  • Contact Us
 

KHTML

dom_text.cpp

Go to the documentation of this file.
00001 
00023 #include "dom/dom_exception.h"
00024 #include "dom/dom_text.h"
00025 #include "xml/dom_textimpl.h"
00026 
00027 using namespace DOM;
00028 
00029 CharacterData::CharacterData() : Node()
00030 {
00031 }
00032 
00033 CharacterData::CharacterData(const CharacterData &other) : Node(other)
00034 {
00035 }
00036 
00037 CharacterData &CharacterData::operator = (const Node &other)
00038 {
00039     NodeImpl* ohandle = other.handle();
00040     if ( impl != ohandle ) {
00041         if (!ohandle ||
00042             ( ohandle->nodeType() != CDATA_SECTION_NODE &&
00043               ohandle->nodeType() != TEXT_NODE &&
00044               ohandle->nodeType() != COMMENT_NODE )) {
00045             if ( impl ) impl->deref();
00046             impl = 0;
00047         } else {
00048             Node::operator =(other);
00049     }
00050     }
00051     return *this;
00052 }
00053 
00054 CharacterData &CharacterData::operator = (const CharacterData &other)
00055 {
00056     Node::operator =(other);
00057     return *this;
00058 }
00059 
00060 CharacterData::~CharacterData()
00061 {
00062 }
00063 
00064 DOMString CharacterData::data() const
00065 {
00066     if(!impl) return DOMString();
00067     return ((CharacterDataImpl *)impl)->data();
00068 }
00069 
00070 void CharacterData::setData( const DOMString &str )
00071 {
00072     if (!impl)
00073     return; // ### enable throw DOMException(DOMException::NOT_FOUND_ERR);
00074 
00075     int exceptioncode = 0;
00076     ((CharacterDataImpl *)impl)->setData(str, exceptioncode);
00077     if ( exceptioncode )
00078     throw DOMException( exceptioncode );
00079     return;
00080 }
00081 
00082 unsigned long CharacterData::length() const
00083 {
00084     if ( impl )
00085     return ((CharacterDataImpl *)impl)->length();
00086     return 0;
00087 }
00088 
00089 DOMString CharacterData::substringData( const unsigned long offset, const unsigned long count )
00090 {
00091     if (!impl)
00092     return DOMString(); // ### enable throw DOMException(DOMException::NOT_FOUND_ERR);
00093 
00094     int exceptioncode = 0;
00095     DOMString str = ((CharacterDataImpl *)impl)->substringData(offset, count, exceptioncode);
00096     if ( exceptioncode )
00097     throw DOMException( exceptioncode );
00098     return str;
00099 }
00100 
00101 void CharacterData::appendData( const DOMString &arg )
00102 {
00103     if (!impl)
00104     return; // ### enable throw DOMException(DOMException::NOT_FOUND_ERR);
00105 
00106     int exceptioncode = 0;
00107     ((CharacterDataImpl *)impl)->appendData(arg, exceptioncode);
00108     if ( exceptioncode )
00109     throw DOMException( exceptioncode );
00110 }
00111 
00112 void CharacterData::insertData( const unsigned long offset, const DOMString &arg )
00113 {
00114     if (!impl)
00115     return; // ### enable throw DOMException(DOMException::NOT_FOUND_ERR);
00116 
00117     int exceptioncode = 0;
00118     ((CharacterDataImpl *)impl)->insertData(offset, arg, exceptioncode);
00119     if ( exceptioncode )
00120     throw DOMException( exceptioncode );
00121 }
00122 
00123 void CharacterData::deleteData( const unsigned long offset, const unsigned long count )
00124 {
00125     if (!impl)
00126     return; // ### enable throw DOMException(DOMException::NOT_FOUND_ERR);
00127 
00128     int exceptioncode = 0;
00129     ((CharacterDataImpl *)impl)->deleteData(offset, count, exceptioncode);
00130     if ( exceptioncode )
00131     throw DOMException( exceptioncode );
00132 }
00133 
00134 void CharacterData::replaceData( const unsigned long offset, const unsigned long count, const DOMString &arg )
00135 {
00136     if (!impl)
00137     return; // ### enable throw DOMException(DOMException::NOT_FOUND_ERR);
00138 
00139     int exceptioncode = 0;
00140     ((CharacterDataImpl *)impl)->replaceData(offset, count, arg, exceptioncode);
00141     if ( exceptioncode )
00142     throw DOMException( exceptioncode );
00143 }
00144 
00145 CharacterData::CharacterData(CharacterDataImpl *i) : Node(i)
00146 {
00147 }
00148 
00149 // ---------------------------------------------------------------------------
00150 
00151 Comment::Comment() : CharacterData()
00152 {
00153 }
00154 
00155 Comment::Comment(const Comment &other) : CharacterData(other)
00156 {
00157 }
00158 
00159 Comment &Comment::operator = (const Node &other)
00160 {
00161     NodeImpl* ohandle = other.handle();
00162     if ( impl != ohandle ) {
00163         if (!ohandle || ohandle->nodeType() != COMMENT_NODE) {
00164         if ( impl ) impl->deref();
00165             impl = 0;
00166     } else {
00167             Node::operator =(other);
00168     }
00169     }
00170     return *this;
00171 }
00172 
00173 Comment &Comment::operator = (const Comment &other)
00174 {
00175     CharacterData::operator =(other);
00176     return *this;
00177 }
00178 
00179 Comment::~Comment()
00180 {
00181 }
00182 
00183 Comment::Comment(CommentImpl *i) : CharacterData(i)
00184 {
00185 }
00186 
00187 // ----------------------------------------------------------------------------
00188 
00189 Text::Text()
00190 {
00191 }
00192 
00193 Text::Text(const Text &other) : CharacterData(other)
00194 {
00195 }
00196 
00197 Text &Text::operator = (const Node &other)
00198 {
00199     NodeImpl* ohandle = other.handle();
00200     if ( impl != ohandle ) {
00201         if (!ohandle ||
00202             (ohandle->nodeType() != TEXT_NODE &&
00203              ohandle->nodeType() != CDATA_SECTION_NODE)) {
00204         if ( impl ) impl->deref();
00205             impl = 0;
00206     } else {
00207             Node::operator =(other);
00208     }
00209     }
00210     return *this;
00211 }
00212 
00213 Text &Text::operator = (const Text &other)
00214 {
00215     Node::operator =(other);
00216     return *this;
00217 }
00218 
00219 Text::~Text()
00220 {
00221 }
00222 
00223 Text Text::splitText( const unsigned long offset )
00224 {
00225     if (!impl)
00226     return 0; // ### enable throw DOMException(DOMException::NOT_FOUND_ERR);
00227 
00228     int exceptioncode = 0;
00229     TextImpl *newText = static_cast<TextImpl *>(impl)->splitText(offset, exceptioncode );
00230     if ( exceptioncode )
00231     throw DOMException( exceptioncode );
00232     return newText;
00233 }
00234 
00235 Text::Text(TextImpl *i) : CharacterData(i)
00236 {
00237 }

KHTML

Skip menu "KHTML"
  • Main Page
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Namespace Members
  • Class Members
  • Related Pages

API Reference

Skip menu "API Reference"
  • dcop
  • DNSSD
  • interfaces
  • Kate
  • kconf_update
  • KDECore
  • KDED
  • kdefx
  • KDEsu
  • kdeui
  • KDocTools
  • KHTML
  • KImgIO
  • KInit
  • kio
  • kioslave
  • KJS
  • KNewStuff
  • KParts
  • KUtils
Generated for API Reference by doxygen 1.5.9
This website is maintained by Adriaan de Groot and Allen Winter.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal