/*
 * Copyright 2006 by Phil Krylov
 *
 * 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 "wordpad.h"

/* UTF-8 */
#pragma code_page(65001)

LANGUAGE LANG_RUSSIAN, SUBLANG_DEFAULT

IDM_MAINMENU MENU DISCARDABLE
BEGIN
    POPUP "&Файл"
    BEGIN
        MENUITEM "Созд&ать...\tCtrl+N",ID_FILE_NEW
        MENUITEM "&Открыть...\tCtrl+O",ID_FILE_OPEN
        MENUITEM "&Сохранить\tCtrl+S", ID_FILE_SAVE
        MENUITEM "Сохранить &как...",  ID_FILE_SAVEAS
        MENUITEM SEPARATOR
        MENUITEM "&Печать...\tCtrl+P",            ID_PRINT
        MENUITEM "Пред&варительный просмотр...",  ID_PREVIEW
        MENUITEM "&Макет страницы...",            ID_PRINTSETUP
        MENUITEM SEPARATOR
        MENUITEM "В&ыход",                           ID_FILE_EXIT
    END
    POPUP "&Правка"
    BEGIN
        MENUITEM "&Отменить\tCtrl+Z",           ID_EDIT_UNDO
        MENUITEM "&Повторить\tCtrl+Y",          ID_EDIT_REDO
        MENUITEM SEPARATOR
        MENUITEM "&Вырезать\tCtrl+X",           ID_EDIT_CUT
        MENUITEM "&Копировать\tCtrl+C",         ID_EDIT_COPY
        MENUITEM "&Вставить\tCtrl+V",           ID_EDIT_PASTE
        MENUITEM "&Удалить\tDEL",               ID_EDIT_CLEAR
        MENUITEM "Выделить в&се\tCtrl+A",       ID_EDIT_SELECTALL
        MENUITEM SEPARATOR
        MENUITEM "&Найти...\tCrtl+F",           ID_FIND
        MENUITEM "На&йти далее\tF3",            ID_FIND_NEXT
        MENUITEM "&Заменить...\tCtrl+H",        ID_REPLACE
        MENUITEM SEPARATOR
        MENUITEM "&Только для чтения",          ID_EDIT_READONLY
        MENUITEM "&Изменен",                    ID_EDIT_MODIFIED
        MENUITEM SEPARATOR
        POPUP "&Дополнительно"
        BEGIN
            MENUITEM "&Информация о выделении",         ID_EDIT_SELECTIONINFO
            MENUITEM "&Формат символов",                ID_EDIT_CHARFORMAT
            MENUITEM "Формат символов &по умолчанию",   ID_EDIT_DEFCHARFORMAT
            MENUITEM "Формат &абзаца",                  ID_EDIT_PARAFORMAT
            MENUITEM "П&олучить текст",                 ID_EDIT_GETTEXT
        END
    END
    POPUP "&Вид"
    BEGIN
        MENUITEM "Панель &инструментов",                ID_TOGGLE_TOOLBAR
        MENUITEM "П&анель форматирования",              ID_TOGGLE_FORMATBAR
        MENUITEM "&Линейка",                            ID_TOGGLE_RULER
        MENUITEM "&Строка состояния",                   ID_TOGGLE_STATUSBAR
        MENUITEM SEPARATOR
        MENUITEM "&Параметры...",                       ID_VIEWPROPERTIES
    END
    POPUP "Вст&авка"
    BEGIN
        MENUITEM "&Дата и время...",                    ID_DATETIME
    END
    POPUP "Фор&мат"
    BEGIN
        MENUITEM "&Шрифт...",                           ID_FONTSETTINGS
        MENUITEM "&Маркер"                              ID_BULLET
        MENUITEM "&Абзац..."                            ID_PARAFORMAT
        MENUITEM "&Табуляция..."                        ID_TABSTOPS
        POPUP "&Фон"
        BEGIN
            MENUITEM "&Системный\tCtrl+1",              ID_BACK_1
            MENUITEM "&Желтоватый PostThat\tCtrl+2",    ID_BACK_2
        END
    END
    POPUP "&Справка"
    BEGIN
        MENUITEM "&О Wine Wordpad"       ID_ABOUT
    END
