[SHDOCVW]
authorAmine Khaldi <amine.khaldi@reactos.org>
Sun, 21 Apr 2013 13:50:00 +0000 (13:50 +0000)
committerAmine Khaldi <amine.khaldi@reactos.org>
Sun, 21 Apr 2013 13:50:00 +0000 (13:50 +0000)
* Sync with Wine 1.5.26.

svn path=/trunk/; revision=58802

45 files changed:
reactos/dll/win32/shdocvw/CMakeLists.txt
reactos/dll/win32/shdocvw/De.rc [deleted file]
reactos/dll/win32/shdocvw/En.rc [deleted file]
reactos/dll/win32/shdocvw/Es.rc [deleted file]
reactos/dll/win32/shdocvw/Fr.rc [deleted file]
reactos/dll/win32/shdocvw/He.rc [deleted file]
reactos/dll/win32/shdocvw/It.rc [deleted file]
reactos/dll/win32/shdocvw/Ko.rc [deleted file]
reactos/dll/win32/shdocvw/Lt.rc [deleted file]
reactos/dll/win32/shdocvw/Nl.rc [deleted file]
reactos/dll/win32/shdocvw/Pl.rc [deleted file]
reactos/dll/win32/shdocvw/Pt.rc [deleted file]
reactos/dll/win32/shdocvw/Ro.rc [deleted file]
reactos/dll/win32/shdocvw/Si.rc [deleted file]
reactos/dll/win32/shdocvw/Sr.rc [deleted file]
reactos/dll/win32/shdocvw/Sv.rc [deleted file]
reactos/dll/win32/shdocvw/Tr.rc [deleted file]
reactos/dll/win32/shdocvw/Uk.rc [deleted file]
reactos/dll/win32/shdocvw/classinfo.c [deleted file]
reactos/dll/win32/shdocvw/client.c [deleted file]
reactos/dll/win32/shdocvw/dochost.c [deleted file]
reactos/dll/win32/shdocvw/events.c [deleted file]
reactos/dll/win32/shdocvw/factory.c [deleted file]
reactos/dll/win32/shdocvw/frame.c [deleted file]
reactos/dll/win32/shdocvw/ie.c [deleted file]
reactos/dll/win32/shdocvw/ietoolbar.bmp [deleted file]
reactos/dll/win32/shdocvw/ietoolbar.svg [deleted file]
reactos/dll/win32/shdocvw/iexplore.c [deleted file]
reactos/dll/win32/shdocvw/intshcut.c [deleted file]
reactos/dll/win32/shdocvw/navigate.c [deleted file]
reactos/dll/win32/shdocvw/oleobject.c [deleted file]
reactos/dll/win32/shdocvw/persist.c [deleted file]
reactos/dll/win32/shdocvw/resource.h [deleted file]
reactos/dll/win32/shdocvw/shdocvw.h
reactos/dll/win32/shdocvw/shdocvw.inf [deleted file]
reactos/dll/win32/shdocvw/shdocvw.rc
reactos/dll/win32/shdocvw/shdocvw.spec
reactos/dll/win32/shdocvw/shdocvw_main.c
reactos/dll/win32/shdocvw/shlinstobj.c
reactos/dll/win32/shdocvw/taskbarlist.c [deleted file]
reactos/dll/win32/shdocvw/urlhist.c [deleted file]
reactos/dll/win32/shdocvw/version.rc [deleted file]
reactos/dll/win32/shdocvw/view.c [deleted file]
reactos/dll/win32/shdocvw/webbrowser.c [deleted file]
reactos/media/doc/README.WINE

index 34b5102..8ec066a 100644 (file)
@@ -1,6 +1,4 @@
 
-add_typelib(shdocvw_v1.idl)
-
 add_definitions(
     -D__WINESRC__
     -D_SHDOCVW_)
@@ -9,57 +7,22 @@ include_directories(${REACTOS_SOURCE_DIR}/include/reactos/wine)
 spec2def(shdocvw.dll shdocvw.spec ADD_IMPORTLIB)
 
 list(APPEND SOURCE
-    classinfo.c
-    client.c
-    dochost.c
-    events.c
-    factory.c
-    frame.c
-    ie.c
-    iexplore.c
-    intshcut.c
-    navigate.c
-    oleobject.c
-    persist.c
     shdocvw_main.c
     shlinstobj.c
-    taskbarlist.c
-    urlhist.c
-    view.c
-    webbrowser.c
     ${CMAKE_CURRENT_BINARY_DIR}/shdocvw_stubs.c
     ${CMAKE_CURRENT_BINARY_DIR}/shdocvw.def)
 
-set_source_files_properties(shdocvw.rc PROPERTIES OBJECT_DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/shdocvw_v1.tlb)
-
-add_library(shdocvw SHARED
-    ${SOURCE}
-    shdocvw.rc)
 
+add_typelib(shdocvw_v1.idl)
+set_source_files_properties(shdocvw.rc PROPERTIES OBJECT_DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/shdocvw_v1.tlb)
+add_library(shdocvw SHARED ${SOURCE} shdocvw.rc)
 set_module_type(shdocvw win32dll)
 target_link_libraries(shdocvw uuid wine)
-add_delay_importlibs(shdocvw version ole32 oleaut32)
-
-add_importlibs(shdocvw
-    comctl32
-    shlwapi
-    shell32
-    user32
-    advapi32
-    gdi32
-    urlmon
-    msvcrt
-    kernel32
-    ntdll)
+add_importlibs(shdocvw shlwapi advapi32 msvcrt kernel32 ntdll)
+add_delay_importlibs(shdocvw version ole32 oleaut32 ieframe)
 
 # shdocvw_v1.tlb needs stdole2.tlb
 add_dependencies(shdocvw stdole2)
 
 add_pch(shdocvw shdocvw.h)
 add_cd_file(TARGET shdocvw DESTINATION reactos/system32 FOR all)
-
-if(NOT MSVC)
-    # FIXME: http://www.cmake.org/Bug/view.php?id=12998
-    #allow_warnings(shdocvw)
-    set_source_files_properties(${SOURCE} PROPERTIES COMPILE_FLAGS "-Wno-error")
-endif()
diff --git a/reactos/dll/win32/shdocvw/De.rc b/reactos/dll/win32/shdocvw/De.rc
deleted file mode 100644 (file)
index 9e5a50b..0000000
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
- * Copyright 2010 André Hentschel
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-#include "resource.h"
-
-#pragma code_page(65001)
-
-LANGUAGE LANG_GERMAN, SUBLANG_NEUTRAL
-
-IDD_BROWSE_OPEN DIALOG 10, 10, 200, 70
-STYLE DS_MODALFRAME | WS_CAPTION
-CAPTION "URL öffnen"
-FONT 8, "MS Shell Dlg"
-{
-    LTEXT "Geben Sie die Url ein, die Sie mit Internet Explorer öffnen möchten",-1,30, 5, 150,15
-    LTEXT "Öffnen:", -1, 2, 32, 25, 15
-    EDITTEXT IDC_BROWSE_OPEN_URL, 30, 30, 160, 13
-    DEFPUSHBUTTON "&OK", IDOK, 30, 50, 50, 15
-    PUSHBUTTON "&Abbrechen", IDCANCEL, 90, 50, 50, 15
-}
-
-IDR_BROWSE_MAIN_MENU MENU
-{
-    POPUP "&Datei"
-    {
-        POPUP "&Neu"
-        {
-            MENUITEM "&Fenster",                      ID_BROWSE_NEW_WINDOW
-        }
-        MENUITEM "Ö&ffnen...",                        ID_BROWSE_OPEN
-        MENUITEM "&Speichern",                        ID_BROWSE_SAVE
-        MENUITEM "Speichern &als...",                 ID_BROWSE_SAVE_AS
-        MENUITEM SEPARATOR
-        MENUITEM "Seite &einrichten...",              ID_BROWSE_PRINT_FORMAT
-        MENUITEM "Dr&ucken...",                       ID_BROWSE_PRINT
-        MENUITEM "Seiten&vorschau...",                ID_BROWSE_PRINT_PREVIEW
-        MENUITEM SEPARATOR
-        MENUITEM "Ei&genschaften...",                 ID_BROWSE_PROPERTIES
-        MENUITEM "&Beenden",                          ID_BROWSE_QUIT
-    }
-    POPUP "&Ansicht"
-    {
-        POPUP "&Symbolleisten"
-        {
-            MENUITEM "&Standard",                     ID_BROWSE_BAR_STD
-            MENUITEM "&Adressleiste",                 ID_BROWSE_BAR_ADDR
-        }
-    }
-    POPUP "&Favoriten"
-    {
-        MENUITEM "&Zu den Favoriten hinzufügen...",   ID_BROWSE_ADDFAV
-        MENUITEM SEPARATOR
-    }
-    POPUP "&Hilfe"
-    {
-        MENUITEM "Über &Internet Explorer...",        ID_BROWSE_ABOUT
-    }
-}
-
-STRINGTABLE
-{
-    IDS_TB_BACK             "Zurück"
-    IDS_TB_FORWARD          "Vorwärts"
-    IDS_TB_STOP             "Stopp"
-    IDS_TB_REFRESH          "Neu laden"
-    IDS_TB_HOME             "Start"
-    IDS_TB_PRINT            "Drucken"
-}
-
-STRINGTABLE
-{
-    IDS_ADDRESS             "Adresse"
-}
diff --git a/reactos/dll/win32/shdocvw/En.rc b/reactos/dll/win32/shdocvw/En.rc
deleted file mode 100644 (file)
index 9e0bd2b..0000000
+++ /dev/null
@@ -1,86 +0,0 @@
-/*
- * Copyright 2010 Alexander N. Sørnes <alex@thehandofagony.com>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-#include "resource.h"
-
-LANGUAGE LANG_ENGLISH, SUBLANG_DEFAULT
-
-IDD_BROWSE_OPEN DIALOG 10, 10, 200, 70
-STYLE DS_MODALFRAME | WS_CAPTION
-CAPTION "Open URL"
-FONT 8, "MS Shell Dlg"
-{
-    LTEXT "Specify the URL you wish to open in Internet Explorer",-1,25, 5, 150,15
-    LTEXT "Open:", -1, 2, 32, 20, 15
-    EDITTEXT IDC_BROWSE_OPEN_URL, 25, 30, 160, 13
-    DEFPUSHBUTTON "&OK", IDOK, 25, 50, 50, 15
-    PUSHBUTTON "&Cancel", IDCANCEL, 85, 50, 50, 15
-}
-
-IDR_BROWSE_MAIN_MENU MENU
-{
-    POPUP "&File"
-    {
-        POPUP "&New"
-        {
-            MENUITEM "&Window",                 ID_BROWSE_NEW_WINDOW
-        }
-        MENUITEM "&Open...",                    ID_BROWSE_OPEN
-        MENUITEM "&Save",                       ID_BROWSE_SAVE
-        MENUITEM "Save &as...",                 ID_BROWSE_SAVE_AS
-        MENUITEM SEPARATOR
-        MENUITEM "Print &format...",            ID_BROWSE_PRINT_FORMAT
-        MENUITEM "Pr&int...",                   ID_BROWSE_PRINT
-        MENUITEM "Print previe&w...",           ID_BROWSE_PRINT_PREVIEW
-        MENUITEM SEPARATOR
-        MENUITEM "&Properties...",              ID_BROWSE_PROPERTIES
-        MENUITEM "&Close",                      ID_BROWSE_QUIT
-    }
-    POPUP "&View"
-    {
-        POPUP "&Toolbars"
-        {
-            MENUITEM "&Standard bar",           ID_BROWSE_BAR_STD
-            MENUITEM "&Address bar",            ID_BROWSE_BAR_ADDR
-        }
-    }
-    POPUP "&Favorites"
-    {
-        MENUITEM "&Add to Favorites...",        ID_BROWSE_ADDFAV
-        MENUITEM SEPARATOR
-    }
-    POPUP "&Help"
-    {
-        MENUITEM "&About Internet Explorer...", ID_BROWSE_ABOUT
-    }
-}
-
-STRINGTABLE
-{
-    IDS_TB_BACK             "Back"
-    IDS_TB_FORWARD          "Forward"
-    IDS_TB_STOP             "Stop"
-    IDS_TB_REFRESH          "Refresh"
-    IDS_TB_HOME             "Home"
-    IDS_TB_PRINT            "Print"
-}
-
-STRINGTABLE
-{
-    IDS_ADDRESS             "Address"
-}
diff --git a/reactos/dll/win32/shdocvw/Es.rc b/reactos/dll/win32/shdocvw/Es.rc
deleted file mode 100644 (file)
index 680f542..0000000
+++ /dev/null
@@ -1,89 +0,0 @@
-/*
- * Spanish resources for shdocvw
- *
- * Copyright 2010 José Rostagno
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-#include "resource.h"
-
-#pragma code_page(65001)
-
-LANGUAGE LANG_SPANISH, SUBLANG_NEUTRAL
-
-IDD_BROWSE_OPEN DIALOG 10, 10, 200, 70
-STYLE DS_MODALFRAME | WS_CAPTION
-CAPTION "Abrir URL"
-FONT 8, "MS Shell Dlg"
-{
-    LTEXT "Especifique la dirección que desea abrir en Internet Explorer",-1,25, 5, 150,15
-    LTEXT "Abrir:", -1, 2, 32, 20, 15
-    EDITTEXT IDC_BROWSE_OPEN_URL, 25, 30, 160, 13
-    DEFPUSHBUTTON "&Aceptar", IDOK, 25, 50, 50, 15
-    PUSHBUTTON "&Cancelar", IDCANCEL, 85, 50, 50, 15
-}
-
-IDR_BROWSE_MAIN_MENU MENU
-{
-    POPUP "&Archivo"
-    {
-        POPUP "&Nuevo"
-        {
-            MENUITEM "&Ventana",                 ID_BROWSE_NEW_WINDOW
-        }
-        MENUITEM "&Abrir...",                    ID_BROWSE_OPEN
-        MENUITEM "&Guardar",                       ID_BROWSE_SAVE
-        MENUITEM "Guardar &como...",                 ID_BROWSE_SAVE_AS
-        MENUITEM SEPARATOR
-        MENUITEM "&Formato de impresión...",            ID_BROWSE_PRINT_FORMAT
-        MENUITEM "&Imprimir...",                   ID_BROWSE_PRINT
-        MENUITEM "&Vista previa de impresión...",           ID_BROWSE_PRINT_PREVIEW
-        MENUITEM SEPARATOR
-        MENUITEM "&Propiedades...",              ID_BROWSE_PROPERTIES
-    }
-    POPUP "&Ver"
-    {
-        POPUP "&Barra de herramientas"
-        {
-            MENUITEM "Barra &estándar",           ID_BROWSE_BAR_STD
-            MENUITEM "Barra de &direcciones",            ID_BROWSE_BAR_ADDR
-        }
-    }
-    POPUP "&Favoritos"
-    {
-        MENUITEM "&Añadir a Favoritos...",        ID_BROWSE_ADDFAV
-        MENUITEM SEPARATOR
-    }
-    POPUP "A&yuda"
-    {
-        MENUITEM "Acerca &de Internet Explorer...", ID_BROWSE_ABOUT
-    }
-}
-
-STRINGTABLE
-{
-    IDS_TB_BACK             "Atrás"
-    IDS_TB_FORWARD          "Adelante"
-    IDS_TB_STOP             "Detener"
-    IDS_TB_REFRESH          "Recargar"
-    IDS_TB_HOME             "Inicio"
-    IDS_TB_PRINT            "Imprimir"
-}
-
-STRINGTABLE
-{
-    IDS_ADDRESS             "Dirección"
-}
diff --git a/reactos/dll/win32/shdocvw/Fr.rc b/reactos/dll/win32/shdocvw/Fr.rc
deleted file mode 100644 (file)
index bbc7eae..0000000
+++ /dev/null
@@ -1,91 +0,0 @@
-/*
- * shdocvw French resources
- *
- * Copyright 2010 Frédéric Delanoy
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-#include "resource.h"
-
-/* UTF-8 */
-#pragma code_page(65001)
-
-LANGUAGE LANG_FRENCH, SUBLANG_NEUTRAL
-
-IDD_BROWSE_OPEN DIALOG 10, 10, 200, 70
-STYLE DS_MODALFRAME | WS_CAPTION
-CAPTION "Open URL"
-FONT 8, "MS Shell Dlg"
-{
-    LTEXT "Spécifiez l'URL que vous désirez ouvrir dans Internet Explorer :",-1,30, 6, 150, 17
-    LTEXT "Ouvrir :", -1, 2, 32, 27, 15
-    EDITTEXT IDC_BROWSE_OPEN_URL, 30, 30, 155, 13
-    DEFPUSHBUTTON "&OK", IDOK, 54, 50, 50, 15
-    PUSHBUTTON "&Annuler", IDCANCEL, 114, 50, 50, 15
-}
-
-IDR_BROWSE_MAIN_MENU MENU
-{
-    POPUP "&Fichier"
-    {
-        POPUP "&Nouvelle"
-        {
-            MENUITEM "&Fenêtre",                 ID_BROWSE_NEW_WINDOW
-        }
-        MENUITEM "&Ouvrir...",                    ID_BROWSE_OPEN
-        MENUITEM "&Enregistrer",                       ID_BROWSE_SAVE
-        MENUITEM "Enregistrer &sous...",                 ID_BROWSE_SAVE_AS
-        MENUITEM SEPARATOR
-        MENUITEM "&Format d'impression...",            ID_BROWSE_PRINT_FORMAT
-        MENUITEM "&Imprimer...",                   ID_BROWSE_PRINT
-        MENUITEM "&Aperçu avant impression...",           ID_BROWSE_PRINT_PREVIEW
-        MENUITEM SEPARATOR
-        MENUITEM "&Propriétés...",              ID_BROWSE_PROPERTIES
-        MENUITEM "&Quitter",                    ID_BROWSE_QUIT
-    }
-    POPUP "&Afficher"
-    {
-        POPUP "&Barres d'outils"
-        {
-            MENUITEM "Barre &standard",           ID_BROWSE_BAR_STD
-            MENUITEM "Barre d'&adresse",            ID_BROWSE_BAR_ADDR
-        }
-    }
-    POPUP "&Favoris"
-    {
-        MENUITEM "&Ajouter aux favoris...",        ID_BROWSE_ADDFAV
-        MENUITEM SEPARATOR
-    }
-    POPUP "A&ide"
-    {
-        MENUITEM "À &propos d'Internet Explorer...", ID_BROWSE_ABOUT
-    }
-}
-
-STRINGTABLE
-{
-    IDS_TB_BACK             "Précédent"
-    IDS_TB_FORWARD          "Suivant"
-    IDS_TB_STOP             "Arrêter"
-    IDS_TB_REFRESH          "Recharger"
-    IDS_TB_HOME             "Accueil"
-    IDS_TB_PRINT            "Imprimer"
-}
-
-STRINGTABLE
-{
-    IDS_ADDRESS             "Adresse"
-}
diff --git a/reactos/dll/win32/shdocvw/He.rc b/reactos/dll/win32/shdocvw/He.rc
deleted file mode 100644 (file)
index 2b5f4e5..0000000
+++ /dev/null
@@ -1,90 +0,0 @@
-/*
- * Copyright 2010 Alexander N. Sørnes <alex@thehandofagony.com>
- * Copyright 2010 Yaron Shahrabani <sh.yaron@gmail.com>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-#include "resource.h"
-
-#pragma code_page(65001)
-
-LANGUAGE LANG_HEBREW, SUBLANG_DEFAULT
-
-IDD_BROWSE_OPEN DIALOG 10, 10, 200, 70
-STYLE DS_MODALFRAME | WS_CAPTION
-EXSTYLE WS_EX_LAYOUTRTL
-CAPTION "פתיחת כתובת"
-FONT 8, "MS Shell Dlg"
-{
-    LTEXT "נא לציין את הכתובת אותה ברצונך לפתוח באמצעות Internet Explorer",-1,25, 5, 150,15
-    LTEXT "פתיחה:", -1, 2, 32, 20, 15
-    EDITTEXT IDC_BROWSE_OPEN_URL, 25, 30, 160, 13
-    DEFPUSHBUTTON "&אישור", IDOK, 25, 50, 50, 15
-    PUSHBUTTON "&ביטול", IDCANCEL, 85, 50, 50, 15
-}
-
-IDR_BROWSE_MAIN_MENU MENU
-{
-    POPUP "&קובץ"
-    {
-        POPUP "&חדש"
-        {
-            MENUITEM "&חלון",                 ID_BROWSE_NEW_WINDOW
-        }
-        MENUITEM "&פתיחה...",                    ID_BROWSE_OPEN
-        MENUITEM "&שמירה",                       ID_BROWSE_SAVE
-        MENUITEM "שמירה &בשם...",                 ID_BROWSE_SAVE_AS
-        MENUITEM SEPARATOR
-        MENUITEM "&תצורת ההדפסה...",            ID_BROWSE_PRINT_FORMAT
-        MENUITEM "ה&דפסה...",                   ID_BROWSE_PRINT
-        MENUITEM "תצוגה מ&קדימה להדפסה...",           ID_BROWSE_PRINT_PREVIEW
-        MENUITEM SEPARATOR
-        MENUITEM "מ&אפיינים...",              ID_BROWSE_PROPERTIES
-        MENUITEM "&סגירה",                      ID_BROWSE_QUIT
-    }
-    POPUP "&תצוגה"
-    {
-        POPUP "&סרגלי כלים"
-        {
-            MENUITEM "סרגל הכלים ה&רגיל",           ID_BROWSE_BAR_STD
-            MENUITEM "סרגל ה&כתובות",            ID_BROWSE_BAR_ADDR
-        }
-    }
-    POPUP "&מועדפים"
-    {
-        MENUITEM "הו&ספה למועדפים...",        ID_BROWSE_ADDFAV
-        MENUITEM SEPARATOR
-    }
-    POPUP "ע&זרה"
-    {
-        MENUITEM "על &אודות Internet Explorer...", ID_BROWSE_ABOUT
-    }
-}
-
-STRINGTABLE
-{
-    IDS_TB_BACK             "חזרה"
-    IDS_TB_FORWARD          "קדימה"
-    IDS_TB_STOP             "עצירה"
-    IDS_TB_REFRESH          "רענון"
-    IDS_TB_HOME             "דף הבית"
-    IDS_TB_PRINT            "הדפסה"
-}
-
-STRINGTABLE
-{
-    IDS_ADDRESS             "כתובת"
-}
diff --git a/reactos/dll/win32/shdocvw/It.rc b/reactos/dll/win32/shdocvw/It.rc
deleted file mode 100644 (file)
index c86c456..0000000
+++ /dev/null
@@ -1,90 +0,0 @@
-/*
- * Copyright 2010 Alexander N. Sørnes <alex@thehandofagony.com>
- * Copyright 2010 Luca Bennati <lucak3@gmail.com>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-#include "resource.h"
-
-/* UTF-8 */
-#pragma code_page(65001)
-
-LANGUAGE LANG_ITALIAN, SUBLANG_NEUTRAL
-
-IDD_BROWSE_OPEN DIALOG 10, 10, 200, 70
-STYLE DS_MODALFRAME | WS_CAPTION
-CAPTION "Apri URL"
-FONT 8, "MS Shell Dlg"
-{
-    LTEXT "Specifica l'URL che vuoi aprire in Internet Explorer",-1,25, 5, 150,15
-    LTEXT "Apri:", -1, 2, 32, 20, 15
-    EDITTEXT IDC_BROWSE_OPEN_URL, 25, 30, 160, 13
-    DEFPUSHBUTTON "&OK", IDOK, 25, 50, 50, 15
-    PUSHBUTTON "&Annulla", IDCANCEL, 85, 50, 50, 15
-}
-
-IDR_BROWSE_MAIN_MENU MENU
-{
-    POPUP "&File"
-    {
-        POPUP "&Nuova"
-        {
-            MENUITEM "Fin&estra",                 ID_BROWSE_NEW_WINDOW
-        }
-        MENUITEM "&Apri...",                    ID_BROWSE_OPEN
-        MENUITEM "&Salva",                       ID_BROWSE_SAVE
-        MENUITEM "Sa&lva come...",                 ID_BROWSE_SAVE_AS
-        MENUITEM SEPARATOR
-        MENUITEM "&Imposta pagina...",            ID_BROWSE_PRINT_FORMAT
-        MENUITEM "S&tampa...",                   ID_BROWSE_PRINT
-        MENUITEM "Antepri&ma di stampa...",           ID_BROWSE_PRINT_PREVIEW
-        MENUITEM SEPARATOR
-        MENUITEM "&Proprietà...",              ID_BROWSE_PROPERTIES
-        MENUITEM "&Chiudi",                      ID_BROWSE_QUIT
-    }
-    POPUP "&Visualizza"
-    {
-        POPUP "&Barre degli strumenti"
-        {
-            MENUITEM "Barra &predefinita",           ID_BROWSE_BAR_STD
-            MENUITEM "Barra dell'&indirizzo",            ID_BROWSE_BAR_ADDR
-        }
-    }
-    POPUP "&Preferiti"
-    {
-        MENUITEM "&Aggiungi ai Preferiti...",        ID_BROWSE_ADDFAV
-        MENUITEM SEPARATOR
-    }
-    POPUP "&Aiuto"
-    {
-        MENUITEM "&Informazioni su Internet Explorer...", ID_BROWSE_ABOUT
-    }
-}
-
-STRINGTABLE
-{
-    IDS_TB_BACK             "Indietro"
-    IDS_TB_FORWARD          "Avanti"
-    IDS_TB_STOP             "Ferma"
-    IDS_TB_REFRESH          "Aggiorna"
-    IDS_TB_HOME             "Inizio"
-    IDS_TB_PRINT            "Stampa"
-}
-
-STRINGTABLE
-{
-    IDS_ADDRESS             "Indirizzo"
-}
diff --git a/reactos/dll/win32/shdocvw/Ko.rc b/reactos/dll/win32/shdocvw/Ko.rc
deleted file mode 100644 (file)
index 7bcfdf3..0000000
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
- * Copyright 2010 Alexander N. Sørnes <alex@thehandofagony.com>
- * Copyright 2010 YunSOng Hwang
-  *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-#include "resource.h"
-
-#pragma code_page(65001)
-
-LANGUAGE LANG_KOREAN, SUBLANG_DEFAULT
-
-IDD_BROWSE_OPEN DIALOG 10, 10, 200, 70
-STYLE DS_MODALFRAME | WS_CAPTION
-CAPTION "URL 열기"
-FONT 8, "MS Shell Dlg"
-{
-    LTEXT "인터넷 익스플로어로 열 URL 지정",-1,25, 5, 150,15
-    LTEXT "열기:", -1, 2, 32, 20, 15
-    EDITTEXT IDC_BROWSE_OPEN_URL, 25, 30, 160, 13
-    DEFPUSHBUTTON "확인(&O)", IDOK, 25, 50, 50, 15
-    PUSHBUTTON "취소(&C)", IDCANCEL, 85, 50, 50, 15
-}
-
-IDR_BROWSE_MAIN_MENU MENU
-{
-    POPUP "파일(&F)"
-    {
-        POPUP "새 작업(&N)"
-        {
-            MENUITEM "창(&W)",                 ID_BROWSE_NEW_WINDOW
-        }
-        MENUITEM "열기(&O)...",                    ID_BROWSE_OPEN
-        MENUITEM "저장(&S)",                       ID_BROWSE_SAVE
-        MENUITEM "다른 이름으로 저장(&A)...",                 ID_BROWSE_SAVE_AS
-        MENUITEM SEPARATOR
-        MENUITEM "인쇄 형식(&F)...",            ID_BROWSE_PRINT_FORMAT
-        MENUITEM "인쇄(&I)...",                   ID_BROWSE_PRINT
-        MENUITEM "인쇄 미리보기(&W)...",           ID_BROWSE_PRINT_PREVIEW
-        MENUITEM SEPARATOR
-        MENUITEM "속성(&P)...",              ID_BROWSE_PROPERTIES
-    }
-    POPUP "보기(&V)"
-    {
-        POPUP "도구바(&T)"
-        {
-            MENUITEM "표준 바(&S)",           ID_BROWSE_BAR_STD
-            MENUITEM "주소 바(&A)",            ID_BROWSE_BAR_ADDR
-        }
-    }
-    POPUP "즐겨찾기(&F)"
-    {
-        MENUITEM "즐겨찾기 추가(&A)...",        ID_BROWSE_ADDFAV
-        MENUITEM SEPARATOR
-    }
-    POPUP "도움말(&H)"
-    {
-        MENUITEM "인터넷 익스플로어 정보(&A)...", ID_BROWSE_ABOUT
-    }
-}
-
-STRINGTABLE
-{
-    IDS_TB_BACK             "뒤로"
-    IDS_TB_FORWARD          "앞으로"
-    IDS_TB_STOP             "멈추기"
-    IDS_TB_REFRESH          "새로 고침"
-    IDS_TB_HOME             "홈"
-    IDS_TB_PRINT            "인쇄"
-}
-
-STRINGTABLE
-{
-    IDS_ADDRESS             "주소"
-}
diff --git a/reactos/dll/win32/shdocvw/Lt.rc b/reactos/dll/win32/shdocvw/Lt.rc
deleted file mode 100644 (file)
index 2674267..0000000
+++ /dev/null
@@ -1,89 +0,0 @@
-/*
- * Copyright 2010 Aurimas Fišeras <aurimas@gmail.com>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-#include "resource.h"
-
-/* UTF-8 */
-#pragma code_page(65001)
-
-LANGUAGE LANG_LITHUANIAN, SUBLANG_NEUTRAL
-
-IDD_BROWSE_OPEN DIALOG 10, 10, 200, 70
-STYLE DS_MODALFRAME | WS_CAPTION
-CAPTION "Atverti URL"
-FONT 8, "MS Shell Dlg"
-{
-    LTEXT "Nurodykite URL, kurį norite atverti su interneto naršykle",-1 ,30, 5, 150, 16
-    LTEXT "Atverti:", -1, 2, 32, 25, 15
-    EDITTEXT IDC_BROWSE_OPEN_URL, 30, 30, 160, 13
-    DEFPUSHBUTTON "&Gerai", IDOK, 30, 50, 50, 15
-    PUSHBUTTON "&Atsisakyti", IDCANCEL, 90, 50, 50, 15
-}
-
-IDR_BROWSE_MAIN_MENU MENU
-{
-    POPUP "&Failas"
-    {
-        POPUP "&Naujas"
-        {
-            MENUITEM "&Langas",                 ID_BROWSE_NEW_WINDOW
-        }
-        MENUITEM "&Atverti...",                 ID_BROWSE_OPEN
-        MENUITEM "&Išsaugoti",                  ID_BROWSE_SAVE
-        MENUITEM "Išsaugoti &kaip...",          ID_BROWSE_SAVE_AS
-        MENUITEM SEPARATOR
-        MENUITEM "Spaudinio &formatas...",      ID_BROWSE_PRINT_FORMAT
-        MENUITEM "S&pausdinti...",              ID_BROWSE_PRINT
-        MENUITEM "Spaudinio pe&ržiūra...",      ID_BROWSE_PRINT_PREVIEW
-        MENUITEM SEPARATOR
-        MENUITEM "&Savybės...",                 ID_BROWSE_PROPERTIES
-        MENUITEM "&Užverti",                    ID_BROWSE_QUIT
-    }
-    POPUP "&Rodymas"
-    {
-        POPUP "&Įrankių juosta"
-        {
-            MENUITEM "Į&prastinė juosta",       ID_BROWSE_BAR_STD
-            MENUITEM "&Adreso juosta",          ID_BROWSE_BAR_ADDR
-        }
-    }
-    POPUP "&Adresynas"
-    {
-        MENUITEM "Į&rašyti į adresyną...",      ID_BROWSE_ADDFAV
-        MENUITEM SEPARATOR
-    }
-    POPUP "&Žinynas"
-    {
-        MENUITEM "&Apie interneto naršyklę...", ID_BROWSE_ABOUT
-    }
-}
-
-STRINGTABLE
-{
-    IDS_TB_BACK             "Atgal"
-    IDS_TB_FORWARD          "Pirmyn"
-    IDS_TB_STOP             "Stabdyti"
-    IDS_TB_REFRESH          "Atnaujinti"
-    IDS_TB_HOME             "Pradžia"
-    IDS_TB_PRINT            "Spausdinti"
-}
-
-STRINGTABLE
-{
-    IDS_ADDRESS             "Adresas"
-}
diff --git a/reactos/dll/win32/shdocvw/Nl.rc b/reactos/dll/win32/shdocvw/Nl.rc
deleted file mode 100644 (file)
index f7e515d..0000000
+++ /dev/null
@@ -1,86 +0,0 @@
-/*
- * Copyright 2010 Sven Baars
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-#include "resource.h"
-
-LANGUAGE LANG_DUTCH, SUBLANG_NEUTRAL
-
-IDD_BROWSE_OPEN DIALOG 10, 10, 200, 70
-STYLE DS_MODALFRAME | WS_CAPTION
-CAPTION "Open URL"
-FONT 8, "MS Shell Dlg"
-{
-    LTEXT "Specificeer de URL die u wilt openen in Internet Explorer",-1,25, 5, 150,15
-    LTEXT "Open:", -1, 2, 32, 20, 15
-    EDITTEXT IDC_BROWSE_OPEN_URL, 25, 30, 160, 13
-    DEFPUSHBUTTON "&OK", IDOK, 25, 50, 50, 15
-    PUSHBUTTON "&Annuleren", IDCANCEL, 85, 50, 50, 15
-}
-
-IDR_BROWSE_MAIN_MENU MENU
-{
-    POPUP "&Bestand"
-    {
-        POPUP "&Nieuw"
-        {
-            MENUITEM "&Venster",                ID_BROWSE_NEW_WINDOW
-        }
-        MENUITEM "&Openen...",                  ID_BROWSE_OPEN
-        MENUITEM "Op&slaan",                    ID_BROWSE_SAVE
-        MENUITEM "Ops&laan als...",             ID_BROWSE_SAVE_AS
-        MENUITEM SEPARATOR
-        MENUITEM "Pa&gina-instellingen...",     ID_BROWSE_PRINT_FORMAT
-        MENUITEM "Af&drukken...",               ID_BROWSE_PRINT
-        MENUITEM "Afdruk&voorbeeld...",         ID_BROWSE_PRINT_PREVIEW
-        MENUITEM SEPARATOR
-        MENUITEM "&Eigenschappen...",           ID_BROWSE_PROPERTIES
-        MENUITEM "&Afsluiten",                  ID_BROWSE_QUIT
-    }
-    POPUP "Bee&ld"
-    {
-        POPUP "&Werkbalken"
-        {
-            MENUITEM "&Standaardbalk",          ID_BROWSE_BAR_STD
-            MENUITEM "&Adresbalk",              ID_BROWSE_BAR_ADDR
-        }
-    }
-    POPUP "&Favorieten"
-    {
-        MENUITEM "&Toevoegen aan Favorieten...", ID_BROWSE_ADDFAV
-        MENUITEM SEPARATOR
-    }
-    POPUP "&Help"
-    {
-        MENUITEM "&Over Internet Explorer...",  ID_BROWSE_ABOUT
-    }
-}
-
-STRINGTABLE
-{
-    IDS_TB_BACK             "Terug"
-    IDS_TB_FORWARD          "Vooruit"
-    IDS_TB_STOP             "Stoppen"
-    IDS_TB_REFRESH          "Vernieuwen"
-    IDS_TB_HOME             "Startpagina"
-    IDS_TB_PRINT            "Printen"
-}
-
-STRINGTABLE
-{
-    IDS_ADDRESS             "Adres"
-}
diff --git a/reactos/dll/win32/shdocvw/Pl.rc b/reactos/dll/win32/shdocvw/Pl.rc
deleted file mode 100644 (file)
index 5a6ada8..0000000
+++ /dev/null
@@ -1,87 +0,0 @@
-/*
- * Copyright 2010 £ukasz Wojni³owicz
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-#include "resource.h"
-
-
-LANGUAGE LANG_POLISH, SUBLANG_DEFAULT
-
-IDD_BROWSE_OPEN DIALOG 10, 10, 200, 70
-STYLE DS_MODALFRAME | WS_CAPTION
-CAPTION "Otwórz URL"
-FONT 8, "MS Shell Dlg"
-{
-    LTEXT "Podaj adres URL, który chcesz otworzyæ w Internet Explorerze",-1,25, 5, 150,15
-    LTEXT "Otwórz:", -1, 2, 32, 20, 15
-    EDITTEXT IDC_BROWSE_OPEN_URL, 25, 30, 160, 13
-    DEFPUSHBUTTON "&OK", IDOK, 25, 50, 50, 15
-    PUSHBUTTON "&Anuluj", IDCANCEL, 85, 50, 50, 15
-}
-
-IDR_BROWSE_MAIN_MENU MENU
-{
-    POPUP "&Plik"
-    {
-        POPUP "&Nowe"
-        {
-            MENUITEM "&Okno"                  ID_BROWSE_NEW_WINDOW
-        }
-        MENUITEM "&Otwórz...",                    ID_BROWSE_OPEN
-        MENUITEM "&Zapisz",                       ID_BROWSE_SAVE
-        MENUITEM "Zapisz &jako...",                 ID_BROWSE_SAVE_AS
-        MENUITEM SEPARATOR
-        MENUITEM "Forma&t wydruku...",            ID_BROWSE_PRINT_FORMAT
-        MENUITEM "&Drukuj...",                   ID_BROWSE_PRINT
-        MENUITEM "Podgl¹&d wydruku...",           ID_BROWSE_PRINT_PREVIEW
-        MENUITEM SEPARATOR
-        MENUITEM "&W³a\9cciwo\9cci...",              ID_BROWSE_PROPERTIES
-        MENUITEM "&Zamknij...",              ID_BROWSE_QUIT
-    }
-    POPUP "&Widok"
-    {
-        POPUP "&Paski narzêdzi"
-        {
-            MENUITEM "Pasek &standardowy"            ID_BROWSE_BAR_STD
-            MENUITEM "&Pasek adresu"             ID_BROWSE_BAR_ADDR
-        }
-    }
-    POPUP "&Ulubione"
-    {
-        MENUITEM "&Dodaj do ulubionych..."         ID_BROWSE_ADDFAV
-        MENUITEM SEPARATOR
-    }
-    POPUP "&Pomoc"
-    {
-        MENUITEM "&O Internet Explorer...", ID_BROWSE_ABOUT
-    }
-}
-
-STRINGTABLE
-{
-    IDS_TB_BACK             "Wstecz"
-    IDS_TB_FORWARD          "Dalej"
-    IDS_TB_STOP             "Zatrzymaj"
-    IDS_TB_REFRESH          "Od\9cwierz"
-    IDS_TB_HOME             "Strona g³ówna"
-    IDS_TB_PRINT            "Drukuj"
-}
-
-STRINGTABLE
-{
-    IDS_ADDRESS             "Adres"
-}
diff --git a/reactos/dll/win32/shdocvw/Pt.rc b/reactos/dll/win32/shdocvw/Pt.rc
deleted file mode 100644 (file)
index c65b890..0000000
+++ /dev/null
@@ -1,94 +0,0 @@
-/*
- * Copyright 2010 Gustavo Henrique Milaré
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-#include "resource.h"
-
-#pragma code_page(65001)
-
-LANGUAGE LANG_PORTUGUESE, SUBLANG_PORTUGUESE_BRAZILIAN
-
-IDD_BROWSE_OPEN DIALOG 10, 10, 200, 70
-STYLE DS_MODALFRAME | WS_CAPTION
-CAPTION "Abrir URL"
-FONT 8, "MS Shell Dlg"
-{
-    LTEXT "Especifique a URL que você deseja abrir no Internet Explorer",-1,25, 5, 150,15
-    LTEXT "Abrir:", -1, 2, 32, 20, 15
-    EDITTEXT IDC_BROWSE_OPEN_URL, 25, 30, 160, 13
-    DEFPUSHBUTTON "&OK", IDOK, 25, 50, 50, 15
-    PUSHBUTTON "&Cancelar", IDCANCEL, 85, 50, 50, 15
-}
-
-LANGUAGE LANG_PORTUGUESE, SUBLANG_PORTUGUESE_BRAZILIAN
-
-IDR_BROWSE_MAIN_MENU MENU
-{
-    POPUP "&Arquivo"
-    {
-        POPUP "&Novo"
-        {
-            MENUITEM "&Janela",                 ID_BROWSE_NEW_WINDOW
-        }
-        MENUITEM "&Abrir...",                    ID_BROWSE_OPEN
-        MENUITEM "&Salvar",                       ID_BROWSE_SAVE
-        MENUITEM "Salvar &como...",                 ID_BROWSE_SAVE_AS
-        MENUITEM SEPARATOR
-        MENUITEM "Imprimir &formato...",            ID_BROWSE_PRINT_FORMAT
-        MENUITEM "&Imprimir...",                   ID_BROWSE_PRINT
-        MENUITEM "&Vizualizar impressão...",           ID_BROWSE_PRINT_PREVIEW
-        MENUITEM SEPARATOR
-        MENUITEM "&Propriedades...",              ID_BROWSE_PROPERTIES
-        MENUITEM "&Fechar",                      ID_BROWSE_QUIT
-    }
-    POPUP "&Ver"
-    {
-        POPUP "&Ferramentas"
-        {
-            MENUITEM "Barra &padrão",           ID_BROWSE_BAR_STD
-            MENUITEM "Barra de &endereço",      ID_BROWSE_BAR_ADDR
-        }
-    }
-    POPUP "&Favoritos"
-    {
-        MENUITEM "&Adicionar aos Favoritos...", ID_BROWSE_ADDFAV
-        MENUITEM SEPARATOR
-    }
-    POPUP "A&juda"
-    {
-        MENUITEM "&Sobre o Internet Explorer...", ID_BROWSE_ABOUT
-    }
-}
-
-LANGUAGE LANG_PORTUGUESE, SUBLANG_PORTUGUESE_BRAZILIAN
-
-STRINGTABLE
-{
-    IDS_TB_BACK             "Voltar"
-    IDS_TB_FORWARD          "Avançar"
-    IDS_TB_STOP             "Parar"
-    IDS_TB_REFRESH          "Atualizar"
-    IDS_TB_HOME             "Início"
-    IDS_TB_PRINT            "Imprimir"
-}
-
-LANGUAGE LANG_PORTUGUESE, SUBLANG_PORTUGUESE_BRAZILIAN
-
-STRINGTABLE
-{
-    IDS_ADDRESS             "Endereço"
-}
diff --git a/reactos/dll/win32/shdocvw/Ro.rc b/reactos/dll/win32/shdocvw/Ro.rc
deleted file mode 100644 (file)
index d417552..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Copyright 2010 Alexander N. Sørnes <alex@thehandofagony.com>
- * Copyright 2010 Michael Stefaniuc
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-#include "resource.h"
-
-LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
-
-#pragma code_page(65001)
-
-IDD_BROWSE_OPEN DIALOG 10, 10, 210, 70
-STYLE DS_MODALFRAME | WS_CAPTION
-CAPTION "Deschide URL-ul"
-FONT 8, "MS Shell Dlg"
-{
-    LTEXT "Specificați URL-ul pe care doriți să îl deschideți în Internet Explorer",-1,35, 5, 160,15
-    LTEXT "Deschide:", -1, 2, 32, 30, 15
-    EDITTEXT IDC_BROWSE_OPEN_URL, 35, 30, 170, 13
-    DEFPUSHBUTTON "&OK", IDOK, 35, 50, 50, 15
-    PUSHBUTTON "&Renunță", IDCANCEL, 95, 50, 50, 15
-}
-
-IDR_BROWSE_MAIN_MENU MENU
-{
-    POPUP "&Fișier"
-    {
-        POPUP "&Nou"
-        {
-            MENUITEM "&Fereastră",                      ID_BROWSE_NEW_WINDOW
-        }
-        MENUITEM "&Deschidere...",                      ID_BROWSE_OPEN
-        MENUITEM "&Salvează",                           ID_BROWSE_SAVE
-        MENUITEM "S&alvare ca...",                      ID_BROWSE_SAVE_AS
-        MENUITEM SEPARATOR
-        MENUITEM "&Format tipărire...",                 ID_BROWSE_PRINT_FORMAT
-        MENUITEM "T&ipărire...",                        ID_BROWSE_PRINT
-        MENUITEM "Pre&vizualizare imprimare...",        ID_BROWSE_PRINT_PREVIEW
-        MENUITEM SEPARATOR
-        MENUITEM "&Proprietăți...",                     ID_BROWSE_PROPERTIES
-    }
-    POPUP "&Ajutor"
-    {
-        MENUITEM "&Despre Internet Explorer...",        ID_BROWSE_ABOUT
-    }
-}
diff --git a/reactos/dll/win32/shdocvw/Si.rc b/reactos/dll/win32/shdocvw/Si.rc
deleted file mode 100644 (file)
index 8a81a3e..0000000
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
- * Copyright 2010 Matej Spindler
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-#include "resource.h"
-
-#pragma code_page(65001)
-
-LANGUAGE LANG_SLOVENIAN, SUBLANG_DEFAULT
-
-IDD_BROWSE_OPEN DIALOG 10, 10, 200, 70
-STYLE DS_MODALFRAME | WS_CAPTION
-CAPTION "Open URL"
-FONT 8, "MS Shell Dlg"
-{
-    LTEXT "Vnesite interneti naslov dokumenta, ki ga bo Internet Explorer odpru.",-1,25, 5, 150,15
-    LTEXT "Odpri:", -1, 2, 32, 20, 15
-    EDITTEXT IDC_BROWSE_OPEN_URL, 25, 30, 160, 13
-    DEFPUSHBUTTON "&V redu", IDOK, 25, 50, 50, 15
-    PUSHBUTTON "&Prekliči", IDCANCEL, 85, 50, 50, 15
-}
-
-IDR_BROWSE_MAIN_MENU MENU
-{
-    POPUP "&Datoteka"
-    {
-        POPUP "&Nov"
-        {
-            MENUITEM "&Okno",                       ID_BROWSE_NEW_WINDOW
-        }
-        MENUITEM "&Odpri ...",                      ID_BROWSE_OPEN
-        MENUITEM "&Shrani",                         ID_BROWSE_SAVE
-        MENUITEM "Shrani &kot ...",                 ID_BROWSE_SAVE_AS
-        MENUITEM SEPARATOR
-        MENUITEM "Nastavitve tiskanja ...",         ID_BROWSE_PRINT_FORMAT
-        MENUITEM "Na&tisni ...",                    ID_BROWSE_PRINT
-        MENUITEM "Predo&gled tiskanja ...",         ID_BROWSE_PRINT_PREVIEW
-        MENUITEM SEPARATOR
-        MENUITEM "&Lastnosti ...",                  ID_BROWSE_PROPERTIES
-        MENUITEM "&Zapri",                          ID_BROWSE_QUIT
-    }
-    POPUP "Pogl&ed"
-    {
-        POPUP "Oro&dne vrstice"
-        {
-            MENUITEM "&Statusna vrstica",           ID_BROWSE_BAR_STD
-            MENUITEM "&Naslovna vrstica",           ID_BROWSE_BAR_ADDR
-        }
-    }
-    POPUP "&Priljubljene"
-    {
-        MENUITEM "&Dodaj med priljubljene ...",     ID_BROWSE_ADDFAV
-        MENUITEM SEPARATOR
-    }
-    POPUP "&Pomoč"
-    {
-        MENUITEM "O programu Internet Explorer ...", ID_BROWSE_ABOUT
-    }
-}
-
-STRINGTABLE
-{
-    IDS_TB_BACK             "Nazaj"
-    IDS_TB_FORWARD          "Naprej"
-    IDS_TB_STOP             "Stop"
-    IDS_TB_REFRESH          "Osveži"
-    IDS_TB_HOME             "Domov"
-    IDS_TB_PRINT            "Natisni"
-}
-
-STRINGTABLE
-{
-    IDS_ADDRESS             "Naslov"
-}
diff --git a/reactos/dll/win32/shdocvw/Sr.rc b/reactos/dll/win32/shdocvw/Sr.rc
deleted file mode 100644 (file)
index cf32fb0..0000000
+++ /dev/null
@@ -1,156 +0,0 @@
-/*
- * Copyright 2010 Alexander N. Sørnes <alex@thehandofagony.com>
- * Copyright 2010 Đorđe Vasiljević
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-#include "resource.h"
-
-#pragma code_page(65001)
-
-LANGUAGE LANG_SERBIAN, SUBLANG_SERBIAN_CYRILLIC
-
-IDD_BROWSE_OPEN DIALOG 10, 10, 200, 70
-STYLE DS_MODALFRAME | WS_CAPTION
-CAPTION "Отварање адресе"
-FONT 8, "MS Shell Dlg"
-{
-    LTEXT "Унесите адресу коју желите да отворите у Internet Explorer-у",-1,25, 5, 150,15
-    LTEXT "Отвори:", -1, 2, 32, 20, 15
-    EDITTEXT IDC_BROWSE_OPEN_URL, 25, 30, 160, 13
-    DEFPUSHBUTTON "&У реду", IDOK, 25, 50, 50, 15
-    PUSHBUTTON "&Откажи", IDCANCEL, 85, 50, 50, 15
-}
-
-IDR_BROWSE_MAIN_MENU MENU
-{
-    POPUP "&Датотека"
-    {
-        POPUP "&Ново"
-        {
-            MENUITEM "&Прозор",                 ID_BROWSE_NEW_WINDOW
-        }
-        MENUITEM "&Отвори...",                    ID_BROWSE_OPEN
-        MENUITEM "&Сачувај",                       ID_BROWSE_SAVE
-        MENUITEM "Сачувај &као...",                 ID_BROWSE_SAVE_AS
-        MENUITEM SEPARATOR
-        MENUITEM "Формат &штампе...",            ID_BROWSE_PRINT_FORMAT
-        MENUITEM "&Штампај...",                   ID_BROWSE_PRINT
-        MENUITEM "&Преглед штампе...",           ID_BROWSE_PRINT_PREVIEW
-        MENUITEM SEPARATOR
-        MENUITEM "&Својства...",              ID_BROWSE_PROPERTIES
-        MENUITEM "&Затвори",                      ID_BROWSE_QUIT
-    }
-    POPUP "&Приказ"
-    {
-        POPUP "&Алатнице"
-        {
-            MENUITEM "&Стандардна трака",           ID_BROWSE_BAR_STD
-            MENUITEM "&Трака за навигацију",            ID_BROWSE_BAR_ADDR
-        }
-    }
-    POPUP "&Омиљено"
-    {
-        MENUITEM "&Додај у омиљене...",        ID_BROWSE_ADDFAV
-        MENUITEM SEPARATOR
-    }
-    POPUP "&Помоћ"
-    {
-        MENUITEM "&О Internet Explorer-у...", ID_BROWSE_ABOUT
-    }
-}
-
-STRINGTABLE
-{
-    IDS_TB_BACK             "Назад"
-    IDS_TB_FORWARD          "Напред"
-    IDS_TB_STOP             "Заустави"
-    IDS_TB_REFRESH          "Освежи"
-    IDS_TB_HOME             "Почетна"
-    IDS_TB_PRINT            "Штампај"
-}
-
-STRINGTABLE
-{
-    IDS_ADDRESS             "Адреса"
-}
-
-LANGUAGE LANG_SERBIAN, SUBLANG_SERBIAN_LATIN
-
-IDD_BROWSE_OPEN DIALOG 10, 10, 200, 70
-STYLE DS_MODALFRAME | WS_CAPTION
-CAPTION "Otvaranje adrese"
-FONT 8, "MS Shell Dlg"
-{
-    LTEXT "Unesite adresu koju želite da otvorite u Internet Explorer-u",-1,25, 5, 150,15
-    LTEXT "Otvori:", -1, 2, 32, 20, 15
-    EDITTEXT IDC_BROWSE_OPEN_URL, 25, 30, 160, 13
-    DEFPUSHBUTTON "&U redu", IDOK, 25, 50, 50, 15
-    PUSHBUTTON "&Otkaži", IDCANCEL, 85, 50, 50, 15
-}
-
-IDR_BROWSE_MAIN_MENU MENU
-{
-    POPUP "&Datoteka"
-    {
-        POPUP "&Novo"
-        {
-            MENUITEM "&Prozor",                 ID_BROWSE_NEW_WINDOW
-        }
-        MENUITEM "&Otvori...",                    ID_BROWSE_OPEN
-        MENUITEM "&Sačuvaj",                       ID_BROWSE_SAVE
-        MENUITEM "Sačuvaj &kao...",                 ID_BROWSE_SAVE_AS
-        MENUITEM SEPARATOR
-        MENUITEM "Format &štampe...",            ID_BROWSE_PRINT_FORMAT
-        MENUITEM "&Štampaj...",                   ID_BROWSE_PRINT
-        MENUITEM "&Pregled štampe...",           ID_BROWSE_PRINT_PREVIEW
-        MENUITEM SEPARATOR
-        MENUITEM "&Svojstva...",              ID_BROWSE_PROPERTIES
-        MENUITEM "&Zatvori",                      ID_BROWSE_QUIT
-    }
-    POPUP "&Prikaz"
-    {
-        POPUP "&Alatnice"
-        {
-            MENUITEM "&Standardna traka",           ID_BROWSE_BAR_STD
-            MENUITEM "&Traka za navigaciju",            ID_BROWSE_BAR_ADDR
-        }
-    }
-    POPUP "&Omiljeno"
-    {
-        MENUITEM "&Dodaj u omiljene...",        ID_BROWSE_ADDFAV
-        MENUITEM SEPARATOR
-    }
-    POPUP "&Pomoć"
-    {
-        MENUITEM "&O Internet Explorer-u...", ID_BROWSE_ABOUT
-    }
-}
-
-STRINGTABLE
-{
-    IDS_TB_BACK             "Nazad"
-    IDS_TB_FORWARD          "Napred"
-    IDS_TB_STOP             "Zaustavi"
-    IDS_TB_REFRESH          "Osveži"
-    IDS_TB_HOME             "Početna"
-    IDS_TB_PRINT            "Štampaj"
-}
-
-STRINGTABLE
-{
-    IDS_ADDRESS             "Adresa"
-}
diff --git a/reactos/dll/win32/shdocvw/Sv.rc b/reactos/dll/win32/shdocvw/Sv.rc
deleted file mode 100644 (file)
index d79e2c4..0000000
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
- * Copyright 2010 Anders Jonsson
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-#include "resource.h"
-
-#pragma code_page(65001)
-
-LANGUAGE LANG_SWEDISH, SUBLANG_NEUTRAL
-
-IDD_BROWSE_OPEN DIALOG 10, 10, 200, 70
-STYLE DS_MODALFRAME | WS_CAPTION
-CAPTION "Öppna webbadress"
-FONT 8, "MS Shell Dlg"
-{
-    LTEXT "Ange webbadressen du vill öppna med Internet Explorer",-1,25, 5, 150,15
-    LTEXT "Öppna:", -1, 2, 32, 20, 15
-    EDITTEXT IDC_BROWSE_OPEN_URL, 25, 30, 160, 13
-    DEFPUSHBUTTON "&OK", IDOK, 25, 50, 50, 15
-    PUSHBUTTON "&Avbryt", IDCANCEL, 85, 50, 50, 15
-}
-
-IDR_BROWSE_MAIN_MENU MENU
-{
-    POPUP "&Arkiv"
-    {
-        POPUP "&Nytt"
-        {
-            MENUITEM "&Fönster",                 ID_BROWSE_NEW_WINDOW
-        }
-        MENUITEM "&Öppna...",                    ID_BROWSE_OPEN
-        MENUITEM "&Spara",                       ID_BROWSE_SAVE
-        MENUITEM "S&para som...",                 ID_BROWSE_SAVE_AS
-        MENUITEM SEPARATOR
-        MENUITEM "U&tskriftsformat...",            ID_BROWSE_PRINT_FORMAT
-        MENUITEM "Skriv &ut...",                   ID_BROWSE_PRINT
-        MENUITEM "&Förhandsgranska...",           ID_BROWSE_PRINT_PREVIEW
-        MENUITEM SEPARATOR
-        MENUITEM "&Egenskaper...",              ID_BROWSE_PROPERTIES
-        MENUITEM "Stä&ng",                      ID_BROWSE_QUIT
-    }
-    POPUP "&Visa"
-    {
-        POPUP "Verktygs&fält"
-        {
-            MENUITEM "&Standardfält",           ID_BROWSE_BAR_STD
-            MENUITEM "&Adressfält",            ID_BROWSE_BAR_ADDR
-        }
-    }
-    POPUP "&Favoriter"
-    {
-        MENUITEM "&Lägg till favoriter...",        ID_BROWSE_ADDFAV
-        MENUITEM SEPARATOR
-    }
-    POPUP "&Hjälp"
-    {
-        MENUITEM "&Om Internet Explorer...", ID_BROWSE_ABOUT
-    }
-}
-
-STRINGTABLE
-{
-    IDS_TB_BACK             "Bakåt"
-    IDS_TB_FORWARD          "Framåt"
-    IDS_TB_STOP             "Stopp"
-    IDS_TB_REFRESH          "Uppdatera"
-    IDS_TB_HOME             "Hem"
-    IDS_TB_PRINT            "Skriv ut"
-}
-
-STRINGTABLE
-{
-    IDS_ADDRESS             "Adress"
-}
diff --git a/reactos/dll/win32/shdocvw/Tr.rc b/reactos/dll/win32/shdocvw/Tr.rc
deleted file mode 100644 (file)
index 6f9f19a..0000000
+++ /dev/null
@@ -1,91 +0,0 @@
-/*
- * Copyright 2010 Alexander N. Sørnes <alex@thehandofagony.com>
- *
- * Çeviri 2012 Arda Tanrıkulu <ardatanrikulu@gmail.com>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-#include "resource.h"
-
-/* UTF-8 */
-#pragma code_page(65001)
-
-LANGUAGE LANG_TURKISH, SUBLANG_DEFAULT
-
-IDD_BROWSE_OPEN DIALOG 10, 10, 200, 70
-STYLE DS_MODALFRAME | WS_CAPTION
-CAPTION "Aç"
-FONT 8, "MS Shell Dlg"
-{
-    LTEXT "Bir belgenin veya klasörün Internet adresini yazın. Internet Explorer sizin için açacaktır.",-1,25, 5, 150,15
-    LTEXT "Aç:", -1, 2, 32, 20, 15
-    EDITTEXT IDC_BROWSE_OPEN_URL, 25, 30, 160, 13
-    DEFPUSHBUTTON "Tamam", IDOK, 25, 50, 50, 15
-    PUSHBUTTON "İptal", IDCANCEL, 85, 50, 50, 15
-}
-
-IDR_BROWSE_MAIN_MENU MENU
-{
-    POPUP "&Dosya"
-    {
-        POPUP "Y&eni"
-        {
-            MENUITEM "Pen&cere",                 ID_BROWSE_NEW_WINDOW
-        }
-        MENUITEM "&Aç...",                    ID_BROWSE_OPEN
-        MENUITEM "&Kaydet",                       ID_BROWSE_SAVE
-        MENUITEM "&Farklı Kaydet....",                 ID_BROWSE_SAVE_AS
-        MENUITEM SEPARATOR
-        MENUITEM "&Sayfa Yapısı...",            ID_BROWSE_PRINT_FORMAT
-        MENUITEM "Pr&int...",                   ID_BROWSE_PRINT
-        MENUITEM "Baskı Ö&nizleme...",           ID_BROWSE_PRINT_PREVIEW
-        MENUITEM SEPARATOR
-        MENUITEM "Ö&zellikler",              ID_BROWSE_PROPERTIES
-        MENUITEM "&Kapat",                      ID_BROWSE_QUIT
-    }
-    POPUP "&Görünüm"
-    {
-        POPUP "&Araç Çubukları"
-        {
-            MENUITEM "Standart Ç&ubuk",           ID_BROWSE_BAR_STD
-            MENUITEM "&Adres Çubuğu",            ID_BROWSE_BAR_ADDR
-        }
-    }
-    POPUP "&Sık Kullanılanlar"
-    {
-        MENUITEM "Sık Kullanılanlara &Ekle",        ID_BROWSE_ADDFAV
-        MENUITEM SEPARATOR
-    }
-    POPUP "&Yardım"
-    {
-        MENUITEM "Internet Explorer &Hakkında", ID_BROWSE_ABOUT
-    }
-}
-
-STRINGTABLE
-{
-    IDS_TB_BACK             "Geri"
-    IDS_TB_FORWARD          "İleri"
-    IDS_TB_STOP             "Dur"
-    IDS_TB_REFRESH          "Yenile"
-    IDS_TB_HOME             "Giriş"
-    IDS_TB_PRINT            "Yazdır"
-}
-
-STRINGTABLE
-{
-    IDS_ADDRESS             "Adres"
-}
diff --git a/reactos/dll/win32/shdocvw/Uk.rc b/reactos/dll/win32/shdocvw/Uk.rc
deleted file mode 100644 (file)
index 13178c1..0000000
+++ /dev/null
@@ -1,90 +0,0 @@
-/*
- * Copyright 2010 Alexander N. Sørnes <alex@thehandofagony.com>
- * Copyright 2010 Igor Paliychuk
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-#include "resource.h"
-
-/* UTF-8 */
-#pragma code_page(65001)
-
-LANGUAGE LANG_UKRAINIAN, SUBLANG_DEFAULT
-
-IDD_BROWSE_OPEN DIALOG 10, 10, 200, 70
-STYLE DS_MODALFRAME | WS_CAPTION
-CAPTION "Відкрити URL"
-FONT 8, "MS Shell Dlg"
-{
-    LTEXT "Вкажіть URL, що ви хочете відкрити в Internet Explorer",-1,25, 5, 150,15
-    LTEXT "Відкрити:", -1, 2, 32, 30, 15
-    EDITTEXT IDC_BROWSE_OPEN_URL, 35, 30, 160, 13
-    DEFPUSHBUTTON "&OK", IDOK, 45, 50, 50, 15
-    PUSHBUTTON "&Скасувати", IDCANCEL, 105, 50, 50, 15
-}
-
-IDR_BROWSE_MAIN_MENU MENU
-{
-    POPUP "&Файл"
-    {
-        POPUP "&Створити"
-        {
-            MENUITEM "&Вікно",                  ID_BROWSE_NEW_WINDOW
-        }
-        MENUITEM "&Відкрити...",                ID_BROWSE_OPEN
-        MENUITEM "&Зберегти",                   ID_BROWSE_SAVE
-        MENUITEM "Зберегти &як...",             ID_BROWSE_SAVE_AS
-        MENUITEM SEPARATOR
-        MENUITEM "&Формат друку...",            ID_BROWSE_PRINT_FORMAT
-        MENUITEM "&Друк...",                    ID_BROWSE_PRINT
-        MENUITEM "Попередній пе&регляд...",  ID_BROWSE_PRINT_PREVIEW
-        MENUITEM SEPARATOR
-        MENUITEM "В&ластивості...",             ID_BROWSE_PROPERTIES
-        MENUITEM "За&крити",                    ID_BROWSE_QUIT
-    }
-    POPUP "&Вигляд"
-    {
-        POPUP "&Панелі інструментів"
-        {
-            MENUITEM "&Стандартна панель",      ID_BROWSE_BAR_STD
-            MENUITEM "Рядок &адреси",           ID_BROWSE_BAR_ADDR
-        }
-    }
-    POPUP "&Обране"
-    {
-        MENUITEM "&Додати до Обраного...",      ID_BROWSE_ADDFAV
-        MENUITEM SEPARATOR
-    }
-    POPUP "&Довідка"
-    {
-        MENUITEM "&Про Internet Explorer...", ID_BROWSE_ABOUT
-    }
-}
-
-STRINGTABLE
-{
-    IDS_TB_BACK             "Назад"
-    IDS_TB_FORWARD          "Вперед"
-    IDS_TB_STOP             "Зупинити"
-    IDS_TB_REFRESH          "Оновити"
-    IDS_TB_HOME             "Додому"
-    IDS_TB_PRINT            "Друк"
-}
-
-STRINGTABLE
-{
-    IDS_ADDRESS             "Адреса"
-}
diff --git a/reactos/dll/win32/shdocvw/classinfo.c b/reactos/dll/win32/shdocvw/classinfo.c
deleted file mode 100644 (file)
index 5f4faf4..0000000
+++ /dev/null
@@ -1,98 +0,0 @@
-/*
- * Implementation of IProvideClassInfo interfaces for WebBrowser control
- *
- * Copyright 2001 John R. Sheets (for CodeWeavers)
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-//#include <stdarg.h>
-//#include <string.h>
-
-//#include "windef.h"
-//#include "winbase.h"
-#include "shdocvw.h"
-#include <wine/debug.h>
-
-WINE_DEFAULT_DEBUG_CHANNEL(shdocvw);
-
-/**********************************************************************
- * Implement the IProvideClassInfo2 interface
- */
-
-#define CLASSINFO_THIS(iface) DEFINE_THIS(WebBrowser, ProvideClassInfo, iface)
-
-static HRESULT WINAPI ProvideClassInfo_QueryInterface(IProvideClassInfo2 *iface,
-        REFIID riid, LPVOID *ppobj)
-{
-    WebBrowser *This = CLASSINFO_THIS(iface);
-    return IWebBrowser_QueryInterface(WEBBROWSER(This), riid, ppobj);
-}
-
-static ULONG WINAPI ProvideClassInfo_AddRef(IProvideClassInfo2 *iface)
-{
-    WebBrowser *This = CLASSINFO_THIS(iface);
-    return IWebBrowser_AddRef(WEBBROWSER(This));
-}
-
-static ULONG WINAPI ProvideClassInfo_Release(IProvideClassInfo2 *iface)
-{
-    WebBrowser *This = CLASSINFO_THIS(iface);
-    return IWebBrowser_Release(WEBBROWSER(This));
-}
-
-static HRESULT WINAPI ProvideClassInfo_GetClassInfo(IProvideClassInfo2 *iface, LPTYPEINFO *ppTI)
-{
-    WebBrowser *This = CLASSINFO_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, ppTI);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI ProvideClassInfo_GetGUID(IProvideClassInfo2 *iface,
-        DWORD dwGuidKind, GUID *pGUID)
-{
-    WebBrowser *This = CLASSINFO_THIS(iface);
-
-    TRACE("(%p)->(%d %p)\n", This, dwGuidKind, pGUID);
-
-    if(!pGUID)
-        return E_POINTER;
-
-    if (dwGuidKind != GUIDKIND_DEFAULT_SOURCE_DISP_IID) {
-        WARN("Wrong GUID type: %d\n", dwGuidKind);
-        *pGUID = IID_NULL;
-        return E_FAIL;
-    }
-
-    memcpy(pGUID, This->version == 1 ? &DIID_DWebBrowserEvents : &DIID_DWebBrowserEvents2,
-           sizeof(GUID));
-    return S_OK;
-}
-
-#undef CLASSINFO_THIS
-
-static const IProvideClassInfo2Vtbl ProvideClassInfoVtbl =
-{
-    ProvideClassInfo_QueryInterface,
-    ProvideClassInfo_AddRef,
-    ProvideClassInfo_Release,
-    ProvideClassInfo_GetClassInfo,
-    ProvideClassInfo_GetGUID
-};
-
-void WebBrowser_ClassInfo_Init(WebBrowser *This)
-{
-    This->lpProvideClassInfoVtbl = &ProvideClassInfoVtbl;
-}
diff --git a/reactos/dll/win32/shdocvw/client.c b/reactos/dll/win32/shdocvw/client.c
deleted file mode 100644 (file)
index edafbc8..0000000
+++ /dev/null
@@ -1,532 +0,0 @@
-/*
- * Copyright 2005 Jacek Caban for CodeWeavers
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-#include <stdio.h>
-
-#include <wine/debug.h>
-#include "shdocvw.h"
-#include <mshtmdid.h>
-#include <idispids.h>
-
-WINE_DEFAULT_DEBUG_CHANNEL(shdocvw);
-
-#define CLIENTSITE_THIS(iface) DEFINE_THIS(DocHost, OleClientSite, iface)
-
-static HRESULT WINAPI ClientSite_QueryInterface(IOleClientSite *iface, REFIID riid, void **ppv)
-{
-    DocHost *This = CLIENTSITE_THIS(iface);
-
-    *ppv = NULL;
-
-    if(IsEqualGUID(&IID_IUnknown, riid)) {
-        TRACE("(%p)->(IID_IUnknown %p)\n", This, ppv);
-        *ppv = CLIENTSITE(This);
-    }else if(IsEqualGUID(&IID_IOleClientSite, riid)) {
-        TRACE("(%p)->(IID_IOleClientSite %p)\n", This, ppv);
-        *ppv = CLIENTSITE(This);
-    }else if(IsEqualGUID(&IID_IOleWindow, riid)) {
-        TRACE("(%p)->(IID_IOleWindow %p)\n", This, ppv);
-        *ppv = INPLACESITE(This);
-    }else if(IsEqualGUID(&IID_IOleInPlaceSite, riid)) {
-        TRACE("(%p)->(IID_IOleInPlaceSite %p)\n", This, ppv);
-        *ppv = INPLACESITE(This);
-    }else if(IsEqualGUID(&IID_IDocHostUIHandler, riid)) {
-        TRACE("(%p)->(IID_IDocHostUIHandler %p)\n", This, ppv);
-        *ppv = DOCHOSTUI(This);
-    }else if(IsEqualGUID(&IID_IDocHostUIHandler2, riid)) {
-        TRACE("(%p)->(IID_IDocHostUIHandler2 %p)\n", This, ppv);
-        *ppv = DOCHOSTUI2(This);
-    }else if(IsEqualGUID(&IID_IOleDocumentSite, riid)) {
-        TRACE("(%p)->(IID_IOleDocumentSite %p)\n", This, ppv);
-        *ppv = DOCSITE(This);
-    }else if(IsEqualGUID(&IID_IOleCommandTarget, riid)) {
-        TRACE("(%p)->(IID_IOleCommandTarget %p)\n", This, ppv);
-        *ppv = OLECMD(This);
-    }else if(IsEqualGUID(&IID_IDispatch, riid)) {
-        TRACE("(%p)->(IID_IDispatch %p)\n", This, ppv);
-        *ppv = CLDISP(This);
-    }else if(IsEqualGUID(&IID_IPropertyNotifySink, riid)) {
-        TRACE("(%p)->(IID_IPropertyNotifySink %p)\n", This, ppv);
-        *ppv = PROPNOTIF(This);
-    }else if(IsEqualGUID(&IID_IServiceProvider, riid)) {
-        TRACE("(%p)->(IID_IServiceProvider %p)\n", This, ppv);
-        *ppv = SERVPROV(This);
-    }
-
-    if(*ppv) {
-        IOleClientSite_AddRef(CLIENTSITE(This));
-        return S_OK;
-    }
-
-    WARN("Unsupported interface %s\n", debugstr_guid(riid));
-
-    return E_NOINTERFACE;
-}
-
-static ULONG WINAPI ClientSite_AddRef(IOleClientSite *iface)
-{
-    DocHost *This = CLIENTSITE_THIS(iface);
-    return IDispatch_AddRef(This->disp);
-}
-
-static ULONG WINAPI ClientSite_Release(IOleClientSite *iface)
-{
-    DocHost *This = CLIENTSITE_THIS(iface);
-    return IDispatch_Release(This->disp);
-}
-
-static HRESULT WINAPI ClientSite_SaveObject(IOleClientSite *iface)
-{
-    DocHost *This = CLIENTSITE_THIS(iface);
-    FIXME("(%p)\n", This);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI ClientSite_GetMoniker(IOleClientSite *iface, DWORD dwAssign,
-                                            DWORD dwWhichMoniker, IMoniker **ppmk)
-{
-    DocHost *This = CLIENTSITE_THIS(iface);
-    FIXME("(%p)->(%d %d %p)\n", This, dwAssign, dwWhichMoniker, ppmk);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI ClientSite_GetContainer(IOleClientSite *iface, IOleContainer **ppContainer)
-{
-    DocHost *This = CLIENTSITE_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, ppContainer);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI ClientSite_ShowObject(IOleClientSite *iface)
-{
-    DocHost *This = CLIENTSITE_THIS(iface);
-    FIXME("(%p)\n", This);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI ClientSite_OnShowWindow(IOleClientSite *iface, BOOL fShow)
-{
-    DocHost *This = CLIENTSITE_THIS(iface);
-    FIXME("(%p)->(%x)\n", This, fShow);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI ClientSite_RequestNewObjectLayout(IOleClientSite *iface)
-{
-    DocHost *This = CLIENTSITE_THIS(iface);
-    FIXME("(%p)\n", This);
-    return E_NOTIMPL;
-}
-
-#undef CLIENTSITE_THIS
-
-static const IOleClientSiteVtbl OleClientSiteVtbl = {
-    ClientSite_QueryInterface,
-    ClientSite_AddRef,
-    ClientSite_Release,
-    ClientSite_SaveObject,
-    ClientSite_GetMoniker,
-    ClientSite_GetContainer,
-    ClientSite_ShowObject,
-    ClientSite_OnShowWindow,
-    ClientSite_RequestNewObjectLayout
-};
-
-#define INPLACESITE_THIS(iface) DEFINE_THIS(DocHost, OleInPlaceSite, iface)
-
-static HRESULT WINAPI InPlaceSite_QueryInterface(IOleInPlaceSite *iface, REFIID riid, void **ppv)
-{
-    DocHost *This = INPLACESITE_THIS(iface);
-    return IOleClientSite_QueryInterface(CLIENTSITE(This), riid, ppv);
-}
-
-static ULONG WINAPI InPlaceSite_AddRef(IOleInPlaceSite *iface)
-{
-    DocHost *This = INPLACESITE_THIS(iface);
-    return IOleClientSite_AddRef(CLIENTSITE(This));
-}
-
-static ULONG WINAPI InPlaceSite_Release(IOleInPlaceSite *iface)
-{
-    DocHost *This = INPLACESITE_THIS(iface);
-    return IOleClientSite_Release(CLIENTSITE(This));
-}
-
-static HRESULT WINAPI InPlaceSite_GetWindow(IOleInPlaceSite *iface, HWND *phwnd)
-{
-    DocHost *This = INPLACESITE_THIS(iface);
-
-    TRACE("(%p)->(%p)\n", This, phwnd);
-
-    *phwnd = This->hwnd;
-    return S_OK;
-}
-
-static HRESULT WINAPI InPlaceSite_ContextSensitiveHelp(IOleInPlaceSite *iface, BOOL fEnterMode)
-{
-    DocHost *This = INPLACESITE_THIS(iface);
-    FIXME("(%p)->(%x)\n", This, fEnterMode);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InPlaceSite_CanInPlaceActivate(IOleInPlaceSite *iface)
-{
-    DocHost *This = INPLACESITE_THIS(iface);
-
-    TRACE("(%p)\n", This);
-
-    /* Nothing to do here */
-    return S_OK;
-}
-
-static HRESULT WINAPI InPlaceSite_OnInPlaceActivate(IOleInPlaceSite *iface)
-{
-    DocHost *This = INPLACESITE_THIS(iface);
-
-    TRACE("(%p)\n", This);
-
-    /* Nothing to do here */
-    return S_OK;
-}
-
-static HRESULT WINAPI InPlaceSite_OnUIActivate(IOleInPlaceSite *iface)
-{
-    DocHost *This = INPLACESITE_THIS(iface);
-    FIXME("(%p)\n", This);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InPlaceSite_GetWindowContext(IOleInPlaceSite *iface,
-        IOleInPlaceFrame **ppFrame, IOleInPlaceUIWindow **ppDoc, LPRECT lprcPosRect,
-        LPRECT lprcClipRect, LPOLEINPLACEFRAMEINFO lpFrameInfo)
-{
-    DocHost *This = INPLACESITE_THIS(iface);
-
-    TRACE("(%p)->(%p %p %p %p %p)\n", This, ppFrame, ppDoc, lprcPosRect,
-          lprcClipRect, lpFrameInfo);
-
-    IOleInPlaceFrame_AddRef(INPLACEFRAME(This));
-    *ppFrame = INPLACEFRAME(This);
-    *ppDoc = NULL;
-
-    GetClientRect(This->hwnd, lprcPosRect);
-    *lprcClipRect = *lprcPosRect;
-
-    lpFrameInfo->fMDIApp = FALSE;
-    lpFrameInfo->hwndFrame = This->frame_hwnd;
-    lpFrameInfo->haccel = NULL;
-    lpFrameInfo->cAccelEntries = 0; /* FIXME: should be 5 */
-
-    return S_OK;
-}
-
-static HRESULT WINAPI InPlaceSite_Scroll(IOleInPlaceSite *iface, SIZE scrollExtent)
-{
-    DocHost *This = INPLACESITE_THIS(iface);
-    FIXME("(%p)->({%d %d})\n", This, scrollExtent.cx, scrollExtent.cy);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InPlaceSite_OnUIDeactivate(IOleInPlaceSite *iface, BOOL fUndoable)
-{
-    DocHost *This = INPLACESITE_THIS(iface);
-    FIXME("(%p)->(%x)\n", This, fUndoable);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InPlaceSite_OnInPlaceDeactivate(IOleInPlaceSite *iface)
-{
-    DocHost *This = INPLACESITE_THIS(iface);
-
-    TRACE("(%p)\n", This);
-
-    /* Nothing to do here */
-    return S_OK;
-}
-
-static HRESULT WINAPI InPlaceSite_DiscardUndoState(IOleInPlaceSite *iface)
-{
-    DocHost *This = INPLACESITE_THIS(iface);
-    FIXME("(%p)\n", This);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InPlaceSite_DeactivateAndUndo(IOleInPlaceSite *iface)
-{
-    DocHost *This = INPLACESITE_THIS(iface);
-    FIXME("(%p)\n", This);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InPlaceSite_OnPosRectChange(IOleInPlaceSite *iface,
-                                                  LPCRECT lprcPosRect)
-{
-    DocHost *This = INPLACESITE_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, lprcPosRect);
-    return E_NOTIMPL;
-}
-
-#undef INPLACESITE_THIS
-
-static const IOleInPlaceSiteVtbl OleInPlaceSiteVtbl = {
-    InPlaceSite_QueryInterface,
-    InPlaceSite_AddRef,
-    InPlaceSite_Release,
-    InPlaceSite_GetWindow,
-    InPlaceSite_ContextSensitiveHelp,
-    InPlaceSite_CanInPlaceActivate,
-    InPlaceSite_OnInPlaceActivate,
-    InPlaceSite_OnUIActivate,
-    InPlaceSite_GetWindowContext,
-    InPlaceSite_Scroll,
-    InPlaceSite_OnUIDeactivate,
-    InPlaceSite_OnInPlaceDeactivate,
-    InPlaceSite_DiscardUndoState,
-    InPlaceSite_DeactivateAndUndo,
-    InPlaceSite_OnPosRectChange
-};
-
-#define DOCSITE_THIS(iface) DEFINE_THIS(DocHost, OleDocumentSite, iface)
-
-static HRESULT WINAPI OleDocumentSite_QueryInterface(IOleDocumentSite *iface,
-                                                     REFIID riid, void **ppv)
-{
-    DocHost *This = DOCSITE_THIS(iface);
-    return IOleClientSite_QueryInterface(CLIENTSITE(This), riid, ppv);
-}
-
-static ULONG WINAPI OleDocumentSite_AddRef(IOleDocumentSite *iface)
-{
-    DocHost *This = DOCSITE_THIS(iface);
-    return IOleClientSite_AddRef(CLIENTSITE(This));
-}
-
-static ULONG WINAPI OleDocumentSite_Release(IOleDocumentSite *iface)
-{
-    DocHost *This = DOCSITE_THIS(iface);
-    return IOleClientSite_Release(CLIENTSITE(This));
-}
-
-static HRESULT WINAPI OleDocumentSite_ActivateMe(IOleDocumentSite *iface,
-                                                 IOleDocumentView *pViewToActivate)
-{
-    DocHost *This = DOCSITE_THIS(iface);
-    IOleDocument *oledoc;
-    RECT rect;
-    HRESULT hres;
-
-    TRACE("(%p)->(%p)\n", This, pViewToActivate);
-
-    hres = IUnknown_QueryInterface(This->document, &IID_IOleDocument, (void**)&oledoc);
-    if(FAILED(hres))
-        return hres;
-
-    IOleDocument_CreateView(oledoc, INPLACESITE(This), NULL, 0, &This->view);
-    IOleDocument_Release(oledoc);
-
-    GetClientRect(This->hwnd, &rect);
-    IOleDocumentView_SetRect(This->view, &rect);
-
-    hres = IOleDocumentView_Show(This->view, TRUE);
-
-    return hres;
-}
-
-#undef DOCSITE_THIS
-
-static const IOleDocumentSiteVtbl OleDocumentSiteVtbl = {
-    OleDocumentSite_QueryInterface,
-    OleDocumentSite_AddRef,
-    OleDocumentSite_Release,
-    OleDocumentSite_ActivateMe
-};
-
-#define DISP_THIS(iface) DEFINE_THIS(DocHost, Dispatch, iface)
-
-static HRESULT WINAPI ClDispatch_QueryInterface(IDispatch *iface, REFIID riid, void **ppv)
-{
-    DocHost *This = DISP_THIS(iface);
-    return IOleClientSite_QueryInterface(CLIENTSITE(This), riid, ppv);
-}
-
-static ULONG WINAPI ClDispatch_AddRef(IDispatch *iface)
-{
-    DocHost *This = DISP_THIS(iface);
-    return IOleClientSite_AddRef(CLIENTSITE(This));
-}
-
-static ULONG WINAPI ClDispatch_Release(IDispatch *iface)
-{
-    DocHost *This = DISP_THIS(iface);
-    return IOleClientSite_Release(CLIENTSITE(This));
-}
-
-static HRESULT WINAPI ClDispatch_GetTypeInfoCount(IDispatch *iface, UINT *pctinfo)
-{
-    DocHost *This = DISP_THIS(iface);
-
-    TRACE("(%p)->(%p)\n", This, pctinfo);
-
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI ClDispatch_GetTypeInfo(IDispatch *iface, UINT iTInfo, LCID lcid,
-                                             ITypeInfo **ppTInfo)
-{
-    DocHost *This = DISP_THIS(iface);
-
-    TRACE("(%p)->(%u %d %p)\n", This, iTInfo, lcid, ppTInfo);
-
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI ClDispatch_GetIDsOfNames(IDispatch *iface, REFIID riid, LPOLESTR *rgszNames,
-                                               UINT cNames, LCID lcid, DISPID *rgDispId)
-{
-    DocHost *This = DISP_THIS(iface);
-
-    TRACE("(%p)->(%s %p %u %d %p)\n", This, debugstr_guid(riid), rgszNames, cNames,
-          lcid, rgDispId);
-
-    return E_NOTIMPL;
-}
-
-static const char *debugstr_dispid(DISPID dispid)
-{
-    static char buf[16];
-
-#define CASE_DISPID(did) case did: return #did
-    switch(dispid) {
-        CASE_DISPID(DISPID_AMBIENT_USERMODE);
-        CASE_DISPID(DISPID_AMBIENT_DLCONTROL);
-        CASE_DISPID(DISPID_AMBIENT_USERAGENT);
-        CASE_DISPID(DISPID_AMBIENT_PALETTE);
-        CASE_DISPID(DISPID_AMBIENT_OFFLINEIFNOTCONNECTED);
-        CASE_DISPID(DISPID_AMBIENT_SILENT);
-    }
-#undef CASE_DISPID
-
-    sprintf(buf, "%d", dispid);
-    return buf;
-}
-
-static HRESULT WINAPI ClDispatch_Invoke(IDispatch *iface, DISPID dispIdMember, REFIID riid,
-                                        LCID lcid, WORD wFlags, DISPPARAMS *pDispParams,
-                                        VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
-{
-    DocHost *This = DISP_THIS(iface);
-
-    TRACE("(%p)->(%s %s %d %04x %p %p %p %p)\n", This, debugstr_dispid(dispIdMember),
-          debugstr_guid(riid), lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr);
-
-    switch(dispIdMember) {
-    case DISPID_AMBIENT_USERMODE:
-    case DISPID_AMBIENT_DLCONTROL:
-    case DISPID_AMBIENT_USERAGENT:
-    case DISPID_AMBIENT_PALETTE:
-        if(!This->client_disp)
-            return E_FAIL;
-        return IDispatch_Invoke(This->client_disp, dispIdMember, riid, lcid, wFlags,
-                                pDispParams, pVarResult, pExcepInfo, puArgErr);
-    case DISPID_AMBIENT_OFFLINEIFNOTCONNECTED:
-        V_VT(pVarResult) = VT_BOOL;
-        V_BOOL(pVarResult) = This->offline;
-        return S_OK;
-    case DISPID_AMBIENT_SILENT:
-        V_VT(pVarResult) = VT_BOOL;
-        V_BOOL(pVarResult) = This->offline;
-        return S_OK;
-    }
-
-    FIXME("unhandled dispid %d\n", dispIdMember);
-    return E_NOTIMPL;
-}
-
-#undef DISP_THIS
-
-static const IDispatchVtbl DispatchVtbl = {
-    ClDispatch_QueryInterface,
-    ClDispatch_AddRef,
-    ClDispatch_Release,
-    ClDispatch_GetTypeInfoCount,
-    ClDispatch_GetTypeInfo,
-    ClDispatch_GetIDsOfNames,
-    ClDispatch_Invoke
-};
-
-#define SERVPROV_THIS(iface) DEFINE_THIS(DocHost, ServiceProvider, iface)
-
-static HRESULT WINAPI ClServiceProvider_QueryInterface(IServiceProvider *iface, REFIID riid,
-                                                       void **ppv)
-{
-    DocHost *This = SERVPROV_THIS(iface);
-    return IOleClientSite_QueryInterface(CLIENTSITE(This), riid, ppv);
-}
-
-static ULONG WINAPI ClServiceProvider_AddRef(IServiceProvider *iface)
-{
-    DocHost *This = SERVPROV_THIS(iface);
-    return IOleClientSite_AddRef(CLIENTSITE(This));
-}
-
-static ULONG WINAPI ClServiceProvider_Release(IServiceProvider *iface)
-{
-    DocHost *This = SERVPROV_THIS(iface);
-    return IOleClientSite_Release(CLIENTSITE(This));
-}
-
-static HRESULT WINAPI ClServiceProvider_QueryService(IServiceProvider *iface, REFGUID guidService,
-                                                     REFIID riid, void **ppv)
-{
-    DocHost *This = SERVPROV_THIS(iface);
-
-    if(IsEqualGUID(&IID_IHlinkFrame, guidService)) {
-        TRACE("(%p)->(IID_IHlinkFrame %s %p)\n", This, debugstr_guid(riid), ppv);
-        return IDispatch_QueryInterface(This->disp, riid, ppv);
-    }
-
-    FIXME("(%p)->(%s %s %p)\n", This, debugstr_guid(guidService), debugstr_guid(riid), ppv);
-
-    return E_NOINTERFACE;
-}
-
-#undef SERVPROV_THIS
-
-static const IServiceProviderVtbl ServiceProviderVtbl = {
-    ClServiceProvider_QueryInterface,
-    ClServiceProvider_AddRef,
-    ClServiceProvider_Release,
-    ClServiceProvider_QueryService
-};
-
-void DocHost_ClientSite_Init(DocHost *This)
-{
-    This->lpOleClientSiteVtbl   = &OleClientSiteVtbl;
-    This->lpOleInPlaceSiteVtbl  = &OleInPlaceSiteVtbl;
-    This->lpOleDocumentSiteVtbl = &OleDocumentSiteVtbl;
-    This->lpDispatchVtbl        = &DispatchVtbl;
-    This->lpServiceProviderVtbl = &ServiceProviderVtbl;
-
-    This->view = NULL;
-}
-
-void DocHost_ClientSite_Release(DocHost *This)
-{
-    if(This->view)
-        IOleDocumentView_Release(This->view);
-}
diff --git a/reactos/dll/win32/shdocvw/dochost.c b/reactos/dll/win32/shdocvw/dochost.c
deleted file mode 100644 (file)
index b777272..0000000
+++ /dev/null
@@ -1,832 +0,0 @@
-/*
- * Copyright 2005-2006 Jacek Caban for CodeWeavers
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-#include <wine/debug.h>
-#include "shdocvw.h"
-//#include "hlink.h"
-#include <exdispid.h>
-#include <mshtml.h>
-#include <initguid.h>
-
-WINE_DEFAULT_DEBUG_CHANNEL(shdocvw);
-
-DEFINE_OLEGUID(CGID_DocHostCmdPriv, 0x000214D4L, 0, 0);
-
-#define DOCHOST_DOCCANNAVIGATE  0
-
-static ATOM doc_view_atom = 0;
-
-void push_dochost_task(DocHost *This, task_header_t *task, task_proc_t proc, BOOL send)
-{
-    task->proc = proc;
-
-    /* FIXME: Don't use lParam */
-    if(send)
-        SendMessageW(This->frame_hwnd, WM_DOCHOSTTASK, 0, (LPARAM)task);
-    else
-        PostMessageW(This->frame_hwnd, WM_DOCHOSTTASK, 0, (LPARAM)task);
-}
-
-LRESULT process_dochost_task(DocHost *This, LPARAM lparam)
-{
-    task_header_t *task = (task_header_t*)lparam;
-
-    task->proc(This, task);
-
-    heap_free(task);
-    return 0;
-}
-
-static void notif_complete(DocHost *This, DISPID dispid)
-{
-    DISPPARAMS dispparams;
-    VARIANTARG params[2];
-    VARIANT url;
-
-    dispparams.cArgs = 2;
-    dispparams.cNamedArgs = 0;
-    dispparams.rgdispidNamedArgs = NULL;
-    dispparams.rgvarg = params;
-
-    V_VT(params) = (VT_BYREF|VT_VARIANT);
-    V_BYREF(params) = &url;
-
-    V_VT(params+1) = VT_DISPATCH;
-    V_DISPATCH(params+1) = This->disp;
-
-    V_VT(&url) = VT_BSTR;
-    V_BSTR(&url) = SysAllocString(This->url);
-
-    TRACE("%d >>>\n", dispid);
-    call_sink(This->cps.wbe2, dispid, &dispparams);
-    TRACE("%d <<<\n", dispid);
-
-    SysFreeString(V_BSTR(&url));
-    This->busy = VARIANT_FALSE;
-}
-
-static void object_available(DocHost *This)
-{
-    IHlinkTarget *hlink;
-    HRESULT hres;
-
-    TRACE("(%p)\n", This);
-
-    if(!This->document) {
-        WARN("document == NULL\n");
-        return;
-    }
-
-    hres = IUnknown_QueryInterface(This->document, &IID_IHlinkTarget, (void**)&hlink);
-    if(FAILED(hres)) {
-        FIXME("Could not get IHlinkTarget interface\n");
-        return;
-    }
-
-    hres = IHlinkTarget_Navigate(hlink, 0, NULL);
-    IHlinkTarget_Release(hlink);
-    if(FAILED(hres))
-        FIXME("Navigate failed\n");
-}
-
-static HRESULT get_doc_ready_state(DocHost *This, READYSTATE *ret)
-{
-    DISPPARAMS dp = {NULL,NULL,0,0};
-    IDispatch *disp;
-    EXCEPINFO ei;
-    VARIANT var;
-    HRESULT hres;
-
-    hres = IUnknown_QueryInterface(This->document, &IID_IDispatch, (void**)&disp);
-    if(FAILED(hres))
-        return hres;
-
-    hres = IDispatch_Invoke(disp, DISPID_READYSTATE, &IID_NULL, LOCALE_SYSTEM_DEFAULT, DISPATCH_PROPERTYGET,
-            &dp, &var, &ei, NULL);
-    IDispatch_Release(disp);
-    if(FAILED(hres)) {
-        WARN("Invoke(DISPID_READYSTATE failed: %08x\n", hres);
-        return hres;
-    }
-
-    if(V_VT(&var) != VT_I4) {
-        WARN("V_VT(var) = %d\n", V_VT(&var));
-        VariantClear(&var);
-        return E_FAIL;
-    }
-
-    *ret = V_I4(&var);
-    return S_OK;
-}
-
-static void advise_prop_notif(DocHost *This, BOOL set)
-{
-    IConnectionPointContainer *cp_container;
-    IConnectionPoint *cp;
-    HRESULT hres;
-
-    hres = IUnknown_QueryInterface(This->document, &IID_IConnectionPointContainer, (void**)&cp_container);
-    if(FAILED(hres))
-        return;
-
-    hres = IConnectionPointContainer_FindConnectionPoint(cp_container, &IID_IPropertyNotifySink, &cp);
-    IConnectionPointContainer_Release(cp_container);
-    if(FAILED(hres))
-        return;
-
-    if(set)
-        hres = IConnectionPoint_Advise(cp, (IUnknown*)PROPNOTIF(This), &This->prop_notif_cookie);
-    else
-        hres = IConnectionPoint_Unadvise(cp, This->prop_notif_cookie);
-    IConnectionPoint_Release(cp);
-
-    if(SUCCEEDED(hres))
-        This->is_prop_notif = set;
-}
-
-void set_doc_state(DocHost *This, READYSTATE doc_state)
-{
-    This->doc_state = doc_state;
-    if(doc_state > This->ready_state)
-        This->ready_state = doc_state;
-}
-
-static void update_ready_state(DocHost *This, READYSTATE ready_state)
-{
-    if(ready_state > READYSTATE_LOADING && This->doc_state <= READYSTATE_LOADING)
-        notif_complete(This, DISPID_NAVIGATECOMPLETE2);
-
-    if(ready_state == READYSTATE_COMPLETE && This->doc_state < READYSTATE_COMPLETE) {
-        set_doc_state(This, READYSTATE_COMPLETE);
-        notif_complete(This, DISPID_DOCUMENTCOMPLETE);
-    }else {
-        set_doc_state(This, ready_state);
-    }
-}
-
-typedef struct {
-    task_header_t header;
-    IUnknown *doc;
-    READYSTATE ready_state;
-} ready_state_task_t;
-
-static void ready_state_proc(DocHost *This, task_header_t *_task)
-{
-    ready_state_task_t *task = (ready_state_task_t*)_task;
-
-    if(task->doc == This->document)
-        update_ready_state(This, task->ready_state);
-
-    IUnknown_Release(task->doc);
-}
-
-static void push_ready_state_task(DocHost *This, READYSTATE ready_state)
-{
-    ready_state_task_t *task = heap_alloc(sizeof(ready_state_task_t));
-
-    IUnknown_AddRef(This->document);
-    task->doc = This->document;
-    task->ready_state = ready_state;
-
-    push_dochost_task(This, &task->header, ready_state_proc, FALSE);
-}
-
-static void object_available_proc(DocHost *This, task_header_t *task)
-{
-    object_available(This);
-}
-
-HRESULT dochost_object_available(DocHost *This, IUnknown *doc)
-{
-    READYSTATE ready_state;
-    task_header_t *task;
-    IOleObject *oleobj;
-    HRESULT hres;
-
-    IUnknown_AddRef(doc);
-    This->document = doc;
-
-    hres = IUnknown_QueryInterface(doc, &IID_IOleObject, (void**)&oleobj);
-    if(SUCCEEDED(hres)) {
-        CLSID clsid;
-
-        hres = IOleObject_GetUserClassID(oleobj, &clsid);
-        if(SUCCEEDED(hres))
-            TRACE("Got clsid %s\n",
-                  IsEqualGUID(&clsid, &CLSID_HTMLDocument) ? "CLSID_HTMLDocument" : debugstr_guid(&clsid));
-
-        hres = IOleObject_SetClientSite(oleobj, CLIENTSITE(This));
-        if(FAILED(hres))
-            FIXME("SetClientSite failed: %08x\n", hres);
-
-        IOleObject_Release(oleobj);
-    }else {
-        FIXME("Could not get IOleObject iface: %08x\n", hres);
-    }
-
-    /* FIXME: Call SetAdvise */
-
-    task = heap_alloc(sizeof(*task));
-    push_dochost_task(This, task, object_available_proc, FALSE);
-
-    hres = get_doc_ready_state(This, &ready_state);
-    if(SUCCEEDED(hres)) {
-        if(ready_state == READYSTATE_COMPLETE)
-            push_ready_state_task(This, READYSTATE_COMPLETE);
-        if(ready_state != READYSTATE_COMPLETE || This->doc_navigate)
-            advise_prop_notif(This, TRUE);
-    }
-
-    return S_OK;
-}
-
-static LRESULT resize_document(DocHost *This, LONG width, LONG height)
-{
-    RECT rect = {0, 0, width, height};
-
-    TRACE("(%p)->(%d %d)\n", This, width, height);
-
-    if(This->view)
-        IOleDocumentView_SetRect(This->view, &rect);
-
-    return 0;
-}
-
-static LRESULT WINAPI doc_view_proc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
-{
-    DocHost *This;
-
-    static const WCHAR wszTHIS[] = {'T','H','I','S',0};
-
-    if(msg == WM_CREATE) {
-        This = *(DocHost**)lParam;
-        SetPropW(hwnd, wszTHIS, This);
-    }else {
-        This = GetPropW(hwnd, wszTHIS);
-    }
-
-    switch(msg) {
-    case WM_SIZE:
-        return resize_document(This, LOWORD(lParam), HIWORD(lParam));
-    }
-
-    return DefWindowProcW(hwnd, msg, wParam, lParam);
-}
-
-void create_doc_view_hwnd(DocHost *This)
-{
-    RECT rect;
-
-    static const WCHAR wszShell_DocObject_View[] =
-        {'S','h','e','l','l',' ','D','o','c','O','b','j','e','c','t',' ','V','i','e','w',0};
-
-    if(!doc_view_atom) {
-        static WNDCLASSEXW wndclass = {
-            sizeof(wndclass),
-            CS_PARENTDC,
-            doc_view_proc,
-            0, 0 /* native uses 4*/, NULL, NULL, NULL,
-            (HBRUSH)(COLOR_WINDOW + 1), NULL,
-            wszShell_DocObject_View,
-            NULL
-        };
-
-        wndclass.hInstance = shdocvw_hinstance;
-
-        doc_view_atom = RegisterClassExW(&wndclass);
-    }
-
-    This->container_vtbl->GetDocObjRect(This, &rect);
-    This->hwnd = CreateWindowExW(0, wszShell_DocObject_View,
-         wszShell_DocObject_View,
-         WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS | WS_CLIPCHILDREN | WS_TABSTOP,
-         rect.left, rect.top, rect.right, rect.bottom, This->frame_hwnd,
-         NULL, shdocvw_hinstance, This);
-}
-
-void deactivate_document(DocHost *This)
-{
-    IOleInPlaceObjectWindowless *winobj;
-    IOleObject *oleobj = NULL;
-    IHlinkTarget *hlink = NULL;
-    HRESULT hres;
-
-    if(This->doc_navigate) {
-        IUnknown_Release(This->doc_navigate);
-        This->doc_navigate = NULL;
-    }
-
-    if(This->is_prop_notif)
-        advise_prop_notif(This, FALSE);
-
-    if(This->view)
-        IOleDocumentView_UIActivate(This->view, FALSE);
-
-    hres = IUnknown_QueryInterface(This->document, &IID_IOleInPlaceObjectWindowless,
-                                   (void**)&winobj);
-    if(SUCCEEDED(hres)) {
-        IOleInPlaceObjectWindowless_InPlaceDeactivate(winobj);
-        IOleInPlaceObjectWindowless_Release(winobj);
-    }
-
-    if(This->view) {
-        IOleDocumentView_Show(This->view, FALSE);
-        IOleDocumentView_CloseView(This->view, 0);
-        IOleDocumentView_SetInPlaceSite(This->view, NULL);
-        IOleDocumentView_Release(This->view);
-        This->view = NULL;
-    }
-
-    hres = IUnknown_QueryInterface(This->document, &IID_IOleObject, (void**)&oleobj);
-    if(SUCCEEDED(hres))
-        IOleObject_Close(oleobj, OLECLOSE_NOSAVE);
-
-    hres = IUnknown_QueryInterface(This->document, &IID_IHlinkTarget, (void**)&hlink);
-    if(SUCCEEDED(hres)) {
-        IHlinkTarget_SetBrowseContext(hlink, NULL);
-        IHlinkTarget_Release(hlink);
-    }
-
-    if(oleobj) {
-        IOleClientSite *client_site = NULL;
-
-        IOleObject_GetClientSite(oleobj, &client_site);
-        if(client_site) {
-            if(client_site == CLIENTSITE(This))
-                IOleObject_SetClientSite(oleobj, NULL);
-            IOleClientSite_Release(client_site);
-        }
-
-        IOleObject_Release(oleobj);
-    }
-
-    IUnknown_Release(This->document);
-    This->document = NULL;
-}
-
-void release_dochost_client(DocHost *This)
-{
-    if(This->hwnd) {
-        DestroyWindow(This->hwnd);
-        This->hwnd = NULL;
-    }
-
-    if(This->hostui) {
-        IDocHostUIHandler_Release(This->hostui);
-        This->hostui = NULL;
-    }
-
-    if(This->client_disp) {
-        IDispatch_Release(This->client_disp);
-        This->client_disp = NULL;
-    }
-
-    if(This->frame) {
-        IOleInPlaceFrame_Release(This->frame);
-        This->frame = NULL;
-    }
-}
-
-#define OLECMD_THIS(iface) DEFINE_THIS(DocHost, OleCommandTarget, iface)
-
-static HRESULT WINAPI ClOleCommandTarget_QueryInterface(IOleCommandTarget *iface,
-        REFIID riid, void **ppv)
-{
-    DocHost *This = OLECMD_THIS(iface);
-    return IOleClientSite_QueryInterface(CLIENTSITE(This), riid, ppv);
-}
-
-static ULONG WINAPI ClOleCommandTarget_AddRef(IOleCommandTarget *iface)
-{
-    DocHost *This = OLECMD_THIS(iface);
-    return IOleClientSite_AddRef(CLIENTSITE(This));
-}
-
-static ULONG WINAPI ClOleCommandTarget_Release(IOleCommandTarget *iface)
-{
-    DocHost *This = OLECMD_THIS(iface);
-    return IOleClientSite_Release(CLIENTSITE(This));
-}
-
-static HRESULT WINAPI ClOleCommandTarget_QueryStatus(IOleCommandTarget *iface,
-        const GUID *pguidCmdGroup, ULONG cCmds, OLECMD prgCmds[], OLECMDTEXT *pCmdText)
-{
-    DocHost *This = OLECMD_THIS(iface);
-    ULONG i= 0;
-    FIXME("(%p)->(%s %u %p %p)\n", This, debugstr_guid(pguidCmdGroup), cCmds, prgCmds,
-          pCmdText);
-    while (prgCmds && (cCmds > i)) {
-        FIXME("command_%u: %u, 0x%x\n", i, prgCmds[i].cmdID, prgCmds[i].cmdf);
-        i++;
-    }
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI ClOleCommandTarget_Exec(IOleCommandTarget *iface,
-        const GUID *pguidCmdGroup, DWORD nCmdID, DWORD nCmdexecopt, VARIANT *pvaIn,
-        VARIANT *pvaOut)
-{
-    DocHost *This = OLECMD_THIS(iface);
-
-    TRACE("(%p)->(%s %d %d %p %p)\n", This, debugstr_guid(pguidCmdGroup), nCmdID,
-          nCmdexecopt, debugstr_variant(pvaIn), debugstr_variant(pvaOut));
-
-    if(!pguidCmdGroup) {
-        switch(nCmdID) {
-        case OLECMDID_UPDATECOMMANDS:
-            return This->container_vtbl->exec(This, pguidCmdGroup, nCmdID, nCmdexecopt, pvaIn, pvaOut);
-        default:
-            FIXME("Unimplemented cmdid %d\n", nCmdID);
-            return E_NOTIMPL;
-        }
-        return S_OK;
-    }
-
-    if(IsEqualGUID(pguidCmdGroup, &CGID_DocHostCmdPriv)) {
-        switch(nCmdID) {
-        case DOCHOST_DOCCANNAVIGATE:
-            if(!pvaIn || V_VT(pvaIn) != VT_UNKNOWN)
-                return E_INVALIDARG;
-
-            if(This->doc_navigate)
-                IUnknown_Release(This->doc_navigate);
-            IUnknown_AddRef(V_UNKNOWN(pvaIn));
-            This->doc_navigate = V_UNKNOWN(pvaIn);
-            return S_OK;
-
-        default:
-            FIXME("unsupported command %d of CGID_DocHostCmdPriv\n", nCmdID);
-            return E_NOTIMPL;
-        }
-    }
-
-    FIXME("Unimplemented group %s\n", debugstr_guid(pguidCmdGroup));
-    return E_NOTIMPL;
-}
-
-#undef OLECMD_THIS
-
-static const IOleCommandTargetVtbl OleCommandTargetVtbl = {
-    ClOleCommandTarget_QueryInterface,
-    ClOleCommandTarget_AddRef,
-    ClOleCommandTarget_Release,
-    ClOleCommandTarget_QueryStatus,
-    ClOleCommandTarget_Exec
-};
-
-#define DOCHOSTUI_THIS(iface) DEFINE_THIS(DocHost, DocHostUIHandler, iface)
-
-static HRESULT WINAPI DocHostUIHandler_QueryInterface(IDocHostUIHandler2 *iface,
-                                                      REFIID riid, void **ppv)
-{
-    DocHost *This = DOCHOSTUI_THIS(iface);
-    return IOleClientSite_QueryInterface(CLIENTSITE(This), riid, ppv);
-}
-
-static ULONG WINAPI DocHostUIHandler_AddRef(IDocHostUIHandler2 *iface)
-{
-    DocHost *This = DOCHOSTUI_THIS(iface);
-    return IOleClientSite_AddRef(CLIENTSITE(This));
-}
-
-static ULONG WINAPI DocHostUIHandler_Release(IDocHostUIHandler2 *iface)
-{
-    DocHost *This = DOCHOSTUI_THIS(iface);
-    return IOleClientSite_Release(CLIENTSITE(This));
-}
-
-static HRESULT WINAPI DocHostUIHandler_ShowContextMenu(IDocHostUIHandler2 *iface,
-         DWORD dwID, POINT *ppt, IUnknown *pcmdtReserved, IDispatch *pdispReserved)
-{
-    DocHost *This = DOCHOSTUI_THIS(iface);
-    HRESULT hres;
-
-    TRACE("(%p)->(%d %p %p %p)\n", This, dwID, ppt, pcmdtReserved, pdispReserved);
-
-    if(This->hostui) {
-        hres = IDocHostUIHandler_ShowContextMenu(This->hostui, dwID, ppt, pcmdtReserved,
-                                                 pdispReserved);
-        if(hres == S_OK)
-            return S_OK;
-    }
-
-    FIXME("default action not implemented\n");
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI DocHostUIHandler_GetHostInfo(IDocHostUIHandler2 *iface,
-        DOCHOSTUIINFO *pInfo)
-{
-    DocHost *This = DOCHOSTUI_THIS(iface);
-    HRESULT hres;
-
-    TRACE("(%p)->(%p)\n", This, pInfo);
-
-    if(This->hostui) {
-        hres = IDocHostUIHandler_GetHostInfo(This->hostui, pInfo);
-        if(SUCCEEDED(hres))
-            return hres;
-    }
-
-    pInfo->dwFlags = DOCHOSTUIFLAG_DISABLE_HELP_MENU | DOCHOSTUIFLAG_OPENNEWWIN
-        | DOCHOSTUIFLAG_URL_ENCODING_ENABLE_UTF8 | DOCHOSTUIFLAG_ENABLE_INPLACE_NAVIGATION
-        | DOCHOSTUIFLAG_IME_ENABLE_RECONVERSION;
-    return S_OK;
-}
-
-static HRESULT WINAPI DocHostUIHandler_ShowUI(IDocHostUIHandler2 *iface, DWORD dwID,
-        IOleInPlaceActiveObject *pActiveObject, IOleCommandTarget *pCommandTarget,
-        IOleInPlaceFrame *pFrame, IOleInPlaceUIWindow *pDoc)
-{
-    DocHost *This = DOCHOSTUI_THIS(iface);
-    FIXME("(%p)->(%d %p %p %p %p)\n", This, dwID, pActiveObject, pCommandTarget,
-          pFrame, pDoc);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI DocHostUIHandler_HideUI(IDocHostUIHandler2 *iface)
-{
-    DocHost *This = DOCHOSTUI_THIS(iface);
-    FIXME("(%p)\n", This);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI DocHostUIHandler_UpdateUI(IDocHostUIHandler2 *iface)
-{
-    DocHost *This = DOCHOSTUI_THIS(iface);
-
-    TRACE("(%p)\n", This);
-
-    if(!This->hostui)
-        return S_FALSE;
-
-    return IDocHostUIHandler_UpdateUI(This->hostui);
-}
-
-static HRESULT WINAPI DocHostUIHandler_EnableModeless(IDocHostUIHandler2 *iface,
-                                                      BOOL fEnable)
-{
-    DocHost *This = DOCHOSTUI_THIS(iface);
-    FIXME("(%p)->(%x)\n", This, fEnable);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI DocHostUIHandler_OnDocWindowActivate(IDocHostUIHandler2 *iface,
-                                                           BOOL fActivate)
-{
-    DocHost *This = DOCHOSTUI_THIS(iface);
-    FIXME("(%p)->(%x)\n", This, fActivate);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI DocHostUIHandler_OnFrameWindowActivate(IDocHostUIHandler2 *iface,
-                                                             BOOL fActivate)
-{
-    DocHost *This = DOCHOSTUI_THIS(iface);
-    FIXME("(%p)->(%x)\n", This, fActivate);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI DocHostUIHandler_ResizeBorder(IDocHostUIHandler2 *iface,
-        LPCRECT prcBorder, IOleInPlaceUIWindow *pUIWindow, BOOL fRameWindow)
-{
-    DocHost *This = DOCHOSTUI_THIS(iface);
-    FIXME("(%p)->(%p %p %X)\n", This, prcBorder, pUIWindow, fRameWindow);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI DocHostUIHandler_TranslateAccelerator(IDocHostUIHandler2 *iface,
-        LPMSG lpMsg, const GUID *pguidCmdGroup, DWORD nCmdID)
-{
-    DocHost *This = DOCHOSTUI_THIS(iface);
-    FIXME("(%p)->(%p %p %d)\n", This, lpMsg, pguidCmdGroup, nCmdID);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI DocHostUIHandler_GetOptionKeyPath(IDocHostUIHandler2 *iface,
-        LPOLESTR *pchKey, DWORD dw)
-{
-    DocHost *This = DOCHOSTUI_THIS(iface);
-
-    TRACE("(%p)->(%p %d)\n", This, pchKey, dw);
-
-    if(This->hostui)
-        return IDocHostUIHandler_GetOptionKeyPath(This->hostui, pchKey, dw);
-
-    return S_OK;
-}
-
-static HRESULT WINAPI DocHostUIHandler_GetDropTarget(IDocHostUIHandler2 *iface,
-        IDropTarget *pDropTarget, IDropTarget **ppDropTarget)
-{
-    DocHost *This = DOCHOSTUI_THIS(iface);
-    FIXME("(%p)\n", This);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI DocHostUIHandler_GetExternal(IDocHostUIHandler2 *iface,
-        IDispatch **ppDispatch)
-{
-    DocHost *This = DOCHOSTUI_THIS(iface);
-
-    TRACE("(%p)->(%p)\n", This, ppDispatch);
-
-    if(This->hostui)
-        return IDocHostUIHandler_GetExternal(This->hostui, ppDispatch);
-
-    FIXME("default action not implemented\n");
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI DocHostUIHandler_TranslateUrl(IDocHostUIHandler2 *iface,
-        DWORD dwTranslate, OLECHAR *pchURLIn, OLECHAR **ppchURLOut)
-{
-    DocHost *This = DOCHOSTUI_THIS(iface);
-
-    TRACE("(%p)->(%d %s %p)\n", This, dwTranslate, debugstr_w(pchURLIn), ppchURLOut);
-
-    if(This->hostui)
-        return IDocHostUIHandler_TranslateUrl(This->hostui, dwTranslate,
-                                              pchURLIn, ppchURLOut);
-
-    return S_FALSE;
-}
-
-static HRESULT WINAPI DocHostUIHandler_FilterDataObject(IDocHostUIHandler2 *iface,
-        IDataObject *pDO, IDataObject **ppDORet)
-{
-    DocHost *This = DOCHOSTUI_THIS(iface);
-    FIXME("(%p)->(%p %p)\n", This, pDO, ppDORet);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI DocHostUIHandler_GetOverrideKeyPath(IDocHostUIHandler2 *iface,
-        LPOLESTR *pchKey, DWORD dw)
-{
-    DocHost *This = DOCHOSTUI_THIS(iface);
-    IDocHostUIHandler2 *handler;
-    HRESULT hres;
-
-    TRACE("(%p)->(%p %d)\n", This, pchKey, dw);
-
-    if(!This->hostui)
-        return S_OK;
-
-    hres = IDocHostUIHandler_QueryInterface(This->hostui, &IID_IDocHostUIHandler2,
-                                            (void**)&handler);
-    if(SUCCEEDED(hres)) {
-        hres = IDocHostUIHandler2_GetOverrideKeyPath(handler, pchKey, dw);
-        IDocHostUIHandler2_Release(handler);
-        return hres;
-    }
-
-    return S_OK;
-}
-
-#undef DOCHOSTUI_THIS
-
-static const IDocHostUIHandler2Vtbl DocHostUIHandler2Vtbl = {
-    DocHostUIHandler_QueryInterface,
-    DocHostUIHandler_AddRef,
-    DocHostUIHandler_Release,
-    DocHostUIHandler_ShowContextMenu,
-    DocHostUIHandler_GetHostInfo,
-    DocHostUIHandler_ShowUI,
-    DocHostUIHandler_HideUI,
-    DocHostUIHandler_UpdateUI,
-    DocHostUIHandler_EnableModeless,
-    DocHostUIHandler_OnDocWindowActivate,
-    DocHostUIHandler_OnFrameWindowActivate,
-    DocHostUIHandler_ResizeBorder,
-    DocHostUIHandler_TranslateAccelerator,
-    DocHostUIHandler_GetOptionKeyPath,
-    DocHostUIHandler_GetDropTarget,
-    DocHostUIHandler_GetExternal,
-    DocHostUIHandler_TranslateUrl,
-    DocHostUIHandler_FilterDataObject,
-    DocHostUIHandler_GetOverrideKeyPath
-};
-
-#define PROPNOTIF_THIS(iface) DEFINE_THIS(DocHost, IPropertyNotifySink, iface)
-
-static HRESULT WINAPI PropertyNotifySink_QueryInterface(IPropertyNotifySink *iface,
-        REFIID riid, void **ppv)
-{
-    DocHost *This = PROPNOTIF_THIS(iface);
-    return IOleClientSite_QueryInterface(CLIENTSITE(This), riid, ppv);
-}
-
-static ULONG WINAPI PropertyNotifySink_AddRef(IPropertyNotifySink *iface)
-{
-    DocHost *This = PROPNOTIF_THIS(iface);
-    return IOleClientSite_AddRef(CLIENTSITE(This));
-}
-
-static ULONG WINAPI PropertyNotifySink_Release(IPropertyNotifySink *iface)
-{
-    DocHost *This = PROPNOTIF_THIS(iface);
-    return IOleClientSite_Release(CLIENTSITE(This));
-}
-
-static HRESULT WINAPI PropertyNotifySink_OnChanged(IPropertyNotifySink *iface, DISPID dispID)
-{
-    DocHost *This = PROPNOTIF_THIS(iface);
-
-    TRACE("(%p)->(%d)\n", This, dispID);
-
-    switch(dispID) {
-    case DISPID_READYSTATE: {
-        READYSTATE ready_state;
-        HRESULT hres;
-
-        hres = get_doc_ready_state(This, &ready_state);
-        if(FAILED(hres))
-            return hres;
-
-        if(ready_state == READYSTATE_COMPLETE && !This->doc_navigate)
-            advise_prop_notif(This, FALSE);
-
-        push_ready_state_task(This, ready_state);
-        break;
-    }
-    default:
-        FIXME("unimplemented dispid %d\n", dispID);
-        return E_NOTIMPL;
-    }
-
-    return S_OK;
-}
-
-static HRESULT WINAPI PropertyNotifySink_OnRequestEdit(IPropertyNotifySink *iface, DISPID dispID)
-{
-    DocHost *This = PROPNOTIF_THIS(iface);
-    FIXME("(%p)->(%d)\n", This, dispID);
-    return E_NOTIMPL;
-}
-
-#undef PROPNOTIF_THIS
-
-static const IPropertyNotifySinkVtbl PropertyNotifySinkVtbl = {
-    PropertyNotifySink_QueryInterface,
-    PropertyNotifySink_AddRef,
-    PropertyNotifySink_Release,
-    PropertyNotifySink_OnChanged,
-    PropertyNotifySink_OnRequestEdit
-};
-
-void DocHost_Init(DocHost *This, IDispatch *disp, const IDocHostContainerVtbl* container)
-{
-    This->lpDocHostUIHandlerVtbl = &DocHostUIHandler2Vtbl;
-    This->lpOleCommandTargetVtbl = &OleCommandTargetVtbl;
-    This->lpIPropertyNotifySinkVtbl = &PropertyNotifySinkVtbl;
-
-    This->disp = disp;
-
-    This->container_vtbl = container;
-
-    This->client_disp = NULL;
-
-    This->document = NULL;
-    This->hostui = NULL;
-    This->frame = NULL;
-
-    This->hwnd = NULL;
-    This->frame_hwnd = NULL;
-    This->url = NULL;
-
-    This->silent = VARIANT_FALSE;
-    This->offline = VARIANT_FALSE;
-
-    This->ready_state = READYSTATE_UNINITIALIZED;
-    This->is_prop_notif = FALSE;
-
-    DocHost_ClientSite_Init(This);
-    DocHost_Frame_Init(This);
-
-    ConnectionPointContainer_Init(&This->cps, (IUnknown*)disp);
-}
-
-void DocHost_Release(DocHost *This)
-{
-    release_dochost_client(This);
-    DocHost_ClientSite_Release(This);
-
-    ConnectionPointContainer_Destroy(&This->cps);
-
-    heap_free(This->url);
-}
diff --git a/reactos/dll/win32/shdocvw/events.c b/reactos/dll/win32/shdocvw/events.c
deleted file mode 100644 (file)
index ab79adb..0000000
+++ /dev/null
@@ -1,316 +0,0 @@
-/*
- * Implementation of event-related interfaces for WebBrowser control:
- *
- *  - IConnectionPointContainer
- *  - IConnectionPoint
- *
- * Copyright 2001 John R. Sheets (for CodeWeavers)
- * Copyright 2006 Jacek Caban for CodeWeavers
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-//#include <string.h>
-#include <wine/debug.h>
-#include "shdocvw.h"
-
-WINE_DEFAULT_DEBUG_CHANNEL(shdocvw);
-
-struct ConnectionPoint {
-    const IConnectionPointVtbl *lpConnectionPointVtbl;
-
-    IConnectionPointContainer *container;
-
-    IDispatch **sinks;
-    DWORD sinks_size;
-
-    IID iid;
-};
-
-#define CONPOINT(x)  ((IConnectionPoint*) &(x)->lpConnectionPointVtbl)
-
-/**********************************************************************
- * Implement the IConnectionPointContainer interface
- */
-
-#define CONPTCONT_THIS(iface) DEFINE_THIS(ConnectionPointContainer, ConnectionPointContainer, iface)
-
-static HRESULT WINAPI ConnectionPointContainer_QueryInterface(IConnectionPointContainer *iface,
-        REFIID riid, LPVOID *ppv)
-{
-    ConnectionPointContainer *This = CONPTCONT_THIS(iface);
-    return IUnknown_QueryInterface(This->impl, riid, ppv);
-}
-
-static ULONG WINAPI ConnectionPointContainer_AddRef(IConnectionPointContainer *iface)
-{
-    ConnectionPointContainer *This = CONPTCONT_THIS(iface);
-    return IUnknown_AddRef(This->impl);
-}
-
-static ULONG WINAPI ConnectionPointContainer_Release(IConnectionPointContainer *iface)
-{
-    ConnectionPointContainer *This = CONPTCONT_THIS(iface);
-    return IUnknown_Release(This->impl);
-}
-
-static HRESULT WINAPI ConnectionPointContainer_EnumConnectionPoints(IConnectionPointContainer *iface,
-        LPENUMCONNECTIONPOINTS *ppEnum)
-{
-    ConnectionPointContainer *This = CONPTCONT_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, ppEnum);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI ConnectionPointContainer_FindConnectionPoint(IConnectionPointContainer *iface,
-        REFIID riid, LPCONNECTIONPOINT *ppCP)
-{
-    ConnectionPointContainer *This = CONPTCONT_THIS(iface);
-
-    if(!ppCP) {
-        WARN("ppCP == NULL\n");
-        return E_POINTER;
-    }
-
-    *ppCP = NULL;
-
-    if(IsEqualGUID(&DIID_DWebBrowserEvents2, riid)) {
-        TRACE("(%p)->(DIID_DWebBrowserEvents2 %p)\n", This, ppCP);
-        *ppCP = CONPOINT(This->wbe2);
-    }else if(IsEqualGUID(&DIID_DWebBrowserEvents, riid)) {
-        TRACE("(%p)->(DIID_DWebBrowserEvents %p)\n", This, ppCP);
-        *ppCP = CONPOINT(This->wbe);
-    }else if(IsEqualGUID(&IID_IPropertyNotifySink, riid)) {
-        TRACE("(%p)->(IID_IPropertyNotifySink %p)\n", This, ppCP);
-        *ppCP = CONPOINT(This->pns);
-    }
-
-    if(*ppCP) {
-        IConnectionPoint_AddRef(*ppCP);
-        return S_OK;
-    }
-
-    WARN("Unsupported IID %s\n", debugstr_guid(riid));
-    return CONNECT_E_NOCONNECTION;
-}
-
-#undef CONPTCONT_THIS
-
-static const IConnectionPointContainerVtbl ConnectionPointContainerVtbl =
-{
-    ConnectionPointContainer_QueryInterface,
-    ConnectionPointContainer_AddRef,
-    ConnectionPointContainer_Release,
-    ConnectionPointContainer_EnumConnectionPoints,
-    ConnectionPointContainer_FindConnectionPoint
-};
-
-
-/**********************************************************************
- * Implement the IConnectionPoint interface
- */
-
-#define CONPOINT_THIS(iface) DEFINE_THIS(ConnectionPoint, ConnectionPoint, iface)
-
-static HRESULT WINAPI ConnectionPoint_QueryInterface(IConnectionPoint *iface,
-                                                     REFIID riid, LPVOID *ppv)
-{
-    ConnectionPoint *This = CONPOINT_THIS(iface);
-
-    *ppv = NULL;
-
-    if(IsEqualGUID(&IID_IUnknown, riid)) {
-        TRACE("(%p)->(IID_IUnknown %p)\n", This, ppv);
-        *ppv = CONPOINT(This);
-    }else if(IsEqualGUID(&IID_IConnectionPoint, riid)) {
-        TRACE("(%p)->(IID_IConnectionPoint %p)\n", This, ppv);
-        *ppv = CONPOINT(This);
-    }
-
-    if(*ppv) {
-        IConnectionPointContainer_AddRef(This->container);
-        return S_OK;
-    }
-
-    WARN("Unsupported interface %s\n", debugstr_guid(riid));
-    return E_NOINTERFACE;
-}
-
-static ULONG WINAPI ConnectionPoint_AddRef(IConnectionPoint *iface)
-{
-    ConnectionPoint *This = CONPOINT_THIS(iface);
-    return IConnectionPointContainer_AddRef(This->container);
-}
-
-static ULONG WINAPI ConnectionPoint_Release(IConnectionPoint *iface)
-{
-    ConnectionPoint *This = CONPOINT_THIS(iface);
-    return IConnectionPointContainer_Release(This->container);
-}
-
-static HRESULT WINAPI ConnectionPoint_GetConnectionInterface(IConnectionPoint *iface, IID *pIID)
-{
-    ConnectionPoint *This = CONPOINT_THIS(iface);
-
-    TRACE("(%p)->(%p)\n", This, pIID);
-
-    *pIID = This->iid;
-    return S_OK;
-}
-
-static HRESULT WINAPI ConnectionPoint_GetConnectionPointContainer(IConnectionPoint *iface,
-        IConnectionPointContainer **ppCPC)
-{
-    ConnectionPoint *This = CONPOINT_THIS(iface);
-
-    TRACE("(%p)->(%p)\n", This, ppCPC);
-
-    *ppCPC = This->container;
-    IConnectionPointContainer_AddRef(This->container);
-    return S_OK;
-}
-
-static HRESULT WINAPI ConnectionPoint_Advise(IConnectionPoint *iface, IUnknown *pUnkSink,
-                                             DWORD *pdwCookie)
-{
-    ConnectionPoint *This = CONPOINT_THIS(iface);
-    IDispatch *disp;
-    DWORD i;
-    HRESULT hres;
-
-    TRACE("(%p)->(%p %p)\n", This, pUnkSink, pdwCookie);
-
-    hres = IUnknown_QueryInterface(pUnkSink, &This->iid, (void**)&disp);
-    if(FAILED(hres)) {
-        hres = IUnknown_QueryInterface(pUnkSink, &IID_IDispatch, (void**)&disp);
-        if(FAILED(hres))
-            return CONNECT_E_CANNOTCONNECT;
-    }
-
-    if(This->sinks) {
-        for(i=0; i<This->sinks_size; i++) {
-            if(!This->sinks[i])
-                break;
-        }
-
-        if(i == This->sinks_size)
-            This->sinks = heap_realloc(This->sinks,
-                                          (++This->sinks_size)*sizeof(*This->sinks));
-    }else {
-        This->sinks = heap_alloc(sizeof(*This->sinks));
-        This->sinks_size = 1;
-        i = 0;
-    }
-
-    This->sinks[i] = disp;
-    *pdwCookie = i+1;
-
-    return S_OK;
-}
-
-static HRESULT WINAPI ConnectionPoint_Unadvise(IConnectionPoint *iface, DWORD dwCookie)
-{
-    ConnectionPoint *This = CONPOINT_THIS(iface);
-
-    TRACE("(%p)->(%d)\n", This, dwCookie);
-
-    if(!dwCookie || dwCookie > This->sinks_size || !This->sinks[dwCookie-1])
-        return CONNECT_E_NOCONNECTION;
-
-    IDispatch_Release(This->sinks[dwCookie-1]);
-    This->sinks[dwCookie-1] = NULL;
-
-    return S_OK;
-}
-
-static HRESULT WINAPI ConnectionPoint_EnumConnections(IConnectionPoint *iface,
-                                                      IEnumConnections **ppEnum)
-{
-    ConnectionPoint *This = CONPOINT_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, ppEnum);
-    return E_NOTIMPL;
-}
-
-#undef CONPOINT_THIS
-
-static const IConnectionPointVtbl ConnectionPointVtbl =
-{
-    ConnectionPoint_QueryInterface,
-    ConnectionPoint_AddRef,
-    ConnectionPoint_Release,
-    ConnectionPoint_GetConnectionInterface,
-    ConnectionPoint_GetConnectionPointContainer,
-    ConnectionPoint_Advise,
-    ConnectionPoint_Unadvise,
-    ConnectionPoint_EnumConnections
-};
-
-void call_sink(ConnectionPoint *This, DISPID dispid, DISPPARAMS *dispparams)
-{
-    DWORD i;
-
-    for(i=0; i<This->sinks_size; i++) {
-        if(This->sinks[i])
-            IDispatch_Invoke(This->sinks[i], dispid, &IID_NULL, LOCALE_SYSTEM_DEFAULT,
-                             DISPATCH_METHOD, dispparams, NULL, NULL, NULL);
-    }
-}
-
-static void ConnectionPoint_Create(REFIID riid, ConnectionPoint **cp,
-                                   IConnectionPointContainer *container)
-{
-    ConnectionPoint *ret = heap_alloc(sizeof(ConnectionPoint));
-
-    ret->lpConnectionPointVtbl = &ConnectionPointVtbl;
-
-    ret->sinks = NULL;
-    ret->sinks_size = 0;
-    ret->container = container;
-
-    ret->iid = *riid;
-
-    *cp = ret;
-}
-
-static void ConnectionPoint_Destroy(ConnectionPoint *This)
-{
-    DWORD i;
-
-    for(i=0; i<This->sinks_size; i++) {
-        if(This->sinks[i])
-            IDispatch_Release(This->sinks[i]);
-    }
-
-    heap_free(This->sinks);
-    heap_free(This);
-}
-
-void ConnectionPointContainer_Init(ConnectionPointContainer *This, IUnknown *impl)
-{
-    This->lpConnectionPointContainerVtbl = &ConnectionPointContainerVtbl;
-
-    ConnectionPoint_Create(&DIID_DWebBrowserEvents2, &This->wbe2, CONPTCONT(This));
-    ConnectionPoint_Create(&DIID_DWebBrowserEvents,  &This->wbe,  CONPTCONT(This));
-    ConnectionPoint_Create(&IID_IPropertyNotifySink, &This->pns,  CONPTCONT(This));
-
-    This->impl = impl;
-}
-
-void ConnectionPointContainer_Destroy(ConnectionPointContainer *This)
-{
-    ConnectionPoint_Destroy(This->wbe2);
-    ConnectionPoint_Destroy(This->wbe);
-    ConnectionPoint_Destroy(This->pns);
-}
diff --git a/reactos/dll/win32/shdocvw/factory.c b/reactos/dll/win32/shdocvw/factory.c
deleted file mode 100644 (file)
index 82b3aaa..0000000
+++ /dev/null
@@ -1,339 +0,0 @@
-/*
- * Implementation of class factory for IE Web Browser
- *
- * Copyright 2001 John R. Sheets (for CodeWeavers)
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-//#include <string.h>
-#include <stdio.h>
-
-#include "shdocvw.h"
-//#include "winreg.h"
-#include <advpub.h>
-//#include "isguids.h"
-
-//#include "winver.h"
-
-#include <wine/debug.h>
-
-WINE_DEFAULT_DEBUG_CHANNEL(shdocvw);
-
-/**********************************************************************
- * Implement the WebBrowser class factory
- *
- * (Based on implementation in ddraw/main.c)
- */
-
-#define FACTORY(x) ((IClassFactory*) &(x)->lpClassFactoryVtbl)
-
-typedef struct
-{
-    /* IUnknown fields */
-    const IClassFactoryVtbl *lpClassFactoryVtbl;
-    HRESULT (*cf)(LPUNKNOWN, REFIID, LPVOID *);
-    LONG ref;
-} IClassFactoryImpl;
-
-
-/**********************************************************************
- * WBCF_QueryInterface (IUnknown)
- */
-static HRESULT WINAPI WBCF_QueryInterface(LPCLASSFACTORY iface,
-                                          REFIID riid, LPVOID *ppobj)
-{
-    TRACE("(%s %p)\n", debugstr_guid(riid), ppobj);
-
-    if (!ppobj)
-        return E_POINTER;
-
-    if(IsEqualGUID(&IID_IUnknown, riid) || IsEqualGUID(&IID_IClassFactory, riid)) {
-        *ppobj = iface;
-        IClassFactory_AddRef(iface);
-        return S_OK;
-    }
-
-    WARN("Not supported interface %s\n", debugstr_guid(riid));
-
-    *ppobj = NULL;
-    return E_NOINTERFACE;
-}
-
-/************************************************************************
- * WBCF_AddRef (IUnknown)
- */
-static ULONG WINAPI WBCF_AddRef(LPCLASSFACTORY iface)
-{
-    SHDOCVW_LockModule();
-
-    return 2; /* non-heap based object */
-}
-
-/************************************************************************
- * WBCF_Release (IUnknown)
- */
-static ULONG WINAPI WBCF_Release(LPCLASSFACTORY iface)
-{
-    SHDOCVW_UnlockModule();
-
-    return 1; /* non-heap based object */
-}
-
-/************************************************************************
- * WBCF_CreateInstance (IClassFactory)
- */
-static HRESULT WINAPI WBCF_CreateInstance(LPCLASSFACTORY iface, LPUNKNOWN pOuter,
-                                          REFIID riid, LPVOID *ppobj)
-{
-    IClassFactoryImpl *This = (IClassFactoryImpl *) iface;
-    return This->cf(pOuter, riid, ppobj);
-}
-
-/************************************************************************
- * WBCF_LockServer (IClassFactory)
- */
-static HRESULT WINAPI WBCF_LockServer(LPCLASSFACTORY iface, BOOL dolock)
-{
-    TRACE("(%d)\n", dolock);
-
-    if (dolock)
-        SHDOCVW_LockModule();
-    else
-        SHDOCVW_UnlockModule();
-    
-    return S_OK;
-}
-
-static const IClassFactoryVtbl WBCF_Vtbl =
-{
-    WBCF_QueryInterface,
-    WBCF_AddRef,
-    WBCF_Release,
-    WBCF_CreateInstance,
-    WBCF_LockServer
-};
-
-/*************************************************************************
- *              DllGetClassObject (SHDOCVW.@)
- */
-HRESULT WINAPI DllGetClassObject(REFCLSID rclsid, REFIID riid, void **ppv)
-{
-    static IClassFactoryImpl WB1ClassFactory = {&WBCF_Vtbl, WebBrowserV1_Create};
-    static IClassFactoryImpl WB2ClassFactory = {&WBCF_Vtbl, WebBrowserV2_Create};
-    static IClassFactoryImpl CUHClassFactory = {&WBCF_Vtbl, CUrlHistory_Create};
-    static IClassFactoryImpl ISCClassFactory = {&WBCF_Vtbl, InternetShortcut_Create};
-    static IClassFactoryImpl TBLClassFactory = {&WBCF_Vtbl, TaskbarList_Create};
-
-    TRACE("\n");
-
-    if(IsEqualGUID(&CLSID_WebBrowser, rclsid))
-        return IClassFactory_QueryInterface(FACTORY(&WB2ClassFactory), riid, ppv);
-
-    if(IsEqualGUID(&CLSID_WebBrowser_V1, rclsid))
-        return IClassFactory_QueryInterface(FACTORY(&WB1ClassFactory), riid, ppv);
-
-    if(IsEqualGUID(&CLSID_CUrlHistory, rclsid))
-        return IClassFactory_QueryInterface(FACTORY(&CUHClassFactory), riid, ppv);
-
-    if(IsEqualGUID(&CLSID_InternetShortcut, rclsid))
-        return IClassFactory_QueryInterface(FACTORY(&ISCClassFactory), riid, ppv);
-
-    if(IsEqualGUID(&CLSID_TaskbarList, rclsid))
-        return IClassFactory_QueryInterface(FACTORY(&TBLClassFactory), riid, ppv);
-
-    /* As a last resort, figure if the CLSID belongs to a 'Shell Instance Object' */
-    return SHDOCVW_GetShellInstanceObjectClassObject(rclsid, riid, ppv);
-}
-
-HRESULT register_class_object(BOOL do_reg)
-{
-    HRESULT hres;
-
-    static DWORD cookie;
-    static IClassFactoryImpl IEClassFactory = {&WBCF_Vtbl, InternetExplorer_Create};
-
-    if(do_reg) {
-        hres = CoRegisterClassObject(&CLSID_InternetExplorer, (IUnknown*)FACTORY(&IEClassFactory),
-                                     CLSCTX_SERVER, REGCLS_MULTIPLEUSE|REGCLS_SUSPENDED, &cookie);
-        if (FAILED(hres)) {
-            ERR("failed to register object %08x\n", hres);
-            return hres;
-        }
-
-        hres = CoResumeClassObjects();
-        if(SUCCEEDED(hres))
-            return hres;
-
-        ERR("failed to resume object %08x\n", hres);
-    }
-
-    return CoRevokeClassObject(cookie);
-}
-
-static HRESULT reg_install(LPCSTR section, STRTABLEA *strtable)
-{
-    HRESULT (WINAPI *pRegInstall)(HMODULE hm, LPCSTR pszSection, const STRTABLEA* pstTable);
-    HMODULE hadvpack;
-    HRESULT hres;
-
-    static const WCHAR advpackW[] = {'a','d','v','p','a','c','k','.','d','l','l',0};
-
-    hadvpack = LoadLibraryW(advpackW);
-    pRegInstall = (void *)GetProcAddress(hadvpack, "RegInstall");
-
-    hres = pRegInstall(shdocvw_hinstance, section, strtable);
-
-    FreeLibrary(hadvpack);
-    return hres;
-}
-
-static const GUID CLSID_MicrosoftBrowserArchitecture =
-    {0xa5e46e3a, 0x8849, 0x11d1, {0x9d, 0x8c, 0x00, 0xc0, 0x4f, 0xc9, 0x9d, 0x61}};
-static const GUID CLSID_MruLongList =
-    {0x53bd6b4e, 0x3780, 0x4693, {0xaf, 0xc3, 0x71, 0x61, 0xc2, 0xf3, 0xee, 0x9c}};
-
-#define INF_SET_CLSID(clsid)                  \
-    do                                        \
-    {                                         \
-        static CHAR name[] = "CLSID_" #clsid; \
-                                              \
-        pse[i].pszName = name;                \
-        clsids[i++] = &CLSID_ ## clsid;       \
-    } while (0)
-
-static HRESULT register_server(BOOL doregister)
-{
-    STRTABLEA strtable;
-    STRENTRYA pse[15];
-    static CLSID const *clsids[15];
-    unsigned int i = 0;
-    HRESULT hres;
-
-    INF_SET_CLSID(CUrlHistory);
-    INF_SET_CLSID(Internet);
-    INF_SET_CLSID(InternetExplorer);
-    INF_SET_CLSID(InternetShortcut);
-    INF_SET_CLSID(MicrosoftBrowserArchitecture);
-    INF_SET_CLSID(MruLongList);
-    INF_SET_CLSID(SearchAssistantOC);
-    INF_SET_CLSID(ShellNameSpace);
-    INF_SET_CLSID(ShellSearchAssistantOC);
-    INF_SET_CLSID(ShellShellNameSpace);
-    INF_SET_CLSID(ShellUIHelper);
-    INF_SET_CLSID(ShellWindows);
-    INF_SET_CLSID(TaskbarList);
-    INF_SET_CLSID(WebBrowser);
-    INF_SET_CLSID(WebBrowser_V1);
-
-    for(i = 0; i < sizeof(pse)/sizeof(pse[0]); i++) {
-        pse[i].pszValue = HeapAlloc(GetProcessHeap(), 0, 39);
-        sprintf(pse[i].pszValue, "{%08X-%04X-%04X-%02X%02X-%02X%02X%02X%02X%02X%02X}",
-                clsids[i]->Data1, clsids[i]->Data2, clsids[i]->Data3, clsids[i]->Data4[0],
-                clsids[i]->Data4[1], clsids[i]->Data4[2], clsids[i]->Data4[3], clsids[i]->Data4[4],
-                clsids[i]->Data4[5], clsids[i]->Data4[6], clsids[i]->Data4[7]);
-    }
-
-    strtable.cEntries = sizeof(pse)/sizeof(pse[0]);
-    strtable.pse = pse;
-
-    hres = reg_install(doregister ? "RegisterDll" : "UnregisterDll", &strtable);
-
-    for(i=0; i < sizeof(pse)/sizeof(pse[0]); i++)
-        HeapFree(GetProcessHeap(), 0, pse[i].pszValue);
-
-    return hres;
-}
-
-#undef INF_SET_CLSID
-
-/***********************************************************************
- *          DllRegisterServer (shdocvw.@)
- */
-HRESULT WINAPI DllRegisterServer(void)
-{
-    ITypeLib *typelib;
-    HRESULT hres;
-
-    static const WCHAR shdocvwW[] = {'s','h','d','o','c','v','w','.','d','l','l',0};
-
-    hres = register_server(TRUE);
-    if(FAILED(hres))
-        return hres;
-
-    hres = LoadTypeLibEx(shdocvwW, REGKIND_REGISTER, &typelib);
-    if(FAILED(hres)) {
-        ERR("Could not load typelib: %08x\n", hres);
-        return hres;
-    }
-
-    ITypeLib_Release(typelib);
-
-    return hres;
-}
-
-/***********************************************************************
- *          DllUnregisterServer (shdocvw.@)
- */
-HRESULT WINAPI DllUnregisterServer(void)
-{
-    HRESULT hres;
-
-    hres = register_server(FALSE);
-    if(FAILED(hres))
-        return hres;
-
-    return UnRegisterTypeLib(&LIBID_SHDocVw, 1, 1, LOCALE_SYSTEM_DEFAULT, SYS_WIN32);
-}
-
-static BOOL check_native_ie(void)
-{
-    static const WCHAR cszPath[] = {'b','r','o','w','s','e','u','i','.','d','l','l',0};
-    DWORD handle,size;
-    BOOL ret = TRUE;
-
-    size = GetFileVersionInfoSizeW(cszPath,&handle);
-    if (size)
-    {
-        LPVOID buf;
-        LPWSTR lpFileDescription;
-        UINT dwBytes;
-        static const WCHAR cszFD[] = {'\\','S','t','r','i','n','g','F','i','l','e','I','n','f','o','\\','0','4','0','9','0','4','e','4','\\','F','i','l','e','D','e','s','c','r','i','p','t','i','o','n',0};
-        static const WCHAR cszWine[] = {'W','i','n','e',0};
-
-        buf = HeapAlloc(GetProcessHeap(),0,size);
-        GetFileVersionInfoW(cszPath,0,size,buf);
-
-        if (VerQueryValueW(buf, cszFD, (LPVOID*)&lpFileDescription, &dwBytes) &&
-            strstrW(lpFileDescription,cszWine))
-                ret = FALSE;
-
-        HeapFree(GetProcessHeap(), 0, buf);
-    }
-
-    return ret;
-}
-
-DWORD register_iexplore(BOOL doregister)
-{
-    HRESULT hres;
-    if (check_native_ie())
-    {
-        TRACE("Native IE detected, not doing registration\n");
-        return S_OK;
-    }
-    hres = reg_install(doregister ? "RegisterIE" : "UnregisterIE", NULL);
-    return FAILED(hres);
-}
diff --git a/reactos/dll/win32/shdocvw/frame.c b/reactos/dll/win32/shdocvw/frame.c
deleted file mode 100644 (file)
index ba8d685..0000000
+++ /dev/null
@@ -1,183 +0,0 @@
-/*
- * Copyright 2005 Jacek Caban for CodeWeavers
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-#include <wine/debug.h>
-#include "shdocvw.h"
-
-WINE_DEFAULT_DEBUG_CHANNEL(shdocvw);
-
-#define INPLACEFRAME_THIS(iface) DEFINE_THIS(DocHost, OleInPlaceFrame, iface)
-
-static HRESULT WINAPI InPlaceFrame_QueryInterface(IOleInPlaceFrame *iface,
-                                                  REFIID riid, void **ppv)
-{
-    DocHost *This = INPLACEFRAME_THIS(iface);
-
-    *ppv = NULL;
-
-    if(IsEqualGUID(&IID_IUnknown, riid)) {
-        TRACE("(%p)->(IID_IUnknown %p)\n", This, ppv);
-        *ppv = INPLACEFRAME(This);
-    }else if(IsEqualGUID(&IID_IOleWindow, riid)) {
-        TRACE("(%p)->(IID_IOleWindow %p)\n", This, ppv);
-        *ppv = INPLACEFRAME(This);
-    }else if(IsEqualGUID(&IID_IOleInPlaceUIWindow, riid)) {
-        TRACE("(%p)->(IID_IOleInPlaceUIWindow %p)\n", This, ppv);
-        *ppv = INPLACEFRAME(This);
-    }else if(IsEqualGUID(&IID_IOleInPlaceFrame, riid)) {
-        TRACE("(%p)->(IID_IOleInPlaceFrame %p)\n", This, ppv);
-        *ppv = INPLACEFRAME(This);
-    }
-
-    if(*ppv) {
-        IOleInPlaceFrame_AddRef(INPLACEFRAME(This));
-        return S_OK;
-    }
-
-    WARN("Unsopported interface %s\n", debugstr_guid(riid));
-    return E_NOINTERFACE;
-}
-
-static ULONG WINAPI InPlaceFrame_AddRef(IOleInPlaceFrame *iface)
-{
-    DocHost *This = INPLACEFRAME_THIS(iface);
-    return IOleClientSite_AddRef(CLIENTSITE(This));
-}
-
-static ULONG WINAPI InPlaceFrame_Release(IOleInPlaceFrame *iface)
-{
-    DocHost *This = INPLACEFRAME_THIS(iface);
-    return IOleClientSite_Release(CLIENTSITE(This));
-}
-
-static HRESULT WINAPI InPlaceFrame_GetWindow(IOleInPlaceFrame *iface, HWND *phwnd)
-{
-    DocHost *This = INPLACEFRAME_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, phwnd);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InPlaceFrame_ContextSensitiveHelp(IOleInPlaceFrame *iface,
-                                                        BOOL fEnterMode)
-{
-    DocHost *This = INPLACEFRAME_THIS(iface);
-    FIXME("(%p)->(%x)\n", This, fEnterMode);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InPlaceFrame_GetBorder(IOleInPlaceFrame *iface, LPRECT lprectBorder)
-{
-    DocHost *This = INPLACEFRAME_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, lprectBorder);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InPlaceFrame_RequestBorderSpace(IOleInPlaceFrame *iface,
-                                                      LPCBORDERWIDTHS pborderwidths)
-{
-    DocHost *This = INPLACEFRAME_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, pborderwidths);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InPlaceFrame_SetBorderSpace(IOleInPlaceFrame *iface,
-                                                  LPCBORDERWIDTHS pborderwidths)
-{
-    DocHost *This = INPLACEFRAME_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, pborderwidths);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InPlaceFrame_SetActiveObject(IOleInPlaceFrame *iface,
-        IOleInPlaceActiveObject *pActiveObject, LPCOLESTR pszObjName)
-{
-    DocHost *This = INPLACEFRAME_THIS(iface);
-    FIXME("(%p)->(%p %s)\n", This, pActiveObject, debugstr_w(pszObjName));
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InPlaceFrame_InsertMenus(IOleInPlaceFrame *iface, HMENU hmenuShared,
-        LPOLEMENUGROUPWIDTHS lpMenuWidths)
-{
-    DocHost *This = INPLACEFRAME_THIS(iface);
-    FIXME("(%p)->(%p %p)\n", This, hmenuShared, lpMenuWidths);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InPlaceFrame_SetMenu(IOleInPlaceFrame *iface, HMENU hmenuShared,
-        HOLEMENU holemenu, HWND hwndActiveObject)
-{
-    DocHost *This = INPLACEFRAME_THIS(iface);
-    FIXME("(%p)->(%p %p %p)\n", This, hmenuShared, holemenu, hwndActiveObject);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InPlaceFrame_RemoveMenus(IOleInPlaceFrame *iface, HMENU hmenuShared)
-{
-    DocHost *This = INPLACEFRAME_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, hmenuShared);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InPlaceFrame_SetStatusText(IOleInPlaceFrame *iface,
-                                                 LPCOLESTR pszStatusText)
-{
-    DocHost *This = INPLACEFRAME_THIS(iface);
-    TRACE("(%p)->(%s)\n", This, debugstr_w(pszStatusText));
-    return This->container_vtbl->SetStatusText(This, pszStatusText);
-}
-
-static HRESULT WINAPI InPlaceFrame_EnableModeless(IOleInPlaceFrame *iface, BOOL fEnable)
-{
-    DocHost *This = INPLACEFRAME_THIS(iface);
-    FIXME("(%p)->(%x)\n", This, fEnable);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InPlaceFrame_TranslateAccelerator(IOleInPlaceFrame *iface, LPMSG lpmsg,
-                                                        WORD wID)
-{
-    DocHost *This = INPLACEFRAME_THIS(iface);
-    FIXME("(%p)->(%p %d)\n", This, lpmsg, wID);
-    return E_NOTIMPL;
-}
-
-#undef INPLACEFRAME_THIS
-
-static const IOleInPlaceFrameVtbl OleInPlaceFrameVtbl = {
-    InPlaceFrame_QueryInterface,
-    InPlaceFrame_AddRef,
-    InPlaceFrame_Release,
-    InPlaceFrame_GetWindow,
-    InPlaceFrame_ContextSensitiveHelp,
-    InPlaceFrame_GetBorder,
-    InPlaceFrame_RequestBorderSpace,
-    InPlaceFrame_SetBorderSpace,
-    InPlaceFrame_SetActiveObject,
-    InPlaceFrame_InsertMenus,
-    InPlaceFrame_SetMenu,
-    InPlaceFrame_RemoveMenus,
-    InPlaceFrame_SetStatusText,
-    InPlaceFrame_EnableModeless,
-    InPlaceFrame_TranslateAccelerator
-};
-
-void DocHost_Frame_Init(DocHost *This)
-{
-    This->lpOleInPlaceFrameVtbl = &OleInPlaceFrameVtbl;
-}
diff --git a/reactos/dll/win32/shdocvw/ie.c b/reactos/dll/win32/shdocvw/ie.c
deleted file mode 100644 (file)
index 18894c6..0000000
+++ /dev/null
@@ -1,686 +0,0 @@
-/*
- * Copyright 2006 Jacek Caban for CodeWeavers
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-#include <wine/debug.h>
-#include "shdocvw.h"
-
-WINE_DEFAULT_DEBUG_CHANNEL(shdocvw);
-
-#define WEBBROWSER_THIS(iface) DEFINE_THIS(InternetExplorer, WebBrowser2, iface)
-
-static HRESULT WINAPI InternetExplorer_QueryInterface(IWebBrowser2 *iface, REFIID riid, LPVOID *ppv)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-
-    *ppv = NULL;
-
-    if(IsEqualGUID(&IID_IUnknown, riid)) {
-        TRACE("(%p)->(IID_IUnknown %p)\n", This, ppv);
-        *ppv = WEBBROWSER(This);
-    }else if(IsEqualGUID(&IID_IDispatch, riid)) {
-        TRACE("(%p)->(IID_IDispatch %p)\n", This, ppv);
-        *ppv = WEBBROWSER(This);
-    }else if(IsEqualGUID(&IID_IWebBrowser, riid)) {
-        TRACE("(%p)->(IID_IWebBrowser %p)\n", This, ppv);
-        *ppv = WEBBROWSER(This);
-    }else if(IsEqualGUID(&IID_IWebBrowserApp, riid)) {
-        TRACE("(%p)->(IID_IWebBrowserApp %p)\n", This, ppv);
-        *ppv = WEBBROWSER(This);
-    }else if(IsEqualGUID(&IID_IWebBrowser2, riid)) {
-        TRACE("(%p)->(IID_IWebBrowser2 %p)\n", This, ppv);
-        *ppv = WEBBROWSER(This);
-    }else if(IsEqualGUID(&IID_IConnectionPointContainer, riid)) {
-        TRACE("(%p)->(IID_IConnectionPointContainer %p)\n", This, ppv);
-        *ppv = CONPTCONT(&This->doc_host.cps);
-    }else if(HlinkFrame_QI(&This->hlink_frame, riid, ppv)) {
-        return S_OK;
-    }
-
-    if(*ppv) {
-        IUnknown_AddRef((IUnknown*)*ppv);
-        return S_OK;
-    }
-
-    WARN("(%p)->(%s %p) interface not supported\n", This, debugstr_guid(riid), ppv);
-    return E_NOINTERFACE;
-}
-
-static ULONG WINAPI InternetExplorer_AddRef(IWebBrowser2 *iface)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    LONG ref = InterlockedIncrement(&This->ref);
-    TRACE("(%p) ref=%d\n", This, ref);
-    return ref;
-}
-
-static ULONG WINAPI InternetExplorer_Release(IWebBrowser2 *iface)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    LONG ref = InterlockedDecrement(&This->ref);
-
-    TRACE("(%p) ref=%d\n", This, ref);
-
-    if(!ref) {
-        DocHost_Release(&This->doc_host);
-        heap_free(This);
-    }
-
-    return ref;
-}
-
-static HRESULT WINAPI InternetExplorer_GetTypeInfoCount(IWebBrowser2 *iface, UINT *pctinfo)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, pctinfo);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_GetTypeInfo(IWebBrowser2 *iface, UINT iTInfo, LCID lcid,
-                                     LPTYPEINFO *ppTInfo)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%d %d %p)\n", This, iTInfo, lcid, ppTInfo);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_GetIDsOfNames(IWebBrowser2 *iface, REFIID riid,
-                                       LPOLESTR *rgszNames, UINT cNames,
-                                       LCID lcid, DISPID *rgDispId)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%s %p %d %d %p)\n", This, debugstr_guid(riid), rgszNames, cNames,
-            lcid, rgDispId);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_Invoke(IWebBrowser2 *iface, DISPID dispIdMember,
-                                REFIID riid, LCID lcid, WORD wFlags,
-                                DISPPARAMS *pDispParams, VARIANT *pVarResult,
-                                EXCEPINFO *pExepInfo, UINT *puArgErr)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%d %s %d %08x %p %p %p %p)\n", This, dispIdMember, debugstr_guid(riid),
-            lcid, wFlags, pDispParams, pVarResult, pExepInfo, puArgErr);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_GoBack(IWebBrowser2 *iface)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)\n", This);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_GoForward(IWebBrowser2 *iface)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)\n", This);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_GoHome(IWebBrowser2 *iface)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    TRACE("(%p)\n", This);
-    return go_home(&This->doc_host);
-}
-
-static HRESULT WINAPI InternetExplorer_GoSearch(IWebBrowser2 *iface)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)\n", This);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_Navigate(IWebBrowser2 *iface, BSTR szUrl,
-                                  VARIANT *Flags, VARIANT *TargetFrameName,
-                                  VARIANT *PostData, VARIANT *Headers)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-
-    TRACE("(%p)->(%s %p %p %p %p)\n", This, debugstr_w(szUrl), Flags, TargetFrameName,
-          PostData, Headers);
-
-    return navigate_url(&This->doc_host, szUrl, Flags, TargetFrameName, PostData, Headers);
-}
-
-static HRESULT WINAPI InternetExplorer_Refresh(IWebBrowser2 *iface)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)\n", This);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_Refresh2(IWebBrowser2 *iface, VARIANT *Level)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, Level);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_Stop(IWebBrowser2 *iface)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)\n", This);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_get_Application(IWebBrowser2 *iface, IDispatch **ppDisp)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, ppDisp);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_get_Parent(IWebBrowser2 *iface, IDispatch **ppDisp)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, ppDisp);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_get_Container(IWebBrowser2 *iface, IDispatch **ppDisp)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, ppDisp);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_get_Document(IWebBrowser2 *iface, IDispatch **ppDisp)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, ppDisp);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_get_TopLevelContainer(IWebBrowser2 *iface, VARIANT_BOOL *pBool)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, pBool);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_get_Type(IWebBrowser2 *iface, BSTR *Type)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, Type);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_get_Left(IWebBrowser2 *iface, LONG *pl)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, pl);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_put_Left(IWebBrowser2 *iface, LONG Left)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%d)\n", This, Left);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_get_Top(IWebBrowser2 *iface, LONG *pl)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, pl);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_put_Top(IWebBrowser2 *iface, LONG Top)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%d)\n", This, Top);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_get_Width(IWebBrowser2 *iface, LONG *pl)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, pl);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_put_Width(IWebBrowser2 *iface, LONG Width)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%d)\n", This, Width);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_get_Height(IWebBrowser2 *iface, LONG *pl)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, pl);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_put_Height(IWebBrowser2 *iface, LONG Height)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%d)\n", This, Height);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_get_LocationName(IWebBrowser2 *iface, BSTR *LocationName)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, LocationName);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_get_LocationURL(IWebBrowser2 *iface, BSTR *LocationURL)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, LocationURL);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_get_Busy(IWebBrowser2 *iface, VARIANT_BOOL *pBool)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, pBool);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_Quit(IWebBrowser2 *iface)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)\n", This);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_ClientToWindow(IWebBrowser2 *iface, int *pcx, int *pcy)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p %p)\n", This, pcx, pcy);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_PutProperty(IWebBrowser2 *iface, BSTR szProperty, VARIANT vtValue)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%s)\n", This, debugstr_w(szProperty));
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_GetProperty(IWebBrowser2 *iface, BSTR szProperty, VARIANT *pvtValue)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%s %p)\n", This, debugstr_w(szProperty), pvtValue);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_get_Name(IWebBrowser2 *iface, BSTR *Name)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, Name);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_get_HWND(IWebBrowser2 *iface, LONG *pHWND)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, pHWND);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_get_FullName(IWebBrowser2 *iface, BSTR *FullName)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, FullName);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_get_Path(IWebBrowser2 *iface, BSTR *Path)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, Path);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_get_Visible(IWebBrowser2 *iface, VARIANT_BOOL *pBool)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, pBool);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_put_Visible(IWebBrowser2 *iface, VARIANT_BOOL Value)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    TRACE("(%p)->(%x)\n", This, Value);
-
-    ShowWindow(This->frame_hwnd, Value ? SW_SHOW : SW_HIDE);
-
-    return S_OK;
-}
-
-static HRESULT WINAPI InternetExplorer_get_StatusBar(IWebBrowser2 *iface, VARIANT_BOOL *pBool)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, pBool);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_put_StatusBar(IWebBrowser2 *iface, VARIANT_BOOL Value)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%x)\n", This, Value);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_get_StatusText(IWebBrowser2 *iface, BSTR *StatusText)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, StatusText);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_put_StatusText(IWebBrowser2 *iface, BSTR StatusText)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-
-    TRACE("(%p)->(%s)\n", This, debugstr_w(StatusText));
-
-    return update_ie_statustext(This, StatusText);
-}
-
-static HRESULT WINAPI InternetExplorer_get_ToolBar(IWebBrowser2 *iface, int *Value)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, Value);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_put_ToolBar(IWebBrowser2 *iface, int Value)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%d)\n", This, Value);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_get_MenuBar(IWebBrowser2 *iface, VARIANT_BOOL *Value)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, Value);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_put_MenuBar(IWebBrowser2 *iface, VARIANT_BOOL Value)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    HMENU menu = NULL;
-
-    TRACE("(%p)->(%x)\n", This, Value);
-
-    if(Value)
-        menu = This->menu;
-
-    if(!SetMenu(This->frame_hwnd, menu))
-        return HRESULT_FROM_WIN32(GetLastError());
-
-    return S_OK;
-}
-
-static HRESULT WINAPI InternetExplorer_get_FullScreen(IWebBrowser2 *iface, VARIANT_BOOL *pbFullScreen)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, pbFullScreen);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_put_FullScreen(IWebBrowser2 *iface, VARIANT_BOOL bFullScreen)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%x)\n", This, bFullScreen);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_Navigate2(IWebBrowser2 *iface, VARIANT *URL, VARIANT *Flags,
-        VARIANT *TargetFrameName, VARIANT *PostData, VARIANT *Headers)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-
-    TRACE("(%p)->(%p %p %p %p %p)\n", This, URL, Flags, TargetFrameName, PostData, Headers);
-
-    if(!URL)
-        return S_OK;
-
-    if(V_VT(URL) != VT_BSTR) {
-        FIXME("Unsupported V_VT(URL) %d\n", V_VT(URL));
-        return E_INVALIDARG;
-    }
-
-    return navigate_url(&This->doc_host, V_BSTR(URL), Flags, TargetFrameName, PostData, Headers);
-}
-
-static HRESULT WINAPI InternetExplorer_QueryStatusWB(IWebBrowser2 *iface, OLECMDID cmdID, OLECMDF *pcmdf)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%d %p)\n", This, cmdID, pcmdf);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_ExecWB(IWebBrowser2 *iface, OLECMDID cmdID,
-        OLECMDEXECOPT cmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%d %d %p %p)\n", This, cmdID, cmdexecopt, pvaIn, pvaOut);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_ShowBrowserBar(IWebBrowser2 *iface, VARIANT *pvaClsid,
-        VARIANT *pvarShow, VARIANT *pvarSize)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p %p %p)\n", This, pvaClsid, pvarShow, pvarSize);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_get_ReadyState(IWebBrowser2 *iface, READYSTATE *lpReadyState)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, lpReadyState);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_get_Offline(IWebBrowser2 *iface, VARIANT_BOOL *pbOffline)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, pbOffline);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_put_Offline(IWebBrowser2 *iface, VARIANT_BOOL bOffline)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%x)\n", This, bOffline);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_get_Silent(IWebBrowser2 *iface, VARIANT_BOOL *pbSilent)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, pbSilent);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_put_Silent(IWebBrowser2 *iface, VARIANT_BOOL bSilent)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%x)\n", This, bSilent);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_get_RegisterAsBrowser(IWebBrowser2 *iface,
-        VARIANT_BOOL *pbRegister)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, pbRegister);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_put_RegisterAsBrowser(IWebBrowser2 *iface,
-        VARIANT_BOOL bRegister)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%x)\n", This, bRegister);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_get_RegisterAsDropTarget(IWebBrowser2 *iface,
-        VARIANT_BOOL *pbRegister)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, pbRegister);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_put_RegisterAsDropTarget(IWebBrowser2 *iface,
-        VARIANT_BOOL bRegister)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%x)\n", This, bRegister);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_get_TheaterMode(IWebBrowser2 *iface, VARIANT_BOOL *pbRegister)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, pbRegister);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_put_TheaterMode(IWebBrowser2 *iface, VARIANT_BOOL bRegister)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%x)\n", This, bRegister);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_get_AddressBar(IWebBrowser2 *iface, VARIANT_BOOL *Value)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, Value);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_put_AddressBar(IWebBrowser2 *iface, VARIANT_BOOL Value)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%x)\n", This, Value);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_get_Resizable(IWebBrowser2 *iface, VARIANT_BOOL *Value)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, Value);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InternetExplorer_put_Resizable(IWebBrowser2 *iface, VARIANT_BOOL Value)
-{
-    InternetExplorer *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%x)\n", This, Value);
-    return E_NOTIMPL;
-}
-
-#undef WEBBROWSER_THIS
-
-static const IWebBrowser2Vtbl InternetExplorerVtbl =
-{
-    InternetExplorer_QueryInterface,
-    InternetExplorer_AddRef,
-    InternetExplorer_Release,
-    InternetExplorer_GetTypeInfoCount,
-    InternetExplorer_GetTypeInfo,
-    InternetExplorer_GetIDsOfNames,
-    InternetExplorer_Invoke,
-    InternetExplorer_GoBack,
-    InternetExplorer_GoForward,
-    InternetExplorer_GoHome,
-    InternetExplorer_GoSearch,
-    InternetExplorer_Navigate,
-    InternetExplorer_Refresh,
-    InternetExplorer_Refresh2,
-    InternetExplorer_Stop,
-    InternetExplorer_get_Application,
-    InternetExplorer_get_Parent,
-    InternetExplorer_get_Container,
-    InternetExplorer_get_Document,
-    InternetExplorer_get_TopLevelContainer,
-    InternetExplorer_get_Type,
-    InternetExplorer_get_Left,
-    InternetExplorer_put_Left,
-    InternetExplorer_get_Top,
-    InternetExplorer_put_Top,
-    InternetExplorer_get_Width,
-    InternetExplorer_put_Width,
-    InternetExplorer_get_Height,
-    InternetExplorer_put_Height,
-    InternetExplorer_get_LocationName,
-    InternetExplorer_get_LocationURL,
-    InternetExplorer_get_Busy,
-    InternetExplorer_Quit,
-    InternetExplorer_ClientToWindow,
-    InternetExplorer_PutProperty,
-    InternetExplorer_GetProperty,
-    InternetExplorer_get_Name,
-    InternetExplorer_get_HWND,
-    InternetExplorer_get_FullName,
-    InternetExplorer_get_Path,
-    InternetExplorer_get_Visible,
-    InternetExplorer_put_Visible,
-    InternetExplorer_get_StatusBar,
-    InternetExplorer_put_StatusBar,
-    InternetExplorer_get_StatusText,
-    InternetExplorer_put_StatusText,
-    InternetExplorer_get_ToolBar,
-    InternetExplorer_put_ToolBar,
-    InternetExplorer_get_MenuBar,
-    InternetExplorer_put_MenuBar,
-    InternetExplorer_get_FullScreen,
-    InternetExplorer_put_FullScreen,
-    InternetExplorer_Navigate2,
-    InternetExplorer_QueryStatusWB,
-    InternetExplorer_ExecWB,
-    InternetExplorer_ShowBrowserBar,
-    InternetExplorer_get_ReadyState,
-    InternetExplorer_get_Offline,
-    InternetExplorer_put_Offline,
-    InternetExplorer_get_Silent,
-    InternetExplorer_put_Silent,
-    InternetExplorer_get_RegisterAsBrowser,
-    InternetExplorer_put_RegisterAsBrowser,
-    InternetExplorer_get_RegisterAsDropTarget,
-    InternetExplorer_put_RegisterAsDropTarget,
-    InternetExplorer_get_TheaterMode,
-    InternetExplorer_put_TheaterMode,
-    InternetExplorer_get_AddressBar,
-    InternetExplorer_put_AddressBar,
-    InternetExplorer_get_Resizable,
-    InternetExplorer_put_Resizable
-};
-
-void InternetExplorer_WebBrowser_Init(InternetExplorer *This)
-{
-    This->lpWebBrowser2Vtbl = &InternetExplorerVtbl;
-}
diff --git a/reactos/dll/win32/shdocvw/ietoolbar.bmp b/reactos/dll/win32/shdocvw/ietoolbar.bmp
deleted file mode 100644 (file)
index d412362..0000000
Binary files a/reactos/dll/win32/shdocvw/ietoolbar.bmp and /dev/null differ
diff --git a/reactos/dll/win32/shdocvw/ietoolbar.svg b/reactos/dll/win32/shdocvw/ietoolbar.svg
deleted file mode 100644 (file)
index 24866a9..0000000
+++ /dev/null
@@ -1,285 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-<svg id="svg2" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="32" width="192" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:dc="http://purl.org/dc/elements/1.1/">
- <metadata id="metadata280">
-  <rdf:RDF>
-   <cc:Work rdf:about="">
-    <dc:format>image/svg+xml</dc:format>
-    <dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
-    <dc:title/>
-   </cc:Work>
-  </rdf:RDF>
- </metadata>
- <defs id="defs4">
-  <radialGradient id="radialGradient2004" gradientUnits="userSpaceOnUse" cy="32.798" cx="22.292" gradientTransform="matrix(-0.589125,0,0,0.685598,29.3555,0.773753)" r="16.956">
-   <stop id="stop2593" stop-color="#73d216" offset="0"/>
-   <stop id="stop2595" stop-color="#4e9a06" offset="1"/>
-  </radialGradient>
-  <radialGradient id="radialGradient2001" gradientUnits="userSpaceOnUse" cy="5.786" cx="25.076" gradientTransform="matrix(-1.430305,0,0,1.046783,46.13938,2.164948)" r="17.171">
-   <stop id="stop8652" stop-color="#FFF" offset="0"/>
-   <stop id="stop8654" stop-color="#FFF" stop-opacity="0" offset="1"/>
-  </radialGradient>
-  <radialGradient id="radialGradient1992" gradientUnits="userSpaceOnUse" cy="36.421" cx="24.837" gradientTransform="matrix(1,0,0,0.536723,0,16.87306)" r="15.645">
-   <stop id="stop8664" stop-color="#000" offset="0"/>
-   <stop id="stop8666" stop-color="#000" stop-opacity="0" offset="1"/>
-  </radialGradient>
-  <linearGradient id="linearGradient5060">
-   <stop id="stop5062" stop-color="#000" offset="0"/>
-   <stop id="stop5064" stop-color="#000" stop-opacity="0" offset="1"/>
-  </linearGradient>
-  <linearGradient id="linearGradient2797">
-   <stop id="stop2799" stop-color="#FFF" offset="0"/>
-   <stop id="stop2801" stop-color="#FFF" stop-opacity="0" offset="1"/>
-  </linearGradient>
-  <linearGradient id="linearGradient2871">
-   <stop id="stop2873" stop-color="#3465a4" offset="0"/>
-   <stop id="stop2875" stop-color="#3465a4" offset="1"/>
-  </linearGradient>
-  <linearGradient id="linearGradient2380">
-   <stop id="stop2382-9" stop-color="#b9cfe7" offset="0"/>
-   <stop id="stop2384" stop-color="#729fcf" offset="1"/>
-  </linearGradient>
-  <linearGradient id="linearGradient2402">
-   <stop id="stop2404" stop-color="#729fcf" offset="0"/>
-   <stop id="stop2406" stop-color="#528ac5" offset="1"/>
-  </linearGradient>
-  <radialGradient id="radialGradient3588" gradientUnits="userSpaceOnUse" cy="32.798" cx="22.292" gradientTransform="matrix(0.588566,0,0,0.691503,34.980416,1020.9693)" r="16.956">
-   <stop id="stop2593-1" stop-color="#73d216" offset="0"/>
-   <stop id="stop2595-2" stop-color="#4e9a06" offset="1"/>
-  </radialGradient>
-  <radialGradient id="radialGradient3590" gradientUnits="userSpaceOnUse" cy="2.8969" cx="19.701" gradientTransform="matrix(1.364487,0,0,1.038407,19.299385,1022.6636)" r="17.171">
-   <stop id="stop8652-8" stop-color="#FFF" offset="0"/>
-   <stop id="stop8654-8" stop-color="#FFF" stop-opacity="0" offset="1"/>
-  </radialGradient>
-  <radialGradient id="radialGradient3593" gradientUnits="userSpaceOnUse" cy="10.666" cx="16.75" gradientTransform="matrix(2.737165,0,0,2.125222,29.37911,1006.2414)" r="21.25">
-   <stop id="stop2250" stop-color="#FFF" offset="0"/>
-   <stop id="stop2252" stop-color="#FFF" stop-opacity="0" offset="1"/>
-  </radialGradient>
-  <linearGradient id="linearGradient3596" y2="47.374" gradientUnits="userSpaceOnUse" x2="53.57" gradientTransform="matrix(0.658703,0,0,0.658681,64.193874,1020.5559)" y1="12.504" x1="15.737">
-   <stop id="stop11782" stop-color="#ff8b8b" offset="0"/>
-   <stop id="stop11784" stop-color="#ec1b1b" offset="1"/>
-  </linearGradient>
-  <radialGradient id="radialGradient3599" gradientUnits="userSpaceOnUse" cy="33.302" cx="24.302" gradientTransform="matrix(1.105562,0,0,1.105705,53.33881,1005.6202)" r="12.302">
-   <stop id="stop9649" stop-color="#FFF" offset="0"/>
-   <stop id="stop9651" stop-color="#dbdbdb" offset="1"/>
-  </radialGradient>
-  <linearGradient id="linearGradient3601" y2="35.052" gradientUnits="userSpaceOnUse" x2="24.302" gradientTransform="matrix(0.652641,0,0,0.652725,64.345805,1020.7054)" y1="15.802" x1="21.75">
-   <stop id="stop2258" stop-color="#ff0202" offset="0"/>
-   <stop id="stop2260" stop-color="#ff9b9b" offset="1"/>
-  </linearGradient>
-  <linearGradient id="linearGradient3604" y2="37.96" gradientUnits="userSpaceOnUse" x2="41.048" gradientTransform="matrix(0.67419,0,0,0.674276,63.822139,1020.1817)" y1="20.105" x1="23.996">
-   <stop id="stop4983" stop-color="#C00" offset="0"/>
-   <stop id="stop4985" stop-color="#b30000" offset="1"/>
-  </linearGradient>
-  <radialGradient id="radialGradient3607" gradientUnits="userSpaceOnUse" cy="36.75" cx="25.125" gradientTransform="matrix(1,0,0,0.595238,0,14.875)" r="15.75">
-   <stop id="stop21646" stop-color="#000" offset="0"/>
-   <stop id="stop21648" stop-color="#000" stop-opacity="0" offset="1"/>
-  </radialGradient>
-  <linearGradient id="linearGradient3681" y2="19.115" gradientUnits="userSpaceOnUse" x2="15.419" gradientTransform="matrix(0.666667,0,0,0.646309,96.83003,1019.302)" y1="10.612" x1="13.479">
-   <stop id="stop2833" stop-color="#3465a4" offset="0"/>
-   <stop id="stop2855" stop-color="#5b86be" offset="0.33333"/>
-   <stop id="stop2835" stop-color="#83a8d8" stop-opacity="0" offset="1"/>
-  </linearGradient>
-  <linearGradient id="linearGradient3683" y2="26.194" gradientUnits="userSpaceOnUse" x2="37.065" gradientTransform="matrix(-0.666667,0,0,-0.646309,128.20505,1049.113)" y1="29.73" x1="37.128">
-   <stop id="stop2849" stop-color="#3465a4" offset="0"/>
-   <stop id="stop2851" stop-color="#3465a4" stop-opacity="0" offset="1"/>
-  </linearGradient>
-  <linearGradient id="linearGradient3685" y2="20.609" xlink:href="#linearGradient2380" gradientUnits="userSpaceOnUse" x2="15.985" y1="36.061" x1="62.514"/>
-  <linearGradient id="linearGradient3687" y2="50.94" xlink:href="#linearGradient2871" gradientUnits="userSpaceOnUse" x2="45.38" y1="45.264" x1="46.835"/>
-  <linearGradient id="linearGradient3691" y2="24.842" gradientUnits="userSpaceOnUse" x2="37.124" gradientTransform="matrix(0.666667,0,0,0.647455,96.519755,1019.8536)" y1="30.749" x1="32.648">
-   <stop id="stop2692" stop-color="#c4d7eb" offset="0"/>
-   <stop id="stop2694" stop-color="#c4d7eb" stop-opacity="0" offset="1"/>
-  </linearGradient>
-  <linearGradient id="linearGradient3693" y2="24.842" gradientUnits="userSpaceOnUse" x2="37.124" gradientTransform="matrix(0.666667,0,0,0.647455,96.519755,1019.8536)" y1="31.456" x1="36.714">
-   <stop id="stop2684" stop-color="#3977c3" offset="0"/>
-   <stop id="stop2686" stop-color="#89aedc" stop-opacity="0" offset="1"/>
-  </linearGradient>
-  <linearGradient id="linearGradient3695" y2="26.649" xlink:href="#linearGradient2402" gradientUnits="userSpaceOnUse" x2="53.589" y1="23.668" x1="18.936"/>
-  <linearGradient id="linearGradient3703" y2="26.048" xlink:href="#linearGradient2797" gradientUnits="userSpaceOnUse" x2="52.854" y1="26.048" x1="5.9649"/>
-  <radialGradient id="radialGradient3821" gradientUnits="userSpaceOnUse" cy="26.926" cx="9.1295" r="2.1227">
-   <stop id="stop4700" stop-color="#fffffd" offset="0"/>
-   <stop id="stop4706" stop-color="#bbbbb9" offset="0.5"/>
-   <stop id="stop4702" stop-color="#000" offset="1"/>
-  </radialGradient>
-  <radialGradient id="radialGradient3832" gradientUnits="userSpaceOnUse" cy="30.443" cx="29.913" gradientTransform="matrix(2.525807,0,0,1.713442,72.53038,988.81062)" r="4.0019">
-   <stop id="stop2370" stop-color="#FFF" offset="0"/>
-   <stop id="stop2372" stop-color="#FFF" stop-opacity="0" offset="1"/>
-  </radialGradient>
-  <radialGradient id="radialGradient3837" gradientUnits="userSpaceOnUse" cy="19.554" cx="11.681" gradientTransform="matrix(2.733392,0,0,-2.800883,124.51812,1090.5979)" r="8.2452">
-   <stop id="stop2343" stop-color="#000" offset="0"/>
-   <stop id="stop2345" stop-color="#000" stop-opacity="0" offset="1"/>
-  </radialGradient>
-  <radialGradient id="radialGradient3840" gradientUnits="userSpaceOnUse" cy="24.203" cx="7.5327" gradientTransform="matrix(2.733392,0,0,2.800883,111.04015,968.00238)" r="8.2452">
-   <stop id="stop2301" stop-color="#FFF" offset="0"/>
-   <stop id="stop2303" stop-color="#FFF" stop-opacity="0" offset="1"/>
-  </radialGradient>
-  <linearGradient id="linearGradient3844" y2="35.569" gradientUnits="userSpaceOnUse" x2="64.388" gradientTransform="matrix(0.236067,0,0,0.236067,129.07598,1020.3064)" y1="65.124" x1="64.388">
-   <stop id="stop336" stop-color="#FFF" offset="0"/>
-   <stop id="stop338" stop-color="#ff6200" offset="0.8539"/>
-   <stop id="stop340" stop-color="#f25d00" offset="1"/>
-  </linearGradient>
-  <radialGradient id="radialGradient3847" gradientUnits="userSpaceOnUse" cy="36.778" cx="19.986" gradientTransform="matrix(0.845492,0,0,0.650968,124.14222,1020.5274)" r="1.0821">
-   <stop id="stop2309" stop-color="#edd400" offset="0"/>
-   <stop id="stop2311" stop-color="#980" offset="1"/>
-  </radialGradient>
-  <radialGradient id="radialGradient3850" gradientUnits="userSpaceOnUse" cy="37.426" cx="20.444" gradientTransform="matrix(0.845492,0,0,0.650968,124.14222,1020.6369)" r="1.0821">
-   <stop id="stop2321" stop-color="#000" offset="0"/>
-   <stop id="stop2323" stop-color="#000" stop-opacity="0" offset="1"/>
-  </radialGradient>
-  <linearGradient id="linearGradient3853" y2="41.032" gradientUnits="userSpaceOnUse" x2="19.04" gradientTransform="matrix(0.667809,0,0,0.721564,128.52999,1019.1429)" y1="28.939" x1="17.85">
-   <stop id="stop2408" stop-color="#7c7e79" offset="0"/>
-   <stop id="stop2414" stop-color="#848681" offset="0.17241"/>
-   <stop id="stop2410" stop-color="#898c86" offset="1"/>
-  </linearGradient>
-  <radialGradient id="radialGradient3856" gradientUnits="userSpaceOnUse" cy="10.578" cx="24.195" gradientTransform="matrix(0.750176,-2.390279e-8,2.846547e-8,0.893373,125.97906,1021.2658)" r="15.243">
-   <stop id="stop2380" stop-color="#575757" offset="0"/>
-   <stop id="stop2382" stop-color="#575757" stop-opacity="0" offset="1"/>
-  </radialGradient>
-  <linearGradient id="linearGradient3860" y2="32.654" gradientUnits="userSpaceOnUse" x2="17.683" gradientTransform="matrix(0.675325,0,0,0.710034,127.07761,1018.7743)" y1="26.057" x1="17.603">
-   <stop id="stop2331" stop-color="#000" stop-opacity="0.18556701" offset="0"/>
-   <stop id="stop2333" stop-color="#FFF" offset="1"/>
-  </linearGradient>
-  <linearGradient id="linearGradient3864" y2="-42.219" gradientUnits="userSpaceOnUse" x2="14.049" gradientTransform="matrix(0.221835,0,0,0.110024,140.0235,1030.616)" y1="166.13" x1="52.006">
-   <stop id="stop17" stop-color="#CCC" offset="0"/>
-   <stop id="stop19" stop-color="#FFF" offset="0.9831"/>
-  </linearGradient>
-  <linearGradient id="linearGradient3870" y2="609.51" gradientUnits="userSpaceOnUse" x2="302.86" gradientTransform="matrix(2.774389,0,0,1.969706,-1892.179,-872.8854)" y1="366.65" x1="302.86">
-   <stop id="stop5050" stop-color="#000" stop-opacity="0" offset="0"/>
-   <stop id="stop5056" stop-color="#000" offset="0.5"/>
-   <stop id="stop5052" stop-color="#000" stop-opacity="0" offset="1"/>
-  </linearGradient>
-  <radialGradient id="radialGradient3872" xlink:href="#linearGradient5060" gradientUnits="userSpaceOnUse" cy="486.65" cx="605.71" gradientTransform="matrix(2.774389,0,0,1.969706,-1891.633,-872.8854)" r="117.14"/>
-  <radialGradient id="radialGradient3874" xlink:href="#linearGradient5060" gradientUnits="userSpaceOnUse" cy="486.65" cx="605.71" gradientTransform="matrix(-2.774389,0,0,1.969706,112.7623,-872.8854)" r="117.14"/>
-  <linearGradient id="linearGradient3907" y2="72.064" gradientUnits="userSpaceOnUse" x2="9.9128" gradientTransform="matrix(1.848058,0,0,0.217548,160.26603,1024.7799)" y1="57.228" x1="9.8698">
-   <stop id="stop4735" stop-color="#000" stop-opacity="0.2371134" offset="0"/>
-   <stop id="stop4737" stop-color="#000" stop-opacity="0" offset="1"/>
-  </linearGradient>
-  <linearGradient id="linearGradient3911" y2="54.136" gradientUnits="userSpaceOnUse" x2="10.338" gradientTransform="matrix(1.544788,0,0,0.264367,160.01852,1023.7146)" y1="64.652" x1="10.338">
-   <stop id="stop4682" stop-color="#f7f6f5" offset="0"/>
-   <stop id="stop4684" stop-color="#f7f6f5" stop-opacity="0" offset="1"/>
-  </linearGradient>
-  <linearGradient id="linearGradient3913" y2="62.282" gradientUnits="userSpaceOnUse" x2="9.7053" gradientTransform="matrix(1.544788,0,0,0.264367,160.01852,1023.7146)" y1="70.725" x1="9.7317">
-   <stop id="stop4690" stop-color="#666" offset="0"/>
-   <stop id="stop4692" stop-color="#000" stop-opacity="0" offset="1"/>
-  </linearGradient>
-  <linearGradient id="linearGradient3916" y2="19.337" gradientUnits="userSpaceOnUse" x2="20.718" gradientTransform="matrix(0.814222,0,0,0.576573,159.61207,1022.5218)" y1="25.14" x1="20.771">
-   <stop id="stop15664" stop-color="#FFF" stop-opacity="0" offset="0"/>
-   <stop id="stop15666" stop-color="#f8f8f8" offset="1"/>
-  </linearGradient>
-  <linearGradient id="linearGradient3919" y2="25.247" gradientUnits="userSpaceOnUse" x2="24.79" gradientTransform="matrix(0.665463,0,0,0.744457,159.14802,1023.5823)" y1="3.6785" x1="25.057">
-   <stop id="stop260" stop-color="#e0e0e0" offset="0"/>
-   <stop id="stop4886" stop-color="#FFF" offset="0.40547"/>
-   <stop id="stop4884" stop-color="#cdcdcd" offset="0.53448"/>
-   <stop id="stop261" stop-color="#494949" offset="1"/>
-  </linearGradient>
-  <linearGradient id="linearGradient3922" y2="62.101" gradientUnits="userSpaceOnUse" x2="15.488" gradientTransform="matrix(0.955896,0,0,0.432698,160.6615,1023.6066)" y1="32.539" x1="15.388">
-   <stop id="stop4764" stop-color="#FFF" stop-opacity="0.12371134" offset="0"/>
-   <stop id="stop4768" stop-color="#FFF" offset="0.10345"/>
-   <stop id="stop4766" stop-color="#FFF" stop-opacity="0" offset="1"/>
-  </linearGradient>
-  <linearGradient id="linearGradient3926" y2="88.295" gradientUnits="userSpaceOnUse" x2="18.972" gradientTransform="matrix(1.510349,0,0,0.297131,160.25238,1022.5201)" y1="88.295" x1="1.8456">
-   <stop id="stop4743" stop-color="#dcdcda" offset="0"/>
-   <stop id="stop4745" stop-color="#bab9b7" offset="1"/>
-  </linearGradient>
-  <linearGradient id="linearGradient3929" y2="88.295" gradientUnits="userSpaceOnUse" x2="18.972" gradientTransform="matrix(1.501108,0,0,0.291945,160.40355,1021.921)" y1="88.295" x1="1.8456">
-   <stop id="stop4670" stop-color="#8e8d87" offset="0"/>
-   <stop id="stop4676" stop-color="#cbc9c1" offset="0.27586"/>
-   <stop id="stop4672" stop-color="#8e8d87" offset="1"/>
-  </linearGradient>
-  <radialGradient id="radialGradient3932" xlink:href="#linearGradient5060" gradientUnits="userSpaceOnUse" cy="486.65" cx="605.71" gradientTransform="matrix(-0.04372487,0,0,0.02533308,191.79481,1036.9981)" r="117.14"/>
-  <radialGradient id="radialGradient3935" xlink:href="#linearGradient5060" gradientUnits="userSpaceOnUse" cy="486.65" cx="605.71" gradientTransform="matrix(0.04372487,0,0,0.02533308,160.20518,1036.9981)" r="117.14"/>
-  <linearGradient id="linearGradient3938" y2="609.51" gradientUnits="userSpaceOnUse" x2="302.86" gradientTransform="matrix(0.04372487,0,0,0.02533308,160.19658,1036.9981)" y1="366.65" x1="302.86">
-   <stop id="stop5050-7" stop-color="#000" stop-opacity="0" offset="0"/>
-   <stop id="stop5056-6" stop-color="#000" offset="0.5"/>
-   <stop id="stop5052-3" stop-color="#000" stop-opacity="0" offset="1"/>
-  </linearGradient>
- </defs>
- <g id="layer1" transform="translate(0,-1020.3622)">
-  <g id="layer1-9" transform="translate(1.0000011,1020.3622)">
-   <path id="path8660" opacity="0.29946522" style="color:#000000;" d="m40.482,36.421a15.645,8.3969,0,1,1,-31.289,0,15.645,8.3969,0,1,1,31.289,0z" fill-rule="evenodd" transform="matrix(-0.847458,0,0,0.847458,37.46345,-10.18573)" fill="url(#radialGradient1992)"/>
-   <path id="path8643" stroke-linejoin="round" style="color:#000000;stroke-dasharray:none;" d="m26.453,10.472,0.04687,11.046-8.9853,0,0,5.9819l-14.015-11.425,14.01-11.589-0.04687,5.9893,8.9896-0.0036z" fill-rule="evenodd" stroke-dashoffset="0" stroke="#3a7304" stroke-linecap="round" stroke-miterlimit="10" stroke-width="1.00000072" fill="url(#radialGradient2004)"/>
-   <path id="path8645" opacity="0.5080214" style="color:#000000;" d="m17.065,5.3254,0,5.6956,8.9193,0,0,5.6895c-11.706-4.2-11.15,3.559-21.807-0.642l12.888-10.743z" fill-rule="evenodd" fill="url(#radialGradient2001)"/>
-   <path id="path8658" opacity="0.48128339" stroke-linejoin="miter" style="color:#000000;stroke-dasharray:none;" d="m25.5,11.502,0,9.0144-8.9812,0,0,4.9833l-11.47-9.464,11.481-9.535v5.0054l8.9704-0.0031z" stroke-dashoffset="0" stroke="#FFF" stroke-linecap="butt" stroke-miterlimit="10" stroke-width="1.00000048" fill="none"/>
-  </g>
-  <g id="g3892">
-   <path id="path8660-9" opacity="0.29946522" style="color:#000000;" d="m40.482,36.421a15.645,8.3969,0,1,1,-31.289,0,15.645,8.3969,0,1,1,31.289,0z" fill-rule="evenodd" transform="matrix(0.847458,0,0,0.847458,26.898465,1010.2943)" fill="url(#radialGradient1992)"/>
-   <g id="g3583" transform="translate(-1.3113835,-0.4798)">
-    <path id="path8643-6" stroke-linejoin="round" style="color:#000000;stroke-dasharray:none;" d="m37.811,1030.9,0,10.989,9.0648,0,0,5.9689,13.935-11.46-14.018-11.54,0,6.0457-8.9818,0z" fill-rule="evenodd" stroke-dashoffset="0" stroke="#3a7304" stroke-linecap="round" stroke-miterlimit="10" stroke-width="1.00000095" fill="url(#radialGradient3588)"/>
-    <path id="path8645-3" opacity="0.5080214" style="color:#000000;" d="m47.307,1025.9,0,5.5579-8.8983,0,0,5.6736c11.833,1.3333,11.752-5.0586,21.585-0.7253l-12.687-10.506z" fill-rule="evenodd" fill="url(#radialGradient3590)"/>
-    <path id="path8658-8" opacity="0.48128339" stroke-linejoin="miter" style="color:#000000;stroke-dasharray:none;" d="m38.811,1031.8,0,9.0074,9.0567,0,0,5.0159,11.464-9.5049-11.475-9.4951,0,4.9798-9.0459,0z" stroke-dashoffset="0" stroke="#FFF" stroke-linecap="butt" stroke-miterlimit="10" stroke-width="1.00000107" fill="none"/>
-   </g>
-  </g>
-  <g id="g3609">
-   <path id="path21642" opacity="0.63068183" style="color:#000000;" d="m40.875,36.75a15.75,9.375,0,1,1,-31.5,0,15.75,9.375,0,1,1,31.5,0z" fill-rule="evenodd" transform="matrix(0.782536,0,0,0.36,60.663725,1035.7572)" fill="url(#radialGradient3607)"/>
-   <path id="path9480" stroke-linejoin="miter" style="stroke-dasharray:none;" d="m74.333,1021.9,11.519,0,8.644,8.8292,0,12.065-8.5276,8.1027-11.751,0-8.7134-8.6568,0-11.594,8.8296-8.7468z" fill-rule="evenodd" stroke="#860000" stroke-linecap="butt" stroke-miterlimit="4" stroke-width="1.0000006" fill="url(#linearGradient3604)"/>
-   <path id="path2787" stroke-linejoin="round" style="stroke-dasharray:none;" d="m75.289,1028.9-2.7849,2.7853,4.9177,4.9183-4.9177,4.9184,2.7849,2.7853,4.9177-4.9184,4.9177,4.9184,2.7849-2.7853-4.9177-4.9184,4.9177-4.9183-2.7849-2.7853-4.9177,4.9183-4.9177-4.9183z" fill-rule="evenodd" stroke="url(#linearGradient3601)" stroke-linecap="round" stroke-miterlimit="4" stroke-width="0.80000001" fill="url(#radialGradient3599)"/>
-   <path id="path9482" opacity="0.81318683" stroke-linejoin="miter" d="m74.747,1022.9,10.689,0,8.0677,8.1824,0,11.273-7.8109,7.5425-11.045,0-8.1423-8.088,0-10.778,8.2414-8.1316z" stroke="url(#linearGradient3596)" stroke-linecap="butt" stroke-miterlimit="4" stroke-width="1.00000036" fill="none"/>
-   <path id="path2241" opacity="0.28977272" d="m74.527,1022.4-8.5228,8.5126,0,11.295,1.9351,1.9309c11.043,0.038,10.855-8.6495,26.063-7.8897v-5.2529l-8.3582-8.5956h-11.117z" fill-rule="evenodd" fill="url(#radialGradient3593)"/>
-  </g>
-  <g id="g3961">
-   <g id="g5022" fill-rule="nonzero" transform="matrix(0.01379016,0,0,0.01239639,156.26546,1048.1206)">
-    <rect id="rect4173" opacity="0.40206" style="color:#000000;" height="478.36" width="1339.6" y="-150.7" x="-1559.3" fill="url(#linearGradient3870)"/>
-    <path id="path5058" opacity="0.40206185" style="color:#000000;" d="m-219.62-150.68v478.33c142.87,0.90045,345.4-107.17,345.4-239.2s-159.44-239.13-345.4-239.13z" fill="url(#radialGradient3872)"/>
-    <path id="path5018" opacity="0.40206185" style="color:#000000;" d="m-1559.3-150.68v478.33c-142.87,0.90045-345.4-107.17-345.4-239.2s159.44-239.13,345.4-239.13z" fill="url(#radialGradient3874)"/>
-   </g>
-   <path id="rect1512" stroke-linejoin="miter" style="color:#000000;" d="m142.42,1025.8,3.9225,0c0.55289,0,9.1431,10.176,9.1431,10.773l-0.29203,12.194c0,0.5968-0.44511,1.0773-0.998,1.0773h-20.712c-0.55289,0-0.998-0.4805-0.998-1.0773l0.0372-12.194c0-0.5969,9.3443-10.773,9.8972-10.773z" fill-rule="nonzero" stroke-dashoffset="0" stroke="#757575" stroke-linecap="butt" stroke-miterlimit="4" stroke-width="1.00000083" fill="url(#linearGradient3864)"/>
-   <path id="path5" fill="none" d="m159.29,1050.9-30.217,0,0-30.217,30.217,0,0,30.217z"/>
-   <path id="path2327" fill-rule="evenodd" fill="url(#linearGradient3860)" d="m144,1039.4-0.0344,9.9962-8.8984,0-0.0838-9.9962,9.0165,0z"/>
-   <path id="path2357" opacity="0.3125" stroke-linejoin="miter" style="color:#000000;" d="m142.61,1026.6,3.5558,0c0.50121,0,8.3159,9.3803,8.3159,9.9305l-0.22206,11.864c0,0.2992-0.0919,0.4257-0.32774,0.4257l-20.077,0.01c-0.2358,0-0.37353-0.052-0.37353-0.2955l0.13774-12.004c0-0.5502,8.4892-9.9305,8.9905-9.9305z" stroke-dashoffset="0" stroke="#FFF" stroke-linecap="butt" stroke-miterlimit="4" stroke-width="1.0000006" fill="none"/>
-   <path id="path23" opacity="0.2" d="m132.79,1039-0.0362,1.7301,12.245-8.7861,10.191,7.4362,0.0476-0.2078-10.914-10.603-11.534,10.43z" fill-rule="evenodd" fill="url(#radialGradient3856)"/>
-   <path id="path188" fill-rule="evenodd" fill="url(#linearGradient3853)" d="m143.25,1040,0,9.3338-7.3717,0-0.14199-9.3338,7.5137,0z"/>
-   <path id="path2315" opacity="0.40909089" d="m141.43,1044.3c0.50552,0,0.91413,0.3144,0.91413,0.7012,0,0.3907-0.40861,0.7077-0.91413,0.7077-0.50513,0-0.91569-0.317-0.91569-0.7077,0.00039-0.3868,0.41056-0.7012,0.91569-0.7012z" fill-rule="evenodd" fill="url(#radialGradient3850)"/>
-   <path id="path217" fill-rule="evenodd" fill="url(#radialGradient3847)" d="m141.34,1044c0.50551,0,0.91413,0.3144,0.91413,0.7011,0,0.3907-0.40862,0.7077-0.91413,0.7077-0.50513,0-0.91569-0.317-0.91569-0.7077,0.00039-0.3867,0.41056-0.7011,0.91569-0.7011z"/>
-   <path id="path342" fill="url(#linearGradient3844)" d="m144.28,1028.1,12.618,11.447,0.32979,0.2613,0.26912-0.1142-0.24858-0.5078-0.18508-0.149-12.783-10.382-12.926,10.496-0.1584,0.096-0.14448,0.4712,0.28895,0.086,0.25637-0.2056,12.684-11.499z"/>
-   <path id="path362" stroke-linejoin="round" style="stroke-dasharray:none;" d="m144.2,1021.9-14.72,11.986,0,5,1,1s13.654-11.203,13.798-11.317l13.202,11.317,1-1v-4l-14.202-13.055-0.0784,0.07z" stroke="#a40000" stroke-miterlimit="4" stroke-width="0.80000001" fill="#ef2929"/>
-   <path id="path1536" opacity="0.40909089" style="color:#000000;" d="m129.98,1034.1,0,4.25,14.246-12.013-0.0469-3.9289-14.199,11.692z" fill-rule="nonzero" fill="url(#radialGradient3840)"/>
-   <path id="path2337" opacity="0.14901961" style="color:#000000;" d="m144.31,1026.2,0.0663-3.8941,13.589,12.76-0.0175,3.2098-13.637-12.075z" fill-rule="nonzero" fill="url(#radialGradient3837)"/>
-   <path id="rect2361" opacity="0.31818183" stroke-linejoin="miter" style="color:#000000;" d="m145.82,1039.2,6.6456,0c0.56648,0,1.0225,0.4065,1.0225,0.9114l-0.006,5.9496c0,0.505-0.43838,0.8296-1.0049,0.8296h-6.6574c-0.56649,0-1.0225-0.4065-1.0225-0.9115v-5.8677c0-0.5049,0.45605-0.9114,1.0225-0.9114z" stroke-dashoffset="0" stroke="#FFF" stroke-linecap="butt" stroke-miterlimit="4" stroke-width="1" fill="none"/>
-   <rect id="rect3263" stroke-linejoin="miter" style="color:#000000;stroke-dasharray:none;" fill-rule="nonzero" stroke-dashoffset="0" rx="0.26686" ry="0.22963" height="6" width="7" stroke="#757575" stroke-linecap="butt" stroke-miterlimit="4" y="1039.9" x="145.48" stroke-width="1" fill="#3465a4"/>
-   <path id="rect2363" opacity="0.39772728" style="color:#000000;" d="m146,1043.3c2.4359,0.1802,3.7217-0.787,5.9708-0.8452l0.0166-2.0954h-6l0.0126,2.9439z" fill-rule="nonzero" fill="url(#radialGradient3832)"/>
-  </g>
-  <g id="g3876">
-   <path id="path8660-0" opacity="0.38333333" style="color:#000000;" d="m40.482,36.421a15.645,8.3969,0,1,1,-31.289,0,15.645,8.3969,0,1,1,31.289,0z" fill-rule="evenodd" transform="matrix(-0.993158,0,0,-0.667502,137.20489,1070.0684)" fill="url(#radialGradient1992)"/>
-   <g id="g3667" transform="translate(-0.41059,1.42455)">
-    <path id="path2865" stroke-linejoin="miter" style="color:#000000;stroke-dasharray:none;" d="m109.96,1026.2s-5.9583-0.4039-4.125,6.3823h-5.125s0.33334-7.6749,9.25-6.3823z" fill-rule="nonzero" stroke-dashoffset="0" display="block" stroke="url(#linearGradient3683)" stroke-linecap="butt" stroke-miterlimit="4" stroke-width="1.00000024" fill="url(#linearGradient3681)"/>
-    <g id="g1878" transform="matrix(-0.386034,-0.316192,-0.326152,0.374245,134.46368,1028.1234)" stroke="#3465a4" stroke-width="1.52344131" fill="url(#linearGradient3685)">
-     <path id="path1880" stroke-linejoin="miter" style="color:#000000;stroke-dasharray:none;" d="M44.307,50.23c18.514-14.411,5.358-36.818-21.845-37.732l-0.348-9.3465-14.49,17.346,15.09,12.722s-0.25192-9.8812-0.25192-9.8812c18.83,0.99898,32.982,14.072,21.844,26.892z" fill-rule="nonzero" stroke-dashoffset="0" display="block" stroke="url(#linearGradient3687)" stroke-linecap="butt" stroke-miterlimit="4" stroke-width="2.00967717" fill="url(#linearGradient3685)"/>
-    </g>
-    <path id="path2839" stroke-linejoin="miter" style="color:#000000;stroke-dasharray:none;" d="m115.44,1041.5s5.9583,0.4046,4.125-6.3936h5.1839c0,0.9728-0.39226,7.6885-9.3089,6.3936z" fill-rule="nonzero" stroke-dashoffset="0" display="block" stroke="url(#linearGradient3693)" stroke-linecap="butt" stroke-miterlimit="4" stroke-width="1.00000012" fill="url(#linearGradient3691)"/>
-    <g id="g2779" stroke-linejoin="miter" style="color:#000000;stroke-dasharray:none;" fill-rule="nonzero" display="block" stroke-dashoffset="0" transform="matrix(0.386034,0.316753,0.326152,-0.374909,91.23907,1039.6243)" stroke="url(#linearGradient3687)" stroke-linecap="butt" stroke-miterlimit="4" stroke-width="2.00789738" fill="url(#linearGradient3695)">
-     <path id="path2781" stroke-linejoin="miter" style="color:#000000;stroke-dasharray:none;" d="M44.307,50.23c18.514-14.411,5.358-36.818-21.845-37.732l-0.063-9.429-14.605,17.355,14.668,12.582v-9.6684c18.83,0.99898,32.982,14.072,21.844,26.892z" fill-rule="nonzero" stroke-dashoffset="0" display="block" stroke="url(#linearGradient3687)" stroke-linecap="butt" stroke-miterlimit="4" stroke-width="2.00789738" fill="url(#linearGradient3695)"/>
-    </g>
-    <path id="path2791" opacity="0.27222224" style="color:#000000;" d="m101.42,1044.2-0.005-9.2715,8.1406-0.04-2.8009,3.2437,2.7032,1.7397c-2,1.4568-2.9393,1.3182-3.606,2.9773l-1.9248-1.4913-2.5069,2.8418z" fill-rule="nonzero" fill="#FFF"/>
-    <g id="g2793" opacity="0.5" transform="matrix(0.328713,0.262901,0.277723,-0.311169,94.451191,1039.6682)" stroke="#FFF" stroke-width="1.59006381" fill="none">
-     <path id="path2795" stroke-linejoin="miter" style="color:#000000;stroke-dasharray:none;" d="M51.77,46.731c9.12-15.22-5.305-35.305-33.483-34.489l-0.061-7.0152-11.692,14.07,11.502,9.847s0.05562-9.0069,0.05562-9.0069c23.572,0.79434,37.206,12.015,33.678,26.594z" stroke-dashoffset="0" display="block" stroke="url(#linearGradient3703)" stroke-linecap="butt" stroke-miterlimit="4" stroke-width="2.38841796" fill="none"/>
-    </g>
-    <g id="g2805" opacity="0.5" transform="matrix(-0.339024,-0.277687,-0.286434,0.328671,131.88578,1028.1196)" stroke="#FFF" stroke-width="1.52344131" fill="none">
-     <path id="path2807" stroke-linejoin="miter" style="color:#000000;stroke-dasharray:none;" d="M51.39,46.506c9.12-15.22-5.103-33.388-32.525-33.75l-0.203-6.8084-11.22,13.22,11.585,9.795s-0.31396-8.424-0.31396-8.424c22.406,0.47504,35.698,11.698,32.677,25.967z" stroke-dashoffset="0" display="block" stroke="url(#linearGradient3703)" stroke-linecap="butt" stroke-miterlimit="4" stroke-width="2.2883451" fill="none"/>
-    </g>
-    <path id="path2811" opacity="0.27222224" style="color:#000000;" d="m101.06,1030.1c1.8331-6.967,11.056-4.1901,13.552-3.1271,2.7835,0.1366,3.6269-1.4573,5.8438-1.564-9.3665-6.3273-18.708-4.0447-19.396,4.6911z" fill-rule="nonzero" fill="#FFF"/>
-   </g>
-  </g>
-  <g id="g3940">
-   <rect id="rect4173-6" opacity="0.40206" style="color:#000000;" fill-rule="nonzero" height="6.1523" width="21.113" y="1046.3" x="165.44" fill="url(#linearGradient3938)"/>
-   <path id="path5058-2" opacity="0.40206185" style="color:#000000;" d="m186.56,1046.3v6.152c2.2517,0.012,5.4436-1.3783,5.4436-3.0764,0-1.698-2.5128-3.0756-5.4436-3.0756z" fill-rule="nonzero" fill="url(#radialGradient3935)"/>
-   <path id="path5018-1" opacity="0.40206185" style="color:#000000;" d="m165.44,1046.3v6.152c-2.2517,0.012-5.4436-1.3783-5.4436-3.0764,0-1.698,2.5128-3.0756,5.4436-3.0756z" fill-rule="nonzero" fill="url(#radialGradient3932)"/>
-   <rect id="rect4652" rx="1.1157" ry="1.141" height="4.3277" width="25.057" stroke="#595959" stroke-miterlimit="4" y="1045.5" x="163.5" stroke-width="1" fill="url(#linearGradient3929)"/>
-   <path id="rect4609" stroke-linejoin="miter" style="color:#000000;" d="m164.89,1035.9,22.235,0c0.25375,0,0.57798,0.1972,0.77793,0.4953,0.19994,0.2982,1.1444,1.7858,1.3565,2.1033,0.21216,0.3175,0.25896,0.6185,0.25896,1.01v8.2631c0,0.6251-0.48239,1.1283-1.0816,1.1283h-24.859c-0.59921,0-1.0816-0.5032-1.0816-1.1283v-8.2631c0-0.3381,0.0667-0.8227,0.29419-1.1313,0.2871-0.3893,1.0573-1.7433,1.2604-2.0304,0.20315-0.2872,0.57619-0.4469,0.83877-0.4469z" fill-rule="nonzero" stroke-dashoffset="0" stroke="#676767" stroke-linecap="butt" stroke-miterlimit="4" stroke-width="1.00000072" fill="url(#linearGradient3926)"/>
-   <path id="path4718" fill-rule="evenodd" fill="#fbfbfb" d="m165.21,1036.4c-0.32896,0-0.75194,0.078-0.92539,0.3188l-1.2146,1.6835c-0.19552,0.271,0.0222,0.9098,0.61055,0.9098h24.632c0.79582,0,0.79814-0.6012,0.61054-0.8572l-1.1567-1.5782c-0.20974-0.2862-0.28587-0.4767-0.80972-0.4767h-21.747z"/>
-   <path id="path4750" stroke-linejoin="miter" style="color:#000000;" d="m165.48,1036.8,21.024,0c0.23419,0,0.53343,0.1765,0.71796,0.4435,0.18454,0.2671,0.83016,1.3133,1.026,1.5976,0.19581,0.2843,0.27896,0.5539,0.27896,0.9045v7.2992c0,0.5598-0.0856,0.8082-0.63867,0.8082h-23.736c-0.55303,0-0.67863-0.2484-0.67863-0.8082v-7.2992c0-0.3027,0.14144-0.7368,0.35143-1.0131,0.26497-0.3486,0.69329-1.2752,0.88078-1.5323,0.18749-0.2572,0.53178-0.4002,0.77413-0.4002z" stroke-dashoffset="0" stroke="url(#linearGradient3922)" stroke-linecap="butt" stroke-miterlimit="4" stroke-width="0.9469679" fill="none"/>
-   <path id="rect15391" stroke-linejoin="miter" style="color:#000000;" d="m167.33,1023.9,17.347,0c0.45791,0,0.82657,0.3529,0.82657,0.7913v12.941h-19v-12.941c0-0.4384,0.36865-0.7913,0.82657-0.7913z" fill-rule="nonzero" stroke-dashoffset="0" display="block" stroke="#898989" stroke-linecap="round" stroke-miterlimit="4" stroke-width="1.00000083" fill="url(#linearGradient3919)"/>
-   <rect id="rect15660" stroke-linejoin="round" style="color:#000000;" display="block" stroke-dashoffset="0" rx="0.12007" ry="0.11941" height="12.724" width="16.981" stroke="url(#linearGradient3916)" stroke-linecap="round" stroke-miterlimit="4" y="1024.9" x="167.52" stroke-width="1" fill="none"/>
-   <rect id="rect4678" rx="1.1157" ry="1.0723" height="3.25" width="22" stroke="url(#linearGradient3913)" stroke-miterlimit="4" y="1039.6" x="164.5" stroke-width="1" fill="url(#linearGradient3911)"/>
-   <path id="path4696" fill="url(#radialGradient3821)" d="m10.872,27.626a1.2816,1.2816,0,1,1,-2.5633,0,1.2816,1.2816,0,1,1,2.5633,0z" transform="matrix(0.666667,0,0,0.666667,160.58599,1022.3401)"/>
-   <path id="path4731" opacity="0.36571428" d="m167.68,1038.4,17.042,0.038c0.45833,0,0.65855-0.2238,0.625-0.6031l-0.0833-0.9423h1.2441c0.54167,0,0.66014,0.1162,0.79167,0.3393l0.33333,0.5653c0.3512,0.5957,1.2074,1.1905,0.33211,1.1905-3.0018,0-18.785-0.2105-20.285-0.5874z" fill-rule="evenodd" fill="url(#linearGradient3907)"/>
-   <path id="path4760" stroke-linejoin="round" d="m188.47,1039-24.975,0" stroke="#FFF" stroke-linecap="round" stroke-width="1.00000048px" fill="none"/>
-   <g id="g4849" opacity="0.43575416" fill-opacity="0.29239765" fill-rule="nonzero" transform="matrix(0.684243,0,0,0.993056,159.41998,1019.4386)" fill="#000">
-    <rect id="rect4833" style="color:#000000;" height="1" width="19" y="7" x="14"/>
-    <rect id="rect4835" style="color:#000000;" height="1" width="19" y="9" x="14"/>
-    <rect id="rect4837" style="color:#000000;" height="1" width="19" y="11" x="14"/>
-    <rect id="rect4839" style="color:#000000;" height="1" width="11" y="13" x="14"/>
-   </g>
-   <path id="path8643-7" style="color:#000000;" fill-rule="evenodd" fill="#a7a7a7" d="m173.99,1034.4,5.0626,0,0-1.9842,1.9686-0.031-4.5899-6.0785-5.0468,6.053,2.607,0-0.001,2.0409z"/>
-  </g>
- </g>
-</svg>
diff --git a/reactos/dll/win32/shdocvw/iexplore.c b/reactos/dll/win32/shdocvw/iexplore.c
deleted file mode 100644 (file)
index 523d191..0000000
+++ /dev/null
@@ -1,830 +0,0 @@
-/*
- * SHDOCVW - Internet Explorer main frame window
- *
- * Copyright 2006 Mike McCormack (for CodeWeavers)
- * Copyright 2006 Jacek Caban (for CodeWeavers)
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-#define COBJMACROS
-
-//#include <stdarg.h>
-//#include "windef.h"
-//#include "winbase.h"
-//#include "winuser.h"
-//#include "wingdi.h"
-//#include "winnls.h"
-//#include "ole2.h"
-//#include "exdisp.h"
-//#include "oleidl.h"
-
-#include "shdocvw.h"
-#include <mshtmcid.h>
-//#include "shellapi.h"
-//#include "winreg.h"
-#include <shlwapi.h>
-#include <intshcut.h>
-
-#include <wine/debug.h>
-
-WINE_DEFAULT_DEBUG_CHANNEL(shdocvw);
-
-#define IDI_APPICON 1
-
-#define DOCHOST_THIS(iface) DEFINE_THIS2(InternetExplorer,doc_host,iface)
-
-static const WCHAR szIEWinFrame[] = { 'I','E','F','r','a','m','e',0 };
-
-/* Windows uses "Microsoft Internet Explorer" */
-static const WCHAR wszWineInternetExplorer[] =
-        {'W','i','n','e',' ','I','n','t','e','r','n','e','t',' ','E','x','p','l','o','r','e','r',0};
-
-HRESULT update_ie_statustext(InternetExplorer* This, LPCWSTR text)
-{
-    if(!SendMessageW(This->status_hwnd, SB_SETTEXTW, MAKEWORD(SB_SIMPLEID, 0), (LPARAM)text))
-        return E_FAIL;
-
-    return S_OK;
-}
-
-static void adjust_ie_docobj_rect(HWND frame, RECT* rc)
-{
-    HWND hwndRebar = GetDlgItem(frame, IDC_BROWSE_REBAR);
-    HWND hwndStatus = GetDlgItem(frame, IDC_BROWSE_STATUSBAR);
-    INT barHeight = SendMessageW(hwndRebar, RB_GETBARHEIGHT, 0, 0);
-
-    rc->top += barHeight;
-    rc->bottom -= barHeight;
-
-    if(IsWindowVisible(hwndStatus))
-    {
-        RECT statusrc;
-
-        GetClientRect(hwndStatus, &statusrc);
-        rc->bottom -= statusrc.bottom - statusrc.top;
-    }
-}
-
-static HMENU get_tb_menu(HMENU menu)
-{
-    HMENU menu_view = GetSubMenu(menu, 1);
-
-    return GetSubMenu(menu_view, 0);
-}
-
-static HMENU get_fav_menu(HMENU menu)
-{
-    return GetSubMenu(menu, 2);
-}
-
-static LPWSTR get_fav_url_from_id(HMENU menu, UINT id)
-{
-    MENUITEMINFOW item;
-
-    item.cbSize = sizeof(item);
-    item.fMask = MIIM_DATA;
-
-    if(!GetMenuItemInfoW(menu, id, FALSE, &item))
-        return NULL;
-
-    return (LPWSTR)item.dwItemData;
-}
-
-static void free_fav_menu_data(HMENU menu)
-{
-    LPWSTR url;
-    int i;
-
-    for(i = 0; (url = get_fav_url_from_id(menu, ID_BROWSE_GOTOFAV_FIRST + i)); i++)
-        heap_free( url );
-}
-
-static int get_menu_item_count(HMENU menu)
-{
-    MENUITEMINFOW item;
-    int count = 0;
-    int i;
-
-    item.cbSize = sizeof(item);
-    item.fMask = MIIM_DATA | MIIM_SUBMENU;
-
-    for(i = 0; GetMenuItemInfoW(menu, i, TRUE, &item); i++)
-    {
-        if(item.hSubMenu)
-            count += get_menu_item_count(item.hSubMenu);
-        else
-            count++;
-    }
-
-    return count;
-}
-
-static void add_fav_to_menu(HMENU favmenu, HMENU menu, LPWSTR title, LPCWSTR url)
-{
-    MENUITEMINFOW item;
-    /* Subtract the number of standard elements in the Favorites menu */
-    int favcount = get_menu_item_count(favmenu) - 2;
-    LPWSTR urlbuf;
-
-    if(favcount > (ID_BROWSE_GOTOFAV_MAX - ID_BROWSE_GOTOFAV_FIRST))
-    {
-        FIXME("Add support for more than %d Favorites\n", favcount);
-        return;
-    }
-
-    urlbuf = heap_alloc((lstrlenW(url) + 1) * sizeof(WCHAR));
-
-    if(!urlbuf)
-        return;
-
-    lstrcpyW(urlbuf, url);
-
-    item.cbSize = sizeof(item);
-    item.fMask = MIIM_FTYPE | MIIM_STRING | MIIM_DATA | MIIM_ID;
-    item.fType = MFT_STRING;
-    item.dwTypeData = title;
-    item.wID = ID_BROWSE_GOTOFAV_FIRST + favcount;
-    item.dwItemData = (ULONG_PTR)urlbuf;
-    InsertMenuItemW(menu, -1, TRUE, &item);
-}
-
-static void add_favs_to_menu(HMENU favmenu, HMENU menu, LPCWSTR dir)
-{
-    WCHAR path[MAX_PATH*2];
-    const WCHAR search[] = {'*',0};
-    WCHAR* filename;
-    HANDLE findhandle;
-    WIN32_FIND_DATAW finddata;
-    IUniformResourceLocatorW* urlobj;
-    IPersistFile* urlfile;
-    HRESULT res;
-
-    lstrcpyW(path, dir);
-    PathAppendW(path, search);
-
-    findhandle = FindFirstFileW(path, &finddata);
-
-    if(findhandle == INVALID_HANDLE_VALUE)
-        return;
-
-    res = CoCreateInstance(&CLSID_InternetShortcut, NULL, CLSCTX_INPROC_SERVER, &IID_IUniformResourceLocatorW, (PVOID*)&urlobj);
-
-    if(SUCCEEDED(res))
-        res = IUnknown_QueryInterface(urlobj, &IID_IPersistFile, (PVOID*)&urlfile);
-
-    if(SUCCEEDED(res))
-    {
-        filename = path + lstrlenW(path) - lstrlenW(search);
-
-        do
-        {
-            lstrcpyW(filename, finddata.cFileName);
-
-            if(finddata.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
-            {
-                MENUITEMINFOW item;
-                const WCHAR ignore1[] = {'.','.',0};
-                const WCHAR ignore2[] = {'.',0};
-
-                if(!lstrcmpW(filename, ignore1) || !lstrcmpW(filename, ignore2))
-                    continue;
-
-                item.cbSize = sizeof(item);
-                item.fMask = MIIM_STRING | MIIM_SUBMENU;
-                item.dwTypeData = filename;
-                item.hSubMenu = CreatePopupMenu();
-                InsertMenuItemW(menu, -1, TRUE, &item);
-                add_favs_to_menu(favmenu, item.hSubMenu, path);
-            } else
-            {
-                WCHAR* fileext;
-                WCHAR* url = NULL;
-                const WCHAR urlext[] = {'.','u','r','l',0};
-
-                if(lstrcmpiW(PathFindExtensionW(filename), urlext))
-                    continue;
-
-                if(FAILED(IPersistFile_Load(urlfile, path, 0)))
-                    continue;
-
-                urlobj->lpVtbl->GetURL(urlobj, &url);
-
-                if(!url)
-                    continue;
-
-                fileext = filename + lstrlenW(filename) - lstrlenW(urlext);
-                *fileext = 0;
-                add_fav_to_menu(favmenu, menu, filename, url);
-            }
-        } while(FindNextFileW(findhandle, &finddata));
-    }
-
-    if(urlfile)
-        IPersistFile_Release(urlfile);
-
-    if(urlobj)
-        IUnknown_Release(urlobj);
-
-    FindClose(findhandle);
-}
-
-static void add_tbs_to_menu(HMENU menu)
-{
-    HUSKEY toolbar_handle;
-    WCHAR toolbar_key[] = {'S','o','f','t','w','a','r','e','\\',
-                           'M','i','c','r','o','s','o','f','t','\\',
-                           'I','n','t','e','r','n','e','t',' ',
-                           'E','x','p','l','o','r','e','r','\\',
-                           'T','o','o','l','b','a','r',0};
-
-    if(SHRegOpenUSKeyW(toolbar_key, KEY_READ, NULL, &toolbar_handle, TRUE) == ERROR_SUCCESS)
-    {
-        HUSKEY classes_handle;
-        WCHAR classes_key[] = {'S','o','f','t','w','a','r','e','\\',
-                               'C','l','a','s','s','e','s','\\','C','L','S','I','D',0};
-        WCHAR guid[39];
-        DWORD value_len = sizeof(guid)/sizeof(guid[0]);
-        int i;
-
-        if(SHRegOpenUSKeyW(classes_key, KEY_READ, NULL, &classes_handle, TRUE) != ERROR_SUCCESS)
-        {
-            SHRegCloseUSKey(toolbar_handle);
-            ERR("Failed to open key %s\n", debugstr_w(classes_key));
-            return;
-        }
-
-        for(i = 0; SHRegEnumUSValueW(toolbar_handle, i, guid, &value_len, NULL, NULL, NULL, SHREGENUM_HKLM) == ERROR_SUCCESS; i++)
-        {
-            WCHAR tb_name[100];
-            DWORD tb_name_len = sizeof(tb_name)/sizeof(tb_name[0]);
-            HUSKEY tb_class_handle;
-            MENUITEMINFOW item;
-            LSTATUS ret;
-            value_len = sizeof(guid)/sizeof(guid[0]);
-
-            if(lstrlenW(guid) != 38)
-            {
-                TRACE("Found invalid IE toolbar entry: %s\n", debugstr_w(guid));
-                continue;
-            }
-
-            if(SHRegOpenUSKeyW(guid, KEY_READ, classes_handle, &tb_class_handle, TRUE) != ERROR_SUCCESS)
-            {
-                ERR("Failed to get class info for %s\n", debugstr_w(guid));
-                continue;
-            }
-
-            ret = SHRegQueryUSValueW(tb_class_handle, NULL, NULL, tb_name, &tb_name_len, TRUE, NULL, 0);
-
-            SHRegCloseUSKey(tb_class_handle);
-
-            if(ret != ERROR_SUCCESS)
-            {
-                ERR("Failed to get toolbar name for %s\n", debugstr_w(guid));
-                continue;
-            }
-
-            item.cbSize = sizeof(item);
-            item.fMask = MIIM_STRING;
-            item.dwTypeData = tb_name;
-            InsertMenuItemW(menu, GetMenuItemCount(menu), TRUE, &item);
-        }
-
-        SHRegCloseUSKey(classes_handle);
-        SHRegCloseUSKey(toolbar_handle);
-    }
-}
-
-static HMENU create_ie_menu(void)
-{
-    HMENU menu = LoadMenuW(shdocvw_hinstance, MAKEINTRESOURCEW(IDR_BROWSE_MAIN_MENU));
-    HMENU favmenu = get_fav_menu(menu);
-    WCHAR path[MAX_PATH];
-
-    add_tbs_to_menu(get_tb_menu(menu));
-
-    if(SHGetFolderPathW(NULL, CSIDL_COMMON_FAVORITES, NULL, SHGFP_TYPE_CURRENT, path) == S_OK)
-        add_favs_to_menu(favmenu, favmenu, path);
-
-    if(SHGetFolderPathW(NULL, CSIDL_FAVORITES, NULL, SHGFP_TYPE_CURRENT, path) == S_OK)
-        add_favs_to_menu(favmenu, favmenu, path);
-
-    return menu;
-}
-
-static void ie_navigate(InternetExplorer* This, LPCWSTR url)
-{
-    VARIANT variant;
-
-    V_VT(&variant) = VT_BSTR;
-    V_BSTR(&variant) = SysAllocString(url);
-
-    IWebBrowser2_Navigate2(WEBBROWSER2(This), &variant, NULL, NULL, NULL, NULL);
-
-    SysFreeString(V_BSTR(&variant));
-}
-
-static INT_PTR CALLBACK ie_dialog_open_proc(HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam)
-{
-    static InternetExplorer* This;
-
-    switch(msg)
-    {
-        case WM_INITDIALOG:
-            This = (InternetExplorer*)lparam;
-            EnableWindow(GetDlgItem(hwnd, IDOK), FALSE);
-            return TRUE;
-
-        case WM_COMMAND:
-            switch(LOWORD(wparam))
-            {
-                case IDC_BROWSE_OPEN_URL:
-                {
-                    HWND hwndurl = GetDlgItem(hwnd, IDC_BROWSE_OPEN_URL);
-                    int len = GetWindowTextLengthW(hwndurl);
-
-                    EnableWindow(GetDlgItem(hwnd, IDOK), len ? TRUE : FALSE);
-                    break;
-                }
-                case IDOK:
-                {
-                    HWND hwndurl = GetDlgItem(hwnd, IDC_BROWSE_OPEN_URL);
-                    int len = GetWindowTextLengthW(hwndurl);
-
-                    if(len)
-                    {
-                        VARIANT url;
-
-                        V_VT(&url) = VT_BSTR;
-                        V_BSTR(&url) = SysAllocStringLen(NULL, len);
-
-                        GetWindowTextW(hwndurl, V_BSTR(&url), len + 1);
-                        IWebBrowser2_Navigate2(WEBBROWSER2(This), &url, NULL, NULL, NULL, NULL);
-
-                        SysFreeString(V_BSTR(&url));
-                    }
-                }
-                /* fall through */
-                case IDCANCEL:
-                    EndDialog(hwnd, wparam);
-                    return TRUE;
-            }
-    }
-    return FALSE;
-}
-
-static void ie_dialog_about(HWND hwnd)
-{
-    HICON icon = LoadImageW(GetModuleHandleW(0), MAKEINTRESOURCEW(IDI_APPICON), IMAGE_ICON, 48, 48, LR_SHARED);
-
-    ShellAboutW(hwnd, wszWineInternetExplorer, NULL, icon);
-
-    DestroyIcon(icon);
-}
-
-static void add_tb_separator(HWND hwnd)
-{
-    TBBUTTON btn;
-
-    ZeroMemory(&btn, sizeof(btn));
-
-    btn.iBitmap = 3;
-    btn.fsStyle = BTNS_SEP;
-    SendMessageW(hwnd, TB_ADDBUTTONSW, 1, (LPARAM)&btn);
-}
-
-static void add_tb_button(HWND hwnd, int bmp, int cmd, int strId)
-{
-    TBBUTTON btn;
-    WCHAR buf[30];
-
-    LoadStringW(shdocvw_hinstance, strId, buf, sizeof(buf)/sizeof(buf[0]));
-
-    btn.iBitmap = bmp;
-    btn.idCommand = cmd;
-    btn.fsState = TBSTATE_ENABLED;
-    btn.fsStyle = BTNS_SHOWTEXT;
-    btn.dwData = 0;
-    btn.iString = (INT_PTR)buf;
-
-    SendMessageW(hwnd, TB_ADDBUTTONSW, 1, (LPARAM)&btn);
-}
-
-static void create_rebar(HWND hwnd)
-{
-    HWND hwndRebar;
-    HWND hwndAddress;
-    HWND hwndToolbar;
-    REBARINFO rebarinf;
-    REBARBANDINFOW bandinf;
-    WCHAR addr[40];
-    HIMAGELIST imagelist;
-    WCHAR idb_ietoolbar[] = {'I','D','B','_','I','E','T','O','O','L','B','A','R',0};
-
-    LoadStringW(shdocvw_hinstance, IDS_ADDRESS, addr, sizeof(addr)/sizeof(addr[0]));
-
-    hwndRebar = CreateWindowExW(WS_EX_TOOLWINDOW, REBARCLASSNAMEW, NULL, WS_CHILD|WS_VISIBLE|WS_CLIPSIBLINGS|WS_CLIPCHILDREN|RBS_VARHEIGHT|CCS_TOP|CCS_NODIVIDER, 0, 0, 0, 0, hwnd, (HMENU)IDC_BROWSE_REBAR, shdocvw_hinstance, NULL);
-
-    rebarinf.cbSize = sizeof(rebarinf);
-    rebarinf.fMask = 0;
-    rebarinf.himl = NULL;
-    rebarinf.cbSize = sizeof(rebarinf);
-
-    SendMessageW(hwndRebar, RB_SETBARINFO, 0, (LPARAM)&rebarinf);
-
-    hwndToolbar = CreateWindowExW(TBSTYLE_EX_MIXEDBUTTONS, TOOLBARCLASSNAMEW, NULL, TBSTYLE_FLAT | WS_CHILD | WS_VISIBLE, 0, 0, 0, 0, hwndRebar, (HMENU)IDC_BROWSE_TOOLBAR, shdocvw_hinstance, NULL);
-
-    imagelist = ImageList_LoadImageW(shdocvw_hinstance, idb_ietoolbar, 32, 0, CLR_NONE, IMAGE_BITMAP, LR_CREATEDIBSECTION);
-
-    SendMessageW(hwndToolbar, TB_SETIMAGELIST, 0, (LPARAM)imagelist);
-    SendMessageW(hwndToolbar, TB_BUTTONSTRUCTSIZE, sizeof(TBBUTTON), 0);
-    add_tb_button(hwndToolbar, 0, 0, IDS_TB_BACK);
-    add_tb_button(hwndToolbar, 1, 0, IDS_TB_FORWARD);
-    add_tb_button(hwndToolbar, 2, 0, IDS_TB_STOP);
-    add_tb_button(hwndToolbar, 3, 0, IDS_TB_REFRESH);
-    add_tb_button(hwndToolbar, 4, ID_BROWSE_HOME, IDS_TB_HOME);
-    add_tb_separator(hwndToolbar);
-    add_tb_button(hwndToolbar, 5, ID_BROWSE_PRINT, IDS_TB_PRINT);
-    SendMessageW(hwndToolbar, TB_SETBUTTONSIZE, 0, MAKELPARAM(55,50));
-    SendMessageW(hwndToolbar, TB_AUTOSIZE, 0, 0);
-
-    bandinf.cbSize = sizeof(bandinf);
-    bandinf.fMask = RBBIM_STYLE | RBBIM_CHILD | RBBIM_CHILDSIZE | RBBIM_SIZE;
-    bandinf.fStyle = RBBS_CHILDEDGE;
-    bandinf.cx = 100;
-    bandinf.cyMinChild = 52;
-    bandinf.hwndChild = hwndToolbar;
-
-    SendMessageW(hwndRebar, RB_INSERTBANDW, -1, (LPARAM)&bandinf);
-
-    hwndAddress = CreateWindowExW(0, WC_COMBOBOXEXW, NULL, WS_BORDER|WS_CHILD|WS_VISIBLE|CBS_DROPDOWN, 0, 0, 100,20,hwndRebar, (HMENU)IDC_BROWSE_ADDRESSBAR, shdocvw_hinstance, NULL);
-
-    bandinf.fMask |= RBBIM_TEXT;
-    bandinf.fStyle = RBBS_CHILDEDGE | RBBS_BREAK;
-    bandinf.lpText = addr;
-    bandinf.cyMinChild = 20;
-    bandinf.hwndChild = hwndAddress;
-
-    SendMessageW(hwndRebar, RB_INSERTBANDW, -1, (LPARAM)&bandinf);
-}
-
-static LRESULT iewnd_OnCreate(HWND hwnd, LPCREATESTRUCTW lpcs)
-{
-    InternetExplorer* This = (InternetExplorer*)lpcs->lpCreateParams;
-    SetWindowLongPtrW(hwnd, 0, (LONG_PTR) lpcs->lpCreateParams);
-
-    This->menu = create_ie_menu();
-
-    This->status_hwnd = CreateStatusWindowW(CCS_NODIVIDER|WS_CHILD|WS_VISIBLE, NULL, hwnd, IDC_BROWSE_STATUSBAR);
-    SendMessageW(This->status_hwnd, SB_SIMPLE, TRUE, 0);
-
-    create_rebar(hwnd);
-
-    return 0;
-}
-
-static LRESULT iewnd_OnSize(InternetExplorer *This, INT width, INT height)
-{
-    HWND hwndRebar = GetDlgItem(This->frame_hwnd, IDC_BROWSE_REBAR);
-    INT barHeight = SendMessageW(hwndRebar, RB_GETBARHEIGHT, 0, 0);
-    RECT docarea = {0, 0, width, height};
-
-    SendMessageW(This->status_hwnd, WM_SIZE, 0, 0);
-
-    adjust_ie_docobj_rect(This->frame_hwnd, &docarea);
-
-    if(This->doc_host.hwnd)
-        SetWindowPos(This->doc_host.hwnd, NULL, docarea.left, docarea.top, docarea.right, docarea.bottom,
-                     SWP_NOZORDER | SWP_NOACTIVATE);
-
-    SetWindowPos(hwndRebar, NULL, 0, 0, width, barHeight, SWP_NOZORDER | SWP_NOACTIVATE);
-
-    return 0;
-}
-
-static LRESULT iewnd_OnNotify(InternetExplorer *This, WPARAM wparam, LPARAM lparam)
-{
-    NMHDR* hdr = (NMHDR*)lparam;
-
-    if(hdr->idFrom == IDC_BROWSE_ADDRESSBAR && hdr->code == CBEN_ENDEDITW)
-    {
-        NMCBEENDEDITW* info = (NMCBEENDEDITW*)lparam;
-
-        if(info->fChanged && info->iWhy == CBENF_RETURN && info->szText)
-        {
-            VARIANT vt;
-
-            V_VT(&vt) = VT_BSTR;
-            V_BSTR(&vt) = SysAllocString(info->szText);
-
-            IWebBrowser2_Navigate2(WEBBROWSER2(This), &vt, NULL, NULL, NULL, NULL);
-
-            SysFreeString(V_BSTR(&vt));
-
-            return 0;
-        }
-    }
-
-    return 0;
-}
-
-static LRESULT iewnd_OnDestroy(InternetExplorer *This)
-{
-    HWND hwndRebar = GetDlgItem(This->frame_hwnd, IDC_BROWSE_REBAR);
-    HWND hwndToolbar = GetDlgItem(hwndRebar, IDC_BROWSE_TOOLBAR);
-    HIMAGELIST list = (HIMAGELIST)SendMessageW(hwndToolbar, TB_GETIMAGELIST, 0, 0);
-
-    TRACE("%p\n", This);
-
-    free_fav_menu_data(get_fav_menu(This->menu));
-    ImageList_Destroy(list);
-    This->frame_hwnd = NULL;
-    PostQuitMessage(0); /* FIXME */
-
-    return 0;
-}
-
-static LRESULT iewnd_OnCommand(InternetExplorer *This, HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam)
-{
-    switch(LOWORD(wparam))
-    {
-        case ID_BROWSE_OPEN:
-            DialogBoxParamW(shdocvw_hinstance, MAKEINTRESOURCEW(IDD_BROWSE_OPEN), hwnd, ie_dialog_open_proc, (LPARAM)This);
-            break;
-
-        case ID_BROWSE_PRINT:
-            if(This->doc_host.document)
-            {
-                IOleCommandTarget* target;
-
-                if(FAILED(IUnknown_QueryInterface(This->doc_host.document, &IID_IOleCommandTarget, (LPVOID*)&target)))
-                    break;
-
-                IOleCommandTarget_Exec(target, &CGID_MSHTML, IDM_PRINT, OLECMDEXECOPT_DODEFAULT, NULL, NULL);
-
-                IOleCommandTarget_Release(target);
-            }
-            break;
-
-        case ID_BROWSE_HOME:
-            IWebBrowser2_GoHome(WEBBROWSER2(This));
-            break;
-
-        case ID_BROWSE_ABOUT:
-            ie_dialog_about(hwnd);
-            break;
-
-        case ID_BROWSE_QUIT:
-            iewnd_OnDestroy(This);
-            break;
-
-        default:
-            if(LOWORD(wparam) >= ID_BROWSE_GOTOFAV_FIRST && LOWORD(wparam) <= ID_BROWSE_GOTOFAV_MAX)
-            {
-                LPCWSTR url = get_fav_url_from_id(get_fav_menu(This->menu), LOWORD(wparam));
-
-                if(url)
-                    ie_navigate(This, url);
-            }
-            return DefWindowProcW(hwnd, msg, wparam, lparam);
-    }
-    return 0;
-}
-
-static LRESULT update_addrbar(InternetExplorer *This, LPARAM lparam)
-{
-    HWND hwndRebar = GetDlgItem(This->frame_hwnd, IDC_BROWSE_REBAR);
-    HWND hwndAddress = GetDlgItem(hwndRebar, IDC_BROWSE_ADDRESSBAR);
-    HWND hwndEdit = (HWND)SendMessageW(hwndAddress, CBEM_GETEDITCONTROL, 0, 0);
-    LPCWSTR url = (LPCWSTR)lparam;
-
-    SendMessageW(hwndEdit, WM_SETTEXT, 0, (LPARAM)url);
-
-    return 0;
-}
-
-static LRESULT CALLBACK
-ie_window_proc(HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam)
-{
-    InternetExplorer *This = (InternetExplorer*) GetWindowLongPtrW(hwnd, 0);
-
-    switch (msg)
-    {
-    case WM_CREATE:
-        return iewnd_OnCreate(hwnd, (LPCREATESTRUCTW)lparam);
-    case WM_DESTROY:
-        return iewnd_OnDestroy(This);
-    case WM_SIZE:
-        return iewnd_OnSize(This, LOWORD(lparam), HIWORD(lparam));
-    case WM_COMMAND:
-        return iewnd_OnCommand(This, hwnd, msg, wparam, lparam);
-    case WM_NOTIFY:
-        return iewnd_OnNotify(This, wparam, lparam);
-    case WM_DOCHOSTTASK:
-        return process_dochost_task(&This->doc_host, lparam);
-    case WM_UPDATEADDRBAR:
-        return update_addrbar(This, lparam);
-    }
-    return DefWindowProcW(hwnd, msg, wparam, lparam);
-}
-
-void register_iewindow_class(void)
-{
-    WNDCLASSEXW wc;
-
-    memset(&wc, 0, sizeof wc);
-    wc.cbSize = sizeof(wc);
-    wc.style = 0;
-    wc.lpfnWndProc = ie_window_proc;
-    wc.cbClsExtra = 0;
-    wc.cbWndExtra = sizeof(InternetExplorer*);
-    wc.hInstance = shdocvw_hinstance;
-    wc.hIcon = LoadIconW(GetModuleHandleW(0), MAKEINTRESOURCEW(IDI_APPICON));
-    wc.hIconSm = LoadImageW(GetModuleHandleW(0), MAKEINTRESOURCEW(IDI_APPICON), IMAGE_ICON,
-                            GetSystemMetrics(SM_CXSMICON), GetSystemMetrics(SM_CYSMICON), LR_SHARED);
-    wc.hCursor = LoadCursorW(0, MAKEINTRESOURCEW(IDC_ARROW));
-    wc.hbrBackground = 0;
-    wc.lpszClassName = szIEWinFrame;
-    wc.lpszMenuName = NULL;
-
-    RegisterClassExW(&wc);
-}
-
-void unregister_iewindow_class(void)
-{
-    UnregisterClassW(szIEWinFrame, shdocvw_hinstance);
-}
-
-static void create_frame_hwnd(InternetExplorer *This)
-{
-    This->frame_hwnd = CreateWindowExW(
-            WS_EX_WINDOWEDGE,
-            szIEWinFrame, wszWineInternetExplorer,
-            WS_CLIPCHILDREN | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME
-                | WS_MINIMIZEBOX | WS_MAXIMIZEBOX,
-            CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT,
-            NULL, NULL /* FIXME */, shdocvw_hinstance, This);
-}
-
-static IWebBrowser2 *create_ie_window(LPCSTR cmdline)
-{
-    IWebBrowser2 *wb = NULL;
-
-    InternetExplorer_Create(NULL, &IID_IWebBrowser2, (void**)&wb);
-    if(!wb)
-        return NULL;
-
-    IWebBrowser2_put_Visible(wb, VARIANT_TRUE);
-    IWebBrowser2_put_MenuBar(wb, VARIANT_TRUE);
-
-    if(!*cmdline) {
-        IWebBrowser2_GoHome(wb);
-    }else {
-        VARIANT var_url;
-        DWORD len;
-        int cmdlen;
-
-        if(!strncasecmp(cmdline, "-nohome", 7))
-            cmdline += 7;
-        while(*cmdline == ' ' || *cmdline == '\t')
-            cmdline++;
-        cmdlen = lstrlenA(cmdline);
-        if(cmdlen > 2 && cmdline[0] == '"' && cmdline[cmdlen-1] == '"') {
-            cmdline++;
-            cmdlen -= 2;
-        }
-
-        V_VT(&var_url) = VT_BSTR;
-
-        len = MultiByteToWideChar(CP_ACP, 0, cmdline, cmdlen, NULL, 0);
-        V_BSTR(&var_url) = SysAllocStringLen(NULL, len);
-        MultiByteToWideChar(CP_ACP, 0, cmdline, cmdlen, V_BSTR(&var_url), len);
-
-        /* navigate to the first page */
-        IWebBrowser2_Navigate2(wb, &var_url, NULL, NULL, NULL, NULL);
-
-        SysFreeString(V_BSTR(&var_url));
-    }
-
-    return wb;
-}
-
-static void WINAPI DocHostContainer_GetDocObjRect(DocHost* This, RECT* rc)
-{
-    GetClientRect(This->frame_hwnd, rc);
-    adjust_ie_docobj_rect(This->frame_hwnd, rc);
-}
-
-static HRESULT WINAPI DocHostContainer_SetStatusText(DocHost* This, LPCWSTR text)
-{
-    InternetExplorer* ie = DOCHOST_THIS(This);
-    return update_ie_statustext(ie, text);
-}
-
-static void WINAPI DocHostContainer_SetURL(DocHost* This, LPCWSTR url)
-{
-    SendMessageW(This->frame_hwnd, WM_UPDATEADDRBAR, 0, (LPARAM)url);
-}
-
-static HRESULT DocHostContainer_exec(DocHost* This, const GUID *cmd_group, DWORD cmdid, DWORD execopt, VARIANT *in,
-        VARIANT *out)
-{
-    return S_OK;
-}
-static const IDocHostContainerVtbl DocHostContainerVtbl = {
-    DocHostContainer_GetDocObjRect,
-    DocHostContainer_SetStatusText,
-    DocHostContainer_SetURL,
-    DocHostContainer_exec
-};
-
-HRESULT InternetExplorer_Create(IUnknown *pOuter, REFIID riid, void **ppv)
-{
-    InternetExplorer *ret;
-    HRESULT hres;
-
-    TRACE("(%p %s %p)\n", pOuter, debugstr_guid(riid), ppv);
-
-    ret = heap_alloc_zero(sizeof(InternetExplorer));
-    ret->ref = 0;
-
-    ret->doc_host.disp = (IDispatch*)WEBBROWSER2(ret);
-    DocHost_Init(&ret->doc_host, (IDispatch*)WEBBROWSER2(ret), &DocHostContainerVtbl);
-
-    InternetExplorer_WebBrowser_Init(ret);
-
-    HlinkFrame_Init(&ret->hlink_frame, (IUnknown*)WEBBROWSER2(ret), &ret->doc_host);
-
-    create_frame_hwnd(ret);
-    ret->doc_host.frame_hwnd = ret->frame_hwnd;
-
-    hres = IWebBrowser2_QueryInterface(WEBBROWSER2(ret), riid, ppv);
-    if(FAILED(hres)) {
-        heap_free(ret);
-        return hres;
-    }
-
-    return hres;
-}
-
-/******************************************************************
- *             IEWinMain            (SHDOCVW.101)
- *
- * Only returns on error.
- */
-DWORD WINAPI IEWinMain(LPSTR szCommandLine, int nShowWindow)
-{
-    IWebBrowser2 *wb = NULL;
-    MSG msg;
-    HRESULT hres;
-
-    TRACE("%s %d\n", debugstr_a(szCommandLine), nShowWindow);
-
-    if(*szCommandLine == '-' || *szCommandLine == '/') {
-        if(!strcasecmp(szCommandLine+1, "regserver"))
-            return register_iexplore(TRUE);
-        if(!strcasecmp(szCommandLine+1, "unregserver"))
-            return register_iexplore(FALSE);
-    }
-
-    CoInitialize(NULL);
-
-    hres = register_class_object(TRUE);
-    if(FAILED(hres)) {
-        CoUninitialize();
-        ExitProcess(1);
-    }
-
-    if(strcasecmp(szCommandLine, "-embedding"))
-        wb = create_ie_window(szCommandLine);
-
-    /* run the message loop for this thread */
-    while (GetMessageW(&msg, 0, 0, 0))
-    {
-        TranslateMessage(&msg);
-        DispatchMessageW(&msg);
-    }
-
-    if(wb)
-        IWebBrowser2_Release(wb);
-
-    register_class_object(FALSE);
-
-    CoUninitialize();
-
-    ExitProcess(0);
-    return 0;
-}
diff --git a/reactos/dll/win32/shdocvw/intshcut.c b/reactos/dll/win32/shdocvw/intshcut.c
deleted file mode 100644 (file)
index 7550262..0000000
+++ /dev/null
@@ -1,648 +0,0 @@
-/*
- * Copyright 2008 Damjan Jovanovic
- *
- * ShellLink's barely documented cousin that handles URLs.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-/*
- * TODO:
- * Implement the IShellLinkA/W interfaces
- * Handle the SetURL flags
- * Implement any other interfaces? Does any software actually use them?
- *
- * The installer for the Zuma Deluxe Popcap game is good for testing.
- */
-
-//#include <stdarg.h>
-//#include <stdio.h>
-
-#include <wine/debug.h>
-#include "shdocvw.h"
-//#include "objidl.h"
-//#include "shobjidl.h"
-#include <intshcut.h>
-//#include "shellapi.h"
-//#include "winreg.h"
-//#include "shlwapi.h"
-
-WINE_DEFAULT_DEBUG_CHANNEL(shdocvw);
-
-typedef struct
-{
-    IUniformResourceLocatorA uniformResourceLocatorA;
-    IUniformResourceLocatorW uniformResourceLocatorW;
-    IPersistFile persistFile;
-
-    LONG refCount;
-
-    WCHAR *url;
-    BOOLEAN isDirty;
-    LPOLESTR currentFile;
-} InternetShortcut;
-
-/* utility functions */
-
-static inline InternetShortcut* impl_from_IUniformResourceLocatorA(IUniformResourceLocatorA *iface)
-{
-    return (InternetShortcut*)((char*)iface - FIELD_OFFSET(InternetShortcut, uniformResourceLocatorA));
-}
-
-static inline InternetShortcut* impl_from_IUniformResourceLocatorW(IUniformResourceLocatorW *iface)
-{
-    return (InternetShortcut*)((char*)iface - FIELD_OFFSET(InternetShortcut, uniformResourceLocatorW));
-}
-
-static inline InternetShortcut* impl_from_IPersistFile(IPersistFile *iface)
-{
-    return (InternetShortcut*)((char*)iface - FIELD_OFFSET(InternetShortcut, persistFile));
-}
-
-static BOOL run_winemenubuilder( const WCHAR *args )
-{
-    static const WCHAR menubuilder[] = {'\\','w','i','n','e','m','e','n','u','b','u','i','l','d','e','r','.','e','x','e',0};
-    LONG len;
-    LPWSTR buffer;
-    STARTUPINFOW si;
-    PROCESS_INFORMATION pi;
-    BOOL ret;
-    WCHAR app[MAX_PATH];
-    void *redir;
-
-    GetSystemDirectoryW( app, MAX_PATH - sizeof(menubuilder)/sizeof(WCHAR) );
-    strcatW( app, menubuilder );
-
-    len = (strlenW( app ) + strlenW( args ) + 1) * sizeof(WCHAR);
-    buffer = heap_alloc( len );
-    if( !buffer )
-        return FALSE;
-
-    strcpyW( buffer, app );
-    strcatW( buffer, args );
-
-    TRACE("starting %s\n",debugstr_w(buffer));
-
-    memset(&si, 0, sizeof(si));
-    si.cb = sizeof(si);
-
-    Wow64DisableWow64FsRedirection( &redir );
-    ret = CreateProcessW( app, buffer, NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi );
-    Wow64RevertWow64FsRedirection( redir );
-
-    heap_free( buffer );
-
-    if (ret)
-    {
-        CloseHandle( pi.hProcess );
-        CloseHandle( pi.hThread );
-    }
-
-    return ret;
-}
-
-static BOOL StartLinkProcessor( LPCOLESTR szLink )
-{
-    static const WCHAR szFormat[] = { ' ','-','w',' ','-','u',' ','"','%','s','"',0 };
-    LONG len;
-    LPWSTR buffer;
-    BOOL ret;
-
-    len = sizeof(szFormat) + lstrlenW( szLink ) * sizeof(WCHAR);
-    buffer = heap_alloc( len );
-    if( !buffer )
-        return FALSE;
-
-    wsprintfW( buffer, szFormat, szLink );
-    ret = run_winemenubuilder( buffer );
-    heap_free( buffer );
-    return ret;
-}
-
-/* interface functions */
-
-static HRESULT Unknown_QueryInterface(InternetShortcut *This, REFIID riid, PVOID *ppvObject)
-{
-    TRACE("(%p, %s, %p)\n", This, debugstr_guid(riid), ppvObject);
-    *ppvObject = NULL;
-    if (IsEqualGUID(&IID_IUnknown, riid))
-        *ppvObject = &This->uniformResourceLocatorA;
-    else if (IsEqualGUID(&IID_IUniformResourceLocatorA, riid))
-        *ppvObject = &This->uniformResourceLocatorA;
-    else if (IsEqualGUID(&IID_IUniformResourceLocatorW, riid))
-        *ppvObject = &This->uniformResourceLocatorW;
-    else if (IsEqualGUID(&IID_IPersistFile, riid))
-        *ppvObject = &This->persistFile;
-    else if (IsEqualGUID(&IID_IShellLinkA, riid))
-    {
-        FIXME("The IShellLinkA interface is not yet supported by InternetShortcut\n");
-        return E_NOINTERFACE;
-    }
-    else if (IsEqualGUID(&IID_IShellLinkW, riid))
-    {
-        FIXME("The IShellLinkW interface is not yet supported by InternetShortcut\n");
-        return E_NOINTERFACE;
-    }
-    else
-    {
-        FIXME("Interface with GUID %s not yet implemented by InternetShortcut\n", debugstr_guid(riid));
-        return E_NOINTERFACE;
-    }
-    IUnknown_AddRef((IUnknown*)*ppvObject);
-    return S_OK;
-}
-
-static ULONG Unknown_AddRef(InternetShortcut *This)
-{
-    TRACE("(%p)\n", This);
-    return InterlockedIncrement(&This->refCount);
-}
-
-static ULONG Unknown_Release(InternetShortcut *This)
-{
-    ULONG count;
-    TRACE("(%p)\n", This);
-    count = InterlockedDecrement(&This->refCount);
-    if (count == 0)
-    {
-        CoTaskMemFree(This->url);
-        CoTaskMemFree(This->currentFile);
-        heap_free(This);
-        SHDOCVW_UnlockModule();
-    }
-    return count;
-}
-
-static HRESULT WINAPI UniformResourceLocatorW_QueryInterface(IUniformResourceLocatorW *url, REFIID riid, PVOID *ppvObject)
-{
-    InternetShortcut *This = impl_from_IUniformResourceLocatorW(url);
-    TRACE("(%p, %s, %p)\n", url, debugstr_guid(riid), ppvObject);
-    return Unknown_QueryInterface(This, riid, ppvObject);
-}
-
-static ULONG WINAPI UniformResourceLocatorW_AddRef(IUniformResourceLocatorW *url)
-{
-    InternetShortcut *This = impl_from_IUniformResourceLocatorW(url);
-    TRACE("(%p)\n", url);
-    return Unknown_AddRef(This);
-}
-
-static ULONG WINAPI UniformResourceLocatorW_Release(IUniformResourceLocatorW *url)
-{
-    InternetShortcut *This = impl_from_IUniformResourceLocatorW(url);
-    TRACE("(%p)\n", url);
-    return Unknown_Release(This);
-}
-
-static HRESULT WINAPI UniformResourceLocatorW_SetUrl(IUniformResourceLocatorW *url, LPCWSTR pcszURL, DWORD dwInFlags)
-{
-    WCHAR *newURL = NULL;
-    InternetShortcut *This = impl_from_IUniformResourceLocatorW(url);
-    TRACE("(%p, %s, 0x%x)\n", url, debugstr_w(pcszURL), dwInFlags);
-    if (dwInFlags != 0)
-        FIXME("ignoring unsupported flags 0x%x\n", dwInFlags);
-    if (pcszURL != NULL)
-    {
-        newURL = co_strdupW(pcszURL);
-        if (newURL == NULL)
-            return E_OUTOFMEMORY;
-    }
-    CoTaskMemFree(This->url);
-    This->url = newURL;
-    This->isDirty = TRUE;
-    return S_OK;
-}
-
-static HRESULT WINAPI UniformResourceLocatorW_GetUrl(IUniformResourceLocatorW *url, LPWSTR *ppszURL)
-{
-    HRESULT hr = S_OK;
-    InternetShortcut *This = impl_from_IUniformResourceLocatorW(url);
-    TRACE("(%p, %p)\n", url, ppszURL);
-    if (This->url == NULL)
-        *ppszURL = NULL;
-    else
-    {
-        *ppszURL = co_strdupW(This->url);
-        if (*ppszURL == NULL)
-            hr = E_OUTOFMEMORY;
-    }
-    return hr;
-}
-
-static HRESULT WINAPI UniformResourceLocatorW_InvokeCommand(IUniformResourceLocatorW *url, PURLINVOKECOMMANDINFOW pCommandInfo)
-{
-    InternetShortcut *This = impl_from_IUniformResourceLocatorW(url);
-    WCHAR app[64];
-    HKEY hkey;
-    static const WCHAR wszURLProtocol[] = {'U','R','L',' ','P','r','o','t','o','c','o','l',0};
-    SHELLEXECUTEINFOW sei;
-    DWORD res, type;
-    HRESULT hres;
-
-    TRACE("%p %p\n", This, pCommandInfo );
-
-    if (pCommandInfo->dwcbSize < sizeof (URLINVOKECOMMANDINFOW))
-        return E_INVALIDARG;
-
-    if (pCommandInfo->dwFlags != IURL_INVOKECOMMAND_FL_USE_DEFAULT_VERB)
-    {
-        FIXME("(%p, %p): non-default verbs not implemented\n", url, pCommandInfo);
-        return E_NOTIMPL;
-    }
-
-    hres = CoInternetParseUrl(This->url, PARSE_SCHEMA, 0, app, sizeof(app)/sizeof(WCHAR), NULL, 0);
-    if(FAILED(hres))
-        return E_FAIL;
-
-    res = RegOpenKeyW(HKEY_CLASSES_ROOT, app, &hkey);
-    if(res != ERROR_SUCCESS)
-        return E_FAIL;
-
-    res = RegQueryValueExW(hkey, wszURLProtocol, NULL, &type, NULL, NULL);
-    RegCloseKey(hkey);
-    if(res != ERROR_SUCCESS || type != REG_SZ)
-        return E_FAIL;
-
-    memset(&sei, 0, sizeof(sei));
-    sei.cbSize = sizeof(sei);
-    sei.lpFile = This->url;
-    sei.nShow = SW_SHOW;
-
-    if( ShellExecuteExW(&sei) )
-        return S_OK;
-    else
-        return E_FAIL;
-}
-
-static HRESULT WINAPI UniformResourceLocatorA_QueryInterface(IUniformResourceLocatorA *url, REFIID riid, PVOID *ppvObject)
-{
-    InternetShortcut *This = impl_from_IUniformResourceLocatorA(url);
-    TRACE("(%p, %s, %p)\n", url, debugstr_guid(riid), ppvObject);
-    return Unknown_QueryInterface(This, riid, ppvObject);
-}
-
-static ULONG WINAPI UniformResourceLocatorA_AddRef(IUniformResourceLocatorA *url)
-{
-    InternetShortcut *This = impl_from_IUniformResourceLocatorA(url);
-    TRACE("(%p)\n", url);
-    return Unknown_AddRef(This);
-}
-
-static ULONG WINAPI UniformResourceLocatorA_Release(IUniformResourceLocatorA *url)
-{
-    InternetShortcut *This = impl_from_IUniformResourceLocatorA(url);
-    TRACE("(%p)\n", url);
-    return Unknown_Release(This);
-}
-
-static HRESULT WINAPI UniformResourceLocatorA_SetUrl(IUniformResourceLocatorA *url, LPCSTR pcszURL, DWORD dwInFlags)
-{
-    WCHAR *newURL = NULL;
-    InternetShortcut *This = impl_from_IUniformResourceLocatorA(url);
-    TRACE("(%p, %s, 0x%x)\n", url, debugstr_a(pcszURL), dwInFlags);
-    if (dwInFlags != 0)
-        FIXME("ignoring unsupported flags 0x%x\n", dwInFlags);
-    if (pcszURL != NULL)
-    {
-        newURL = co_strdupAtoW(pcszURL);
-        if (newURL == NULL)
-            return E_OUTOFMEMORY;
-    }
-    CoTaskMemFree(This->url);
-    This->url = newURL;
-    This->isDirty = TRUE;
-    return S_OK;
-}
-
-static HRESULT WINAPI UniformResourceLocatorA_GetUrl(IUniformResourceLocatorA *url, LPSTR *ppszURL)
-{
-    HRESULT hr = S_OK;
-    InternetShortcut *This = impl_from_IUniformResourceLocatorA(url);
-    TRACE("(%p, %p)\n", url, ppszURL);
-    if (This->url == NULL)
-        *ppszURL = NULL;
-    else
-    {
-        *ppszURL = co_strdupWtoA(This->url);
-        if (*ppszURL == NULL)
-            hr = E_OUTOFMEMORY;
-    }
-    return hr;
-}
-
-static HRESULT WINAPI UniformResourceLocatorA_InvokeCommand(IUniformResourceLocatorA *url, PURLINVOKECOMMANDINFOA pCommandInfo)
-{
-    URLINVOKECOMMANDINFOW wideCommandInfo;
-    int len;
-    WCHAR *wideVerb;
-    HRESULT res;
-    InternetShortcut *This = impl_from_IUniformResourceLocatorA(url);
-
-    wideCommandInfo.dwcbSize = sizeof wideCommandInfo;
-    wideCommandInfo.dwFlags = pCommandInfo->dwFlags;
-    wideCommandInfo.hwndParent = pCommandInfo->hwndParent;
-
-    len = MultiByteToWideChar(CP_ACP, 0, pCommandInfo->pcszVerb, -1, NULL, 0);
-    wideVerb = heap_alloc(len * sizeof(WCHAR));
-    MultiByteToWideChar(CP_ACP, 0, pCommandInfo->pcszVerb, -1, wideVerb, len);
-
-    wideCommandInfo.pcszVerb = wideVerb;
-
-    res = UniformResourceLocatorW_InvokeCommand(&This->uniformResourceLocatorW, &wideCommandInfo);
-    heap_free(wideVerb);
-
-    return res;
-}
-
-static HRESULT WINAPI PersistFile_QueryInterface(IPersistFile *pFile, REFIID riid, PVOID *ppvObject)
-{
-    InternetShortcut *This = impl_from_IPersistFile(pFile);
-    TRACE("(%p, %s, %p)\n", pFile, debugstr_guid(riid), ppvObject);
-    return Unknown_QueryInterface(This, riid, ppvObject);
-}
-
-static ULONG WINAPI PersistFile_AddRef(IPersistFile *pFile)
-{
-    InternetShortcut *This = impl_from_IPersistFile(pFile);
-    TRACE("(%p)\n", pFile);
-    return Unknown_AddRef(This);
-}
-
-static ULONG WINAPI PersistFile_Release(IPersistFile *pFile)
-{
-    InternetShortcut *This = impl_from_IPersistFile(pFile);
-    TRACE("(%p)\n", pFile);
-    return Unknown_Release(This);
-}
-
-static HRESULT WINAPI PersistFile_GetClassID(IPersistFile *pFile, CLSID *pClassID)
-{
-    TRACE("(%p, %p)\n", pFile, pClassID);
-    *pClassID = CLSID_InternetShortcut;
-    return S_OK;
-}
-
-static HRESULT WINAPI PersistFile_IsDirty(IPersistFile *pFile)
-{
-    InternetShortcut *This = impl_from_IPersistFile(pFile);
-    TRACE("(%p)\n", pFile);
-    return This->isDirty ? S_OK : S_FALSE;
-}
-
-static HRESULT WINAPI PersistFile_Load(IPersistFile *pFile, LPCOLESTR pszFileName, DWORD dwMode)
-{
-    WCHAR str_header[] = {'I','n','t','e','r','n','e','t','S','h','o','r','t','c','u','t',0};
-    WCHAR str_URL[] = {'U','R','L',0};
-    WCHAR *filename = NULL;
-    HRESULT hr;
-    InternetShortcut *This = impl_from_IPersistFile(pFile);
-    TRACE("(%p, %s, 0x%x)\n", pFile, debugstr_w(pszFileName), dwMode);
-    if (dwMode != 0)
-        FIXME("ignoring unimplemented mode 0x%x\n", dwMode);
-    filename = co_strdupW(pszFileName);
-    if (filename != NULL)
-    {
-        DWORD len = 128;
-        DWORD r;
-        WCHAR *url = CoTaskMemAlloc(len*sizeof(WCHAR));
-        if (url != NULL)
-        {
-            r = GetPrivateProfileStringW(str_header, str_URL, NULL, url, len, pszFileName);
-            while (r == len-1)
-            {
-                CoTaskMemFree(url);
-                len *= 2;
-                url = CoTaskMemAlloc(len*sizeof(WCHAR));
-                if (url == NULL)
-                    break;
-                r = GetPrivateProfileStringW(str_header, str_URL, NULL, url, len, pszFileName);
-            }
-            if (r == 0)
-                hr = E_FAIL;
-            else if (url != NULL)
-            {
-                CoTaskMemFree(This->currentFile);
-                This->currentFile = filename;
-                CoTaskMemFree(This->url);
-                This->url = url;
-                This->isDirty = FALSE;
-                return S_OK;
-            }
-            else
-                hr = E_OUTOFMEMORY;
-            CoTaskMemFree(url);
-        }
-        else
-            hr = E_OUTOFMEMORY;
-        CoTaskMemFree(filename);
-    }
-    else
-        hr = E_OUTOFMEMORY;
-    return hr;
-}
-
-static HRESULT WINAPI PersistFile_Save(IPersistFile *pFile, LPCOLESTR pszFileName, BOOL fRemember)
-{
-    HRESULT hr = S_OK;
-    INT len;
-    CHAR *url;
-    InternetShortcut *This = impl_from_IPersistFile(pFile);
-
-    TRACE("(%p, %s, %d)\n", pFile, debugstr_w(pszFileName), fRemember);
-
-    if (pszFileName != NULL && fRemember)
-    {
-        LPOLESTR oldFile = This->currentFile;
-        This->currentFile = co_strdupW(pszFileName);
-        if (This->currentFile == NULL)
-        {
-            This->currentFile = oldFile;
-            return E_OUTOFMEMORY;
-        }
-        CoTaskMemFree(oldFile);
-    }
-    if (This->url == NULL)
-        return E_FAIL;
-
-    /* Windows seems to always write:
-     *   ASCII "[InternetShortcut]" headers
-     *   ASCII names in "name=value" pairs
-     *   An ASCII (probably UTF8?) value in "URL=..."
-     */
-    len = WideCharToMultiByte(CP_UTF8, 0, This->url, -1, NULL, 0, 0, 0);
-    url = heap_alloc(len);
-    if (url != NULL)
-    {
-        HANDLE file;
-        WideCharToMultiByte(CP_UTF8, 0, This->url, -1, url, len, 0, 0);
-        file = CreateFileW(pszFileName, GENERIC_WRITE, FILE_SHARE_READ, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
-        if (file != INVALID_HANDLE_VALUE)
-        {
-            DWORD bytesWritten;
-            char str_header[] = "[InternetShortcut]";
-            char str_URL[] = "URL=";
-            char str_eol[] = "\r\n";
-
-            WriteFile(file, str_header, lstrlenA(str_header), &bytesWritten, NULL);
-            WriteFile(file, str_eol, lstrlenA(str_eol), &bytesWritten, NULL);
-            WriteFile(file, str_URL, lstrlenA(str_URL), &bytesWritten, NULL);
-            WriteFile(file, url, lstrlenA(url), &bytesWritten, NULL);
-            WriteFile(file, str_eol, lstrlenA(str_eol), &bytesWritten, NULL);
-            CloseHandle(file);
-            if (pszFileName == NULL || fRemember)
-                This->isDirty = FALSE;
-            StartLinkProcessor(pszFileName);
-        }
-        else
-            hr = E_FAIL;
-        heap_free(url);
-    }
-    else
-        hr = E_OUTOFMEMORY;
-
-    return hr;
-}
-
-static HRESULT WINAPI PersistFile_SaveCompleted(IPersistFile *pFile, LPCOLESTR pszFileName)
-{
-    FIXME("(%p, %p): stub\n", pFile, pszFileName);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI PersistFile_GetCurFile(IPersistFile *pFile, LPOLESTR *ppszFileName)
-{
-    HRESULT hr = S_OK;
-    InternetShortcut *This = impl_from_IPersistFile(pFile);
-    TRACE("(%p, %p)\n", pFile, ppszFileName);
-    if (This->currentFile == NULL)
-        *ppszFileName = NULL;
-    else
-    {
-        *ppszFileName = co_strdupW(This->currentFile);
-        if (*ppszFileName == NULL)
-            hr = E_OUTOFMEMORY;
-    }
-    return hr;
-}
-
-
-
-static const IUniformResourceLocatorWVtbl uniformResourceLocatorWVtbl = {
-    UniformResourceLocatorW_QueryInterface,
-    UniformResourceLocatorW_AddRef,
-    UniformResourceLocatorW_Release,
-    UniformResourceLocatorW_SetUrl,
-    UniformResourceLocatorW_GetUrl,
-    UniformResourceLocatorW_InvokeCommand
-};
-
-static const IUniformResourceLocatorAVtbl uniformResourceLocatorAVtbl = {
-    UniformResourceLocatorA_QueryInterface,
-    UniformResourceLocatorA_AddRef,
-    UniformResourceLocatorA_Release,
-    UniformResourceLocatorA_SetUrl,
-    UniformResourceLocatorA_GetUrl,
-    UniformResourceLocatorA_InvokeCommand
-};
-
-static const IPersistFileVtbl persistFileVtbl = {
-    PersistFile_QueryInterface,
-    PersistFile_AddRef,
-    PersistFile_Release,
-    PersistFile_GetClassID,
-    PersistFile_IsDirty,
-    PersistFile_Load,
-    PersistFile_Save,
-    PersistFile_SaveCompleted,
-    PersistFile_GetCurFile
-};
-
-static InternetShortcut *create_shortcut(void)
-{
-    InternetShortcut *newshortcut;
-
-    newshortcut = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(InternetShortcut));
-    if (newshortcut)
-    {
-        newshortcut->uniformResourceLocatorA.lpVtbl = &uniformResourceLocatorAVtbl;
-        newshortcut->uniformResourceLocatorW.lpVtbl = &uniformResourceLocatorWVtbl;
-        newshortcut->persistFile.lpVtbl = &persistFileVtbl;
-        newshortcut->refCount = 0;
-    }
-
-    return newshortcut;
-}
-
-HRESULT InternetShortcut_Create(IUnknown *pOuter, REFIID riid, void **ppv)
-{
-    InternetShortcut *This;
-    HRESULT hr;
-
-    TRACE("(%p, %s, %p)\n", pOuter, debugstr_guid(riid), ppv);
-
-    *ppv = NULL;
-
-    if(pOuter)
-        return CLASS_E_NOAGGREGATION;
-
-    This = create_shortcut();
-    if (This)
-    {
-        hr = Unknown_QueryInterface(This, riid, ppv);
-        if (SUCCEEDED(hr))
-            SHDOCVW_LockModule();
-        else
-            heap_free(This);
-        return hr;
-    }
-    else
-        return E_OUTOFMEMORY;
-}
-
-
-/**********************************************************************
- * OpenURL  (SHDOCVW.@)
- */
-void WINAPI OpenURL(HWND hWnd, HINSTANCE hInst, LPCSTR lpcstrUrl, int nShowCmd)
-{
-    InternetShortcut *shortcut;
-    WCHAR* urlfilepath = NULL;
-    shortcut = create_shortcut();
-
-    if (shortcut)
-    {
-        int len;
-
-        len = MultiByteToWideChar(CP_ACP, 0, lpcstrUrl, -1, NULL, 0);
-        urlfilepath = heap_alloc(len * sizeof(WCHAR));
-        MultiByteToWideChar(CP_ACP, 0, lpcstrUrl, -1, urlfilepath, len);
-
-        if(SUCCEEDED(IPersistFile_Load(&shortcut->persistFile, urlfilepath, 0)))
-        {
-            URLINVOKECOMMANDINFOW ici;
-
-            memset( &ici, 0, sizeof ici );
-            ici.dwcbSize = sizeof ici;
-            ici.dwFlags = IURL_INVOKECOMMAND_FL_USE_DEFAULT_VERB;
-            ici.hwndParent = hWnd;
-
-            if FAILED(UniformResourceLocatorW_InvokeCommand(&shortcut->uniformResourceLocatorW, (PURLINVOKECOMMANDINFOW) &ici))
-                    TRACE("failed to open URL: %s\n.",debugstr_a(lpcstrUrl));
-        }
-
-        heap_free(shortcut);
-        heap_free(urlfilepath);
-    }
-}
diff --git a/reactos/dll/win32/shdocvw/navigate.c b/reactos/dll/win32/shdocvw/navigate.c
deleted file mode 100644 (file)
index 5d33130..0000000
+++ /dev/null
@@ -1,1132 +0,0 @@
-/*
- * Copyright 2006-2007 Jacek Caban for CodeWeavers
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-#define NONAMELESSUNION
-#define NONAMELESSSTRUCT
-
-#include <wine/debug.h>
-
-#include "shdocvw.h"
-#include <exdispid.h>
-//#include "shellapi.h"
-//#include "winreg.h"
-#include <shlwapi.h>
-#include <wininet.h>
-#include <mshtml.h>
-
-WINE_DEFAULT_DEBUG_CHANNEL(shdocvw);
-
-static const WCHAR emptyW[] = {0};
-
-typedef struct {
-    const IBindStatusCallbackVtbl  *lpBindStatusCallbackVtbl;
-    const IHttpNegotiateVtbl       *lpHttpNegotiateVtbl;
-
-    LONG ref;
-
-    DocHost *doc_host;
-
-    LPWSTR url;
-    HGLOBAL post_data;
-    BSTR headers;
-    ULONG post_data_len;
-} BindStatusCallback;
-
-#define BINDSC(x)  ((IBindStatusCallback*) &(x)->lpBindStatusCallbackVtbl)
-#define HTTPNEG(x) ((IHttpNegotiate*)      &(x)->lpHttpNegotiateVtbl)
-
-static void dump_BINDINFO(BINDINFO *bi)
-{
-    static const char * const BINDINFOF_str[] = {
-        "#0",
-        "BINDINFOF_URLENCODESTGMEDDATA",
-        "BINDINFOF_URLENCODEDEXTRAINFO"
-    };
-
-    static const char * const BINDVERB_str[] = {
-        "BINDVERB_GET",
-        "BINDVERB_POST",
-        "BINDVERB_PUT",
-        "BINDVERB_CUSTOM"
-    };
-
-    TRACE("\n"
-            "BINDINFO = {\n"
-            "    %d, %s,\n"
-            "    {%d, %p, %p},\n"
-            "    %s,\n"
-            "    %s,\n"
-            "    %s,\n"
-            "    %d, %08x, %d, %d\n"
-            "    {%d %p %x},\n"
-            "    %s\n"
-            "    %p, %d\n"
-            "}\n",
-
-            bi->cbSize, debugstr_w(bi->szExtraInfo),
-            bi->stgmedData.tymed, bi->stgmedData.u.hGlobal, bi->stgmedData.pUnkForRelease,
-            bi->grfBindInfoF > BINDINFOF_URLENCODEDEXTRAINFO
-                ? "unknown" : BINDINFOF_str[bi->grfBindInfoF],
-            bi->dwBindVerb > BINDVERB_CUSTOM
-                ? "unknown" : BINDVERB_str[bi->dwBindVerb],
-            debugstr_w(bi->szCustomVerb),
-            bi->cbstgmedData, bi->dwOptions, bi->dwOptionsFlags, bi->dwCodePage,
-            bi->securityAttributes.nLength,
-            bi->securityAttributes.lpSecurityDescriptor,
-            bi->securityAttributes.bInheritHandle,
-            debugstr_guid(&bi->iid),
-            bi->pUnk, bi->dwReserved
-            );
-}
-
-static void set_status_text(BindStatusCallback *This, LPCWSTR str)
-{
-    VARIANTARG arg;
-    DISPPARAMS dispparams = {&arg, NULL, 1, 0};
-
-    if(!This->doc_host)
-        return;
-
-    V_VT(&arg) = VT_BSTR;
-    V_BSTR(&arg) = str ? SysAllocString(str) : NULL;
-    call_sink(This->doc_host->cps.wbe2, DISPID_STATUSTEXTCHANGE, &dispparams);
-    VariantClear(&arg);
-
-    if(This->doc_host->frame)
-        IOleInPlaceFrame_SetStatusText(This->doc_host->frame, str);
-}
-
-static HRESULT set_dochost_url(DocHost *This, const WCHAR *url)
-{
-    WCHAR *new_url;
-
-    if(url) {
-        new_url = heap_strdupW(url);
-        if(!new_url)
-            return E_OUTOFMEMORY;
-    }else {
-        new_url = NULL;
-    }
-
-    heap_free(This->url);
-    This->url = new_url;
-
-    This->container_vtbl->SetURL(This, This->url);
-    return S_OK;
-}
-
-#define BINDSC_THIS(iface) DEFINE_THIS(BindStatusCallback, BindStatusCallback, iface)
-
-static HRESULT WINAPI BindStatusCallback_QueryInterface(IBindStatusCallback *iface,
-                                                        REFIID riid, void **ppv)
-{
-    BindStatusCallback *This = BINDSC_THIS(iface);
-
-    *ppv = NULL;
-
-    if(IsEqualGUID(&IID_IUnknown, riid)) {
-        TRACE("(%p)->(IID_IUnknown %p)\n", This, ppv);
-        *ppv = BINDSC(This);
-    }else if(IsEqualGUID(&IID_IBindStatusCallback, riid)) {
-        TRACE("(%p)->(IID_IBindStatusCallback %p)\n", This, ppv);
-        *ppv = BINDSC(This);
-    }else if(IsEqualGUID(&IID_IHttpNegotiate, riid)) {
-        TRACE("(%p)->(IID_IHttpNegotiate %p)\n", This, ppv);
-        *ppv = HTTPNEG(This);
-    }
-
-    if(*ppv) {
-        IBindStatusCallback_AddRef(BINDSC(This));
-        return S_OK;
-    }
-
-    WARN("(%p)->(%s %p)\n", This, debugstr_guid(riid), ppv);
-    return E_NOINTERFACE;
-}
-
-static ULONG WINAPI BindStatusCallback_AddRef(IBindStatusCallback *iface)
-{
-    BindStatusCallback *This = BINDSC_THIS(iface);
-    LONG ref = InterlockedIncrement(&This->ref);
-
-    TRACE("(%p) ref=%d\n", This, ref);
-
-    return ref;
-}
-
-static ULONG WINAPI BindStatusCallback_Release(IBindStatusCallback *iface)
-{
-    BindStatusCallback *This = BINDSC_THIS(iface);
-    LONG ref = InterlockedDecrement(&This->ref);
-
-    TRACE("(%p) ref=%d\n", This, ref);
-
-    if(!ref) {
-        if(This->doc_host)
-            IOleClientSite_Release(CLIENTSITE(This->doc_host));
-        if(This->post_data)
-            GlobalFree(This->post_data);
-        SysFreeString(This->headers);
-        heap_free(This->url);
-        heap_free(This);
-    }
-
-    return ref;
-}
-
-static HRESULT WINAPI BindStatusCallback_OnStartBinding(IBindStatusCallback *iface,
-       DWORD dwReserved, IBinding *pbind)
-{
-    BindStatusCallback *This = BINDSC_THIS(iface);
-
-    TRACE("(%p)->(%d %p)\n", This, dwReserved, pbind);
-
-    return S_OK;
-}
-
-static HRESULT WINAPI BindStatusCallback_GetPriority(IBindStatusCallback *iface,
-       LONG *pnPriority)
-{
-    BindStatusCallback *This = BINDSC_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, pnPriority);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI BindStatusCallback_OnLowResource(IBindStatusCallback *iface,
-       DWORD reserved)
-{
-    BindStatusCallback *This = BINDSC_THIS(iface);
-    FIXME("(%p)->(%d)\n", This, reserved);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI BindStatusCallback_OnProgress(IBindStatusCallback *iface,
-        ULONG ulProgress, ULONG ulProgressMax, ULONG ulStatusCode, LPCWSTR szStatusText)
-{
-    BindStatusCallback *This = BINDSC_THIS(iface);
-
-    TRACE("(%p)->(%d %d %d %s)\n", This, ulProgress, ulProgressMax, ulStatusCode,
-          debugstr_w(szStatusText));
-
-    switch(ulStatusCode) {
-    case BINDSTATUS_REDIRECTING:
-        return set_dochost_url(This->doc_host, szStatusText);
-    case BINDSTATUS_BEGINDOWNLOADDATA:
-        set_status_text(This, szStatusText); /* FIXME: "Start downloading from site: %s" */
-        return S_OK;
-    case BINDSTATUS_ENDDOWNLOADDATA:
-        set_status_text(This, szStatusText); /* FIXME: "Downloading from site: %s" */
-        return S_OK;
-    case BINDSTATUS_CLASSIDAVAILABLE:
-    case BINDSTATUS_MIMETYPEAVAILABLE:
-    case BINDSTATUS_BEGINSYNCOPERATION:
-    case BINDSTATUS_ENDSYNCOPERATION:
-        return S_OK;
-    default:
-        FIXME("status code %u\n", ulStatusCode);
-    }
-
-    return S_OK;
-}
-
-static HRESULT WINAPI BindStatusCallback_OnStopBinding(IBindStatusCallback *iface,
-        HRESULT hresult, LPCWSTR szError)
-{
-    BindStatusCallback *This = BINDSC_THIS(iface);
-
-    TRACE("(%p)->(%08x %s)\n", This, hresult, debugstr_w(szError));
-
-    set_status_text(This, emptyW);
-
-    if(This->doc_host) {
-        IOleClientSite_Release(CLIENTSITE(This->doc_host));
-        This->doc_host = NULL;
-    }
-
-    return S_OK;
-}
-
-static HRESULT WINAPI BindStatusCallback_GetBindInfo(IBindStatusCallback *iface,
-        DWORD *grfBINDF, BINDINFO *pbindinfo)
-{
-    BindStatusCallback *This = BINDSC_THIS(iface);
-
-    TRACE("(%p)->(%p %p)\n", This, grfBINDF, pbindinfo);
-
-    *grfBINDF = BINDF_ASYNCHRONOUS;
-
-    if(This->post_data) {
-        pbindinfo->dwBindVerb = BINDVERB_POST;
-
-        pbindinfo->stgmedData.tymed = TYMED_HGLOBAL;
-        pbindinfo->stgmedData.u.hGlobal = This->post_data;
-        pbindinfo->cbstgmedData = This->post_data_len;
-        pbindinfo->stgmedData.pUnkForRelease = (IUnknown*)BINDSC(This);
-        IBindStatusCallback_AddRef(BINDSC(This));
-    }
-
-    return S_OK;
-}
-
-static HRESULT WINAPI BindStatusCallback_OnDataAvailable(IBindStatusCallback *iface,
-        DWORD grfBSCF, DWORD dwSize, FORMATETC *pformatetc, STGMEDIUM *pstgmed)
-{
-    BindStatusCallback *This = BINDSC_THIS(iface);
-    FIXME("(%p)->(%08x %d %p %p)\n", This, grfBSCF, dwSize, pformatetc, pstgmed);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI BindStatusCallback_OnObjectAvailable(IBindStatusCallback *iface,
-        REFIID riid, IUnknown *punk)
-{
-    BindStatusCallback *This = BINDSC_THIS(iface);
-
-    TRACE("(%p)->(%s %p)\n", This, debugstr_guid(riid), punk);
-
-    return dochost_object_available(This->doc_host, punk);
-}
-
-#undef BSC_THIS
-
-static const IBindStatusCallbackVtbl BindStatusCallbackVtbl = {
-    BindStatusCallback_QueryInterface,
-    BindStatusCallback_AddRef,
-    BindStatusCallback_Release,
-    BindStatusCallback_OnStartBinding,
-    BindStatusCallback_GetPriority,
-    BindStatusCallback_OnLowResource,
-    BindStatusCallback_OnProgress,
-    BindStatusCallback_OnStopBinding,
-    BindStatusCallback_GetBindInfo,
-    BindStatusCallback_OnDataAvailable,
-    BindStatusCallback_OnObjectAvailable
-};
-
-#define HTTPNEG_THIS(iface) DEFINE_THIS(BindStatusCallback, HttpNegotiate, iface)
-
-static HRESULT WINAPI HttpNegotiate_QueryInterface(IHttpNegotiate *iface,
-                                                   REFIID riid, void **ppv)
-{
-    BindStatusCallback *This = HTTPNEG_THIS(iface);
-    return IBindStatusCallback_QueryInterface(BINDSC(This), riid, ppv);
-}
-
-static ULONG WINAPI HttpNegotiate_AddRef(IHttpNegotiate *iface)
-{
-    BindStatusCallback *This = HTTPNEG_THIS(iface);
-    return IBindStatusCallback_AddRef(BINDSC(This));
-}
-
-static ULONG WINAPI HttpNegotiate_Release(IHttpNegotiate *iface)
-{
-    BindStatusCallback *This = HTTPNEG_THIS(iface);
-    return IBindStatusCallback_Release(BINDSC(This));
-}
-
-static HRESULT WINAPI HttpNegotiate_BeginningTransaction(IHttpNegotiate *iface,
-        LPCWSTR szURL, LPCWSTR szHeaders, DWORD dwReserved, LPWSTR *pszAdditionalHeaders)
-{
-    BindStatusCallback *This = HTTPNEG_THIS(iface);
-
-    TRACE("(%p)->(%s %s %d %p)\n", This, debugstr_w(szURL), debugstr_w(szHeaders),
-          dwReserved, pszAdditionalHeaders);
-
-    if(This->headers) {
-        int size = (strlenW(This->headers)+1)*sizeof(WCHAR);
-        *pszAdditionalHeaders = CoTaskMemAlloc(size);
-        memcpy(*pszAdditionalHeaders, This->headers, size);
-    }
-
-    return S_OK;
-}
-
-static HRESULT WINAPI HttpNegotiate_OnResponse(IHttpNegotiate *iface,
-        DWORD dwResponseCode, LPCWSTR szResponseHeaders, LPCWSTR szRequestHeaders,
-        LPWSTR *pszAdditionalRequestHeaders)
-{
-    BindStatusCallback *This = HTTPNEG_THIS(iface);
-    TRACE("(%p)->(%d %s %s %p)\n", This, dwResponseCode, debugstr_w(szResponseHeaders),
-          debugstr_w(szRequestHeaders), pszAdditionalRequestHeaders);
-    return S_OK;
-}
-
-#undef HTTPNEG_THIS
-
-static const IHttpNegotiateVtbl HttpNegotiateVtbl = {
-    HttpNegotiate_QueryInterface,
-    HttpNegotiate_AddRef,
-    HttpNegotiate_Release,
-    HttpNegotiate_BeginningTransaction,
-    HttpNegotiate_OnResponse
-};
-
-static BindStatusCallback *create_callback(DocHost *doc_host, LPCWSTR url, PBYTE post_data,
-        ULONG post_data_len, LPCWSTR headers)
-{
-    BindStatusCallback *ret = heap_alloc(sizeof(BindStatusCallback));
-
-    ret->lpBindStatusCallbackVtbl = &BindStatusCallbackVtbl;
-    ret->lpHttpNegotiateVtbl      = &HttpNegotiateVtbl;
-
-    ret->ref = 1;
-    ret->url = heap_strdupW(url);
-    ret->post_data = NULL;
-    ret->post_data_len = post_data_len;
-    ret->headers = headers ? SysAllocString(headers) : NULL;
-
-    ret->doc_host = doc_host;
-    IOleClientSite_AddRef(CLIENTSITE(doc_host));
-
-    if(post_data) {
-        ret->post_data = GlobalAlloc(0, post_data_len);
-        memcpy(ret->post_data, post_data, post_data_len);
-    }
-
-    return ret;
-}
-
-static void on_before_navigate2(DocHost *This, LPCWSTR url, SAFEARRAY *post_data, LPWSTR headers, VARIANT_BOOL *cancel)
-{
-    VARIANT var_url, var_flags, var_frame_name, var_post_data, var_post_data2, var_headers;
-    DISPPARAMS dispparams;
-    VARIANTARG params[7];
-
-    dispparams.cArgs = 7;
-    dispparams.cNamedArgs = 0;
-    dispparams.rgdispidNamedArgs = NULL;
-    dispparams.rgvarg = params;
-
-    This->busy = VARIANT_TRUE;
-
-    V_VT(params) = VT_BOOL|VT_BYREF;
-    V_BOOLREF(params) = cancel;
-
-    V_VT(params+1) = (VT_BYREF|VT_VARIANT);
-    V_VARIANTREF(params+1) = &var_headers;
-    V_VT(&var_headers) = VT_BSTR;
-    V_BSTR(&var_headers) = headers;
-
-    V_VT(params+2) = (VT_BYREF|VT_VARIANT);
-    V_VARIANTREF(params+2) = &var_post_data2;
-    V_VT(&var_post_data2) = (VT_BYREF|VT_VARIANT);
-    V_VARIANTREF(&var_post_data2) = &var_post_data;
-
-    if(post_data) {
-        V_VT(&var_post_data) = VT_UI1|VT_ARRAY;
-        V_ARRAY(&var_post_data) = post_data;
-    }else {
-        V_VT(&var_post_data) = VT_EMPTY;
-    }
-
-    V_VT(params+3) = (VT_BYREF|VT_VARIANT);
-    V_VARIANTREF(params+3) = &var_frame_name;
-    V_VT(&var_frame_name) = VT_BSTR;
-    V_BSTR(&var_frame_name) = NULL;
-
-    V_VT(params+4) = (VT_BYREF|VT_VARIANT);
-    V_VARIANTREF(params+4) = &var_flags;
-    V_VT(&var_flags) = VT_I4;
-    V_I4(&var_flags) = 0;
-
-    V_VT(params+5) = (VT_BYREF|VT_VARIANT);
-    V_VARIANTREF(params+5) = &var_url;
-    V_VT(&var_url) = VT_BSTR;
-    V_BSTR(&var_url) = SysAllocString(url);
-
-    V_VT(params+6) = (VT_DISPATCH);
-    V_DISPATCH(params+6) = This->disp;
-
-    call_sink(This->cps.wbe2, DISPID_BEFORENAVIGATE2, &dispparams);
-
-    SysFreeString(V_BSTR(&var_url));
-}
-
-/* FIXME: urlmon should handle it */
-static BOOL try_application_url(LPCWSTR url)
-{
-    SHELLEXECUTEINFOW exec_info;
-    WCHAR app[64];
-    HKEY hkey;
-    DWORD res, type;
-    HRESULT hres;
-
-    static const WCHAR wszURLProtocol[] = {'U','R','L',' ','P','r','o','t','o','c','o','l',0};
-
-    hres = CoInternetParseUrl(url, PARSE_SCHEMA, 0, app, sizeof(app)/sizeof(WCHAR), NULL, 0);
-    if(FAILED(hres))
-        return FALSE;
-
-    res = RegOpenKeyW(HKEY_CLASSES_ROOT, app, &hkey);
-    if(res != ERROR_SUCCESS)
-        return FALSE;
-
-    res = RegQueryValueExW(hkey, wszURLProtocol, NULL, &type, NULL, NULL);
-    RegCloseKey(hkey);
-    if(res != ERROR_SUCCESS || type != REG_SZ)
-        return FALSE;
-
-    TRACE("openning application %s\n", debugstr_w(app));
-    memset(&exec_info, 0, sizeof(exec_info));
-    exec_info.cbSize = sizeof(exec_info);
-    exec_info.lpFile = url;
-    exec_info.nShow = SW_SHOW;
-
-    return ShellExecuteExW(&exec_info);
-}
-
-static HRESULT create_moniker(LPCWSTR url, IMoniker **mon)
-{
-    WCHAR new_url[INTERNET_MAX_URL_LENGTH];
-    DWORD size;
-    HRESULT hres;
-
-    if(PathIsURLW(url))
-        return CreateURLMoniker(NULL, url, mon);
-
-    if(url[1] == ':') {
-        size = sizeof(new_url);
-        hres = UrlCreateFromPathW(url, new_url, &size, 0);
-        if(FAILED(hres)) {
-            WARN("UrlCreateFromPathW failed: %08x\n", hres);
-            return hres;
-        }
-    }else {
-        size = sizeof(new_url)/sizeof(WCHAR);
-        hres = UrlApplySchemeW(url, new_url, &size, URL_APPLY_GUESSSCHEME);
-        TRACE("got %s\n", debugstr_w(new_url));
-        if(FAILED(hres)) {
-            WARN("UrlApplyScheme failed: %08x\n", hres);
-            return hres;
-        }
-    }
-
-    return CreateURLMoniker(NULL, new_url, mon);
-}
-
-static HRESULT bind_to_object(DocHost *This, IMoniker *mon, LPCWSTR url, IBindCtx *bindctx,
-                              IBindStatusCallback *callback)
-{
-    IUnknown *unk = NULL;
-    WCHAR *display_name;
-    HRESULT hres;
-
-    if(mon) {
-        IMoniker_AddRef(mon);
-    }else {
-        hres = create_moniker(url, &mon);
-        if(FAILED(hres))
-            return hres;
-    }
-
-    hres = IMoniker_GetDisplayName(mon, 0, NULL, &display_name);
-    if(FAILED(hres)) {
-        FIXME("GetDisplayName failed: %08x\n", hres);
-        return hres;
-    }
-
-    hres = set_dochost_url(This, display_name);
-    CoTaskMemFree(display_name);
-    if(FAILED(hres))
-        return hres;
-
-    IBindCtx_RegisterObjectParam(bindctx, (LPOLESTR)SZ_HTML_CLIENTSITE_OBJECTPARAM,
-                                 (IUnknown*)CLIENTSITE(This));
-
-    hres = IMoniker_BindToObject(mon, bindctx, NULL, &IID_IUnknown, (void**)&unk);
-    if(SUCCEEDED(hres)) {
-        hres = S_OK;
-        if(unk)
-            IUnknown_Release(unk);
-    }else if(try_application_url(url)) {
-        hres = S_OK;
-    }else {
-        FIXME("BindToObject failed: %08x\n", hres);
-    }
-
-    IMoniker_Release(mon);
-    return S_OK;
-}
-
-static void html_window_navigate(DocHost *This, IHTMLPrivateWindow *window, BSTR url, BSTR headers, SAFEARRAY *post_data)
-{
-    VARIANT headers_var, post_data_var;
-    BSTR empty_str;
-    HRESULT hres;
-
-    hres = set_dochost_url(This, url);
-    if(FAILED(hres))
-        return;
-
-    empty_str = SysAllocStringLen(NULL, 0);
-
-    if(headers) {
-        V_VT(&headers_var) = VT_BSTR;
-        V_BSTR(&headers_var) = headers;
-    }else {
-        V_VT(&headers_var) = VT_EMPTY;
-    }
-
-    if(post_data) {
-        V_VT(&post_data_var) = VT_UI1|VT_ARRAY;
-        V_ARRAY(&post_data_var) = post_data;
-    }else {
-        V_VT(&post_data_var) = VT_EMPTY;
-    }
-
-    set_doc_state(This, READYSTATE_LOADING);
-    hres = IHTMLPrivateWindow_SuperNavigate(window, url, empty_str, NULL, NULL, &post_data_var, &headers_var, 0);
-    SysFreeString(empty_str);
-    if(FAILED(hres))
-        WARN("SuprtNavigate failed: %08x\n", hres);
-}
-
-typedef struct {
-    task_header_t header;
-    BSTR url;
-    BSTR headers;
-    SAFEARRAY *post_data;
-    BOOL async_notif;
-} task_doc_navigate_t;
-
-static HRESULT free_doc_navigate_task(task_doc_navigate_t *task, BOOL free_task)
-{
-    SysFreeString(task->url);
-    SysFreeString(task->headers);
-    if(task->post_data)
-        SafeArrayDestroy(task->post_data);
-    if(free_task)
-        heap_free(task);
-    return E_OUTOFMEMORY;
-}
-
-static void doc_navigate_proc(DocHost *This, task_header_t *t)
-{
-    task_doc_navigate_t *task = (task_doc_navigate_t*)t;
-    IHTMLPrivateWindow *priv_window;
-    HRESULT hres;
-
-    if(!This->doc_navigate)
-        return;
-
-    if(task->async_notif) {
-        VARIANT_BOOL cancel = VARIANT_FALSE;
-        on_before_navigate2(This, task->url, task->post_data, task->headers, &cancel);
-        if(cancel) {
-            TRACE("Navigation calnceled\n");
-            free_doc_navigate_task(task, FALSE);
-            return;
-        }
-    }
-
-    hres = IUnknown_QueryInterface(This->doc_navigate, &IID_IHTMLPrivateWindow, (void**)&priv_window);
-    if(SUCCEEDED(hres)) {
-        html_window_navigate(This, priv_window, task->url, task->headers, task->post_data);
-        IHTMLPrivateWindow_Release(priv_window);
-    }else {
-        WARN("Could not get IHTMLPrivateWindow iface: %08x\n", hres);
-    }
-
-    free_doc_navigate_task(task, FALSE);
-}
-
-static HRESULT async_doc_navigate(DocHost *This, LPCWSTR url, LPCWSTR headers, PBYTE post_data, ULONG post_data_size,
-        BOOL async_notif)
-{
-    task_doc_navigate_t *task;
-
-    task = heap_alloc_zero(sizeof(*task));
-    if(!task)
-        return E_OUTOFMEMORY;
-
-    task->url = SysAllocString(url);
-    if(!task->url)
-        return free_doc_navigate_task(task, TRUE);
-
-    if(headers) {
-        task->headers = SysAllocString(headers);
-        if(!task->headers)
-            return free_doc_navigate_task(task, TRUE);
-    }
-
-    if(post_data) {
-        task->post_data = SafeArrayCreateVector(VT_UI1, 0, post_data_size);
-        if(!task->post_data)
-            return free_doc_navigate_task(task, TRUE);
-        memcpy(task->post_data->pvData, post_data, post_data_size);
-    }
-
-    if(!async_notif) {
-        VARIANT_BOOL cancel = VARIANT_FALSE;
-
-        on_before_navigate2(This, task->url, task->post_data, task->headers, &cancel);
-        if(cancel) {
-            TRACE("Navigation calnceled\n");
-            free_doc_navigate_task(task, TRUE);
-            return S_OK;
-        }
-    }
-
-    task->async_notif = async_notif;
-    push_dochost_task(This, &task->header, doc_navigate_proc, FALSE);
-    return S_OK;
-}
-
-static HRESULT navigate_bsc(DocHost *This, BindStatusCallback *bsc, IMoniker *mon)
-{
-    VARIANT_BOOL cancel = VARIANT_FALSE;
-    SAFEARRAY *post_data = NULL;
-    IBindCtx *bindctx;
-    HRESULT hres;
-
-    set_doc_state(This, READYSTATE_LOADING);
-
-    if(bsc->post_data) {
-        post_data = SafeArrayCreateVector(VT_UI1, 0, bsc->post_data_len);
-        memcpy(post_data->pvData, post_data, bsc->post_data_len);
-    }
-
-    on_before_navigate2(This, bsc->url, post_data, bsc->headers, &cancel);
-    if(post_data)
-        SafeArrayDestroy(post_data);
-    if(cancel) {
-        FIXME("Navigation canceled\n");
-        return S_OK;
-    }
-
-    if(This->document)
-        deactivate_document(This);
-
-    CreateAsyncBindCtx(0, BINDSC(bsc), 0, &bindctx);
-
-    if(This->frame)
-        IOleInPlaceFrame_EnableModeless(This->frame, FALSE);
-
-    hres = bind_to_object(This, mon, bsc->url, bindctx, BINDSC(bsc));
-
-    if(This->frame)
-        IOleInPlaceFrame_EnableModeless(This->frame, TRUE);
-
-    IBindCtx_Release(bindctx);
-
-    return hres;
-}
-
-typedef struct {
-    task_header_t header;
-    BindStatusCallback *bsc;
-} task_navigate_bsc_t;
-
-static void navigate_bsc_proc(DocHost *This, task_header_t *t)
-{
-    task_navigate_bsc_t *task = (task_navigate_bsc_t*)t;
-
-    if(!This->hwnd)
-        create_doc_view_hwnd(This);
-
-    navigate_bsc(This, task->bsc, NULL);
-
-    IBindStatusCallback_Release(BINDSC(task->bsc));
-}
-
-
-HRESULT navigate_url(DocHost *This, LPCWSTR url, const VARIANT *Flags,
-                     const VARIANT *TargetFrameName, VARIANT *PostData, VARIANT *Headers)
-{
-    PBYTE post_data = NULL;
-    ULONG post_data_len = 0;
-    LPWSTR headers = NULL;
-    HRESULT hres = S_OK;
-
-    TRACE("navigating to %s\n", debugstr_w(url));
-
-    if((Flags && V_VT(Flags) != VT_EMPTY) 
-       || (TargetFrameName && V_VT(TargetFrameName) != VT_EMPTY))
-        FIXME("Unsupported args (Flags %p:%d; TargetFrameName %p:%d)\n",
-                Flags, Flags ? V_VT(Flags) : -1, TargetFrameName,
-                TargetFrameName ? V_VT(TargetFrameName) : -1);
-
-    if(PostData && V_VT(PostData) == (VT_ARRAY | VT_UI1) && V_ARRAY(PostData)) {
-        SafeArrayAccessData(V_ARRAY(PostData), (void**)&post_data);
-        post_data_len = V_ARRAY(PostData)->rgsabound[0].cElements;
-    }
-
-    if(Headers && V_VT(Headers) == VT_BSTR) {
-        headers = V_BSTR(Headers);
-        TRACE("Headers: %s\n", debugstr_w(headers));
-    }
-
-    set_doc_state(This, READYSTATE_LOADING);
-    This->ready_state = READYSTATE_LOADING;
-
-    if(This->doc_navigate) {
-        WCHAR new_url[INTERNET_MAX_URL_LENGTH];
-
-        if(PathIsURLW(url)) {
-            new_url[0] = 0;
-        }else {
-            DWORD size;
-
-            size = sizeof(new_url)/sizeof(WCHAR);
-            hres = UrlApplySchemeW(url, new_url, &size,
-                    URL_APPLY_GUESSSCHEME | URL_APPLY_DEFAULT);
-            if(FAILED(hres)) {
-                WARN("UrlApplyScheme failed: %08x\n", hres);
-                new_url[0] = 0;
-            }
-        }
-
-        hres = async_doc_navigate(This, *new_url ? new_url : url, headers, post_data,
-                post_data_len, TRUE);
-    }else {
-        task_navigate_bsc_t *task;
-
-        task = heap_alloc(sizeof(*task));
-        task->bsc = create_callback(This, url, post_data, post_data_len, headers);
-        push_dochost_task(This, &task->header, navigate_bsc_proc, This->url == NULL);
-    }
-
-    if(post_data)
-        SafeArrayUnaccessData(V_ARRAY(PostData));
-
-    return hres;
-}
-
-static HRESULT navigate_hlink(DocHost *This, IMoniker *mon, IBindCtx *bindctx,
-                              IBindStatusCallback *callback)
-{
-    IHttpNegotiate *http_negotiate;
-    BindStatusCallback *bsc;
-    PBYTE post_data = NULL;
-    ULONG post_data_len = 0;
-    LPWSTR headers = NULL, url;
-    BINDINFO bindinfo;
-    DWORD bindf = 0;
-    HRESULT hres;
-
-    hres = IMoniker_GetDisplayName(mon, 0, NULL, &url);
-    if(FAILED(hres))
-        FIXME("GetDisplayName failed: %08x\n", hres);
-
-    hres = IBindStatusCallback_QueryInterface(callback, &IID_IHttpNegotiate,
-                                              (void**)&http_negotiate);
-    if(SUCCEEDED(hres)) {
-        static const WCHAR null_string[] = {0};
-
-        IHttpNegotiate_BeginningTransaction(http_negotiate, null_string, null_string, 0,
-                                            &headers);
-        IHttpNegotiate_Release(http_negotiate);
-    }
-
-    memset(&bindinfo, 0, sizeof(bindinfo));
-    bindinfo.cbSize = sizeof(bindinfo);
-
-    hres = IBindStatusCallback_GetBindInfo(callback, &bindf, &bindinfo);
-    dump_BINDINFO(&bindinfo);
-    if(bindinfo.dwBindVerb == BINDVERB_POST) {
-        post_data_len = bindinfo.cbstgmedData;
-        if(post_data_len)
-            post_data = bindinfo.stgmedData.u.hGlobal;
-    }
-
-    if(This->doc_navigate) {
-        hres = async_doc_navigate(This, url, headers, post_data, post_data_len, FALSE);
-    }else {
-        bsc = create_callback(This, url, post_data, post_data_len, headers);
-        hres = navigate_bsc(This, bsc, mon);
-        IBindStatusCallback_Release(BINDSC(bsc));
-    }
-
-    CoTaskMemFree(url);
-    CoTaskMemFree(headers);
-    ReleaseBindInfo(&bindinfo);
-
-    return hres;
-}
-
-HRESULT go_home(DocHost *This)
-{
-    HKEY hkey;
-    DWORD res, type, size;
-    WCHAR wszPageName[MAX_PATH];
-    static const WCHAR wszAboutBlank[] = {'a','b','o','u','t',':','b','l','a','n','k',0};
-    static const WCHAR wszStartPage[] = {'S','t','a','r','t',' ','P','a','g','e',0};
-    static const WCHAR wszSubKey[] = {'S','o','f','t','w','a','r','e','\\',
-                                      'M','i','c','r','o','s','o','f','t','\\',
-                                      'I','n','t','e','r','n','e','t',' ','E','x','p','l','o','r','e','r','\\',
-                                      'M','a','i','n',0};
-
-    res = RegOpenKeyW(HKEY_CURRENT_USER, wszSubKey, &hkey);
-    if (res != ERROR_SUCCESS)
-        return navigate_url(This, wszAboutBlank, NULL, NULL, NULL, NULL);
-
-    size = sizeof(wszPageName);
-    res = RegQueryValueExW(hkey, wszStartPage, NULL, &type, (LPBYTE)wszPageName, &size);
-    RegCloseKey(hkey);
-    if (res != ERROR_SUCCESS || type != REG_SZ)
-        return navigate_url(This, wszAboutBlank, NULL, NULL, NULL, NULL);
-
-    return navigate_url(This, wszPageName, NULL, NULL, NULL, NULL);
-}
-
-#define HLINKFRAME_THIS(iface) DEFINE_THIS(HlinkFrame, IHlinkFrame, iface)
-
-static HRESULT WINAPI HlinkFrame_QueryInterface(IHlinkFrame *iface, REFIID riid, void **ppv)
-{
-    HlinkFrame *This = HLINKFRAME_THIS(iface);
-    return IUnknown_QueryInterface(This->outer, riid, ppv);
-}
-
-static ULONG WINAPI HlinkFrame_AddRef(IHlinkFrame *iface)
-{
-    HlinkFrame *This = HLINKFRAME_THIS(iface);
-    return IUnknown_AddRef(This->outer);
-}
-
-static ULONG WINAPI HlinkFrame_Release(IHlinkFrame *iface)
-{
-    HlinkFrame *This = HLINKFRAME_THIS(iface);
-    return IUnknown_Release(This->outer);
-}
-
-static HRESULT WINAPI HlinkFrame_SetBrowseContext(IHlinkFrame *iface,
-                                                  IHlinkBrowseContext *pihlbc)
-{
-    HlinkFrame *This = HLINKFRAME_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, pihlbc);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI HlinkFrame_GetBrowseContext(IHlinkFrame *iface,
-                                                  IHlinkBrowseContext **ppihlbc)
-{
-    HlinkFrame *This = HLINKFRAME_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, ppihlbc);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI HlinkFrame_Navigate(IHlinkFrame *iface, DWORD grfHLNF, LPBC pbc,
-                                          IBindStatusCallback *pibsc, IHlink *pihlNavigate)
-{
-    HlinkFrame *This = HLINKFRAME_THIS(iface);
-    IMoniker *mon;
-    LPWSTR location = NULL;
-
-    TRACE("(%p)->(%08x %p %p %p)\n", This, grfHLNF, pbc, pibsc, pihlNavigate);
-
-    if(grfHLNF)
-        FIXME("unsupported grfHLNF=%08x\n", grfHLNF);
-
-    /* Windows calls GetTargetFrameName here. */
-
-    IHlink_GetMonikerReference(pihlNavigate, 1, &mon, &location);
-
-    if(location) {
-        FIXME("location = %s\n", debugstr_w(location));
-        CoTaskMemFree(location);
-    }
-
-    /* Windows calls GetHlinkSite here */
-
-    if(grfHLNF & HLNF_OPENINNEWWINDOW) {
-        FIXME("Not supported HLNF_OPENINNEWWINDOW\n");
-        return E_NOTIMPL;
-    }
-
-    return navigate_hlink(This->doc_host, mon, pbc, pibsc);
-}
-
-static HRESULT WINAPI HlinkFrame_OnNavigate(IHlinkFrame *iface, DWORD grfHLNF,
-        IMoniker *pimkTarget, LPCWSTR pwzLocation, LPCWSTR pwzFriendlyName, DWORD dwreserved)
-{
-    HlinkFrame *This = HLINKFRAME_THIS(iface);
-    FIXME("(%p)->(%08x %p %s %s %d)\n", This, grfHLNF, pimkTarget, debugstr_w(pwzLocation),
-          debugstr_w(pwzFriendlyName), dwreserved);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI HlinkFrame_UpdateHlink(IHlinkFrame *iface, ULONG uHLID,
-        IMoniker *pimkTarget, LPCWSTR pwzLocation, LPCWSTR pwzFriendlyName)
-{
-    HlinkFrame *This = HLINKFRAME_THIS(iface);
-    FIXME("(%p)->(%u %p %s %s)\n", This, uHLID, pimkTarget, debugstr_w(pwzLocation),
-          debugstr_w(pwzFriendlyName));
-    return E_NOTIMPL;
-}
-
-#undef HLINKFRAME_THIS
-
-static const IHlinkFrameVtbl HlinkFrameVtbl = {
-    HlinkFrame_QueryInterface,
-    HlinkFrame_AddRef,
-    HlinkFrame_Release,
-    HlinkFrame_SetBrowseContext,
-    HlinkFrame_GetBrowseContext,
-    HlinkFrame_Navigate,
-    HlinkFrame_OnNavigate,
-    HlinkFrame_UpdateHlink
-};
-
-#define TARGETFRAME2_THIS(iface) DEFINE_THIS(HlinkFrame, ITargetFrame2, iface)
-
-static HRESULT WINAPI TargetFrame2_QueryInterface(ITargetFrame2 *iface, REFIID riid, void **ppv)
-{
-    HlinkFrame *This = TARGETFRAME2_THIS(iface);
-    return IUnknown_QueryInterface(This->outer, riid, ppv);
-}
-
-static ULONG WINAPI TargetFrame2_AddRef(ITargetFrame2 *iface)
-{
-    HlinkFrame *This = TARGETFRAME2_THIS(iface);
-    return IUnknown_AddRef(This->outer);
-}
-
-static ULONG WINAPI TargetFrame2_Release(ITargetFrame2 *iface)
-{
-    HlinkFrame *This = TARGETFRAME2_THIS(iface);
-    return IUnknown_Release(This->outer);
-}
-
-static HRESULT WINAPI TargetFrame2_SetFrameName(ITargetFrame2 *iface, LPCWSTR pszFrameName)
-{
-    HlinkFrame *This = TARGETFRAME2_THIS(iface);
-    FIXME("(%p)->(%s)\n", This, debugstr_w(pszFrameName));
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI TargetFrame2_GetFrameName(ITargetFrame2 *iface, LPWSTR *ppszFrameName)
-{
-    HlinkFrame *This = TARGETFRAME2_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, ppszFrameName);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI TargetFrame2_GetParentFrame(ITargetFrame2 *iface, IUnknown **ppunkParent)
-{
-    HlinkFrame *This = TARGETFRAME2_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, ppunkParent);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI TargetFrame2_SetFrameSrc(ITargetFrame2 *iface, LPCWSTR pszFrameSrc)
-{
-    HlinkFrame *This = TARGETFRAME2_THIS(iface);
-    FIXME("(%p)->(%s)\n", This, debugstr_w(pszFrameSrc));
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI TargetFrame2_GetFrameSrc(ITargetFrame2 *iface, LPWSTR *ppszFrameSrc)
-{
-    HlinkFrame *This = TARGETFRAME2_THIS(iface);
-    FIXME("(%p)->()\n", This);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI TargetFrame2_GetFramesContainer(ITargetFrame2 *iface, IOleContainer **ppContainer)
-{
-    HlinkFrame *This = TARGETFRAME2_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, ppContainer);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI TargetFrame2_SetFrameOptions(ITargetFrame2 *iface, DWORD dwFlags)
-{
-    HlinkFrame *This = TARGETFRAME2_THIS(iface);
-    FIXME("(%p)->(%x)\n", This, dwFlags);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI TargetFrame2_GetFrameOptions(ITargetFrame2 *iface, DWORD *pdwFlags)
-{
-    HlinkFrame *This = TARGETFRAME2_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, pdwFlags);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI TargetFrame2_SetFrameMargins(ITargetFrame2 *iface, DWORD dwWidth, DWORD dwHeight)
-{
-    HlinkFrame *This = TARGETFRAME2_THIS(iface);
-    FIXME("(%p)->(%d %d)\n", This, dwWidth, dwHeight);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI TargetFrame2_GetFrameMargins(ITargetFrame2 *iface, DWORD *pdwWidth, DWORD *pdwHeight)
-{
-    HlinkFrame *This = TARGETFRAME2_THIS(iface);
-    FIXME("(%p)->(%p %p)\n", This, pdwWidth, pdwHeight);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI TargetFrame2_FindFrame(ITargetFrame2 *iface, LPCWSTR pszTargetName, DWORD dwFlags, IUnknown **ppunkTargetFrame)
-{
-    HlinkFrame *This = TARGETFRAME2_THIS(iface);
-    FIXME("(%p)->(%s %x %p)\n", This, debugstr_w(pszTargetName), dwFlags, ppunkTargetFrame);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI TargetFrame2_GetTargetAlias(ITargetFrame2 *iface, LPCWSTR pszTargetName, LPWSTR *ppszTargetAlias)
-{
-    HlinkFrame *This = TARGETFRAME2_THIS(iface);
-    FIXME("(%p)->(%s %p)\n", This, debugstr_w(pszTargetName), ppszTargetAlias);
-    return E_NOTIMPL;
-}
-
-#undef TARGETFRAME2_THIS
-
-static const ITargetFrame2Vtbl TargetFrame2Vtbl = {
-    TargetFrame2_QueryInterface,
-    TargetFrame2_AddRef,
-    TargetFrame2_Release,
-    TargetFrame2_SetFrameName,
-    TargetFrame2_GetFrameName,
-    TargetFrame2_GetParentFrame,
-    TargetFrame2_SetFrameSrc,
-    TargetFrame2_GetFrameSrc,
-    TargetFrame2_GetFramesContainer,
-    TargetFrame2_SetFrameOptions,
-    TargetFrame2_GetFrameOptions,
-    TargetFrame2_SetFrameMargins,
-    TargetFrame2_GetFrameMargins,
-    TargetFrame2_FindFrame,
-    TargetFrame2_GetTargetAlias
-};
-
-BOOL HlinkFrame_QI(HlinkFrame *This, REFIID riid, void **ppv)
-{
-    if(IsEqualGUID(&IID_IHlinkFrame, riid)) {
-        TRACE("(%p)->(IID_IHlinkFrame %p)\n", This, ppv);
-        *ppv = HLINKFRAME(This);
-    }else if(IsEqualGUID(&IID_ITargetFrame2, riid)) {
-        TRACE("(%p)->(IID_ITargetFrame2 %p)\n", This, ppv);
-        *ppv = TARGETFRAME2(This);
-    }else {
-        return FALSE;
-    }
-
-    IUnknown_AddRef((IUnknown*)*ppv);
-    return TRUE;
-}
-
-void HlinkFrame_Init(HlinkFrame *This, IUnknown *outer, DocHost *doc_host)
-{
-    This->lpIHlinkFrameVtbl   = &HlinkFrameVtbl;
-    This->lpITargetFrame2Vtbl = &TargetFrame2Vtbl;
-
-    This->outer = outer;
-    This->doc_host = doc_host;
-}
diff --git a/reactos/dll/win32/shdocvw/oleobject.c b/reactos/dll/win32/shdocvw/oleobject.c
deleted file mode 100644 (file)
index 906b62e..0000000
+++ /dev/null
@@ -1,972 +0,0 @@
-/*
- * Implementation of IOleObject interfaces for WebBrowser control
- *
- * - IOleObject
- * - IOleInPlaceObject
- * - IOleControl
- *
- * Copyright 2001 John R. Sheets (for CodeWeavers)
- * Copyright 2005 Jacek Caban
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-//#include <string.h>
-#include <wine/debug.h>
-#include "shdocvw.h"
-//#include "htiframe.h"
-#include <idispids.h>
-#include <mshtmdid.h>
-
-WINE_DEFAULT_DEBUG_CHANNEL(shdocvw);
-
-/* shlwapi.dll */
-HWND WINAPI SHSetParentHwnd(HWND hWnd, HWND hWndParent);
-
-static ATOM shell_embedding_atom = 0;
-
-static LRESULT resize_window(WebBrowser *This, LONG width, LONG height)
-{
-    if(This->doc_host.hwnd)
-        SetWindowPos(This->doc_host.hwnd, NULL, 0, 0, width, height,
-                     SWP_NOZORDER | SWP_NOACTIVATE);
-
-    return 0;
-}
-
-static LRESULT WINAPI shell_embedding_proc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
-{
-    WebBrowser *This;
-
-    static const WCHAR wszTHIS[] = {'T','H','I','S',0};
-
-    if(msg == WM_CREATE) {
-        This = *(WebBrowser**)lParam;
-        SetPropW(hwnd, wszTHIS, This);
-    }else {
-        This = GetPropW(hwnd, wszTHIS);
-    }
-
-    switch(msg) {
-    case WM_SIZE:
-        return resize_window(This, LOWORD(lParam), HIWORD(lParam));
-    case WM_DOCHOSTTASK:
-        return process_dochost_task(&This->doc_host, lParam);
-    }
-
-    return DefWindowProcW(hwnd, msg, wParam, lParam);
-}
-
-static void create_shell_embedding_hwnd(WebBrowser *This)
-{
-    IOleInPlaceSite *inplace;
-    HWND parent = NULL;
-    HRESULT hres;
-
-    static const WCHAR wszShellEmbedding[] =
-        {'S','h','e','l','l',' ','E','m','b','e','d','d','i','n','g',0};
-
-    if(!shell_embedding_atom) {
-        static WNDCLASSEXW wndclass = {
-            sizeof(wndclass),
-            CS_DBLCLKS,
-            shell_embedding_proc,
-            0, 0 /* native uses 8 */, NULL, NULL, NULL,
-            (HBRUSH)(COLOR_WINDOW + 1), NULL,
-            wszShellEmbedding,
-            NULL
-        };
-        wndclass.hInstance = shdocvw_hinstance;
-
-        RegisterClassExW(&wndclass);
-    }
-
-    hres = IOleClientSite_QueryInterface(This->client, &IID_IOleInPlaceSite, (void**)&inplace);
-    if(SUCCEEDED(hres)) {
-        IOleInPlaceSite_GetWindow(inplace, &parent);
-        IOleInPlaceSite_Release(inplace);
-    }
-
-    This->doc_host.frame_hwnd = This->shell_embedding_hwnd = CreateWindowExW(
-            WS_EX_WINDOWEDGE,
-            wszShellEmbedding, wszShellEmbedding,
-            WS_CLIPSIBLINGS | WS_CLIPCHILDREN
-            | (parent ? WS_CHILD | WS_TABSTOP : WS_POPUP | WS_MAXIMIZEBOX),
-            0, 0, 0, 0, parent,
-            NULL, shdocvw_hinstance, This);
-
-    TRACE("parent=%p hwnd=%p\n", parent, This->shell_embedding_hwnd);
-}
-
-static HRESULT activate_inplace(WebBrowser *This, IOleClientSite *active_site)
-{
-    HWND parent_hwnd;
-    HRESULT hres;
-
-    if(This->inplace)
-        return S_OK;
-
-    if(!active_site)
-        return E_INVALIDARG;
-
-    hres = IOleClientSite_QueryInterface(active_site, &IID_IOleInPlaceSite,
-                                         (void**)&This->inplace);
-    if(FAILED(hres)) {
-        WARN("Could not get IOleInPlaceSite\n");
-        return hres;
-    }
-
-    hres = IOleInPlaceSite_CanInPlaceActivate(This->inplace);
-    if(hres != S_OK) {
-        WARN("CanInPlaceActivate returned: %08x\n", hres);
-        IOleInPlaceSite_Release(This->inplace);
-        return E_FAIL;
-    }
-
-    hres = IOleInPlaceSite_GetWindow(This->inplace, &parent_hwnd);
-    if(SUCCEEDED(hres))
-        SHSetParentHwnd(This->shell_embedding_hwnd, parent_hwnd);
-
-    IOleInPlaceSite_OnInPlaceActivate(This->inplace);
-
-    This->frameinfo.cb = sizeof(OLEINPLACEFRAMEINFO);
-    IOleInPlaceSite_GetWindowContext(This->inplace, &This->doc_host.frame, &This->uiwindow,
-                                     &This->pos_rect, &This->clip_rect,
-                                     &This->frameinfo);
-
-    SetWindowPos(This->shell_embedding_hwnd, NULL,
-                 This->pos_rect.left, This->pos_rect.top,
-                 This->pos_rect.right-This->pos_rect.left,
-                 This->pos_rect.bottom-This->pos_rect.top,
-                 SWP_NOZORDER | SWP_SHOWWINDOW);
-
-    if(This->client) {
-        IOleContainer *container;
-
-        IOleClientSite_ShowObject(This->client);
-
-        hres = IOleClientSite_GetContainer(This->client, &container);
-        if(SUCCEEDED(hres)) {
-            if(This->container)
-                IOleContainer_Release(This->container);
-            This->container = container;
-        }
-    }
-
-    if(This->doc_host.frame)
-        IOleInPlaceFrame_GetWindow(This->doc_host.frame, &This->frame_hwnd);
-
-    return S_OK;
-}
-
-static HRESULT activate_ui(WebBrowser *This, IOleClientSite *active_site)
-{
-    HRESULT hres;
-
-    static const WCHAR wszitem[] = {'i','t','e','m',0};
-
-    if(This->inplace)
-    {
-        if(This->shell_embedding_hwnd)
-            ShowWindow(This->shell_embedding_hwnd, SW_SHOW);
-        return S_OK;
-    }
-
-    hres = activate_inplace(This, active_site);
-    if(FAILED(hres))
-        return hres;
-
-    IOleInPlaceSite_OnUIActivate(This->inplace);
-
-    if(This->doc_host.frame)
-        IOleInPlaceFrame_SetActiveObject(This->doc_host.frame, ACTIVEOBJ(This), wszitem);
-    if(This->uiwindow)
-        IOleInPlaceUIWindow_SetActiveObject(This->uiwindow, ACTIVEOBJ(This), wszitem);
-
-    if(This->doc_host.frame)
-        IOleInPlaceFrame_SetMenu(This->doc_host.frame, NULL, NULL, This->shell_embedding_hwnd);
-
-    SetFocus(This->shell_embedding_hwnd);
-
-    return S_OK;
-}
-
-static HRESULT get_client_disp_property(IOleClientSite *client, DISPID dispid, VARIANT *res)
-{
-    IDispatch *disp = NULL;
-    DISPPARAMS dispparams = {NULL, 0};
-    HRESULT hres;
-
-    VariantInit(res);
-
-    if(!client)
-        return S_OK;
-
-    hres = IOleClientSite_QueryInterface(client, &IID_IDispatch, (void**)&disp);
-    if(FAILED(hres)) {
-        TRACE("Could not get IDispatch\n");
-        return hres;
-    }
-
-    hres = IDispatch_Invoke(disp, dispid, &IID_NULL, LOCALE_SYSTEM_DEFAULT,
-            DISPATCH_PROPERTYGET, &dispparams, res, NULL, NULL);
-
-    IDispatch_Release(disp);
-
-    return hres;
-}
-
-static HRESULT on_offlineconnected_change(WebBrowser *This)
-{
-    VARIANT offline;
-
-    get_client_disp_property(This->client, DISPID_AMBIENT_OFFLINEIFNOTCONNECTED, &offline);
-
-    if(V_VT(&offline) == VT_BOOL)
-        IWebBrowser2_put_Offline(WEBBROWSER2(This), V_BOOL(&offline));
-    else if(V_VT(&offline) != VT_EMPTY)
-        WARN("wrong V_VT(silent) %d\n", V_VT(&offline));
-
-    return S_OK;
-}
-
-static HRESULT on_silent_change(WebBrowser *This)
-{
-    VARIANT silent;
-
-    get_client_disp_property(This->client, DISPID_AMBIENT_SILENT, &silent);
-
-    if(V_VT(&silent) == VT_BOOL)
-        IWebBrowser2_put_Silent(WEBBROWSER2(This), V_BOOL(&silent));
-    else if(V_VT(&silent) != VT_EMPTY)
-        WARN("wrong V_VT(silent) %d\n", V_VT(&silent));
-
-    return S_OK;
-}
-
-static void release_client_site(WebBrowser *This)
-{
-    release_dochost_client(&This->doc_host);
-
-    if(This->shell_embedding_hwnd) {
-        DestroyWindow(This->shell_embedding_hwnd);
-        This->shell_embedding_hwnd = NULL;
-    }
-
-    if(This->inplace) {
-        IOleInPlaceSite_Release(This->inplace);
-        This->inplace = NULL;
-    }
-
-    if(This->container) {
-        IOleContainer_Release(This->container);
-        This->container = NULL;
-    }
-
-    if(This->uiwindow) {
-        IOleInPlaceUIWindow_Release(This->uiwindow);
-        This->uiwindow = NULL;
-    }
-
-    if(This->client) {
-        IOleClientSite_Release(This->client);
-        This->client = NULL;
-    }
-}
-
-/**********************************************************************
- * Implement the IOleObject interface for the WebBrowser control
- */
-
-#define OLEOBJ_THIS(iface) DEFINE_THIS(WebBrowser, OleObject, iface)
-
-static HRESULT WINAPI OleObject_QueryInterface(IOleObject *iface, REFIID riid, void **ppv)
-{
-    WebBrowser *This = OLEOBJ_THIS(iface);
-    return IWebBrowser_QueryInterface(WEBBROWSER(This), riid, ppv);
-}
-
-static ULONG WINAPI OleObject_AddRef(IOleObject *iface)
-{
-    WebBrowser *This = OLEOBJ_THIS(iface);
-    return IWebBrowser_AddRef(WEBBROWSER(This));
-}
-
-static ULONG WINAPI OleObject_Release(IOleObject *iface)
-{
-    WebBrowser *This = OLEOBJ_THIS(iface);
-    return IWebBrowser_Release(WEBBROWSER(This));
-}
-
-static HRESULT WINAPI OleObject_SetClientSite(IOleObject *iface, LPOLECLIENTSITE pClientSite)
-{
-    WebBrowser *This = OLEOBJ_THIS(iface);
-    IDocHostUIHandler *hostui;
-    IOleContainer *container;
-    IDispatch *disp;
-    HRESULT hres;
-
-    TRACE("(%p)->(%p)\n", This, pClientSite);
-
-    if(This->client == pClientSite)
-        return S_OK;
-
-    release_client_site(This);
-
-    if(!pClientSite) {
-        if(This->doc_host.document)
-            deactivate_document(&This->doc_host);
-        return S_OK;
-    }
-
-    IOleClientSite_AddRef(pClientSite);
-    This->client = pClientSite;
-
-    hres = IOleClientSite_QueryInterface(This->client, &IID_IDispatch,
-            (void**)&disp);
-    if(SUCCEEDED(hres))
-        This->doc_host.client_disp = disp;
-
-    hres = IOleClientSite_QueryInterface(This->client, &IID_IDocHostUIHandler,
-            (void**)&hostui);
-    if(SUCCEEDED(hres))
-        This->doc_host.hostui = hostui;
-
-    hres = IOleClientSite_GetContainer(This->client, &container);
-    if(SUCCEEDED(hres)) {
-        ITargetContainer *target_container;
-
-        hres = IOleContainer_QueryInterface(container, &IID_ITargetContainer,
-                                            (void**)&target_container);
-        if(SUCCEEDED(hres)) {
-            FIXME("Unsupported ITargetContainer\n");
-            ITargetContainer_Release(target_container);
-        }
-
-        IOleContainer_Release(container);
-    }
-
-    create_shell_embedding_hwnd(This);
-
-    on_offlineconnected_change(This);
-    on_silent_change(This);
-
-    return S_OK;
-}
-
-static HRESULT WINAPI OleObject_GetClientSite(IOleObject *iface, LPOLECLIENTSITE *ppClientSite)
-{
-    WebBrowser *This = OLEOBJ_THIS(iface);
-
-    TRACE("(%p)->(%p)\n", This, ppClientSite);
-
-    if(!ppClientSite)
-        return E_INVALIDARG;
-
-    if(This->client)
-        IOleClientSite_AddRef(This->client);
-    *ppClientSite = This->client;
-
-    return S_OK;
-}
-
-static HRESULT WINAPI OleObject_SetHostNames(IOleObject *iface, LPCOLESTR szContainerApp,
-        LPCOLESTR szContainerObj)
-{
-    WebBrowser *This = OLEOBJ_THIS(iface);
-
-    TRACE("(%p)->(%s, %s)\n", This, debugstr_w(szContainerApp), debugstr_w(szContainerObj));
-
-    /* We have nothing to do here. */
-    return S_OK;
-}
-
-static HRESULT WINAPI OleObject_Close(IOleObject *iface, DWORD dwSaveOption)
-{
-    WebBrowser *This = OLEOBJ_THIS(iface);
-    FIXME("(%p)->(%d)\n", This, dwSaveOption);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI OleObject_SetMoniker(IOleObject *iface, DWORD dwWhichMoniker, IMoniker* pmk)
-{
-    WebBrowser *This = OLEOBJ_THIS(iface);
-    FIXME("(%p)->(%d, %p)\n", This, dwWhichMoniker, pmk);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI OleObject_GetMoniker(IOleObject *iface, DWORD dwAssign,
-        DWORD dwWhichMoniker, LPMONIKER *ppmk)
-{
-    WebBrowser *This = OLEOBJ_THIS(iface);
-    FIXME("(%p)->(%d, %d, %p)\n", This, dwAssign, dwWhichMoniker, ppmk);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI OleObject_InitFromData(IOleObject *iface, LPDATAOBJECT pDataObject,
-        BOOL fCreation, DWORD dwReserved)
-{
-    WebBrowser *This = OLEOBJ_THIS(iface);
-    FIXME("(%p)->(%p, %d, %d)\n", This, pDataObject, fCreation, dwReserved);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI OleObject_GetClipboardData(IOleObject *iface, DWORD dwReserved,
-        LPDATAOBJECT *ppDataObject)
-{
-    WebBrowser *This = OLEOBJ_THIS(iface);
-    FIXME("(%p)->(%d, %p)\n", This, dwReserved, ppDataObject);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI OleObject_DoVerb(IOleObject *iface, LONG iVerb, struct tagMSG* lpmsg,
-        LPOLECLIENTSITE pActiveSite, LONG lindex, HWND hwndParent, LPCRECT lprcPosRect)
-{
-    WebBrowser *This = OLEOBJ_THIS(iface);
-
-    TRACE("(%p)->(%d %p %p %d %p %p)\n", This, iVerb, lpmsg, pActiveSite, lindex, hwndParent,
-            lprcPosRect);
-
-    switch (iVerb)
-    {
-    case OLEIVERB_SHOW:
-        TRACE("OLEIVERB_SHOW\n");
-        return activate_ui(This, pActiveSite);
-    case OLEIVERB_UIACTIVATE:
-        TRACE("OLEIVERB_UIACTIVATE\n");
-        return activate_ui(This, pActiveSite);
-    case OLEIVERB_INPLACEACTIVATE:
-        TRACE("OLEIVERB_INPLACEACTIVATE\n");
-        return activate_inplace(This, pActiveSite);
-    case OLEIVERB_HIDE:
-        TRACE("OLEIVERB_HIDE\n");
-        if(This->shell_embedding_hwnd)
-            ShowWindow(This->shell_embedding_hwnd, SW_HIDE);
-        return S_OK;
-    default:
-        FIXME("stub for %d\n", iVerb);
-        break;
-    }
-
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI OleObject_EnumVerbs(IOleObject *iface, IEnumOLEVERB **ppEnumOleVerb)
-{
-    WebBrowser *This = OLEOBJ_THIS(iface);
-    TRACE("(%p)->(%p)\n", This, ppEnumOleVerb);
-    return OleRegEnumVerbs(&CLSID_WebBrowser, ppEnumOleVerb);
-}
-
-static HRESULT WINAPI OleObject_Update(IOleObject *iface)
-{
-    WebBrowser *This = OLEOBJ_THIS(iface);
-    FIXME("(%p)\n", This);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI OleObject_IsUpToDate(IOleObject *iface)
-{
-    WebBrowser *This = OLEOBJ_THIS(iface);
-    FIXME("(%p)\n", This);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI OleObject_GetUserClassID(IOleObject *iface, CLSID* pClsid)
-{
-    WebBrowser *This = OLEOBJ_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, pClsid);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI OleObject_GetUserType(IOleObject *iface, DWORD dwFormOfType,
-        LPOLESTR* pszUserType)
-{
-    WebBrowser *This = OLEOBJ_THIS(iface);
-    TRACE("(%p, %d, %p)\n", This, dwFormOfType, pszUserType);
-    return OleRegGetUserType(&CLSID_WebBrowser, dwFormOfType, pszUserType);
-}
-
-static HRESULT WINAPI OleObject_SetExtent(IOleObject *iface, DWORD dwDrawAspect, SIZEL *psizel)
-{
-    WebBrowser *This = OLEOBJ_THIS(iface);
-
-    TRACE("(%p)->(%x %p)\n", This, dwDrawAspect, psizel);
-
-    /* Tests show that dwDrawAspect is ignored */
-    This->extent = *psizel;
-    return S_OK;
-}
-
-static HRESULT WINAPI OleObject_GetExtent(IOleObject *iface, DWORD dwDrawAspect, SIZEL *psizel)
-{
-    WebBrowser *This = OLEOBJ_THIS(iface);
-
-    TRACE("(%p)->(%x, %p)\n", This, dwDrawAspect, psizel);
-
-    /* Tests show that dwDrawAspect is ignored */
-    *psizel = This->extent;
-    return S_OK;
-}
-
-static HRESULT WINAPI OleObject_Advise(IOleObject *iface, IAdviseSink *pAdvSink,
-        DWORD* pdwConnection)
-{
-    WebBrowser *This = OLEOBJ_THIS(iface);
-    FIXME("(%p)->(%p, %p)\n", This, pAdvSink, pdwConnection);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI OleObject_Unadvise(IOleObject *iface, DWORD dwConnection)
-{
-    WebBrowser *This = OLEOBJ_THIS(iface);
-    FIXME("(%p)->(%d)\n", This, dwConnection);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI OleObject_EnumAdvise(IOleObject *iface, IEnumSTATDATA **ppenumAdvise)
-{
-    WebBrowser *This = OLEOBJ_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, ppenumAdvise);
-    return S_OK;
-}
-
-static HRESULT WINAPI OleObject_GetMiscStatus(IOleObject *iface, DWORD dwAspect, DWORD *pdwStatus)
-{
-    WebBrowser *This = OLEOBJ_THIS(iface);
-
-    TRACE("(%p)->(%x, %p)\n", This, dwAspect, pdwStatus);
-
-    *pdwStatus = OLEMISC_SETCLIENTSITEFIRST|OLEMISC_ACTIVATEWHENVISIBLE|OLEMISC_INSIDEOUT
-        |OLEMISC_CANTLINKINSIDE|OLEMISC_RECOMPOSEONRESIZE;
-
-    return S_OK;
-}
-
-static HRESULT WINAPI OleObject_SetColorScheme(IOleObject *iface, LOGPALETTE* pLogpal)
-{
-    WebBrowser *This = OLEOBJ_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, pLogpal);
-    return E_NOTIMPL;
-}
-
-#undef OLEOBJ_THIS
-
-static const IOleObjectVtbl OleObjectVtbl =
-{
-    OleObject_QueryInterface,
-    OleObject_AddRef,
-    OleObject_Release,
-    OleObject_SetClientSite,
-    OleObject_GetClientSite,
-    OleObject_SetHostNames,
-    OleObject_Close,
-    OleObject_SetMoniker,
-    OleObject_GetMoniker,
-    OleObject_InitFromData,
-    OleObject_GetClipboardData,
-    OleObject_DoVerb,
-    OleObject_EnumVerbs,
-    OleObject_Update,
-    OleObject_IsUpToDate,
-    OleObject_GetUserClassID,
-    OleObject_GetUserType,
-    OleObject_SetExtent,
-    OleObject_GetExtent,
-    OleObject_Advise,
-    OleObject_Unadvise,
-    OleObject_EnumAdvise,
-    OleObject_GetMiscStatus,
-    OleObject_SetColorScheme
-};
-
-/**********************************************************************
- * Implement the IOleInPlaceObject interface
- */
-
-#define INPLACEOBJ_THIS(iface) DEFINE_THIS(WebBrowser, OleInPlaceObject, iface)
-
-static HRESULT WINAPI OleInPlaceObject_QueryInterface(IOleInPlaceObject *iface,
-        REFIID riid, LPVOID *ppobj)
-{
-    WebBrowser *This = INPLACEOBJ_THIS(iface);
-    return IWebBrowser_QueryInterface(WEBBROWSER(This), riid, ppobj);
-}
-
-static ULONG WINAPI OleInPlaceObject_AddRef(IOleInPlaceObject *iface)
-{
-    WebBrowser *This = INPLACEOBJ_THIS(iface);
-    return IWebBrowser_AddRef(WEBBROWSER(This));
-}
-
-static ULONG WINAPI OleInPlaceObject_Release(IOleInPlaceObject *iface)
-{
-    WebBrowser *This = INPLACEOBJ_THIS(iface);
-    return IWebBrowser_Release(WEBBROWSER(This));
-}
-
-static HRESULT WINAPI OleInPlaceObject_GetWindow(IOleInPlaceObject *iface, HWND* phwnd)
-{
-    WebBrowser *This = INPLACEOBJ_THIS(iface);
-
-    TRACE("(%p)->(%p)\n", This, phwnd);
-
-    *phwnd = This->shell_embedding_hwnd;
-    return S_OK;
-}
-
-static HRESULT WINAPI OleInPlaceObject_ContextSensitiveHelp(IOleInPlaceObject *iface,
-        BOOL fEnterMode)
-{
-    WebBrowser *This = INPLACEOBJ_THIS(iface);
-    FIXME("(%p)->(%x)\n", This, fEnterMode);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI OleInPlaceObject_InPlaceDeactivate(IOleInPlaceObject *iface)
-{
-    WebBrowser *This = INPLACEOBJ_THIS(iface);
-    FIXME("(%p)\n", This);
-
-    if(This->inplace) {
-        IOleInPlaceSite_Release(This->inplace);
-        This->inplace = NULL;
-    }
-
-    return S_OK;
-}
-
-static HRESULT WINAPI OleInPlaceObject_UIDeactivate(IOleInPlaceObject *iface)
-{
-    WebBrowser *This = INPLACEOBJ_THIS(iface);
-    FIXME("(%p)\n", This);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI OleInPlaceObject_SetObjectRects(IOleInPlaceObject *iface,
-        LPCRECT lprcPosRect, LPCRECT lprcClipRect)
-{
-    WebBrowser *This = INPLACEOBJ_THIS(iface);
-
-    TRACE("(%p)->(%p %p)\n", This, lprcPosRect, lprcClipRect);
-
-    This->pos_rect = *lprcPosRect;
-
-    if(lprcClipRect)
-        This->clip_rect = *lprcClipRect;
-
-    if(This->shell_embedding_hwnd) {
-        SetWindowPos(This->shell_embedding_hwnd, NULL,
-                     lprcPosRect->left, lprcPosRect->top,
-                     lprcPosRect->right-lprcPosRect->left,
-                     lprcPosRect->bottom-lprcPosRect->top,
-                     SWP_NOZORDER | SWP_NOACTIVATE);
-    }
-
-    return S_OK;
-}
-
-static HRESULT WINAPI OleInPlaceObject_ReactivateAndUndo(IOleInPlaceObject *iface)
-{
-    WebBrowser *This = INPLACEOBJ_THIS(iface);
-    FIXME("(%p)\n", This);
-    return E_NOTIMPL;
-}
-
-#undef INPLACEOBJ_THIS
-
-static const IOleInPlaceObjectVtbl OleInPlaceObjectVtbl =
-{
-    OleInPlaceObject_QueryInterface,
-    OleInPlaceObject_AddRef,
-    OleInPlaceObject_Release,
-    OleInPlaceObject_GetWindow,
-    OleInPlaceObject_ContextSensitiveHelp,
-    OleInPlaceObject_InPlaceDeactivate,
-    OleInPlaceObject_UIDeactivate,
-    OleInPlaceObject_SetObjectRects,
-    OleInPlaceObject_ReactivateAndUndo
-};
-
-/**********************************************************************
- * Implement the IOleControl interface
- */
-
-#define CONTROL_THIS(iface) DEFINE_THIS(WebBrowser, OleControl, iface)
-
-static HRESULT WINAPI OleControl_QueryInterface(IOleControl *iface,
-        REFIID riid, LPVOID *ppobj)
-{
-    WebBrowser *This = CONTROL_THIS(iface);
-    return IWebBrowser_QueryInterface(WEBBROWSER(This), riid, ppobj);
-}
-
-static ULONG WINAPI OleControl_AddRef(IOleControl *iface)
-{
-    WebBrowser *This = CONTROL_THIS(iface);
-    return IWebBrowser_AddRef(WEBBROWSER(This));
-}
-
-static ULONG WINAPI OleControl_Release(IOleControl *iface)
-{
-    WebBrowser *This = CONTROL_THIS(iface);
-    return IWebBrowser_Release(WEBBROWSER(This));
-}
-
-static HRESULT WINAPI OleControl_GetControlInfo(IOleControl *iface, LPCONTROLINFO pCI)
-{
-    WebBrowser *This = CONTROL_THIS(iface);
-
-    TRACE("(%p)->(%p)\n", This, pCI);
-
-    /* Tests show that this function should be not implemented */
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI OleControl_OnMnemonic(IOleControl *iface, struct tagMSG *pMsg)
-{
-    WebBrowser *This = CONTROL_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, pMsg);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI OleControl_OnAmbientPropertyChange(IOleControl *iface, DISPID dispID)
-{
-    WebBrowser *This = CONTROL_THIS(iface);
-
-    TRACE("(%p)->(%d)\n", This, dispID);
-
-    switch(dispID) {
-    case DISPID_UNKNOWN:
-        /* Unknown means multiple properties changed, so check them all.
-         * BUT the Webbrowser OleControl object doesn't appear to do this.
-         */
-        return S_OK;
-    case DISPID_AMBIENT_DLCONTROL:
-        return S_OK;
-    case DISPID_AMBIENT_OFFLINEIFNOTCONNECTED:
-        return on_offlineconnected_change(This);
-    case DISPID_AMBIENT_SILENT:
-        return on_silent_change(This);
-    }
-
-    FIXME("Unknown dispID %d\n", dispID);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI OleControl_FreezeEvents(IOleControl *iface, BOOL bFreeze)
-{
-    WebBrowser *This = CONTROL_THIS(iface);
-    FIXME("(%p)->(%x)\n", This, bFreeze);
-    return E_NOTIMPL;
-}
-
-#undef CONTROL_THIS
-
-static const IOleControlVtbl OleControlVtbl =
-{
-    OleControl_QueryInterface,
-    OleControl_AddRef,
-    OleControl_Release,
-    OleControl_GetControlInfo,
-    OleControl_OnMnemonic,
-    OleControl_OnAmbientPropertyChange,
-    OleControl_FreezeEvents
-};
-
-#define ACTIVEOBJ_THIS(iface) DEFINE_THIS(WebBrowser, OleInPlaceActiveObject, iface)
-
-static HRESULT WINAPI InPlaceActiveObject_QueryInterface(IOleInPlaceActiveObject *iface,
-                                                            REFIID riid, void **ppv)
-{
-    WebBrowser *This = ACTIVEOBJ_THIS(iface);
-    return IWebBrowser2_QueryInterface(WEBBROWSER2(This), riid, ppv);
-}
-
-static ULONG WINAPI InPlaceActiveObject_AddRef(IOleInPlaceActiveObject *iface)
-{
-    WebBrowser *This = ACTIVEOBJ_THIS(iface);
-    return IWebBrowser2_AddRef(WEBBROWSER2(This));
-}
-
-static ULONG WINAPI InPlaceActiveObject_Release(IOleInPlaceActiveObject *iface)
-{
-    WebBrowser *This = ACTIVEOBJ_THIS(iface);
-    return IWebBrowser2_Release(WEBBROWSER2(This));
-}
-
-static HRESULT WINAPI InPlaceActiveObject_GetWindow(IOleInPlaceActiveObject *iface,
-                                                    HWND *phwnd)
-{
-    WebBrowser *This = ACTIVEOBJ_THIS(iface);
-    return IOleInPlaceObject_GetWindow(INPLACEOBJ(This), phwnd);
-}
-
-static HRESULT WINAPI InPlaceActiveObject_ContextSensitiveHelp(IOleInPlaceActiveObject *iface,
-                                                               BOOL fEnterMode)
-{
-    WebBrowser *This = ACTIVEOBJ_THIS(iface);
-    return IOleInPlaceObject_ContextSensitiveHelp(INPLACEOBJ(This), fEnterMode);
-}
-
-static HRESULT WINAPI InPlaceActiveObject_TranslateAccelerator(IOleInPlaceActiveObject *iface,
-                                                               LPMSG lpmsg)
-{
-    WebBrowser *This = ACTIVEOBJ_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, lpmsg);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InPlaceActiveObject_OnFrameWindowActivate(IOleInPlaceActiveObject *iface,
-                                                                BOOL fActivate)
-{
-    WebBrowser *This = ACTIVEOBJ_THIS(iface);
-    FIXME("(%p)->(%x)\n", This, fActivate);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InPlaceActiveObject_OnDocWindowActivate(IOleInPlaceActiveObject *iface,
-                                                              BOOL fActivate)
-{
-    WebBrowser *This = ACTIVEOBJ_THIS(iface);
-    FIXME("(%p)->(%x)\n", This, fActivate);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InPlaceActiveObject_ResizeBorder(IOleInPlaceActiveObject *iface,
-        LPCRECT lprcBorder, IOleInPlaceUIWindow *pUIWindow, BOOL fFrameWindow)
-{
-    WebBrowser *This = ACTIVEOBJ_THIS(iface);
-    FIXME("(%p)->(%p %p %x)\n", This, lprcBorder, pUIWindow, fFrameWindow);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InPlaceActiveObject_EnableModeless(IOleInPlaceActiveObject *iface,
-                                                         BOOL fEnable)
-{
-    WebBrowser *This = ACTIVEOBJ_THIS(iface);
-    FIXME("(%p)->(%x)\n", This, fEnable);
-    return E_NOTIMPL;
-}
-
-#undef ACTIVEOBJ_THIS
-
-static const IOleInPlaceActiveObjectVtbl OleInPlaceActiveObjectVtbl = {
-    InPlaceActiveObject_QueryInterface,
-    InPlaceActiveObject_AddRef,
-    InPlaceActiveObject_Release,
-    InPlaceActiveObject_GetWindow,
-    InPlaceActiveObject_ContextSensitiveHelp,
-    InPlaceActiveObject_TranslateAccelerator,
-    InPlaceActiveObject_OnFrameWindowActivate,
-    InPlaceActiveObject_OnDocWindowActivate,
-    InPlaceActiveObject_ResizeBorder,
-    InPlaceActiveObject_EnableModeless
-};
-
-#define OLECMD_THIS(iface) DEFINE_THIS(WebBrowser, OleCommandTarget, iface)
-
-static HRESULT WINAPI WBOleCommandTarget_QueryInterface(IOleCommandTarget *iface,
-        REFIID riid, void **ppv)
-{
-    WebBrowser *This = OLECMD_THIS(iface);
-    return IWebBrowser2_QueryInterface(WEBBROWSER(This), riid, ppv);
-}
-
-static ULONG WINAPI WBOleCommandTarget_AddRef(IOleCommandTarget *iface)
-{
-    WebBrowser *This = OLECMD_THIS(iface);
-    return IWebBrowser2_AddRef(WEBBROWSER(This));
-}
-
-static ULONG WINAPI WBOleCommandTarget_Release(IOleCommandTarget *iface)
-{
-    WebBrowser *This = OLECMD_THIS(iface);
-    return IWebBrowser2_Release(WEBBROWSER(This));
-}
-
-static HRESULT WINAPI WBOleCommandTarget_QueryStatus(IOleCommandTarget *iface,
-        const GUID *pguidCmdGroup, ULONG cCmds, OLECMD prgCmds[], OLECMDTEXT *pCmdText)
-{
-    WebBrowser *This = OLECMD_THIS(iface);
-    IOleCommandTarget *cmdtrg;
-    HRESULT hres;
-
-    TRACE("(%p)->(%s %u %p %p)\n", This, debugstr_guid(pguidCmdGroup), cCmds, prgCmds,
-          pCmdText);
-
-    if(!This->doc_host.document)
-        return 0x80040104;
-
-    /* NOTE: There are probably some commands that we should handle here
-     * instead of forwarding to document object. */
-
-    hres = IUnknown_QueryInterface(This->doc_host.document, &IID_IOleCommandTarget, (void**)&cmdtrg);
-    if(FAILED(hres))
-        return hres;
-
-    hres = IOleCommandTarget_QueryStatus(cmdtrg, pguidCmdGroup, cCmds, prgCmds, pCmdText);
-    IOleCommandTarget_Release(cmdtrg);
-
-    return hres;
-}
-
-static HRESULT WINAPI WBOleCommandTarget_Exec(IOleCommandTarget *iface,
-        const GUID *pguidCmdGroup, DWORD nCmdID, DWORD nCmdexecopt, VARIANT *pvaIn,
-        VARIANT *pvaOut)
-{
-    WebBrowser *This = OLECMD_THIS(iface);
-    FIXME("(%p)->(%s %d %d %p %p)\n", This, debugstr_guid(pguidCmdGroup), nCmdID,
-          nCmdexecopt, pvaIn, pvaOut);
-    return E_NOTIMPL;
-}
-
-#undef OLECMD_THIS
-
-static const IOleCommandTargetVtbl OleCommandTargetVtbl = {
-    WBOleCommandTarget_QueryInterface,
-    WBOleCommandTarget_AddRef,
-    WBOleCommandTarget_Release,
-    WBOleCommandTarget_QueryStatus,
-    WBOleCommandTarget_Exec
-};
-
-void WebBrowser_OleObject_Init(WebBrowser *This)
-{
-    DWORD dpi_x;
-    DWORD dpi_y;
-    HDC hdc;
-
-    /* default aspect ratio is 96dpi / 96dpi */
-    hdc = GetDC(0);
-    dpi_x = GetDeviceCaps(hdc, LOGPIXELSX);
-    dpi_y = GetDeviceCaps(hdc, LOGPIXELSY);
-    ReleaseDC(0, hdc);
-
-    This->lpOleObjectVtbl              = &OleObjectVtbl;
-    This->lpOleInPlaceObjectVtbl       = &OleInPlaceObjectVtbl;
-    This->lpOleControlVtbl             = &OleControlVtbl;
-    This->lpOleInPlaceActiveObjectVtbl = &OleInPlaceActiveObjectVtbl;
-    This->lpOleCommandTargetVtbl     = &OleCommandTargetVtbl;
-
-    /* Default size is 50x20 pixels, in himetric units */
-    This->extent.cx = MulDiv( 50, 2540, dpi_x );
-    This->extent.cy = MulDiv( 20, 2540, dpi_y );
-}
-
-void WebBrowser_OleObject_Destroy(WebBrowser *This)
-{
-    release_client_site(This);
-}
diff --git a/reactos/dll/win32/shdocvw/persist.c b/reactos/dll/win32/shdocvw/persist.c
deleted file mode 100644 (file)
index 0bab6c4..0000000
+++ /dev/null
@@ -1,276 +0,0 @@
-/*
- * Implementation of IPersist interfaces for WebBrowser control
- *
- * Copyright 2001 John R. Sheets (for CodeWeavers)
- * Copyright 2005 Jacek Caban
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-#include <wine/debug.h>
-#include "shdocvw.h"
-
-WINE_DEFAULT_DEBUG_CHANNEL(shdocvw);
-
-/**********************************************************************
- * Implement the IPersistStorage interface
- */
-
-#define PERSTORAGE_THIS(ifce) DEFINE_THIS(WebBrowser, PersistStorage, iface)
-
-static HRESULT WINAPI PersistStorage_QueryInterface(IPersistStorage *iface,
-        REFIID riid, LPVOID *ppobj)
-{
-    WebBrowser *This = PERSTORAGE_THIS(iface);
-    return IWebBrowser_QueryInterface(WEBBROWSER(This), riid, ppobj);
-}
-
-static ULONG WINAPI PersistStorage_AddRef(IPersistStorage *iface)
-{
-    WebBrowser *This = PERSTORAGE_THIS(iface);
-    return IWebBrowser_AddRef(WEBBROWSER(This));
-}
-
-static ULONG WINAPI PersistStorage_Release(IPersistStorage *iface)
-{
-    WebBrowser *This = PERSTORAGE_THIS(iface);
-    return IWebBrowser_Release(WEBBROWSER(This));
-}
-
-static HRESULT WINAPI PersistStorage_GetClassID(IPersistStorage *iface, CLSID *pClassID)
-{
-    WebBrowser *This = PERSTORAGE_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, pClassID);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI PersistStorage_IsDirty(IPersistStorage *iface)
-{
-    WebBrowser *This = PERSTORAGE_THIS(iface);
-    FIXME("(%p)\n", This);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI PersistStorage_InitNew(IPersistStorage *iface, LPSTORAGE pStg)
-{
-    WebBrowser *This = PERSTORAGE_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, pStg);
-    return S_OK;
-}
-
-static HRESULT WINAPI PersistStorage_Load(IPersistStorage *iface, LPSTORAGE pStg)
-{
-    WebBrowser *This = PERSTORAGE_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, pStg);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI PersistStorage_Save(IPersistStorage *iface, LPSTORAGE pStg,
-        BOOL fSameAsLoad)
-{
-    WebBrowser *This = PERSTORAGE_THIS(iface);
-    FIXME("(%p)->(%p %x)\n", This, pStg, fSameAsLoad);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI PersistStorage_SaveCompleted(IPersistStorage *iface, LPSTORAGE pStgNew)
-{
-    WebBrowser *This = PERSTORAGE_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, pStgNew);
-    return E_NOTIMPL;
-}
-
-static const IPersistStorageVtbl PersistStorageVtbl =
-{
-    PersistStorage_QueryInterface,
-    PersistStorage_AddRef,
-    PersistStorage_Release,
-    PersistStorage_GetClassID,
-    PersistStorage_IsDirty,
-    PersistStorage_InitNew,
-    PersistStorage_Load,
-    PersistStorage_Save,
-    PersistStorage_SaveCompleted
-};
-
-/**********************************************************************
- * Implement the IPersistMemory interface
- */
-
-#define PERMEMORY_THIS(ifce) DEFINE_THIS(WebBrowser, PersistMemory, iface)
-
-static HRESULT WINAPI PersistMemory_QueryInterface(IPersistMemory *iface,
-        REFIID riid, LPVOID *ppobj)
-{
-    WebBrowser *This = PERMEMORY_THIS(iface);
-    return IWebBrowser_QueryInterface(WEBBROWSER(This), riid, ppobj);
-}
-
-static ULONG WINAPI PersistMemory_AddRef(IPersistMemory *iface)
-{
-    WebBrowser *This = PERMEMORY_THIS(iface);
-    return IWebBrowser_AddRef(WEBBROWSER(This));
-}
-
-static ULONG WINAPI PersistMemory_Release(IPersistMemory *iface)
-{
-    WebBrowser *This = PERMEMORY_THIS(iface);
-    return IWebBrowser_Release(WEBBROWSER(This));
-}
-
-static HRESULT WINAPI PersistMemory_GetClassID(IPersistMemory *iface, CLSID *pClassID)
-{
-    WebBrowser *This = PERMEMORY_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, pClassID);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI PersistMemory_IsDirty(IPersistMemory *iface)
-{
-    WebBrowser *This = PERMEMORY_THIS(iface);
-    FIXME("(%p)\n", This);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI PersistMemory_InitNew(IPersistMemory *iface)
-{
-    WebBrowser *This = PERMEMORY_THIS(iface);
-    FIXME("(%p)\n", This);
-    return S_OK;
-}
-
-static HRESULT WINAPI PersistMemory_Load(IPersistMemory *iface, LPVOID pMem, ULONG cbSize)
-{
-    WebBrowser *This = PERMEMORY_THIS(iface);
-    FIXME("(%p)->(%p %x)\n", This, pMem, cbSize);
-    return S_OK;
-}
-
-static HRESULT WINAPI PersistMemory_Save(IPersistMemory *iface, LPVOID pMem,
-        BOOL fClearDirty, ULONG cbSize)
-{
-    WebBrowser *This = PERMEMORY_THIS(iface);
-    FIXME("(%p)->(%p %x %x)\n", This, pMem, fClearDirty, cbSize);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI PersistMemory_GetSizeMax(IPersistMemory *iface, ULONG *pCbSize)
-{
-    WebBrowser *This = PERMEMORY_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, pCbSize);
-    return E_NOTIMPL;
-}
-
-static const IPersistMemoryVtbl PersistMemoryVtbl =
-{
-    PersistMemory_QueryInterface,
-    PersistMemory_AddRef,
-    PersistMemory_Release,
-    PersistMemory_GetClassID,
-    PersistMemory_IsDirty,
-    PersistMemory_Load,
-    PersistMemory_Save,
-    PersistMemory_GetSizeMax,
-    PersistMemory_InitNew
-};
-
-/**********************************************************************
- * Implement the IPersistStreamInit interface
- */
-
-#define PERSTRINIT_THIS(iface) DEFINE_THIS(WebBrowser, PersistStreamInit, iface)
-
-static HRESULT WINAPI PersistStreamInit_QueryInterface(IPersistStreamInit *iface,
-        REFIID riid, LPVOID *ppobj)
-{
-    WebBrowser *This = PERSTRINIT_THIS(iface);
-    return IWebBrowser_QueryInterface(WEBBROWSER(This), riid, ppobj);
-}
-
-static ULONG WINAPI PersistStreamInit_AddRef(IPersistStreamInit *iface)
-{
-    WebBrowser *This = PERSTRINIT_THIS(iface);
-    return IWebBrowser_AddRef(WEBBROWSER(This));
-}
-
-static ULONG WINAPI PersistStreamInit_Release(IPersistStreamInit *iface)
-{
-    WebBrowser *This = PERSTRINIT_THIS(iface);
-    return IWebBrowser_Release(WEBBROWSER(This));
-}
-
-static HRESULT WINAPI PersistStreamInit_GetClassID(IPersistStreamInit *iface, CLSID *pClassID)
-{
-    WebBrowser *This = PERSTRINIT_THIS(iface);
-    return IPersistStorage_GetClassID(PERSTORAGE(This), pClassID);
-}
-
-static HRESULT WINAPI PersistStreamInit_IsDirty(IPersistStreamInit *iface)
-{
-    WebBrowser *This = PERSTRINIT_THIS(iface);
-    return IPersistStorage_IsDirty(PERSTORAGE(This));
-}
-
-static HRESULT WINAPI PersistStreamInit_Load(IPersistStreamInit *iface, LPSTREAM pStg)
-{
-    WebBrowser *This = PERSTRINIT_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, pStg);
-    return S_OK;
-}
-
-static HRESULT WINAPI PersistStreamInit_Save(IPersistStreamInit *iface, LPSTREAM pStg,
-        BOOL fSameAsLoad)
-{
-    WebBrowser *This = PERSTRINIT_THIS(iface);
-    FIXME("(%p)->(%p %x)\n", This, pStg, fSameAsLoad);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI PersistStreamInit_GetSizeMax(IPersistStreamInit *iface,
-        ULARGE_INTEGER *pcbSize)
-{
-    WebBrowser *This = PERSTRINIT_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, pcbSize);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI PersistStreamInit_InitNew(IPersistStreamInit *iface)
-{
-    WebBrowser *This = PERSTRINIT_THIS(iface);
-    FIXME("(%p)\n", This);
-    return S_OK;
-}
-
-#undef PERSTRINIT_THIS
-
-static const IPersistStreamInitVtbl PersistStreamInitVtbl =
-{
-    PersistStreamInit_QueryInterface,
-    PersistStreamInit_AddRef,
-    PersistStreamInit_Release,
-    PersistStreamInit_GetClassID,
-    PersistStreamInit_IsDirty,
-    PersistStreamInit_Load,
-    PersistStreamInit_Save,
-    PersistStreamInit_GetSizeMax,
-    PersistStreamInit_InitNew
-};
-
-void WebBrowser_Persist_Init(WebBrowser *This)
-{
-    This->lpPersistStorageVtbl    = &PersistStorageVtbl;
-    This->lpPersistMemoryVtbl     = &PersistMemoryVtbl;
-    This->lpPersistStreamInitVtbl = &PersistStreamInitVtbl;
-}
diff --git a/reactos/dll/win32/shdocvw/resource.h b/reactos/dll/win32/shdocvw/resource.h
deleted file mode 100644 (file)
index 575f0ef..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Resource identifiers for shdocvw.dll
- *
- * Copyright 2010 Alexander N. Sørnes <alex@thehandofagony.com>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-//#include <windef.h>
-#include <winuser.h>
-
-#define IDR_BROWSE_MAIN_MENU           1000
-#define IDD_BROWSE_OPEN                1001
-#define IDC_BROWSE_OPEN_URL            1002
-#define IDC_BROWSE_REBAR               1003
-#define IDC_BROWSE_ADDRESSBAR          1004
-#define IDC_BROWSE_STATUSBAR           1005
-#define IDC_BROWSE_TOOLBAR             1006
-#define IDB_IETOOLBAR                  1007
-
-#define ID_BROWSE_NEW_WINDOW           275
-#define ID_BROWSE_OPEN                 256
-#define ID_BROWSE_SAVE                 257
-#define ID_BROWSE_SAVE_AS              258
-#define ID_BROWSE_PRINT_FORMAT         259
-#define ID_BROWSE_PRINT                260
-#define ID_BROWSE_PRINT_PREVIEW        277
-#define ID_BROWSE_PROPERTIES           262
-#define ID_BROWSE_QUIT                 278
-#define ID_BROWSE_ABOUT                336
-
-#define ID_BROWSE_ADDFAV               1200
-#define ID_BROWSE_HOME                 1201
-
-#define ID_BROWSE_BAR_STD              1300
-#define ID_BROWSE_BAR_ADDR             1301
-
-#define ID_BROWSE_GOTOFAV_FIRST        2000
-#define ID_BROWSE_GOTOFAV_MAX          65000
-
-#define IDS_TB_BACK                    1100
-#define IDS_TB_FORWARD                 1101
-#define IDS_TB_STOP                    1102
-#define IDS_TB_REFRESH                 1103
-#define IDS_TB_HOME                    1104
-#define IDS_TB_PRINT                   1105
-
-#define IDS_ADDRESS                    1106
index e471f32..da9c17b 100644 (file)
 
 #include <windef.h>
 #include <winbase.h>
-#include <wingdi.h>
 //#include "winuser.h"
-#include <winreg.h>
-#include <winver.h>
 
 #include <ole2.h>
-#include <olectl.h>
-#include <shellapi.h>
 #include <shlobj.h>
 //#include "exdisp.h"
-#include <mshtmhst.h>
-#include <hlink.h>
-#include <htiframe.h>
 
 #include <wine/unicode.h>
-#include "resource.h"
-
-
-#define WM_UPDATEADDRBAR    (WM_APP+1)
+//#include "wine/list.h"
 
 /**********************************************************************
  * Shell Instance Objects
  */
 extern HRESULT SHDOCVW_GetShellInstanceObjectClassObject(REFCLSID rclsid, 
-    REFIID riid, LPVOID *ppvClassObj);
-
-/**********************************************************************
- * WebBrowser declaration for SHDOCVW.DLL
- */
-
-typedef struct ConnectionPoint ConnectionPoint;
-typedef struct DocHost DocHost;
-
-typedef struct {
-    const IConnectionPointContainerVtbl *lpConnectionPointContainerVtbl;
-
-    ConnectionPoint *wbe2;
-    ConnectionPoint *wbe;
-    ConnectionPoint *pns;
-
-    IUnknown *impl;
-} ConnectionPointContainer;
-
-typedef struct {
-    const IHlinkFrameVtbl    *lpIHlinkFrameVtbl;
-    const ITargetFrame2Vtbl  *lpITargetFrame2Vtbl;
-
-    IUnknown *outer;
-    DocHost *doc_host;
-} HlinkFrame;
-
-struct _task_header_t;
-
-typedef void (*task_proc_t)(DocHost*, struct _task_header_t*);
-
-typedef struct _task_header_t {
-    task_proc_t proc;
-} task_header_t;
-
-typedef struct _IDocHostContainerVtbl
-{
-    void (WINAPI* GetDocObjRect)(DocHost*,RECT*);
-    HRESULT (WINAPI* SetStatusText)(DocHost*,LPCWSTR);
-    void (WINAPI* SetURL)(DocHost*,LPCWSTR);
-    HRESULT (*exec)(DocHost*,const GUID*,DWORD,DWORD,VARIANT*,VARIANT*);
-} IDocHostContainerVtbl;
-
-struct DocHost {
-    const IOleClientSiteVtbl      *lpOleClientSiteVtbl;
-    const IOleInPlaceSiteVtbl     *lpOleInPlaceSiteVtbl;
-    const IDocHostUIHandler2Vtbl  *lpDocHostUIHandlerVtbl;
-    const IOleDocumentSiteVtbl    *lpOleDocumentSiteVtbl;
-    const IOleCommandTargetVtbl   *lpOleCommandTargetVtbl;
-    const IDispatchVtbl           *lpDispatchVtbl;
-    const IPropertyNotifySinkVtbl *lpIPropertyNotifySinkVtbl;
-    const IServiceProviderVtbl    *lpServiceProviderVtbl;
-
-    /* Interfaces of InPlaceFrame object */
-    const IOleInPlaceFrameVtbl          *lpOleInPlaceFrameVtbl;
-
-    IDispatch *disp;
-
-    IDispatch *client_disp;
-    IDocHostUIHandler *hostui;
-    IOleInPlaceFrame *frame;
-
-    IUnknown *document;
-    IOleDocumentView *view;
-    IUnknown *doc_navigate;
-
-    const IDocHostContainerVtbl *container_vtbl;
-
-    HWND hwnd;
-    HWND frame_hwnd;
-
-    LPOLESTR url;
-
-    VARIANT_BOOL silent;
-    VARIANT_BOOL offline;
-    VARIANT_BOOL busy;
-
-    READYSTATE ready_state;
-    READYSTATE doc_state;
-    DWORD prop_notif_cookie;
-    BOOL is_prop_notif;
-
-    ConnectionPointContainer cps;
-};
-
-struct WebBrowser {
-    /* Interfaces available via WebBrowser object */
-
-    const IWebBrowser2Vtbl              *lpWebBrowser2Vtbl;
-    const IOleObjectVtbl                *lpOleObjectVtbl;
-    const IOleInPlaceObjectVtbl         *lpOleInPlaceObjectVtbl;
-    const IOleControlVtbl               *lpOleControlVtbl;
-    const IPersistStorageVtbl           *lpPersistStorageVtbl;
-    const IPersistMemoryVtbl            *lpPersistMemoryVtbl;
-    const IPersistStreamInitVtbl        *lpPersistStreamInitVtbl;
-    const IProvideClassInfo2Vtbl        *lpProvideClassInfoVtbl;
-    const IViewObject2Vtbl              *lpViewObjectVtbl;
-    const IOleInPlaceActiveObjectVtbl   *lpOleInPlaceActiveObjectVtbl;
-    const IOleCommandTargetVtbl         *lpOleCommandTargetVtbl;
-    const IServiceProviderVtbl          *lpServiceProviderVtbl;
-    const IDataObjectVtbl               *lpDataObjectVtbl;
-    HlinkFrame hlink_frame;
-
-    LONG ref;
-
-    INT version;
-
-    IOleClientSite *client;
-    IOleContainer *container;
-    IOleInPlaceSite *inplace;
-
-    /* window context */
-
-    HWND frame_hwnd;
-    IOleInPlaceUIWindow *uiwindow;
-    RECT pos_rect;
-    RECT clip_rect;
-    OLEINPLACEFRAMEINFO frameinfo;
-    SIZEL extent;
-
-    HWND shell_embedding_hwnd;
-
-    VARIANT_BOOL register_browser;
-    VARIANT_BOOL visible;
-    VARIANT_BOOL menu_bar;
-    VARIANT_BOOL address_bar;
-    VARIANT_BOOL status_bar;
-    VARIANT_BOOL tool_bar;
-    VARIANT_BOOL full_screen;
-    VARIANT_BOOL theater_mode;
-
-    DocHost doc_host;
-};
-
-struct InternetExplorer {
-    const IWebBrowser2Vtbl *lpWebBrowser2Vtbl;
-    HlinkFrame hlink_frame;
-
-    LONG ref;
-
-    HWND frame_hwnd;
-    HWND status_hwnd;
-    HMENU menu;
-
-    DocHost doc_host;
-};
-
-#define WEBBROWSER(x)   ((IWebBrowser*)                 &(x)->lpWebBrowser2Vtbl)
-#define WEBBROWSER2(x)  ((IWebBrowser2*)                &(x)->lpWebBrowser2Vtbl)
-#define OLEOBJ(x)       ((IOleObject*)                  &(x)->lpOleObjectVtbl)
-#define INPLACEOBJ(x)   ((IOleInPlaceObject*)           &(x)->lpOleInPlaceObjectVtbl)
-#define CONTROL(x)      ((IOleControl*)                 &(x)->lpOleControlVtbl)
-#define PERSTORAGE(x)   ((IPersistStorage*)             &(x)->lpPersistStorageVtbl)
-#define PERMEMORY(x)    ((IPersistMemory*)              &(x)->lpPersistMemoryVtbl)
-#define PERSTRINIT(x)   ((IPersistStreamInit*)          &(x)->lpPersistStreamInitVtbl)
-#define CLASSINFO(x)    ((IProvideClassInfo2*)          &(x)->lpProvideClassInfoVtbl)
-#define CONPTCONT(x)    ((IConnectionPointContainer*)   &(x)->lpConnectionPointContainerVtbl)
-#define VIEWOBJ(x)      ((IViewObject*)                 &(x)->lpViewObjectVtbl);
-#define VIEWOBJ2(x)     ((IViewObject2*)                &(x)->lpViewObjectVtbl);
-#define ACTIVEOBJ(x)    ((IOleInPlaceActiveObject*)     &(x)->lpOleInPlaceActiveObjectVtbl)
-#define OLECMD(x)       ((IOleCommandTarget*)           &(x)->lpOleCommandTargetVtbl)
-#define DATAOBJECT(x)   ((IDataObject*)                 &(x)->lpDataObjectVtbl)
-
-#define CLIENTSITE(x)   ((IOleClientSite*)              &(x)->lpOleClientSiteVtbl)
-#define INPLACESITE(x)  ((IOleInPlaceSite*)             &(x)->lpOleInPlaceSiteVtbl)
-#define DOCHOSTUI(x)    ((IDocHostUIHandler*)           &(x)->lpDocHostUIHandlerVtbl)
-#define DOCHOSTUI2(x)   ((IDocHostUIHandler2*)          &(x)->lpDocHostUIHandlerVtbl)
-#define DOCSITE(x)      ((IOleDocumentSite*)            &(x)->lpOleDocumentSiteVtbl)
-#define CLDISP(x)       ((IDispatch*)                   &(x)->lpDispatchVtbl)
-#define PROPNOTIF(x)    ((IPropertyNotifySink*)         &(x)->lpIPropertyNotifySinkVtbl)
-#define SERVPROV(x)     ((IServiceProvider*)            &(x)->lpServiceProviderVtbl)
-
-#define INPLACEFRAME(x) ((IOleInPlaceFrame*)            &(x)->lpOleInPlaceFrameVtbl)
-
-#define HLINKFRAME(x)   ((IHlinkFrame*)                 &(x)->lpIHlinkFrameVtbl)
-#define TARGETFRAME2(x) ((ITargetFrame2*)               &(x)->lpITargetFrame2Vtbl)
-
-void WebBrowser_OleObject_Init(WebBrowser*);
-void WebBrowser_ViewObject_Init(WebBrowser*);
-void WebBrowser_DataObject_Init(WebBrowser*);
-void WebBrowser_Persist_Init(WebBrowser*);
-void WebBrowser_ClassInfo_Init(WebBrowser*);
-
-void WebBrowser_OleObject_Destroy(WebBrowser*);
-
-void DocHost_Init(DocHost*,IDispatch*,const IDocHostContainerVtbl*);
-void DocHost_ClientSite_Init(DocHost*);
-void DocHost_Frame_Init(DocHost*);
-void release_dochost_client(DocHost*);
-
-void DocHost_Release(DocHost*);
-void DocHost_ClientSite_Release(DocHost*);
-
-void ConnectionPointContainer_Init(ConnectionPointContainer*,IUnknown*);
-void ConnectionPointContainer_Destroy(ConnectionPointContainer*);
-
-void HlinkFrame_Init(HlinkFrame*,IUnknown*,DocHost*);
-BOOL HlinkFrame_QI(HlinkFrame*,REFIID,void**);
-
-HRESULT WebBrowserV1_Create(IUnknown*,REFIID,void**);
-HRESULT WebBrowserV2_Create(IUnknown*,REFIID,void**);
-
-void create_doc_view_hwnd(DocHost*);
-void deactivate_document(DocHost*);
-HRESULT dochost_object_available(DocHost*,IUnknown*);
-void call_sink(ConnectionPoint*,DISPID,DISPPARAMS*);
-HRESULT navigate_url(DocHost*,LPCWSTR,const VARIANT*,const VARIANT*,VARIANT*,VARIANT*);
-HRESULT go_home(DocHost*);
-void set_doc_state(DocHost*,READYSTATE);
-
-#define WM_DOCHOSTTASK (WM_USER+0x300)
-void push_dochost_task(DocHost*,task_header_t*,task_proc_t,BOOL);
-LRESULT  process_dochost_task(DocHost*,LPARAM);
-
-HRESULT InternetExplorer_Create(IUnknown*,REFIID,void**);
-void InternetExplorer_WebBrowser_Init(InternetExplorer*);
-
-HRESULT CUrlHistory_Create(IUnknown*,REFIID,void**);
-
-HRESULT InternetShortcut_Create(IUnknown*,REFIID,void**);
-
-HRESULT TaskbarList_Create(IUnknown*,REFIID,void**);
-
-#define DEFINE_THIS2(cls,ifc,iface) ((cls*)((BYTE*)(iface)-offsetof(cls,ifc)))
-#define DEFINE_THIS(cls,ifc,iface) DEFINE_THIS2(cls,lp ## ifc ## Vtbl,iface)
+    REFIID riid, LPVOID *ppvClassObj) DECLSPEC_HIDDEN;
 
 /**********************************************************************
  * Dll lifetime tracking declaration for shdocvw.dll
  */
-extern LONG SHDOCVW_refCount;
+extern LONG SHDOCVW_refCount DECLSPEC_HIDDEN;
 static inline void SHDOCVW_LockModule(void) { InterlockedIncrement( &SHDOCVW_refCount ); }
 static inline void SHDOCVW_UnlockModule(void) { InterlockedDecrement( &SHDOCVW_refCount ); }
 
-extern HINSTANCE shdocvw_hinstance;
-extern void register_iewindow_class(void);
-extern void unregister_iewindow_class(void);
-extern HRESULT update_ie_statustext(InternetExplorer*, LPCWSTR);
-
-HRESULT register_class_object(BOOL);
-HRESULT get_typeinfo(ITypeInfo**);
-DWORD register_iexplore(BOOL);
-
-const char *debugstr_variant(const VARIANT*);
 
 /* memory allocation functions */
 
@@ -307,64 +62,9 @@ static inline void *heap_alloc(size_t len)
     return HeapAlloc(GetProcessHeap(), 0, len);
 }
 
-static inline void *heap_alloc_zero(size_t len)
-{
-    return HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, len);
-}
-
-static inline void *heap_realloc(void *mem, size_t len)
-{
-    return HeapReAlloc(GetProcessHeap(), 0, mem, len);
-}
-
 static inline BOOL heap_free(void *mem)
 {
     return HeapFree(GetProcessHeap(), 0, mem);
 }
 
-static inline LPWSTR heap_strdupW(LPCWSTR str)
-{
-    LPWSTR ret = NULL;
-
-    if(str) {
-        DWORD size;
-
-        size = (strlenW(str)+1)*sizeof(WCHAR);
-        ret = heap_alloc(size);
-        memcpy(ret, str, size);
-    }
-
-    return ret;
-}
-
-static inline LPWSTR co_strdupW(LPCWSTR str)
-{
-    WCHAR *ret = CoTaskMemAlloc((strlenW(str) + 1)*sizeof(WCHAR));
-    if (ret)
-        lstrcpyW(ret, str);
-    return ret;
-}
-
-static inline LPWSTR co_strdupAtoW(LPCSTR str)
-{
-    INT len;
-    WCHAR *ret;
-    len = MultiByteToWideChar(CP_ACP, 0, str, -1, NULL, 0);
-    ret = CoTaskMemAlloc(len*sizeof(WCHAR));
-    if (ret)
-        MultiByteToWideChar(CP_ACP, 0, str, -1, ret, len);
-    return ret;
-}
-
-static inline LPSTR co_strdupWtoA(LPCWSTR str)
-{
-    INT len;
-    CHAR *ret;
-    len = WideCharToMultiByte(CP_ACP, 0, str, -1, NULL, 0, 0, 0);
-    ret = CoTaskMemAlloc(len);
-    if (ret)
-        WideCharToMultiByte(CP_ACP, 0, str, -1, ret, len, 0, 0);
-    return ret;
-}
-
 #endif /* __WINE_SHDOCVW_H */
diff --git a/reactos/dll/win32/shdocvw/shdocvw.inf b/reactos/dll/win32/shdocvw/shdocvw.inf
deleted file mode 100644 (file)
index a612952..0000000
+++ /dev/null
@@ -1,158 +0,0 @@
-[version]
-Signature="$CHICAGO$"
-
-
-[RegisterDll]
-AddReg=Classes.Reg, URL.Reg
-
-
-[UnregisterDll]
-DelReg=Classes.Reg, URL.Reg
-
-
-[RegisterIE]
-AddReg=IE.Reg, Settings.Reg
-
-
-[UnregisterIE]
-DelReg=IE.Reg, Settings.Reg
-
-
-[Classes.Reg]
-HKCR,"CLSID\%CLSID_InternetExplorer%",,,"Internet Explorer(Ver 1.0)"
-HKCR,"CLSID\%CLSID_InternetExplorer%\LocalServer32",,,"""%16422%\Internet Explorer\iexplore.exe"""
-HKCR,"CLSID\%CLSID_InternetExplorer%\ProgID",,,"InternetExplorer.Application.1"
-HKCR,"CLSID\%CLSID_InternetExplorer%\VersionIndependentProgID",,,"InternetExplorer.Application"
-HKCR,"InternetExplorer.Application",,,"Internet Explorer(Ver 1.0)"
-HKCR,"InternetExplorer.Application\CLSID",,,"%CLSID_InternetExplorer%"
-HKCR,"InternetExplorer.Application\CurVer",,,"InternetExplorer.Application.1"
-HKCR,"InternetExplorer.Application.1",,,"Internet Explorer(Ver 1.0)"
-HKCR,"InternetExplorer.Application.1\CLSID",,,"%CLSID_InternetExplorer%"
-
-HKCR,"CLSID\%CLSID_SearchAssistantOC%",,,"SearchAssistantOC"
-HKCR,"CLSID\%CLSID_SearchAssistantOC%\InProcServer32",,,"%MODULE%"
-HKCR,"CLSID\%CLSID_SearchAssistantOC%\InProcServer32","ThreadingModel",,"Apartment"
-HKCR,"CLSID\%CLSID_SearchAssistantOC%\ProgID",,,"SearchAssistantOC.SearchAssistantOC.1"
-HKCR,"CLSID\%CLSID_SearchAssistantOC%\VersionIndependentProgID",,,"SearchAssistantOC.SearchAssistantOC"
-HKCR,"SearchAssistantOC.SearchAssistantOC",,,"SearchAssistantOC"
-HKCR,"SearchAssistantOC.SearchAssistantOC\CLSID",,,"%CLSID_SearchAssistantOC%"
-HKCR,"SearchAssistantOC.SearchAssistantOC\CurVer",,,"SearchAssistantOC.SearchAssistantOC.1"
-HKCR,"SearchAssistantOC.SearchAssistantOC.1",,,"SearchAssistantOC"
-HKCR,"SearchAssistantOC.SearchAssistantOC.1\CLSID",,,"%CLSID_SearchAssistantOC%"
-
-HKCR,"CLSID\%CLSID_ShellNameSpace%",,,"Shell Name Space"
-HKCR,"CLSID\%CLSID_ShellNameSpace%\InProcServer32",,,"%MODULE%"
-HKCR,"CLSID\%CLSID_ShellNameSpace%\InProcServer32","ThreadingModel",,"Apartment"
-HKCR,"CLSID\%CLSID_ShellNameSpace%\ProgID",,,"ShellNameSpace.ShellNameSpace.1"
-HKCR,"CLSID\%CLSID_ShellNameSpace%\VersionIndependentProgID",,,"ShellNameSpace.ShellNameSpace"
-
-HKCR,"CLSID\%CLSID_CUrlHistory%",,,"Microsoft Url History Service"
-HKCR,"CLSID\%CLSID_CUrlHistory%\InProcServer32",,,"%MODULE%"
-HKCR,"CLSID\%CLSID_CUrlHistory%\InProcServer32","ThreadingModel",,"Apartment"
-
-HKCR,"CLSID\%CLSID_MruLongList%",,,"MruLongList"
-HKCR,"CLSID\%CLSID_MruLongList%\InProcServer32",,,"%MODULE%"
-HKCR,"CLSID\%CLSID_MruLongList%\InProcServer32","ThreadingModel",,"Apartment"
-
-HKCR,"CLSID\%CLSID_ShellShellNameSpace%",,,"Shell Name Space"
-HKCR,"CLSID\%CLSID_ShellShellNameSpace%\InProcServer32",,,"%MODULE%"
-HKCR,"CLSID\%CLSID_ShellShellNameSpace%\InProcServer32","ThreadingModel",,"Apartment"
-HKCR,"CLSID\%CLSID_ShellShellNameSpace%\ProgID",,,"ShellNameSpace.ShellNameSpace.1"
-HKCR,"CLSID\%CLSID_ShellShellNameSpace%\VersionIndependentProgID",,,"ShellNameSpace.ShellNameSpace"
-
-HKCR,"CLSID\%CLSID_ShellUIHelper%",,,"Microsoft Shell UI Helper"
-HKCR,"CLSID\%CLSID_ShellUIHelper%\InProcServer32",,,"%MODULE%"
-HKCR,"CLSID\%CLSID_ShellUIHelper%\InProcServer32","ThreadingModel",,"Apartment"
-HKCR,"CLSID\%CLSID_ShellUIHelper%\ProgID",,,"Shell.UIHelper.1"
-HKCR,"Shell.UIHelper",,,"Microsoft Shell UI Helper"
-HKCR,"Shell.UIHelper\CLSID",,,"%CLSID_ShellUIHelper%"
-HKCR,"Shell.UIHelper\CurVer",,,"Shell.UIHelper.2"
-HKCR,"Shell.UIHelper.1",,,"Microsoft Shell UI Helper"
-HKCR,"Shell.UIHelper.1\CLSID",,,"%CLSID_ShellUIHelper%"
-
-HKCR,"CLSID\%CLSID_Internet%\DefaultIcon",,,"shdoclc.dll,-190"
-HKCR,"CLSID\%CLSID_Internet%\InProcServer32",,,"%MODULE%"
-HKCR,"CLSID\%CLSID_Internet%\InProcServer32","ThreadingModel",,"Apartment"
-HKCR,"CLSID\%CLSID_Internet%\Shell",,,"OpenHomePage"
-HKCR,"CLSID\%CLSID_Internet%\Shell\OpenHomePage",,,"Open &Home Page"
-HKCR,"CLSID\%CLSID_Internet%\Shell\OpenHomePage\Command",,,"""%16422%\Internet Explorer\iexplore.exe"""
-HKCR,"CLSID\%CLSID_Internet%\ShellFolder",,2,"0x24"
-
-HKCR,"CLSID\%CLSID_WebBrowser%",,,"Microsoft Web Browser"
-HKCR,"CLSID\%CLSID_WebBrowser%\InProcServer32",,,"%MODULE%"
-HKCR,"CLSID\%CLSID_WebBrowser%\InProcServer32","ThreadingModel",,"Apartment"
-HKCR,"CLSID\%CLSID_WebBrowser%\ProgID",,,"Shell.Explorer.2"
-HKCR,"CLSID\%CLSID_WebBrowser%\VersionIndependentProgID",,,"Shell.Explorer"
-HKCR,"Shell.Explorer",,,"Microsoft Web Browser"
-HKCR,"Shell.Explorer\CLSID",,,"%CLSID_WebBrowser%"
-HKCR,"Shell.Explorer\CurVer",,,"Shell.Explorer.2"
-HKCR,"Shell.Explorer.2",,,"Microsoft Web Browser"
-HKCR,"Shell.Explorer.2\CLSID",,,"%CLSID_WebBrowser%"
-
-HKCR,"CLSID\%CLSID_ShellWindows%",,,"ShellWindows"
-HKCR,"CLSID\%CLSID_ShellWindows%\InProcServer32",,,"%MODULE%"
-HKCR,"CLSID\%CLSID_ShellWindows%\InProcServer32","ThreadingModel",,"Apartment"
-
-HKCR,"CLSID\%CLSID_MicrosoftBrowserArchitecture%",,,"Microsoft Browser Architecture"
-HKCR,"CLSID\%CLSID_MicrosoftBrowserArchitecture%\InProcServer32",,,"%MODULE%"
-HKCR,"CLSID\%CLSID_MicrosoftBrowserArchitecture%\InProcServer32","ThreadingModel",,"Apartment"
-
-HKCR,"CLSID\%CLSID_ShellSearchAssistantOC%",,,"SearchAssistantOC"
-HKCR,"CLSID\%CLSID_ShellSearchAssistantOC%\InProcServer32",,,"%MODULE%"
-HKCR,"CLSID\%CLSID_ShellSearchAssistantOC%\InProcServer32","ThreadingModel",,"Apartment"
-HKCR,"CLSID\%CLSID_ShellSearchAssistantOC%\ProgID",,,"SearchAssistantOC.SearchAssistantOC.1"
-HKCR,"CLSID\%CLSID_ShellSearchAssistantOC%\VersionIndependentProgID",,,"SearchAssistantOC.SearchAssistantOC"
-
-HKCR,"CLSID\%CLSID_WebBrowser_V1%",,,"Microsoft Web Browser Version 1"
-HKCR,"CLSID\%CLSID_WebBrowser_V1%\InProcServer32",,,"%MODULE%"
-HKCR,"CLSID\%CLSID_WebBrowser_V1%\InProcServer32","ThreadingModel",,"Apartment"
-HKCR,"CLSID\%CLSID_WebBrowser_V1%\ProgID",,,"Shell.Explorer.1"
-HKCR,"CLSID\%CLSID_WebBrowser_V1%\VersionIndependentProgID",,,"Shell.Explorer"
-HKCR,"Shell.Explorer.1",,,"Microsoft Web Browser"
-HKCR,"Shell.Explorer.1\CLSID",,,"%CLSID_WebBrowser_V1%"
-
-HKCR,"CLSID\%CLSID_InternetShortcut%",,,"Internet Shortcut"
-HKCR,"CLSID\%CLSID_InternetShortcut%\InProcServer32",,,"%MODULE%"
-HKCR,"CLSID\%CLSID_InternetShortcut%\InProcServer32","ThreadingModel",,"Apartment"
-HKCR,"CLSID\%CLSID_InternetShortcut%\ProgID",,,"InternetShortcut"
-HKCR,"CLSID\%CLSID_InternetShortcut%\shellex\MayChangeDefaultMenu",,16
-HKCR,"InternetShortcut",,,"Internet Shortcut"
-HKCR,"InternetShortcut","EditFlags",2,"2"
-HKCR,"InternetShortcut","IsShortcut",,
-HKCR,"InternetShortcut","NeverShowExt",,
-HKCR,"InternetShortcut\CLSID",,,"%CLSID_InternetShortcut%"
-HKCR,"InternetShortcut\DefaultIcon",,,"url.dll,0"
-HKCR,"InternetShortcut\shell\open\command",,,"rundll32.exe shdocvw.dll,OpenURL %l"
-HKCR,"InternetShortcut\shell\print\command",,,"rundll32.exe mshtml.dll,PrintHTML ""%1"""
-HKCR,"InternetShortcut\shell\printto\command",,,"rundll32.exe mshtml.dll,PrintHTML ""%1"" ""%2"" ""%3"" ""%4"""
-
-HKCR,"CLSID\%CLSID_TaskbarList%",,,"Task Bar Communication"
-HKCR,"CLSID\%CLSID_TaskbarList%\InProcServer32",,,"%MODULE%"
-HKCR,"CLSID\%CLSID_TaskbarList%\InProcServer32","ThreadingModel",,"Apartment"
-
-[URL.Reg]
-HKLM,"Software\Microsoft\Windows\CurrentVersion\URL\DefaultPrefix",,,"http://"
-HKLM,"Software\Microsoft\Windows\CurrentVersion\URL\Prefixes","ftp",,"ftp://"
-HKLM,"Software\Microsoft\Windows\CurrentVersion\URL\Prefixes","gopher",,"gopher://"
-HKLM,"Software\Microsoft\Windows\CurrentVersion\URL\Prefixes","home",,"http://"
-HKLM,"Software\Microsoft\Windows\CurrentVersion\URL\Prefixes","mosaic",,"http://"
-HKLM,"Software\Microsoft\Windows\CurrentVersion\URL\Prefixes","www",,"http://"
-
-
-[Settings.Reg]
-HKCU,"Software\Microsoft\Internet Explorer\Main","Start Page",2,"http://www.winehq.org"
-HKCU,"Software\Microsoft\Internet Explorer\Main","Search Page",2,"http://www.google.com"
-HKCU,"Software\Microsoft\Internet Explorer\Settings","Text Color",2,"0,0,0"
-HKLM,"Software\Microsoft\Internet Explorer\Main","Default_Page_URL",2,"http://www.winehq.org"
-HKLM,"Software\Microsoft\Windows\CurrentVersion\App Paths\iexplore.exe",,,"%16422%\Internet Explorer\iexplore.exe"
-HKLM,"Software\Microsoft\Windows\CurrentVersion\App Paths\iexplore.exe","Path",,"%16422%\Internet Explorer;"
-
-
-[IE.Reg]
-HKLM,"Software\Microsoft\Internet Explorer","Build",,"86001"
-HKLM,"Software\Microsoft\Internet Explorer","Version",,"8.0.6001.18702"
-HKLM,"Software\Microsoft\Internet Explorer","W2kVersion",,"8.0.6001.18702"
-
-
-[Strings]
-MODULE="shdocvw.dll"
index 4dfefce..37a6333 100644 (file)
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
  */
 
-#define WINE_OLESELFREGISTER
+#include <windef.h>
+
+LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
+
 #define WINE_FILEDESCRIPTION_STR "Wine core dll"
 #define WINE_FILENAME_STR "shdocvw.dll"
 #define WINE_FILEVERSION 6,0,2900,2180
 #define WINE_FILEVERSION_STR "6.0.2900.2180"
 #define WINE_PRODUCTVERSION 6,0,2900,2180
 #define WINE_PRODUCTVERSION_STR "6.0.2900.2180"
+#define WINE_EXTRAVALUES VALUE "OLESelfRegister",""
 
-#include "wine/wine_common_ver.rc"
-
-LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
-
-/* @makedep: shdocvw_v1.tlb */
-1 TYPELIB shdocvw_v1.tlb
-
-/* @makedep: shdocvw.inf */
-REGINST REGINST shdocvw.inf
-
-/* @makedep: ietoolbar.bmp */
-IDB_IETOOLBAR BITMAP ietoolbar.bmp
-
-#ifdef LANGUAGE_DE_DE
-    #include "De.rc"
-#endif
-#ifdef LANGUAGE_EN_US
-    #include "En.rc"
-#endif
-#ifdef LANGUAGE_ES_ES
-    #include "Es.rc"
-#endif
-#ifdef LANGUAGE_FR_FR
-    #include "Fr.rc"
-#endif
-#ifdef LANGUAGE_HE_IL
-    #include "He.rc"
-#endif
-#ifdef LANGUAGE_IT_IT
-    #include "It.rc"
-#endif
-#ifdef LANGUAGE_KO_KR
-    #include "Ko.rc"
-#endif
-#ifdef LANGUAGE_LT_LT
-    #include "Lt.rc"
-#endif
-#ifdef LANGUAGE_NL_NL
-    #include "Nl.rc"
-#endif
-//#include "Pl.rc"
-#ifdef LANGUAGE_PT_PT
-    #include "Pt.rc"
-#endif
-#ifdef LANGUAGE_RO_RO
-    #include "Ro.rc"
-#endif
-#ifdef LANGUAGE_SL_SI
-    #include "Si.rc"
-#endif
-#ifdef LANGUAGE_SR_SP
-    #include "Sr.rc"
-#endif
-#ifdef LANGUAGE_SV_SE
-    #include "Sv.rc"
-#endif
-#ifdef LANGUAGE_TR_TR
-    #include "Tr.rc"
-#endif
-#ifdef LANGUAGE_UK_UA
-    #include "Uk.rc"
-#endif
+#include <wine/wine_common_ver.rc>
index 4f1cbf2..2ca6d02 100644 (file)
@@ -20,7 +20,7 @@
 123 stdcall -noname StopWatchAFORWARD(long str long long long)
 124 stdcall -noname StopWatchWFORWARD(long wstr long long long)
 125 stdcall -noname RunInstallUninstallStubs()
-130 stub -noname RunInstallUninstallStubs2
+130 stdcall -noname RunInstallUninstallStubs2()
 131 stub -noname SHCreateSplashScreen
 135 stub -noname IsFileUrl
 136 stub -noname IsFileUrlW
 @ stub IEWriteErrorLog
 @ stdcall ImportPrivacySettings(wstr ptr ptr)
 @ stub InstallReg_RunDLL
-@ stdcall OpenURL(long long str long)
+@ stdcall OpenURL(long long str long) ieframe.OpenURL
 @ stub SHGetIDispatchForFolder
 @ stdcall SetQueryNetSessionCount(long)
 @ stub SoftwareUpdateMessageBox
index 6f752d5..bbab837 100644 (file)
 
 #include "shdocvw.h"
 
-//#include "winreg.h"
+#include <winreg.h>
 #include <shlwapi.h>
 #include <wininet.h>
+//#include "isguids.h"
 
 //#include "initguid.h"
 
@@ -40,56 +41,101 @@ WINE_DEFAULT_DEBUG_CHANNEL(shdocvw);
 
 LONG SHDOCVW_refCount = 0;
 
-HINSTANCE shdocvw_hinstance = 0;
 static HMODULE SHDOCVW_hshell32 = 0;
-static ITypeInfo *wb_typeinfo = NULL;
+static HINSTANCE ieframe_instance;
 
-HRESULT get_typeinfo(ITypeInfo **typeinfo)
+static HINSTANCE get_ieframe_instance(void)
 {
-    ITypeLib *typelib;
-    HRESULT hres;
+    static const WCHAR ieframe_dllW[] = {'i','e','f','r','a','m','e','.','d','l','l',0};
 
-    if(wb_typeinfo) {
-        *typeinfo = wb_typeinfo;
-        return S_OK;
-    }
+    if(!ieframe_instance)
+        ieframe_instance = LoadLibraryW(ieframe_dllW);
+
+    return ieframe_instance;
+}
+
+static HRESULT get_ieframe_object(REFCLSID rclsid, REFIID riid, void **ppv)
+{
+    HINSTANCE ieframe_instance;
 
-    hres = LoadRegTypeLib(&LIBID_SHDocVw, 1, 1, LOCALE_SYSTEM_DEFAULT, &typelib);
-    if(FAILED(hres)) {
-        ERR("LoadRegTypeLib failed: %08x\n", hres);
-        return hres;
+    static HRESULT (WINAPI *ieframe_DllGetClassObject)(REFCLSID,REFIID,void**);
+
+    if(!ieframe_DllGetClassObject) {
+        ieframe_instance = get_ieframe_instance();
+        if(!ieframe_instance)
+            return CLASS_E_CLASSNOTAVAILABLE;
+
+        ieframe_DllGetClassObject = (void*)GetProcAddress(ieframe_instance, "DllGetClassObject");
+        if(!ieframe_DllGetClassObject)
+            return CLASS_E_CLASSNOTAVAILABLE;
     }
 
-    hres = ITypeLib_GetTypeInfoOfGuid(typelib, &IID_IWebBrowser2, &wb_typeinfo);
-    ITypeLib_Release(typelib);
+    return ieframe_DllGetClassObject(rclsid, riid, ppv);
+}
+
+/*************************************************************************
+ *              DllGetClassObject (SHDOCVW.@)
+ */
+HRESULT WINAPI DllGetClassObject(REFCLSID rclsid, REFIID riid, void **ppv)
+{
+    TRACE("\n");
+
+    if(IsEqualGUID(&CLSID_WebBrowser, rclsid)
+       || IsEqualGUID(&CLSID_WebBrowser_V1, rclsid)
+       || IsEqualGUID(&CLSID_InternetShortcut, rclsid)
+       || IsEqualGUID(&CLSID_CUrlHistory, rclsid)
+       || IsEqualGUID(&CLSID_TaskbarList, rclsid))
+        return get_ieframe_object(rclsid, riid, ppv);
 
-    *typeinfo = wb_typeinfo;
-    return hres;
+    /* As a last resort, figure if the CLSID belongs to a 'Shell Instance Object' */
+    return SHDOCVW_GetShellInstanceObjectClassObject(rclsid, riid, ppv);
 }
 
-const char *debugstr_variant(const VARIANT *v)
+/***********************************************************************
+ *          DllRegisterServer (shdocvw.@)
+ */
+HRESULT WINAPI DllRegisterServer(void)
 {
-    if(!v)
-        return "(null)";
-
-    switch(V_VT(v)) {
-    case VT_EMPTY:
-        return "{VT_EMPTY}";
-    case VT_NULL:
-        return "{VT_NULL}";
-    case VT_I4:
-        return wine_dbg_sprintf("{VT_I4: %d}", V_I4(v));
-    case VT_R8:
-        return wine_dbg_sprintf("{VT_R8: %lf}", V_R8(v));
-    case VT_BSTR:
-        return wine_dbg_sprintf("{VT_BSTR: %s}", debugstr_w(V_BSTR(v)));
-    case VT_DISPATCH:
-        return wine_dbg_sprintf("{VT_DISPATCH: %p}", V_DISPATCH(v));
-    case VT_BOOL:
-        return wine_dbg_sprintf("{VT_BOOL: %x}", V_BOOL(v));
-    default:
-        return wine_dbg_sprintf("{vt %d}", V_VT(v));
-    }
+    TRACE("\n");
+    return S_OK;
+}
+
+/***********************************************************************
+ *          DllUnregisterServer (shdocvw.@)
+ */
+HRESULT WINAPI DllUnregisterServer(void)
+{
+    TRACE("\n");
+    return S_OK;
+}
+
+/******************************************************************
+ *             IEWinMain            (SHDOCVW.101)
+ *
+ * Only returns on error.
+ */
+DWORD WINAPI IEWinMain(LPSTR szCommandLine, int nShowWindow)
+{
+    DWORD (WINAPI *pIEWinMain)(const WCHAR*,int);
+    WCHAR *cmdline;
+    DWORD ret, len;
+
+    TRACE("%s %d\n", debugstr_a(szCommandLine), nShowWindow);
+
+    pIEWinMain = (void*)GetProcAddress(get_ieframe_instance(), MAKEINTRESOURCEA(101));
+    if(!pIEWinMain)
+        ExitProcess(1);
+
+    len = MultiByteToWideChar(CP_ACP, 0, szCommandLine, -1, NULL, 0);
+    cmdline = heap_alloc(len*sizeof(WCHAR));
+    if(!cmdline)
+        ExitProcess(1);
+    MultiByteToWideChar(CP_ACP, 0, szCommandLine, -1, cmdline, len);
+
+    ret = pIEWinMain(cmdline, nShowWindow);
+
+    heap_free(cmdline);
+    return ret;
 }
 
 /*************************************************************************
@@ -101,14 +147,11 @@ BOOL WINAPI DllMain(HINSTANCE hinst, DWORD fdwReason, LPVOID fImpLoad)
     switch (fdwReason)
     {
         case DLL_PROCESS_ATTACH:
-        shdocvw_hinstance = hinst;
-        register_iewindow_class();
         break;
     case DLL_PROCESS_DETACH:
         if (SHDOCVW_hshell32) FreeLibrary(SHDOCVW_hshell32);
-        unregister_iewindow_class();
-        if(wb_typeinfo)
-            ITypeInfo_Release(wb_typeinfo);
+        if(ieframe_instance)
+            FreeLibrary(ieframe_instance);
         break;
     }
     return TRUE;
@@ -209,6 +252,17 @@ DWORD WINAPI RunInstallUninstallStubs(void)
     return 0x0deadbee;
 }
 
+/***********************************************************************
+ *              @ (SHDOCVW.130)
+ *
+ * Called by Emerge Desktop (alternative Windows Shell).
+ */
+DWORD WINAPI RunInstallUninstallStubs2(void)
+{
+    FIXME("(), stub!\n");
+    return 0x0deadbee;
+}
+
 /***********************************************************************
  *              SetQueryNetSessionCount (SHDOCVW.@)
  */
@@ -333,14 +387,8 @@ DWORD WINAPI ParseURLFromOutsideSourceW(LPCWSTR url, LPWSTR out, LPDWORD plen, L
     if (!PathIsURLW(ptr)) {
         len = sizeof(buffer_in) / sizeof(buffer_in[0]);
         buffer_in[0] = 0;
-        hr = UrlApplySchemeW(ptr, buffer_in, &len, URL_APPLY_GUESSSCHEME);
+        hr = UrlApplySchemeW(ptr, buffer_in, &len, URL_APPLY_GUESSSCHEME | URL_APPLY_DEFAULT);
         TRACE("got 0x%x with %s\n", hr, debugstr_w(buffer_in));
-        if (hr != S_OK) {
-            /* when we can't guess the scheme, use the default scheme */
-            len = sizeof(buffer_in) / sizeof(buffer_in[0]);
-            hr = UrlApplySchemeW(ptr, buffer_in, &len, URL_APPLY_DEFAULT);
-        }
-
         if (hr == S_OK) {
             /* we parsed the url to buffer_in */
             ptr = buffer_in;
index 03499a6..90a9452 100644 (file)
  * some registry entries. This feature was introduced with win2k. Please
  * search for 'Shell Instance Objects' on MSDN to get more information. */
 
-//#include <stdarg.h>
+#include <stdarg.h>
 
 #define COBJMACROS
 
-//#include "windef.h"
-//#include "winbase.h"
-//#include "winreg.h"
+#include <windef.h>
+#include <winbase.h>
+#include <winreg.h>
 //#include "objbase.h"
 //#include "oleauto.h"
 
@@ -40,8 +40,6 @@
 
 WINE_DEFAULT_DEBUG_CHANNEL(shdocvw);
 
-#define ADJUST_THIS(c,m,p) ((c*)(((long)p)-(long)&(((c*)0)->lp##m##Vtbl)))
-#define STATIC_CAST(i,p) ((i*)&p->lp##i##Vtbl)
 #define CHARS_IN_GUID 39
 
 /******************************************************************************
@@ -50,22 +48,20 @@ WINE_DEFAULT_DEBUG_CHANNEL(shdocvw);
  * Gives access to a registry key's values via the IPropertyBag interface.
  */
 typedef struct _RegistryPropertyBag {
-    const IPropertyBagVtbl *lpIPropertyBagVtbl;
+    IPropertyBag           IPropertyBag_iface;
     LONG                   m_cRef;
     HKEY                   m_hInitPropertyBagKey;
 } RegistryPropertyBag;
 
-static void RegistryPropertyBag_Destroy(RegistryPropertyBag *This) {
-    TRACE("This=%p)\n", This);
-
-    RegCloseKey(This->m_hInitPropertyBagKey);
-    heap_free(This);
+static inline RegistryPropertyBag *impl_from_IPropertyBag(IPropertyBag *iface)
+{
+    return CONTAINING_RECORD(iface, RegistryPropertyBag, IPropertyBag_iface);
 }
 
 static HRESULT WINAPI RegistryPropertyBag_IPropertyBag_QueryInterface(IPropertyBag *iface,
     REFIID riid, void **ppv)
 {
-    RegistryPropertyBag *This = ADJUST_THIS(RegistryPropertyBag, IPropertyBag, iface);
+    RegistryPropertyBag *This = impl_from_IPropertyBag(iface);
 
     TRACE("(iface=%p, riid=%s, ppv=%p)\n", iface, debugstr_guid(riid), ppv);
 
@@ -73,7 +69,7 @@ static HRESULT WINAPI RegistryPropertyBag_IPropertyBag_QueryInterface(IPropertyB
         return E_INVALIDARG;
 
     if (IsEqualIID(&IID_IUnknown, riid) || IsEqualIID(&IID_IPropertyBag, riid)) {
-        *ppv = STATIC_CAST(IPropertyBag, This);
+        *ppv = &This->IPropertyBag_iface;
     } else {
         *ppv = NULL;
         return E_NOINTERFACE;
@@ -83,8 +79,9 @@ static HRESULT WINAPI RegistryPropertyBag_IPropertyBag_QueryInterface(IPropertyB
     return S_OK;
 }
 
-static ULONG WINAPI RegistryPropertyBag_IPropertyBag_AddRef(IPropertyBag *iface) {
-    RegistryPropertyBag *This = ADJUST_THIS(RegistryPropertyBag, IPropertyBag, iface);
+static ULONG WINAPI RegistryPropertyBag_IPropertyBag_AddRef(IPropertyBag *iface)
+{
+    RegistryPropertyBag *This = impl_from_IPropertyBag(iface);
     ULONG cRef;
 
     TRACE("(iface=%p)\n", iface);
@@ -97,16 +94,19 @@ static ULONG WINAPI RegistryPropertyBag_IPropertyBag_AddRef(IPropertyBag *iface)
     return cRef;
 }
 
-static ULONG WINAPI RegistryPropertyBag_IPropertyBag_Release(IPropertyBag *iface) {
-    RegistryPropertyBag *This = ADJUST_THIS(RegistryPropertyBag, IPropertyBag, iface);
+static ULONG WINAPI RegistryPropertyBag_IPropertyBag_Release(IPropertyBag *iface)
+{
+    RegistryPropertyBag *This = impl_from_IPropertyBag(iface);
     ULONG cRef;
 
     TRACE("(iface=%p)\n", iface);
 
     cRef = InterlockedDecrement(&This->m_cRef);
 
-    if (cRef == 0) { 
-        RegistryPropertyBag_Destroy(This);
+    if (cRef == 0) {
+        TRACE("Destroying This=%p)\n", This);
+        RegCloseKey(This->m_hInitPropertyBagKey);
+        heap_free(This);
         SHDOCVW_UnlockModule();
     }
 
@@ -116,7 +116,7 @@ static ULONG WINAPI RegistryPropertyBag_IPropertyBag_Release(IPropertyBag *iface
 static HRESULT WINAPI RegistryPropertyBag_IPropertyBag_Read(IPropertyBag *iface,
     LPCOLESTR pwszPropName, VARIANT *pVar, IErrorLog *pErrorLog)
 {
-    RegistryPropertyBag *This = ADJUST_THIS(RegistryPropertyBag, IPropertyBag, iface);
+    RegistryPropertyBag *This = impl_from_IPropertyBag(iface);
     WCHAR *pwszValue;
     DWORD dwType, cbData;
     LONG res;
@@ -178,15 +178,15 @@ static HRESULT RegistryPropertyBag_Constructor(HKEY hInitPropertyBagKey, REFIID
     
     pRegistryPropertyBag = heap_alloc(sizeof(RegistryPropertyBag));
     if (pRegistryPropertyBag) {
-        pRegistryPropertyBag->lpIPropertyBagVtbl = &RegistryPropertyBag_IPropertyBagVtbl;
+        pRegistryPropertyBag->IPropertyBag_iface.lpVtbl = &RegistryPropertyBag_IPropertyBagVtbl;
         pRegistryPropertyBag->m_cRef = 0;
         pRegistryPropertyBag->m_hInitPropertyBagKey = hInitPropertyBagKey;
 
         /* The clasping AddRef/Release is for the case that QueryInterface fails, which will result
          * in a reference count of 0 in the Release call, which will result in object destruction.*/
-        IPropertyBag_AddRef(STATIC_CAST(IPropertyBag, pRegistryPropertyBag));
-        hr = IPropertyBag_QueryInterface(STATIC_CAST(IPropertyBag, pRegistryPropertyBag), riid, ppvObject);
-        IPropertyBag_Release(STATIC_CAST(IPropertyBag, pRegistryPropertyBag));
+        IPropertyBag_AddRef(&pRegistryPropertyBag->IPropertyBag_iface);
+        hr = IPropertyBag_QueryInterface(&pRegistryPropertyBag->IPropertyBag_iface, riid, ppvObject);
+        IPropertyBag_Release(&pRegistryPropertyBag->IPropertyBag_iface);
     }
 
     return hr;
@@ -198,21 +198,21 @@ static HRESULT RegistryPropertyBag_Constructor(HKEY hInitPropertyBagKey, REFIID
  * values of a PropertyBag.
  */
 typedef struct _InstanceObjectFactory {
-    const IClassFactoryVtbl *lpIClassFactoryVtbl;
+    IClassFactory           IClassFactory_iface;
     LONG                    m_cRef;
     CLSID                   m_clsidInstance; /* CLSID of the objects to create. */
     IPropertyBag            *m_pPropertyBag; /* PropertyBag to initialize those objects. */
 } InstanceObjectFactory;
 
-static void InstanceObjectFactory_Destroy(InstanceObjectFactory *This) {
-    IPropertyBag_Release(This->m_pPropertyBag);
-    heap_free(This);
+static inline InstanceObjectFactory *impl_from_IClassFactory(IClassFactory *iface)
+{
+    return CONTAINING_RECORD(iface, InstanceObjectFactory, IClassFactory_iface);
 }
 
-static HRESULT WINAPI InstanceObjectFactory_IClassFactory_QueryInterface(IClassFactory *iface, 
-    REFIID riid, LPVOID* ppv)
+static HRESULT WINAPI InstanceObjectFactory_IClassFactory_QueryInterface(IClassFactory *iface,
+    REFIID riid, void **ppv)
 {
-    InstanceObjectFactory *This = ADJUST_THIS(InstanceObjectFactory, IClassFactory, iface);
+    InstanceObjectFactory *This = impl_from_IClassFactory(iface);
 
     TRACE("iface=%p, riid=%s, ppv=%p)\n", iface, debugstr_guid(riid), ppv);
 
@@ -220,7 +220,7 @@ static HRESULT WINAPI InstanceObjectFactory_IClassFactory_QueryInterface(IClassF
         return E_INVALIDARG;
 
     if (IsEqualIID(&IID_IUnknown, riid) || IsEqualIID(&IID_IClassFactory, riid)) {
-        *ppv = STATIC_CAST(IClassFactory, This);
+        *ppv = &This->IClassFactory_iface;
     } else {
         *ppv = NULL;
         return E_NOINTERFACE;
@@ -232,7 +232,7 @@ static HRESULT WINAPI InstanceObjectFactory_IClassFactory_QueryInterface(IClassF
     
 static ULONG WINAPI InstanceObjectFactory_IClassFactory_AddRef(IClassFactory *iface)
 {
-    InstanceObjectFactory *This = ADJUST_THIS(InstanceObjectFactory, IClassFactory, iface);
+    InstanceObjectFactory *This = impl_from_IClassFactory(iface);
     ULONG cRef;
 
     TRACE("(iface=%p)\n", iface);
@@ -247,16 +247,17 @@ static ULONG WINAPI InstanceObjectFactory_IClassFactory_AddRef(IClassFactory *if
 
 static ULONG WINAPI InstanceObjectFactory_IClassFactory_Release(IClassFactory *iface)
 {
-    InstanceObjectFactory *This = ADJUST_THIS(InstanceObjectFactory, IClassFactory, iface);
+    InstanceObjectFactory *This = impl_from_IClassFactory(iface);
     ULONG cRef;
 
     TRACE("(iface=%p)\n", iface);
 
     cRef = InterlockedDecrement(&This->m_cRef);
 
-    if (cRef == 0) { 
+    if (cRef == 0) {
         IClassFactory_LockServer(iface, FALSE);
-        InstanceObjectFactory_Destroy(This);
+        IPropertyBag_Release(This->m_pPropertyBag);
+        heap_free(This);
     }
 
     return cRef;
@@ -265,12 +266,12 @@ static ULONG WINAPI InstanceObjectFactory_IClassFactory_Release(IClassFactory *i
 static HRESULT WINAPI InstanceObjectFactory_IClassFactory_CreateInstance(IClassFactory *iface,
     IUnknown *pUnkOuter, REFIID riid, LPVOID *ppvObj)
 {
-    InstanceObjectFactory *This = ADJUST_THIS(InstanceObjectFactory, IClassFactory, iface);
+    InstanceObjectFactory *This = impl_from_IClassFactory(iface);
     IPersistPropertyBag *pPersistPropertyBag;
     HRESULT hr;
-        
+
     TRACE("(pUnkOuter=%p, riid=%s, ppvObj=%p)\n", pUnkOuter, debugstr_guid(riid), ppvObj);
-    
+
     hr = CoCreateInstance(&This->m_clsidInstance, NULL, CLSCTX_INPROC_SERVER,
                           &IID_IPersistPropertyBag, (LPVOID*)&pPersistPropertyBag);
     if (FAILED(hr)) {
@@ -281,7 +282,7 @@ static HRESULT WINAPI InstanceObjectFactory_IClassFactory_CreateInstance(IClassF
 
     hr = IPersistPropertyBag_Load(pPersistPropertyBag, This->m_pPropertyBag, NULL);
     if (FAILED(hr)) {
-        TRACE("Failed to initialize object from ProperyBag: hr = %08x\n", hr);
+        TRACE("Failed to initialize object from PropertyBag: hr = %08x\n", hr);
         IPersistPropertyBag_Release(pPersistPropertyBag);
         return hr;
     }
@@ -324,16 +325,16 @@ static HRESULT InstanceObjectFactory_Constructor(REFCLSID rclsid, IPropertyBag *
 
     pInstanceObjectFactory = heap_alloc(sizeof(InstanceObjectFactory));
     if (pInstanceObjectFactory) {
-        pInstanceObjectFactory->lpIClassFactoryVtbl = &InstanceObjectFactory_IClassFactoryVtbl;
+        pInstanceObjectFactory->IClassFactory_iface.lpVtbl = &InstanceObjectFactory_IClassFactoryVtbl;
         pInstanceObjectFactory->m_cRef = 0;
         pInstanceObjectFactory->m_clsidInstance = *rclsid;
         pInstanceObjectFactory->m_pPropertyBag = pPropertyBag;
         IPropertyBag_AddRef(pPropertyBag);
 
-        IClassFactory_AddRef(STATIC_CAST(IClassFactory, pInstanceObjectFactory));
-        hr = IClassFactory_QueryInterface(STATIC_CAST(IClassFactory, pInstanceObjectFactory),
+        IClassFactory_AddRef(&pInstanceObjectFactory->IClassFactory_iface);
+        hr = IClassFactory_QueryInterface(&pInstanceObjectFactory->IClassFactory_iface,
                                           riid, ppvObject);
-        IClassFactory_Release(STATIC_CAST(IClassFactory, pInstanceObjectFactory));
+        IClassFactory_Release(&pInstanceObjectFactory->IClassFactory_iface);
     }
 
     return hr;
@@ -375,16 +376,15 @@ HRESULT SHDOCVW_GetShellInstanceObjectClassObject(REFCLSID rclsid, REFIID riid,
           ppvClassObj);
 
     /* Figure if there is an 'Instance' subkey for the given CLSID and acquire a handle. */
-    if (!StringFromGUID2(rclsid, wszInstanceKey + 6, CHARS_IN_GUID) ||
-        !(wszInstanceKey[5+CHARS_IN_GUID]='\\') || /* Repair the null-termination. */
-        ERROR_SUCCESS != RegOpenKeyExW(HKEY_CLASSES_ROOT, wszInstanceKey, 0, KEY_READ, &hInstanceKey))
-    {
+    if (!StringFromGUID2(rclsid, wszInstanceKey + 6, CHARS_IN_GUID))
+        return CLASS_E_CLASSNOTAVAILABLE;
+    wszInstanceKey[5+CHARS_IN_GUID] = '\\'; /* Repair the null-termination. */
+    if (ERROR_SUCCESS != RegOpenKeyExW(HKEY_CLASSES_ROOT, wszInstanceKey, 0, KEY_READ, &hInstanceKey))
         /* If there is no 'Instance' subkey, then it's not a Shell Instance Object. */
         return CLASS_E_CLASSNOTAVAILABLE;
-    }
 
-    if (RegQueryValueExW(hInstanceKey, wszCLSID, NULL, &dwType, (LPBYTE)wszCLSIDInstance, &cbBytes)
-        != ERROR_SUCCESS || FAILED(CLSIDFromString(wszCLSIDInstance, &clsidInstance)))
+    if (ERROR_SUCCESS != RegQueryValueExW(hInstanceKey, wszCLSID, NULL, &dwType, (LPBYTE)wszCLSIDInstance, &cbBytes) ||
+        FAILED(CLSIDFromString(wszCLSIDInstance, &clsidInstance)))
     {
         /* 'Instance' should have a 'CLSID' value with a well-formed clsid-string. */
         FIXME("Failed to infer instance CLSID! %s\n", debugstr_w(wszCLSIDInstance));
@@ -402,9 +402,9 @@ HRESULT SHDOCVW_GetShellInstanceObjectClassObject(REFCLSID rclsid, REFIID riid,
         return CLASS_E_CLASSNOTAVAILABLE;
     }
 
-    /* If the construction succeeds, the new RegistryPropertyBag is responsible for closing 
-     * hInitProperyBagKey. */
-    hr = RegistryPropertyBag_Constructor(hInitPropertyBagKey, &IID_IPropertyBag, 
+    /* If the construction succeeds, the new RegistryPropertyBag is responsible for closing
+     * hInitPropertyBagKey. */
+    hr = RegistryPropertyBag_Constructor(hInitPropertyBagKey, &IID_IPropertyBag,
                                          (LPVOID*)&pInitPropertyBag);
     if (FAILED(hr)) {
         RegCloseKey(hInitPropertyBagKey);
diff --git a/reactos/dll/win32/shdocvw/taskbarlist.c b/reactos/dll/win32/shdocvw/taskbarlist.c
deleted file mode 100644 (file)
index 0d5e0fa..0000000
+++ /dev/null
@@ -1,168 +0,0 @@
-/*
- * Copyright 2009 Henri Verbeet for CodeWeavers
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- *
- */
-
-#include <config.h>
-//#include "wine/port.h"
-#include <wine/debug.h>
-
-#include "shdocvw.h"
-
-WINE_DEFAULT_DEBUG_CHANNEL(shdocvw);
-
-struct taskbar_list
-{
-    const struct ITaskbarListVtbl *lpVtbl;
-    LONG refcount;
-};
-
-/* IUnknown methods */
-
-static HRESULT STDMETHODCALLTYPE taskbar_list_QueryInterface(ITaskbarList *iface, REFIID riid, void **object)
-{
-    TRACE("iface %p, riid %s, object %p\n", iface, debugstr_guid(riid), object);
-
-    if (IsEqualGUID(riid, &IID_ITaskbarList)
-            || IsEqualGUID(riid, &IID_IUnknown))
-    {
-        IUnknown_AddRef(iface);
-        *object = iface;
-        return S_OK;
-    }
-
-    WARN("%s not implemented, returning E_NOINTERFACE\n", debugstr_guid(riid));
-
-    *object = NULL;
-    return E_NOINTERFACE;
-}
-
-static ULONG STDMETHODCALLTYPE taskbar_list_AddRef(ITaskbarList *iface)
-{
-    struct taskbar_list *This = (struct taskbar_list *)iface;
-    ULONG refcount = InterlockedIncrement(&This->refcount);
-
-    TRACE("%p increasing refcount to %u\n", This, refcount);
-
-    return refcount;
-}
-
-static ULONG STDMETHODCALLTYPE taskbar_list_Release(ITaskbarList *iface)
-{
-    struct taskbar_list *This = (struct taskbar_list *)iface;
-    ULONG refcount = InterlockedDecrement(&This->refcount);
-
-    TRACE("%p decreasing refcount to %u\n", This, refcount);
-
-    if (!refcount)
-    {
-        HeapFree(GetProcessHeap(), 0, This);
-        SHDOCVW_UnlockModule();
-    }
-
-    return refcount;
-}
-
-/* ITaskbarList methods */
-
-static HRESULT STDMETHODCALLTYPE taskbar_list_HrInit(ITaskbarList *iface)
-{
-    TRACE("iface %p\n", iface);
-
-    return S_OK;
-}
-
-static HRESULT STDMETHODCALLTYPE taskbar_list_AddTab(ITaskbarList *iface, HWND hwnd)
-{
-    FIXME("iface %p, hwnd %p stub!\n", iface, hwnd);
-
-    return E_NOTIMPL;
-}
-
-static HRESULT STDMETHODCALLTYPE taskbar_list_DeleteTab(ITaskbarList *iface, HWND hwnd)
-{
-    FIXME("iface %p, hwnd %p stub!\n", iface, hwnd);
-
-    return E_NOTIMPL;
-}
-
-static HRESULT STDMETHODCALLTYPE taskbar_list_ActivateTab(ITaskbarList *iface, HWND hwnd)
-{
-    FIXME("iface %p, hwnd %p stub!\n", iface, hwnd);
-
-    return E_NOTIMPL;
-}
-
-static HRESULT STDMETHODCALLTYPE taskbar_list_SetActiveAlt(ITaskbarList *iface, HWND hwnd)
-{
-    FIXME("iface %p, hwnd %p stub!\n", iface, hwnd);
-
-    return E_NOTIMPL;
-}
-
-static const struct ITaskbarListVtbl taskbar_list_vtbl =
-{
-    /* IUnknown methods */
-    taskbar_list_QueryInterface,
-    taskbar_list_AddRef,
-    taskbar_list_Release,
-    /* ITaskbarList methods */
-    taskbar_list_HrInit,
-    taskbar_list_AddTab,
-    taskbar_list_DeleteTab,
-    taskbar_list_ActivateTab,
-    taskbar_list_SetActiveAlt,
-};
-
-HRESULT TaskbarList_Create(IUnknown *outer, REFIID riid, void **taskbar_list)
-{
-    struct taskbar_list *object;
-    HRESULT hr;
-
-    TRACE("outer %p, riid %s, taskbar_list %p\n", outer, debugstr_guid(riid), taskbar_list);
-
-    if (outer)
-    {
-        WARN("Aggregation not supported\n");
-        *taskbar_list = NULL;
-        return CLASS_E_NOAGGREGATION;
-    }
-
-    object = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(*object));
-    if (!object)
-    {
-        ERR("Failed to allocate taskbar list object memory\n");
-        *taskbar_list = NULL;
-        return E_OUTOFMEMORY;
-    }
-
-    object->lpVtbl = &taskbar_list_vtbl;
-    object->refcount = 0;
-
-    TRACE("Created ITaskbarList %p\n", object);
-
-    hr = ITaskbarList_QueryInterface((ITaskbarList *)object, riid, taskbar_list);
-    if (FAILED(hr))
-    {
-        HeapFree(GetProcessHeap(), 0, object);
-        return hr;
-    }
-
-    SHDOCVW_LockModule();
-
-    return S_OK;
-}
diff --git a/reactos/dll/win32/shdocvw/urlhist.c b/reactos/dll/win32/shdocvw/urlhist.c
deleted file mode 100644 (file)
index c66d4c2..0000000
+++ /dev/null
@@ -1,131 +0,0 @@
-/*
- * Copyright 2006 Jacek Caban for CodeWeavers
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-#include <wine/debug.h>
-#include "shdocvw.h"
-#include <urlhist.h>
-
-WINE_DEFAULT_DEBUG_CHANNEL(shdocvw);
-
-static HRESULT WINAPI UrlHistoryStg_QueryInterface(IUrlHistoryStg2 *iface, REFIID riid, void **ppv)
-{
-    *ppv = NULL;
-
-    if(IsEqualGUID(&IID_IUnknown, riid)) {
-        TRACE("(IID_IUnknown %p)\n", ppv);
-        *ppv = iface;
-    }else if(IsEqualGUID(&IID_IUrlHistoryStg, riid)) {
-        TRACE("(IID_IUrlHistoryStg %p)\n", ppv);
-        *ppv = iface;
-    }else if(IsEqualGUID(&IID_IUrlHistoryStg2, riid)) {
-        TRACE("(IID_IUrlHistoryStg2 %p)\n", ppv);
-        *ppv = iface;
-    }
-
-    if(*ppv) {
-        IUnknown_AddRef((IUnknown*)*ppv);
-        return S_OK;
-    }
-
-    WARN("(%s %p)\n", debugstr_guid(riid), ppv);
-    return E_NOINTERFACE;
-}
-
-static ULONG WINAPI UrlHistoryStg_AddRef(IUrlHistoryStg2 *iface)
-{
-    SHDOCVW_LockModule();
-    return 2;
-}
-
-static ULONG WINAPI UrlHistoryStg_Release(IUrlHistoryStg2 *iface)
-{
-    SHDOCVW_UnlockModule();
-    return 1;
-}
-
-static HRESULT WINAPI UrlHistoryStg_AddUrl(IUrlHistoryStg2 *iface, LPCOLESTR lpcsUrl,
-        LPCOLESTR pocsTitle, DWORD dwFlags)
-{
-    FIXME("(%s %s %08x)\n", debugstr_w(lpcsUrl), debugstr_w(pocsTitle), dwFlags);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI UrlHistoryStg_DeleteUrl(IUrlHistoryStg2 *iface, LPCOLESTR lpcsUrl,
-        DWORD dwFlags)
-{
-    FIXME("(%s %08x)\n", debugstr_w(lpcsUrl), dwFlags);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI UrlHistoryStg_QueryUrl(IUrlHistoryStg2 *iface, LPCOLESTR lpcsUrl,
-        DWORD dwFlags, LPSTATURL lpSTATURL)
-{
-    FIXME("(%s %08x %p)\n", debugstr_w(lpcsUrl), dwFlags, lpSTATURL);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI UrlHistoryStg_BindToObject(IUrlHistoryStg2 *iface, LPCOLESTR lpcsUrl,
-        REFIID riid, void **ppv)
-{
-    FIXME("(%s %s %p)\n", debugstr_w(lpcsUrl), debugstr_guid(riid), ppv);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI UrlHistoryStg_EnumUrls(IUrlHistoryStg2 *iface, IEnumSTATURL **ppEnum)
-{
-    FIXME("(%p)\n", ppEnum);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI UrlHistoryStg_AddUrlAndNotify(IUrlHistoryStg2 *iface, LPCOLESTR pocsUrl,
-        LPCOLESTR pocsTitle, DWORD dwFlags, BOOL fWriteHistory, IOleCommandTarget *poctNotify,
-        IUnknown *punkISFolder)
-{
-    FIXME("(%s %s %08x %x %p %p)\n", debugstr_w(pocsUrl), debugstr_w(pocsTitle),
-          dwFlags, fWriteHistory, poctNotify, punkISFolder);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI UrlHistoryStg_ClearHistory(IUrlHistoryStg2 *iface)
-{
-    FIXME("()\n");
-    return E_NOTIMPL;
-}
-
-static const IUrlHistoryStg2Vtbl UrlHistoryStg2Vtbl = {
-    UrlHistoryStg_QueryInterface,
-    UrlHistoryStg_AddRef,
-    UrlHistoryStg_Release,
-    UrlHistoryStg_AddUrl,
-    UrlHistoryStg_DeleteUrl,
-    UrlHistoryStg_QueryUrl,
-    UrlHistoryStg_BindToObject,
-    UrlHistoryStg_EnumUrls,
-    UrlHistoryStg_AddUrlAndNotify,
-    UrlHistoryStg_ClearHistory
-};
-
-static IUrlHistoryStg2 UrlHistoryStg2 = { &UrlHistoryStg2Vtbl };
-
-HRESULT CUrlHistory_Create(IUnknown *pOuter, REFIID riid, void **ppv)
-{
-    if(pOuter)
-        return CLASS_E_NOAGGREGATION;
-
-    return IUrlHistoryStg_QueryInterface(&UrlHistoryStg2, riid, ppv);
-}
diff --git a/reactos/dll/win32/shdocvw/version.rc b/reactos/dll/win32/shdocvw/version.rc
deleted file mode 100644 (file)
index 103b77c..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * Copyright 2003 Francois Gouget (for CodeWeavers)
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-#define WINE_OLESELFREGISTER
-#define WINE_FILEDESCRIPTION_STR "Wine core dll"
-#define WINE_FILENAME_STR "shdocvw.dll"
-#define WINE_FILEVERSION 6,0,2900,2180
-#define WINE_FILEVERSION_STR "6.0.2900.2180"
-#define WINE_PRODUCTVERSION 6,0,2900,2180
-#define WINE_PRODUCTVERSION_STR "6.0.2900.2180"
-
-#include "wine/wine_common_ver.rc"
diff --git a/reactos/dll/win32/shdocvw/view.c b/reactos/dll/win32/shdocvw/view.c
deleted file mode 100644 (file)
index b48ac5c..0000000
+++ /dev/null
@@ -1,238 +0,0 @@
-/*
- * Copyright 2005 Jacek Caban
- * Copyright 2010 Ilya Shpigor
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-#include <wine/debug.h>
-#include "shdocvw.h"
-
-WINE_DEFAULT_DEBUG_CHANNEL(shdocvw);
-
-/**********************************************************************
- * Implement the IViewObject interface
- */
-
-#define VIEWOBJ_THIS(iface) DEFINE_THIS(WebBrowser, ViewObject, iface)
-
-static HRESULT WINAPI ViewObject_QueryInterface(IViewObject2 *iface, REFIID riid, void **ppv)
-{
-    WebBrowser *This = VIEWOBJ_THIS(iface);
-    return IWebBrowser2_QueryInterface(WEBBROWSER(This), riid, ppv);
-}
-
-static ULONG WINAPI ViewObject_AddRef(IViewObject2 *iface)
-{
-    WebBrowser *This = VIEWOBJ_THIS(iface);
-    return IWebBrowser2_AddRef(WEBBROWSER(This));
-}
-
-static ULONG WINAPI ViewObject_Release(IViewObject2 *iface)
-{
-    WebBrowser *This = VIEWOBJ_THIS(iface);
-    return IWebBrowser2_Release(WEBBROWSER(This));
-}
-
-static HRESULT WINAPI ViewObject_Draw(IViewObject2 *iface, DWORD dwDrawAspect,
-        LONG lindex, void *pvAspect, DVTARGETDEVICE *ptd, HDC hdcTargetDev,
-        HDC hdcDraw, LPCRECTL lprcBounds, LPCRECTL lprcWBounds,
-        BOOL (STDMETHODCALLTYPE *pfnContinue)(ULONG_PTR),
-        ULONG_PTR dwContinue)
-{
-    WebBrowser *This = VIEWOBJ_THIS(iface);
-    FIXME("(%p)->(%d %d %p %p %p %p %p %p %p %08lx)\n", This, dwDrawAspect, lindex,
-            pvAspect, ptd, hdcTargetDev, hdcDraw, lprcBounds, lprcWBounds, pfnContinue,
-            dwContinue);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI ViewObject_GetColorSet(IViewObject2 *iface, DWORD dwAspect,
-        LONG lindex, void *pvAspect, DVTARGETDEVICE *ptd, HDC hicTargetDev,
-        LOGPALETTE **ppColorSet)
-{
-    WebBrowser *This = VIEWOBJ_THIS(iface);
-    FIXME("(%p)->(%d %d %p %p %p %p)\n", This, dwAspect, lindex, pvAspect, ptd,
-            hicTargetDev, ppColorSet);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI ViewObject_Freeze(IViewObject2 *iface, DWORD dwDrawAspect, LONG lindex,
-                                        void *pvAspect, DWORD *pdwFreeze)
-{
-    WebBrowser *This = VIEWOBJ_THIS(iface);
-    FIXME("(%p)->(%d %d %p %p)\n", This, dwDrawAspect, lindex, pvAspect, pdwFreeze);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI ViewObject_Unfreeze(IViewObject2 *iface, DWORD dwFreeze)
-{
-    WebBrowser *This = VIEWOBJ_THIS(iface);
-    FIXME("(%p)->(%d)\n", This, dwFreeze);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI ViewObject_SetAdvise(IViewObject2 *iface, DWORD aspects, DWORD advf,
-        IAdviseSink *pAdvSink)
-{
-    WebBrowser *This = VIEWOBJ_THIS(iface);
-    FIXME("(%p)->(%d %08x %p)\n", This, aspects, advf, pAdvSink);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI ViewObject_GetAdvise(IViewObject2 *iface, DWORD *pAspects,
-        DWORD *pAdvf, IAdviseSink **ppAdvSink)
-{
-    WebBrowser *This = VIEWOBJ_THIS(iface);
-    FIXME("(%p)->(%p %p %p)\n", This, pAspects, pAdvf, ppAdvSink);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI ViewObject_GetExtent(IViewObject2 *iface, DWORD dwAspect, LONG lindex,
-        DVTARGETDEVICE *ptd, LPSIZEL lpsizel)
-{
-    WebBrowser *This = VIEWOBJ_THIS(iface);
-    FIXME("(%p)->(%d %d %p %p)\n", This, dwAspect, lindex, ptd, lpsizel);
-    return E_NOTIMPL;
-}
-
-static const IViewObject2Vtbl ViewObjectVtbl = {
-    ViewObject_QueryInterface,
-    ViewObject_AddRef,
-    ViewObject_Release,
-    ViewObject_Draw,
-    ViewObject_GetColorSet,
-    ViewObject_Freeze,
-    ViewObject_Unfreeze,
-    ViewObject_SetAdvise,
-    ViewObject_GetAdvise,
-    ViewObject_GetExtent
-};
-
-#undef VIEWOBJ_THIS
-
-void WebBrowser_ViewObject_Init(WebBrowser *This)
-{
-    This->lpViewObjectVtbl = &ViewObjectVtbl;
-}
-
-/**********************************************************************
- * Implement the IDataObject interface
- */
-
-#define DATAOBJ_THIS(iface) DEFINE_THIS(WebBrowser, DataObject, iface)
-
-static HRESULT WINAPI DataObject_QueryInterface(LPDATAOBJECT iface, REFIID riid, LPVOID * ppvObj)
-{
-    WebBrowser *This = DATAOBJ_THIS(iface);
-    return IWebBrowser2_QueryInterface(WEBBROWSER(This), riid, ppvObj);
-}
-
-static ULONG WINAPI DataObject_AddRef(LPDATAOBJECT iface)
-{
-    WebBrowser *This = DATAOBJ_THIS(iface);
-    return IWebBrowser2_AddRef(WEBBROWSER(This));
-}
-
-static ULONG WINAPI DataObject_Release(LPDATAOBJECT iface)
-{
-    WebBrowser *This = DATAOBJ_THIS(iface);
-    return IWebBrowser2_Release(WEBBROWSER(This));
-}
-
-static HRESULT WINAPI DataObject_GetData(LPDATAOBJECT iface, LPFORMATETC pformatetcIn, STGMEDIUM *pmedium)
-{
-    WebBrowser *This = DATAOBJ_THIS(iface);
-    FIXME("(%p)->()\n", This);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI DataObject_GetDataHere(LPDATAOBJECT iface, LPFORMATETC pformatetc, STGMEDIUM *pmedium)
-{
-    WebBrowser *This = DATAOBJ_THIS(iface);
-    FIXME("(%p)->()\n", This);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI DataObject_QueryGetData(LPDATAOBJECT iface, LPFORMATETC pformatetc)
-{
-    WebBrowser *This = DATAOBJ_THIS(iface);
-    FIXME("(%p)->()\n", This);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI DataObject_GetCanonicalFormatEtc(LPDATAOBJECT iface, LPFORMATETC pformatectIn, LPFORMATETC pformatetcOut)
-{
-    WebBrowser *This = DATAOBJ_THIS(iface);
-    FIXME("(%p)->()\n", This);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI DataObject_SetData(LPDATAOBJECT iface, LPFORMATETC pformatetc, STGMEDIUM *pmedium, BOOL fRelease)
-{
-    WebBrowser *This = DATAOBJ_THIS(iface);
-    FIXME("(%p)->()\n", This);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI DataObject_EnumFormatEtc(LPDATAOBJECT iface, DWORD dwDirection, IEnumFORMATETC **ppenumFormatEtc)
-{
-    WebBrowser *This = DATAOBJ_THIS(iface);
-    FIXME("(%p)->()\n", This);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI DataObject_DAdvise(LPDATAOBJECT iface, FORMATETC *pformatetc, DWORD advf, IAdviseSink *pAdvSink, DWORD *pdwConnection)
-{
-    WebBrowser *This = DATAOBJ_THIS(iface);
-    FIXME("(%p)->()\n", This);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI DataObject_DUnadvise(LPDATAOBJECT iface, DWORD dwConnection)
-{
-    WebBrowser *This = DATAOBJ_THIS(iface);
-    FIXME("(%p)->()\n", This);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI DataObject_EnumDAdvise(LPDATAOBJECT iface, IEnumSTATDATA **ppenumAdvise)
-{
-    WebBrowser *This = DATAOBJ_THIS(iface);
-    FIXME("(%p)->()\n", This);
-    return E_NOTIMPL;
-}
-
-static const IDataObjectVtbl DataObjectVtbl = {
-    DataObject_QueryInterface,
-    DataObject_AddRef,
-    DataObject_Release,
-    DataObject_GetData,
-    DataObject_GetDataHere,
-    DataObject_QueryGetData,
-    DataObject_GetCanonicalFormatEtc,
-    DataObject_SetData,
-    DataObject_EnumFormatEtc,
-    DataObject_DAdvise,
-    DataObject_DUnadvise,
-    DataObject_EnumDAdvise
-};
-
-#undef DATAOBJ_THIS
-
-void WebBrowser_DataObject_Init(WebBrowser *This)
-{
-    This->lpDataObjectVtbl = &DataObjectVtbl;
-}
diff --git a/reactos/dll/win32/shdocvw/webbrowser.c b/reactos/dll/win32/shdocvw/webbrowser.c
deleted file mode 100644 (file)
index e9a6b57..0000000
+++ /dev/null
@@ -1,1240 +0,0 @@
-/*
- * Implementation of IWebBrowser interface for WebBrowser control
- *
- * Copyright 2001 John R. Sheets (for CodeWeavers)
- * Copyright 2005 Jacek Caban
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-#include <wine/debug.h>
-#include "shdocvw.h"
-#include <exdispid.h>
-#include <mshtml.h>
-
-WINE_DEFAULT_DEBUG_CHANNEL(shdocvw);
-
-/**********************************************************************
- * Implement the IWebBrowser interface
- */
-
-#define WEBBROWSER_THIS(iface) DEFINE_THIS(WebBrowser, WebBrowser2, iface)
-
-static HRESULT WINAPI WebBrowser_QueryInterface(IWebBrowser2 *iface, REFIID riid, LPVOID *ppv)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-
-    if (ppv == NULL)
-        return E_POINTER;
-    *ppv = NULL;
-
-    if(IsEqualGUID(&IID_IUnknown, riid)) {
-        TRACE("(%p)->(IID_IUnknown %p)\n", This, ppv);
-        *ppv = WEBBROWSER(This);
-    }else if(IsEqualGUID(&IID_IDispatch, riid)) {
-        TRACE("(%p)->(IID_IDispatch %p)\n", This, ppv);
-        *ppv = WEBBROWSER(This);
-    }else if(IsEqualGUID(&IID_IWebBrowser, riid)) {
-        TRACE("(%p)->(IID_IWebBrowser %p)\n", This, ppv);
-        *ppv = WEBBROWSER(This);
-    }else if(IsEqualGUID(&IID_IWebBrowserApp, riid)) {
-        TRACE("(%p)->(IID_IWebBrowserApp %p)\n", This, ppv);
-        *ppv = WEBBROWSER(This);
-    }else if(IsEqualGUID(&IID_IWebBrowser2, riid)) {
-        TRACE("(%p)->(IID_IWebBrowser2 %p)\n", This, ppv);
-        *ppv = WEBBROWSER(This);
-    }else if(IsEqualGUID(&IID_IOleObject, riid)) {
-        TRACE("(%p)->(IID_IOleObject %p)\n", This, ppv);
-        *ppv = OLEOBJ(This);
-    }else if(IsEqualGUID(&IID_IOleWindow, riid)) {
-        TRACE("(%p)->(IID_IOleWindow %p)\n", This, ppv);
-        *ppv = INPLACEOBJ(This);
-    }else if(IsEqualGUID (&IID_IOleInPlaceObject, riid)) {
-        TRACE("(%p)->(IID_IOleInPlaceObject %p)\n", This, ppv);
-        *ppv = INPLACEOBJ(This);
-    }else if(IsEqualGUID(&IID_IOleControl, riid)) {
-        TRACE("(%p)->(IID_IOleControl %p)\n", This, ppv);
-        *ppv = CONTROL(This);
-    }else if(IsEqualGUID(&IID_IPersist, riid)) {
-        TRACE("(%p)->(IID_IPersist %p)\n", This, ppv);
-        *ppv = PERSTORAGE(This);
-    }else if(IsEqualGUID(&IID_IPersistStorage, riid)) {
-        TRACE("(%p)->(IID_IPersistStorage %p)\n", This, ppv);
-        *ppv = PERSTORAGE(This);
-    }else if(IsEqualGUID(&IID_IPersistMemory, riid)) {
-        TRACE("(%p)->(IID_IPersistStorage %p)\n", This, ppv);
-        *ppv = PERMEMORY(This);
-    }else if(IsEqualGUID (&IID_IPersistStreamInit, riid)) {
-        TRACE("(%p)->(IID_IPersistStreamInit %p)\n", This, ppv);
-        *ppv = PERSTRINIT(This);
-    }else if(IsEqualGUID(&IID_IProvideClassInfo, riid)) {
-        TRACE("(%p)->(IID_IProvideClassInfo %p)\n", This, ppv);
-        *ppv = CLASSINFO(This);
-    }else if(IsEqualGUID(&IID_IProvideClassInfo2, riid)) {
-        TRACE("(%p)->(IID_IProvideClassInfo2 %p)\n", This, ppv);
-        *ppv = CLASSINFO(This);
-    }else if(IsEqualGUID(&IID_IConnectionPointContainer, riid)) {
-        TRACE("(%p)->(IID_IConnectionPointContainer %p)\n", This, ppv);
-        *ppv = CONPTCONT(&This->doc_host.cps);
-    }else if(IsEqualGUID(&IID_IViewObject, riid)) {
-        TRACE("(%p)->(IID_IViewObject %p)\n", This, ppv);
-        *ppv = VIEWOBJ(This);
-    }else if(IsEqualGUID(&IID_IViewObject2, riid)) {
-        TRACE("(%p)->(IID_IViewObject2 %p)\n", This, ppv);
-        *ppv = VIEWOBJ2(This);
-    }else if(IsEqualGUID(&IID_IOleInPlaceActiveObject, riid)) {
-        TRACE("(%p)->(IID_IOleInPlaceActiveObject %p)\n", This, ppv);
-        *ppv = ACTIVEOBJ(This);
-    }else if(IsEqualGUID(&IID_IOleCommandTarget, riid)) {
-        TRACE("(%p)->(IID_IOleCommandTarget %p)\n", This, ppv);
-        *ppv = OLECMD(This);
-    }else if(IsEqualGUID(&IID_IServiceProvider, riid)) {
-        *ppv = SERVPROV(This);
-        TRACE("(%p)->(IID_IServiceProvider %p)\n", This, ppv);
-    }else if(IsEqualGUID(&IID_IDataObject, riid)) {
-        *ppv = DATAOBJECT(This);
-        TRACE("(%p)->(IID_IDataObject %p)\n", This, ppv);
-    }else if(IsEqualGUID(&IID_IQuickActivate, riid)) {
-        TRACE("(%p)->(IID_IQuickActivate %p) returning NULL\n", This, ppv);
-        return E_NOINTERFACE;
-    }else if(IsEqualGUID(&IID_IRunnableObject, riid)) {
-        TRACE("(%p)->(IID_IRunnableObject %p) returning NULL\n", This, ppv);
-        return E_NOINTERFACE;
-    }else if(IsEqualGUID(&IID_IPerPropertyBrowsing, riid)) {
-        TRACE("(%p)->(IID_IPerPropertyBrowsing %p) returning NULL\n", This, ppv);
-        return E_NOINTERFACE;
-    }else if(IsEqualGUID(&IID_IOleCache, riid)) {
-        TRACE("(%p)->(IID_IOleCache %p) returning NULL\n", This, ppv);
-        return E_NOINTERFACE;
-    }else if(IsEqualGUID(&IID_IOleInPlaceSite, riid)) {
-        TRACE("(%p)->(IID_IOleInPlaceSite %p) returning NULL\n", This, ppv);
-        return E_NOINTERFACE;
-    }else if(IsEqualGUID(&IID_IObjectWithSite, riid)) {
-        TRACE("(%p)->(IID_IObjectWithSite %p) returning NULL\n", This, ppv);
-        return E_NOINTERFACE;
-    }else if(IsEqualGUID(&IID_IViewObjectEx, riid)) {
-        TRACE("(%p)->(IID_IViewObjectEx %p) returning NULL\n", This, ppv);
-        return E_NOINTERFACE;
-    }else if(IsEqualGUID(&IID_IOleLink, riid)) {
-        TRACE("(%p)->(IID_IOleLink %p) returning NULL\n", This, ppv);
-        return E_NOINTERFACE;
-    }else if(IsEqualGUID(&IID_IMarshal, riid)) {
-        TRACE("(%p)->(IID_IMarshal %p) returning NULL\n", This, ppv);
-        return E_NOINTERFACE;
-    }else if(IsEqualGUID(&IID_IStdMarshalInfo, riid)) {
-        TRACE("(%p)->(IID_IStdMarshalInfo %p) returning NULL\n", This, ppv);
-        return E_NOINTERFACE;
-    }else if(HlinkFrame_QI(&This->hlink_frame, riid, ppv)) {
-        return S_OK;
-    }
-
-    if(*ppv) {
-        IUnknown_AddRef((IUnknown*)*ppv);
-        return S_OK;
-    }
-
-    FIXME("(%p)->(%s %p) interface not supported\n", This, debugstr_guid(riid), ppv);
-    return E_NOINTERFACE;
-}
-
-static ULONG WINAPI WebBrowser_AddRef(IWebBrowser2 *iface)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    LONG ref = InterlockedIncrement(&This->ref);
-    TRACE("(%p) ref=%d\n", This, ref);
-    return ref;
-}
-
-static ULONG WINAPI WebBrowser_Release(IWebBrowser2 *iface)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    LONG ref = InterlockedDecrement(&This->ref);
-
-    TRACE("(%p) ref=%d\n", This, ref);
-
-    if(!ref) {
-        if(This->doc_host.document)
-            IUnknown_Release(This->doc_host.document);
-
-        DocHost_Release(&This->doc_host);
-
-        WebBrowser_OleObject_Destroy(This);
-
-        heap_free(This);
-        SHDOCVW_UnlockModule();
-    }
-
-    return ref;
-}
-
-/* IDispatch methods */
-static HRESULT WINAPI WebBrowser_GetTypeInfoCount(IWebBrowser2 *iface, UINT *pctinfo)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-
-    TRACE("(%p)->(%p)\n", This, pctinfo);
-
-    *pctinfo = 1;
-    return S_OK;
-}
-
-static HRESULT WINAPI WebBrowser_GetTypeInfo(IWebBrowser2 *iface, UINT iTInfo, LCID lcid,
-                                     LPTYPEINFO *ppTInfo)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    ITypeInfo *typeinfo;
-    HRESULT hres;
-
-    TRACE("(%p)->(%d %d %p)\n", This, iTInfo, lcid, ppTInfo);
-
-    hres = get_typeinfo(&typeinfo);
-    if(FAILED(hres))
-        return hres;
-
-    ITypeInfo_AddRef(typeinfo);
-    *ppTInfo = typeinfo;
-    return S_OK;
-}
-
-static HRESULT WINAPI WebBrowser_GetIDsOfNames(IWebBrowser2 *iface, REFIID riid,
-                                       LPOLESTR *rgszNames, UINT cNames,
-                                       LCID lcid, DISPID *rgDispId)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    ITypeInfo *typeinfo;
-    HRESULT hres;
-
-    TRACE("(%p)->(%s %p %d %d %p)\n", This, debugstr_guid(riid), rgszNames, cNames,
-          lcid, rgDispId);
-
-    hres = get_typeinfo(&typeinfo);
-    if(FAILED(hres))
-        return hres;
-
-    return ITypeInfo_GetIDsOfNames(typeinfo, rgszNames, cNames, rgDispId);
-}
-
-static HRESULT WINAPI WebBrowser_Invoke(IWebBrowser2 *iface, DISPID dispIdMember,
-                                REFIID riid, LCID lcid, WORD wFlags,
-                                DISPPARAMS *pDispParams, VARIANT *pVarResult,
-                                EXCEPINFO *pExepInfo, UINT *puArgErr)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    ITypeInfo *typeinfo;
-    HRESULT hres;
-
-    TRACE("(%p)->(%d %s %d %08x %p %p %p %p)\n", This, dispIdMember, debugstr_guid(riid),
-            lcid, wFlags, pDispParams, pVarResult, pExepInfo, puArgErr);
-
-    hres = get_typeinfo(&typeinfo);
-    if(FAILED(hres))
-        return hres;
-
-    return ITypeInfo_Invoke(typeinfo, WEBBROWSER2(This), dispIdMember, wFlags, pDispParams,
-                            pVarResult, pExepInfo, puArgErr);
-}
-
-/* IWebBrowser methods */
-static HRESULT WINAPI WebBrowser_GoBack(IWebBrowser2 *iface)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)\n", This);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI WebBrowser_GoForward(IWebBrowser2 *iface)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)\n", This);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI WebBrowser_GoHome(IWebBrowser2 *iface)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    TRACE("(%p)\n", This);
-    return go_home(&This->doc_host);
-}
-
-static HRESULT WINAPI WebBrowser_GoSearch(IWebBrowser2 *iface)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)\n", This);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI WebBrowser_Navigate(IWebBrowser2 *iface, BSTR szUrl,
-                                  VARIANT *Flags, VARIANT *TargetFrameName,
-                                  VARIANT *PostData, VARIANT *Headers)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-
-    TRACE("(%p)->(%s %s %s %s %s)\n", This, debugstr_w(szUrl), debugstr_variant(Flags),
-          debugstr_variant(TargetFrameName), debugstr_variant(PostData),
-          debugstr_variant(Headers));
-
-    return navigate_url(&This->doc_host, szUrl, Flags, TargetFrameName, PostData, Headers);
-}
-
-static HRESULT WINAPI WebBrowser_Refresh(IWebBrowser2 *iface)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)\n", This);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI WebBrowser_Refresh2(IWebBrowser2 *iface, VARIANT *Level)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%s)\n", This, debugstr_variant(Level));
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI WebBrowser_Stop(IWebBrowser2 *iface)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)\n", This);
-    return S_OK;
-}
-
-static HRESULT WINAPI WebBrowser_get_Application(IWebBrowser2 *iface, IDispatch **ppDisp)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-
-    TRACE("(%p)->(%p)\n", This, ppDisp);
-
-    if(!ppDisp)
-        return E_POINTER;
-
-    *ppDisp = (IDispatch*)WEBBROWSER2(This);
-    IDispatch_AddRef(*ppDisp);
-    return S_OK;
-}
-
-static HRESULT WINAPI WebBrowser_get_Parent(IWebBrowser2 *iface, IDispatch **ppDisp)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, ppDisp);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI WebBrowser_get_Container(IWebBrowser2 *iface, IDispatch **ppDisp)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, ppDisp);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI WebBrowser_get_Document(IWebBrowser2 *iface, IDispatch **ppDisp)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    IDispatch *disp = NULL;
-
-    TRACE("(%p)->(%p)\n", This, ppDisp);
-
-    if(This->doc_host.document) {
-        HRESULT hres;
-
-        hres = IUnknown_QueryInterface(This->doc_host.document, &IID_IDispatch, (void**)&disp);
-        if(SUCCEEDED(hres)) {
-            IDispatch *html_doc;
-
-            /* Some broken apps cast returned IDispatch to IHTMLDocument2
-             * without QueryInterface call */
-            hres = IDispatch_QueryInterface(disp, &IID_IHTMLDocument2, (void**)&html_doc);
-            if(SUCCEEDED(hres)) {
-                IDispatch_Release(disp);
-                disp = html_doc;
-            }
-        }
-    }
-
-    *ppDisp = disp;
-    return S_OK;
-}
-
-static HRESULT WINAPI WebBrowser_get_TopLevelContainer(IWebBrowser2 *iface, VARIANT_BOOL *pBool)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, pBool);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI WebBrowser_get_Type(IWebBrowser2 *iface, BSTR *Type)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, Type);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI WebBrowser_get_Left(IWebBrowser2 *iface, LONG *pl)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-
-    TRACE("(%p)->(%p)\n", This, pl);
-
-    *pl = This->pos_rect.left;
-    return S_OK;
-}
-
-static HRESULT WINAPI WebBrowser_put_Left(IWebBrowser2 *iface, LONG Left)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    RECT rect;
-
-    TRACE("(%p)->(%d)\n", This, Left);
-
-    if(!This->inplace)
-        return E_UNEXPECTED;
-
-    rect = This->pos_rect;
-    rect.left = Left;
-
-    /* We don't really change the window position here.
-     * We just notify the embedder that he should do so. */
-    return IOleInPlaceSite_OnPosRectChange(This->inplace, &rect);
-}
-
-static HRESULT WINAPI WebBrowser_get_Top(IWebBrowser2 *iface, LONG *pl)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-
-    TRACE("(%p)->(%p)\n", This, pl);
-
-    *pl = This->pos_rect.top;
-    return S_OK;
-}
-
-static HRESULT WINAPI WebBrowser_put_Top(IWebBrowser2 *iface, LONG Top)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    RECT rect;
-
-    TRACE("(%p)->(%d)\n", This, Top);
-
-    if(!This->inplace)
-        return E_UNEXPECTED;
-
-    rect = This->pos_rect;
-    rect.top = Top;
-
-    /* We don't really change the window position here.
-     * We just notify the embedder that he should do so. */
-    return IOleInPlaceSite_OnPosRectChange(This->inplace, &rect);
-}
-
-static HRESULT WINAPI WebBrowser_get_Width(IWebBrowser2 *iface, LONG *pl)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-
-    TRACE("(%p)->(%p)\n", This, pl);
-
-    *pl = This->pos_rect.right - This->pos_rect.left;
-    return S_OK;
-}
-
-static HRESULT WINAPI WebBrowser_put_Width(IWebBrowser2 *iface, LONG Width)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    RECT rect;
-
-    TRACE("(%p)->(%d)\n", This, Width);
-
-    if(!This->inplace)
-        return E_UNEXPECTED;
-
-    rect = This->pos_rect;
-    rect.right = rect.left+Width;
-
-    /* We don't really change the window size here.
-     * We just notify the embedder that he should do so. */
-   return IOleInPlaceSite_OnPosRectChange(This->inplace, &rect);
-}
-
-static HRESULT WINAPI WebBrowser_get_Height(IWebBrowser2 *iface, LONG *pl)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-
-    TRACE("(%p)->(%p)\n", This, pl);
-
-    *pl = This->pos_rect.bottom - This->pos_rect.top;
-    return S_OK;
-}
-
-static HRESULT WINAPI WebBrowser_put_Height(IWebBrowser2 *iface, LONG Height)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    RECT rect;
-
-    TRACE("(%p)->(%d)\n", This, Height);
-
-    if(!This->inplace)
-        return E_UNEXPECTED;
-
-    rect = This->pos_rect;
-    rect.bottom = rect.top+Height;
-
-    /* We don't really change the window size here.
-     * We just notify the embedder that he should do so. */
-    return IOleInPlaceSite_OnPosRectChange(This->inplace, &rect);
-}
-
-static HRESULT WINAPI WebBrowser_get_LocationName(IWebBrowser2 *iface, BSTR *LocationName)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, LocationName);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI WebBrowser_get_LocationURL(IWebBrowser2 *iface, BSTR *LocationURL)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-
-    FIXME("(%p)->(%p)\n", This, LocationURL);
-
-    if(!This->doc_host.url) {
-        static const WCHAR null_char = 0;
-        *LocationURL = SysAllocString(&null_char);
-        return S_FALSE;
-    }
-
-    *LocationURL = SysAllocString(This->doc_host.url);
-    return S_OK;
-}
-
-static HRESULT WINAPI WebBrowser_get_Busy(IWebBrowser2 *iface, VARIANT_BOOL *pBool)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-
-    TRACE("(%p)->(%p)\n", This, pBool);
-
-    *pBool = This->doc_host.busy;
-    return S_OK;
-}
-
-static HRESULT WINAPI WebBrowser_Quit(IWebBrowser2 *iface)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-
-    TRACE("(%p)\n", This);
-
-    /* It's a InternetExplorer specific method, we have nothing to do here. */
-    return E_FAIL;
-}
-
-static HRESULT WINAPI WebBrowser_ClientToWindow(IWebBrowser2 *iface, int *pcx, int *pcy)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p %p)\n", This, pcx, pcy);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI WebBrowser_PutProperty(IWebBrowser2 *iface, BSTR szProperty, VARIANT vtValue)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%s %s)\n", This, debugstr_w(szProperty), debugstr_variant(&vtValue));
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI WebBrowser_GetProperty(IWebBrowser2 *iface, BSTR szProperty, VARIANT *pvtValue)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%s %s)\n", This, debugstr_w(szProperty), debugstr_variant(pvtValue));
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI WebBrowser_get_Name(IWebBrowser2 *iface, BSTR *Name)
-{
-    static const WCHAR sName[] = {'M','i','c','r','o','s','o','f','t',' ','W','e','b',
-                                  ' ','B','r','o','w','s','e','r',' ','C','o','n','t','r','o','l',0};
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-
-    TRACE("(%p)->(%p)\n", This, Name);
-
-    *Name = SysAllocString(sName);
-
-    return S_OK;
-}
-
-static HRESULT WINAPI WebBrowser_get_HWND(IWebBrowser2 *iface, LONG *pHWND)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-
-    TRACE("(%p)->(%p)\n", This, pHWND);
-
-    /* WebBrowser control never has a frame window (in opposition to InternetExplorer) */
-    *pHWND = 0;
-    return E_FAIL;
-}
-
-static HRESULT WINAPI WebBrowser_get_FullName(IWebBrowser2 *iface, BSTR *FullName)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, FullName);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI WebBrowser_get_Path(IWebBrowser2 *iface, BSTR *Path)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, Path);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI WebBrowser_get_Visible(IWebBrowser2 *iface, VARIANT_BOOL *pBool)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-
-    TRACE("(%p)->(%p)\n", This, pBool);
-
-    *pBool = This->visible;
-    return S_OK;
-}
-
-static HRESULT WINAPI WebBrowser_put_Visible(IWebBrowser2 *iface, VARIANT_BOOL Value)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    VARIANTARG arg;
-    DISPPARAMS dispparams = {&arg, NULL, 1, 0};
-
-    TRACE("(%p)->(%x)\n", This, Value);
-
-    This->visible = Value;
-
-    V_VT(&arg) = VT_BOOL;
-    V_BOOL(&arg) = Value;
-    call_sink(This->doc_host.cps.wbe2, DISPID_ONVISIBLE, &dispparams);
-
-    return S_OK;
-}
-
-static HRESULT WINAPI WebBrowser_get_StatusBar(IWebBrowser2 *iface, VARIANT_BOOL *pBool)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-
-    TRACE("(%p)->(%p)\n", This, pBool);
-
-    *pBool = This->status_bar;
-    return S_OK;
-}
-
-static HRESULT WINAPI WebBrowser_put_StatusBar(IWebBrowser2 *iface, VARIANT_BOOL Value)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    VARIANTARG arg;
-    DISPPARAMS dispparams = {&arg, NULL, 1, 0};
-
-    TRACE("(%p)->(%x)\n", This, Value);
-
-    This->status_bar = Value ? VARIANT_TRUE : VARIANT_FALSE;
-
-    /* In opposition to InternetExplorer, all we should do here is
-     * inform the embedder about the status bar change. */
-
-    V_VT(&arg) = VT_BOOL;
-    V_BOOL(&arg) = Value;
-    call_sink(This->doc_host.cps.wbe2, DISPID_ONSTATUSBAR, &dispparams);
-
-    return S_OK;
-}
-
-static HRESULT WINAPI WebBrowser_get_StatusText(IWebBrowser2 *iface, BSTR *StatusText)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, StatusText);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI WebBrowser_put_StatusText(IWebBrowser2 *iface, BSTR StatusText)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%s)\n", This, debugstr_w(StatusText));
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI WebBrowser_get_ToolBar(IWebBrowser2 *iface, int *Value)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-
-    TRACE("(%p)->(%p)\n", This, Value);
-
-    *Value = This->tool_bar;
-    return S_OK;
-}
-
-static HRESULT WINAPI WebBrowser_put_ToolBar(IWebBrowser2 *iface, int Value)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    VARIANTARG arg;
-    DISPPARAMS dispparams = {&arg, NULL, 1, 0};
-
-    TRACE("(%p)->(%x)\n", This, Value);
-
-    This->tool_bar = Value ? VARIANT_TRUE : VARIANT_FALSE;
-
-    /* In opposition to InternetExplorer, all we should do here is
-     * inform the embedder about the tool bar change. */
-
-    V_VT(&arg) = VT_BOOL;
-    V_BOOL(&arg) = This->tool_bar;
-    call_sink(This->doc_host.cps.wbe2, DISPID_ONTOOLBAR, &dispparams);
-
-    return S_OK;
-}
-
-static HRESULT WINAPI WebBrowser_get_MenuBar(IWebBrowser2 *iface, VARIANT_BOOL *Value)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-
-    TRACE("(%p)->(%p)\n", This, Value);
-
-    *Value = This->menu_bar;
-    return S_OK;
-}
-
-static HRESULT WINAPI WebBrowser_put_MenuBar(IWebBrowser2 *iface, VARIANT_BOOL Value)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    VARIANTARG arg;
-    DISPPARAMS dispparams = {&arg, NULL, 1, 0};
-
-    TRACE("(%p)->(%x)\n", This, Value);
-
-    This->menu_bar = Value ? VARIANT_TRUE : VARIANT_FALSE;
-
-    /* In opposition to InternetExplorer, all we should do here is
-     * inform the embedder about the menu bar change. */
-
-    V_VT(&arg) = VT_BOOL;
-    V_BOOL(&arg) = Value;
-    call_sink(This->doc_host.cps.wbe2, DISPID_ONMENUBAR, &dispparams);
-
-    return S_OK;
-}
-
-static HRESULT WINAPI WebBrowser_get_FullScreen(IWebBrowser2 *iface, VARIANT_BOOL *pbFullScreen)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-
-    TRACE("(%p)->(%p)\n", This, pbFullScreen);
-
-    *pbFullScreen = This->full_screen;
-    return S_OK;
-}
-
-static HRESULT WINAPI WebBrowser_put_FullScreen(IWebBrowser2 *iface, VARIANT_BOOL bFullScreen)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    VARIANTARG arg;
-    DISPPARAMS dispparams = {&arg, NULL, 1, 0};
-
-    /* In opposition to InternetExplorer, all we should do here is
-     * inform the embedder about the fullscreen change. */
-
-    TRACE("(%p)->(%x)\n", This, bFullScreen);
-
-    This->full_screen = bFullScreen ? VARIANT_TRUE : VARIANT_FALSE;
-
-    V_VT(&arg) = VT_BOOL;
-    V_BOOL(&arg) = bFullScreen;
-    call_sink(This->doc_host.cps.wbe2, DISPID_ONFULLSCREEN, &dispparams);
-
-    return S_OK;
-}
-
-static HRESULT WINAPI WebBrowser_Navigate2(IWebBrowser2 *iface, VARIANT *URL, VARIANT *Flags,
-        VARIANT *TargetFrameName, VARIANT *PostData, VARIANT *Headers)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    LPCWSTR url;
-
-    TRACE("(%p)->(%s %s %s %s %s)\n", This, debugstr_variant(URL), debugstr_variant(Flags),
-          debugstr_variant(TargetFrameName), debugstr_variant(PostData), debugstr_variant(Headers));
-
-    if(!This->client)
-        return E_FAIL;
-
-    if(!URL)
-        return S_OK;
-
-    switch (V_VT(URL))
-    {
-    case VT_BSTR:
-        url = V_BSTR(URL);
-        break;
-    case VT_BSTR|VT_BYREF:
-        url = *V_BSTRREF(URL);
-        break;
-    default:
-        FIXME("Unsupported V_VT(URL) %d\n", V_VT(URL));
-        return E_INVALIDARG;
-    }
-
-    return navigate_url(&This->doc_host, url, Flags, TargetFrameName, PostData, Headers);
-}
-
-static HRESULT WINAPI WebBrowser_QueryStatusWB(IWebBrowser2 *iface, OLECMDID cmdID, OLECMDF *pcmdf)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%d %p)\n", This, cmdID, pcmdf);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI WebBrowser_ExecWB(IWebBrowser2 *iface, OLECMDID cmdID,
-        OLECMDEXECOPT cmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%d %d %s %p)\n", This, cmdID, cmdexecopt, debugstr_variant(pvaIn), pvaOut);
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI WebBrowser_ShowBrowserBar(IWebBrowser2 *iface, VARIANT *pvaClsid,
-        VARIANT *pvarShow, VARIANT *pvarSize)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%s %s %s)\n", This, debugstr_variant(pvaClsid), debugstr_variant(pvarShow),
-          debugstr_variant(pvarSize));
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI WebBrowser_get_ReadyState(IWebBrowser2 *iface, READYSTATE *lpReadyState)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-
-    TRACE("(%p)->(%p)\n", This, lpReadyState);
-
-    *lpReadyState = This->doc_host.ready_state;
-    return S_OK;
-}
-
-static HRESULT WINAPI WebBrowser_get_Offline(IWebBrowser2 *iface, VARIANT_BOOL *pbOffline)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-
-    TRACE("(%p)->(%p)\n", This, pbOffline);
-
-    *pbOffline = This->doc_host.offline;
-    return S_OK;
-}
-
-static HRESULT WINAPI WebBrowser_put_Offline(IWebBrowser2 *iface, VARIANT_BOOL bOffline)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-
-    TRACE("(%p)->(%x)\n", This, bOffline);
-
-    This->doc_host.offline = bOffline ? VARIANT_TRUE : VARIANT_FALSE;
-    return S_OK;
-}
-
-static HRESULT WINAPI WebBrowser_get_Silent(IWebBrowser2 *iface, VARIANT_BOOL *pbSilent)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-
-    TRACE("(%p)->(%p)\n", This, pbSilent);
-
-    *pbSilent = This->doc_host.silent;
-    return S_OK;
-}
-
-static HRESULT WINAPI WebBrowser_put_Silent(IWebBrowser2 *iface, VARIANT_BOOL bSilent)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-
-    TRACE("(%p)->(%x)\n", This, bSilent);
-
-    This->doc_host.silent = bSilent ? VARIANT_TRUE : VARIANT_FALSE;
-    return S_OK;
-}
-
-static HRESULT WINAPI WebBrowser_get_RegisterAsBrowser(IWebBrowser2 *iface,
-        VARIANT_BOOL *pbRegister)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-
-    FIXME("(%p)->(%p)\n", This, pbRegister);
-
-    *pbRegister = This->register_browser;
-    return S_OK;
-}
-
-static HRESULT WINAPI WebBrowser_put_RegisterAsBrowser(IWebBrowser2 *iface,
-        VARIANT_BOOL bRegister)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-
-    FIXME("(%p)->(%x)\n", This, bRegister);
-
-    This->register_browser = bRegister ? VARIANT_TRUE : VARIANT_FALSE;
-    return S_OK;
-}
-
-static HRESULT WINAPI WebBrowser_get_RegisterAsDropTarget(IWebBrowser2 *iface,
-        VARIANT_BOOL *pbRegister)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%p)\n", This, pbRegister);
-    *pbRegister=0;
-    return S_OK;
-}
-
-static HRESULT WINAPI WebBrowser_put_RegisterAsDropTarget(IWebBrowser2 *iface,
-        VARIANT_BOOL bRegister)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    FIXME("(%p)->(%x)\n", This, bRegister);
-    return S_OK;
-}
-
-static HRESULT WINAPI WebBrowser_get_TheaterMode(IWebBrowser2 *iface, VARIANT_BOOL *pbRegister)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-
-    TRACE("(%p)->(%p)\n", This, pbRegister);
-
-    *pbRegister = This->theater_mode;
-    return S_OK;
-}
-
-static HRESULT WINAPI WebBrowser_put_TheaterMode(IWebBrowser2 *iface, VARIANT_BOOL bRegister)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    VARIANTARG arg;
-    DISPPARAMS dispparams = {&arg, NULL, 1, 0};
-
-    TRACE("(%p)->(%x)\n", This, bRegister);
-
-    This->theater_mode = bRegister ? VARIANT_TRUE : VARIANT_FALSE;
-
-    /* In opposition to InternetExplorer, all we should do here is
-     * inform the embedder about the theater mode change. */
-
-    V_VT(&arg) = VT_BOOL;
-    V_BOOL(&arg) = bRegister;
-    call_sink(This->doc_host.cps.wbe2, DISPID_ONTHEATERMODE, &dispparams);
-
-    return S_OK;
-}
-
-static HRESULT WINAPI WebBrowser_get_AddressBar(IWebBrowser2 *iface, VARIANT_BOOL *Value)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-
-    TRACE("(%p)->(%p)\n", This, Value);
-
-    *Value = This->address_bar;
-    return S_OK;
-}
-
-static HRESULT WINAPI WebBrowser_put_AddressBar(IWebBrowser2 *iface, VARIANT_BOOL Value)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    VARIANTARG arg;
-    DISPPARAMS dispparams = {&arg, NULL, 1, 0};
-
-    TRACE("(%p)->(%x)\n", This, Value);
-
-    This->address_bar = Value ? VARIANT_TRUE : VARIANT_FALSE;
-
-    /* In opposition to InternetExplorer, all we should do here is
-     * inform the embedder about the address bar change. */
-
-    V_VT(&arg) = VT_BOOL;
-    V_BOOL(&arg) = Value;
-    call_sink(This->doc_host.cps.wbe2, DISPID_ONADDRESSBAR, &dispparams);
-
-    return S_OK;
-}
-
-static HRESULT WINAPI WebBrowser_get_Resizable(IWebBrowser2 *iface, VARIANT_BOOL *Value)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-
-    TRACE("(%p)->(%p)\n", This, Value);
-
-    /* It's InternetExplorer object's method. We have nothing to do here. */
-    return E_NOTIMPL;
-}
-
-static HRESULT WINAPI WebBrowser_put_Resizable(IWebBrowser2 *iface, VARIANT_BOOL Value)
-{
-    WebBrowser *This = WEBBROWSER_THIS(iface);
-    VARIANTARG arg;
-    DISPPARAMS dispparams = {&arg, NULL, 1, 0};
-
-    TRACE("(%p)->(%x)\n", This, Value);
-
-    /* In opposition to InternetExplorer, all we should do here is
-     * inform the embedder about the resizable change. */
-
-    V_VT(&arg) = VT_BOOL;
-    V_BOOL(&arg) = Value;
-    call_sink(This->doc_host.cps.wbe2, DISPID_WINDOWSETRESIZABLE, &dispparams);
-
-    return S_OK;
-}
-
-#undef WEBBROWSER_THIS
-
-static const IWebBrowser2Vtbl WebBrowser2Vtbl =
-{
-    WebBrowser_QueryInterface,
-    WebBrowser_AddRef,
-    WebBrowser_Release,
-    WebBrowser_GetTypeInfoCount,
-    WebBrowser_GetTypeInfo,
-    WebBrowser_GetIDsOfNames,
-    WebBrowser_Invoke,
-    WebBrowser_GoBack,
-    WebBrowser_GoForward,
-    WebBrowser_GoHome,
-    WebBrowser_GoSearch,
-    WebBrowser_Navigate,
-    WebBrowser_Refresh,
-    WebBrowser_Refresh2,
-    WebBrowser_Stop,
-    WebBrowser_get_Application,
-    WebBrowser_get_Parent,
-    WebBrowser_get_Container,
-    WebBrowser_get_Document,
-    WebBrowser_get_TopLevelContainer,
-    WebBrowser_get_Type,
-    WebBrowser_get_Left,
-    WebBrowser_put_Left,
-    WebBrowser_get_Top,
-    WebBrowser_put_Top,
-    WebBrowser_get_Width,
-    WebBrowser_put_Width,
-    WebBrowser_get_Height,
-    WebBrowser_put_Height,
-    WebBrowser_get_LocationName,
-    WebBrowser_get_LocationURL,
-    WebBrowser_get_Busy,
-    WebBrowser_Quit,
-    WebBrowser_ClientToWindow,
-    WebBrowser_PutProperty,
-    WebBrowser_GetProperty,
-    WebBrowser_get_Name,
-    WebBrowser_get_HWND,
-    WebBrowser_get_FullName,
-    WebBrowser_get_Path,
-    WebBrowser_get_Visible,
-    WebBrowser_put_Visible,
-    WebBrowser_get_StatusBar,
-    WebBrowser_put_StatusBar,
-    WebBrowser_get_StatusText,
-    WebBrowser_put_StatusText,
-    WebBrowser_get_ToolBar,
-    WebBrowser_put_ToolBar,
-    WebBrowser_get_MenuBar,
-    WebBrowser_put_MenuBar,
-    WebBrowser_get_FullScreen,
-    WebBrowser_put_FullScreen,
-    WebBrowser_Navigate2,
-    WebBrowser_QueryStatusWB,
-    WebBrowser_ExecWB,
-    WebBrowser_ShowBrowserBar,
-    WebBrowser_get_ReadyState,
-    WebBrowser_get_Offline,
-    WebBrowser_put_Offline,
-    WebBrowser_get_Silent,
-    WebBrowser_put_Silent,
-    WebBrowser_get_RegisterAsBrowser,
-    WebBrowser_put_RegisterAsBrowser,
-    WebBrowser_get_RegisterAsDropTarget,
-    WebBrowser_put_RegisterAsDropTarget,
-    WebBrowser_get_TheaterMode,
-    WebBrowser_put_TheaterMode,
-    WebBrowser_get_AddressBar,
-    WebBrowser_put_AddressBar,
-    WebBrowser_get_Resizable,
-    WebBrowser_put_Resizable
-};
-
-#define SERVPROV_THIS(iface) DEFINE_THIS(WebBrowser, OleObject, iface)
-/*
- *  IServiceProvider interface.
- */
-static HRESULT WINAPI WebBrowser_IServiceProvider_QueryInterface(IServiceProvider *iface,
-            REFIID riid, LPVOID *ppv)
-{
-    WebBrowser *This = SERVPROV_THIS(iface);
-
-    if (ppv == NULL)
-        return E_POINTER;
-    *ppv = NULL;
-
-    if(IsEqualGUID(&IID_IUnknown, riid)) {
-        *ppv = WEBBROWSER(This);
-        TRACE("(%p)->(IID_IUnknown %p)\n", This, ppv);
-    }else if(IsEqualGUID(&IID_IServiceProvider, riid)) {
-        *ppv = WEBBROWSER(This);
-        TRACE("(%p)->(IID_IServiceProvider %p)\n", This, ppv);
-    }
-
-    if(*ppv) {
-        IUnknown_AddRef((IUnknown*)*ppv);
-        return S_OK;
-    }
-
-    FIXME("(%p)->(%s %p) interface not supported\n", This, debugstr_guid(riid), ppv);
-    return E_NOINTERFACE;
-}
-
-static ULONG WINAPI WebBrowser_IServiceProvider_AddRef(IServiceProvider *iface)
-{
-    WebBrowser *This = SERVPROV_THIS(iface);
-    return IWebBrowser_AddRef(WEBBROWSER(This));
-}
-
-static ULONG WINAPI WebBrowser_IServiceProvider_Release(IServiceProvider *iface)
-{
-    WebBrowser *This = SERVPROV_THIS(iface);
-    return IWebBrowser_Release(WEBBROWSER(This));
-}
-
-static HRESULT STDMETHODCALLTYPE WebBrowser_IServiceProvider_QueryService(IServiceProvider *iface,
-            REFGUID guidService, REFIID riid, void **ppv)
-{
-    WebBrowser *This = SERVPROV_THIS(iface);
-    static const IID IID_IBrowserService2 =
-        {0x68BD21CC,0x438B,0x11d2,{0xA5,0x60,0x00,0xA0,0xC,0x2D,0xBF,0xE8}};
-
-    if(*ppv)
-        ppv = NULL;
-
-    if(IsEqualGUID(&IID_IBrowserService2, riid)) {
-        TRACE("(%p)->(IID_IBrowserService2 return E_FAIL)\n", This);
-        return E_FAIL;
-    }
-
-    FIXME("(%p)->(%s, %s %p)\n", This, debugstr_guid(guidService), debugstr_guid(riid), ppv);
-
-    return E_NOINTERFACE;
-}
-
-#undef SERVPROV_THIS
-
-static const IServiceProviderVtbl ServiceProviderVtbl =
-{
-    WebBrowser_IServiceProvider_QueryInterface,
-    WebBrowser_IServiceProvider_AddRef,
-    WebBrowser_IServiceProvider_Release,
-    WebBrowser_IServiceProvider_QueryService
-};
-
-#define DOCHOST_THIS(iface) DEFINE_THIS2(WebBrowser,doc_host,iface)
-
-static void WINAPI DocHostContainer_GetDocObjRect(DocHost* This, RECT* rc)
-{
-    GetClientRect(This->frame_hwnd, rc);
-}
-
-static HRESULT WINAPI DocHostContainer_SetStatusText(DocHost* This, LPCWSTR text)
-{
-    return E_NOTIMPL;
-}
-
-static void WINAPI DocHostContainer_SetURL(DocHost* This, LPCWSTR url)
-{
-
-}
-
-static HRESULT DocHostContainer_exec(DocHost *doc_host, const GUID *cmd_group, DWORD cmdid, DWORD execopt, VARIANT *in,
-        VARIANT *out)
-{
-    WebBrowser *This = DOCHOST_THIS(doc_host);
-    IOleCommandTarget *cmdtrg = NULL;
-    HRESULT hres;
-
-    if(This->client) {
-        hres = IOleClientSite_QueryInterface(This->client, &IID_IOleCommandTarget, (void**)&cmdtrg);
-        if(FAILED(hres))
-            cmdtrg = NULL;
-    }
-
-    if(!cmdtrg && This->container) {
-        hres = IOleContainer_QueryInterface(This->container, &IID_IOleCommandTarget, (void**)&cmdtrg);
-        if(FAILED(hres))
-            cmdtrg = NULL;
-    }
-
-    if(!cmdtrg)
-        return S_OK;
-
-    hres = IOleCommandTarget_Exec(cmdtrg, cmd_group, cmdid, execopt, in, out);
-    IOleCommandTarget_Release(cmdtrg);
-    if(FAILED(hres))
-        FIXME("Exec failed\n");
-
-    return hres;
-}
-
-#undef DOCHOST_THIS
-
-static const IDocHostContainerVtbl DocHostContainerVtbl = {
-    DocHostContainer_GetDocObjRect,
-    DocHostContainer_SetStatusText,
-    DocHostContainer_SetURL,
-    DocHostContainer_exec
-};
-
-static HRESULT WebBrowser_Create(INT version, IUnknown *pOuter, REFIID riid, void **ppv)
-{
-    WebBrowser *ret;
-    HRESULT hres;
-
-    TRACE("(%p %s %p) version=%d\n", pOuter, debugstr_guid(riid), ppv, version);
-
-    ret = heap_alloc_zero(sizeof(WebBrowser));
-
-    ret->lpWebBrowser2Vtbl = &WebBrowser2Vtbl;
-    ret->lpServiceProviderVtbl = &ServiceProviderVtbl;
-    ret->ref = 1;
-    ret->version = version;
-
-    DocHost_Init(&ret->doc_host, (IDispatch*)WEBBROWSER2(ret), &DocHostContainerVtbl);
-
-    ret->visible = VARIANT_TRUE;
-    ret->menu_bar = VARIANT_TRUE;
-    ret->address_bar = VARIANT_TRUE;
-    ret->status_bar = VARIANT_TRUE;
-    ret->tool_bar = VARIANT_TRUE;
-
-    WebBrowser_OleObject_Init(ret);
-    WebBrowser_ViewObject_Init(ret);
-    WebBrowser_DataObject_Init(ret);
-    WebBrowser_Persist_Init(ret);
-    WebBrowser_ClassInfo_Init(ret);
-
-    HlinkFrame_Init(&ret->hlink_frame, (IUnknown*)WEBBROWSER2(ret), &ret->doc_host);
-
-    SHDOCVW_LockModule();
-
-    hres = IWebBrowser_QueryInterface(WEBBROWSER(ret), riid, ppv);
-
-    IWebBrowser2_Release(WEBBROWSER(ret));
-    return hres;
-}
-
-HRESULT WebBrowserV1_Create(IUnknown *pOuter, REFIID riid, void **ppv)
-{
-    return WebBrowser_Create(1, pOuter, riid, ppv);
-}
-
-HRESULT WebBrowserV2_Create(IUnknown *pOuter, REFIID riid, void **ppv)
-{
-    return WebBrowser_Create(2, pOuter, riid, ppv);
-}
index a7620f5..c245ba3 100644 (file)
@@ -163,7 +163,7 @@ reactos/dll/win32/security        # Forked (different .spec)
 reactos/dll/win32/sensapi         # Synced to Wine-1.5.4
 reactos/dll/win32/setupapi        # Forked at Wine-20050524
 reactos/dll/win32/shdoclc         # Synced to Wine-1.5.19
-reactos/dll/win32/shdocvw         # Autosync
+reactos/dll/win32/shdocvw         # Synced to Wine-1.5.26
 reactos/dll/win32/shell32         # Forked at Wine-20071011
 reactos/dll/win32/shfolder        # Autosync
 reactos/dll/win32/shlwapi         # Synced to Wine-1.5.26