[ros-diffs] [winesync] 26501: Autosyncing with Wine HEAD

winesync at svn.reactos.org winesync at svn.reactos.org
Wed Apr 25 10:22:25 CEST 2007


Author: winesync
Date: Wed Apr 25 12:22:24 2007
New Revision: 26501

URL: http://svn.reactos.org/svn/reactos?rev=26501&view=rev
Log:
Autosyncing with Wine HEAD

Added:
    trunk/reactos/dll/win32/oledlg/oledlg_Pl.rc   (with props)
    trunk/reactos/dll/win32/oledlg/oledlg_private.h   (with props)
    trunk/reactos/dll/win32/oledlg/pastespl.c   (with props)
Modified:
    trunk/reactos/dll/win32/oledlg/insobjdlg.c
    trunk/reactos/dll/win32/oledlg/oledlg.rbuild
    trunk/reactos/dll/win32/oledlg/oledlg_De.rc
    trunk/reactos/dll/win32/oledlg/oledlg_En.rc
    trunk/reactos/dll/win32/oledlg/oledlg_Fr.rc
    trunk/reactos/dll/win32/oledlg/oledlg_It.rc
    trunk/reactos/dll/win32/oledlg/oledlg_Ko.rc
    trunk/reactos/dll/win32/oledlg/oledlg_Nl.rc
    trunk/reactos/dll/win32/oledlg/oledlg_No.rc
    trunk/reactos/dll/win32/oledlg/oledlg_Pt.rc
    trunk/reactos/dll/win32/oledlg/oledlg_main.c
    trunk/reactos/dll/win32/oledlg/oledlg_ros.diff
    trunk/reactos/dll/win32/oledlg/resource.h
    trunk/reactos/dll/win32/oledlg/rsrc.rc

Modified: trunk/reactos/dll/win32/oledlg/insobjdlg.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/oledlg/insobjdlg.c?rev=26501&r1=26500&r2=26501&view=diff
==============================================================================
--- trunk/reactos/dll/win32/oledlg/insobjdlg.c (original)
+++ trunk/reactos/dll/win32/oledlg/insobjdlg.c Wed Apr 25 12:22:24 2007
@@ -57,7 +57,7 @@
 
 } InsertObjectDlgInfo;
 
-INT_PTR CALLBACK UIInsertObjectDlgProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam);
+static INT_PTR CALLBACK UIInsertObjectDlgProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam);
 static LRESULT UIINSOBJDLG_OnWMCommand(HWND hwnd, WPARAM wParam, LPARAM lParam);
 static void UIINSERTOBJECTDLG_InitDialog(InsertObjectDlgInfo* pdlgInfo);
 static void UIINSERTOBJECTDLG_SelectCreateCtrl(InsertObjectDlgInfo* pdlgInfo);

Modified: trunk/reactos/dll/win32/oledlg/oledlg.rbuild
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/oledlg/oledlg.rbuild?rev=26501&r1=26500&r2=26501&view=diff
==============================================================================
--- trunk/reactos/dll/win32/oledlg/oledlg.rbuild (original)
+++ trunk/reactos/dll/win32/oledlg/oledlg.rbuild Wed Apr 25 12:22:24 2007
@@ -17,6 +17,7 @@
 	<library>ntdll</library>
 	<file>insobjdlg.c</file>
 	<file>oledlg_main.c</file>
+	<file>pastespl.c</file>
 	<file>rsrc.rc</file>
 	<file>oledlg.spec</file>
 </module>

Modified: trunk/reactos/dll/win32/oledlg/oledlg_De.rc
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/oledlg/oledlg_De.rc?rev=26501&r1=26500&r2=26501&view=diff
==============================================================================
--- trunk/reactos/dll/win32/oledlg/oledlg_De.rc (original)
+++ trunk/reactos/dll/win32/oledlg/oledlg_De.rc Wed Apr 25 12:22:24 2007
@@ -16,7 +16,7 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
  */
 
-LANGUAGE LANG_GERMAN, SUBLANG_DEFAULT
+LANGUAGE LANG_GERMAN, SUBLANG_NEUTRAL
 
 UIINSERTOBJECT DIALOG DISCARDABLE  0, 0, 294, 151
 STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
@@ -53,3 +53,43 @@
   IDS_NOTOLEMOD         "Die Datei ist offenbar kein gültiges OLE - Steuermodul. Die OLE - Steuerung konnte nicht registiert werden."
   IDS_NOTOLEMODCAPTION  "Steuerung hinzufügen"
 }
+
+IDD_PASTESPECIAL4 DIALOG DISCARDABLE 3, 15, 293, 140
+STYLE DS_MODALFRAME | DS_SETFONT | WS_POPUP | WS_CAPTION | WS_SYSMENU
+CAPTION "Inhalte einfügen"
+FONT 8, "MS Shell Dlg"
+BEGIN
+    LTEXT         "Quelle:", -1, 6, 9, 30, 8, WS_VISIBLE | WS_GROUP
+    CONTROL       "&Einfügen", IDC_PS_PASTE, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP | WS_GROUP | WS_VISIBLE,
+                  6, 38, 55, 10
+    CONTROL       "&Verknüpfung einfügen", IDC_PS_PASTELINK, "Button", BS_AUTORADIOBUTTON | WS_VISIBLE,
+                  6, 63, 55, 10
+    LTEXT         "&Als:", -1, 65, 25, 16, 8, WS_VISIBLE | WS_GROUP
+    LISTBOX       IDC_PS_PASTELIST,     65, 36, 153, 57, LBS_NOTIFY | LBS_USETABSTOPS | WS_VSCROLL | WS_BORDER | NOT WS_VISIBLE
+    LISTBOX       IDC_PS_PASTELINKLIST, 65, 36, 153, 57, LBS_NOTIFY | LBS_USETABSTOPS | WS_VSCROLL | WS_BORDER | NOT WS_VISIBLE
+    LISTBOX       IDC_PS_DISPLAYLIST,   65, 36, 153, 57, LBS_NOTIFY | LBS_USETABSTOPS | WS_VSCROLL | WS_BORDER | WS_VISIBLE
+    CONTROL       "OK", IDOK, "Button", BS_DEFPUSHBUTTON | WS_TABSTOP | WS_GROUP | WS_VISIBLE, 224, 6, 66, 14
+    CONTROL       "Abbrechen", IDCANCEL, "Button", BS_PUSHBUTTON | WS_TABSTOP | WS_VISIBLE, 224, 23, 66, 14
+    CONTROL       "&Hilfe", IDC_OLEUIHELP, "Button", BS_PUSHBUTTON | WS_TABSTOP | WS_VISIBLE, 224, 42, 66, 14
+    CONTROL       "Als Symbol &darstellen", IDC_PS_DISPLAYASICON, "Button", BS_AUTOCHECKBOX | WS_TABSTOP | WS_VISIBLE, 224, 59, 66, 14
+    CONTROL       "", IDC_PS_ICONDISPLAY, "Static", SS_ICON | WS_VISIBLE, 224, 75, 66, 44
+    CONTROL       "&Symbol ändern...", IDC_PS_CHANGEICON, "Button", BS_PUSHBUTTON | WS_TABSTOP | WS_VISIBLE, 224, 123, 66, 14
+    CONTROL       "", IDC_PS_RESULTIMAGE, "Static", SS_ICON | WS_VISIBLE, 8, 101, 42, 34
+    CONTROL       "<< result text goes here >>", IDC_PS_RESULTTEXT, "Static", SS_NOPREFIX | WS_VISIBLE, 54, 100, 159, 35
+    CONTROL       "Ergebnis", -1, "Button", BS_GROUPBOX | WS_GROUP | WS_VISIBLE, 6, 90, 212, 48
+    CONTROL       "", IDC_PS_SOURCETEXT, "Edit", ES_READONLY | ES_AUTOHSCROLL | WS_VISIBLE, 37, 9, 180, 8
+END
+
+STRINGTABLE DISCARDABLE
+{
+    IDS_PS_PASTE_DATA                     "Fügt den Inhalt der Zwischenablage in Ihr Dokument als %s ein."
+    IDS_PS_PASTE_OBJECT                   "Fügt den Inhalt der Zwischenablage so in Ihr Dokument ein dass Sie es mit %s aktivieren können."
+    IDS_PS_PASTE_OBJECT_AS_ICON           "Fügt den Inhalt der Zwischenablage so in Ihr Dokument ein dass Sie es mit %s aktivieren können.  Wird als Symbol dargestellt."
+    IDS_PS_PASTE_LINK_DATA                "Fügt den Inhalt der Zwischenablage in Ihr Dokument als %s ein.  Die Daten sind mit der Ursprungsdatei verknüpft so dass Änderungen an dieser in Ihrem Dokument erscheinen."
+    IDS_PS_PASTE_LINK_OBJECT              "Fügt ein Bild des Zwischenablagen-Inhalts in Ihr Dokument ein.  Das Bild ist mit der Ursprungsdatei verknüpft so dass Änderungen an dieser in Ihrem Dokument erscheinen."
+    IDS_PS_PASTE_LINK_OBJECT_AS_ICON      "Fügt eine Verknüpfung ein die auf den Ort des Zwischenablagen-Inhalts zeigt.  Die Verknüpfung ist mit der Ursprungsdatei verknüpft so dass Änderungen an dieser in Ihrem Dokument erscheinen."
+    IDS_PS_NON_OLE                        "Fügt den Inhalt der Zwischenablage in Ihr Dokument als ein."
+    IDS_PS_UNKNOWN_TYPE                   "Unbekannter Typ"
+    IDS_PS_UNKNOWN_SRC                    "Unbekannte Quelle"
+    IDS_PS_UNKNOWN_APP                    "dem Erzeugerprogramm"
+}

Modified: trunk/reactos/dll/win32/oledlg/oledlg_En.rc
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/oledlg/oledlg_En.rc?rev=26501&r1=26500&r2=26501&view=diff
==============================================================================
--- trunk/reactos/dll/win32/oledlg/oledlg_En.rc (original)
+++ trunk/reactos/dll/win32/oledlg/oledlg_En.rc Wed Apr 25 12:22:24 2007
@@ -53,3 +53,43 @@
   IDS_NOTOLEMOD         "File does not appear to be a valid OLE module. Unable to register OLE control."
   IDS_NOTOLEMODCAPTION  "Add Control"
 }
