Wine-0_9_2 vendor drop
Added: vendor/wine/dlls/avifil32/current/avifile_Ko.rc
Modified: vendor/wine/dlls/avifil32/current/rsrc.rc
Modified: vendor/wine/dlls/comctl32/current/comctl_Ko.rc
Modified: vendor/wine/dlls/comctl32/current/header.c
Modified: vendor/wine/dlls/comctl32/current/rebar.c
Modified: vendor/wine/dlls/comctl32/current/syslink.c
Modified: vendor/wine/dlls/comctl32/current/tooltips.c
Modified: vendor/wine/dlls/commdlg/current/cdlg_Ko.rc
Modified: vendor/wine/dlls/commdlg/current/filedlg.c
Modified: vendor/wine/dlls/commdlg/current/fontdlg16.c
Modified: vendor/wine/dlls/crypt32/current/cert.c
Modified: vendor/wine/dlls/crypt32/current/encode.c
Modified: vendor/wine/dlls/dinput/current/dinput_main.c
Modified: vendor/wine/dlls/dinput/current/effect_linuxinput.c
Modified: vendor/wine/dlls/dinput/current/joystick_linuxinput.c
Modified: vendor/wine/dlls/dplayx/current/dplay.c
Modified: vendor/wine/dlls/msi/current/helpers.c
Modified: vendor/wine/dlls/msi/current/msi_Ko.rc
Modified: vendor/wine/dlls/msi/current/registry.c
Modified: vendor/wine/dlls/netapi32/current/access.c
Modified: vendor/wine/dlls/netapi32/current/netapi32.c
Modified: vendor/wine/dlls/oledlg/current/oledlg_Ko.rc
Modified: vendor/wine/dlls/rpcrt4/current/rpcrt4.spec
Modified: vendor/wine/dlls/shdocvw/current/Ko.rc
Modified: vendor/wine/dlls/shdocvw/current/Makefile.in
Modified: vendor/wine/dlls/shdocvw/current/client.c
Added: vendor/wine/dlls/shdocvw/current/dochost.c
Modified: vendor/wine/dlls/shdocvw/current/events.c
Modified: vendor/wine/dlls/shdocvw/current/oleobject.c
Modified: vendor/wine/dlls/shdocvw/current/shdocvw.h
Modified: vendor/wine/dlls/shdocvw/current/webbrowser.c
Modified: vendor/wine/dlls/shell32/current/brsfolder.c
Modified: vendor/wine/dlls/shell32/current/iconcache.c
Modified: vendor/wine/dlls/shell32/current/shell32_main.c
Modified: vendor/wine/dlls/shell32/current/shell32_main.h
Modified: vendor/wine/dlls/shell32/current/shellpath.c
Modified: vendor/wine/dlls/shell32/current/shfldr_desktop.c
Modified: vendor/wine/dlls/shell32/current/shfldr_mycomp.c
Modified: vendor/wine/dlls/shell32/current/shfldr_unixfs.c
Modified: vendor/wine/dlls/uxtheme/current/draw.c
Modified: vendor/wine/libs/unicode/current/c_037.c
Modified: vendor/wine/libs/unicode/current/c_10000.c
Modified: vendor/wine/libs/unicode/current/c_10006.c
Modified: vendor/wine/libs/unicode/current/c_10007.c
Modified: vendor/wine/libs/unicode/current/c_10029.c
Modified: vendor/wine/libs/unicode/current/c_1006.c
Modified: vendor/wine/libs/unicode/current/c_10079.c
Modified: vendor/wine/libs/unicode/current/c_10081.c
Modified: vendor/wine/libs/unicode/current/c_1026.c
Modified: vendor/wine/libs/unicode/current/c_1250.c
Modified: vendor/wine/libs/unicode/current/c_1251.c
Modified: vendor/wine/libs/unicode/current/c_1252.c
Modified: vendor/wine/libs/unicode/current/c_1253.c
Modified: vendor/wine/libs/unicode/current/c_1254.c
Modified: vendor/wine/libs/unicode/current/c_1255.c
Modified: vendor/wine/libs/unicode/current/c_1256.c
Modified: vendor/wine/libs/unicode/current/c_1257.c
Modified: vendor/wine/libs/unicode/current/c_1258.c
Modified: vendor/wine/libs/unicode/current/c_20866.c
Modified: vendor/wine/libs/unicode/current/c_20932.c
Modified: vendor/wine/libs/unicode/current/c_21866.c
Modified: vendor/wine/libs/unicode/current/c_28591.c
Modified: vendor/wine/libs/unicode/current/c_28592.c
Modified: vendor/wine/libs/unicode/current/c_28593.c
Modified: vendor/wine/libs/unicode/current/c_28594.c
Modified: vendor/wine/libs/unicode/current/c_28595.c
Modified: vendor/wine/libs/unicode/current/c_28596.c
Modified: vendor/wine/libs/unicode/current/c_28597.c
Modified: vendor/wine/libs/unicode/current/c_28598.c
Modified: vendor/wine/libs/unicode/current/c_28599.c
Modified: vendor/wine/libs/unicode/current/c_28600.c
Modified: vendor/wine/libs/unicode/current/c_28603.c
Modified: vendor/wine/libs/unicode/current/c_28604.c
Modified: vendor/wine/libs/unicode/current/c_28605.c
Modified: vendor/wine/libs/unicode/current/c_28606.c
Modified: vendor/wine/libs/unicode/current/c_424.c
Modified: vendor/wine/libs/unicode/current/c_437.c
Modified: vendor/wine/libs/unicode/current/c_500.c
Modified: vendor/wine/libs/unicode/current/c_737.c
Modified: vendor/wine/libs/unicode/current/c_775.c
Modified: vendor/wine/libs/unicode/current/c_850.c
Modified: vendor/wine/libs/unicode/current/c_852.c
Modified: vendor/wine/libs/unicode/current/c_855.c
Modified: vendor/wine/libs/unicode/current/c_856.c
Modified: vendor/wine/libs/unicode/current/c_857.c
Modified: vendor/wine/libs/unicode/current/c_860.c
Modified: vendor/wine/libs/unicode/current/c_861.c
Modified: vendor/wine/libs/unicode/current/c_862.c
Modified: vendor/wine/libs/unicode/current/c_863.c
Modified: vendor/wine/libs/unicode/current/c_864.c
Modified: vendor/wine/libs/unicode/current/c_865.c
Modified: vendor/wine/libs/unicode/current/c_866.c
Modified: vendor/wine/libs/unicode/current/c_869.c
Modified: vendor/wine/libs/unicode/current/c_874.c
Modified: vendor/wine/libs/unicode/current/c_875.c
Modified: vendor/wine/libs/unicode/current/c_878.c
Modified: vendor/wine/libs/unicode/current/c_932.c
Modified: vendor/wine/libs/unicode/current/c_936.c
Modified: vendor/wine/libs/unicode/current/c_949.c
Modified: vendor/wine/libs/unicode/current/c_950.c
[truncated at 100 lines; 5 more skipped]
Added: vendor/wine/dlls/avifil32/current/avifile_Ko.rc
--- vendor/wine/dlls/avifil32/current/avifile_Ko.rc	2005-11-25 22:01:19 UTC (rev 19574)
+++ vendor/wine/dlls/avifil32/current/avifile_Ko.rc	2005-11-25 22:10:34 UTC (rev 19575)
@@ -0,0 +1,51 @@
+/*
+ * Copyright 2002 Michael G³nnewig
+ * Copyright 2005 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., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ */
+
+LANGUAGE LANG_KOREAN, SUBLANG_DEFAULT
+
+IDD_SAVEOPTIONS DIALOG FIXED IMPURE  43, 37, 196, 82
+STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
+CAPTION "¥ð?Ó ???Ã"
+FONT 8, "MS Shell Dlg"
+BEGIN
+    LTEXT           "¢?ã«©? ????(&C):",-1,2,5,114,10
+    COMBOBOX        IDC_STREAM,2,18,134,61,CBS_DROPDOWNLIST | WS_VSCROLL | 
+                    WS_TABSTOP
+    PUSHBUTTON      "???Ã(&O)...",IDC_OPTIONS,145,17,45,14
+    AUTOCHECKBOX    "ÃÎ?¾ ?¾?ú?Þ?í(&I)",IDC_INTERLEAVE,3,42,60,11,WS_TABSTOP
+    EDITTEXT        IDC_INTERLEAVEEVERY,66,41,32,12,ES_AUTOHSCROLL
+    LTEXT           "Ã?À??Ë",-1,104,43,36,9
+    LTEXT           "Ã÷?þ 㸩?:",-1,3,56,53,9
+    LTEXT           "?þ?Ù?? ©±?¹?©À? ä?? ?°",IDC_FORMATTEXT,55,56,90,26
+    DEFPUSHBUTTON   "?«??",IDOK,145,42,45,14
+    PUSHBUTTON      "?Ù?Ê",IDCANCEL,145,61,45,14
+END
+
+STRINGTABLE DISCARDABLE
+{
+  IDS_WAVESTREAMFORMAT	"?????Ûã¹: %s"
+  IDS_WAVEFILETYPE	"?????Ûã¹"
+  IDS_ALLMULTIMEDIA	"©­Áþ ©Íã???Á­¥¯ ã??¤"
+  IDS_ALLFILES		"©­Áþ ã??¤ (*.*)@*.*"
+  IDS_VIDEO		"?±Á­??"
+  IDS_AUDIO		"??Á­??"
+  IDS_AVISTREAMFORMAT	"%s %s #%d"
+  IDS_AVIFILETYPE	"Wine AVI-?Ô??-ã??¤Ã?ÁÚÀ»r"
+  IDS_UNCOMPRESSED      "?±¥ð?Ó"
+}
Property changes on: vendor/wine/dlls/avifil32/current/avifile_Ko.rc
___________________________________________________________________
Name: svn:keywords
   + Author Date Id Revision
