diff --git a/reactos/base/applications/cmdutils/xcopy/Pt.rc b/reactos/base/applications/cmdutils/xcopy/Pt.rc new file mode 100644 index 00000000000..47e9609bd7f --- /dev/null +++ b/reactos/base/applications/cmdutils/xcopy/Pt.rc @@ -0,0 +1,79 @@ +/* + * XCOPY - Wine-compatible xcopy program + * Portuguese language support + * + * Copyright (C) 2008 Ricardo Filipe + * + * 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_PORTUGUESE, SUBLANG_NEUTRAL + +STRINGTABLE +{ + STRING_INVPARMS, "Número de parâmetros inválido - Use xcopy /? para ajuda\n" + STRING_INVPARM, "Parâmetro inválido '%s' - Use xcopy /? para ajuda\n" + STRING_PAUSE, "Carregue para iniciar cópia\n" + STRING_SIMCOPY, "%d ficheiro(s) seriam copiados\n" + STRING_COPY, "%d ficheiro(s) copiados\n" + STRING_QISDIR, "'%s' é um ficheiro ou directório\n" \ + "no alvo?\n" \ + "(F - Ficheiro, D - Directório)\n" + STRING_SRCPROMPT,"%s? (Yes|No)\n" + STRING_OVERWRITE,"Reescrever %s? (Yes|No|All)\n" + STRING_COPYFAIL, "Cópia de '%s' para '%s' falhou com r/c %d\n" + STRING_OPENFAIL, "Falhou ao abrir '%s'\n" + STRING_READFAIL, "Falhou a ler '%s'\n" + STRING_YES_CHAR, "Y" + STRING_NO_CHAR, "N" + STRING_ALL_CHAR, "A" + STRING_FILE_CHAR,"F" + STRING_DIR_CHAR, "D" + + STRING_HELP, +"XCOPY - Copia ficheiros ou directórios para um destino\n\ +\n\ +Sintaxe:\n\ +XCOPY source [dest] [/I] [/S] [/Q] [/F] [/L] [/W] [/T] [/N] [/U]\n\ +\t [/R] [/H] [/C] [/P] [/A] [/M] [/E] [/D] [/Y] [/-Y]\n\ +\n\ +Onde:\n\ +\n\ +[/I] Assume directório se o destino não existe e está a copiar 2 ou\n\ +\tmais ficheiros\n\ +[/S] Copiar directórios e subdirectórios\n\ +[/E] Copiar directórios e subdirectórios, incluindo os vazios\n\ +[/Q] Não mostrar nomes durante a cópia, ie quiet.\n\ +[/F] Mostrar por completo os nomes de fonte e destino durante a cópia\n\ +[/L] Simular a operação, mostrando os nomes que seriam copiados\n\ +[/W] Alerta antes de iniciar a operação de cópia\n\ +[/T] Cria a estrutura de directórios mas não copia ficheiros\n\ +[/Y] Suprimir alertas quando reescreve ficheiros\n\ +[/-Y] Alertar quando reescreve ficheiros\n\ +[/P] Alertar antes de cada ficheiros ser copiado\n\ +[/N] Copiar usando nomes pequenos\n\ +[/U] Copiar apenas ficheiros que já existem no destino\n\ +[/R] Reescrever quaisquer ficheiros apenas de leitura\n\ +[/H] Incluir ficheiros ocultos e de sistema na cópia\n\ +[/C] Continuar mesmo que ocorra um erro durante a cópia\n\ +[/A] Copiar apenas ficheiros com atributo de arquivo\n\ +[/M] Copiar apenas ficheiros com atributo de arquivo, removendo\n\ +\to atributo de arquivo\n\ +[/D | /D:m-d-y] Copiar novos ficheiros ou os alterados após a data fornecida\n\ +\t\tSe nenhuma data for fornecida, apenas copiar se o destino for mais antigo\n\ +\t\tque a fonte\n\n" + +} diff --git a/reactos/base/applications/cmdutils/xcopy/rsrc.rc b/reactos/base/applications/cmdutils/xcopy/rsrc.rc index e298f197525..a62f34cf19a 100644 --- a/reactos/base/applications/cmdutils/xcopy/rsrc.rc +++ b/reactos/base/applications/cmdutils/xcopy/rsrc.rc @@ -33,5 +33,6 @@ LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL #include "Nl.rc" #include "No.rc" #include "Pl.rc" +#include "Pt.rc" #include "Ru.rc" #include "Si.rc" diff --git a/reactos/base/applications/wordpad/Ko.rc b/reactos/base/applications/wordpad/Ko.rc index 9fcb72512ea..ac246eba81c 100644 --- a/reactos/base/applications/wordpad/Ko.rc +++ b/reactos/base/applications/wordpad/Ko.rc @@ -59,19 +59,19 @@ BEGIN MENUITEM "¹®ÀÚ Çü½Ä(&F)", ID_EDIT_CHARFORMAT MENUITEM "Á¤ÀÇµÈ ¹®ÀÚ¿­ Çü½Ä(&D)", ID_EDIT_DEFCHARFORMAT MENUITEM "´Ü¶ô Çü½Ä(&H)", ID_EDIT_PARAFORMAT - MENUITEM "ÅؽºÆ® ¾ò±â(&G)", ID_EDIT_GETTEXT + MENUITEM "¹®ÀÚ¿­ ¾ò±â(&G)", ID_EDIT_GETTEXT END END POPUP "º¸±â(&V)" BEGIN MENUITEM "µµ±¸¹Ù(&T)", ID_TOGGLE_TOOLBAR MENUITEM "Çü½Ä¹Ù(&F)", ID_TOGGLE_FORMATBAR - MENUITEM "&Ruler", ID_TOGGLE_RULER + MENUITEM "´«±Ý¹Ù(&R)", ID_TOGGLE_RULER MENUITEM "»óŹÙ(&S)", ID_TOGGLE_STATUSBAR MENUITEM SEPARATOR MENUITEM " ¿É¼Ç(&O)...", ID_VIEWPROPERTIES END - POPUP "Áý¾î³Ö±â(&I)" + POPUP "»ðÀÔ(&I)" BEGIN MENUITEM "³¯Â¥¿Í ½Ã°£(&D)...", ID_DATETIME END @@ -89,7 +89,7 @@ BEGIN END POPUP "µµ¿ò¸»(&H)" BEGIN - MENUITEM "¿öµåÆеå Á¤º¸(&A)" ID_ABOUT + MENUITEM "Wine ¿öµåÆеå Á¤º¸(&A)" ID_ABOUT END END @@ -237,4 +237,9 @@ BEGIN "´ç½ÅÀº Á¤¸»·Î ÀúÀåÇϱ⸦ ¿øÇմϱî?" STRING_INVALID_NUMBER, "¿Ã¹Ù¸£Áö ¾ÊÀº ¼ö Çü½Ä" STRING_OLE_STORAGE_NOT_SUPPORTED, "OLE ÀúÀå ¹®¼­´Â Áö¿øµÇÁö ¾Ê½À´Ï´Ù" + STRING_WRITE_FAILED, "ÆÄÀÏÀ» ÀúÀåÇÒ ¼ö ¾ø½À´Ï´Ù." + STRING_WRITE_ACCESS_DENIED, "ÆÄÀÏÀ» ÀúÀåÇÒ ±ÇÇÑÀÌ ¾ø½À´Ï´Ù." + STRING_OPEN_FAILED, "ÆÄÀÏÀ» ¿­ ¼ö ¾ø½À´Ï´Ù." + STRING_OPEN_ACCESS_DENIED, "ÆÄÀÏÀ» ¿­ ±ÇÇÑÀÌ ¾ø½À´Ï´Ù." + STRING_PRINTING_NOT_IMPLEMENTED, "Àμâ´Â Áö¿øµÇÁö ¾Ê½À´Ï´Ù" END diff --git a/reactos/base/applications/wordpad/Nl.rc b/reactos/base/applications/wordpad/Nl.rc index 536a88b9d4a..0a53658eb85 100644 --- a/reactos/base/applications/wordpad/Nl.rc +++ b/reactos/base/applications/wordpad/Nl.rc @@ -240,4 +240,5 @@ BEGIN STRING_WRITE_ACCESS_DENIED, "Onvoldoende rechten om het bestand op te slaan." STRING_OPEN_FAILED, "Bestand kon niet geopend worden." STRING_OPEN_ACCESS_DENIED, "Onvoldoende rechten om het bestand te openen." + STRING_PRINTING_NOT_IMPLEMENTED, "Printen is nog niet geimplementeerd" END diff --git a/reactos/base/applications/wordpad/Pt.rc b/reactos/base/applications/wordpad/Pt.rc new file mode 100644 index 00000000000..ce153265bd9 --- /dev/null +++ b/reactos/base/applications/wordpad/Pt.rc @@ -0,0 +1,245 @@ +/* + * Portuguese Language File + * + * Copyright 2008 Ricardo Filipe + * + * 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_PORTUGUESE, SUBLANG_NEUTRAL + +IDM_MAINMENU MENU DISCARDABLE +BEGIN + POPUP "&Ficheiro" + BEGIN + MENUITEM "&Novo...\tCtrl+N", ID_FILE_NEW + MENUITEM "&Abrir...\tCtrl+O", ID_FILE_OPEN + MENUITEM "&Guardar\tCtrl+S", ID_FILE_SAVE + MENUITEM "Guardar &como...", ID_FILE_SAVEAS + MENUITEM SEPARATOR + MENUITEM "&Imprimir...\tCtrl+P", ID_PRINT + MENUITEM "&Pré visualizar...", ID_PREVIEW + MENUITEM "C&onfigurar página...", ID_PRINTSETUP + MENUITEM SEPARATOR + MENUITEM "&Sair", ID_FILE_EXIT + END + POPUP "&Editar" + BEGIN + MENUITEM "&Anular\tCtrl+Z", ID_EDIT_UNDO + MENUITEM "&Refazer\tCtrl+Y", ID_EDIT_REDO + MENUITEM SEPARATOR + MENUITEM "&Cortar\tCtrl+X", ID_EDIT_CUT + MENUITEM "C&opiar\tCtrl+C", ID_EDIT_COPY + MENUITEM "Col&ar\tCtrl+V", ID_EDIT_PASTE + MENUITEM "&Limpar\tDEL", ID_EDIT_CLEAR + MENUITEM "&Seleccionar tudo\tCtrl+A", ID_EDIT_SELECTALL + MENUITEM SEPARATOR + MENUITEM "Local&izar...\tCrtl+F", ID_FIND + MENUITEM "&Encontrar Seguinte\tF3", ID_FIND_NEXT + MENUITEM "&Substituir...\tCtrl+H", ID_REPLACE + MENUITEM SEPARATOR + MENUITEM "Some&nte leitura", ID_EDIT_READONLY + MENUITEM "&Modificado", ID_EDIT_MODIFIED + MENUITEM SEPARATOR + POPUP "E&xtras" + BEGIN + MENUITEM "&Informação da selecção", ID_EDIT_SELECTIONINFO + MENUITEM "&Formato dos caracteres", ID_EDIT_CHARFORMAT + MENUITEM "&Definir formato dos caracteres", ID_EDIT_DEFCHARFORMAT + MENUITEM "F&ormato dos parágrafos", ID_EDIT_PARAFORMAT + MENUITEM "&Buscar texto", ID_EDIT_GETTEXT + END + END + POPUP "&Ver" + BEGIN + MENUITEM "&Barra de Ferramentas", ID_TOGGLE_TOOLBAR + MENUITEM "Barra de &Formatação", ID_TOGGLE_FORMATBAR + MENUITEM "&Régua", ID_TOGGLE_RULER + MENUITEM "Barra de &Estado", ID_TOGGLE_STATUSBAR + MENUITEM SEPARATOR + MENUITEM "&Opções...", ID_VIEWPROPERTIES + END + POPUP "&Inserir" + BEGIN + MENUITEM "&Data e hora...", ID_DATETIME + END + POPUP "F&ormato" + BEGIN + MENUITEM "&Tipo de Letra...", ID_FONTSETTINGS + MENUITEM "&Lista de marcas" ID_BULLET + MENUITEM "&Parágrafo..." ID_PARAFORMAT + MENUITEM "T&abulações..." ID_TABSTOPS + POPUP "&Fundo" + BEGIN + MENUITEM "&Sistema\tCtrl+1", ID_BACK_1 + MENUITEM "&PostThat amarelo\tCtrl+2", ID_BACK_2 + END + END + POPUP "&Ajuda" + BEGIN + MENUITEM "&Sobre Wine Wordpad" ID_ABOUT + END +END + +IDM_POPUP MENU DISCARDABLE +BEGIN + POPUP "" + BEGIN + MENUITEM "&Cortar", ID_EDIT_CUT + MENUITEM "C&opiar", ID_EDIT_COPY + MENUITEM "Co&lar", ID_EDIT_PASTE + MENUITEM SEPARATOR + MENUITEM "&Lista de marcas" ID_BULLET + MENUITEM "&Parágrafo..." ID_PARAFORMAT + END +END + +IDD_DATETIME DIALOG DISCARDABLE 30, 20, 130, 80 +STYLE DS_MODALFRAME | WS_CAPTION | WS_SYSMENU +CAPTION "Data e hora" +FONT 10, "MS Sans Serif" +BEGIN + LTEXT "Formatos Disponíveis",0,3,2,100,15 + LISTBOX IDC_DATETIME,3,12,80,65,LBS_NOINTEGRALHEIGHT + PUSHBUTTON "&OK",IDOK,87,12,40,12 + PUSHBUTTON "&Cancelar",IDCANCEL,87,26,40,12 +END + +IDD_NEWFILE DIALOG DISCARDABLE 30, 20, 140, 80 +STYLE DS_MODALFRAME | WS_CAPTION | WS_SYSMENU +CAPTION "Novo" +FONT 10, "MS Sans Serif" +BEGIN + LTEXT "Novo tipo de documento",0,3,2,100,15 + LISTBOX IDC_NEWFILE,3,12,90,65,LBS_NOINTEGRALHEIGHT + PUSHBUTTON "&OK",IDOK,97,12,40,12 + PUSHBUTTON "&Cancelar",IDCANCEL,97,26,40,12 +END + +IDD_PARAFORMAT DIALOG DISCARDABLE 30, 20, 200, 110 +STYLE DS_MODALFRAME | WS_CAPTION | WS_SYSMENU +Caption "Parágrafo" +FONT 8, "MS Shell Dlg" +BEGIN + GROUPBOX "Identação", 0, 10, 10, 120, 68 + LTEXT "Esquerda", 0, 15, 22, 40, 13 + EDITTEXT IDC_PARA_LEFT, 55, 20, 60, 13 + LTEXT "Direita", 0, 15, 40, 40, 13 + EDITTEXT IDC_PARA_RIGHT, 55, 38, 60, 13 + LTEXT "Primeira Linha", 0, 15, 58, 40, 13 + EDITTEXT IDC_PARA_FIRST, 55, 56, 60, 13 + LTEXT "Alinhamento", 0, 15, 87, 40, 13 + COMBOBOX IDC_PARA_ALIGN, 55, 85, 60, 60, CBS_DROPDOWNLIST + PUSHBUTTON "&OK", IDOK, 137, 15, 50, 15 + PUSHBUTTON "&Cancelar", IDCANCEL, 137, 33, 50, 15 +END + +IDD_TABSTOPS DIALOG DISCARDABLE 30, 20, 200, 110 +STYLE DS_MODALFRAME | WS_CAPTION | WS_SYSMENU +Caption "Tabulações" +FONT 8, "MS SHell DLg" +BEGIN + GROUPBOX "Marca de tabulação", 0, 10, 10, 120, 90 + COMBOBOX IDC_TABSTOPS, 20, 20, 100, 60, CBS_SIMPLE | CBS_SORT + DEFPUSHBUTTON "&Adicionar", ID_TAB_ADD, 20, 80, 45, 15 + PUSHBUTTON "&Remover", ID_TAB_DEL, 72, 80, 45, 15 + PUSHBUTTON "&OK", IDOK, 135, 15, 55, 15 + PUSHBUTTON "&Cancelar", IDCANCEL, 135, 33, 55, 15 + PUSHBUTTON "Remover &todos", ID_TAB_EMPTY, 135, 51, 55, 15 +END + +IDD_FORMATOPTS DIALOG DISCARDABLE 0, 0, 280, 110 +STYLE DS_SYSMODAL +Caption "" +FONT 8, "MS Shell Dlg" +BEGIN + GROUPBOX "Moldar o texto", 0, 10, 10, 130, 85 + RADIOBUTTON "&Sem moldagem", IDC_PAGEFMT_WN, 18, 25, 117, 15 + RADIOBUTTON "&Moldar à janela", IDC_PAGEFMT_WW, 18, 45, 117, 15 + RADIOBUTTON "Moldar pela &régua", IDC_PAGEFMT_WM, 18, 65, 117, 15 + GROUPBOX "Barras de Ferramentas", 0, 150, 10, 120, 85 + CHECKBOX "&Barra de Ferramentas", IDC_PAGEFMT_TB, 160, 20, 90, 15 + CHECKBOX "Barra de &Formatação", IDC_PAGEFMT_FB, 160, 38, 90, 15 + CHECKBOX "&Régua", IDC_PAGEFMT_RU, 160, 56, 90, 15 + CHECKBOX "Barra de &Estado", IDC_PAGEFMT_SB, 160, 74, 90, 15 + LTEXT "", IDC_PAGEFMT_ID, 0,0,0,0 +END + +STRINGTABLE DISCARDABLE +BEGIN + STRING_RICHTEXT_FILES_RTF, "Rich text format (*.rtf)" + STRING_TEXT_FILES_TXT, "Documentos de texto (*.txt)" + STRING_TEXT_FILES_UNICODE_TXT, "Documentos de texto Unicode (*.txt)" + STRING_ALL_FILES, "Todos os documentos (*.*)" +END + +STRINGTABLE DISCARDABLE +BEGIN + STRING_ALIGN_LEFT, "Esquerda" + STRING_ALIGN_RIGHT, "Direita" + STRING_ALIGN_CENTER, "Centro" +END + +STRINGTABLE DISCARDABLE +BEGIN + STRING_NEWFILE_RICHTEXT, "Rich text document" + STRING_NEWFILE_TXT, "Documento de texto" + STRING_NEWFILE_TXT_UNICODE, "Documento de texto Unicode" +END + +STRINGTABLE DISCARDABLE +BEGIN + STRING_PRINTER_FILES_PRN, "Ficheiros de impressora (*.PRN)" +END + +STRINGTABLE DISCARDABLE +BEGIN + STRING_VIEWPROPS_TITLE, "Opções" + STRING_VIEWPROPS_TEXT, "Texto" + STRING_VIEWPROPS_RICHTEXT, "Rich text" +END + +STRINGTABLE DISCARDABLE +BEGIN + STRING_PREVIEW_PRINT, "Imprimir" + STRING_PREVIEW_NEXTPAGE, "Próxima página" + STRING_PREVIEW_PREVPAGE, "Página anterior" + STRING_PREVIEW_TWOPAGES, "Duas páginas" + STRING_PREVIEW_ONEPAGE, "Uma página" + STRING_PREVIEW_CLOSE, "Fechar" +END + +STRINGTABLE DISCARDABLE +BEGIN + STRING_UNITS_CM, "cm" +END + +STRINGTABLE DISCARDABLE +BEGIN + STRING_DEFAULT_FILENAME, "Documento" + STRING_PROMPT_SAVE_CHANGES, "Guardar alterações a '%s'?" + STRING_SEARCH_FINISHED, "Acabou a pesquisa do documento." + STRING_LOAD_RICHED_FAILED, "Falhou o carregamento da biblioteca RichEdit." + STRING_SAVE_LOSEFORMATTING, "Escolheu guardar em formato de texto simples, " \ + "o que vai anular todas as formatações. " \ + "Tem a certeza que quer fazer isto?" + STRING_INVALID_NUMBER, "Formato de número inválido" + STRING_OLE_STORAGE_NOT_SUPPORTED, "Documentos OLE não são suportados" + STRING_WRITE_FAILED, "Não foi possível guardar o ficheiro." + STRING_WRITE_ACCESS_DENIED, "Não tem permissões para guardar o ficheiro." + STRING_OPEN_FAILED, "Não foi possível abrir o ficheiro." + STRING_OPEN_ACCESS_DENIED, "Não tem permissões para abrir o ficheiro." + STRING_PRINTING_NOT_IMPLEMENTED, "Impressão não implementada" +END diff --git a/reactos/base/applications/wordpad/registry.c b/reactos/base/applications/wordpad/registry.c index d05068644d9..c7edc5b1e50 100644 --- a/reactos/base/applications/wordpad/registry.c +++ b/reactos/base/applications/wordpad/registry.c @@ -78,7 +78,7 @@ static LRESULT registry_get_handle(HKEY *hKey, LPDWORD action, LPCWSTR subKey) void registry_set_options(HWND hMainWnd) { - HKEY hKey; + HKEY hKey = 0; DWORD action; if(registry_get_handle(&hKey, &action, key_options) == ERROR_SUCCESS) @@ -101,7 +101,7 @@ void registry_set_options(HWND hMainWnd) void registry_read_winrect(RECT* rc) { - HKEY hKey; + HKEY hKey = 0; DWORD size = sizeof(RECT); if(registry_get_handle(&hKey, 0, key_options) != ERROR_SUCCESS || @@ -119,7 +119,7 @@ void registry_read_winrect(RECT* rc) void registry_read_maximized(DWORD *bMaximized) { - HKEY hKey; + HKEY hKey = 0; DWORD size = sizeof(DWORD); if(registry_get_handle(&hKey, 0, key_options) != ERROR_SUCCESS || @@ -318,8 +318,8 @@ void registry_set_filelist(LPCWSTR newFile, HWND hMainWnd) (lstrlenW(pFiles[i])+1)*sizeof(WCHAR)); } } + RegCloseKey(hKey); } - RegCloseKey(hKey); registry_read_filelist(hMainWnd); } @@ -335,9 +335,10 @@ void registry_read_options(void) if(registry_get_handle(&hKey, 0, key_options) != ERROR_SUCCESS) registry_read_pagemargins(NULL); else + { registry_read_pagemargins(hKey); - - RegCloseKey(hKey); + RegCloseKey(hKey); + } } static void registry_read_formatopts(int index, LPCWSTR key, DWORD barState[], DWORD wordWrap[]) diff --git a/reactos/base/applications/wordpad/rsrc.rc b/reactos/base/applications/wordpad/rsrc.rc index 49482adf13d..4839e2b1788 100644 --- a/reactos/base/applications/wordpad/rsrc.rc +++ b/reactos/base/applications/wordpad/rsrc.rc @@ -74,6 +74,7 @@ IDI_TXT ICON "txt.ico" #include "Nl.rc" #include "No.rc" #include "Pl.rc" +#include "Pt.rc" #include "Ru.rc" #include "Si.rc" #include "Tr.rc" diff --git a/reactos/base/applications/wordpad/wordpad.c b/reactos/base/applications/wordpad/wordpad.c index 754ae50a9cd..d06b2d993f7 100644 --- a/reactos/base/applications/wordpad/wordpad.c +++ b/reactos/base/applications/wordpad/wordpad.c @@ -116,6 +116,25 @@ static void DoLoadStrings(void) LoadStringW(hInstance, STRING_UNITS_CM, units_cmW, MAX_STRING_LEN); } +/* Show a message box with resource strings */ +static int MessageBoxWithResStringW(HWND hWnd, LPCWSTR lpText, LPCWSTR lpCaption, UINT uType) +{ + MSGBOXPARAMSW params; + + params.cbSize = sizeof(params); + params.hwndOwner = hWnd; + params.hInstance = GetModuleHandleW(0); + params.lpszText = lpText; + params.lpszCaption = lpCaption; + params.dwStyle = uType; + params.lpszIcon = NULL; + params.dwContextHelpId = 0; + params.lpfnMsgBoxCallback = NULL; + params.dwLanguageId = 0; + return MessageBoxIndirectW(¶ms); +} + + static void AddButton(HWND hwndToolBar, int nImage, int nCommand) { TBBUTTON button; @@ -289,7 +308,7 @@ static void on_sizelist_modified(HWND hwndSizeList, LPWSTR wszNewFontSize) } else { SetWindowTextW(hwndSizeList, sizeBuffer); - MessageBoxW(hMainWnd, MAKEINTRESOURCEW(STRING_INVALID_NUMBER), + MessageBoxWithResStringW(hMainWnd, MAKEINTRESOURCEW(STRING_INVALID_NUMBER), wszAppTitle, MB_OK | MB_ICONINFORMATION); } } @@ -747,8 +766,8 @@ static void DoOpenFile(LPCWSTR szOpenFileName) else if (!memcmp(STG_magic, fileStart, sizeof(STG_magic))) { CloseHandle(hFile); - MessageBoxW(hMainWnd, MAKEINTRESOURCEW(STRING_OLE_STORAGE_NOT_SUPPORTED), wszAppTitle, - MB_OK | MB_ICONEXCLAMATION); + MessageBoxWithResStringW(hMainWnd, MAKEINTRESOURCEW(STRING_OLE_STORAGE_NOT_SUPPORTED), + wszAppTitle, MB_OK | MB_ICONEXCLAMATION); return; } } @@ -863,7 +882,7 @@ static void DialogSaveFile(void) { if(fileformat_flags(sfn.nFilterIndex-1) != SF_RTF) { - if(MessageBoxW(hMainWnd, MAKEINTRESOURCEW(STRING_SAVE_LOSEFORMATTING), + if(MessageBoxWithResStringW(hMainWnd, MAKEINTRESOURCEW(STRING_SAVE_LOSEFORMATTING), wszAppTitle, MB_YESNO | MB_ICONEXCLAMATION) != IDYES) { continue; @@ -1161,7 +1180,7 @@ static void HandleCommandLine(LPWSTR cmdline) } if (opt_print) - MessageBoxW(hMainWnd, MAKEINTRESOURCEW(STRING_PRINTING_NOT_IMPLEMENTED), wszAppTitle, MB_OK); + MessageBoxWithResStringW(hMainWnd, MAKEINTRESOURCEW(STRING_PRINTING_NOT_IMPLEMENTED), wszAppTitle, MB_OK); } static LRESULT handle_findmsg(LPFINDREPLACEW pFr) @@ -1239,7 +1258,7 @@ static LRESULT handle_findmsg(LPFINDREPLACEW pFr) if(ret == -1) { pFr->lCustData = -1; - MessageBoxW(hMainWnd, MAKEINTRESOURCEW(STRING_SEARCH_FINISHED), wszAppTitle, + MessageBoxWithResStringW(hMainWnd, MAKEINTRESOURCEW(STRING_SEARCH_FINISHED), wszAppTitle, MB_OK | MB_ICONASTERISK); } else { @@ -1503,7 +1522,7 @@ static INT_PTR CALLBACK paraformat_proc(HWND hWnd, UINT message, WPARAM wParam, if(ret != 3) { - MessageBoxW(hMainWnd, MAKEINTRESOURCEW(STRING_INVALID_NUMBER), + MessageBoxWithResStringW(hMainWnd, MAKEINTRESOURCEW(STRING_INVALID_NUMBER), wszAppTitle, MB_OK | MB_ICONASTERISK); return FALSE; } else @@ -1615,7 +1634,7 @@ static INT_PTR CALLBACK tabstops_proc(HWND hWnd, UINT message, WPARAM wParam, LP if(!number_from_string(buffer, &number, TRUE)) { - MessageBoxW(hWnd, MAKEINTRESOURCEW(STRING_INVALID_NUMBER), + MessageBoxWithResStringW(hWnd, MAKEINTRESOURCEW(STRING_INVALID_NUMBER), wszAppTitle, MB_OK | MB_ICONINFORMATION); } else { @@ -1817,7 +1836,7 @@ static LRESULT OnCreate( HWND hWnd ) hDLL = LoadLibraryW(wszRichEditDll); if(!hDLL) { - MessageBoxW(hWnd, MAKEINTRESOURCEW(STRING_LOAD_RICHED_FAILED), wszAppTitle, + MessageBoxWithResStringW(hWnd, MAKEINTRESOURCEW(STRING_LOAD_RICHED_FAILED), wszAppTitle, MB_OK | MB_ICONEXCLAMATION); PostQuitMessage(1); }