+
+IDD_PASTESPECIAL4 DIALOG DISCARDABLE 3, 15, 293, 140
+STYLE DS_MODALFRAME | DS_SETFONT | WS_POPUP | WS_CAPTION | WS_SYSMENU
+CAPTION "Paste Special"
+FONT 8, "MS Shell Dlg"
+BEGIN
+    LTEXT         "Source:", -1, 6, 9, 30, 8, WS_VISIBLE | WS_GROUP
+    CONTROL       "&Paste", IDC_PS_PASTE, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP | WS_GROUP | WS_VISIBLE,
+                  6, 38, 55, 10
+    CONTROL       "Paste &Link", IDC_PS_PASTELINK, "Button", BS_AUTORADIOBUTTON | WS_VISIBLE,
+                  6, 63, 55, 10
+    LTEXT         "&As:", -1, 65, 25, 16, 8, WS_VISIBLE | WS_GROUP
+    LISTBOX       IDC_PS_PASTELIST,     65, 36, 153, 57, LBS_NOTIFY | LBS_USETABSTOPS | WS_VSCROLL | WS_BORDER | NOT WS_VISIBLE
+    LISTBOX       IDC_PS_PASTELINKLIST, 65, 36, 153, 57, LBS_NOTIFY | LBS_USETABSTOPS | WS_VSCROLL | WS_BORDER | NOT WS_VISIBLE
+    LISTBOX       IDC_PS_DISPLAYLIST,   65, 36, 153, 57, LBS_NOTIFY | LBS_USETABSTOPS | WS_VSCROLL | WS_BORDER | WS_VISIBLE
+    CONTROL       "OK", IDOK, "Button", BS_DEFPUSHBUTTON | WS_TABSTOP | WS_GROUP | WS_VISIBLE, 224, 6, 66, 14
+    CONTROL       "Cancel", IDCANCEL, "Button", BS_PUSHBUTTON | WS_TABSTOP | WS_VISIBLE, 224, 23, 66, 14
+    CONTROL       "&Help", IDC_OLEUIHELP, "Button", BS_PUSHBUTTON | WS_TABSTOP | WS_VISIBLE, 224, 42, 66, 14
+    CONTROL       "&Display As Icon", IDC_PS_DISPLAYASICON, "Button", BS_AUTOCHECKBOX | WS_TABSTOP | WS_VISIBLE, 224, 59, 66, 14
+    CONTROL       "", IDC_PS_ICONDISPLAY, "Static", SS_ICON | WS_VISIBLE, 224, 75, 66, 44
+    CONTROL       "Change &Icon...", IDC_PS_CHANGEICON, "Button", BS_PUSHBUTTON | WS_TABSTOP | WS_VISIBLE, 224, 123, 66, 14
+    CONTROL       "", IDC_PS_RESULTIMAGE, "Static", SS_ICON | WS_VISIBLE, 8, 101, 42, 34
+    CONTROL       "<< result text goes here >>", IDC_PS_RESULTTEXT, "Static", SS_NOPREFIX | WS_VISIBLE, 54, 100, 159, 35
+    CONTROL       "Result", -1, "Button", BS_GROUPBOX | WS_GROUP | WS_VISIBLE, 6, 90, 212, 48
+    CONTROL       "", IDC_PS_SOURCETEXT, "Edit", ES_READONLY | ES_AUTOHSCROLL | WS_VISIBLE, 37, 9, 180, 8
+END
+
+STRINGTABLE DISCARDABLE
+{
+    IDS_PS_PASTE_DATA                     "Inserts the contents of the clipboard into your document as %s."
+    IDS_PS_PASTE_OBJECT                   "Inserts the contents of the clipboard into your document so that you can activate it using %s."
+    IDS_PS_PASTE_OBJECT_AS_ICON           "Inserts the contents of the clipboard into your document so that you can activate it using %s.  It will be displayed as an icon."
+    IDS_PS_PASTE_LINK_DATA                "Inserts the contents of the clipboard into your document as %s.  The data is linked to the source file so that changes to the file will be reflected in your document."
+    IDS_PS_PASTE_LINK_OBJECT              "Inserts a picture of the clipboard contents into your document.  The picture is linked to the source file so that changes to the file will be reflected in your document."
+    IDS_PS_PASTE_LINK_OBJECT_AS_ICON      "Inserts a shortcut which points to the location of the clipboard contents.  The shortcut is linked to the source file so that changes to the file will be reflected in your document."
+    IDS_PS_NON_OLE                        "Inserts the contents of the clipboard into your document."
+    IDS_PS_UNKNOWN_TYPE                   "Unknown Type"
+    IDS_PS_UNKNOWN_SRC                    "Unknown Source"
+    IDS_PS_UNKNOWN_APP                    "the program which created it"
+}

Modified: trunk/reactos/dll/win32/oledlg/oledlg_Fr.rc
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/oledlg/oledlg_Fr.rc?rev=26501&r1=26500&r2=26501&view=diff
==============================================================================
--- trunk/reactos/dll/win32/oledlg/oledlg_Fr.rc (original)
+++ trunk/reactos/dll/win32/oledlg/oledlg_Fr.rc Wed Apr 25 12:22:24 2007
@@ -2,7 +2,7 @@
  * oledlg dll resources
  * French language support
  *
- * Copyright (C) 2005 Jonathan Ernst
+ * Copyright (C) 2005-2006 Jonathan Ernst
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -30,30 +30,70 @@
     LISTBOX         IDC_OBJTYPELIST,82,19,131,66,LBS_SORT |
                     LBS_NOINTEGRALHEIGHT | WS_VISIBLE | WS_VSCROLL |
                     WS_TABSTOP
-    LTEXT           "Type d'objet:",IDC_OBJTYPELBL,82,7,53,8,WS_VISIBLE
+    LTEXT           "Type d'objet :",IDC_OBJTYPELBL,82,7,53,8,WS_VISIBLE
     DEFPUSHBUTTON   "OK",IDOK,221,7,66,14
     PUSHBUTTON      "Annuler",IDCANCEL,221,24,66,14
     GROUPBOX        "Résultat",IDC_RESULT,7,103,208,41
-    CONTROL         "Créer Nouveau",IDC_CREATENEW,"Button",BS_AUTORADIOBUTTON | 
+    CONTROL         "Créer nouveau",IDC_CREATENEW,"Button",BS_AUTORADIOBUTTON | 
                     WS_GROUP,7,20,62,10
-    CONTROL         "Créer Contrôle",IDC_CREATECONTROL,"Button",
+    CONTROL         "Créer le contrôle",IDC_CREATECONTROL,"Button",
                     BS_AUTORADIOBUTTON | NOT WS_VISIBLE,7,54,62,10
-    CONTROL         "Créer Depuis Fichier",IDC_CREATEFROMFILE,"Button",
+    CONTROL         "Créer depuis le fichier",IDC_CREATEFROMFILE,"Button",
                     BS_AUTORADIOBUTTON,7,37,67,10
     LTEXT           "",IDC_RESULTDESC,49,112,159,23
     PUSHBUTTON      "&Ajoute Contrôle...",IDC_ADDCONTROL,81,88,63,14,NOT WS_VISIBLE
-    CONTROL         "Afficher Comme Icône",IDC_ASICON,"Button",BS_AUTOCHECKBOX | 
+    CONTROL         "Afficher comme icône",IDC_ASICON,"Button",BS_AUTOCHECKBOX | 
                     WS_TABSTOP | NOT WS_VISIBLE,223,58,64,10
     PUSHBUTTON      "Parcourir...",IDC_BROWSE,83,53,50,14,NOT WS_VISIBLE
-    LTEXT           "Fichier:",IDC_FILELBL,83,27,20,8, NOT WS_VISIBLE
+    LTEXT           "Fichier :",IDC_FILELBL,83,27,20,8, NOT WS_VISIBLE
     EDITTEXT        IDC_FILE,83,37,132,13,ES_AUTOHSCROLL | NOT WS_VISIBLE
 END
 
 STRINGTABLE DISCARDABLE
 {
   IDS_RESULTOBJDESC	"Insérer un nouvel object %s dans votre document"
-  IDS_RESULTFILEOBJDESC	"Insère le contenu du fichier comme un objet dans votre document afin que vous puissiez l'activer en utilisant le programme avec lequel vous l'avez créé."
+  IDS_RESULTFILEOBJDESC	"Insère le contenu du fichier comme un objet dans votre document afin que vous puissiez l'activer en utilisant le programme avec lequel il a été créé."
   IDS_BROWSE            "Parcourir"
   IDS_NOTOLEMOD         "Le fichier ne semble pas être un module OLE valide. Impossible d'enregistrer le contrôle OLE."
-  IDS_NOTOLEMODCAPTION  "Ajouter Contrôle"
+  IDS_NOTOLEMODCAPTION  "Ajouter un contrôle"
 }
+
+IDD_PASTESPECIAL4 DIALOG DISCARDABLE 3, 15, 293, 140
+STYLE DS_MODALFRAME | DS_SETFONT | WS_POPUP | WS_CAPTION | WS_SYSMENU
+CAPTION "Collage spécial"
+FONT 8, "MS Shell Dlg"
+BEGIN
+    LTEXT         "Source :", -1, 6, 9, 30, 8, WS_VISIBLE | WS_GROUP
+    CONTROL       "C&oller", IDC_PS_PASTE, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP | WS_GROUP | WS_VISIBLE,
+                  6, 38, 55, 10
+    CONTROL       "Coller le &lien", IDC_PS_PASTELINK, "Button", BS_AUTORADIOBUTTON | WS_VISIBLE,
+                  6, 63, 55, 10
+    LTEXT         "&Comme :", -1, 65, 25, 16, 8, WS_VISIBLE | WS_GROUP
+    LISTBOX       IDC_PS_PASTELIST,     65, 36, 153, 57, LBS_NOTIFY | LBS_USETABSTOPS | WS_VSCROLL | WS_BORDER | NOT WS_VISIBLE
+    LISTBOX       IDC_PS_PASTELINKLIST, 65, 36, 153, 57, LBS_NOTIFY | LBS_USETABSTOPS | WS_VSCROLL | WS_BORDER | NOT WS_VISIBLE
+    LISTBOX       IDC_PS_DISPLAYLIST,   65, 36, 153, 57, LBS_NOTIFY | LBS_USETABSTOPS | WS_VSCROLL | WS_BORDER | WS_VISIBLE
+    CONTROL       "OK", IDOK, "Button", BS_DEFPUSHBUTTON | WS_TABSTOP | WS_GROUP | WS_VISIBLE, 224, 6, 66, 14
+    CONTROL       "Annuler", IDCANCEL, "Button", BS_PUSHBUTTON | WS_TABSTOP | WS_VISIBLE, 224, 23, 66, 14
+    CONTROL       "Aid&e", IDC_OLEUIHELP, "Button", BS_PUSHBUTTON | WS_TABSTOP | WS_VISIBLE, 224, 42, 66, 14
+    CONTROL       "&Afficher comme icône", IDC_PS_DISPLAYASICON, "Button", BS_AUTOCHECKBOX | WS_TABSTOP | WS_VISIBLE, 224, 59, 66, 14
+    CONTROL       "", IDC_PS_ICONDISPLAY, "Static", SS_ICON | WS_VISIBLE, 224, 75, 66, 44
+    CONTROL       "Changer l'&icône...", IDC_PS_CHANGEICON, "Button", BS_PUSHBUTTON | WS_TABSTOP | WS_VISIBLE, 224, 123, 66, 14
+    CONTROL       "", IDC_PS_RESULTIMAGE, "Static", SS_ICON | WS_VISIBLE, 8, 101, 42, 34
+    CONTROL       "<< le résultat vient ici >>", IDC_PS_RESULTTEXT, "Static", SS_NOPREFIX | WS_VISIBLE, 54, 100, 159, 35
+    CONTROL       "Résultat", -1, "Button", BS_GROUPBOX | WS_GROUP | WS_VISIBLE, 6, 90, 212, 48
+    CONTROL       "", IDC_PS_SOURCETEXT, "Edit", ES_READONLY | ES_AUTOHSCROLL | WS_VISIBLE, 37, 9, 180, 8
+END
+
+STRINGTABLE DISCARDABLE
+{
+    IDS_PS_PASTE_DATA                     "Insère le contenu du presse-papiers dans votre document comme %s."
+    IDS_PS_PASTE_OBJECT                   "Insère le contenu du presse-papiers dans votre document de sorte que vous puissiez l'activer en utilisant %s."
+    IDS_PS_PASTE_OBJECT_AS_ICON           "Insère le contenu du presse-papiers dans votre document de sorte que vous puissiez l'activer en utilisant %s. Il sera affiché comme une icône."
+    IDS_PS_PASTE_LINK_DATA                "Insère le contenu du presse-papiers dans votre document comme %s. Les données sont liées au fichier source de sorte que les modifications de celles-ci seront répercutées dans votre document."
+    IDS_PS_PASTE_LINK_OBJECT              "Insère le contenu du presse-papiers dans votre document. L'image est liée au fichier source de sorte que les modifications de celle-ci seront répercutées dans votre document."
+    IDS_PS_PASTE_LINK_OBJECT_AS_ICON      "Insère un raccourci qui pointe vers l'emplacement du contenu du presse-papiers. Le raccourci est lié au fichier source de sorte que les modifications de celui-ci seront répercutées dans votre document."
+    IDS_PS_NON_OLE                        "Insère le contenu du presse-papiers dans votre document."
+    IDS_PS_UNKNOWN_TYPE                   "Type inconnu"
+    IDS_PS_UNKNOWN_SRC                    "Source inconnue"
+    IDS_PS_UNKNOWN_APP                    "le programme avec lequel il a été créé"
+}