END

IDM_POPUP MENU DISCARDABLE
BEGIN
    POPUP ""
    BEGIN
        MENUITEM "&Вырезать\tCtrl+X",   ID_EDIT_CUT
        MENUITEM "&Копировать\tCtrl+C", ID_EDIT_COPY
        MENUITEM "Вст&авить",           ID_EDIT_PASTE
        MENUITEM SEPARATOR
        MENUITEM "&Маркер"              ID_BULLET
        MENUITEM "&Абзац..."            ID_PARAFORMAT
    END
END

IDD_DATETIME DIALOG DISCARDABLE 30, 20, 130, 80
STYLE DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "Дата и время"
FONT 10, "MS Sans Serif"
BEGIN
    LTEXT        "Доступные форматы",-1,3,2,100,15
    LISTBOX      IDC_DATETIME,3,12,80,65,LBS_NOINTEGRALHEIGHT | LBS_NOTIFY
    PUSHBUTTON   "&ОК",IDOK,87,12,40,12
    PUSHBUTTON   "О&тмена",IDCANCEL,87,26,40,12
END

IDD_NEWFILE DIALOG DISCARDABLE 30, 20, 140, 80
STYLE DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
CAPTION "Новый документ"
FONT 10, "MS Sans Serif"
BEGIN
    LTEXT        "Тип создаваемого документа",-1,3,2,100,15
    LISTBOX      IDC_NEWFILE,3,12,90,65,LBS_NOINTEGRALHEIGHT
    PUSHBUTTON   "&ОК",IDOK,97,12,40,12
    PUSHBUTTON   "О&тмена",IDCANCEL,97,26,40,12
END

IDD_PARAFORMAT DIALOG DISCARDABLE 30, 20, 200, 110
STYLE DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
Caption "Абзац"
FONT 8, "MS Shell Dlg"
BEGIN
    GROUPBOX "Отступ", -1, 10, 10, 120, 68
    LTEXT "Слева", -1, 15, 22, 40, 13
    EDITTEXT IDC_PARA_LEFT, 55, 20, 60, 13
    LTEXT "Справа", -1, 15, 40, 40, 13
    EDITTEXT IDC_PARA_RIGHT, 55, 38, 60, 13
    LTEXT "Первая строка", -1, 15, 58, 40, 13
    EDITTEXT IDC_PARA_FIRST, 55, 56, 60, 13
    LTEXT "Выравнивание", -1, 15, 87, 40, 13
    COMBOBOX IDC_PARA_ALIGN, 55, 85, 60, 60, CBS_DROPDOWNLIST
    PUSHBUTTON "&ОК", IDOK, 137, 15, 50, 15
    PUSHBUTTON "О&тмена", IDCANCEL, 137, 33, 50, 15
END

IDD_TABSTOPS DIALOG DISCARDABLE 30, 20, 200, 110
STYLE DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
Caption "Табуляция"
FONT 8, "MS SHell DLg"
BEGIN
    GROUPBOX "Позиции табуляции", -1, 10, 10, 120, 90
    COMBOBOX IDC_TABSTOPS, 20, 20, 100, 60, CBS_SIMPLE
    DEFPUSHBUTTON "&Установить", ID_TAB_ADD, 20, 80, 45, 15
    PUSHBUTTON "О&чистить", ID_TAB_DEL, 72, 80, 45, 15
    PUSHBUTTON "&ОК", IDOK, 137, 15, 50, 15
    PUSHBUTTON "О&тмена", IDCANCEL, 137, 33, 50, 15
    PUSHBUTTON "Очистить &все", ID_TAB_EMPTY, 137, 51, 50, 15
END

