Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef ___ixmldomtextimpl_h___
00023 #define ___ixmldomtextimpl_h___
00024
00025 #include "XMLDOMUtil.h"
00026 #include "IXMLDOMCharacterDataImpl.h"
00027
00028 template <class T, const IID* piid, class tihclass = CComTypeInfoHolder>
00029 class ATL_NO_VTABLE IXMLDOMTextImpl: public IXMLDOMCharacterDataImpl<T,piid,tihclass>
00030 {
00031 public:
00032
00033 virtual DOMText* get_DOMText() = 0;
00034 virtual DOMCharacterData* get_DOMCharacterData() { return get_DOMText(); }
00035
00036
00037
00038 STDMETHOD(splitText)(long offset, IXMLDOMText **rightHandTextNode)
00039 {
00040 ATLTRACE(_T("IXMLDOMTextImpl::splitText\n"));
00041
00042 if (NULL == rightHandTextNode)
00043 return E_POINTER;
00044
00045 *rightHandTextNode = NULL;
00046
00047 HRESULT hr = S_OK;
00048
00049 try
00050 {
00051 hr = wrapNode(m_pIXMLDOMDocument,get_DOMText()->splitText(offset),IID_IXMLDOMText, reinterpret_cast<LPVOID *> (rightHandTextNode));
00052 }
00053 catch(...)
00054 {
00055 return E_FAIL;
00056 }
00057
00058 return hr;
00059 }
00060
00061 };
00062
00063 #endif // ___ixmldomtextimpl_h___