2006-03-03 Eric Seidel <eseidel@apple.com>
authoreseidel <eseidel@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 3 Mar 2006 09:30:11 +0000 (09:30 +0000)
committereseidel <eseidel@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 3 Mar 2006 09:30:11 +0000 (09:30 +0000)
        Reviewed by mjs.

        Wire up WidgetWin, CursorWin, ScrollViewWin.
        Stub out methods for selection and cursors.

        * Viewer/ImageDocument.h:
        * WebCore.vcproj/WebCore/WebCore.vcproj:
        * bridge/win/FrameWin.cpp:
        * khtml/ecma/kjs_proxy.cpp:
        (WebCore::KJSProxyImpl::initScriptIfNeeded):
        * platform/IntRect.h:
        (WebCore::IntRect::IntRect):
        * platform/Widget.h:
        * platform/win/CursorWin.cpp:
        (WebCore::eastResizeCursor):
        (WebCore::northResizeCursor):
        (WebCore::northEastResizeCursor):
        (WebCore::northWestResizeCursor):
        (WebCore::southResizeCursor):
        (WebCore::southEastResizeCursor):
        (WebCore::southWestResizeCursor):
        (WebCore::westResizeCursor):
        * platform/win/IntRectWin.cpp:
        (WebCore::IntRect::IntRect):
        (WebCore::IntRect::operator RECT):
        * platform/win/MouseEventWin.cpp:
        * platform/win/ScrollViewWin.cpp: Added.
        (WebCore::ScrollView::updateContents):
        * platform/win/TemporaryLinkStubs.cpp:
        (QTextEdit::textWithHardLineBreaks):
        (QLineEdit::setPlaceholderString):
        (QScrollBar::scroll):
        (GraphicsContext::beginTransparencyLayer):
        (Widget::setIsSelected):
        (QLineEdit::selectedText):
        (QComboBox::sizeHint):
        (KWQFileButton::focusPolicy):
        (QTextEdit::focusPolicy):
        (QSlider::focusPolicy):
        (QListBox::focusPolicy):
        (QLineEdit::focusPolicy):
        (WebCore::moveCursor):
        (ScrollView::scrollBy):
        (KWQKCookieJar::cookieEnabled):
        (WebCore::TransferJob::TransferJob):
        (WebCore::screenDepth):
        (WebCore::usableScreenRect):
        (FrameWin::getObjectInstanceForWidget):
        (FrameWin::getEmbedInstanceForWidget):
        (FrameWin::getAppletInstanceForWidget):
        (FrameWin::passMouseDownEventToWidget):
        (FrameWin::issuePasteCommand):
        (FrameWin::issueTransposeCommand):
        (QSlider::setFont):
        (QLineEdit::setFont):
        (QListBox::setFont):
        (QFontMetrics::QFontMetrics):
        (QComboBox::setFont):
        (QTextEdit::setFont):
        (QTextEdit::setWritingDirection):
        (QFontMetrics::setFontDescription):
        (QFontMetrics::checkSelectionPoint):
        (FrameWin::addMessageToConsole):
        (FrameWin::shouldChangeSelection):
        (ScrollView::resizeContents):
        (ScrollView::visibleHeight):
        (ScrollView::visibleWidth):
        (ScrollView::setContentsPos):
        (ScrollView::contentsX):
        (ScrollView::contentsY):
        (ScrollView::contentsHeight):
        (ScrollView::contentsWidth):
        (ScrollView::viewportToContents):
        * platform/win/WidgetWin.cpp: Added.
        (WebCore::Widget::Widget):
        (WebCore::Widget::~Widget):
        (WebCore::Widget::windowHandle):
        (WebCore::Widget::setWindowHandle):
        (WebCore::Widget::setActiveWindow):
        (WebCore::Widget::frameGeometry):
        (WebCore::Widget::hasFocus):
        (WebCore::Widget::setFocus):
        (WebCore::Widget::clearFocus):
        (WebCore::Widget::font):
        (WebCore::Widget::setFont):
        (WebCore::Widget::setCursor):
        (WebCore::Widget::show):
        (WebCore::Widget::hide):
        (WebCore::Widget::setFrameGeometry):
        (WebCore::Widget::mapFromGlobal):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@13113 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 files changed:
WebCore/ChangeLog
WebCore/WebCore.vcproj/Image Viewer/ImageDocument.h
WebCore/WebCore.vcproj/WebCore/WebCore.vcproj
WebCore/bridge/win/FrameWin.cpp
WebCore/khtml/ecma/kjs_proxy.cpp
WebCore/platform/IntRect.h
WebCore/platform/Widget.h
WebCore/platform/win/CursorWin.cpp
WebCore/platform/win/IntRectWin.cpp
WebCore/platform/win/ScrollViewWin.cpp [new file with mode: 0644]
WebCore/platform/win/TemporaryLinkStubs.cpp
WebCore/platform/win/WidgetWin.cpp [new file with mode: 0644]

index 0fdb0bbcb3e007a56d8d91b05b958756ecb892e2..704632ac754d27fac0665a07517747324345e859 100644 (file)
@@ -1,3 +1,96 @@
+2006-03-03  Eric Seidel  <eseidel@apple.com>
+
+        Reviewed by mjs.
+
+        Wire up WidgetWin, CursorWin, ScrollViewWin.
+        Stub out methods for selection and cursors.
+
+        * Viewer/ImageDocument.h:
+        * WebCore.vcproj/WebCore/WebCore.vcproj:
+        * bridge/win/FrameWin.cpp:
+        * khtml/ecma/kjs_proxy.cpp:
+        (WebCore::KJSProxyImpl::initScriptIfNeeded):
+        * platform/IntRect.h:
+        (WebCore::IntRect::IntRect):
+        * platform/Widget.h:
+        * platform/win/CursorWin.cpp:
+        (WebCore::eastResizeCursor):
+        (WebCore::northResizeCursor):
+        (WebCore::northEastResizeCursor):
+        (WebCore::northWestResizeCursor):
+        (WebCore::southResizeCursor):
+        (WebCore::southEastResizeCursor):
+        (WebCore::southWestResizeCursor):
+        (WebCore::westResizeCursor):
+        * platform/win/IntRectWin.cpp:
+        (WebCore::IntRect::IntRect):
+        (WebCore::IntRect::operator RECT):
+        * platform/win/MouseEventWin.cpp:
+        * platform/win/ScrollViewWin.cpp: Added.
+        (WebCore::ScrollView::updateContents):
+        * platform/win/TemporaryLinkStubs.cpp:
+        (QTextEdit::textWithHardLineBreaks):
+        (QLineEdit::setPlaceholderString):
+        (QScrollBar::scroll):
+        (GraphicsContext::beginTransparencyLayer):
+        (Widget::setIsSelected):
+        (QLineEdit::selectedText):
+        (QComboBox::sizeHint):
+        (KWQFileButton::focusPolicy):
+        (QTextEdit::focusPolicy):
+        (QSlider::focusPolicy):
+        (QListBox::focusPolicy):
+        (QLineEdit::focusPolicy):
+        (WebCore::moveCursor):
+        (ScrollView::scrollBy):
+        (KWQKCookieJar::cookieEnabled):
+        (WebCore::TransferJob::TransferJob):
+        (WebCore::screenDepth):
+        (WebCore::usableScreenRect):
+        (FrameWin::getObjectInstanceForWidget):
+        (FrameWin::getEmbedInstanceForWidget):
+        (FrameWin::getAppletInstanceForWidget):
+        (FrameWin::passMouseDownEventToWidget):
+        (FrameWin::issuePasteCommand):
+        (FrameWin::issueTransposeCommand):
+        (QSlider::setFont):
+        (QLineEdit::setFont):
+        (QListBox::setFont):
+        (QFontMetrics::QFontMetrics):
+        (QComboBox::setFont):
+        (QTextEdit::setFont):
+        (QTextEdit::setWritingDirection):
+        (QFontMetrics::setFontDescription):
+        (QFontMetrics::checkSelectionPoint):
+        (FrameWin::addMessageToConsole):
+        (FrameWin::shouldChangeSelection):
+        (ScrollView::resizeContents):
+        (ScrollView::visibleHeight):
+        (ScrollView::visibleWidth):
+        (ScrollView::setContentsPos):
+        (ScrollView::contentsX):
+        (ScrollView::contentsY):
+        (ScrollView::contentsHeight):
+        (ScrollView::contentsWidth):
+        (ScrollView::viewportToContents):
+        * platform/win/WidgetWin.cpp: Added.
+        (WebCore::Widget::Widget):
+        (WebCore::Widget::~Widget):
+        (WebCore::Widget::windowHandle):
+        (WebCore::Widget::setWindowHandle):
+        (WebCore::Widget::setActiveWindow):
+        (WebCore::Widget::frameGeometry):
+        (WebCore::Widget::hasFocus):
+        (WebCore::Widget::setFocus):
+        (WebCore::Widget::clearFocus):
+        (WebCore::Widget::font):
+        (WebCore::Widget::setFont):
+        (WebCore::Widget::setCursor):
+        (WebCore::Widget::show):
+        (WebCore::Widget::hide):
+        (WebCore::Widget::setFrameGeometry):
+        (WebCore::Widget::mapFromGlobal):
+
 2006-03-03  Maciej Stachowiak  <mjs@apple.com>
 
         Reviewed by Eric.
         (GraphicsContext::drawText):
         (GraphicsContext::drawLineForText):
 
->>>>>>> .r13111
 2006-03-02  Maciej Stachowiak  <mjs@apple.com>
 
         Rubber stamped by Eric.
