[ros-diffs] [dreimer] 50150: Sync xcopy, iexplore, winhlp32, wordpad and write to wine 1.3.10

dreimer at svn.reactos.org dreimer at svn.reactos.org
Sun Dec 26 16:25:30 UTC 2010


Author: dreimer
Date: Sun Dec 26 16:25:30 2010
New Revision: 50150

URL: http://svn.reactos.org/svn/reactos?rev=50150&view=rev
Log:
Sync xcopy, iexplore, winhlp32, wordpad and write to wine 1.3.10

Added:
    trunk/reactos/base/applications/cmdutils/xcopy/Sr.rc   (with props)
    trunk/reactos/base/applications/write/Sr.rc   (with props)
    trunk/reactos/base/applications/write/Zh.rc   (with props)
Modified:
    trunk/reactos/base/applications/cmdutils/xcopy/It.rc
    trunk/reactos/base/applications/cmdutils/xcopy/Ko.rc
    trunk/reactos/base/applications/cmdutils/xcopy/rsrc.rc
    trunk/reactos/base/applications/cmdutils/xcopy/xcopy.c
    trunk/reactos/base/applications/cmdutils/xcopy/xcopy.h
    trunk/reactos/base/applications/iexplore/iexplore.rc
    trunk/reactos/base/applications/winhlp32/Ko.rc
    trunk/reactos/base/applications/winhlp32/Zh.rc
    trunk/reactos/base/applications/winhlp32/rsrc.rc
    trunk/reactos/base/applications/wordpad/Zh.rc
    trunk/reactos/base/applications/wordpad/wordpad.c
    trunk/reactos/base/applications/write/rsrc.rc

Modified: trunk/reactos/base/applications/cmdutils/xcopy/It.rc
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/cmdutils/xcopy/It.rc?rev=50150&r1=50149&r2=50150&view=diff
==============================================================================
--- trunk/reactos/base/applications/cmdutils/xcopy/It.rc [iso-8859-1] (original)
+++ trunk/reactos/base/applications/cmdutils/xcopy/It.rc [iso-8859-1] Sun Dec 26 16:25:30 2010
@@ -34,7 +34,7 @@
     STRING_SIMCOPY,  "%d file saranno copiati\n"
     STRING_COPY,     "%d file copiato/i\n"
     STRING_QISDIR,   "'%s' è il nome di un file o una cartella\n\
-                     nell'obiettivo?\n\
+                     nella destinazione?\n\
                      (F - File, C - Cartella)\n"
     STRING_SRCPROMPT,"%s? (Sì|No)\n"
     STRING_OVERWRITE,"Sovrascrivere %s? (Sì|No|Tutti)\n"

Modified: trunk/reactos/base/applications/cmdutils/xcopy/Ko.rc
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/cmdutils/xcopy/Ko.rc?rev=50150&r1=50149&r2=50150&view=diff
==============================================================================
--- trunk/reactos/base/applications/cmdutils/xcopy/Ko.rc [iso-8859-1] (original)
+++ trunk/reactos/base/applications/cmdutils/xcopy/Ko.rc [iso-8859-1] Sun Dec 26 16:25:30 2010
@@ -56,7 +56,7 @@
 \n\
 Where:\n\
 \n\
-[/I] 만약 대상이 존재하지 않는 경우 디렉토리로 가정하고 두개나 더 많은 파일을 \n\
+[/I] 만약 대상이 존재하지 않는 경우 디렉토리로 가정하고 두개나 더 많은 파일을\n\
 \t복사\n\
 [/S]  디렉토리하고 하위 디렉토리 복사\n\
 [/E]  빈 디렉토리를 포함해서 디렉토리와 하위 디렉토리 복사\n\