Name: svn:eol-style
   + native

Modified: vendor/wine/dlls/avifil32/current/rsrc.rc
--- vendor/wine/dlls/avifil32/current/rsrc.rc	2005-11-25 22:01:19 UTC (rev 19574)
+++ vendor/wine/dlls/avifil32/current/rsrc.rc	2005-11-25 22:10:34 UTC (rev 19575)
@@ -45,6 +45,7 @@
 #include "avifile_Fr.rc"
 #include "avifile_It.rc"
 #include "avifile_Ja.rc"
+#include "avifile_Ko.rc"
 #include "avifile_Nl.rc"
 #include "avifile_No.rc"
 #include "avifile_Pl.rc"

Modified: vendor/wine/dlls/comctl32/current/comctl_Ko.rc
--- vendor/wine/dlls/comctl32/current/comctl_Ko.rc	2005-11-25 22:01:19 UTC (rev 19574)
+++ vendor/wine/dlls/comctl32/current/comctl_Ko.rc	2005-11-25 22:10:34 UTC (rev 19575)
@@ -1,5 +1,6 @@
 /*
  * Copyright 2002 Won-kyu Park <wkpark@kldp.org>
+ * Copyright 2005 YunSong Hwang
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -20,20 +21,20 @@
 
 IDD_PROPSHEET DIALOG DISCARDABLE 0, 0, 220, 140
 STYLE DS_CONTEXTHELP | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE
-CAPTION "Properties for "
+CAPTION "?Ë??"
 FONT 9, "MS Shell Dlg"
 BEGIN
   DEFPUSHBUTTON "?«??",     IDOK,4,122,50,14, WS_TABSTOP | WS_GROUP
   PUSHBUTTON    "?Ù?Ê", IDCANCEL,58,122,50,14
   PUSHBUTTON    "?¹?Ù(&A)", IDC_APPLY_BUTTON,112,122,50,14,WS_DISABLED
   PUSHBUTTON    "ÁÁ??©?",   IDHELP,166,122,50,14,WS_TABSTOP|WS_GROUP
-  CONTROL       "Tab",    IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114
+  CONTROL       "",    IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114
 END
 
 
 IDD_WIZARD DIALOG DISCARDABLE 0, 0, 290, 159
 STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE
-CAPTION "Wizard"
+CAPTION "©Â?²?þ"
 FONT 9, "MS Shell Dlg"
 BEGIN
   PUSHBUTTON    "< ???³(&B)", IDC_BACK_BUTTON,71,138,50,14
@@ -42,26 +43,26 @@
   PUSHBUTTON    "?Ù?Ê",  IDCANCEL,178,138,50,14
   PUSHBUTTON    "ÁÁ??©?",    IDHELP,235,138,50,14,WS_GROUP
   LTEXT         "",        IDC_SUNKEN_LINE,7,129,278,1,SS_SUNKEN
-  CONTROL       "Tab",     IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS | WS_DISABLED,7,7,258,5
+  CONTROL       "",     IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS | WS_DISABLED,7,7,258,5
   LTEXT	        "",        IDC_SUNKEN_LINEHEADER,0,35,290,1,SS_LEFT | SS_SUNKEN | WS_CHILD | WS_VISIBLE
 END
 
 
 IDD_TBCUSTOMIZE DIALOG DISCARDABLE 10, 20, 357, 125
 STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
-CAPTION "Customize Toolbar"
+CAPTION "ÁÁ?©?? ?þ?Ù?? ?ñ?Ã"
 FONT 9, "MS Shell Dlg"
 BEGIN
   DEFPUSHBUTTON "?¦?Ô(&C)",     IDCANCEL,308,6,44,14
   PUSHBUTTON    "??¢?(&e)",     IDC_RESET_BTN,308,23,44,14
   PUSHBUTTON    "ÁÁ??©?(&H)",      IDC_HELP_BTN,308,40,44,14
-  PUSHBUTTON    "Move &Up",   IDC_MOVEUP_BTN,308,74,44,14
-  PUSHBUTTON    "Move &Down", IDC_MOVEDN_BTN,308,91,44,14
-  LTEXT         "A&vailable buttons:", -1,4,5,84,10
+  PUSHBUTTON    "?ºÀ? ??Á?(&U)",   IDC_MOVEUP_BTN,308,74,44,14
+  PUSHBUTTON    "¥ãÀíÀ? ??Á?(&D)", IDC_MOVEDN_BTN,308,91,44,14
+  LTEXT         "?í??ÃÐ ?÷ã?(&v)", -1,4,5,84,10
   LISTBOX       IDC_AVAILBTN_LBOX,4,17,120,100, LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP
-  PUSHBUTTON    "&Add ->",    IDOK, 131, 42, 44, 14
-  PUSHBUTTON    "<- &Remove", IDC_REMOVE_BTN,131,62,44,14
-  LTEXT         "&Toolbar buttons:", -1,182,5,78,10
+  PUSHBUTTON    "?§Ã¤?Ô(&A) ->",    IDOK, 131, 42, 44, 14
+  PUSHBUTTON    "<- ?ª??ä?Ô(&R)", IDC_REMOVE_BTN,131,62,44,14
+  LTEXT         "ÁÁ?©?? ?÷ã?(&T):", -1,182,5,78,10
   LISTBOX       IDC_TOOLBARBTN_LBOX, 182,17,120,100,LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP
 END
 
@@ -73,10 +74,10 @@
 STRINGTABLE DISCARDABLE
 {
     IDM_TODAY    "????:"
-    IDM_GOTODAY  "Go to today"
+    IDM_GOTODAY  "????À? ?í?Ô"
 }
 
 STRINGTABLE DISCARDABLE
 {
-    IDS_SEPARATOR "Separator"
+    IDS_SEPARATOR "?ð©«??"
 }

Modified: vendor/wine/dlls/comctl32/current/header.c
--- vendor/wine/dlls/comctl32/current/header.c	2005-11-25 22:01:19 UTC (rev 19574)
+++ vendor/wine/dlls/comctl32/current/header.c	2005-11-25 22:10:34 UTC (rev 19575)
@@ -813,12 +813,11 @@
 
     if (phdi->mask == 0)
 	return TRUE;
-
     if ((nItem < 0) || (nItem >= (INT)infoPtr->uNumItem))
-        lpItem = NULL;
-    else
-        lpItem = &infoPtr->items[nItem];
+        return FALSE;
 
+    lpItem = &infoPtr->items[nItem];
+
     if (phdi->mask & HDI_BITMAP)
 	phdi->hbm = (lpItem != NULL) ? lpItem->hbm : 0;
 

Modified: vendor/wine/dlls/comctl32/current/rebar.c
--- vendor/wine/dlls/comctl32/current/rebar.c	2005-11-25 22:01:19 UTC (rev 19574)
+++ vendor/wine/dlls/comctl32/current/rebar.c	2005-11-25 22:10:34 UTC (rev 19575)
@@ -2131,9 +2131,9 @@
 	    lpBand->hwndChild = lprbbi->hwndChild;
 	    lpBand->hwndPrevParent =
 		SetParent (lpBand->hwndChild, hwnd);
-	    /* below in trace fro WinRAR */
+	    /* below in trace from WinRAR */
 	    ShowWindow(lpBand->hwndChild, SW_SHOWNOACTIVATE | SW_SHOWNORMAL);