index 38f318c8225c23e7c1d79e2b00968985e402c46c..dace2ee06eef6a62df066c1f583c21ef0762a9b7 100755 (executable)
@@ -1,26 +1,26 @@
-/*
- * Copyright (C) 2006 Apple Computer, Inc.  All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+/*\r
+ * Copyright (C) 2006 Apple Computer, Inc.  All rights reserved.\r
+ *\r
+ * Redistribution and use in source and binary forms, with or without\r
+ * modification, are permitted provided that the following conditions\r
+ * are met:\r
+ * 1. Redistributions of source code must retain the above copyright\r
+ *    notice, this list of conditions and the following disclaimer.\r
+ * 2. Redistributions in binary form must reproduce the above copyright\r
+ *    notice, this list of conditions and the following disclaimer in the\r
+ *    documentation and/or other materials provided with the distribution.\r
+ *\r
+ * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY\r
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\r
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\r
+ * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR\r
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,\r
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,\r
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR\r
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY\r
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\r
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\r
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. \r
  */\r
 \r
 // ImageDocument.h : interface of the ImageDocument class\r
@@ -50,7 +50,7 @@ public:
 public:\r
        virtual void Serialize(CArchive& ar);\r
 \r
-        virtual bool shouldStopAnimation(const WebCore::Image*) { return false; }
+        virtual bool shouldStopAnimation(const WebCore::Image*) { return false; }\r
         virtual void animationAdvanced(const WebCore::Image*);\r
 \r
         WebCore::Image* image() const { return m_image; }\r
index 11a9c3b2122cda48978debed566231e22bb05c36..53a2d98479258b8979beabd8126f494e9de03373 100644 (file)
                        <Filter\r
                                Name="win"\r
                                >\r
+                               <File\r
+                                       RelativePath="..\..\platform\win\CursorWin.cpp"\r
+                                       >\r
+                               </File>\r
                                <File\r
                                        RelativePath="..\..\platform\win\IntPointWin.cpp"\r
                                        >\r
                                        RelativePath="..\..\platform\win\MouseEventWin.cpp"\r
                                        >\r
                                </File>\r
+                               <File\r
+                                       RelativePath="..\..\platform\win\ScrollViewWin.cpp"\r
+                                       >\r
+                               </File>\r
                                <File\r
                                        RelativePath="..\..\platform\win\SharedTimerWin.cpp"\r
                                        >\r
                                        RelativePath="..\..\platform\win\TemporaryLinkStubs.cpp"\r
                                        >\r
                                </File>\r
+                               <File\r
+                                       RelativePath="..\..\platform\win\WidgetWin.cpp"\r
+                                       >\r
+                               </File>\r
                        </Filter>\r
                        <Filter\r
                                Name="image-decoders"\r
index 9cfec4202ff4945ad11bfeac49d1edf33fb84425..8dc381d9c80f9230464ff7bfae69e34b50fd60e3 100644 (file)
@@ -46,4 +46,9 @@ FrameWin::~FrameWin()
 {
 }
 
+QString FrameWin::userAgent() const
+{
+    return "Mozilla/5.0 (PC; U; Intel; Windows; en) AppleWebKit/420+ (KHTML, like Gecko)";
+}
+
 }
index d0637a5dc7dcc0308db20397bc41e5fc28ec14f7..afb99476f1792bc1fb5670a94709bfc796be042f 100644 (file)
@@ -152,13 +152,11 @@ void KJSProxyImpl::initScriptIfNeeded()
   globalObject->put(m_script->globalExec(), "debug", new TestFunctionImp(), Internal);
 
   QString userAgent = m_frame->userAgent();
-  if (userAgent.find(QString::fromLatin1("Microsoft")) >= 0 ||
-      userAgent.find(QString::fromLatin1("MSIE")) >= 0)
+  if (userAgent.find("Microsoft") >= 0 || userAgent.find("MSIE") >= 0)
     m_script->setCompatMode(Interpreter::IECompat);
   else
     // If we find "Mozilla" but not "(compatible, ...)" we are a real Netscape
-    if (userAgent.find(QString::fromLatin1("Mozilla")) >= 0 &&
-        userAgent.find(QString::fromLatin1("compatible")) == -1)
+    if (userAgent.find("Mozilla") >= 0 && userAgent.find("compatible") == -1)
       m_script->setCompatMode(Interpreter::NetscapeCompat);
 }
 
