#ifndef JEZUK_DOM_SimpleDOM_DOCUMENTEVENT_IMPL_H #define JEZUK_DOM_SimpleDOM_DOCUMENTEVENT_IMPL_H //////////////////////////// // C++ DocumentEvent implementation //////////////////////////// #include #include #include #include #include //#include namespace Arabica { namespace DOM { namespace Events { //////////////////////////////////////////////////////////////////// template class DocumentImpl; template class DocumentEventImpl : virtual public DOM::Events::DocumentEvent_impl { public: typedef DocumentImpl DocumentImplT; typedef DOM::Node_impl DOMNode_implT; typedef DOM::Text_impl DOMText_implT; typedef DOM::Document_impl DOMDocument_implT; typedef DOM::NamedNodeMap_impl DOMNamedNodeMap_implT; typedef DOM::NodeList_impl DOMNodeList_implT; typedef DOM::Events::Event EventT; typedef DOM::Events::EventTarget EventTargetT; typedef DOM::Events::DocumentEventImpl DocumentEventImplT; DocumentEventImpl() { //std::cout << std::endl << "born " << this << std::endl; } // DocumentEventImpl virtual ~DocumentEventImpl() { //std::cout << std::endl << "die " << this << std::endl; } virtual Event_impl* createEvent(const stringT& eventType) { if (eventType == string_adaptorT::construct_from_utf8("MutationEvent")) { return new MutationEventImpl(); } return NULL; } protected: }; // class DocumentEventImpl } // namespace DOM } // namespace Events } // namespace Arabica #endif // JEZUK_DOM_SimpleDOM_EVENTTARGET_H // end of file