Added: trunk/reactos/base/applications/cmdutils/xcopy/Sr.rc
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/cmdutils/xcopy/Sr.rc?rev=50150&view=auto
==============================================================================
--- trunk/reactos/base/applications/cmdutils/xcopy/Sr.rc (added)
+++ trunk/reactos/base/applications/cmdutils/xcopy/Sr.rc [iso-8859-1] Sun Dec 26 16:25:30 2010
@@ -1,0 +1,141 @@
+/*
+ * XCOPY - Wine-compatible xcopy program
+ * Serbian language support
+ *
+ * Copyright (C) 2007 J. Edmeades
+ * Copyright 2010 Đorđe Vasiljević
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+#include "xcopy.h"
+
+#pragma code_page(65001)
+
+LANGUAGE LANG_SERBIAN, SUBLANG_SERBIAN_CYRILLIC
+
+STRINGTABLE
+{
+    STRING_INVPARMS, "Неисправан број параметара. Користите xcopy /? за помоћ\n"
+    STRING_INVPARM,  "Неисправан параметар „%s“. Користите xcopy /? за помоћ\n"
+    STRING_PAUSE,    "Притисните <enter> да започнете умножавање\n"
+    STRING_SIMCOPY,  "%d датотека/е ће бити уможено\n"
+    STRING_COPY,     "%d датотека/е је умножено\n"
+    STRING_QISDIR,   "Да ли је „%s“ назив датотеке или фасцикла\n\
+                     на одредишту?\n\
+                     (Д - датотека, Ф - фасцикла)\n"
+    STRING_SRCPROMPT,"%s? (Да|Не)\n"
+    STRING_OVERWRITE,"Заменити %s? (Да|Не|Све)\n"
+    STRING_COPYFAIL, "Умножавање „%s“ у „%s“ није успело са r/c %d\n"
+    STRING_OPENFAIL, "Отварање „%s“ датотеке није успело\n"
+    STRING_READFAIL, "Читање „%s“ датотеке није успело\n"
+    STRING_YES_CHAR, "Д"
+    STRING_NO_CHAR,  "Н"
+    STRING_ALL_CHAR, "С"
+    STRING_FILE_CHAR,"Д"
+    STRING_DIR_CHAR, "Ф"
+
+    STRING_HELP,
+"XCOPY — умножава изворне датотеке или гране фасцикли у одредиште\n\
+\n\
+Синтакса:\n\
+XCOPY извор [dest] [/I] [/S] [/Q] [/F] [/L] [/W] [/T] [/N] [/U]\n\
+\t     [/R] [/H] [/C] [/P] [/A] [/M] [/E] [/D] [/Y] [/-Y]\n\
+\n\
+Где:\n\
+\n\
+[/I]  Претпостави фасциклу када одредиште не постоји и када се умножавају две или\n\
+\tвише датотека\n\
+[/S]  Умножи фасцикле и потфасцикле\n\
+[/E]  Умножи фасцикле и потфасцикле заједно с празним\n\
+[/Q]  Не приказуј називе током умножавања.\n\
+[/F]  Прикажи цео извор и одредиште током умножавања\n\
+[/L]  Опонашај радњу приказујући називе који ће бити умножени\n\
+[/W]  Питај пре почињања умножавања\n\
+[/T]  Прави празну структуру фасцикле, али не умножава датотеке\n\
+[/Y]  Потисни упит при замењивању датотека\n\
+[/-Y] Омогући упит при замењивању датотека\n\
+[/P]  Питај за сваку изворну датотеку пре умножавања\n\
+[/N]  Умножи користећи кратке називе\n\
+[/U]  Умножи само оне датотеке које постоје у одредишту\n\
+[/R]  Замени све датотеке које се само читају\n\
+[/H]  Укључи сакривене и системске датотеке у умножавање\n\
+[/C]  Настави иако дође до грешке у умножавању\n\
+[/A]  Умножи само арÑ
ивиране датотеке\n\
+[/M]  Умножи само арÑ
ивиране датотеке и уклони\n\
+\tособине арÑ
иве\n\
+[/D | /D:m-d-y] Умножи нове или измењене датотеке након одређеног датума.\n\
+\t\tАко датум није унесен, умножи само ако је одредиште старије\n\
+\t\tод извора\n\n"
+
+}
+
+LANGUAGE LANG_SERBIAN, SUBLANG_SERBIAN_LATIN
+
+STRINGTABLE
+{
+    STRING_INVPARMS, "Neispravan broj parametara. Koristite xcopy /? za pomoć\n"
+    STRING_INVPARM,  "Neispravan parametar „%s“. Koristite xcopy /? za pomoć\n"
+    STRING_PAUSE,    "Pritisnite <enter> da započnete umnožavanje\n"
+    STRING_SIMCOPY,  "%d datoteka/e će biti umoženo\n"
+    STRING_COPY,     "%d datoteka/e je umnoženo\n"
+    STRING_QISDIR,   "Da li je „%s“ naziv datoteke ili fascikla\n\
+                     na odredištu?\n\
+                     (D - datoteka, F - fascikla)\n"
+    STRING_SRCPROMPT,"%s? (Da|Ne)\n"
+    STRING_OVERWRITE,"Zameniti %s? (Da|Ne|Sve)\n"
+    STRING_COPYFAIL, "Umnožavanje „%s“ u „%s“ nije uspelo sa r/c %d\n"
+    STRING_OPENFAIL, "Otvaranje „%s“ datoteke nije uspelo\n"
+    STRING_READFAIL, "Čitanje „%s“ datoteke nije uspelo\n"
+    STRING_YES_CHAR, "D"
+    STRING_NO_CHAR,  "N"
+    STRING_ALL_CHAR, "S"
+    STRING_FILE_CHAR,"D"
+    STRING_DIR_CHAR, "F"
+
+    STRING_HELP,
+"XCOPY — umnožava izvorne datoteke ili grane fascikli u odredište\n\
+\n\
+Sintaksa:\n\
+XCOPY izvor [dest] [/I] [/S] [/Q] [/F] [/L] [/W] [/T] [/N] [/U]\n\
+\t     [/R] [/H] [/C] [/P] [/A] [/M] [/E] [/D] [/Y] [/-Y]\n\
+\n\
+Gde:\n\
+\n\
+[/I]  Pretpostavi fasciklu kada odredište ne postoji i kada se umnožavaju dve ili\n\
+\tviše datoteka\n\
+[/S]  Umnoži fascikle i potfascikle\n\
+[/E]  Umnoži fascikle i potfascikle zajedno s praznim\n\
+[/Q]  Ne prikazuj nazive tokom umnožavanja.\n\
+[/F]  Prikaži ceo izvor i odredište tokom umnožavanja\n\
+[/L]  Oponašaj radnju prikazujući nazive koji će biti umnoženi\n\
+[/W]  Pitaj pre počinjanja umnožavanja\n\
+[/T]  Pravi praznu strukturu fascikle, ali ne umnožava datoteke\n\
+[/Y]  Potisni upit pri zamenjivanju datoteka\n\
+[/-Y] Omogući upit pri zamenjivanju datoteka\n\
+[/P]  Pitaj za svaku izvornu datoteku pre umnožavanja\n\
+[/N]  Umnoži koristeći kratke nazive\n\
+[/U]  Umnoži samo one datoteke koje postoje u odredištu\n\
+[/R]  Zameni sve datoteke koje se samo čitaju\n\
+[/H]  Uključi sakrivene i sistemske datoteke u umnožavanje\n\
+[/C]  Nastavi iako dođe do greške u umnožavanju\n\
+[/A]  Umnoži samo arhivirane datoteke\n\
+[/M]  Umnoži samo arhivirane datoteke i ukloni\n\
+\tosobine arhive\n\
+[/D | /D:m-d-y] Umnoži nove ili izmenjene datoteke nakon određenog datuma.\n\
+\t\tAko datum nije unesen, umnoži samo ako je odredište starije\n\
+\t\tod izvora\n\n"
+
+}

Propchange: trunk/reactos/base/applications/cmdutils/xcopy/Sr.rc
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: trunk/reactos/base/applications/cmdutils/xcopy/rsrc.rc
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/cmdutils/xcopy/rsrc.rc?rev=50150&r1=50149&r2=50150&view=diff
==============================================================================
--- trunk/reactos/base/applications/cmdutils/xcopy/rsrc.rc [iso-8859-1] (original)
+++ trunk/reactos/base/applications/cmdutils/xcopy/rsrc.rc [iso-8859-1] Sun Dec 26 16:25:30 2010
@@ -43,5 +43,6 @@
 #include "Ro.rc"
 #include "Ru.rc"
 #include "Si.rc"
+#include "Sr.rc"
 #include "Sv.rc"
 #include "Uk.rc"

Modified: trunk/reactos/base/applications/cmdutils/xcopy/xcopy.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/cmdutils/xcopy/xcopy.c?rev=50150&r1=50149&r2=50150&view=diff
==============================================================================
--- trunk/reactos/base/applications/cmdutils/xcopy/xcopy.c [iso-8859-1] (original)
+++ trunk/reactos/base/applications/cmdutils/xcopy/xcopy.c [iso-8859-1] Sun Dec 26 16:25:30 2010
@@ -49,6 +49,8 @@
 WINE_DEFAULT_DEBUG_CHANNEL(xcopy);
 
 /* Prototypes */