-	    /* above in trace fro WinRAR */
+	    /* above in trace from WinRAR */
 	}
 	else {
 	    TRACE("child: %p  prev parent: %p\n",

Modified: vendor/wine/dlls/comctl32/current/syslink.c
--- vendor/wine/dlls/comctl32/current/syslink.c	2005-11-25 22:01:19 UTC (rev 19574)
+++ vendor/wine/dlls/comctl32/current/syslink.c	2005-11-25 22:10:34 UTC (rev 19575)
@@ -1,7 +1,7 @@
 /*
  * SysLink control
  *
- * Copyright 2004 Thomas Weidenmueller <w3seek@reactos.com>
+ * Copyright 2004, 2005 Thomas Weidenmueller <w3seek@reactos.com>
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -25,12 +25,6 @@
  * Unless otherwise noted, we believe this code to be complete, as per
  * the specification mentioned above.
  * If you discover missing features, or bugs, please note them below.
- * 
- * TODO:
- * - Fix SHIFT+TAB and TAB issue (wrong link is selected when control gets the focus)
- * - Better string parsing
- * - Improve word wrapping
- *
  */
 
 #include <stdarg.h>
@@ -52,6 +46,7 @@
 typedef struct
 {
     int nChars;
+    int nSkip;
     RECT rc;
 } DOC_TEXTBLOCK, *PDOC_TEXTBLOCK;
 
@@ -78,7 +73,6 @@
             UINT state;     /* Link state */
             WCHAR *szID;    /* Link ID string */
             WCHAR *szUrl;   /* Link URL string */
-            HRGN hRgn;      /* Region of the link */
         } Link;
         struct
         {
@@ -100,6 +94,7 @@
     COLORREF  TextColor;    /* Color of the text */
     COLORREF  LinkColor;    /* Color of links */
     COLORREF  VisitedColor; /* Color of visited links */
+    WCHAR     BreakChar;    /* Break Character for the current font */
 } SYSLINK_INFO;
 
 static const WCHAR SL_LINKOPEN[] =  { '<','a', 0 };
@@ -126,11 +121,6 @@
         Free(DocItem->u.Link.szUrl);
     }
 
-    if(DocItem->Type == slLink && DocItem->u.Link.hRgn != NULL)
-    {
-        DeleteObject(DocItem->u.Link.hRgn);
-    }
-
     /* we don't free Text because it's just a pointer to a character in the
        entire window text string */
 
@@ -215,9 +205,8 @@
             {
                 BOOL ValidParam = FALSE, ValidLink = FALSE;
 
-                switch (*(current + 2))
+                if(*(current + 2) == '>')
                 {
-                case '>':
                     /* we just have to deal with a <a> tag */
                     taglen = 3;
                     ValidLink = TRUE;
@@ -226,8 +215,8 @@
                     linklen = 0;
                     lpID = NULL;
                     lpUrl = NULL;
-                    break;
-                case ' ':
+                }
+                else if(*(current + 2) == infoPtr->BreakChar)
                 {
                     /* we expect parameters, parse them */
                     LPCWSTR *CurrentParameter = NULL, tmp;
@@ -285,28 +274,23 @@
                          * 1. another parameter is coming, so expect a ' ' (space) character
                          * 2. the tag is being closed, so expect a '<' character
                          */
-                        switch(*tmp)
+                        if(*tmp == infoPtr->BreakChar)
                         {
-                        case ' ':
                             /* we expect another parameter, do the whole thing again */
                             taglen++;
                             tmp++;
                             goto CheckParameter;
-
-                        case '>':
+                        }
+                        else if(*tmp == '>')
+                        {
                             /* the tag is being closed, we're done */
                             ValidLink = TRUE;
                             taglen++;
-                            break;
-                        default:
+                        }
+                        else
                             tmp++;
-                            break;
-                        }
                     }