index 7a35533526b9eb1f86c69098ffb54f5b9dd43062..4a18962c36c70e312f999d11a09dfbd1f6c4cb28 100644 (file)
@@ -50,9 +50,6 @@ namespace WebCore {
 class IntRect {
 public:
     IntRect() { }
-#if WIN32
-    IntRect(const RECT&);
-#endif
     IntRect(const IntPoint& location, const IntSize& size)
         : m_location(location), m_size(size) { }
     IntRect(int x, int y, int width, int height)
@@ -103,6 +100,11 @@ public:
     }
     void inflate(int d) { inflateX(d); inflateY(d); }
 
+#if WIN32
+    IntRect(const RECT&);
+    operator RECT() const;
+#endif
+
 #if __APPLE__
 
     operator CGRect() const;
index 030a3976bb63520b42d1a1eb435f4fa43bda9cba..e23aa576cb1ad5ff786e987da7bbb450fb5ab88a 100644 (file)
@@ -40,6 +40,10 @@ class NSView;
 #endif
 #endif
 
+#if WIN32
+typedef struct HWND__ *HWND;
+#endif
+
 namespace WebCore {
 
     class Cursor;
@@ -116,6 +120,12 @@ namespace WebCore {
 
         void setIsSelected(bool isSelected);
 
+#if WIN32
+        Widget(HWND);
+        HWND windowHandle();
+        void setWindowHandle(HWND);
+#endif
+
 #if __APPLE__
         Widget(NSView* view);
 
index ba339aa258ac54771624a9b043fe6b40aa1036e9..107afcf417d574d0fc476693ff5eb1e3c6bb9241 100644 (file)
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-#import "config.h"
-#import "Cursor.h"
+#include "config.h"
+#include "Cursor.h"
 
 namespace WebCore {
 
-Cursor::Cursor(Image* /*image*/)
-    : m_impl(0)
-{
-    // FIXME: Implement custom cursors.
-}
-
 Cursor::Cursor(const Cursor& other)
     : m_impl(other.m_impl)
 {
@@ -66,12 +60,6 @@ const Cursor& handCursor()
     return c;
 }
 
-const Cursor& moveCursor()
-{
-    static Cursor c; // FIXME
-    return c;
-}
-
 const Cursor& iBeamCursor()
 {
     static Cursor c = LoadCursor(0, IDC_IBEAM);
@@ -92,49 +80,49 @@ const Cursor& helpCursor()
 
 const Cursor& eastResizeCursor()
 {
-    static Cursor c; // FIXME
+    static Cursor c = LoadCursor(0, IDC_HELP);
     return c;
 }
 
 const Cursor& northResizeCursor()
 {
-    static Cursor c; // FIXME
+    static Cursor c = LoadCursor(0, IDC_HELP);
     return c;
 }
 
 const Cursor& northEastResizeCursor()
 {
-    static Cursor c; // FIXME
+    static Cursor c = LoadCursor(0, IDC_SIZENESW);
     return c;
 }
 
 const Cursor& northWestResizeCursor()
 {
-    static Cursor c; // FIXME
+    static Cursor c = LoadCursor(0, IDC_SIZENWSE);
     return c;
 }
 
 const Cursor& southResizeCursor()
 {
-    static Cursor c; // FIXME
+    static Cursor c = LoadCursor(0, IDC_SIZENS);
     return c;
 }
 
 const Cursor& southEastResizeCursor()
 {
-    static Cursor c; // FIXME
+    static Cursor c = LoadCursor(0, IDC_SIZENWSE);
     return c;
 }
 
 const Cursor& southWestResizeCursor()
 {
-    static Cursor c; // FIXME
+    static Cursor c = LoadCursor(0, IDC_SIZENESW);
     return c;
 }
 
 const Cursor& westResizeCursor()
 {
-    static Cursor c; // FIXME
+    static Cursor c = LoadCursor(0, IDC_SIZEWE);
     return c;
 }
 
index 9efafac0147e0ceb17017f0f236ae1df28a5ad05..b6061c13fbf462eba1e30195e513361f5f4b814c 100644 (file)
 namespace WebCore {
 
 IntRect::IntRect(const RECT& r)
-    : m_location(IntPoint(r.left, r.top)), m_size(IntSize(r.right, r.bottom))
+    : m_location(IntPoint(r.left, r.top)), m_size(IntSize(r.right-r.left, r.bottom-r.top))
 {
 }
 
+IntRect::operator RECT() const
+{
+    RECT rect = {m_location.x(), m_location.y(), m_location.x() + m_size.width(), m_location.y() + m_size.height()};
+    return rect;
+}
+
 }
diff --git a/WebCore/platform/win/ScrollViewWin.cpp b/WebCore/platform/win/ScrollViewWin.cpp
new file mode 100644 (file)
index 0000000..f5eaf98
--- /dev/null
@@ -0,0 +1,41 @@
+/*
+ * Copyright (C) 2006 Apple Computer, Inc.  All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ */
+
+#include "config.h"
+#include "ScrollView.h"
+#include "IntRect.h"
+#include <windows.h>
+
+namespace WebCore {
+
+void ScrollView::updateContents(const IntRect& dirtyRect, bool now)
+{
+    RECT repaintRect = RECT(dirtyRect);
+    InvalidateRect(windowHandle(), &repaintRect, true);
+    if (now)
+        UpdateWindow(windowHandle());
+}
+
+}
\ No newline at end of file
index a0eae5b40fdfe2c5d32a59e2ff163e0c216d2b21..b9cedf1213ab38170755bf7e117707b734bf8b7e 100644 (file)
-#include "config.h"\r
-\r
-#define WIN32_COMPILE_HACK\r
-\r
-#include <stdio.h>\r
-#include <stdlib.h>\r
-#include "NodeImpl.h"\r
-#include "KWQLineEdit.h"\r
-#include "Font.h"\r
-#include "KWQFileButton.h"\r
-#include "KWQTextEdit.h"\r
-#include "KWQComboBox.h"\r
-#include "IntPoint.h"\r
-#include "Widget.h"\r
-#include "KWQFontMetrics.h"\r
-#include "GraphicsContext.h"\r
-#include "KWQSlider.h"\r
-#include "Cursor.h"\r
-#include "loader.h"\r
-#include "KWQKJobClasses.h"\r
-#include "FrameView.h"\r
-#include "KWQScrollBar.h"\r
-#include "KWQObject.h"\r
-#include "KWQSignal.h"\r
-#include "dom2_events.h"\r
-#include "KWQKJavaAppletWidget.h"\r
-#include "KWQScrollBar.h"\r
-#include "Path.h"\r
-#include "MouseEvent.h"\r
-#include "KWQKCookieJar.h"\r
-#include "Screen.h"\r
-#include "History.h"\r
-#include "KWQKLocale.h"\r
-#include "PlugInInfoStore.h"\r
-#include "render_theme.h"\r
-#include "FrameWin.h"\r
-#include "BrowserExtensionWin.h"\r
-\r
-using namespace WebCore;\r
-\r
-static void notImplemented() { puts("Not yet implemented"); _CrtDbgBreak(); }\r
-\r
-void QLineEdit::selectAll() { notImplemented(); }\r
-void Widget::enableFlushDrawing() { notImplemented(); }\r
-void GraphicsContext::drawHighlightForText(int,int,int,int,int,QChar const*,int,int,int,int,Color const&,TextDirection,bool,int,int,bool) { notImplemented(); }\r
-String QTextEdit::textWithHardLineBreaks() const { notImplemented(); return String(); }\r
-IntPoint Widget::mapFromGlobal(IntPoint const&) const { notImplemented(); return IntPoint(); }\r
-int QLineEdit::cursorPosition() const { notImplemented(); return 0; }\r
-Color GraphicsContext::selectedTextBackgroundColor() const { notImplemented(); return Color(); }\r
-void QSlider::setValue(double) { notImplemented(); }\r
-void QLineEdit::addSearchResult() { notImplemented(); }\r
-void KWQFileButton::click(bool) { notImplemented(); }\r
-void QLineEdit::setWritingDirection(TextDirection) { notImplemented(); }\r
-void GraphicsContext::drawFocusRing(Color const&) { notImplemented(); }\r
-IntSize KWQFileButton::sizeForCharacterWidth(int) const { notImplemented(); return IntSize(); }\r
-IntSize QTextEdit::sizeWithColumnsAndRows(int,int) const { notImplemented(); return IntSize(); }\r
-void QComboBox::clear() { notImplemented(); }\r
-int GraphicsContext::misspellingLineThickness() const { notImplemented(); return 0; }\r
-void QComboBox::setFrameGeometry(IntRect const&) { notImplemented(); }\r
-int QLineEdit::maxLength() const { notImplemented(); return 0; }\r
-bool Widget::isEnabled() const { notImplemented(); return 0; }\r
-void QTextEdit::setText(String const&) { notImplemented(); }\r
-void Widget::paint(GraphicsContext*,IntRect const&) { notImplemented(); }\r
-void GraphicsContext::addRoundedRectClip(IntRect const&,IntSize const&,IntSize const&,IntSize const&,IntSize const&) { notImplemented(); }\r
-IntPoint FrameView::viewportToGlobal(IntPoint const&) const { notImplemented(); return IntPoint(); }\r
-int QTextEdit::selectionEnd() { notImplemented(); return 0; }\r
-void QTextEdit::setScrollBarModes(ScrollBarMode,ScrollBarMode) { notImplemented(); }\r
-void QTextEdit::setReadOnly(bool) { notImplemented(); }\r
-void QListBox::appendItem(QString const&,KWQListBoxItemType,bool) { notImplemented(); }\r
-void QLineEdit::setPlaceholderString(String const&) { notImplemented(); }\r
-Cursor::Cursor(Cursor const&) { notImplemented(); }\r
-Widget::FocusPolicy Widget::focusPolicy() const { notImplemented(); return NoFocus; }\r
-void ScrollView::removeChild(Widget*) { notImplemented(); }\r
-void QTextEdit::selectAll() { notImplemented(); }\r
-void GraphicsContext::endTransparencyLayer() { notImplemented(); }\r
-void ScrollView::addChild(Widget*,int,int) { notImplemented(); }\r
-void QTextEdit::setDisabled(bool) { notImplemented(); }\r
-bool QScrollBar::scroll(KWQScrollDirection,KWQScrollGranularity,float) { notImplemented(); return 0; }\r
-Widget::~Widget() { notImplemented(); }\r
-IntSize QListBox::sizeForNumberOfLines(int) const { notImplemented(); return IntSize(); }\r
-int QLineEdit::selectionStart() const { notImplemented(); return 0; }\r
-QLineEdit::QLineEdit(QLineEdit::Type) { notImplemented(); }\r
-void FrameView::updateBorder() { notImplemented(); }\r
-bool QLineEdit::hasSelectedText() const { notImplemented(); return 0; }\r
-QScrollBar::QScrollBar(Qt::Orientation,Widget*) { notImplemented(); }\r
-void QListBox::doneAppendingItems() { notImplemented(); }\r
-QTextEdit::QTextEdit(Widget*) { notImplemented(); }\r
-bool ScrollView::inWindow() const { notImplemented(); return 0; }\r
-bool QScrollBar::setValue(int) { notImplemented(); return 0; }\r
-bool QTextEdit::hasSelectedText() const { notImplemented(); return 0; }\r
-int QTextEdit::selectionStart() { notImplemented(); return 0; }\r
-int ScrollView::scrollXOffset() const { notImplemented(); return 0; }\r
-bool QListBox::isSelected(int) const { notImplemented(); return 0; }\r
-void QLineEdit::setReadOnly(bool) { notImplemented(); }\r
-QComboBox::~QComboBox() { notImplemented(); }\r
-Cursor::Cursor(Image*) { notImplemented(); }\r
-Widget::FocusPolicy QComboBox::focusPolicy() const { notImplemented(); return NoFocus; }\r
-void GraphicsContext::clearShadow() { notImplemented(); }\r
-void QTextEdit::setLineHeight(int) { notImplemented(); }\r
-void QScrollBar::setKnobProportion(int,int) { notImplemented(); }\r
-KWQFileButton::KWQFileButton(Frame*) { notImplemented(); }\r
-IntRect QFontMetrics::boundingRect(int,int,int,int,int,QString const&,int,int) const { notImplemented(); return IntRect(); }\r
-void QTextEdit::setSelectionStart(int) { notImplemented(); }\r
-void GraphicsContext::beginTransparencyLayer(float) { notImplemented(); }\r
-IntRect Widget::frameGeometry() const { notImplemented(); return IntRect(); }\r
-void QListBox::setSelected(int,bool) { notImplemented(); }\r
-void GraphicsContext::addFocusRingRect(int,int,int,int) { notImplemented(); }\r
-void QTextEdit::setCursorPosition(int,int) { notImplemented(); }\r
-void Widget::setEnabled(bool) { notImplemented(); }\r
-void QTextEdit::setSelectionEnd(int) { notImplemented(); }\r
-void QComboBox::populate() { notImplemented(); }\r
-void QTextEdit::setAlignment(Qt::AlignmentFlags) { notImplemented(); }\r
-void QLineEdit::setCursorPosition(int) { notImplemented(); }\r
-KJavaAppletWidget::KJavaAppletWidget(IntSize const&,Frame*,KXMLCore::HashMap<String,String> const&) { notImplemented(); }\r
-QListBox::QListBox() { notImplemented(); }\r
-QString QLineEdit::selectedText() const { notImplemented(); return QString(); }\r
-void Widget::setIsSelected(bool) { notImplemented(); }\r
-String QLineEdit::text() const { notImplemented(); return String(); }\r
-void Widget::unlockDrawingFocus() { notImplemented(); }\r
-void QLineEdit::setLiveSearch(bool) { notImplemented(); }\r
-QComboBox::QComboBox() { notImplemented(); }\r
-void QSlider::setMaxValue(double) { notImplemented(); }\r
-void Widget::lockDrawingFocus() { notImplemented(); }\r
-void QTextEdit::setSelectionRange(int,int) { notImplemented(); }\r
-void ScrollView::scrollPointRecursively(int,int) { notImplemented(); }\r
-IntSize QLineEdit::sizeForCharacterWidth(int) const { notImplemented(); return IntSize(); }\r
-IntRect QFontMetrics::selectionRectForText(int,int,int,int,int,QChar const*,int,int,int,int,bool,bool,int,int,bool) const { notImplemented(); return IntRect(); }\r
-void QTextEdit::getCursorPosition(int*,int*) const { notImplemented(); }\r
-bool FrameView::isFrameView() const { notImplemented(); return 0; }\r
-void QScrollBar::setSteps(int,int) { notImplemented(); }\r
-void QLineEdit::setMaxLength(int) { notImplemented(); }\r
-void QLineEdit::setAutoSaveName(String const&) { notImplemented(); }\r
-int QComboBox::baselinePosition(int) const { notImplemented(); return 0; }\r
-void QComboBox::appendItem(QString const&,KWQListBoxItemType,bool) { notImplemented(); }\r
-void GraphicsContext::setShadow(int,int,int,Color const&) { notImplemented(); }\r
-void Widget::setDrawingAlpha(float) { notImplemented(); }\r
-QSlider::QSlider() { notImplemented(); }\r
-int ScrollView::scrollYOffset() const { notImplemented(); return 0; }\r
-void QComboBox::setCurrentItem(int) { notImplemented(); }\r
-void QComboBox::setWritingDirection(TextDirection) { notImplemented(); }\r
-IntSize QComboBox::sizeHint() const { notImplemented(); return IntSize(); }\r
-void Widget::setFrameGeometry(IntRect const&) { notImplemented(); }\r
-void QLineEdit::setSelection(int,int) { notImplemented(); }\r
-void QLineEdit::setMaxResults(int) { notImplemented(); }\r
-void QListBox::clear() { notImplemented(); }\r
-bool QLineEdit::edited() const { notImplemented(); return 0; }\r
-void GraphicsContext::clearFocusRing() { notImplemented(); }\r
-String QTextEdit::text() const { notImplemented(); return String(); }\r
-void Widget::disableFlushDrawing() { notImplemented(); }\r
-void GraphicsContext::initFocusRing(int,int) { notImplemented(); }\r
-void QSlider::setMinValue(double) { notImplemented(); }\r
-void QTextEdit::setWordWrap(QTextEdit::WrapStyle) { notImplemented(); }\r
-void GraphicsContext::drawLineForMisspelling(int,int,int) { notImplemented(); }\r
-void QLineEdit::setText(String const&) { notImplemented(); }\r
-double QSlider::value() const { notImplemented(); return 0; }\r
-void QListBox::setSelectionMode(QListBox::SelectionMode) { notImplemented(); }\r
-void KWQFileButton::setFilename(QString const&) { notImplemented(); }\r
-void QLineEdit::setEdited(bool) { notImplemented(); }\r
-IntRect QComboBox::frameGeometry() const { notImplemented(); return IntRect(); }\r
-void QListBox::setWritingDirection(TextDirection) { notImplemented(); }\r
-void QLineEdit::setAlignment(Qt::AlignmentFlags) { notImplemented(); }\r
-WebCore::Widget::FocusPolicy KWQFileButton::focusPolicy() const { notImplemented(); return NoFocus; }\r
-bool QLineEdit::checksDescendantsForFocus() const { notImplemented(); return false; }\r
-int KWQFileButton::baselinePosition(int) const { notImplemented(); return 0; }\r
-QSlider::~QSlider() { notImplemented(); }\r
-void KWQFileButton::setFrameGeometry(WebCore::IntRect const&) { notImplemented(); }\r
-QListBox::~QListBox() { notImplemented(); }\r
-WebCore::IntRect KWQFileButton::frameGeometry() const { notImplemented(); return IntRect(); }\r
-KWQFileButton::~KWQFileButton() { notImplemented(); }\r
-WebCore::Widget::FocusPolicy QTextEdit::focusPolicy() const { notImplemented(); return NoFocus; }\r
-WebCore::Widget::FocusPolicy QSlider::focusPolicy() const { notImplemented(); return NoFocus; }\r
-void QListBox::setEnabled(bool) { notImplemented(); }\r
-bool QListBox::checksDescendantsForFocus() const { notImplemented(); return 0; }\r
-WebCore::Widget::FocusPolicy QListBox::focusPolicy() const { notImplemented(); return NoFocus; }\r
-int QLineEdit::baselinePosition(int) const { notImplemented(); return 0; }\r
-WebCore::IntSize QSlider::sizeHint() const { notImplemented(); return IntSize(); }\r
-QLineEdit::~QLineEdit() { notImplemented(); }\r
-QTextEdit::~QTextEdit() { notImplemented(); }\r
-bool QTextEdit::checksDescendantsForFocus() const { notImplemented(); return false; }\r
-WebCore::Widget::FocusPolicy QLineEdit::focusPolicy() const { notImplemented(); return NoFocus; }\r
-QScrollBar::~QScrollBar() { notImplemented(); }\r
-Path::Path(){ notImplemented(); }\r
-Path::Path(const IntRect&, Type){ notImplemented(); }\r
-Path::Path(const IntPointArray&){ notImplemented(); }\r
-Path::~Path(){ notImplemented(); }\r
-Path::Path(const Path&){ notImplemented(); }\r
-Path& Path::operator=(const Path&){ notImplemented(); return*this; }\r
-bool Path::contains(const IntPoint&) const{ notImplemented(); return false; }\r
-void Path::translate(int, int){ notImplemented(); }\r
-IntRect Path::boundingRect() const { notImplemented(); return IntRect(); }\r
-static Cursor localCursor;\r
-const Cursor& WebCore::crossCursor() { notImplemented(); return localCursor; }\r
-const Cursor& WebCore::handCursor() { notImplemented(); return localCursor; }\r
-const Cursor& WebCore::moveCursor() { notImplemented(); return localCursor; }\r
-const Cursor& WebCore::iBeamCursor() { notImplemented(); return localCursor; }\r
-const Cursor& WebCore::waitCursor() { notImplemented(); return localCursor; }\r
-const Cursor& WebCore::helpCursor() { notImplemented(); return localCursor; }\r
-const Cursor& WebCore::eastResizeCursor() { notImplemented(); return localCursor; }\r
-const Cursor& WebCore::northResizeCursor() { notImplemented(); return localCursor; }\r
-const Cursor& WebCore::northEastResizeCursor() { notImplemented(); return localCursor; }\r
-const Cursor& WebCore::northWestResizeCursor() { notImplemented(); return localCursor; }\r
-const Cursor& WebCore::southResizeCursor() { notImplemented(); return localCursor; }\r
-const Cursor& WebCore::southEastResizeCursor() { notImplemented(); return localCursor; }\r
-const Cursor& WebCore::southWestResizeCursor() { notImplemented(); return localCursor; }\r
-const Cursor& WebCore::westResizeCursor() { notImplemented(); return localCursor; }\r
-WebCore::MouseEvent::MouseEvent() { notImplemented(); }\r
-void QLineEdit::setColors(Color const&,Color const&) { notImplemented(); }\r
-void QTextEdit::setColors(Color const&,Color const&) { notImplemented(); }\r
-QString searchableIndexIntroduction() { notImplemented(); return QString(); }\r
-void KWQKCookieJar::setCookie(KURL const&,KURL const&,QString const&) { notImplemented(); }\r
-QString KWQKCookieJar::cookie(KURL const&) { notImplemented(); return QString(); }\r
-IntRect WebCore::screenRect(Widget*) { notImplemented(); return IntRect(); }\r
-void ScrollView::scrollBy(int,int) { notImplemented(); }\r
-void WebCore::Widget::clearFocus() { notImplemented(); }\r
-int KWQFindNextSentenceFromIndex(QChar const*,int,int,bool) { notImplemented(); return 0; }\r
-void KWQFindSentenceBoundary(QChar const*,int,int,int*,int*) { notImplemented(); }\r
-int KWQFindNextWordFromIndex(QChar const*,int,int,bool) { notImplemented(); return 0; }\r
-void KWQFindWordBoundary(QChar const*,int,int,int*,int*) { notImplemented(); }\r
-bool KWQKCookieJar::cookieEnabled() { notImplemented(); return false; }\r
-void WebCore::Widget::setFocus() { notImplemented(); }\r
-void WebCore::TransferJob::kill() { notImplemented(); }\r
-void WebCore::TransferJob::addMetaData(KXMLCore::HashMap<String,String> const&) { notImplemented(); }\r
-QString WebCore::TransferJob::queryMetaData(QString const&) const { notImplemented(); return QString(); }\r
-int WebCore::TransferJob::error() const { notImplemented(); return 0; }\r
-QString WebCore::TransferJob::errorText() const { notImplemented(); return "Houston, we have a problem."; }\r
-bool WebCore::TransferJob::isErrorPage() const { notImplemented(); return 0; }\r
-WebCore::TransferJob::TransferJob(WebCore::TransferJobClient*, const String&, KURL const&,WebCore::FormData const&) { notImplemented(); }\r
-void WebCore::Widget::hide() { notImplemented(); }\r
-PluginInfo*PlugInInfoStore::createPluginInfoForPluginAtIndex(unsigned) { notImplemented(); return 0;}\r
-unsigned PlugInInfoStore::pluginCount() const { notImplemented(); return 0; }\r
-void WebCore::refreshPlugins(bool) { notImplemented(); }\r
-int WebCore::screenDepth(WebCore::Widget*) { notImplemented(); return 96; }\r
-static QFontMetrics localFontMetrics;\r
-float QFontMetrics::xHeight() const { notImplemented(); return 0; }\r
-IntRect WebCore::usableScreenRect(WebCore::Widget*) { notImplemented(); return IntRect(0,0,800,600); }\r
-void Widget::setActiveWindow() { notImplemented(); }\r
-RenderTheme* WebCore::theme() { notImplemented(); return 0; }\r
-Array<char> KWQServeSynchronousRequest(Loader*,DocLoader*,TransferJob*,KURL&,QString&) { notImplemented(); return 0; }\r
-Widget* WebCore::FrameView::topLevelWidget() const { notImplemented(); return 0; }\r
-void FrameWin::respondToChangedContents(void) { notImplemented(); }\r
-void FrameWin::unfocusWindow(void) { notImplemented(); }\r
-bool FrameWin::locationbarVisible(void) { notImplemented(); return 0; }\r
-void FrameWin::respondToChangedSelection(WebCore::SelectionController const&,bool) { notImplemented(); }\r
-void FrameWin::clearUndoRedoOperations(void) { notImplemented(); }\r
-void FrameWin::issueRedoCommand(void) { notImplemented(); }\r
-KJS::Bindings::Instance * FrameWin::getObjectInstanceForWidget(WebCore::Widget *) { notImplemented(); return 0; }\r
-KJS::Bindings::Instance * FrameWin::getEmbedInstanceForWidget(WebCore::Widget *) { notImplemented(); return 0; }\r
-bool FrameWin::canRedo(void)const { notImplemented(); return 0; }\r
-bool FrameWin::canUndo(void)const { notImplemented(); return 0; }\r
-bool FrameWin::runJavaScriptPrompt(String const&,String const&,String &) { notImplemented(); return 0; }\r
-void FrameWin::recordFormValue(QString const&,QString const&,WebCore::HTMLFormElementImpl *) { notImplemented(); }\r
-void FrameWin::registerCommandForRedo(WebCore::EditCommandPtr const&) { notImplemented(); }\r
-void FrameWin::runJavaScriptAlert(String const&) { notImplemented(); }\r
-bool FrameWin::runJavaScriptConfirm(String const&) { notImplemented(); return 0; }\r
-bool FrameWin::openURL(KURL const&) { notImplemented(); return 0; }\r
-void FrameWin::urlSelected(KURL const&,struct WebCore::URLArgs const&) { notImplemented(); }\r
-void FrameWin::saveDocumentState(void) { notImplemented(); }\r
-void FrameWin::print(void) { notImplemented(); }\r
-KJS::Bindings::Instance * FrameWin::getAppletInstanceForWidget(WebCore::Widget *) { notImplemented(); return 0; }\r
-bool FrameWin::passMouseDownEventToWidget(WebCore::Widget *) { notImplemented(); return 0; }\r
-void FrameWin::registerCommandForUndo(WebCore::EditCommandPtr const&) { notImplemented(); }\r
-void FrameWin::issueCutCommand(void) { notImplemented(); }\r
-void FrameWin::issueCopyCommand(void) { notImplemented(); }\r
-void FrameWin::openURLRequest(KURL const&,struct WebCore::URLArgs const&) { notImplemented(); }\r
-void FrameWin::addMessageToConsole(String const&,unsigned int,String const&) { notImplemented(); }\r
-bool FrameWin::passWheelEventToChildWidget(WebCore::NodeImpl *) { notImplemented(); return 0; }\r
-void FrameWin::issueUndoCommand(void) { notImplemented(); }\r
-QString FrameWin::mimeTypeForFileName(QString const&)const { notImplemented(); return QString(); }\r
-void FrameWin::clearRecordedFormValues(void) { notImplemented(); }\r
-void FrameWin::issuePasteCommand(void) { notImplemented(); }\r
-bool FrameWin::shouldChangeSelection(WebCore::SelectionController const&,WebCore::SelectionController const&,WebCore::EAffinity,bool)const { notImplemented(); return 0; }\r
-void FrameWin::scheduleClose(void) { notImplemented(); }\r
-void FrameWin::markMisspellingsInAdjacentWords(WebCore::VisiblePosition const&) { notImplemented(); }\r
-void FrameWin::markMisspellings(WebCore::SelectionController const&) { notImplemented(); }\r
-bool FrameWin::menubarVisible(void) { notImplemented(); return 0; }\r
-bool FrameWin::personalbarVisible(void) { notImplemented(); return 0; }\r
-bool FrameWin::statusbarVisible(void) { notImplemented(); return 0; }\r
-bool FrameWin::toolbarVisible(void) { notImplemented(); return 0; }\r
-void FrameWin::issueTransposeCommand(void) { notImplemented(); }\r
-QString FrameWin::userAgent(void)const { notImplemented(); return QString(); }\r
-void FrameWin::submitForm(KURL const&,struct WebCore::URLArgs const&) { notImplemented(); }\r
-bool FrameWin::canPaste(void)const { notImplemented(); return 0; }\r
-QString FrameWin::incomingReferrer(void)const { notImplemented(); return QString(); }\r
-enum WebCore::ObjectContentType FrameWin::objectContentType(KURL const&,QString const&) { notImplemented(); return (ObjectContentType)0; }\r
-WebCore::Frame * FrameWin::createFrame(KURL const&,QString const&,WebCore::RenderPart *,String const&) { notImplemented(); return 0; }\r
-bool FrameWin::canGoBackOrForward(int)const { notImplemented(); return 0; }\r
-void FrameWin::issuePasteAndMatchStyleCommand(void) { notImplemented(); }\r
-WebCore::Plugin * FrameWin::createPlugin(KURL const&,QStringList const&,QStringList const&,QString const&) { notImplemented(); return 0; }\r
-String FrameWin::generateFrameName(void) { notImplemented(); return String(); }\r
-void BrowserExtensionWin::setTypedIconURL(KURL const&,QString const&) { notImplemented(); }\r
-void BrowserExtensionWin::openURLRequest(KURL const&,struct WebCore::URLArgs const&) { notImplemented(); }\r
-int BrowserExtensionWin::getHistoryLength(void) { notImplemented(); return 0; }\r
-bool BrowserExtensionWin::canRunModal(void) { notImplemented(); return 0; }\r
-void BrowserExtensionWin::openURLNotify(void) { notImplemented(); }\r
-void BrowserExtensionWin::createNewWindow(KURL const&,struct WebCore::URLArgs const&,struct WebCore::WindowArgs const&,WebCore::Frame * &) { notImplemented(); }\r
-bool BrowserExtensionWin::canRunModalNow(void) { notImplemented(); return 0; }\r
-void BrowserExtensionWin::runModal(void) { notImplemented(); }\r
-void BrowserExtensionWin::goBackOrForward(int) { notImplemented(); }\r
-void BrowserExtensionWin::setIconURL(KURL const&) { notImplemented(); }\r
-void BrowserExtensionWin::createNewWindow(KURL const&,struct WebCore::URLArgs const&) { notImplemented(); }\r
-void QSlider::setFont(class WebCore::Font const&) { notImplemented(); }\r
-void QLineEdit::setFont(class WebCore::Font const&) { notImplemented(); }\r
-static WebCore::Font localFont;\r
-void QListBox::setFont(class WebCore::Font const&) { notImplemented(); }\r
-QFontMetrics::QFontMetrics(class WebCore::FontDescription const&) { notImplemented(); }\r
-void WebCore::Widget::setFont(class WebCore::Font const&) { notImplemented(); }\r
-void QComboBox::setFont(class WebCore::Font const&) { notImplemented(); }\r
-void QTextEdit::setFont(class WebCore::Font const&) { notImplemented(); }\r
-void QTextEdit::setWritingDirection(enum WebCore::TextDirection) { notImplemented(); }\r
-int QFontMetrics::checkSelectionPoint(class QChar const *,int,int,int,int,int,int,int,int,bool,int,bool,bool,bool)const { notImplemented(); return 0; }\r
-GraphicsContext::GraphicsContext() { notImplemented(); }\r
-\r
-// Completely empty stubs (mostly to allow DRT to run):\r
-bool WebCore::historyContains(QString const&) { return false; }\r
-QString submitButtonDefaultLabel() { return "Submit"; }\r
-QString inputElementAltText() { return QString(); }\r
-QString resetButtonDefaultLabel() { return "Reset"; }\r
-QString KLocale::language() { return "en"; }\r
-\r
-Cursor::~Cursor() { }\r
-\r
-QFontMetrics::QFontMetrics() { }\r
-QFontMetrics::~QFontMetrics() { }\r
-QFontMetrics::QFontMetrics(QFontMetrics const&) { }\r
-QFontMetrics& QFontMetrics::operator=(QFontMetrics const&) { return localFontMetrics; }\r
-float QFontMetrics::floatWidth(QChar const*,int,int,int,int,int,int,int,bool) const { return 14.0; }\r
-int QFontMetrics::lineSpacing() const { return 10; }\r
-int QFontMetrics::ascent() const { return 10; }\r
-int QFontMetrics::height() const { return 10; }\r
-int QFontMetrics::width(QString const&,int,int,int) const { return 10; }\r
-int QFontMetrics::descent() const { return 10; }\r
-void QFontMetrics::setFontDescription(class WebCore::FontDescription const&) { }\r
-bool QFontMetrics::isFixedPitch(void)const { return 0; }\r
-\r
-void FrameWin::restoreDocumentState() { }\r
-void FrameWin::partClearedInBegin() { }\r
-void FrameWin::createEmptyDocument() { }\r
-QString FrameWin::overrideMediaType() const { return QString(); }\r
-void FrameWin::setTitle(String const&) { }\r
-void FrameWin::handledOnloadEvents() { }\r
-RangeImpl* FrameWin::markedTextRange() const { return 0; }\r
-bool FrameWin::passSubframeEventToSubframe(WebCore::MouseEventWithHitTestResults&) { return false; }\r
-bool FrameWin::lastEventIsMouseUp() const { return false; }\r
-\r
-BrowserExtensionWin::BrowserExtensionWin(WebCore::Frame*) { }\r
-\r
-bool KWQCheckIfReloading(WebCore::DocLoader*) { return false; }\r
-void KWQCheckCacheObjectStatus(DocLoader*, CachedObject*) { }\r
-\r
-Widget::Widget() { }\r
-void Widget::show() { }\r
-void Widget::setCursor(Cursor const&) { }\r
-\r
-void ScrollView::resizeContents(int,int) { }\r
-WebCore::ScrollBarMode ScrollView::hScrollBarMode() const { return ScrollBarAlwaysOff; }\r
-WebCore::ScrollBarMode ScrollView::vScrollBarMode() const { return ScrollBarAlwaysOff; }\r
-void ScrollView::suppressScrollBars(bool,bool) { }\r
-void ScrollView::setHScrollBarMode(ScrollBarMode) { }\r
-void ScrollView::setVScrollBarMode(ScrollBarMode) { }\r
-void ScrollView::setScrollBarsMode(ScrollBarMode) { }\r
-int ScrollView::visibleHeight() const { return 600; }\r
-int ScrollView::visibleWidth() const { return 800; }\r
-void ScrollView::setContentsPos(int,int) { }\r
-int ScrollView::contentsX() const { return 0; }\r
-int ScrollView::contentsY() const { return 0; }\r
-int ScrollView::contentsHeight() const { return 600; }\r
-int ScrollView::contentsWidth() const { return 800; }\r
-void ScrollView::viewportToContents(int x1, int y1, int& x2, int& y2) { x2 = x1; y2 = y2; }\r
-\r
-void ScrollView::updateContents(const IntRect&,bool) { }\r
-void ScrollView::setStaticBackground(bool) { }\r
-\r
-TransferJob::TransferJob(WebCore::TransferJobClient*,const String&,KURL const&) { }\r
-void TransferJob::addMetaData(QString const&,QString const&) { }\r
-bool TransferJob::start(class WebCore::DocLoader *){ return false; }\r
-\r
-Font const& GraphicsContext::font() const { return localFont; }\r
-void GraphicsContext::setFont(Font const&) { }\r
-void GraphicsContext::drawText(int,int,int,int,int,int,int,QString const&) { }\r
-void GraphicsContext::drawText(int,int,int,int,QChar const*,int,int,int,int,Color const&,TextDirection,bool,int,int,bool) { }\r
-void GraphicsContext::drawLineForText(int,int,int,int) { }\r
-QFontMetrics GraphicsContext::fontMetrics() const { return QFontMetrics(); }\r
-\r
+#include "config.h"
+
+#define WIN32_COMPILE_HACK
+
+#include <stdio.h>
+#include <stdlib.h>
+#include "NodeImpl.h"
+#include "KWQLineEdit.h"
+#include "Font.h"
+#include "KWQFileButton.h"
+#include "KWQTextEdit.h"
+#include "KWQComboBox.h"
+#include "IntPoint.h"
+#include "Widget.h"
+#include "KWQFontMetrics.h"
+#include "GraphicsContext.h"
+#include "KWQSlider.h"
+#include "Cursor.h"
+#include "loader.h"
+#include "KWQKJobClasses.h"
+#include "FrameView.h"
+#include "KWQScrollBar.h"
+#include "KWQObject.h"
+#include "KWQSignal.h"
+#include "dom2_events.h"
+#include "KWQKJavaAppletWidget.h"
+#include "KWQScrollBar.h"
+#include "Path.h"
+#include "MouseEvent.h"
+#include "KWQKCookieJar.h"
+#include "Screen.h"
+#include "History.h"
+#include "KWQKLocale.h"
+#include "PlugInInfoStore.h"
+#include "render_theme.h"
+#include "FrameWin.h"
+#include "BrowserExtensionWin.h"
+
+using namespace WebCore;
+
+static void notImplemented() { puts("Not yet implemented"); _CrtDbgBreak(); }
+
+void QLineEdit::selectAll() { notImplemented(); }
+void Widget::enableFlushDrawing() { notImplemented(); }
+void GraphicsContext::drawHighlightForText(int,int,int,int,int,QChar const*,int,int,int,int,Color const&,TextDirection,bool,int,int,bool) { notImplemented(); }
+String QTextEdit::textWithHardLineBreaks() const { notImplemented(); return String(); }
+int QLineEdit::cursorPosition() const { notImplemented(); return 0; }
+Color GraphicsContext::selectedTextBackgroundColor() const { notImplemented(); return Color(); }
+void QSlider::setValue(double) { notImplemented(); }
+void QLineEdit::addSearchResult() { notImplemented(); }
+void KWQFileButton::click(bool) { notImplemented(); }
+void QLineEdit::setWritingDirection(TextDirection) { notImplemented(); }
+void GraphicsContext::drawFocusRing(Color const&) { notImplemented(); }
+IntSize KWQFileButton::sizeForCharacterWidth(int) const { notImplemented(); return IntSize(); }
+IntSize QTextEdit::sizeWithColumnsAndRows(int,int) const { notImplemented(); return IntSize(); }
+void QComboBox::clear() { notImplemented(); }
+int GraphicsContext::misspellingLineThickness() const { notImplemented(); return 0; }
+void QComboBox::setFrameGeometry(IntRect const&) { notImplemented(); }
+int QLineEdit::maxLength() const { notImplemented(); return 0; }
+bool Widget::isEnabled() const { notImplemented(); return 0; }
+void QTextEdit::setText(String const&) { notImplemented(); }
+void Widget::paint(GraphicsContext*,IntRect const&) { notImplemented(); }
+void GraphicsContext::addRoundedRectClip(IntRect const&,IntSize const&,IntSize const&,IntSize const&,IntSize const&) { notImplemented(); }
+IntPoint FrameView::viewportToGlobal(IntPoint const&) const { notImplemented(); return IntPoint(); }
+int QTextEdit::selectionEnd() { notImplemented(); return 0; }
+void QTextEdit::setScrollBarModes(ScrollBarMode,ScrollBarMode) { notImplemented(); }
+void QTextEdit::setReadOnly(bool) { notImplemented(); }
+void QListBox::appendItem(QString const&,KWQListBoxItemType,bool) { notImplemented(); }
+void QLineEdit::setPlaceholderString(String const&) { notImplemented(); }
+Widget::FocusPolicy Widget::focusPolicy() const { notImplemented(); return NoFocus; }
+void ScrollView::removeChild(Widget*) { notImplemented(); }
+void QTextEdit::selectAll() { notImplemented(); }
+void GraphicsContext::endTransparencyLayer() { notImplemented(); }
+void ScrollView::addChild(Widget*,int,int) { notImplemented(); }
+void QTextEdit::setDisabled(bool) { notImplemented(); }
+bool QScrollBar::scroll(KWQScrollDirection,KWQScrollGranularity,float) { notImplemented(); return 0; }
+IntSize QListBox::sizeForNumberOfLines(int) const { notImplemented(); return IntSize(); }
+int QLineEdit::selectionStart() const { notImplemented(); return 0; }
+QLineEdit::QLineEdit(QLineEdit::Type) { notImplemented(); }
+void FrameView::updateBorder() { notImplemented(); }
+bool QLineEdit::hasSelectedText() const { notImplemented(); return 0; }
+QScrollBar::QScrollBar(Qt::Orientation,Widget*) { notImplemented(); }
+void QListBox::doneAppendingItems() { notImplemented(); }
+QTextEdit::QTextEdit(Widget*) { notImplemented(); }
+bool ScrollView::inWindow() const { notImplemented(); return 0; }
+bool QScrollBar::setValue(int) { notImplemented(); return 0; }
+bool QTextEdit::hasSelectedText() const { notImplemented(); return 0; }
+int QTextEdit::selectionStart() { notImplemented(); return 0; }
+int ScrollView::scrollXOffset() const { notImplemented(); return 0; }
+bool QListBox::isSelected(int) const { notImplemented(); return 0; }
+void QLineEdit::setReadOnly(bool) { notImplemented(); }
+QComboBox::~QComboBox() { notImplemented(); }
+Cursor::Cursor(Image*) { notImplemented(); }
+Widget::FocusPolicy QComboBox::focusPolicy() const { notImplemented(); return NoFocus; }
+void GraphicsContext::clearShadow() { notImplemented(); }
+void QTextEdit::setLineHeight(int) { notImplemented(); }
+void QScrollBar::setKnobProportion(int,int) { notImplemented(); }
+KWQFileButton::KWQFileButton(Frame*) { notImplemented(); }
+IntRect QFontMetrics::boundingRect(int,int,int,int,int,QString const&,int,int) const { notImplemented(); return IntRect(); }
+void QTextEdit::setSelectionStart(int) { notImplemented(); }
+void GraphicsContext::beginTransparencyLayer(float) { notImplemented(); }
+void QListBox::setSelected(int,bool) { notImplemented(); }
+void GraphicsContext::addFocusRingRect(int,int,int,int) { notImplemented(); }
+void QTextEdit::setCursorPosition(int,int) { notImplemented(); }
+void Widget::setEnabled(bool) { notImplemented(); }
+void QTextEdit::setSelectionEnd(int) { notImplemented(); }
+void QComboBox::populate() { notImplemented(); }
+void Widget::setIsSelected(bool) { notImplemented(); }
+void QTextEdit::setAlignment(Qt::AlignmentFlags) { notImplemented(); }
+void QLineEdit::setCursorPosition(int) { notImplemented(); }
+KJavaAppletWidget::KJavaAppletWidget(IntSize const&,Frame*,KXMLCore::HashMap<String,String> const&) { notImplemented(); }
+QListBox::QListBox() { notImplemented(); }
+QString QLineEdit::selectedText() const { notImplemented(); return QString(); }
+String QLineEdit::text() const { notImplemented(); return String(); }
+void Widget::unlockDrawingFocus() { notImplemented(); }
+void QLineEdit::setLiveSearch(bool) { notImplemented(); }
+QComboBox::QComboBox() { notImplemented(); }
+void QSlider::setMaxValue(double) { notImplemented(); }
+void Widget::lockDrawingFocus() { notImplemented(); }
+void QTextEdit::setSelectionRange(int,int) { notImplemented(); }
+void ScrollView::scrollPointRecursively(int,int) { notImplemented(); }
+IntSize QLineEdit::sizeForCharacterWidth(int) const { notImplemented(); return IntSize(); }
+IntRect QFontMetrics::selectionRectForText(int,int,int,int,int,QChar const*,int,int,int,int,bool,bool,int,int,bool) const { notImplemented(); return IntRect(); }
+void QTextEdit::getCursorPosition(int*,int*) const { notImplemented(); }
+bool FrameView::isFrameView() const { notImplemented(); return 0; }
+void QScrollBar::setSteps(int,int) { notImplemented(); }
+void QLineEdit::setMaxLength(int) { notImplemented(); }
+void QLineEdit::setAutoSaveName(String const&) { notImplemented(); }
+int QComboBox::baselinePosition(int) const { notImplemented(); return 0; }
+void QComboBox::appendItem(QString const&,KWQListBoxItemType,bool) { notImplemented(); }
+void GraphicsContext::setShadow(int,int,int,Color const&) { notImplemented(); }
+void Widget::setDrawingAlpha(float) { notImplemented(); }
+QSlider::QSlider() { notImplemented(); }
+int ScrollView::scrollYOffset() const { notImplemented(); return 0; }
+void QComboBox::setCurrentItem(int) { notImplemented(); }
+void QComboBox::setWritingDirection(TextDirection) { notImplemented(); }
+IntSize QComboBox::sizeHint() const { notImplemented(); return IntSize(); }
+void QLineEdit::setSelection(int,int) { notImplemented(); }
+void QLineEdit::setMaxResults(int) { notImplemented(); }
+void QListBox::clear() { notImplemented(); }
+bool QLineEdit::edited() const { notImplemented(); return 0; }
+void GraphicsContext::clearFocusRing() { notImplemented(); }
+String QTextEdit::text() const { notImplemented(); return String(); }
+void Widget::disableFlushDrawing() { notImplemented(); }
+void GraphicsContext::initFocusRing(int,int) { notImplemented(); }
+void QSlider::setMinValue(double) { notImplemented(); }
+void QTextEdit::setWordWrap(QTextEdit::WrapStyle) { notImplemented(); }
+void GraphicsContext::drawLineForMisspelling(int,int,int) { notImplemented(); }
+void QLineEdit::setText(String const&) { notImplemented(); }
+double QSlider::value() const { notImplemented(); return 0; }
+void QListBox::setSelectionMode(QListBox::SelectionMode) { notImplemented(); }
+void KWQFileButton::setFilename(QString const&) { notImplemented(); }
+void QLineEdit::setEdited(bool) { notImplemented(); }
+IntRect QComboBox::frameGeometry() const { notImplemented(); return IntRect(); }
+void QListBox::setWritingDirection(TextDirection) { notImplemented(); }
+void QLineEdit::setAlignment(Qt::AlignmentFlags) { notImplemented(); }
+Widget::FocusPolicy KWQFileButton::focusPolicy() const { notImplemented(); return NoFocus; }
+bool QLineEdit::checksDescendantsForFocus() const { notImplemented(); return false; }
+int KWQFileButton::baselinePosition(int) const { notImplemented(); return 0; }
+QSlider::~QSlider() { notImplemented(); }
+void KWQFileButton::setFrameGeometry(WebCore::IntRect const&) { notImplemented(); }
+QListBox::~QListBox() { notImplemented(); }
+WebCore::IntRect KWQFileButton::frameGeometry() const { notImplemented(); return IntRect(); }
+KWQFileButton::~KWQFileButton() { notImplemented(); }
+Widget::FocusPolicy QTextEdit::focusPolicy() const { notImplemented(); return NoFocus; }
+Widget::FocusPolicy QSlider::focusPolicy() const { notImplemented(); return NoFocus; }
+void QListBox::setEnabled(bool) { notImplemented(); }
+bool QListBox::checksDescendantsForFocus() const { notImplemented(); return 0; }
+Widget::FocusPolicy QListBox::focusPolicy() const { notImplemented(); return NoFocus; }
+int QLineEdit::baselinePosition(int) const { notImplemented(); return 0; }
+WebCore::IntSize QSlider::sizeHint() const { notImplemented(); return IntSize(); }
+QLineEdit::~QLineEdit() { notImplemented(); }
+QTextEdit::~QTextEdit() { notImplemented(); }
+bool QTextEdit::checksDescendantsForFocus() const { notImplemented(); return false; }
+Widget::FocusPolicy QLineEdit::focusPolicy() const { notImplemented(); return NoFocus; }
+QScrollBar::~QScrollBar() { notImplemented(); }
+Path::Path(){ notImplemented(); }
+Path::Path(const IntRect&, Type){ notImplemented(); }
+Path::Path(const IntPointArray&){ notImplemented(); }
+Path::~Path(){ notImplemented(); }
+Path::Path(const Path&){ notImplemented(); }
+Path& Path::operator=(const Path&){ notImplemented(); return*this; }
+bool Path::contains(const IntPoint&) const{ notImplemented(); return false; }
+void Path::translate(int, int){ notImplemented(); }
+IntRect Path::boundingRect() const { notImplemented(); return IntRect(); }
+static Cursor localCursor;
+const Cursor& WebCore::moveCursor() { notImplemented(); return localCursor; }
+WebCore::MouseEvent::MouseEvent() { notImplemented(); }
+void QLineEdit::setColors(Color const&,Color const&) { notImplemented(); }
+void QTextEdit::setColors(Color const&,Color const&) { notImplemented(); }
+QString searchableIndexIntroduction() { notImplemented(); return QString(); }
+void KWQKCookieJar::setCookie(KURL const&,KURL const&,QString const&) { notImplemented(); }
+QString KWQKCookieJar::cookie(KURL const&) { notImplemented(); return QString(); }
+IntRect WebCore::screenRect(Widget*) { notImplemented(); return IntRect(); }
+void ScrollView::scrollBy(int,int) { notImplemented(); }
+int KWQFindNextSentenceFromIndex(QChar const*,int,int,bool) { notImplemented(); return 0; }
+void KWQFindSentenceBoundary(QChar const*,int,int,int*,int*) { notImplemented(); }
+int KWQFindNextWordFromIndex(QChar const*,int,int,bool) { notImplemented(); return 0; }
+void KWQFindWordBoundary(QChar const*,int,int,int*,int*) { notImplemented(); }
+bool KWQKCookieJar::cookieEnabled() { notImplemented(); return false; }
+void WebCore::TransferJob::kill() { notImplemented(); }
+void WebCore::TransferJob::addMetaData(KXMLCore::HashMap<String,String> const&) { notImplemented(); }
+QString WebCore::TransferJob::queryMetaData(QString const&) const { notImplemented(); return QString(); }
+int WebCore::TransferJob::error() const { notImplemented(); return 0; }
+QString WebCore::TransferJob::errorText() const { notImplemented(); return "Houston, we have a problem."; }
+bool WebCore::TransferJob::isErrorPage() const { notImplemented(); return 0; }
+WebCore::TransferJob::TransferJob(WebCore::TransferJobClient*, const String&, KURL const&,WebCore::FormData const&) { notImplemented(); }
+PluginInfo*PlugInInfoStore::createPluginInfoForPluginAtIndex(unsigned) { notImplemented(); return 0;}
+unsigned PlugInInfoStore::pluginCount() const { notImplemented(); return 0; }
+void WebCore::refreshPlugins(bool) { notImplemented(); }
+int WebCore::screenDepth(Widget*) { notImplemented(); return 96; }
+static QFontMetrics localFontMetrics;
+float QFontMetrics::xHeight() const { notImplemented(); return 0; }
+IntRect WebCore::usableScreenRect(Widget*) { notImplemented(); return IntRect(0,0,800,600); }
+RenderTheme* WebCore::theme() { notImplemented(); return 0; }
+Array<char> KWQServeSynchronousRequest(Loader*,DocLoader*,TransferJob*,KURL&,QString&) { notImplemented(); return 0; }
+Widget* WebCore::FrameView::topLevelWidget() const { notImplemented(); return 0; }
+void FrameWin::respondToChangedContents(void) { notImplemented(); }
+void FrameWin::unfocusWindow(void) { notImplemented(); }
+bool FrameWin::locationbarVisible(void) { notImplemented(); return 0; }
+void FrameWin::respondToChangedSelection(WebCore::SelectionController const&,bool) { notImplemented(); }
+void FrameWin::clearUndoRedoOperations(void) { notImplemented(); }
+void FrameWin::issueRedoCommand(void) { notImplemented(); }
+KJS::Bindings::Instance * FrameWin::getObjectInstanceForWidget(Widget *) { notImplemented(); return 0; }
+KJS::Bindings::Instance * FrameWin::getEmbedInstanceForWidget(Widget *) { notImplemented(); return 0; }
+bool FrameWin::canRedo(void)const { notImplemented(); return 0; }
+bool FrameWin::canUndo(void)const { notImplemented(); return 0; }
+bool FrameWin::runJavaScriptPrompt(String const&,String const&,String &) { notImplemented(); return 0; }
+void FrameWin::recordFormValue(QString const&,QString const&,WebCore::HTMLFormElementImpl *) { notImplemented(); }
+void FrameWin::registerCommandForRedo(WebCore::EditCommandPtr const&) { notImplemented(); }
+void FrameWin::runJavaScriptAlert(String const&) { notImplemented(); }
+bool FrameWin::runJavaScriptConfirm(String const&) { notImplemented(); return 0; }
+bool FrameWin::openURL(KURL const&) { notImplemented(); return 0; }
+void FrameWin::urlSelected(KURL const&,struct WebCore::URLArgs const&) { notImplemented(); }
+void FrameWin::saveDocumentState(void) { notImplemented(); }
+void FrameWin::print(void) { notImplemented(); }
+KJS::Bindings::Instance * FrameWin::getAppletInstanceForWidget(Widget *) { notImplemented(); return 0; }
+bool FrameWin::passMouseDownEventToWidget(Widget *) { notImplemented(); return 0; }
+void FrameWin::registerCommandForUndo(WebCore::EditCommandPtr const&) { notImplemented(); }
+void FrameWin::issueCutCommand(void) { notImplemented(); }
+void FrameWin::issueCopyCommand(void) { notImplemented(); }
+void FrameWin::openURLRequest(KURL const&,struct WebCore::URLArgs const&) { notImplemented(); }
+bool FrameWin::passWheelEventToChildWidget(WebCore::NodeImpl *) { notImplemented(); return 0; }
+void FrameWin::issueUndoCommand(void) { notImplemented(); }
+QString FrameWin::mimeTypeForFileName(QString const&)const { notImplemented(); return QString(); }
+void FrameWin::clearRecordedFormValues(void) { notImplemented(); }
+void FrameWin::issuePasteCommand(void) { notImplemented(); }
+void FrameWin::scheduleClose(void) { notImplemented(); }
+void FrameWin::markMisspellingsInAdjacentWords(WebCore::VisiblePosition const&) { notImplemented(); }
+void FrameWin::markMisspellings(WebCore::SelectionController const&) { notImplemented(); }
+bool FrameWin::menubarVisible(void) { notImplemented(); return 0; }
+bool FrameWin::personalbarVisible(void) { notImplemented(); return 0; }
+bool FrameWin::statusbarVisible(void) { notImplemented(); return 0; }
+bool FrameWin::toolbarVisible(void) { notImplemented(); return 0; }
+void FrameWin::issueTransposeCommand(void) { notImplemented(); }
+void FrameWin::submitForm(KURL const&,struct WebCore::URLArgs const&) { notImplemented(); }
+bool FrameWin::canPaste(void)const { notImplemented(); return 0; }
+QString FrameWin::incomingReferrer(void)const { notImplemented(); return QString(); }
+enum WebCore::ObjectContentType FrameWin::objectContentType(KURL const&,QString const&) { notImplemented(); return (ObjectContentType)0; }
+WebCore::Frame * FrameWin::createFrame(KURL const&,QString const&,WebCore::RenderPart *,String const&) { notImplemented(); return 0; }
+bool FrameWin::canGoBackOrForward(int)const { notImplemented(); return 0; }
+void FrameWin::issuePasteAndMatchStyleCommand(void) { notImplemented(); }
+WebCore::Plugin * FrameWin::createPlugin(KURL const&,QStringList const&,QStringList const&,QString const&) { notImplemented(); return 0; }
+String FrameWin::generateFrameName(void) { notImplemented(); return String(); }
+void BrowserExtensionWin::setTypedIconURL(KURL const&,QString const&) { notImplemented(); }
+void BrowserExtensionWin::openURLRequest(KURL const&,struct WebCore::URLArgs const&) { notImplemented(); }
+int BrowserExtensionWin::getHistoryLength(void) { notImplemented(); return 0; }
+bool BrowserExtensionWin::canRunModal(void) { notImplemented(); return 0; }
+void BrowserExtensionWin::openURLNotify(void) { notImplemented(); }
+void BrowserExtensionWin::createNewWindow(KURL const&,struct WebCore::URLArgs const&,struct WebCore::WindowArgs const&,WebCore::Frame * &) { notImplemented(); }
+bool BrowserExtensionWin::canRunModalNow(void) { notImplemented(); return 0; }
+void BrowserExtensionWin::runModal(void) { notImplemented(); }
+void BrowserExtensionWin::goBackOrForward(int) { notImplemented(); }
+void BrowserExtensionWin::setIconURL(KURL const&) { notImplemented(); }
+void BrowserExtensionWin::createNewWindow(KURL const&,struct WebCore::URLArgs const&) { notImplemented(); }
+void QSlider::setFont(WebCore::Font const&) { notImplemented(); }
+void QLineEdit::setFont(WebCore::Font const&) { notImplemented(); }
+static WebCore::Font localFont;
+void QListBox::setFont(WebCore::Font const&) { notImplemented(); }
+QFontMetrics::QFontMetrics(WebCore::FontDescription const&) { notImplemented(); }
+void QComboBox::setFont(WebCore::Font const&) { notImplemented(); }
+void QTextEdit::setFont(WebCore::Font const&) { notImplemented(); }
+void QTextEdit::setWritingDirection(enum WebCore::TextDirection) { notImplemented(); }
+GraphicsContext::GraphicsContext() { notImplemented(); }
+
+// Completely empty stubs (mostly to allow DRT to run):
+bool WebCore::historyContains(QString const&) { return false; }
+QString submitButtonDefaultLabel() { return "Submit"; }
+QString inputElementAltText() { return QString(); }
+QString resetButtonDefaultLabel() { return "Reset"; }
+QString KLocale::language() { return "en"; }
+
+QFontMetrics::QFontMetrics() { }
+QFontMetrics::~QFontMetrics() { }
+QFontMetrics::QFontMetrics(QFontMetrics const&) { }
+QFontMetrics& QFontMetrics::operator=(QFontMetrics const&) { return localFontMetrics; }
+float QFontMetrics::floatWidth(QChar const*,int,int,int,int,int,int,int,bool) const { return 14.0; }
+int QFontMetrics::lineSpacing() const { return 10; }
+int QFontMetrics::ascent() const { return 10; }
+int QFontMetrics::height() const { return 10; }
+int QFontMetrics::width(QString const&,int,int,int) const { return 10; }
+int QFontMetrics::descent() const { return 10; }
+void QFontMetrics::setFontDescription(WebCore::FontDescription const&) { }
+bool QFontMetrics::isFixedPitch(void)const { return 0; }
+int QFontMetrics::checkSelectionPoint(QChar const*,int,int,int,int,int,int,int,int,bool,int,bool,bool,bool) const { return 0; }
+
+
+void FrameWin::restoreDocumentState() { }
+void FrameWin::partClearedInBegin() { }
+void FrameWin::createEmptyDocument() { }
+QString FrameWin::overrideMediaType() const { return QString(); }
+void FrameWin::setTitle(String const&) { }
+void FrameWin::handledOnloadEvents() { }
+RangeImpl* FrameWin::markedTextRange() const { return 0; }
+bool FrameWin::passSubframeEventToSubframe(WebCore::MouseEventWithHitTestResults&) { return false; }
+bool FrameWin::lastEventIsMouseUp() const { return false; }
+void FrameWin::addMessageToConsole(String const&,unsigned int,String const&) { }
+bool FrameWin::shouldChangeSelection(SelectionController const&,SelectionController const&,WebCore::EAffinity,bool)const { return 0; }
+
+
+BrowserExtensionWin::BrowserExtensionWin(WebCore::Frame*) { }
+
+bool KWQCheckIfReloading(WebCore::DocLoader*) { return false; }
+void KWQCheckCacheObjectStatus(DocLoader*, CachedObject*) { }
+
+void ScrollView::resizeContents(int w,int h) { resize(w, h); }
+WebCore::ScrollBarMode ScrollView::hScrollBarMode() const { return ScrollBarAlwaysOff; }
+WebCore::ScrollBarMode ScrollView::vScrollBarMode() const { return ScrollBarAlwaysOff; }
+void ScrollView::suppressScrollBars(bool,bool) { }
+void ScrollView::setHScrollBarMode(ScrollBarMode) { }
+void ScrollView::setVScrollBarMode(ScrollBarMode) { }
+void ScrollView::setScrollBarsMode(ScrollBarMode) { }
+int ScrollView::visibleHeight() const { return 800; }
+int ScrollView::visibleWidth() const { return 1000; }
+void ScrollView::setContentsPos(int x,int y) { move(x, y); }
+int ScrollView::contentsX() const { return x(); }
+int ScrollView::contentsY() const { return y(); }
+int ScrollView::contentsHeight() const { return 800; }
+int ScrollView::contentsWidth() const { return 1000; }
+void ScrollView::viewportToContents(int x1, int y1, int& x2, int& y2) { x2 = x1; y2 = y1; }
+void ScrollView::setStaticBackground(bool) { }
+
+TransferJob::TransferJob(WebCore::TransferJobClient*,const String&,KURL const&) { }
+void TransferJob::addMetaData(QString const&,QString const&) { }
+bool TransferJob::start(class WebCore::DocLoader *){ return false; }
+
+Font const& GraphicsContext::font() const { return localFont; }
+void GraphicsContext::setFont(Font const&) { }
+void GraphicsContext::drawText(int,int,int,int,int,int,int,QString const&) { }
+void GraphicsContext::drawText(int,int,int,int,QChar const*,int,int,int,int,Color const&,TextDirection,bool,int,int,bool) { }
+void GraphicsContext::drawLineForText(int,int,int,int) { }
+QFontMetrics GraphicsContext::fontMetrics() const { return QFontMetrics(); }
+
diff --git a/WebCore/platform/win/WidgetWin.cpp b/WebCore/platform/win/WidgetWin.cpp
new file mode 100644 (file)
index 0000000..3496dc3
--- /dev/null
@@ -0,0 +1,136 @@
+/*
+ * Copyright (C) 2006 Apple Computer, Inc.  All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ */
+
+#include "config.h"
+#include "Widget.h"
+
+#include "Cursor.h"
+#include "GraphicsContext.h"
+#include "FrameWin.h"
+#include "Font.h"
+
+namespace WebCore {
+
+class WidgetPrivate
+{
+public:
+    HWND windowHandle;
+    Font font;
+};
+
+Widget::Widget()
+    : data(new WidgetPrivate)
+{
+    data->windowHandle = 0;
+}
+
+Widget::Widget(HWND hWnd)
+    : data(new WidgetPrivate)
+{
+    data->windowHandle = hWnd;
+}
+
+Widget::~Widget() 
+{
+    delete data;
+}
+
+HWND Widget::windowHandle()
+{
+    return data->windowHandle;
+}
+
+void Widget::setWindowHandle(HWND hWnd)
+{
+    data->windowHandle = hWnd;
+}
+
+void Widget::setActiveWindow() 
+{
+    BringWindowToTop(data->windowHandle);
+}
+
+IntRect Widget::frameGeometry() const
+{
+    RECT frame;
+    if (GetWindowRect(data->windowHandle, &frame))
+        return frame;
+    return IntRect();
+}
+
+bool Widget::hasFocus() const
+{
+    return (data->windowHandle == GetForegroundWindow());
+}
+
+void Widget::setFocus()
+{
+    SetFocus(data->windowHandle);
+}
+
+void Widget::clearFocus()
+{
+    FrameWin::clearDocumentFocus(this);
+    SetFocus(0);
+}
+
+const Font& Widget::font() const
+{
+    return data->font;
+}
+
+void Widget::setFont(const Font& font)
+{
+    data->font = font;
+}
+
+void Widget::setCursor(const Cursor& cursor)
+{
+    SetProp(data->windowHandle, L"PROP_CURSOR", cursor.impl());
+}
+
+void Widget::show()
+{
+    ShowWindow(data->windowHandle, SW_SHOWNA);
+}
+
+void Widget::hide()
+{
+    ShowWindow(data->windowHandle, SW_HIDE);
+}
+
+void Widget::setFrameGeometry(const IntRect &rect)
+{
+    MoveWindow(data->windowHandle, rect.x(), rect.y(), rect.width(), rect.height(), false);
+}
+
+IntPoint Widget::mapFromGlobal(const IntPoint &p) const
+{
+    POINT point = p;
+    ScreenToClient(data->windowHandle, &point);
+    return point;
+}
+
+}