+static int XCOPY_ParseCommandLine(WCHAR *suppliedsource,
+                                  WCHAR *supplieddestination, DWORD *flags);
 static int XCOPY_ProcessSourceParm(WCHAR *suppliedsource, WCHAR *stem,
                                    WCHAR *spec, DWORD flags);
 static int XCOPY_ProcessDestParm(WCHAR *supplieddestination, WCHAR *stem,
@@ -108,17 +110,6 @@
     const WCHAR PROMPTSTR1[]  = {'/', 'Y', 0};
     const WCHAR PROMPTSTR2[]  = {'/', 'y', 0};
     const WCHAR COPYCMD[]  = {'C', 'O', 'P', 'Y', 'C', 'M', 'D', 0};
-    const WCHAR EXCLUDE[]  = {'E', 'X', 'C', 'L', 'U', 'D', 'E', ':', 0};
-
-    /*
-     * Parse the command line
-     */
-
-    /* Confirm at least one parameter */
-    if (argc < 2) {
-        XCOPY_wprintf(XCOPY_LoadMessage(STRING_INVPARMS));
-        return RC_INITERROR;
-    }
 
     /* Preinitialize flags based on COPYCMD */
     if (GetEnvironmentVariableW(COPYCMD, copyCmd, MAXSTRING)) {
@@ -135,30 +126,171 @@
        lose                                                                   */
     flags |= OPT_COPYHIDSYS;
 
+    /*
+     * Parse the command line
+     */
+    if ((rc = XCOPY_ParseCommandLine(suppliedsource, supplieddestination,
+                                     &flags)) != RC_OK) {
+        if (rc == RC_HELP)
+            return RC_OK;
+        else
+            return rc;
+    }
+
+    /* Trace out the supplied information */
+    WINE_TRACE("Supplied parameters:\n");
+    WINE_TRACE("Source      : '%s'\n", wine_dbgstr_w(suppliedsource));
+    WINE_TRACE("Destination : '%s'\n", wine_dbgstr_w(supplieddestination));
+
+    /* Extract required information from source specification */
+    rc = XCOPY_ProcessSourceParm(suppliedsource, sourcestem, sourcespec, flags);
+    if (rc != RC_OK) return rc;
+
+    /* Extract required information from destination specification */
+    rc = XCOPY_ProcessDestParm(supplieddestination, destinationstem,
+                               destinationspec, sourcespec, flags);
+    if (rc != RC_OK) return rc;
+
+    /* Trace out the resulting information */
+    WINE_TRACE("Resolved parameters:\n");
+    WINE_TRACE("Source Stem : '%s'\n", wine_dbgstr_w(sourcestem));
+    WINE_TRACE("Source Spec : '%s'\n", wine_dbgstr_w(sourcespec));
+    WINE_TRACE("Dest   Stem : '%s'\n", wine_dbgstr_w(destinationstem));
+    WINE_TRACE("Dest   Spec : '%s'\n", wine_dbgstr_w(destinationspec));
+
+    /* Pause if necessary */
+    if (flags & OPT_PAUSE) {
+        DWORD count;
+        char pausestr[10];
+
+        XCOPY_wprintf(XCOPY_LoadMessage(STRING_PAUSE));
+        ReadFile (GetStdHandle(STD_INPUT_HANDLE), pausestr, sizeof(pausestr),
+                  &count, NULL);
+    }
+
+    /* Now do the hard work... */
+    rc = XCOPY_DoCopy(sourcestem, sourcespec,
+                destinationstem, destinationspec,
+                flags);
+
+    /* Clear up exclude list allocated memory */
+    while (excludeList) {
+        EXCLUDELIST *pos = excludeList;
+        excludeList = excludeList -> next;
+        HeapFree(GetProcessHeap(), 0, pos->name);
+        HeapFree(GetProcessHeap(), 0, pos);
+    }
+
+    /* Finished - print trailer and exit */
+    if (flags & OPT_SIMULATE) {
+        XCOPY_wprintf(XCOPY_LoadMessage(STRING_SIMCOPY), filesCopied);
+    } else if (!(flags & OPT_NOCOPY)) {
+        XCOPY_wprintf(XCOPY_LoadMessage(STRING_COPY), filesCopied);
+    }
+    if (rc == RC_OK && filesCopied == 0) rc = RC_NOFILES;
+    return rc;
+
+}
+
+/* =========================================================================
+   XCOPY_ParseCommandLine - Parses the command line
+   ========================================================================= */
+static BOOL is_whitespace(WCHAR c)
+{
+    return c == ' ' || c == '\t';
+}
+
+static WCHAR *skip_whitespace(WCHAR *p)
+{
+    for (; *p && is_whitespace(*p); p++);
+    return p;
+}
+
+/* Windows XCOPY uses a simplified command line parsing algorithm
+   that lacks the escaped-quote logic of build_argv(), because
+   literal double quotes are illegal in any of its arguments.
+   Example: 'XCOPY "c:\DIR A" "c:DIR B\"' is OK. */
+static int find_end_of_word(const WCHAR *word, WCHAR **end)
+{
+    BOOL in_quotes = 0;
+    const WCHAR *ptr = word;
+    for (;;) {
+        for (; *ptr != '\0' && *ptr != '"' &&
+                 (in_quotes || !is_whitespace(*ptr)); ptr++);
+        if (*ptr == '"') {
+            in_quotes = !in_quotes;
+            ptr++;
+        }
+        /* Odd number of double quotes is illegal for XCOPY */
+        if (in_quotes && *ptr == '\0')
+            return RC_INITERROR;
+        if (*ptr == '\0' || (!in_quotes && is_whitespace(*ptr)))
+            break;
+    }
+    *end = (WCHAR*)ptr;
+    return RC_OK;
+}
+
+/* Remove all double quotes from a word */
+static void strip_quotes(WCHAR *word, WCHAR **end)
+{
+    WCHAR *rp, *wp;
+    for (rp = word, wp = word; *rp != '\0'; rp++) {
+        if (*rp == '"')
+            continue;
+        if (wp < rp)
+            *wp = *rp;
+        wp++;
+    }
+    *wp = '\0';
+    *end = wp;
+}
+
+static int XCOPY_ParseCommandLine(WCHAR *suppliedsource,
+                                  WCHAR *supplieddestination, DWORD *pflags)
+{
+    const WCHAR EXCLUDE[]  = {'E', 'X', 'C', 'L', 'U', 'D', 'E', ':', 0};
+    DWORD flags = *pflags;
+    WCHAR *cmdline, *word, *end, *next;
+    int rc = RC_INITERROR;
+
+    cmdline = _wcsdup(GetCommandLineW());
+    if (cmdline == NULL)
+        return rc;
+
     /* Skip first arg, which is the program name */
-    argvW++;
-
-    while (argc > 1)
+    if ((rc = find_end_of_word(cmdline, &word)) != RC_OK)
+        goto out;
+    word = skip_whitespace(word);
+
+    while (*word)
     {
-        argc--;
-        WINE_TRACE("Processing Arg: '%s'\n", wine_dbgstr_w(*argvW));
+        WCHAR first;
+        if ((rc = find_end_of_word(word, &end)) != RC_OK)
+            goto out;
+
+        next = skip_whitespace(end);
+        first = word[0];
+        *end = '\0';
+        strip_quotes(word, &end);
+        WINE_TRACE("Processing Arg: '%s'\n", wine_dbgstr_w(word));
 
         /* First non-switch parameter is source, second is destination */
-        if (*argvW[0] != '/') {
+        if (first != '/') {
             if (suppliedsource[0] == 0x00) {
-                lstrcpyW(suppliedsource, *argvW);
+                lstrcpyW(suppliedsource, word);
             } else if (supplieddestination[0] == 0x00) {
-                lstrcpyW(supplieddestination, *argvW);
+                lstrcpyW(supplieddestination, word);
             } else {
                 XCOPY_wprintf(XCOPY_LoadMessage(STRING_INVPARMS));
-                return RC_INITERROR;
+                goto out;
             }
         } else {
             /* Process all the switch options
                  Note: Windows docs say /P prompts when dest is created
                        but tests show it is done for each src file
                        regardless of the destination                   */
-            switch (toupper(argvW[0][1])) {
+            switch (toupper(word[1])) {
             case 'I': flags |= OPT_ASSUMEDIR;     break;
             case 'S': flags |= OPT_RECURSIVE;     break;
             case 'Q': flags |= OPT_QUIET;         break;
@@ -180,19 +312,19 @@
             /* E can be /E or /EXCLUDE */
             case 'E': if (CompareStringW(LOCALE_USER_DEFAULT,
                                          NORM_IGNORECASE | SORT_STRINGSORT,
-                                         &argvW[0][1], 8,
+                                         &word[1], 8,
                                          EXCLUDE, -1) == 2) {
-                        if (XCOPY_ProcessExcludeList(&argvW[0][9])) {
+                        if (XCOPY_ProcessExcludeList(&word[9])) {
                           XCOPY_FailMessage(ERROR_INVALID_PARAMETER);
-                          return RC_INITERROR;
+                          goto out;
                         } else flags |= OPT_EXCLUDELIST;
                       } else flags |= OPT_EMPTYDIR | OPT_RECURSIVE;
                       break;
 
             /* D can be /D or /D: */
-            case 'D': if ((argvW[0][2])==':' && isdigit(argvW[0][3])) {
+            case 'D': if (word[2]==':' && isdigit(word[3])) {
                           SYSTEMTIME st;
-                          WCHAR     *pos = &argvW[0][3];
+                          WCHAR     *pos = &word[3];
                           BOOL       isError = FALSE;
                           memset(&st, 0x00, sizeof(st));
 
@@ -211,6 +343,7 @@
                           /* Parse the arg : Day */
                           if (!isError) {
                               st.wYear = _wtol(pos);
+                              while (*pos && isdigit(*pos)) pos++;
                               if (st.wYear < 100) st.wYear+=2000;
                           }
 
@@ -231,83 +364,37 @@
                                          wine_dbgstr_w(datestring), wine_dbgstr_w(timestring));
                           } else {
                               XCOPY_FailMessage(ERROR_INVALID_PARAMETER);
-                              return RC_INITERROR;
+                              goto out;
                           }
                       } else {
                           flags |= OPT_DATENEWER;
                       }
                       break;
 
-            case '-': if (toupper(argvW[0][2])=='Y')
+            case '-': if (toupper(word[2])=='Y')
                           flags &= ~OPT_NOPROMPT; break;
             case '?': XCOPY_wprintf(XCOPY_LoadMessage(STRING_HELP));
-                      return RC_OK;
+                      rc = RC_HELP;
+                      goto out;
             default:
-                WINE_TRACE("Unhandled parameter '%s'\n", wine_dbgstr_w(*argvW));
-                XCOPY_wprintf(XCOPY_LoadMessage(STRING_INVPARM), *argvW);
-                return RC_INITERROR;
-            }
-        }
-        argvW++;
+                WINE_TRACE("Unhandled parameter '%s'\n", wine_dbgstr_w(word));
+                XCOPY_wprintf(XCOPY_LoadMessage(STRING_INVPARM), word);
+                goto out;
+            }
+        }
+        word = next;
     }
 
     /* Default the destination if not supplied */
     if (supplieddestination[0] == 0x00)
         lstrcpyW(supplieddestination, wchr_dot);
 
-    /* Trace out the supplied information */
-    WINE_TRACE("Supplied parameters:\n");
-    WINE_TRACE("Source      : '%s'\n", wine_dbgstr_w(suppliedsource));
-    WINE_TRACE("Destination : '%s'\n", wine_dbgstr_w(supplieddestination));
-
-    /* Extract required information from source specification */
-    rc = XCOPY_ProcessSourceParm(suppliedsource, sourcestem, sourcespec, flags);
-    if (rc != RC_OK) return rc;
-
-    /* Extract required information from destination specification */
-    rc = XCOPY_ProcessDestParm(supplieddestination, destinationstem,
-                               destinationspec, sourcespec, flags);
-    if (rc != RC_OK) return rc;
-
-    /* Trace out the resulting information */
-    WINE_TRACE("Resolved parameters:\n");
-    WINE_TRACE("Source Stem : '%s'\n", wine_dbgstr_w(sourcestem));
-    WINE_TRACE("Source Spec : '%s'\n", wine_dbgstr_w(sourcespec));
-    WINE_TRACE("Dest   Stem : '%s'\n", wine_dbgstr_w(destinationstem));
-    WINE_TRACE("Dest   Spec : '%s'\n", wine_dbgstr_w(destinationspec));
-
-    /* Pause if necessary */
-    if (flags & OPT_PAUSE) {
-        DWORD count;
-        char pausestr[10];
-
-        XCOPY_wprintf(XCOPY_LoadMessage(STRING_PAUSE));
-        ReadFile (GetStdHandle(STD_INPUT_HANDLE), pausestr, sizeof(pausestr),
-                  &count, NULL);
-    }
-
-    /* Now do the hard work... */
-    rc = XCOPY_DoCopy(sourcestem, sourcespec,
-                destinationstem, destinationspec,
-                flags);
-
-    /* Clear up exclude list allocated memory */
-    while (excludeList) {
-        EXCLUDELIST *pos = excludeList;
-        excludeList = excludeList -> next;
-        HeapFree(GetProcessHeap(), 0, pos->name);
-        HeapFree(GetProcessHeap(), 0, pos);
-    }
-
-    /* Finished - print trailer and exit */
-    if (flags & OPT_SIMULATE) {
-        XCOPY_wprintf(XCOPY_LoadMessage(STRING_SIMCOPY), filesCopied);
-    } else if (!(flags & OPT_NOCOPY)) {
-        XCOPY_wprintf(XCOPY_LoadMessage(STRING_COPY), filesCopied);
-    }
-    if (rc == RC_OK && filesCopied == 0) rc = RC_NOFILES;
+    *pflags = flags;
+    rc = RC_OK;
+
+ out:
+    free(cmdline);
     return rc;
-
 }
 
 
@@ -432,8 +519,10 @@
     if (attribs == INVALID_FILE_ATTRIBUTES) {
 
         /* If /I supplied and wildcard copy, assume directory */
-        if (flags & OPT_ASSUMEDIR &&
-            (wcschr(srcspec, '?') || wcschr(srcspec, '*'))) {
+        /* Also if destination ends with backslash */
+        if ((flags & OPT_ASSUMEDIR &&
+            (wcschr(srcspec, '?') || wcschr(srcspec, '*'))) ||
+            (supplieddestination[lstrlenW(supplieddestination)-1] == '\\')) {
 
             isDir = TRUE;
 

Modified: trunk/reactos/base/applications/cmdutils/xcopy/xcopy.h
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/cmdutils/xcopy/xcopy.h?rev=50150&r1=50149&r2=50150&view=diff
==============================================================================
--- trunk/reactos/base/applications/cmdutils/xcopy/xcopy.h [iso-8859-1] (original)
+++ trunk/reactos/base/applications/cmdutils/xcopy/xcopy.h [iso-8859-1] Sun Dec 26 16:25:30 2010
@@ -26,6 +26,7 @@
 #define RC_CTRLC      2
 #define RC_INITERROR  4
 #define RC_WRITEERROR 5
+#define RC_HELP       6
 
 #define OPT_ASSUMEDIR    0x00000001
 #define OPT_RECURSIVE    0x00000002

Modified: trunk/reactos/base/applications/iexplore/iexplore.rc
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/iexplore/iexplore.rc?rev=50150&r1=50149&r2=50150&view=diff
==============================================================================
--- trunk/reactos/base/applications/iexplore/iexplore.rc [iso-8859-1] (original)
+++ trunk/reactos/base/applications/iexplore/iexplore.rc [iso-8859-1] Sun Dec 26 16:25:30 2010
@@ -16,13 +16,13 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
  */
 
-#define WINE_OLESELFREGISTER
-#define WINE_FILEDESCRIPTION_STR "Wine core exe"
+#define WINE_FILEDESCRIPTION_STR "Wine Internet Explorer"
 #define WINE_FILENAME_STR "iexplore.exe"
 #define WINE_FILEVERSION 6,0,2900,2180
 #define WINE_FILEVERSION_STR "6.0.2900.2180"
 #define WINE_PRODUCTVERSION 6,0,2900,2180
 #define WINE_PRODUCTVERSION_STR "6.0.2900.2180"
+#define WINE_EXTRAVALUES VALUE "OLESelfRegister",""
 
 #include "wine/wine_common_ver.rc"
 

Modified: trunk/reactos/base/applications/winhlp32/Ko.rc
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/winhlp32/Ko.rc?rev=50150&r1=50149&r2=50150&view=diff
==============================================================================
--- trunk/reactos/base/applications/winhlp32/Ko.rc [iso-8859-1] (original)
+++ trunk/reactos/base/applications/winhlp32/Ko.rc [iso-8859-1] Sun Dec 26 16:25:30 2010
@@ -21,49 +21,51 @@
 
 #include "winhelp_res.h"
 
+#pragma code_page(65001)
+
 LANGUAGE LANG_KOREAN, SUBLANG_DEFAULT
 
 /* Menu */
 
 MAIN_MENU MENU
 {
- POPUP "ÆÄÀÏ(&F)" {
-  MENUITEM "¿­±â(&O)...", MNID_FILE_OPEN
+ POPUP "파일(&F)" {
+  MENUITEM "열기(&O)...", MNID_FILE_OPEN
   MENUITEM SEPARATOR
-  MENUITEM "Àμâ(&P)", MNID_FILE_PRINT
-  MENUITEM "ÇÁ¸°ÅÍ ¼³Á¤(&S)...", MNID_FILE_SETUP
+  MENUITEM "인쇄(&P)", MNID_FILE_PRINT
+  MENUITEM "프린터 설정(&S)...", MNID_FILE_SETUP
    MENUITEM SEPARATOR
-  MENUITEM "Á¾·á(&E)", MNID_FILE_EXIT
+  MENUITEM "ì¢
료(&E)", MNID_FILE_EXIT
  }
- POPUP "ÆíÁý(&E)" {
-   MENUITEM "º¹»ç(&C)...", MNID_EDIT_COPYDLG
+ POPUP "편집(&E)" {
+   MENUITEM "복사(&C)...", MNID_EDIT_COPYDLG
    MENUITEM SEPARATOR
-   MENUITEM "ÁÖ¼®(&A)...", MNID_EDIT_ANNOTATE
+   MENUITEM "주석(&A)...", MNID_EDIT_ANNOTATE
  }
- POPUP "Ã¥°¥ÇÇ(&B)" {
-   MENUITEM "Á¤ÀÇ(&D)...", MNID_BKMK_DEFINE
+ POPUP "ì±
갈피(&B)" {
+   MENUITEM "정의(&D)...", MNID_BKMK_DEFINE
  }
- POPUP "¿É¼Ç(&O)" {
-   POPUP	"°¡´ÉÇÑ µµ¿ò¸» º¸À̱â"
+ POPUP "옵ì
˜(&O)" {
+   POPUP	"가능한 도움말 보이기"
    BEGIN
-     MENUITEM "񃧯",	MNID_OPTS_HELP_DEFAULT
-     MENUITEM "º¸À̱â",	MNID_OPTS_HELP_VISIBLE
-     MENUITEM "º¸¿©ÁÖÁö ¾Ê±â",	MNID_OPTS_HELP_NONVISIBLE
+     MENUITEM "기본",	MNID_OPTS_HELP_DEFAULT
+     MENUITEM "보이기",	MNID_OPTS_HELP_VISIBLE
+     MENUITEM "보여주지 않기",	MNID_OPTS_HELP_NONVISIBLE
   END
-  MENUITEM "±â·Ï",		MNID_OPTS_HISTORY
-  POPUP    "±Û²Ã"
+  MENUITEM "기록",		MNID_OPTS_HISTORY
+  POPUP    "글꼴"
   BEGIN
-    MENUITEM "ÀÛ°Ô",		MNID_OPTS_FONTS_SMALL
-    MENUITEM "º¸Åë",    	MNID_OPTS_FONTS_NORMAL
-    MENUITEM "Å©°Ô",     	MNID_OPTS_FONTS_LARGE
+    MENUITEM "작게",		MNID_OPTS_FONTS_SMALL
+    MENUITEM "보통",    	MNID_OPTS_FONTS_NORMAL
+    MENUITEM "크게",     	MNID_OPTS_FONTS_LARGE
   END
-  MENUITEM "½Ã½ºÅÛ »ö»ó »ç¿ë",	MNID_OPTS_SYSTEM_COLORS
+  MENUITEM "시스í
œ 색상 사용",	MNID_OPTS_SYSTEM_COLORS
  }
- POPUP "µµ¿ò¸»(&H)" {
-   MENUITEM "µµ¿ò¸» »ç¿ë¹ý(&O)", MNID_HELP_HELPON
-   MENUITEM "Ç×»ó À§(&T)", MNID_HELP_HELPTOP
+ POPUP "도움말(&H)" {
+   MENUITEM "도움말 사용법(&O)", MNID_HELP_HELPON
+   MENUITEM "항상 위(&T)", MNID_HELP_HELPTOP
    MENUITEM SEPARATOR
-   MENUITEM "Á¤º¸(&I)...", MNID_HELP_ABOUT
+   MENUITEM "Wine 도움말 정보(&I)...", MNID_HELP_ABOUT
  }
 }
 
@@ -71,7 +73,7 @@
 IDD_INDEX DIALOG 0, 0, 200, 190
 STYLE DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
 FONT 9, "MS Shell Dlg"
-CAPTION "À妽º"
+CAPTION "인덱스"
 {
     LISTBOX IDC_INDEXLIST, 10, 10, 180, 150, LBS_NOINTEGRALHEIGHT | WS_VSCROLL | WS_BORDER
 }
@@ -79,50 +81,50 @@
 IDD_SEARCH DIALOG 0, 0, 200, 190
 STYLE DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
 FONT 9, "MS Shell Dlg"
-CAPTION "ã±â"
+CAPTION "찾기"
 {
-    LTEXT  "¾ÆÁ÷ ±¸ÇöµÇÁö ¾ÊÀ½", -1, 10, 10, 180, 150
+    LTEXT  "아직 구현되지 않음", -1, 10, 10, 180, 150
 }
 
 /* Strings */
 
 STRINGTABLE
 {
-STID_WINE_HELP, 	"Wine µµ¿ò¸»"
-STID_WHERROR, 		"¿¡·¯"
-STID_WARNING,  		"°æ°í"
-STID_INFO,  		"Á¤º¸"
-STID_NOT_IMPLEMENTED, 	"±¸ÇöµÇÁö ¾Ê¾ÒÀ½"
-STID_HLPFILE_ERROR_s, 	"µµ¿ò¸» ÆÄÀÏ `%s'¸¦ Àд µµÁß ¿À·ù ¹ß»ý"
-STID_INDEX, 		"¸ñÂ÷(&C)"
-STID_CONTENTS,		"¿ä¾à"
-STID_BACK, 		"µÚ·Î(&B)"
-STID_ALL_FILES, 	"¸ðµç ÆÄÀÏ (*.*)"
-STID_HELP_FILES_HLP, 	"µµ¿ò¸» ÆÄÀÏ (*.hlp)"
-STID_FILE_NOT_FOUND_s	"%sÀ» ãÀ» ¼ö ¾ø½À´Ï´Ù'. ÀÌ ÆÄÀÏÀ» Á÷Á¢ ã°Ú½À´Ï±î?"
-STID_NO_RICHEDIT	"richedit  ±¸ÇöÀ» ãÀ»¼ö ¾÷½À´Ï´Ù.. Ãë¼ÒÁß"
-STID_PSH_INDEX,		"µµ¿ò¸» ¸ñÂ÷: "
+STID_WINE_HELP, 	"Wine 도움말"
+STID_WHERROR, 		"에러"
+STID_WARNING,  		"경고"
+STID_INFO,  		"ì •ë³´"
+STID_NOT_IMPLEMENTED, 	"구현되지 않았음"
+STID_HLPFILE_ERROR_s, 	"도움말 파일 `%s'를 읽는 도중 오류 발생"
+STID_INDEX, 		"목차(&C)"
+STID_CONTENTS,		"요약"
+STID_BACK, 		"뒤로(&B)"
+STID_ALL_FILES, 	"모든 파일 (*.*)"
+STID_HELP_FILES_HLP, 	"도움말 파일 (*.hlp)"
+STID_FILE_NOT_FOUND_s	"%s을 찾을 수 없습니다'. 이 파일을 직접 찾겠습니까?"
+STID_NO_RICHEDIT	"richedit  구현을 찾을수 ì—
습니다.. 취소중"
+STID_PSH_INDEX,		"도움말 목차: "
 }
 
 CONTEXT_MENU MENU
 BEGIN
 	POPUP ""
 	BEGIN
-		MENUITEM "ÁÖ¼®...",       MNID_CTXT_ANNOTATE
-		MENUITEM "º¹»ç",                MNID_CTXT_COPY
-		MENUITEM "Àμâ...",            MNID_CTXT_PRINT
-		POPUP    "±Û²Ã"
+		MENUITEM "주석...",       MNID_CTXT_ANNOTATE
+		MENUITEM "복사",                MNID_CTXT_COPY
+		MENUITEM "인쇄...",            MNID_CTXT_PRINT
+		POPUP    "글꼴"
 		BEGIN
-			MENUITEM "Á¼°Ô",       MNID_CTXT_FONTS_SMALL
-			MENUITEM "º¸Åë",      MNID_CTXT_FONTS_NORMAL
-			MENUITEM "³Ð°Ô",       MNID_CTXT_FONTS_LARGE
+			MENUITEM "좁게",       MNID_CTXT_FONTS_SMALL
+			MENUITEM "보통",      MNID_CTXT_FONTS_NORMAL
+			MENUITEM "넓게",       MNID_CTXT_FONTS_LARGE
 		END
-		POPUP   "µµ¿ò¸»  Ç×»ó º¸À̱â"
+		POPUP   "도움말  항상 보이기"
 		BEGIN
-			MENUITEM "񃧯",     MNID_CTXT_HELP_DEFAULT
-			MENUITEM "º¸À̱â",     MNID_CTXT_HELP_VISIBLE
-			MENUITEM "¾È º¸À̱â", MNID_CTXT_HELP_NONVISIBLE
+			MENUITEM "기본",     MNID_CTXT_HELP_DEFAULT
+			MENUITEM "보이기",     MNID_CTXT_HELP_VISIBLE
+			MENUITEM "안 보이기", MNID_CTXT_HELP_NONVISIBLE
 		END
-		MENUITEM "½Ã½ºÅÛ »ö»ó »ç¿ë",   MNID_CTXT_SYSTEM_COLORS
+		MENUITEM "시스í
œ 색상 사용",   MNID_CTXT_SYSTEM_COLORS
 	END
 END

Modified: trunk/reactos/base/applications/winhlp32/Zh.rc
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/winhlp32/Zh.rc?rev=50150&r1=50149&r2=50150&view=diff
==============================================================================
--- trunk/reactos/base/applications/winhlp32/Zh.rc [iso-8859-1] (original)
+++ trunk/reactos/base/applications/winhlp32/Zh.rc [iso-8859-1] Sun Dec 26 16:25:30 2010
@@ -4,6 +4,7 @@
  *
  * Copyright 2002 liuspider <liuspider at yahoo.com>
  * Copyright 2008 Hongbo Ni <hongbo.at.njstar.com>
+ * Copyright 2010 Cheer Xiao <xiaqqaix.at.gmail.com>
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -37,7 +38,7 @@
   MENUITEM "打印(&P)", MNID_FILE_PRINT
   MENUITEM "打印机设置(&S)...", MNID_FILE_SETUP
    MENUITEM SEPARATOR
-  MENUITEM "退出(&E)", MNID_FILE_EXIT
+  MENUITEM "退出(&X)", MNID_FILE_EXIT
  }
  POPUP "编辑(&E)" {
    MENUITEM "复制(&C)...", MNID_EDIT_COPYDLG
@@ -48,7 +49,7 @@
    MENUITEM "定义(&D)...", MNID_BKMK_DEFINE
  }
  POPUP "选项(&O)" {
-   POPUP	"显示帮助"
+   POPUP	"总是显示帮助"
    BEGIN
      MENUITEM "默认",	MNID_OPTS_HELP_DEFAULT
      MENUITEM "显示",	MNID_OPTS_HELP_VISIBLE
@@ -67,8 +68,24 @@
    MENUITEM "如何使用帮助(&O)", MNID_HELP_HELPON
    MENUITEM "总是在最前面(&T)", MNID_HELP_HELPTOP
    MENUITEM SEPARATOR
-   MENUITEM "资料信息(&I)...", MNID_HELP_ABOUT
+   MENUITEM "å
³äºŽ Wine 帮助(&I)...", MNID_HELP_ABOUT
  }
+}
+
+IDD_INDEX DIALOG 0, 0, 200, 190
+STYLE DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
+FONT 8, "MS Shell Dlg"
+CAPTION "索引"
+{
+    LISTBOX IDC_INDEXLIST, 10, 10, 180, 150, LBS_NOINTEGRALHEIGHT | WS_VSCROLL | WS_BORDER
+}
+
+IDD_SEARCH DIALOG 0, 0, 200, 190
+STYLE DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
+FONT 8, "MS Shell Dlg"
+CAPTION "搜索"
+{
+    LTEXT  "尚未实现", -1, 10, 10, 180, 150
 }
 
 /* Strings */
@@ -79,16 +96,39 @@
 STID_WARNING,  		"警告"
 STID_INFO,  		"信息"
 STID_NOT_IMPLEMENTED, 	"未实现"
-STID_HLPFILE_ERROR_s, 	"读å
¥å¸®åŠ©æ–‡ä»¶ ‘%s’ 时发生错误"
-STID_INDEX, 		"å†
容(&C)"
+STID_HLPFILE_ERROR_s, 	"读å
¥å¸®åŠ©æ–‡ä»¶â€œ%s”时发生错误"
+STID_INDEX, 		"索引(&I)"
 STID_CONTENTS,		"概要"
 STID_BACK, 		"返回(&B)"
 STID_ALL_FILES, 	"所有文件 (*.*)"
 STID_HELP_FILES_HLP, 	"帮助文件 (*.hlp)"
-STID_FILE_NOT_FOUND_s	"不能打开文件 '%s'. 你想要自己找这个文件吗?"
-STID_NO_RICHEDIT	"找不到 richedit... 终止"
-STID_PSH_INDEX,		"帮助å†
容: "
+STID_FILE_NOT_FOUND_s	"找不到文件“%s”。 你想要自己找这个文件吗?"
+STID_NO_RICHEDIT	"找不到 richedit 的实现……终止"
+STID_PSH_INDEX,		"帮助主题:"
 }
+
+CONTEXT_MENU MENU
+BEGIN
+	POPUP ""
+	BEGIN
+		MENUITEM "注释...",       MNID_CTXT_ANNOTATE
+		MENUITEM "复制",          MNID_CTXT_COPY
+		MENUITEM "打印...",       MNID_CTXT_PRINT
+		POPUP    "字体"
+		BEGIN
+			MENUITEM "小号",      MNID_CTXT_FONTS_SMALL
+			MENUITEM "中号",      MNID_CTXT_FONTS_NORMAL
+			MENUITEM "大号",      MNID_CTXT_FONTS_LARGE
+		END
+		POPUP   "总是显示帮助"
+		BEGIN
+			MENUITEM "默认",     MNID_CTXT_HELP_DEFAULT
+			MENUITEM "显示",     MNID_CTXT_HELP_VISIBLE
+			MENUITEM "不显示", MNID_CTXT_HELP_NONVISIBLE
+		END
+		MENUITEM "使用系统颜色",   MNID_CTXT_SYSTEM_COLORS
+	END
+END
 
 LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_TRADITIONAL
 

Modified: trunk/reactos/base/applications/winhlp32/rsrc.rc
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/winhlp32/rsrc.rc?rev=50150&r1=50149&r2=50150&view=diff
==============================================================================
--- trunk/reactos/base/applications/winhlp32/rsrc.rc [iso-8859-1] (original)
+++ trunk/reactos/base/applications/winhlp32/rsrc.rc [iso-8859-1] Sun Dec 26 16:25:30 2010
@@ -30,7 +30,6 @@
 #include "Es.rc"
 #include "Fi.rc"
 #include "Hu.rc"
-#include "Ko.rc"
 #include "No.rc"
 #include "Pl.rc"
 #include "Sk.rc"
@@ -44,6 +43,7 @@
 #include "He.rc"
 #include "It.rc"
 #include "Ja.rc"
+#include "Ko.rc"
 #include "Lt.rc"
 #include "Nl.rc"
 #include "Pt.rc"

Modified: trunk/reactos/base/applications/wordpad/Zh.rc
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/wordpad/Zh.rc?rev=50150&r1=50149&r2=50150&view=diff
==============================================================================
--- trunk/reactos/base/applications/wordpad/Zh.rc [iso-8859-1] (original)
+++ trunk/reactos/base/applications/wordpad/Zh.rc [iso-8859-1] Sun Dec 26 16:25:30 2010
@@ -61,7 +61,7 @@
         MENUITEM SEPARATOR
         POPUP "å
¶ä»–(&X)"
         BEGIN
-            MENUITEM "选中信息(&I)", ID_EDIT_SELECTIONINFO
+            MENUITEM "选中信息(&I)", ID_EDIT_SELECTIONINFO /* 准确性å¾
è®® */
             MENUITEM "文字格式(&F)", ID_EDIT_CHARFORMAT
             MENUITEM "默认格式(&D)", ID_EDIT_DEFCHARFORMAT
             MENUITEM "段落格式(&H)", ID_EDIT_PARAFORMAT
@@ -118,7 +118,7 @@
     BEGIN
         MENUITEM "黑色",      ID_COLOR_BLACK /* 未找到“标准译名表” */
         MENUITEM "栗色",     ID_COLOR_MAROON
-        MENUITEM "调和绿",      ID_COLOR_GREEN
+        MENUITEM "绿色",      ID_COLOR_GREEN
         MENUITEM "橄榄色"       ID_COLOR_OLIVE
         MENUITEM "藏青"        ID_COLOR_NAVY
         MENUITEM "紫色"      ID_COLOR_PURPLE
@@ -126,7 +126,7 @@
         MENUITEM "灰色"        ID_COLOR_GRAY
         MENUITEM "银色"      ID_COLOR_SILVER
         MENUITEM "红色"         ID_COLOR_RED
-        MENUITEM "绿色"        ID_COLOR_LIME
+        MENUITEM "青柠色"        ID_COLOR_LIME
         MENUITEM "黄色"      ID_COLOR_YELLOW
         MENUITEM "蓝色"        ID_COLOR_BLUE
         MENUITEM "洋红"     ID_COLOR_FUCHSIA /* =magenta? */

Modified: trunk/reactos/base/applications/wordpad/wordpad.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/wordpad/wordpad.c?rev=50150&r1=50149&r2=50150&view=diff
==============================================================================
--- trunk/reactos/base/applications/wordpad/wordpad.c [iso-8859-1] (original)
+++ trunk/reactos/base/applications/wordpad/wordpad.c [iso-8859-1] Sun Dec 26 16:25:30 2010
@@ -162,7 +162,7 @@
     button.iBitmap = nImage;
     button.idCommand = nCommand;
     button.fsState = TBSTATE_ENABLED;
-    button.fsStyle = TBSTYLE_BUTTON;
+    button.fsStyle = BTNS_BUTTON;
     button.dwData = 0;
     button.iString = -1;
     SendMessageW(hwndToolBar, TB_ADDBUTTONSW, 1, (LPARAM)&button);
@@ -176,7 +176,7 @@
     button.iBitmap = -1;
     button.idCommand = 0;
     button.fsState = 0;
-    button.fsStyle = TBSTYLE_SEP;
+    button.fsStyle = BTNS_SEP;
     button.dwData = 0;
     button.iString = -1;
     SendMessageW(hwndToolBar, TB_ADDBUTTONSW, 1, (LPARAM)&button);
@@ -1818,7 +1818,7 @@
     if(!SendMessageW(hReBarWnd, RB_SETBARINFO, 0, (LPARAM)&rbi))
         return -1;
 
-    hToolBarWnd = CreateToolbarEx(hReBarWnd, CCS_NOPARENTALIGN|CCS_NOMOVEY|WS_VISIBLE|WS_CHILD|TBSTYLE_TOOLTIPS|TBSTYLE_BUTTON,
+    hToolBarWnd = CreateToolbarEx(hReBarWnd, CCS_NOPARENTALIGN|CCS_NOMOVEY|WS_VISIBLE|WS_CHILD|TBSTYLE_TOOLTIPS|BTNS_BUTTON,
       IDC_TOOLBAR,
       1, hInstance, IDB_TOOLBAR,
       NULL, 0,
@@ -1880,7 +1880,7 @@
     SendMessageW(hReBarWnd, RB_INSERTBAND, -1, (LPARAM)&rbb);
 
     hFormatBarWnd = CreateToolbarEx(hReBarWnd,
-         CCS_NOPARENTALIGN | CCS_NOMOVEY | WS_VISIBLE | TBSTYLE_TOOLTIPS | TBSTYLE_BUTTON,
+         CCS_NOPARENTALIGN | CCS_NOMOVEY | WS_VISIBLE | TBSTYLE_TOOLTIPS | BTNS_BUTTON,
          IDC_FORMATBAR, 8, hInstance, IDB_FORMATBAR, NULL, 0, 16, 16, 16, 16, sizeof(TBBUTTON));
 
     AddButton(hFormatBarWnd, 0, ID_FORMAT_BOLD);

Added: trunk/reactos/base/applications/write/Sr.rc
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/write/Sr.rc?rev=50150&view=auto
==============================================================================
--- trunk/reactos/base/applications/write/Sr.rc (added)
+++ trunk/reactos/base/applications/write/Sr.rc [iso-8859-1] Sun Dec 26 16:25:30 2010
@@ -1,0 +1,38 @@
+/*
+ * Serbian language support
+ *
+ * Copyright (C) 2007 Mikolaj Zalewski
+ * Copyright 2010 Đorđe Vasiljević
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+#include "resources.h"
+
+#pragma code_page(65001)
+
+LANGUAGE LANG_SERBIAN, SUBLANG_SERBIAN_CYRILLIC
+
+STRINGTABLE
+{
+    IDS_FAILED, "Покретање Писанке није успело"
+}
+
+LANGUAGE LANG_SERBIAN, SUBLANG_SERBIAN_LATIN
+
+STRINGTABLE
+{
+    IDS_FAILED, "Pokretanje Pisanke nije uspelo"
+}

Propchange: trunk/reactos/base/applications/write/Sr.rc
------------------------------------------------------------------------------
    svn:eol-style = native

Added: trunk/reactos/base/applications/write/Zh.rc
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/write/Zh.rc?rev=50150&view=auto
==============================================================================
--- trunk/reactos/base/applications/write/Zh.rc (added)
+++ trunk/reactos/base/applications/write/Zh.rc [iso-8859-1] Sun Dec 26 16:25:30 2010
@@ -1,0 +1,31 @@
+/*
+ * Simplified Chinese language support
+ *
+ * Copyright (C) 2010 Cheer Xiao <xiaqqaix.at.gmail.com>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+#include "resources.h"
+
+/* Chinese text is encoded in UTF-8 */
+#pragma code_page(65001)
+
+LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED
+
+STRINGTABLE
+{
+    IDS_FAILED, "启动写字板失败"
+}

Propchange: trunk/reactos/base/applications/write/Zh.rc
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: trunk/reactos/base/applications/write/rsrc.rc
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/write/rsrc.rc?rev=50150&r1=50149&r2=50150&view=diff
==============================================================================
--- trunk/reactos/base/applications/write/rsrc.rc [iso-8859-1] (original)
+++ trunk/reactos/base/applications/write/rsrc.rc [iso-8859-1] Sun Dec 26 16:25:30 2010
@@ -39,4 +39,6 @@
 #include "Ro.rc"
 #include "Ru.rc"
 #include "Si.rc"
+#include "Sr.rc"
 #include "Uk.rc"
+#include "Zh.rc"




More information about the Ros-diffs mailing list