Modified: trunk/reactos/dll/win32/oledlg/oledlg_It.rc
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/oledlg/oledlg_It.rc?rev=26501&r1=26500&r2=26501&view=diff
==============================================================================
--- trunk/reactos/dll/win32/oledlg/oledlg_It.rc (original)
+++ trunk/reactos/dll/win32/oledlg/oledlg_It.rc Wed Apr 25 12:22:24 2007
@@ -17,7 +17,7 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
  */
 
-LANGUAGE LANG_ITALIAN, SUBLANG_DEFAULT
+LANGUAGE LANG_ITALIAN, SUBLANG_NEUTRAL
 
 UIINSERTOBJECT DIALOG DISCARDABLE  0, 0, 294, 151
 STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU

Modified: trunk/reactos/dll/win32/oledlg/oledlg_Ko.rc
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/oledlg/oledlg_Ko.rc?rev=26501&r1=26500&r2=26501&view=diff
==============================================================================
--- trunk/reactos/dll/win32/oledlg/oledlg_Ko.rc (original)
+++ trunk/reactos/dll/win32/oledlg/oledlg_Ko.rc Wed Apr 25 12:22:24 2007
@@ -16,7 +16,7 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
  */
 
-LANGUAGE LANG_KOREAN, SUBLANG_DEFAULT
+LANGUAGE LANG_KOREAN, SUBLANG_NEUTRAL
 
 UIINSERTOBJECT DIALOG DISCARDABLE  0, 0, 294, 151
 STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
@@ -53,3 +53,43 @@
   IDS_NOTOLEMOD         "ÀÌ ÆÄÀÏÀº ¿Ã¹Ù¸¥ OLE¸ðµâÀÌ ¾Æ´Ñ°Å·Î º¸ÀÔ´Ï´Ù. OLEÄÁÆ®·ÑÀ» µî·ÏÇÒ¼ö ¾ø½À´Ï´Ù."
   IDS_NOTOLEMODCAPTION  "ÄÁÆ®·Ñ ´õÇϱâ"
 }
+
+IDD_PASTESPECIAL4 DIALOG DISCARDABLE 3, 15, 293, 140
+STYLE DS_MODALFRAME | DS_SETFONT | WS_POPUP | WS_CAPTION | WS_SYSMENU
+CAPTION "Ưº°ÇÏ°Ô  ºÙ¿©³Ö±â"
+FONT 8, "MS Shell Dlg"
+BEGIN
+    LTEXT         "¿øº»:", -1, 6, 9, 30, 8, WS_VISIBLE | WS_GROUP
+    CONTROL       "ºÙ¿©³Ö±â(&P)", IDC_PS_PASTE, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP | WS_GROUP | WS_VISIBLE,
+                  6, 38, 55, 10
+    CONTROL       "¸µÅ©·Î ºÙ¿©³Ö±â(&L)", IDC_PS_PASTELINK, "Button", BS_AUTORADIOBUTTON | WS_VISIBLE,
+                  6, 63, 55, 10
+    LTEXT         "&As:", -1, 65, 25, 16, 8, WS_VISIBLE | WS_GROUP
+    LISTBOX       IDC_PS_PASTELIST,     65, 36, 153, 57, LBS_NOTIFY | LBS_USETABSTOPS | WS_VSCROLL | WS_BORDER | NOT WS_VISIBLE
+    LISTBOX       IDC_PS_PASTELINKLIST, 65, 36, 153, 57, LBS_NOTIFY | LBS_USETABSTOPS | WS_VSCROLL | WS_BORDER | NOT WS_VISIBLE
+    LISTBOX       IDC_PS_DISPLAYLIST,   65, 36, 153, 57, LBS_NOTIFY | LBS_USETABSTOPS | WS_VSCROLL | WS_BORDER | WS_VISIBLE
+    CONTROL       "È®ÀÎ", IDOK, "Button", BS_DEFPUSHBUTTON | WS_TABSTOP | WS_GROUP | WS_VISIBLE, 224, 6, 66, 14
+    CONTROL       "Ãë¼Ò", IDCANCEL, "Button", BS_PUSHBUTTON | WS_TABSTOP | WS_VISIBLE, 224, 23, 66, 14
+    CONTROL       "µµ¿ò¸»(&H)", IDC_OLEUIHELP, "Button", BS_PUSHBUTTON | WS_TABSTOP | WS_VISIBLE, 224, 42, 66, 14
+    CONTROL       "¾ÆÀÌÄÜÀ¸·Î º¸±â(&D)", IDC_PS_DISPLAYASICON, "Button", BS_AUTOCHECKBOX | WS_TABSTOP | WS_VISIBLE, 224, 59, 66, 14
+    CONTROL       "", IDC_PS_ICONDISPLAY, "Static", SS_ICON | WS_VISIBLE, 224, 75, 66, 44
+    CONTROL       "¾ÆÀÌÄÜ ¹Ù²Ù±â(&I)...", IDC_PS_CHANGEICON, "Button", BS_PUSHBUTTON | WS_TABSTOP | WS_VISIBLE, 224, 123, 66, 14
+    CONTROL       "", IDC_PS_RESULTIMAGE, "Static", SS_ICON | WS_VISIBLE, 8, 101, 42, 34
+    CONTROL       "<< °á°ú ÅؽºÆ®´Â ¿©±â´Ù°¡ >>", IDC_PS_RESULTTEXT, "Static", SS_NOPREFIX | WS_VISIBLE, 54, 100, 159, 35
+    CONTROL       "°á°ú", -1, "Button", BS_GROUPBOX | WS_GROUP | WS_VISIBLE, 6, 90, 212, 48
+    CONTROL       "", IDC_PS_SOURCETEXT, "Edit", ES_READONLY | ES_AUTOHSCROLL | WS_VISIBLE, 37, 9, 180, 8
+END
+
+STRINGTABLE DISCARDABLE
+{
+    IDS_PS_PASTE_DATA                     "´ç½ÅÀÇ ¹®¼­ %s¿¡ Ŭ¸³º¸µåÀÇ ³»¿ë »ðÀÔÇϱâ."
+    IDS_PS_PASTE_OBJECT                   "´ç½ÅÀÇ ¹®¼­¿¡ Ŭ¸³º¸µåÀÇ ³»¿ëµéÀ» ÷ºÎÇÏ¸é  %s¸¦ »ç¿ëÇؼ­ ÀÌ°ÍÀ» ½ÇÇàÇÒ ¼ö ÀÖ½À´Ï´Ù."
+    IDS_PS_PASTE_OBJECT_AS_ICON           "´ç½ÅÀÇ ¹®¼­¿¡ Ŭ¸³º¸µåÀÇ ³»¿ëµéÀ» ÷ºÎÇÏ¸é  %s¸¦ »ç¿ëÇؼ­ ÀÌ°ÍÀ» ½ÇÇàÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ°ÍÀº ¾ÆÀÌÄÜÀ¸·Î ³ªÅ¸³»Áú °Ì´Ï´Ù."
+    IDS_PS_PASTE_LINK_DATA                "´ç½ÅÀÇ ¹®¼­ %s¿¡ Ŭ¸³º¸µåÀÇ ³»¿ë »ðÀÔÇϱâ.  ÀÌ µ¥ÀÌÅÍ´Â ¿øº» ÆÄÀÏ¿¡ ¿¬°áµÇ¾î À־ ÆÄÀÏÀÌ ¹Ù²î¸é ´ç½ÅÀÇ ¹®¼­µµ ¹Ù²ð°Ì´Ï´Ù."
+    IDS_PS_PASTE_LINK_OBJECT              "´ç½ÅÀÇ ¹®¼­¿¡ Ŭ¸³º¸µå¿¡ ÀÖ´Â ±×¸²À» Áý¾î³Ö½À´Ï´Ù.  ÀÌ ±×¸²Àº ¿øº» ÆÄÀÏ¿¡ ¿¬°áµÇ¾î À־ ÆÄÀÏÀÌ ¹Ù²î¸é ´ç½ÅÀÇ ¹®¼­µµ ¹Ù²ð°Ì´Ï´Ù."
+    IDS_PS_PASTE_LINK_OBJECT_AS_ICON      "´ç½ÅÀÇ ¹®¼­¿¡ Ŭ¸³º¸µå¿¡ ÀÖ´Â ´ÜÃà¾ÆÀÌÄÜÀ» Áý¾î³Ö½À´Ï´Ù.  ÀÌ ´ÜÃà¾ÆÀÌÄÜÀº ¿øº» ÆÄÀÏ¿¡ ¿¬°áµÇ¾î À־ ÆÄÀÏÀÌ ¹Ù²î¸é ´ç½ÅÀÇ ¹®¼­µµ ¹Ù²ð°Ì´Ï´Ùt."
+    IDS_PS_NON_OLE                        "´ç½ÅÀÇ ¹®¼­¿¡ Ŭ¸³º¸µåÀÇ ³»¿ë »ðÀÔÇϱâ."
+    IDS_PS_UNKNOWN_TYPE                   "¾Ë¼ö ¾ø´Â Çü½Ä"
+    IDS_PS_UNKNOWN_SRC                    "¾Ë¼ö ¾ø´Â ¿øº»"
+    IDS_PS_UNKNOWN_APP                    "ÀÌ ÇÁ·Î±×·¥Àº ¾Ë ¼ö ¾ø´Â ÇÁ·Î±×·¥À¸·Î ¸¸µé¾îÁ³½À´Ï´Ù"
+}

Modified: trunk/reactos/dll/win32/oledlg/oledlg_Nl.rc
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/oledlg/oledlg_Nl.rc?rev=26501&r1=26500&r2=26501&view=diff
==============================================================================
--- trunk/reactos/dll/win32/oledlg/oledlg_Nl.rc (original)
+++ trunk/reactos/dll/win32/oledlg/oledlg_Nl.rc Wed Apr 25 12:22:24 2007
@@ -17,7 +17,7 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
  */
 
-LANGUAGE LANG_DUTCH, SUBLANG_DEFAULT
+LANGUAGE LANG_DUTCH, SUBLANG_NEUTRAL
 
 UIINSERTOBJECT DIALOG DISCARDABLE  0, 0, 294, 151
 STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
@@ -33,7 +33,7 @@
     GROUPBOX        "Resultaat",IDC_RESULT,7,103,208,41
     CONTROL         "Nieuw",IDC_CREATENEW,"Button",BS_AUTORADIOBUTTON | 
                     WS_GROUP,7,20,62,10
-    CONTROL         "Creëren",IDC_CREATECONTROL,"Button",
+    CONTROL         "Creëren",IDC_CREATECONTROL,"Button",
                     BS_AUTORADIOBUTTON | NOT WS_VISIBLE,7,54,62,10
     CONTROL         "Bestand gebruiken",IDC_CREATEFROMFILE,"Button",
                     BS_AUTORADIOBUTTON,7,37,67,10