-                    
-                    break;
                 }
-                }
                 
                 if(ValidLink && ValidParam)
                 {
@@ -495,16 +479,26 @@
  */
 static VOID SYSLINK_RepaintLink (SYSLINK_INFO *infoPtr, PDOC_ITEM DocItem)
 {
+    PDOC_TEXTBLOCK bl;
+    int n;
+
     if(DocItem->Type != slLink)
     {
         ERR("DocItem not a link!\n");
         return;
     }
     
-    if(DocItem->u.Link.hRgn != NULL)
+    bl = DocItem->Blocks;
+    if (bl != NULL)
     {
-        /* repaint the region */
-        RedrawWindow(infoPtr->Self, NULL, DocItem->u.Link.hRgn, RDW_INVALIDATE | RDW_UPDATENOW);
+        n = DocItem->nText;
+        
+        while(n > 0)
+        {
+            InvalidateRect(infoPtr->Self, &bl->rc, TRUE);
+            n -= bl->nChars + bl->nSkip;
+            bl++;
+        }
     }
 }
 
@@ -615,7 +609,8 @@
  * SYSLINK_WrapLine
  * Tries to wrap a line.
  */
-static BOOL SYSLINK_WrapLine (HDC hdc, LPWSTR Text, WCHAR BreakChar, int *LineLen, int nFit, LPSIZE Extent, int Width)
+static BOOL SYSLINK_WrapLine (HDC hdc, LPWSTR Text, WCHAR BreakChar, int *LineLen,
+                             int nFit, LPSIZE Extent, int Width)
 {
     WCHAR *Current;
 
@@ -659,7 +654,6 @@
     PDOC_ITEM Current;
     HGDIOBJ hOldFont;
     int x, y, LineHeight;
-    TEXTMETRICW tm;
     
     GetClientRect(infoPtr->Self, &rc);
     rc.right -= SL_RIGHTMARGIN;
@@ -668,7 +662,6 @@
     if(rc.right - SL_LEFTMARGIN < 0 || rc.bottom - SL_TOPMARGIN < 0) return;
     
     hOldFont = SelectObject(hdc, infoPtr->Font);
-    GetTextMetricsW(hdc, &tm);
     
     x = SL_LEFTMARGIN;
     y = SL_TOPMARGIN;
@@ -684,13 +677,18 @@
         
         if(Current->nText == 0)
         {
-            ERR("DOC_ITEM with no text?!\n");
             continue;
         }
         
         tx = Current->Text;
         n = Current->nText;
-        bl = Current->Blocks;
+
+        if (Current->Blocks != NULL)
+        {
+            Free(Current->Blocks);
+            Current->Blocks = NULL;
+        }
+        bl = NULL;
         nBlocks = 0;
         
         if(Current->Type == slText)
@@ -704,41 +702,80 @@
         
         while(n > 0)
         {
-            if(GetTextExtentExPointW(hdc, tx, n, rc.right - x, &nFit, NULL, &szDim))
+            int SkipChars = 0;
+
+            /* skip break characters unless they're the first of the doc item */
+            if(tx != Current->Text || x == SL_LEFTMARGIN)
             {
+                while(n > 0 && (*tx) == infoPtr->BreakChar)
+                {
+                    tx++;
+                    SkipChars++;
+                    n--;
+                }
+            }
+
+            if((n == 0 && SkipChars != 0) ||
+               GetTextExtentExPointW(hdc, tx, n, rc.right - x, &nFit, NULL, &szDim))
+            {
                 int LineLen = n;
-                BOOL Wrap = SYSLINK_WrapLine(hdc, tx, tm.tmBreakChar, &LineLen, nFit, &szDim, rc.right - x);
+                BOOL Wrap = FALSE;
                 
-                if(LineLen == 0)
+                if(n != 0)
                 {
-                    if(x > SL_LEFTMARGIN)
+                    Wrap = SYSLINK_WrapLine(hdc, tx, infoPtr->BreakChar, &LineLen, nFit, &szDim, rc.right - x);
+
+                    if(LineLen == 0)
                     {
-                        /* move one line down, the word didn't fit into the line */
-                        x = SL_LEFTMARGIN;
-                        y += LineHeight;
-                        LineHeight = 0;
-                        continue;
+                        if(x > SL_LEFTMARGIN)
+                        {
+                            /* move one line down, the word didn't fit into the line */
+                            x = SL_LEFTMARGIN;
+                            y += LineHeight;
+                            LineHeight = 0;
+                            continue;
+                        }
+                        else
+                        {
+                            /* the word starts at the beginning of the line and doesn't
+                               fit into the line, so break it at the last character that fits */
+                            LineLen = max(nFit, 1);
+                        }
                     }
-                    else
+
+                    if(LineLen != n)
                     {
-                        /* the word starts at the beginning of the line and doesn't
-                           fit into the line, so break it at the last character that fits */
-                        LineLen = max(nFit, 1);
+                        if(!GetTextExtentExPointW(hdc, tx, LineLen, rc.right - x, NULL, NULL, &szDim))
+                        {
+                            if(bl != NULL)
+                            {
+                                Free(bl);
+                                bl = NULL;
+                            }
+                            break;
+                        }
                     }
                 }
                 
-                if(LineLen != n)
-                {
-                    GetTextExtentExPointW(hdc, tx, LineLen, rc.right - x, NULL, NULL, &szDim);
-                }
-                
                 if(bl != NULL)
                 {
-                    bl = ReAlloc(bl, ++nBlocks * sizeof(DOC_TEXTBLOCK));
+                    PDOC_TEXTBLOCK nbl = ReAlloc(bl, (nBlocks + 1) * sizeof(DOC_TEXTBLOCK));
+                    if (nbl != NULL)
+                    {
+                        bl = nbl;
+                        nBlocks++;
+                    }
+                    else
+                    {
+                        Free(bl);
+                        bl = NULL;
+                    }
                 }
                 else
                 {
-                    bl = Alloc(++nBlocks * sizeof(DOC_TEXTBLOCK));
+                    bl = Alloc((nBlocks + 1) * sizeof(DOC_TEXTBLOCK));
+                    if (bl != NULL)
+                        nBlocks++;
                 }
                 
                 if(bl != NULL)
@@ -746,42 +783,24 @@
                     cbl = bl + nBlocks - 1;
                     
                     cbl->nChars = LineLen;
+                    cbl->nSkip = SkipChars;
                     cbl->rc.left = x;
                     cbl->rc.top = y;
                     cbl->rc.right = x + szDim.cx;
                     cbl->rc.bottom = y + szDim.cy;
                     
-                    x += szDim.cx;
-                    LineHeight = max(LineHeight, szDim.cy);
-                    
-                    /* (re)calculate the link's region */
-                    if(Current->Type == slLink)
+                    if(LineLen != 0)
                     {
-                        if(nBlocks <= 1)
+                        x += szDim.cx;
+                        LineHeight = max(LineHeight, szDim.cy);
+
+                        if(Wrap)
                         {
-                            if(Current->u.Link.hRgn != NULL)
-                            {
-                                DeleteObject(Current->u.Link.hRgn);
-                            }
-                            /* initialize the link's hRgn */
-                            Current->u.Link.hRgn = CreateRectRgnIndirect(&cbl->rc);
+                            x = SL_LEFTMARGIN;
+                            y += LineHeight;
+                            LineHeight = 0;
                         }
-                        else if(Current->u.Link.hRgn != NULL)
-                        {
-                            HRGN hrgn;
-                            hrgn = CreateRectRgnIndirect(&cbl->rc);
-                            /* add the rectangle */
-                            CombineRgn(Current->u.Link.hRgn, Current->u.Link.hRgn, hrgn, RGN_OR);
-                            DeleteObject(hrgn);
-                        }
                     }
-                    
-                    if(Wrap)
-                    {
-                        x = SL_LEFTMARGIN;
-                        y += LineHeight;
-                        LineHeight = 0;
-                    }
                 }
                 else
                 {
@@ -793,11 +812,16 @@
             }
             else
             {
-                ERR("GetTextExtentExPoint() failed?!\n");
                 n--;
             }
         }
-        Current->Blocks = bl;
+
+        if(nBlocks != 0)
+        {
+            Current->Blocks = bl;
+        }
+        else
+            Current->Blocks = NULL;
     }
     
     SelectObject(hdc, hOldFont);
@@ -849,6 +873,7 @@
 
             while(n > 0)
             {
+                tx += bl->nSkip;
                 ExtTextOutW(hdc, bl->rc.left, bl->rc.top, ETO_OPAQUE | ETO_CLIPPED, &bl->rc, tx, bl->nChars, NULL);
                 if((Current->Type == slLink) && (Current->u.Link.state & LIS_FOCUSED) && infoPtr->HasFocus)
                 {
@@ -858,7 +883,7 @@
                     SetBkColor(hdc, PrevColor);
                 }
                 tx += bl->nChars;
-                n -= bl->nChars;
+                n -= bl->nChars + bl->nSkip;
                 bl++;
             }
         }