IDD_FORMATOPTS DIALOG DISCARDABLE 0, 0, 280, 110
STYLE DS_SYSMODAL
Caption ""
FONT 8, "MS Shell Dlg"
BEGIN
    GROUPBOX "Перенос по словам", -1, 10, 10, 130, 85
    RADIOBUTTON "No line wrapping", IDC_PAGEFMT_WN, 18, 25, 117, 15
    RADIOBUTTON "В границах &окна", IDC_PAGEFMT_WW, 18, 45, 117, 15
    RADIOBUTTON "В границах &полей", IDC_PAGEFMT_WM, 18, 65, 117, 15
    GROUPBOX "Панели", -1, 150, 10, 120, 85
    CHECKBOX "&Инструментов", IDC_PAGEFMT_TB, 160, 20, 80, 15
    CHECKBOX "&Форматирования", IDC_PAGEFMT_FB, 160, 38, 80, 15
    CHECKBOX "&Линейка", IDC_PAGEFMT_RU, 160, 56, 80, 15
    CHECKBOX "&Строка состояния", IDC_PAGEFMT_SB, 160, 74, 80, 15
    LTEXT "", IDC_PAGEFMT_ID, 0,0,0,0
END

STRINGTABLE DISCARDABLE
BEGIN
    STRING_RICHTEXT_FILES_RTF,     "Файлы RTF (*.rtf)"
    STRING_TEXT_FILES_TXT,         "Текстовые документы (*.txt)"
    STRING_TEXT_FILES_UNICODE_TXT, "Документы Unicode (*.txt)"
    STRING_ALL_FILES,              "Все документы (*.*)"
END

STRINGTABLE DISCARDABLE
BEGIN
    STRING_ALIGN_LEFT,            "По левому краю"
    STRING_ALIGN_RIGHT,           "По правому краю"
    STRING_ALIGN_CENTER,          "По центру"
END

STRINGTABLE DISCARDABLE
BEGIN
    STRING_NEWFILE_RICHTEXT,     "Файл RTF"
    STRING_NEWFILE_TXT,          "Текстовый документ"
    STRING_NEWFILE_TXT_UNICODE,  "Документ в формате Unicode"
END

STRINGTABLE DISCARDABLE
BEGIN
    STRING_PRINTER_FILES_PRN,        "Файлы принтера (*.PRN)"
END

STRINGTABLE DISCARDABLE
BEGIN
    STRING_VIEWPROPS_TITLE,          "Настройки"
    STRING_VIEWPROPS_TEXT,           "Текст"
    STRING_VIEWPROPS_RICHTEXT,       "Файл RTF"
END

STRINGTABLE DISCARDABLE
BEGIN
    STRING_PREVIEW_PRINT,            "Печать"
    STRING_PREVIEW_NEXTPAGE,         "Следующая страница"
    STRING_PREVIEW_PREVPAGE,         "Предыдущая страница"
    STRING_PREVIEW_TWOPAGES,         "Две страницы"
    STRING_PREVIEW_ONEPAGE,          "Одна страница"
    STRING_PREVIEW_CLOSE,            "Закрыть"
END

STRINGTABLE DISCARDABLE
BEGIN
    STRING_UNITS_CM,             "см"
END

STRINGTABLE DISCARDABLE
BEGIN
    STRING_DEFAULT_FILENAME,     "Документ"
    STRING_PROMPT_SAVE_CHANGES,  "Сохранить изменения в '%s'?"
    STRING_SEARCH_FINISHED,      "Поиск в документе завершен."
    STRING_LOAD_RICHED_FAILED,   "Ошибка загрузки библиотеки RichEdit."
    STRING_SAVE_LOSEFORMATTING,  "Сохранение документа в виде неформатированного текста, " \
                                 "приведет к потере форматирования. Подтверждаете выполнение" \
                                 "этой операции?"
    STRING_INVALID_NUMBER,       "Неправильный числовой формат"
    STRING_OLE_STORAGE_NOT_SUPPORTED, "OLE storage документы не поддерживаются"
    STRING_WRITE_FAILED,              "Невозможно сохранить файл."
    STRING_WRITE_ACCESS_DENIED,       "Недостаточно прав для сохранения файла."
    STRING_OPEN_FAILED,               "Невозможно открыть файл."
    STRING_OPEN_ACCESS_DENIED,        "Недостаточно прав для открытия файла."
    STRING_PRINTING_NOT_IMPLEMENTED, "Печать не поддерживается"
    STRING_MAX_TAB_STOPS,             "Нельзя добавить более 32 позиций табуляции."
END