Modified: trunk/reactos/dll/win32/oledlg/oledlg_No.rc
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/oledlg/oledlg_No.rc?rev=26501&r1=26500&r2=26501&view=diff
==============================================================================
--- trunk/reactos/dll/win32/oledlg/oledlg_No.rc (original)
+++ trunk/reactos/dll/win32/oledlg/oledlg_No.rc Wed Apr 25 12:22:24 2007
@@ -1,5 +1,5 @@
 /*
- * Copyright 2005 Alexander N. Sørnes <alex at thehandofagony.com>
+ * Copyright 2005-2006 Alexander N. Sørnes <alex at thehandofagony.com>
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -53,3 +53,43 @@
   IDS_NOTOLEMOD         "Filen ser ikke ut til å være en gyldig OLE-modul. Kunne ikke registrere OLE-kontroller."
   IDS_NOTOLEMODCAPTION  "Legg til kontroller"
 }
+
+IDD_PASTESPECIAL4 DIALOG DISCARDABLE 3, 15, 293, 140
+STYLE DS_MODALFRAME | DS_SETFONT | WS_POPUP | WS_CAPTION | WS_SYSMENU
+CAPTION "Lim inn spesiell"
+FONT 8, "MS Shell Dlg"
+BEGIN
+    LTEXT         "Kilde:", -1, 6, 9, 30, 8, WS_VISIBLE | WS_GROUP
+    CONTROL       "Lim in&n", IDC_PS_PASTE, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP | WS_GROUP | WS_VISIBLE,
+                  6, 38, 55, 10
+    CONTROL       "Lim inn kob&ling", IDC_PS_PASTELINK, "Button", BS_AUTORADIOBUTTON | WS_VISIBLE,
+                  6, 63, 55, 10
+    LTEXT         "&Som:", -1, 65, 25, 16, 8, WS_VISIBLE | WS_GROUP
+    LISTBOX       IDC_PS_PASTELIST,     65, 36, 153, 57, LBS_NOTIFY | LBS_USETABSTOPS | WS_VSCROLL | WS_BORDER | NOT WS_VISIBLE
+    LISTBOX       IDC_PS_PASTELINKLIST, 65, 36, 153, 57, LBS_NOTIFY | LBS_USETABSTOPS | WS_VSCROLL | WS_BORDER | NOT WS_VISIBLE
+    LISTBOX       IDC_PS_DISPLAYLIST,   65, 36, 153, 57, LBS_NOTIFY | LBS_USETABSTOPS | WS_VSCROLL | WS_BORDER | WS_VISIBLE
+    CONTROL       "OK", IDOK, "Button", BS_DEFPUSHBUTTON | WS_TABSTOP | WS_GROUP | WS_VISIBLE, 224, 6, 66, 14
+    CONTROL       "Avbryt", IDCANCEL, "Button", BS_PUSHBUTTON | WS_TABSTOP | WS_VISIBLE, 224, 23, 66, 14
+    CONTROL       "&Hjelp", IDC_OLEUIHELP, "Button", BS_PUSHBUTTON | WS_TABSTOP | WS_VISIBLE, 224, 42, 66, 14
+    CONTROL       "&Vis som ikon", IDC_PS_DISPLAYASICON, "Button", BS_AUTOCHECKBOX | WS_TABSTOP | WS_VISIBLE, 224, 59, 66, 14
+    CONTROL       "", IDC_PS_ICONDISPLAY, "Static", SS_ICON | WS_VISIBLE, 224, 75, 66, 44
+    CONTROL       "Endre &ikon . . .", IDC_PS_CHANGEICON, "Button", BS_PUSHBUTTON | WS_TABSTOP | WS_VISIBLE, 224, 123, 66, 14
+    CONTROL       "", IDC_PS_RESULTIMAGE, "Static", SS_ICON | WS_VISIBLE, 8, 101, 42, 34
+    CONTROL       "<< resultatet kommer her >>", IDC_PS_RESULTTEXT, "Static", SS_NOPREFIX | WS_VISIBLE, 54, 100, 159, 35
+    CONTROL       "Resultat", -1, "Button", BS_GROUPBOX | WS_GROUP | WS_VISIBLE, 6, 90, 212, 48
+    CONTROL       "", IDC_PS_SOURCETEXT, "Rediger", ES_READONLY | ES_AUTOHSCROLL | WS_VISIBLE, 37, 9, 180, 8
+END
+
+STRINGTABLE DISCARDABLE
+{
+    IDS_PS_PASTE_DATA                     "Setter innholdet fra utklippstavlen inn i dokumentet som %s."
+    IDS_PS_PASTE_OBJECT                   "Setter innholdet fra utklippstavlen inn i dokumentet så du kan aktivere det med %s."
+    IDS_PS_PASTE_OBJECT_AS_ICON           "Setter innholdet fra utklippstavlen inn i dokumentet så du kan aktivere det med  %s.  Det vises som et ikon."
+    IDS_PS_PASTE_LINK_DATA                "Setter innholdet fra utklippstavlen inn i dokumentet som %s. Det kobles til kildefilen så endrer i denne også skjer i dokumentet."
+    IDS_PS_PASTE_LINK_OBJECT              "Setter inn et bilde av utklippstavleinnholdet i dokumentet. Bildet kobles til kildefilen så endringer i denne også skjer i dokumentet ."
+    IDS_PS_PASTE_LINK_OBJECT_AS_ICON      "Setter inn en snarvei som peker til plasseringen av innholdet på utklippstavlen. Snarveien kobles til kildefilen så endringer i denne også skjer i dokumentet."
+    IDS_PS_NON_OLE                        "Setter innholdet fra utklippstavlen inn i dokumentet."
+    IDS_PS_UNKNOWN_TYPE                   "Ukjent type"
+    IDS_PS_UNKNOWN_SRC                    "Ukjent kilde"
+    IDS_PS_UNKNOWN_APP                    "programmet som laget det"
+}

Added: trunk/reactos/dll/win32/oledlg/oledlg_Pl.rc
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/oledlg/oledlg_Pl.rc?rev=26501&view=auto
==============================================================================
--- trunk/reactos/dll/win32/oledlg/oledlg_Pl.rc (added)
+++ trunk/reactos/dll/win32/oledlg/oledlg_Pl.rc Wed Apr 25 12:22:24 2007
@@ -1,0 +1,96 @@
+/*
+ * Copyright 2003 Ulrich Czekalla for CodeWeavers
+ * Copyright 2006 Mikolaj Zalewski
+ *
+ * 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
+ */
+
+LANGUAGE LANG_POLISH, SUBLANG_DEFAULT
+
+UIINSERTOBJECT DIALOG DISCARDABLE  0, 0, 310, 151
+STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
+CAPTION "Wstaw objekt"
+FONT 8, "MS Shell Dlg"
+BEGIN
+    LISTBOX         IDC_OBJTYPELIST,82,19,131,66,LBS_SORT |
+                    LBS_NOINTEGRALHEIGHT | WS_VISIBLE | WS_VSCROLL |
+                    WS_TABSTOP
+    LTEXT           "Typ obiektu:",IDC_OBJTYPELBL,82,7,53,8,WS_VISIBLE
+    DEFPUSHBUTTON   "OK",IDOK,229,7,66,14
+    PUSHBUTTON      "Anuluj",IDCANCEL,229,24,66,14
+    GROUPBOX        "Wynik",IDC_RESULT,7,103,208,41
+    CONTROL         "Utwórz nowy",IDC_CREATENEW,"Button",BS_AUTORADIOBUTTON | 
+                    WS_GROUP,7,20,62,10
+    CONTROL         "Utwórz kontrolkê",IDC_CREATECONTROL,"Button",
+                    BS_AUTORADIOBUTTON | NOT WS_VISIBLE,7,54,72,10
+    CONTROL         "Utwórz z pliku",IDC_CREATEFROMFILE,"Button",
+                    BS_AUTORADIOBUTTON,7,37,67,10
+    LTEXT           "",IDC_RESULTDESC,49,112,159,23
+    PUSHBUTTON      "&Dodaj kontrolkê...",IDC_ADDCONTROL,81,88,63,14,NOT WS_VISIBLE
+    CONTROL         "Wyœwietlaj jako ikonê",IDC_ASICON,"Button",BS_AUTOCHECKBOX | 
+                    WS_TABSTOP | NOT WS_VISIBLE,223,58,84,10
+    PUSHBUTTON      "Przegl¹daj...",IDC_BROWSE,83,53,50,14,NOT WS_VISIBLE
+    LTEXT           "Plik:",IDC_FILELBL,83,27,20,8, NOT WS_VISIBLE
+    EDITTEXT        IDC_FILE,83,37,132,13,ES_AUTOHSCROLL | NOT WS_VISIBLE
+END
+
+STRINGTABLE DISCARDABLE
+{
+  IDS_RESULTOBJDESC	"Wstaw nowy objekt %s do dokumentu"
+  IDS_RESULTFILEOBJDESC	"Wstaw zawartoœæ pliku jako obiekt do dokumentu. Bêdzie mo¿na go aktywowaæ u¿ywaj¹c programu, który go stworzy³."
+  IDS_BROWSE            "Przegl¹daj"
+  IDS_NOTOLEMOD         "Plik nie wydaje siê byæ poprawnym modu³em OLE. Nie uda³o siê zarejestrowaæ kontrolki OLE."
+  IDS_NOTOLEMODCAPTION  "Dodaj kontrolkê"
+}
+
+IDD_PASTESPECIAL4 DIALOG DISCARDABLE 3, 15, 309, 140
+STYLE DS_MODALFRAME | DS_SETFONT | WS_POPUP | WS_CAPTION | WS_SYSMENU
+CAPTION "Wklej specjalnie"
+FONT 8, "MS Shell Dlg"
+BEGIN
+    LTEXT         "ród³o:", -1, 6, 9, 30, 8, WS_VISIBLE | WS_GROUP
+    CONTROL       "&Wklej", IDC_PS_PASTE, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP | WS_GROUP | WS_VISIBLE,
+                  6, 38, 55, 10
+    CONTROL       "Wklej &³¹czê", IDC_PS_PASTELINK, "Button", BS_AUTORADIOBUTTON | WS_VISIBLE,
+                  6, 63, 55, 10
+    LTEXT         "&Jako:", -1, 65, 25, 16, 8, WS_VISIBLE | WS_GROUP
+    LISTBOX       IDC_PS_PASTELIST,     65, 36, 153, 57, LBS_NOTIFY | LBS_USETABSTOPS | WS_VSCROLL | WS_BORDER | NOT WS_VISIBLE
+    LISTBOX       IDC_PS_PASTELINKLIST, 65, 36, 153, 57, LBS_NOTIFY | LBS_USETABSTOPS | WS_VSCROLL | WS_BORDER | NOT WS_VISIBLE
+    LISTBOX       IDC_PS_DISPLAYLIST,   65, 36, 153, 57, LBS_NOTIFY | LBS_USETABSTOPS | WS_VSCROLL | WS_BORDER | WS_VISIBLE
+    CONTROL       "OK", IDOK, "Button", BS_DEFPUSHBUTTON | WS_TABSTOP | WS_GROUP | WS_VISIBLE, 232, 6, 66, 14
+    CONTROL       "Anuluj", IDCANCEL, "Button", BS_PUSHBUTTON | WS_TABSTOP | WS_VISIBLE, 232, 23, 66, 14
+    CONTROL       "&Pomoc", IDC_OLEUIHELP, "Button", BS_PUSHBUTTON | WS_TABSTOP | WS_VISIBLE, 232, 42, 66, 14
+    CONTROL       "W&yœwietlaj jako ikonê", IDC_PS_DISPLAYASICON, "Button", BS_AUTOCHECKBOX | WS_TABSTOP | WS_VISIBLE, 224, 59, 84, 14
+    CONTROL       "", IDC_PS_ICONDISPLAY, "Static", SS_ICON | WS_VISIBLE, 232, 75, 66, 44
+    CONTROL       "Zmieñ &ikonê...", IDC_PS_CHANGEICON, "Button", BS_PUSHBUTTON | WS_TABSTOP | WS_VISIBLE, 232, 123, 66, 14
+    CONTROL       "", IDC_PS_RESULTIMAGE, "Static", SS_ICON | WS_VISIBLE, 8, 101, 42, 34
+    CONTROL       "<< result text goes here >>", IDC_PS_RESULTTEXT, "Static", SS_NOPREFIX | WS_VISIBLE, 54, 100, 159, 35
+    CONTROL       "Wynik", -1, "Button", BS_GROUPBOX | WS_GROUP | WS_VISIBLE, 6, 90, 212, 48
+    CONTROL       "", IDC_PS_SOURCETEXT, "Edit", ES_READONLY | ES_AUTOHSCROLL | WS_VISIBLE, 37, 9, 180, 8
+END
+
+STRINGTABLE DISCARDABLE
+{
+    IDS_PS_PASTE_DATA                     "Wstawia zawartoϾ schowka do documentu jako %s."
+    IDS_PS_PASTE_OBJECT                   "Wstawia zawartoœæ schowka do dokumentu, tak aby móg³ byæ aktywowany za pomoc¹ %s."
+    IDS_PS_PASTE_OBJECT_AS_ICON           "Wstawia zawartoœæ schowka do dokumentu, tak aby móg³ byæ aktywowany za pomoc¹ %s.  Bêdzie wyœwietlany jako ikona."
+    IDS_PS_PASTE_LINK_DATA                "Wstawia zawartoœæ schowka do documentu jako %s.  Dane bêd¹ po³¹czone z plikiem Ÿród³owym, dziêki czemu zmiany w pliku bêd¹ odzwierciedlone w dokumencie."
+    IDS_PS_PASTE_LINK_OBJECT              "Wstawia zawartoœæ schowka do documentu jako obraz.  Obraz bêdzie po³¹czony z plikiem Ÿród³owym, dziêki czemu zmiany w pliku bêd¹ odzwierciedlone w dokumencie."
+    IDS_PS_PASTE_LINK_OBJECT_AS_ICON      "Wstawia do documentu skrót do zawartoœci schowka.  Skrót bêdzie po³¹czony z plikiem Ÿród³owym, dziêki czemu zmiany w pliku bêd¹ odzwierciedlone w dokumencie."
+    IDS_PS_NON_OLE                        "Wstawia zawartoϾ schowka do dokumentu"
+    IDS_PS_UNKNOWN_TYPE                   "Nieznany typ"
+    IDS_PS_UNKNOWN_SRC                    "Nieznane Ÿród³o"
+    IDS_PS_UNKNOWN_APP                    "program który go stworzy³"
+}

