KHTML
khtml_events.cpp
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 #include "khtml_events.h"
00021 #include "rendering/render_object.h"
00022 #include "xml/dom_nodeimpl.h"
00023
00024 using namespace khtml;
00025
00026 class khtml::MouseEvent::MouseEventPrivate
00027 {
00028 };
00029
00030 khtml::MouseEvent::MouseEvent( const char *name, QMouseEvent *qmouseEvent, int x, int y,
00031 const DOM::DOMString &url, const DOM::DOMString& target,
00032 const DOM::Node &innerNode )
00033 : KParts::Event( name ), m_qmouseEvent( qmouseEvent ), m_x( x ), m_y( y ),
00034 m_url( url ), m_target(target), m_innerNode( innerNode )
00035 {
00036 d = 0;
00037 if (innerNode.handle() && innerNode.handle()->renderer())
00038 innerNode.handle()->renderer()->absolutePosition(m_nodeAbsX, m_nodeAbsY);
00039 }
00040
00041 khtml::MouseEvent::~MouseEvent()
00042 {
00043 delete d;
00044 }
00045
00046 long khtml::MouseEvent::offset() const
00047 {
00048 int offset = 0;
00049 DOM::NodeImpl* tempNode = 0;
00050 int absX, absY;
00051 absX = absY = 0;
00052 if (innerNode().handle()->renderer()) {
00053 innerNode().handle()->renderer()->absolutePosition(absX, absY);
00054 khtml::RenderObject::SelPointState state;
00055 innerNode().handle()->renderer()->checkSelectionPoint( x(), y(), absX, absY, tempNode, offset, state );
00056 }
00057 return offset;
00058 }
00059
00060 const char *khtml::MousePressEvent::s_strMousePressEvent = "khtml/Events/MousePressEvent";
00061
00062 const char *khtml::MouseDoubleClickEvent::s_strMouseDoubleClickEvent = "khtml/Events/MouseDoubleClickEvent";
00063
00064 const char *khtml::MouseMoveEvent::s_strMouseMoveEvent = "khtml/Events/MouseMoveEvent";
00065
00066 const char *khtml::MouseReleaseEvent::s_strMouseReleaseEvent = "khtml/Events/MouseReleaseEvent";
00067
00068 const char *khtml::DrawContentsEvent::s_strDrawContentsEvent = "khtml/Events/DrawContentsEvent";
00069
00070 class khtml::DrawContentsEvent::DrawContentsEventPrivate
00071 {
00072 public:
00073 DrawContentsEventPrivate()
00074 {
00075 }
00076 ~DrawContentsEventPrivate()
00077 {
00078 }
00079 };
00080
00081 khtml::DrawContentsEvent::DrawContentsEvent( QPainter *painter, int clipx, int clipy, int clipw, int cliph )
00082 : KParts::Event( s_strDrawContentsEvent ), m_painter( painter ), m_clipx( clipx ), m_clipy( clipy ),
00083 m_clipw( clipw ), m_cliph( cliph )
00084 {
00085 d = new DrawContentsEventPrivate;
00086 }
00087
00088 khtml::DrawContentsEvent::~DrawContentsEvent()
00089 {
00090 delete d;
00091 }
00092