@@ -896,6 +921,7 @@
 {
     HDC hdc;
     LOGFONTW lf;
+    TEXTMETRICW tm;
     HFONT hOldFont = infoPtr->Font;
     infoPtr->Font = hFont;
     
@@ -911,10 +937,12 @@
     if(hdc != NULL)
     {
         /* create a new underline font */
-        if(GetObjectW(infoPtr->Font, sizeof(LOGFONTW), &lf))
+        if(GetTextMetricsW(hdc, &tm) &&
+           GetObjectW(infoPtr->Font, sizeof(LOGFONTW), &lf))
         {
             lf.lfUnderline = TRUE;
             infoPtr->LinkFont = CreateFontIndirectW(&lf);
+            infoPtr->BreakChar = tm.tmBreakChar;
         }
         else
         {
@@ -1133,6 +1161,34 @@
 }
 
 /***********************************************************************
+ *           SYSLINK_PtInDocItem
+ * Determines if a point is in the region of a document item
+ */
+static BOOL SYSLINK_PtInDocItem (PDOC_ITEM DocItem, POINT pt)
+{
+    PDOC_TEXTBLOCK bl;
+    int n;
+
+    bl = DocItem->Blocks;
+    if (bl != NULL)
+    {
+        n = DocItem->nText;
+
+        while(n > 0)
+        {
+            if (PtInRect(&bl->rc, pt))
+            {
+                return TRUE;
+            }
+            n -= bl->nChars + bl->nSkip;
+            bl++;
+        }
+    }
+    
+    return FALSE;
+}
+
+/***********************************************************************
  *           SYSLINK_HitTest
  * Determines the link the user clicked on.
  */
@@ -1145,8 +1201,7 @@
     {
         if(Current->Type == slLink)
         {
-            if((Current->u.Link.hRgn != NULL) &&
-               PtInRegion(Current->u.Link.hRgn, HitTest->pt.x, HitTest->pt.y))
+            if(SYSLINK_PtInDocItem(Current, HitTest->pt))
             {
                 HitTest->item.mask = 0;
                 HitTest->item.iLink = id;
@@ -1252,25 +1307,13 @@
     
     infoPtr->HasFocus = TRUE;
 
-#if 1
-    /* FIXME - How to detect whether SHIFT+TAB or just TAB has been pressed?
-     *         The problem is we could get this message without keyboard input, too
-     */
-    Focus = SYSLINK_GetFocusLink(infoPtr, NULL);
-    
-    if(Focus == NULL && (Focus = SYSLINK_GetNextLink(infoPtr, NULL)))
-    {
-        SYSLINK_SetFocusLink(infoPtr, Focus);
-    }
-#else
-    /* This is a temporary hack since I'm not really sure how to detect which link to select.
-       See message above! */
+    /* We always select the first link, even if we activated the control using
+       SHIFT+TAB. This is the default behavior */
     Focus = SYSLINK_GetNextLink(infoPtr, NULL);
     if(Focus != NULL)
     {
         SYSLINK_SetFocusLink(infoPtr, Focus);
     }
-#endif
     
     SYSLINK_RepaintLink(infoPtr, Focus);
     
@@ -1307,8 +1350,7 @@
 
     for(Current = infoPtr->Items; Current != NULL; Current = Current->Next)
     {
-        if((Current->Type == slLink) && (Current->u.Link.hRgn != NULL) &&
-           PtInRegion(Current->u.Link.hRgn, pt->x, pt->y) &&
+        if((Current->Type == slLink) && SYSLINK_PtInDocItem(Current, *pt) &&
            (!MustBeEnabled || (MustBeEnabled && (Current->u.Link.state & LIS_ENABLED))))
         {
             if(LinkId != NULL)
@@ -1335,6 +1377,8 @@
     Current = SYSLINK_LinkAtPt(infoPtr, pt, &id, TRUE);
     if(Current != NULL)
     {
+      SetFocus(infoPtr->Self);
+
       Old = SYSLINK_SetFocusLink(infoPtr, Current);
       if(Old != NULL && Old != Current)
       {
@@ -1342,7 +1386,6 @@
       }
       infoPtr->MouseDownID = id;
       SYSLINK_RepaintLink(infoPtr, Current);
-      SetFocus(infoPtr->Self);
     }
 
     return 0;
@@ -1460,7 +1503,7 @@
     infoPtr = (SYSLINK_INFO *)GetWindowLongPtrW(hwnd, 0);
 
     if (!infoPtr && message != WM_CREATE)
-        return DefWindowProcW( hwnd, message, wParam, lParam );
+        goto HandleDefaultMessage;
 
     switch(message) {
     case WM_PRINTCLIENT:
@@ -1482,8 +1525,7 @@
             return TRUE;
         }
         /* let the default window proc handle this message */
-        return DefWindowProcW(hwnd, message, wParam, lParam);
-
+        goto HandleDefaultMessage;
     }
 
     case WM_SIZE:
@@ -1505,7 +1547,7 @@
 
     case WM_SETTEXT:
         SYSLINK_SetText(infoPtr, (LPWSTR)lParam);
-        return DefWindowProcW(hwnd, message, wParam, lParam);
+        goto HandleDefaultMessage;
 
     case WM_LBUTTONDOWN:
     {
@@ -1536,7 +1578,7 @@
             return 0;
         }
         }
-        return DefWindowProcW(hwnd, message, wParam, lParam);
+        goto HandleDefaultMessage;
     }
     
     case WM_GETDLGCODE:
@@ -1638,6 +1680,7 @@
         infoPtr->TextColor = GetSysColor(COLOR_WINDOWTEXT);
         infoPtr->LinkColor = GetSysColor(COLOR_HIGHLIGHT);
         infoPtr->VisitedColor = GetSysColor(COLOR_HIGHLIGHT);
+        infoPtr->BreakChar = ' ';
         TRACE("SysLink Ctrl creation, hwnd=%p\n", hwnd);
         SYSLINK_SetText(infoPtr, ((LPCREATESTRUCTW)lParam)->lpszName);
         return 0;
@@ -1652,8 +1695,11 @@
         return 0;
 
     default:
+HandleDefaultMessage:
         if ((message >= WM_USER) && (message < WM_APP))
-	    ERR("unknown msg %04x wp=%04x lp=%08lx\n", message, wParam, lParam );
+        {
+	        ERR("unknown msg %04x wp=%04x lp=%08lx\n", message, wParam, lParam );
+        }
         return DefWindowProcW(hwnd, message, wParam, lParam);
     }
 }

Modified: vendor/wine/dlls/comctl32/current/tooltips.c
--- vendor/wine/dlls/comctl32/current/tooltips.c	2005-11-25 22:01:19 UTC (rev 19574)
+++ vendor/wine/dlls/comctl32/current/tooltips.c	2005-11-25 22:10:34 UTC (rev 19575)
@@ -1507,7 +1507,7 @@
 
     /* NB this API is broken, there is no way for the app to determine
        what size buffer it requires nor a way to specify how long the
-       one it supplies is.  We'll assume it's upto INFOTIPSIZE */
+       one it supplies is.  We'll assume it's up to INFOTIPSIZE */
 
     WideCharToMultiByte(CP_ACP, 0, infoPtr->tools[nTool].lpszText, -1,
 			lpToolInfo->lpszText, INFOTIPSIZE, NULL, NULL);

Modified: vendor/wine/dlls/commdlg/current/cdlg_Ko.rc
--- vendor/wine/dlls/commdlg/current/cdlg_Ko.rc	2005-11-25 22:01:19 UTC (rev 19574)
+++ vendor/wine/dlls/commdlg/current/cdlg_Ko.rc	2005-11-25 22:10:34 UTC (rev 19575)
@@ -1,5 +1,6 @@
 /*
  * Copyright 1996 Bang Jun Young
+ * Copyright 2005 YunSong Hwang
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -85,7 +86,7 @@
  LTEXT "???Ô Ã??·(&Q):", 1092, 6, 100, 76, 9
  COMBOBOX 1136, 80, 100, 92, 68, CBS_DROPDOWNLIST | CBS_OWNERDRAWFIXED | CBS_AUTOHSCROLL | CBS_SORT | CBS_HASSTRINGS | WS_BORDER | WS_VSCROLL | WS_TABSTOP
  CHECKBOX "ã??¤À? ???Ô(&L)", 1040, 20, 100, 50, 12, BS_AUTOCHECKBOX | WS_GROUP | WS_TABSTOP
- CHECKBOX "Condensed", 1041, 160, 100, 50, 12, BS_AUTOCHECKBOX | WS_GROUP | WS_TABSTOP
+ CHECKBOX " ã°?? ????", 1041, 160, 100, 50, 12, BS_AUTOCHECKBOX | WS_GROUP | WS_TABSTOP
 }
 
 
@@ -117,76 +118,76 @@
 PRINT32 DIALOG LOADONCALL MOVEABLE DISCARDABLE  32, 32, 288, 186
 STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU |
       DS_CONTEXTHELP | DS_3DLOOK
-CAPTION "Print"
+CAPTION "???Ô"
 FONT 9, "MS Shell Dlg"
 {
-    DEFPUSHBUTTON   "OK",     IDOK,     180,164, 48,14, WS_GROUP | BS_DEFPUSHBUTTON
-    PUSHBUTTON      "Cancel", IDCANCEL, 232,164, 48,14, WS_GROUP
-    PUSHBUTTON      "&Help",  pshHelp,  50, 161, 48,14, WS_GROUP
+    DEFPUSHBUTTON   "?«??",     IDOK,     180,164, 48,14, WS_GROUP | BS_DEFPUSHBUTTON
+    PUSHBUTTON      "?Ù?Ê", IDCANCEL, 232,164, 48,14, WS_GROUP
+    PUSHBUTTON      "ÁÁ??©?(&H)",  pshHelp,  50, 161, 48,14, WS_GROUP
 
-    GROUPBOX        "Printer",        grp4,   8,  4, 272,84, WS_GROUP
-    CONTROL         "Print to fi&le", chx1, "Button",BS_AUTOCHECKBOX | WS_GROUP | WS_TABSTOP,212,70,64,12
-    PUSHBUTTON      "&Properties",    psh2, 212, 17,  60,14, WS_GROUP
-    LTEXT           "&Name:",         stc6,  16, 20,  36,8
+    GROUPBOX        "Ã?©???",        grp4,   8,  4, 272,84, WS_GROUP
+    CONTROL         "ã??¤À? ???Ô(&l)", chx1, "Button",BS_AUTOCHECKBOX | WS_GROUP | WS_TABSTOP,212,70,64,12
+    PUSHBUTTON      "?Ë??(&P)",    psh2, 212, 17,  60,14, WS_GROUP
+    LTEXT           "??©º(&N):",         stc6,  16, 20,  36,8
     COMBOBOX                          cmb4,  52, 18, 152,152,CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_GROUP | WS_TABSTOP
-    LTEXT           "Status:",        stc8,  16, 36,  36,10, SS_NOPREFIX
-    LTEXT           "Dummy State",    stc12, 52, 36, 224,10, SS_NOPREFIX | SS_LEFTNOWORDWRAP
-    LTEXT           "Type:",          stc7,  16, 48,  36,10, SS_NOPREFIX
-    LTEXT           "Dummy Type",     stc11, 52, 48, 224,10, SS_NOPREFIX | SS_LEFTNOWORDWRAP
-    LTEXT           "Where:",         stc10, 16, 60,  36,10, SS_NOPREFIX
-    LTEXT           "Dummy Location", stc14, 52, 60, 224,10, SS_NOPREFIX | SS_LEFTNOWORDWRAP
-    LTEXT           "Comment:",       stc9,  16, 72,  36,10, SS_NOPREFIX
-    LTEXT           "Dummy Remark",   stc13, 52, 72, 152,10, SS_NOPREFIX | SS_LEFTNOWORDWRAP
+    LTEXT           "?¾??:",        stc8,  16, 36,  36,10, SS_NOPREFIX
+    LTEXT           "?§?? ?¾??",    stc12, 52, 36, 224,10, SS_NOPREFIX | SS_LEFTNOWORDWRAP
+    LTEXT           "?©?È:",          stc7,  16, 48,  36,10, SS_NOPREFIX
+    LTEXT           "?§?? ?©?È",     stc11, 52, 48, 224,10, SS_NOPREFIX | SS_LEFTNOWORDWRAP
+    LTEXT           "¥¯Á­?:",         stc10, 16, 60,  36,10, SS_NOPREFIX
+    LTEXT           "?§?? ?º?í", stc14, 52, 60, 224,10, SS_NOPREFIX | SS_LEFTNOWORDWRAP
+    LTEXT           "??©Ý:",       stc9,  16, 72,  36,10, SS_NOPREFIX
+    LTEXT           "?§?? ??©Ý",   stc13, 52, 72, 152,10, SS_NOPREFIX | SS_LEFTNOWORDWRAP
 
-    GROUPBOX        "Copies",         grp2, 160, 92, 120,64, WS_GROUP
-    LTEXT           "Number of &copies:",stc5,168,108,68,8
+    GROUPBOX        "???þ??",         grp2, 160, 92, 120,64, WS_GROUP
+    LTEXT           "???þ?? ???÷(&c):",stc5,168,108,68,8
     ICON            "",               ico3, 162,124,  76,24, WS_GROUP | SS_CENTERIMAGE
-    CONTROL         "C&ollate",       chx2,"Button",BS_AUTOCHECKBOX | WS_GROUP | WS_TABSTOP,240,130,36,12
+    CONTROL         "Ãi?í?Ô(&o)",       chx2,"Button",BS_AUTOCHECKBOX | WS_GROUP | WS_TABSTOP,240,130,36,12
     EDITTEXT                          edt3, 240,106,  32,12, WS_GROUP | ES_NUMBER
 
-    GROUPBOX        "Print range",    grp1,   8,92,  144,64, WS_GROUP
-    CONTROL         "&All",           rad1,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,16,106,64,12
-    CONTROL         "Pa&ges",         rad3,"Button",BS_AUTORADIOBUTTON,16,122,36,12
-    CONTROL         "&Selection",     rad2,"Button",BS_AUTORADIOBUTTON,16,138,64,12
+    GROUPBOX        "???Ô ?³?º",    grp1,   8,92,  144,64, WS_GROUP
+    CONTROL         "©­Á?(&A)",           rad1,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,16,106,64,12
+    CONTROL         "ãõ???÷(&g)",         rad3,"Button",BS_AUTORADIOBUTTON,16,122,36,12
+    CONTROL         "?????Á?¬(&S)",     rad2,"Button",BS_AUTORADIOBUTTON,16,138,64,12
     EDITTEXT                          edt1,  74,122,  26,12, WS_GROUP | ES_NUMBER
     EDITTEXT                          edt2, 118,122,  26,12, WS_GROUP | ES_NUMBER
-    RTEXT           "&from:",         stc2,  52,124,  20,8
-    RTEXT           "&to:",           stc3, 100,124,  16,8
+    RTEXT           "?®?Ô?¡????(&f):",         stc2,  52,124,  20,8
+    RTEXT           "?®?Ô?¯?÷(&t):",           stc3, 100,124,  16,8
 }
 
 PRINT32_SETUP DIALOG LOADONCALL MOVEABLE DISCARDABLE  32, 32, 288, 178
 STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU |
       DS_CONTEXTHELP | DS_3DLOOK
-CAPTION "Print Setup"
+CAPTION "???Ô ???ñ"
 FONT 9, "MS Shell Dlg"
 BEGIN
-    DEFPUSHBUTTON   "OK",IDOK,180,156,48,14,WS_GROUP
-    PUSHBUTTON      "Cancel",IDCANCEL,232,156,48,14
-/*    PUSHBUTTON      "Network...", psh5, 284,156,48,14 */
+    DEFPUSHBUTTON   "?«??",IDOK,180,156,48,14,WS_GROUP
+    PUSHBUTTON      "?Ù?Ê",IDCANCEL,232,156,48,14
+/*    PUSHBUTTON      "?Îã«?÷?®...", psh5, 284,156,48,14 */
 
-    GROUPBOX        "Printer",        grp4,   8,  4, 272,84, WS_GROUP
-    PUSHBUTTON      "&Properties",    psh2, 212, 17,  60,14, WS_GROUP
-    LTEXT           "&Name:",         stc6,  16, 20,  36,8
+    GROUPBOX        "Ã?©???",        grp4,   8,  4, 272,84, WS_GROUP
+    PUSHBUTTON      "?Ë??(&P)",    psh2, 212, 17,  60,14, WS_GROUP
+    LTEXT           "??©º(&N):",         stc6,  16, 20,  36,8
     COMBOBOX                          cmb1,  52, 18, 152,152,CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_GROUP | WS_TABSTOP
-    LTEXT           "Status:",        stc8,  16, 36,  36,10, SS_NOPREFIX
-    LTEXT           "Dummy State",    stc12, 52, 36, 224,10, SS_NOPREFIX | SS_LEFTNOWORDWRAP
-    LTEXT           "Type:",          stc7,  16, 48,  36,10, SS_NOPREFIX
-    LTEXT           "Dummy Type",     stc11, 52, 48, 224,10, SS_NOPREFIX | SS_LEFTNOWORDWRAP
-    LTEXT           "Where:",         stc10, 16, 60,  36,10, SS_NOPREFIX
-    LTEXT           "Dummy Location", stc14, 52, 60, 224,10, SS_NOPREFIX | SS_LEFTNOWORDWRAP
-    LTEXT           "Comment:",       stc9,  16, 72,  36,10, SS_NOPREFIX
-    LTEXT           "Dummy Remark",   stc13, 52, 72, 224,10, SS_NOPREFIX | SS_LEFTNOWORDWRAP
+    LTEXT           "?¾??:",        stc8,  16, 36,  36,10, SS_NOPREFIX
+    LTEXT           "?§?± ?¾??",    stc12, 52, 36, 224,10, SS_NOPREFIX | SS_LEFTNOWORDWRAP
+    LTEXT           "?©?È:",          stc7,  16, 48,  36,10, SS_NOPREFIX
+    LTEXT           "?§?? ?©?È",     stc11, 52, 48, 224,10, SS_NOPREFIX | SS_LEFTNOWORDWRAP
+    LTEXT           "¥¯Á­?:",         stc10, 16, 60,  36,10, SS_NOPREFIX
+    LTEXT           "?§?? ?º?í", stc14, 52, 60, 224,10, SS_NOPREFIX | SS_LEFTNOWORDWRAP
+    LTEXT           "??©Ý:",       stc9,  16, 72,  36,10, SS_NOPREFIX
+    LTEXT           "?§?? ??©Ý",   stc13, 52, 72, 224,10, SS_NOPREFIX | SS_LEFTNOWORDWRAP
 
-    GROUPBOX        "Paper",          grp2,   8, 92, 164,56, WS_GROUP
-    LTEXT           "Si&ze:",         stc2,  16,108,  36, 8
+    GROUPBOX        "?¥??",          grp2,   8, 92, 164,56, WS_GROUP
+    LTEXT           "?®?Ô(&z):",         stc2,  16,108,  36, 8
     COMBOBOX                          cmb2,  52,106, 112,112,CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_GROUP | WS_TABSTOP
-    LTEXT           "&Source:",       stc3,  16,128,  36, 8
+    LTEXT           "?°??(&S):",       stc3,  16,128,  36, 8
     COMBOBOX                          cmb3,  52,126, 112,112,CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_GROUP | WS_TABSTOP
 
-    GROUPBOX        "Orientation",    grp1, 180, 92, 100,56, WS_GROUP
+    GROUPBOX        "?µÃÔ",    grp1, 180, 92, 100,56, WS_GROUP
     ICON            "",               ico1, 195,112,  18,20, WS_GROUP
-    CONTROL         "P&ortrait",      rad1,"Button",BS_AUTORADIOBUTTON | WS_GROUP |WS_TABSTOP,224,106,52,12
-    CONTROL         "L&andscape",     rad2,"Button",BS_AUTORADIOBUTTON,224,126,52,12
+    CONTROL         "?íÀ?(&o)",      rad1,"Button",BS_AUTORADIOBUTTON | WS_GROUP |WS_TABSTOP,224,106,52,12
+    CONTROL         "??À?(&a)",     rad2,"Button",BS_AUTORADIOBUTTON,224,126,52,12
 END
 
 

Modified: vendor/wine/dlls/commdlg/current/filedlg.c
--- vendor/wine/dlls/commdlg/current/filedlg.c	2005-11-25 22:01:19 UTC (rev 19574)
+++ vendor/wine/dlls/commdlg/current/filedlg.c	2005-11-25 22:10:34 UTC (rev 19575)
@@ -283,7 +283,7 @@
     }
 
     /* Some shell namespace extensions depend on COM being initialized. */
-    hr = CoInitialize(NULL);
+    hr = OleInitialize(NULL);
 
     lRes = DialogBoxIndirectParamA(COMDLG32_hInstance,
                                   (LPDLGTEMPLATEA) template,
@@ -291,7 +291,7 @@
                                   FileOpenDlgProc95,
                                   (LPARAM) fodInfos);
     if (SUCCEEDED(hr)) 
-        CoUninitialize();
+        OleUninitialize();
 
     /* Unable to create the dialog */
     if( lRes == -1)
@@ -701,10 +701,6 @@
     /* finally use fixed parent size */
     rectParent.bottom -= help_fixup;
 
-    /* save the size of the parent's client area */
-    rectChild.right = rectParent.right;
-    rectChild.bottom = rectParent.bottom;
-
     /* set the size of the parent dialog */
     AdjustWindowRectEx(&rectParent, GetWindowLongW(hwndParentDlg, GWL_STYLE),
                        FALSE, GetWindowLongW(hwndParentDlg, GWL_EXSTYLE));
@@ -713,10 +709,6 @@
                  rectParent.right - rectParent.left,
                  rectParent.bottom - rectParent.top,
                  SWP_NOMOVE | SWP_NOZORDER);
-
-    /* set the size of the child dialog */
-    SetWindowPos(hwndChildDlg, HWND_BOTTOM,
-                 0, 0, rectChild.right, rectChild.bottom, SWP_NOACTIVATE);
 }
 
 static INT_PTR CALLBACK FileOpenDlgProcUserTemplate(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
@@ -1032,9 +1024,29 @@
          FILEDLG95_InitControls(hwnd);
 
          if (fodInfos->DlgInfos.hwndCustomDlg)
+         {
+             RECT rc;
+             UINT flags = SWP_NOACTIVATE;
+
              ArrangeCtrlPositions(fodInfos->DlgInfos.hwndCustomDlg, hwnd,
                  (fodInfos->ofnInfos->Flags & (OFN_HIDEREADONLY | OFN_SHOWHELP)) == OFN_HIDEREADONLY);
 
+             /* resize the custom dialog to the parent size */
+             if (fodInfos->ofnInfos->Flags & (OFN_ENABLETEMPLATE | OFN_ENABLETEMPLATEHANDLE))
+                 GetClientRect(hwnd, &rc);
+             else
+             {
+                 /* our own fake template is zero sized and doesn't have
+                  * children, so there is no need to resize it.
+                  * Picasa depends on it.
+                  */
+                 flags |= SWP_NOSIZE;
+                 SetRectEmpty(&rc);
+             }
+             SetWindowPos(fodInfos->DlgInfos.hwndCustomDlg, HWND_BOTTOM,
+                          0, 0, rc.right, rc.bottom, flags);
+         }
+
       	 FILEDLG95_FillControls(hwnd, wParam, lParam);
 
          SendCustomDlgNotificationMessage(hwnd,CDN_INITDONE);
@@ -3782,6 +3794,8 @@
 {
     BOOL win16look = FALSE;
 
+    TRACE("flags %08lx\n", ofn->Flags);
+
     /* OFN_FILEMUSTEXIST implies OFN_PATHMUSTEXIST */
     if (ofn->Flags & OFN_FILEMUSTEXIST)
         ofn->Flags |= OFN_PATHMUSTEXIST;
@@ -3810,6 +3824,12 @@
 {
     BOOL win16look = FALSE;
[truncated at 1000 lines; 6432 more skipped]