Propchange: trunk/reactos/dll/win32/oledlg/oledlg_Pl.rc
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: trunk/reactos/dll/win32/oledlg/oledlg_Pt.rc
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/oledlg/oledlg_Pt.rc?rev=26501&r1=26500&r2=26501&view=diff
==============================================================================
--- trunk/reactos/dll/win32/oledlg/oledlg_Pt.rc (original)
+++ trunk/reactos/dll/win32/oledlg/oledlg_Pt.rc Wed Apr 25 12:22:24 2007
@@ -1,5 +1,6 @@
 /*
  * Copyright 2004 Marcelo Duarte
+ * Copyright 2006 Américo José Melo
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -16,7 +17,7 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
  */
 
-LANGUAGE LANG_PORTUGUESE, SUBLANG_DEFAULT
+LANGUAGE LANG_PORTUGUESE, SUBLANG_PORTUGUESE_BRAZILIAN
 
 UIINSERTOBJECT DIALOG DISCARDABLE  0, 0, 294, 151
 STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
@@ -45,6 +46,38 @@
     EDITTEXT        IDC_FILE,83,37,132,13,ES_AUTOHSCROLL | NOT WS_VISIBLE
 END
 
+LANGUAGE LANG_PORTUGUESE, SUBLANG_PORTUGUESE
+
+UIINSERTOBJECT DIALOG DISCARDABLE  0, 0, 294, 151
+STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
+CAPTION "Inserir objecto"
+FONT 8, "MS Shell Dlg"
+BEGIN
+    LISTBOX         IDC_OBJTYPELIST,82,19,131,66,LBS_SORT |
+                    LBS_NOINTEGRALHEIGHT | WS_VISIBLE | WS_VSCROLL |
+                    WS_TABSTOP
+    LTEXT           "Tipo de objecto:",IDC_OBJTYPELBL,82,7,53,8,WS_VISIBLE
+    DEFPUSHBUTTON   "OK",IDOK,221,7,66,14
+    PUSHBUTTON      "Cancelar",IDCANCEL,221,24,66,14
+    GROUPBOX        "Resultado",IDC_RESULT,7,103,208,41
+    CONTROL         "Criar novo",IDC_CREATENEW,"Button",BS_AUTORADIOBUTTON |
+                    WS_GROUP,7,20,62,10
+    CONTROL         "Criar controlo",IDC_CREATECONTROL,"Button",
+                    BS_AUTORADIOBUTTON | NOT WS_VISIBLE,7,54,62,10
+    CONTROL         "Criar do ficheiro",IDC_CREATEFROMFILE,"Button",
+                    BS_AUTORADIOBUTTON,7,37,67,10
+    LTEXT           "",IDC_RESULTDESC,49,112,159,23
+    PUSHBUTTON      "&Adicionar Controlo...",IDC_ADDCONTROL,81,88,63,14,NOT WS_VISIBLE
+    CONTROL         "Mostrar como ícone",IDC_ASICON,"Button",BS_AUTOCHECKBOX |
+                    WS_TABSTOP | NOT WS_VISIBLE,223,58,64,10
+    PUSHBUTTON      "Procurar...",IDC_BROWSE,83,53,50,14,NOT WS_VISIBLE
+    LTEXT           "Ficheiro:",IDC_FILELBL,83,27,20,8, NOT WS_VISIBLE
+    EDITTEXT        IDC_FILE,83,37,132,13,ES_AUTOHSCROLL | NOT WS_VISIBLE
+END
+
+
+LANGUAGE LANG_PORTUGUESE, SUBLANG_PORTUGUESE_BRAZILIAN
+
 STRINGTABLE DISCARDABLE
 {
   IDS_RESULTOBJDESC	"Inserir um novo objeto %s no documento"
@@ -53,3 +86,14 @@
   IDS_NOTOLEMOD         "O arquivo não parece ser um módulo OLE válido. Impossível registrar o controle OLE."
   IDS_NOTOLEMODCAPTION  "Adicionar Controle"
 }
+
+LANGUAGE LANG_PORTUGUESE, SUBLANG_PORTUGUESE
+
+STRINGTABLE DISCARDABLE
+{
+  IDS_RESULTOBJDESC	"Inserir novo objecto %s no documento"
+  IDS_RESULTFILEOBJDESC	"Inserir conteúdo do ficheiro como um objecto no documento de modo que opossa activar usando o programa que o criou."
+  IDS_BROWSE            "Procurar"
+  IDS_NOTOLEMOD         "O ficheiro não parece ser um módulo OLE válido. Impossível registrar o controlo OLE."
+  IDS_NOTOLEMODCAPTION  "Adicionar Controlo"
+}

Modified: trunk/reactos/dll/win32/oledlg/oledlg_main.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/oledlg/oledlg_main.c?rev=26501&r1=26500&r2=26501&view=diff
==============================================================================
--- trunk/reactos/dll/win32/oledlg/oledlg_main.c (original)
+++ trunk/reactos/dll/win32/oledlg/oledlg_main.c Wed Apr 25 12:22:24 2007
@@ -18,7 +18,6 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
  */
 
-#define COM_NO_WINDOWS_H
 #include <stdarg.h>
 
 #include "windef.h"
@@ -27,24 +26,69 @@
 #include "wingdi.h"
 #include "winuser.h"
 #include "oledlg.h"
+#include "ole2.h"
+#include "oledlg_private.h"
+
 #include "wine/debug.h"
-#include "ole2.h"
 
 WINE_DEFAULT_DEBUG_CHANNEL(ole);
 
 HINSTANCE OLEDLG_hInstance = 0;
 
+UINT cf_embed_source;
+UINT cf_embedded_object;
+UINT cf_link_source;
+UINT cf_object_descriptor;
+UINT cf_link_src_descriptor;
+UINT cf_ownerlink;
+UINT cf_filename;
+UINT cf_filenamew;
+
+UINT oleui_msg_help;
+UINT oleui_msg_enddialog;
+
+static void register_clipboard_formats(void)
+{
+    /* These used to be declared in olestd.h, but that seems to have been removed from the api */
+    static const WCHAR CF_EMBEDSOURCEW[]          = { 'E','m','b','e','d',' ','S','o','u','r','c','e',0 };
+    static const WCHAR CF_EMBEDDEDOBJECTW[]       = { 'E','m','b','e','d','d','e','d',' ','O','b','j','e','c','t',0 };
+    static const WCHAR CF_LINKSOURCEW[]           = { 'L','i','n','k',' ','S','o','u','r','c','e',0 };
+    static const WCHAR CF_OBJECTDESCRIPTORW[]     = { 'O','b','j','e','c','t',' ','D','e','s','c','r','i','p','t','o','r',0 };
+    static const WCHAR CF_LINKSRCDESCRIPTORW[]    = { 'L','i','n','k',' ','S','o','u','r','c','e',' ','D','e','s','c','r','i','p','t','o','r',0 };
+    static const WCHAR CF_OWNERLINKW[]            = { 'O','w','n','e','r','L','i','n','k',0 };
+    static const WCHAR CF_FILENAMEW[]             = { 'F','i','l','e','N','a','m','e',0 };
+    static const WCHAR CF_FILENAMEWW[]            = { 'F','i','l','e','N','a','m','e','W',0 };
+
+    /* Load in the same order as native to make debugging easier */
+    cf_object_descriptor    = RegisterClipboardFormatW(CF_OBJECTDESCRIPTORW);
+    cf_link_src_descriptor  = RegisterClipboardFormatW(CF_LINKSRCDESCRIPTORW);
+    cf_embed_source         = RegisterClipboardFormatW(CF_EMBEDSOURCEW);
+    cf_embedded_object      = RegisterClipboardFormatW(CF_EMBEDDEDOBJECTW);
+    cf_link_source          = RegisterClipboardFormatW(CF_LINKSOURCEW);
+    cf_ownerlink            = RegisterClipboardFormatW(CF_OWNERLINKW);
+    cf_filename             = RegisterClipboardFormatW(CF_FILENAMEW);
+    cf_filenamew            = RegisterClipboardFormatW(CF_FILENAMEWW);
+}
+
+static void register_messages(void)
+{
+    oleui_msg_help             = RegisterWindowMessageW(SZOLEUI_MSG_HELPW);
+    oleui_msg_enddialog        = RegisterWindowMessageW(SZOLEUI_MSG_ENDDIALOGW);
+}
+
 /***********************************************************************
  *		DllMain
  */
 BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID fImpLoad)
 {
-    TRACE("%p 0x%lx %p\n", hinstDLL, fdwReason, fImpLoad);
+    TRACE("%p 0x%x %p\n", hinstDLL, fdwReason, fImpLoad);
 
     switch(fdwReason) {
     case DLL_PROCESS_ATTACH:
         DisableThreadLibraryCalls(hinstDLL);
         OLEDLG_hInstance = hinstDLL;
+        register_clipboard_formats();
+        register_messages();
         break;
 
     case DLL_PROCESS_DETACH:
@@ -113,26 +157,6 @@
 }
 
 /***********************************************************************
- *           OleUIPasteSpecialA (OLEDLG.4)
- */
-UINT WINAPI OleUIPasteSpecialA(LPOLEUIPASTESPECIALA lpOleUIPasteSpecial)
-{
-  FIXME("(%p): stub\n", lpOleUIPasteSpecial);
-  SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
-  return OLEUI_FALSE;
-}
-
-/***********************************************************************
- *           OleUIPasteSpecialW (OLEDLG.22)
- */
-UINT WINAPI OleUIPasteSpecialW(LPOLEUIPASTESPECIALW lpOleUIPasteSpecial)
-{
-  FIXME("(%p): stub\n", lpOleUIPasteSpecial);
-  SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
-  return OLEUI_FALSE;
-}
-
-/***********************************************************************
  *           OleUIEditLinksA (OLEDLG.5)
  */
 UINT WINAPI OleUIEditLinksA(LPOLEUIEDITLINKSA lpOleUIEditLinks)

Added: trunk/reactos/dll/win32/oledlg/oledlg_private.h
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/oledlg/oledlg_private.h?rev=26501&view=auto
==============================================================================
--- trunk/reactos/dll/win32/oledlg/oledlg_private.h (added)
+++ trunk/reactos/dll/win32/oledlg/oledlg_private.h Wed Apr 25 12:22:24 2007
@@ -1,0 +1,38 @@
+/*
+ * oledlg internal header file
+ *
+ * Copyright (C) 2006 Huw Davies
+ *
+ * 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
+ */
+
+#ifndef __OLEDLG_PRIVATE_H__
+#define __OLEDLG_PRIVATE_H__
+
+extern HINSTANCE OLEDLG_hInstance;
+
+extern UINT cf_embed_source;
+extern UINT cf_embedded_object;
+extern UINT cf_link_source;
+extern UINT cf_object_descriptor;
+extern UINT cf_link_src_descriptor;
+extern UINT cf_ownerlink;
+extern UINT cf_filename;
+extern UINT cf_filenamew;
+
+extern UINT oleui_msg_help;
+extern UINT oleui_msg_enddialog;
+
+#endif /* __OLEDLG_PRIVATE_H__ */

Propchange: trunk/reactos/dll/win32/oledlg/oledlg_private.h
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: trunk/reactos/dll/win32/oledlg/oledlg_ros.diff
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/oledlg/oledlg_ros.diff?rev=26501&r1=26500&r2=26501&view=diff
==============================================================================
--- trunk/reactos/dll/win32/oledlg/oledlg_ros.diff (original)
+++ trunk/reactos/dll/win32/oledlg/oledlg_ros.diff Wed Apr 25 12:22:24 2007
@@ -58,8 +58,8 @@
 ===================================================================
 --- rsrc.rc	(revision 25690)
 +++ rsrc.rc	(revision working copy)
-@@ -44,3 +44,4 @@
- #include "oledlg_No.rc"
+@@ -47,3 +47,4 @@
+ #include "oledlg_Pl.rc"
  #include "oledlg_Pt.rc"
  #include "oledlg_Tr.rc"
 +#include "oledlg_Uk.rc"

Added: trunk/reactos/dll/win32/oledlg/pastespl.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/oledlg/pastespl.c?rev=26501&view=auto
==============================================================================
--- trunk/reactos/dll/win32/oledlg/pastespl.c (added)
+++ trunk/reactos/dll/win32/oledlg/pastespl.c Wed Apr 25 12:22:24 2007
@@ -1,0 +1,722 @@
+/*
+ * OleUIPasteSpecial implementation
+ *
+ * Copyright 2006 Huw Davies
+ *
+ * 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
+#define NONAMELESSSTRUCT
+#define NONAMELESSUNION
+
+#include <stdarg.h>
+
+#include "windef.h"
+#include "winbase.h"
+#include "winerror.h"
+#include "wingdi.h"
+#include "winuser.h"
+#include "winnls.h"
+#include "oledlg.h"
+
+#include "oledlg_private.h"
+#include "resource.h"
+
+#include "wine/debug.h"
+#include "wine/unicode.h"
+
+WINE_DEFAULT_DEBUG_CHANNEL(ole);
+
+typedef struct
+{
+    OLEUIPASTESPECIALW *ps;
+    DWORD flags;
+    WCHAR *source_name;
+    WCHAR *link_source_name;
+    WCHAR *type_name;
+    WCHAR *link_type_name;
+    LPOLESTR app_name;
+} ps_struct_t;
+
+static const struct ps_flag
+{
+    DWORD flag;
+    const char *name;
+} ps_flags[] = {
+#define PS_FLAG_ENTRY(p) {p, #p}
+    PS_FLAG_ENTRY(PSF_SHOWHELP),
+    PS_FLAG_ENTRY(PSF_SELECTPASTE),
+    PS_FLAG_ENTRY(PSF_SELECTPASTELINK),
+    PS_FLAG_ENTRY(PSF_CHECKDISPLAYASICON),
+    PS_FLAG_ENTRY(PSF_DISABLEDISPLAYASICON),
+    PS_FLAG_ENTRY(PSF_HIDECHANGEICON),
+    PS_FLAG_ENTRY(PSF_STAYONCLIPBOARDCHANGE),
+    PS_FLAG_ENTRY(PSF_NOREFRESHDATAOBJECT),
+    {-1, NULL}
+#undef PS_FLAG_ENTRY
+};
+
+static void dump_ps_flags(DWORD flags)
+{
+    char flagstr[1000] = "";
+
+    const struct ps_flag *flag = ps_flags;
+    for( ; flag->name; flag++) {
+        if(flags & flag->flag) {
+            strcat(flagstr, flag->name);
+            strcat(flagstr, "|");
+        }
+    }
+    TRACE("flags %08x %s\n", flags, flagstr);
+}
+
+static void dump_pastespecial(LPOLEUIPASTESPECIALW ps)
+{
+    UINT i;
+    dump_ps_flags(ps->dwFlags);
+    TRACE("hwnd %p caption %s hook %p custdata %lx\n",
+          ps->hWndOwner, debugstr_w(ps->lpszCaption), ps->lpfnHook, ps->lCustData);
+    if(IS_INTRESOURCE(ps->lpszTemplate))
+        TRACE("hinst %p template %04x hresource %p\n", ps->hInstance, (WORD)(ULONG_PTR)ps->lpszTemplate, ps->hResource);
+    else
+        TRACE("hinst %p template %s hresource %p\n", ps->hInstance, debugstr_w(ps->lpszTemplate), ps->hResource);
+    TRACE("dataobj %p arrpasteent %p cpasteent %d arrlinktype %p clinktype %d\n",
+          ps->lpSrcDataObj, ps->arrPasteEntries, ps->cPasteEntries,
+          ps->arrLinkTypes, ps->cLinkTypes);
+    TRACE("cclsidex %d lpclsidex %p nselect %d flink %d hmetapict %p size(%d,%d)\n",
+          ps->cClsidExclude, ps->lpClsidExclude, ps->nSelectedIndex, ps->fLink,
+          ps->hMetaPict, ps->sizel.cx, ps->sizel.cy);
+    for(i = 0; i < ps->cPasteEntries; i++)
+    {
+        TRACE("arrPasteEntries[%d]: cFormat %08x pTargetDevice %p dwAspect %d lindex %d tymed %d\n",
+              i, ps->arrPasteEntries[i].fmtetc.cfFormat, ps->arrPasteEntries[i].fmtetc.ptd,
+              ps->arrPasteEntries[i].fmtetc.dwAspect, ps->arrPasteEntries[i].fmtetc.lindex,
+              ps->arrPasteEntries[i].fmtetc.tymed);
+        TRACE("\tformat name %s result text %s flags %04x\n", debugstr_w(ps->arrPasteEntries[i].lpstrFormatName),
+              debugstr_w(ps->arrPasteEntries[i].lpstrResultText), ps->arrPasteEntries[i].dwFlags);
+    }
+    for(i = 0; i < ps->cLinkTypes; i++)
+        TRACE("arrLinkTypes[%d] %08x\n", i, ps->arrLinkTypes[i]);
+    for(i = 0; i < ps->cClsidExclude; i++)
+        TRACE("lpClsidExclude[%d] %s\n", i, debugstr_guid(&ps->lpClsidExclude[i]));
+
+}
+
+static inline WCHAR *strdupAtoW(const char *str)
+{
+    DWORD len;
+    WCHAR *ret;
+    if(!str) return NULL;
+    len = MultiByteToWideChar(CP_ACP, 0, str, -1, NULL, 0);
+    ret = HeapAlloc(GetProcessHeap(), 0, len * sizeof(WCHAR));
+    MultiByteToWideChar(CP_ACP, 0, str, -1, ret, len);
+    return ret;
+}
+
+static inline WCHAR *strdupW(const WCHAR *str)
+{
+    DWORD len;
+    WCHAR *ret;
+    if(!str) return NULL;
+    len = lstrlenW(str) + 1;
+    ret = HeapAlloc(GetProcessHeap(), 0, len * sizeof(WCHAR));
+    memcpy(ret, str, len * sizeof(WCHAR));
+    return ret;
+}
+
+static void get_descriptors(HWND hdlg, ps_struct_t *ps_struct)
+{
+    FORMATETC fmtetc;
+    STGMEDIUM stg;
+
+    fmtetc.tymed = TYMED_HGLOBAL;
+    fmtetc.dwAspect = DVASPECT_CONTENT;
+    fmtetc.ptd = NULL;
+    fmtetc.lindex = -1;
+
+    fmtetc.cfFormat = cf_object_descriptor;
+    if(IDataObject_GetData(ps_struct->ps->lpSrcDataObj, &fmtetc, &stg) == S_OK)
+    {
+        OBJECTDESCRIPTOR *obj_desc = GlobalLock(stg.u.hGlobal);
+        if(obj_desc->dwSrcOfCopy)
+            ps_struct->source_name = strdupW((WCHAR*)((char*)obj_desc + obj_desc->dwSrcOfCopy));
+        if(obj_desc->dwFullUserTypeName)
+            ps_struct->type_name = strdupW((WCHAR*)((char*)obj_desc + obj_desc->dwFullUserTypeName));
+        OleRegGetUserType(&obj_desc->clsid, USERCLASSTYPE_APPNAME, &ps_struct->app_name);
+        /* Get the icon here.  If dwDrawAspect & DVASCPECT_ICON call GetData(CF_METAFILEPICT), otherwise
+           native calls OleGetIconFromClass(obj_desc->clsid) */
+        GlobalUnlock(stg.u.hGlobal);
+        GlobalFree(stg.u.hGlobal);
+    }
+    else
+    {
+        /* Try to get some data using some of the other clipboard formats */
+    }
+
+    fmtetc.cfFormat = cf_link_src_descriptor;
+    if(IDataObject_GetData(ps_struct->ps->lpSrcDataObj, &fmtetc, &stg) == S_OK)
+    {
+        OBJECTDESCRIPTOR *obj_desc = GlobalLock(stg.u.hGlobal);
+        if(obj_desc->dwSrcOfCopy)
+            ps_struct->link_source_name = strdupW((WCHAR*)((char*)obj_desc + obj_desc->dwSrcOfCopy));
+        if(obj_desc->dwFullUserTypeName)
+            ps_struct->link_type_name = strdupW((WCHAR*)((char*)obj_desc + obj_desc->dwFullUserTypeName));
+        GlobalUnlock(stg.u.hGlobal);
+        GlobalFree(stg.u.hGlobal);
+    }
+
+    if(ps_struct->source_name == NULL && ps_struct->link_source_name == NULL)
+    {
+        WCHAR buf[200];
+        LoadStringW(OLEDLG_hInstance, IDS_PS_UNKNOWN_SRC, buf, sizeof(buf)/sizeof(WCHAR));
+        ps_struct->source_name = strdupW(buf);
+    }
+
+    if(ps_struct->type_name == NULL && ps_struct->link_type_name == NULL)
+    {
+        WCHAR buf[200];
+        LoadStringW(OLEDLG_hInstance, IDS_PS_UNKNOWN_TYPE, buf, sizeof(buf)/sizeof(WCHAR));
+        ps_struct->type_name = strdupW(buf);
+    }
+}
+
+static BOOL add_entry_to_lb(HWND hdlg, UINT id, OLEUIPASTEENTRYW *pe)
+{
+    HWND hwnd = GetDlgItem(hdlg, id);
+    BOOL ret = FALSE;
+
+    /* FIXME %s handling */
+
+    /* Note that this suffers from the same bug as native, in that if a new string
+       is a substring of an already added string, then the FINDSTRING will succeed
+       this is probably not what we want */
+    if(SendMessageW(hwnd, LB_FINDSTRING, 0, (LPARAM)pe->lpstrFormatName) == -1)
+    {
+        LRESULT pos = SendMessageW(hwnd, LB_ADDSTRING, 0, (LPARAM)pe->lpstrFormatName);
+        SendMessageW(hwnd, LB_SETITEMDATA, pos, (LPARAM)pe);
+        ret = TRUE;
+    }
+    return ret;
+}
+
+static DWORD init_pastelist(HWND hdlg, OLEUIPASTESPECIALW *ps)
+{
+    IEnumFORMATETC *penum;
+    HRESULT hr;
+    FORMATETC fmts[20];
+    DWORD fetched, items_added = 0;
+
+    hr = IDataObject_EnumFormatEtc(ps->lpSrcDataObj, DATADIR_GET, &penum);
+    if(FAILED(hr))
+    {
+        WARN("Unable to create IEnumFORMATETC\n");
+        return 0;
+    }
+
+    /* The native version grabs only the first 20 fmts and we do the same */
+    hr = IEnumFORMATETC_Next(penum, sizeof(fmts)/sizeof(fmts[0]), fmts, &fetched);
+    TRACE("got %d formats hr %08x\n", fetched, hr);
+
+    if(SUCCEEDED(hr))
+    {
+        DWORD src_fmt, req_fmt;
+        for(req_fmt = 0; req_fmt < ps->cPasteEntries; req_fmt++)
+        {
+            /* This is used by update_structure() to set nSelectedIndex on exit */
+            ps->arrPasteEntries[req_fmt].dwScratchSpace = req_fmt;
+            TRACE("req_fmt %x\n", ps->arrPasteEntries[req_fmt].fmtetc.cfFormat);
+            for(src_fmt = 0; src_fmt < fetched; src_fmt++)
+            {
+                TRACE("\tenum'ed fmt %x\n", fmts[src_fmt].cfFormat);
+                if(ps->arrPasteEntries[req_fmt].fmtetc.cfFormat == fmts[src_fmt].cfFormat)
+                {
+                    add_entry_to_lb(hdlg, IDC_PS_PASTELIST, ps->arrPasteEntries + req_fmt);
+                    items_added++;
+                    break;
+                }
+            }
+        }
+    }
+
+    IEnumFORMATETC_Release(penum);
+    EnableWindow(GetDlgItem(hdlg, IDC_PS_PASTE), items_added ? TRUE : FALSE);
+    return items_added;
+}
+
+static DWORD init_linklist(HWND hdlg, OLEUIPASTESPECIALW *ps)
+{
+    HRESULT hr;
+    DWORD supported_mask = 0;
+    DWORD items_added = 0;
+    int link, req_fmt;
+    FORMATETC fmt = {0, NULL, DVASPECT_CONTENT, -1, -1};
+
+    for(link = 0; link < ps->cLinkTypes && link < PS_MAXLINKTYPES; link++)
+    {
+        fmt.cfFormat = ps->arrLinkTypes[link];
+        hr = IDataObject_QueryGetData(ps->lpSrcDataObj, &fmt);
+        if(hr == S_OK)
+            supported_mask |= 1 << link;
+    }
+    TRACE("supported_mask %02x\n", supported_mask);
+    for(req_fmt = 0; req_fmt < ps->cPasteEntries; req_fmt++)
+    {
+        DWORD linktypes;
+        if(ps->arrPasteEntries[req_fmt].dwFlags & OLEUIPASTE_LINKANYTYPE)
+            linktypes = 0xff;
+        else
+            linktypes = ps->arrPasteEntries[req_fmt].dwFlags & 0xff;
+
+        if(linktypes & supported_mask)
+        {
+            add_entry_to_lb(hdlg, IDC_PS_PASTELINKLIST, ps->arrPasteEntries + req_fmt);
+            items_added++;
+        }
+    }
+
+    EnableWindow(GetDlgItem(hdlg, IDC_PS_PASTELINK), items_added ? TRUE : FALSE);
+    return items_added;
+}
+
+/* copies src_list_id into the display list */
+static void update_display_list(HWND hdlg, UINT src_list_id)
+{
+    LONG count, i, old_pos;
+    WCHAR txt[256];
+    LONG item_data;
+    HWND display_list = GetDlgItem(hdlg, IDC_PS_DISPLAYLIST);
+    HWND list = GetDlgItem(hdlg, src_list_id);
+
+    old_pos = SendMessageW(display_list, LB_GETCURSEL, 0, 0);
+    if(old_pos == -1) old_pos = 0;
+
+    SendMessageW(display_list, WM_SETREDRAW, 0, 0);
+    SendMessageW(display_list, LB_RESETCONTENT, 0, 0);
+    count = SendMessageW(list, LB_GETCOUNT, 0, 0);
+    for(i = 0; i < count; i++)
+    {
+        SendMessageW(list, LB_GETTEXT, i, (LPARAM)txt);
+        item_data = SendMessageW(list, LB_GETITEMDATA, i, 0);
+        SendMessageW(display_list, LB_INSERTSTRING, i, (LPARAM)txt);
+        SendMessageW(display_list, LB_SETITEMDATA, i, item_data);
+    }
+    old_pos = max(old_pos, count);
+    SendMessageW(display_list, LB_SETCURSEL, 0, 0);
+    SendMessageW(display_list, WM_SETREDRAW, 1, 0);
+    if(GetForegroundWindow() == hdlg)
+        SetFocus(display_list);
+}
+
+static void init_lists(HWND hdlg, ps_struct_t *ps_struct)
+{
+    DWORD pastes_added = init_pastelist(hdlg, ps_struct->ps);
+    DWORD links_added = init_linklist(hdlg, ps_struct->ps);
+    UINT check_id, list_id;
+
+    if((ps_struct->flags & (PSF_SELECTPASTE | PSF_SELECTPASTELINK)) == 0)
+        ps_struct->flags |= PSF_SELECTPASTE;
+
+    if(!pastes_added && !links_added)
+        ps_struct->flags &= ~(PSF_SELECTPASTE | PSF_SELECTPASTELINK);
+    else if(!pastes_added && (ps_struct->flags & PSF_SELECTPASTE))
+    {
+        ps_struct->flags &= ~PSF_SELECTPASTE;
+        ps_struct->flags |= PSF_SELECTPASTELINK;
+    }
+    else if(!links_added && (ps_struct->flags & PSF_SELECTPASTELINK))
+    {
+        ps_struct->flags &= ~PSF_SELECTPASTELINK;
+        ps_struct->flags |= PSF_SELECTPASTE;
+    }
+
+    check_id = 0;
+    list_id = 0;
+    if(ps_struct->flags & PSF_SELECTPASTE)
+    {
+        check_id = IDC_PS_PASTE;
+        list_id = IDC_PS_PASTELIST;
+    }
+    else if(ps_struct->flags & PSF_SELECTPASTELINK)
+    {
+        check_id = IDC_PS_PASTELINK;
+        list_id = IDC_PS_PASTELINKLIST;
+    }
+
+    CheckRadioButton(hdlg, IDC_PS_PASTE, IDC_PS_PASTELINK, check_id);
+
+    if(list_id)
+        update_display_list(hdlg, list_id);
+    else
+        EnableWindow(GetDlgItem(hdlg, IDOK), 0);
+}
+
+static void update_src_text(HWND hdlg, ps_struct_t *ps_struct)
+{
+    WCHAR *str;
+
+    if(ps_struct->flags & PSF_SELECTPASTE)
+    {
+        if(ps_struct->source_name)
+            str = ps_struct->source_name;
+        else
+            str = ps_struct->link_source_name;
+
+    }
+    else
+    {
+        if(ps_struct->link_source_name)
+            str = ps_struct->link_source_name;
+        else
+            str = ps_struct->source_name;
+
+    }
+    SetDlgItemTextW(hdlg, IDC_PS_SOURCETEXT, str);
+}
+
+static void update_as_icon(HWND hdlg, ps_struct_t *ps_struct)
+{
+    HWND icon_display = GetDlgItem(hdlg, IDC_PS_ICONDISPLAY);
+    HWND display_as_icon = GetDlgItem(hdlg, IDC_PS_DISPLAYASICON);
+    HWND change_icon = GetDlgItem(hdlg, IDC_PS_CHANGEICON);
+
+    /* FIXME. No as icon handling */
+    ps_struct->flags &= ~PSF_CHECKDISPLAYASICON;
+
+    CheckDlgButton(hdlg, IDC_PS_DISPLAYASICON, ps_struct->flags & PSF_CHECKDISPLAYASICON);
+    EnableWindow(display_as_icon, 0);
+    ShowWindow(icon_display, SW_HIDE);
+    EnableWindow(icon_display, 0);
+    ShowWindow(change_icon, SW_HIDE);
+    EnableWindow(change_icon, 0);
+}
+
+static void update_result_text(HWND hdlg, ps_struct_t *ps_struct)
+{
+    WCHAR resource_txt[200];
+    UINT res_id;
+    OLEUIPASTEENTRYW *pent;
+    LONG cur_sel;
+    static const WCHAR percent_s[] = {'%','s',0};
+    WCHAR *result_txt, *ptr;
+
+    cur_sel = SendMessageW(GetDlgItem(hdlg, IDC_PS_DISPLAYLIST), LB_GETCURSEL, 0, 0);
+    if(cur_sel == -1) return;
+    pent = (OLEUIPASTEENTRYW*)SendMessageW(GetDlgItem(hdlg, IDC_PS_DISPLAYLIST), LB_GETITEMDATA, cur_sel, 0);
+
+    if(ps_struct->flags & PSF_SELECTPASTE)
+    {
+        if(ps_struct->flags & PSF_CHECKDISPLAYASICON)
+            res_id = IDS_PS_PASTE_OBJECT_AS_ICON;
+        else
+            res_id = IDS_PS_PASTE_DATA;
+    }
+    else
+    {
+        if(ps_struct->flags & PSF_CHECKDISPLAYASICON)
+            res_id = IDS_PS_PASTE_LINK_OBJECT_AS_ICON;
+        else
+            res_id = IDS_PS_PASTE_LINK_DATA;
+    }
+
+    LoadStringW(OLEDLG_hInstance, res_id, resource_txt, sizeof(resource_txt)/sizeof(WCHAR));
+    if((ptr = strstrW(resource_txt, percent_s)))
+    {
+        /* FIXME handle %s in ResultText. Sub appname if IDS_PS_PASTE_OBJECT{_AS_ICON}.  Else sub appropiate type name */
+        size_t result_txt_len = strlenW(pent->lpstrResultText);
+        ptrdiff_t offs = (char*)ptr - (char*)resource_txt;
+        result_txt = HeapAlloc(GetProcessHeap(), 0, (strlenW(resource_txt) + result_txt_len - 1) * sizeof(WCHAR));
+        memcpy(result_txt, resource_txt, offs);
+        memcpy((char*)result_txt + offs, pent->lpstrResultText, result_txt_len * sizeof(WCHAR));
+        memcpy((char*)result_txt + offs + result_txt_len * sizeof(WCHAR), ptr + 2, (strlenW(ptr + 2) + 1) * sizeof(WCHAR));
+    }
+    else
+        result_txt = resource_txt;
+
+    SetDlgItemTextW(hdlg, IDC_PS_RESULTTEXT, result_txt);
+
+    if(result_txt != resource_txt)
+        HeapFree(GetProcessHeap(), 0, result_txt);
+
+}
+
+static void selection_change(HWND hdlg, ps_struct_t *ps_struct)
+{
+    update_as_icon(hdlg, ps_struct);
+    update_result_text(hdlg, ps_struct);
+}
+
+static void mode_change(HWND hdlg, ps_struct_t *ps_struct, UINT id)
+{
+    if(id == IDC_PS_PASTE)
+    {
+        ps_struct->flags &= ~PSF_SELECTPASTELINK;
+        ps_struct->flags |= PSF_SELECTPASTE;
+    }
+    else
+    {
+        ps_struct->flags &= ~PSF_SELECTPASTE;
+        ps_struct->flags |= PSF_SELECTPASTELINK;
+    }
+
+    update_src_text(hdlg, ps_struct);
+    update_display_list(hdlg, id == IDC_PS_PASTE ? IDC_PS_PASTELIST : IDC_PS_PASTELINKLIST);
+    selection_change(hdlg, ps_struct);
+}
+
+static void post_help_msg(HWND hdlg, ps_struct_t *ps_struct)
+{
+    PostMessageW(ps_struct->ps->hWndOwner, oleui_msg_help, (WPARAM)hdlg, IDD_PASTESPECIAL);
+}
+
+static void send_end_dialog_msg(HWND hdlg, ps_struct_t *ps_struct, UINT id)
+{
+    SendMessageW(hdlg, oleui_msg_enddialog, id, 0);
+}
+
+static void update_structure(HWND hdlg, ps_struct_t *ps_struct)
+{
+    LONG cur_sel = SendMessageW(GetDlgItem(hdlg, IDC_PS_DISPLAYLIST), LB_GETCURSEL, 0, 0);
+    if(cur_sel != -1)
+    {
+        OLEUIPASTEENTRYW *pent;
+        pent = (OLEUIPASTEENTRYW *)SendMessageW(GetDlgItem(hdlg, IDC_PS_DISPLAYLIST), LB_GETITEMDATA, cur_sel, 0);
+        ps_struct->ps->nSelectedIndex = pent->dwScratchSpace;
+    }
+    ps_struct->ps->dwFlags = ps_struct->flags;
+    ps_struct->ps->fLink = (ps_struct->flags & PSF_SELECTPASTELINK) ? TRUE : FALSE;
+}
+
+static void free_structure(ps_struct_t *ps_struct)
+{
+    HeapFree(GetProcessHeap(), 0, ps_struct->type_name);
+    HeapFree(GetProcessHeap(), 0, ps_struct->source_name);
+    HeapFree(GetProcessHeap(), 0, ps_struct->link_type_name);
+    HeapFree(GetProcessHeap(), 0, ps_struct->link_source_name);
+    CoTaskMemFree(ps_struct->app_name);
+    HeapFree(GetProcessHeap(), 0, ps_struct);
+}
+
+static INT_PTR CALLBACK ps_dlg_proc(HWND hdlg, UINT msg, WPARAM wp, LPARAM lp)
+{
+    /* native uses prop name "Structure", but we're not compatible
+       with that so we'll prepend "Wine_". */
+    static const WCHAR prop_name[] = {'W','i','n','e','_','S','t','r','u','c','t','u','r','e',0};
+    ps_struct_t *ps_struct;
+
+    TRACE("(%p, %04x, %08x, %08lx)\n", hdlg, msg, wp, lp);
+
+    ps_struct = GetPropW(hdlg, prop_name);
+
+    if(msg != WM_INITDIALOG)
+    {
+        if(!ps_struct)
+            return 0;
+
+        if(ps_struct->ps->lpfnHook)
+        {
+            INT_PTR ret = ps_struct->ps->lpfnHook(hdlg, msg, wp, lp);
+            if(ret) return ret;
+        }
+    }
+
+    switch(msg)
+    {
+    case WM_INITDIALOG:
+    {
+        ps_struct = HeapAlloc(GetProcessHeap(), 0, sizeof(*ps_struct));
+        ps_struct->ps = (OLEUIPASTESPECIALW*)lp;
+        ps_struct->type_name = NULL;
+        ps_struct->source_name = NULL;
+        ps_struct->link_type_name = NULL;
+        ps_struct->link_source_name = NULL;
+        ps_struct->app_name = NULL;
+        ps_struct->flags = ps_struct->ps->dwFlags;
+
+        SetPropW(hdlg, prop_name, ps_struct);
+
+        if(!(ps_struct->ps->dwFlags & PSF_SHOWHELP))
+        {
+            ShowWindow(GetDlgItem(hdlg, IDC_OLEUIHELP), SW_HIDE);
+            EnableWindow(GetDlgItem(hdlg, IDC_OLEUIHELP), 0);
+        }
+
+        if(ps_struct->ps->lpszCaption)
+            SetWindowTextW(hdlg, ps_struct->ps->lpszCaption);
+
+        get_descriptors(hdlg, ps_struct);
+
+        init_lists(hdlg, ps_struct);
+
+        update_src_text(hdlg, ps_struct);
+
+        selection_change(hdlg, ps_struct);
+
+        SetFocus(GetDlgItem(hdlg, IDC_PS_DISPLAYLIST));
+
+        if(ps_struct->ps->lpfnHook)
+            ps_struct->ps->lpfnHook(hdlg, msg, 0, 0);
+        return FALSE; /* use new focus */
+    }
+    case WM_COMMAND:
+        switch(LOWORD(wp))
+        {
+        case IDC_PS_DISPLAYLIST:
+            switch(HIWORD(wp))
+            {
+            case LBN_SELCHANGE:
+                selection_change(hdlg, ps_struct);
+                return FALSE;
+            default:
+                return FALSE;
+            }
+        case IDC_PS_PASTE:
+        case IDC_PS_PASTELINK:
+            switch(HIWORD(wp))
+            {
+            case BN_CLICKED:
+                mode_change(hdlg, ps_struct, LOWORD(wp));
+                return FALSE;
+
+            default:
+                return FALSE;
+            }
+        case IDC_OLEUIHELP:
+            switch(HIWORD(wp))
+            {
+            case BN_CLICKED:
+                post_help_msg(hdlg, ps_struct);
+                return FALSE;
+            default:
+                return FALSE;
+            }
+        case IDOK:
+        case IDCANCEL:
+            switch(HIWORD(wp))
+            {
+            case BN_CLICKED:
+                send_end_dialog_msg(hdlg, ps_struct, LOWORD(wp));
+                return FALSE;
+            default:
+                return FALSE;
+            }
+        }
+        return FALSE;
+    default:
+        if(msg == oleui_msg_enddialog)
+        {
+            if(wp == IDOK)
+                update_structure(hdlg, ps_struct);
+            EndDialog(hdlg, wp);
+            /* native does its cleanup in WM_DESTROY */
+            RemovePropW(hdlg, prop_name);
+            free_structure(ps_struct);
+            return TRUE;
+        }
+        return FALSE;
+    }
+
+}
+
+/***********************************************************************
+ *           OleUIPasteSpecialA (OLEDLG.4)
+ */
+UINT WINAPI OleUIPasteSpecialA(LPOLEUIPASTESPECIALA psA)
+{
+    OLEUIPASTESPECIALW ps;
+    UINT ret;
+    TRACE("(%p)\n", psA);
+
+    memcpy(&ps, psA, psA->cbStruct);
+
+    ps.lpszCaption = strdupAtoW(psA->lpszCaption);
+    if(!IS_INTRESOURCE(ps.lpszTemplate))
+        ps.lpszTemplate = strdupAtoW(psA->lpszTemplate);
+
+    if(psA->cPasteEntries > 0)
+    {
+        DWORD size = psA->cPasteEntries * sizeof(ps.arrPasteEntries[0]);
+        UINT i;
+
+        ps.arrPasteEntries = HeapAlloc(GetProcessHeap(), 0, size);
+        memcpy(ps.arrPasteEntries, psA->arrPasteEntries, size);
+        for(i = 0; i < psA->cPasteEntries; i++)
+        {
+            ps.arrPasteEntries[i].lpstrFormatName =
+                strdupAtoW(psA->arrPasteEntries[i].lpstrFormatName);
+            ps.arrPasteEntries[i].lpstrResultText =
+                strdupAtoW(psA->arrPasteEntries[i].lpstrResultText);
+        }
+    }
+
+    ret = OleUIPasteSpecialW(&ps);
+
+    if(psA->cPasteEntries > 0)
+    {
+        UINT i;
+        for(i = 0; i < psA->cPasteEntries; i++)
+        {
+            HeapFree(GetProcessHeap(), 0, (WCHAR*)ps.arrPasteEntries[i].lpstrFormatName);
+            HeapFree(GetProcessHeap(), 0, (WCHAR*)ps.arrPasteEntries[i].lpstrResultText);
+        }
+        HeapFree(GetProcessHeap(), 0, ps.arrPasteEntries);
+    }
+    if(!IS_INTRESOURCE(ps.lpszTemplate))
+        HeapFree(GetProcessHeap(), 0, (WCHAR*)ps.lpszTemplate);
+    HeapFree(GetProcessHeap(), 0, (WCHAR*)ps.lpszCaption);
+
+    /* Copy back the output fields */
+    psA->dwFlags = ps.dwFlags;
+    psA->lpSrcDataObj = ps.lpSrcDataObj;
+    psA->nSelectedIndex = ps.nSelectedIndex;
+    psA->fLink = ps.fLink;
+    psA->hMetaPict = ps.hMetaPict;
+    psA->sizel = ps.sizel;
+
+    return ret;
+}
+
+/***********************************************************************
+ *           OleUIPasteSpecialW (OLEDLG.22)
+ */
+UINT WINAPI OleUIPasteSpecialW(LPOLEUIPASTESPECIALW ps)
+{
+    LPCDLGTEMPLATEW dlg_templ = (LPCDLGTEMPLATEW)ps->hResource;
+    UINT ret;
+
+    TRACE("(%p)\n", ps);
+
+    if(TRACE_ON(ole)) dump_pastespecial(ps);
+
+    if(!ps->lpSrcDataObj)
+        OleGetClipboard(&ps->lpSrcDataObj);
+
+    if(ps->hInstance || !ps->hResource)
+    {
+        HINSTANCE hInst = ps->hInstance ? ps->hInstance : OLEDLG_hInstance;
+        const WCHAR *name = ps->hInstance ? ps->lpszTemplate : MAKEINTRESOURCEW(IDD_PASTESPECIAL4);
+        HRSRC hrsrc;
+
+        if(name == NULL) return OLEUI_ERR_LPSZTEMPLATEINVALID;
+        hrsrc = FindResourceW(hInst, name, MAKEINTRESOURCEW(RT_DIALOG));
+        if(!hrsrc) return OLEUI_ERR_FINDTEMPLATEFAILURE;
+        dlg_templ = LoadResource(hInst, hrsrc);
+        if(!dlg_templ) return OLEUI_ERR_LOADTEMPLATEFAILURE;
+    }
+
+    ret = DialogBoxIndirectParamW(OLEDLG_hInstance, dlg_templ, ps->hWndOwner, ps_dlg_proc, (LPARAM)ps);
+
+    return ret;
+}

Propchange: trunk/reactos/dll/win32/oledlg/pastespl.c
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: trunk/reactos/dll/win32/oledlg/resource.h
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/oledlg/resource.h?rev=26501&r1=26500&r2=26501&view=diff
==============================================================================
--- trunk/reactos/dll/win32/oledlg/resource.h (original)
+++ trunk/reactos/dll/win32/oledlg/resource.h Wed Apr 25 12:22:24 2007
@@ -38,3 +38,15 @@
 #define IDC_BROWSE                      1009
 #define IDC_FILELBL                     1010
 #define IDC_FILE                        1011
+
+/* String ids for Paste Special */
+#define IDS_PS_PASTE_DATA                 0x190
+#define IDS_PS_PASTE_OBJECT               0x191
+#define IDS_PS_PASTE_OBJECT_AS_ICON       0x192
+#define IDS_PS_PASTE_LINK_DATA            0x193
+#define IDS_PS_PASTE_LINK_OBJECT          0x194
+#define IDS_PS_PASTE_LINK_OBJECT_AS_ICON  0x195
+#define IDS_PS_NON_OLE                    0x196
+#define IDS_PS_UNKNOWN_TYPE               0x197
+#define IDS_PS_UNKNOWN_SRC                0x198
+#define IDS_PS_UNKNOWN_APP                0x199

Modified: trunk/reactos/dll/win32/oledlg/rsrc.rc
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/oledlg/rsrc.rc?rev=26501&r1=26500&r2=26501&view=diff
==============================================================================
--- trunk/reactos/dll/win32/oledlg/rsrc.rc (original)
+++ trunk/reactos/dll/win32/oledlg/rsrc.rc Wed Apr 25 12:22:24 2007
@@ -22,6 +22,8 @@
 #include "winbase.h"
 #include "winuser.h"
 #include "winnls.h"
+#include "oledlg.h"
+
 #include "resource.h"
 
 /*
@@ -42,6 +44,7 @@
 #include "oledlg_Ko.rc"
 #include "oledlg_Nl.rc"
 #include "oledlg_No.rc"
+#include "oledlg_Pl.rc"
 #include "oledlg_Pt.rc"
 #include "oledlg_Tr.rc"
 #include "oledlg_Uk.rc"




More information about the Ros-diffs mailing list