/*
 * 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
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 "&Найти...\tCtrl+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
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

IDM_COLOR_POPUP MENU
BEGIN
    POPUP ""
    BEGIN
        MENUITEM "Чёрный"         ID_COLOR_BLACK
        MENUITEM "Тёмно-бордовый" ID_COLOR_MAROON
        MENUITEM "Зелёный"        ID_COLOR_GREEN
        MENUITEM "Оливковый"      ID_COLOR_OLIVE
        MENUITEM "Тёмно-синий"    ID_COLOR_NAVY
        MENUITEM "Пурпурный"      ID_COLOR_PURPLE
        MENUITEM "Морской волны"  ID_COLOR_TEAL
        MENUITEM "Серый"          ID_COLOR_GRAY
        MENUITEM "Серебряный"     ID_COLOR_SILVER
        MENUITEM "Красный"        ID_COLOR_RED
        MENUITEM "Лимонный"       ID_COLOR_LIME
        MENUITEM "Жёлтый"         ID_COLOR_YELLOW
        MENUITEM "Синий"          ID_COLOR_BLUE
        MENUITEM "Ярко-розовый"   ID_COLOR_FUCHSIA
        MENUITEM "Голубой"        ID_COLOR_AQUA
        MENUITEM "Белый"          ID_COLOR_WHITE
        MENUITEM "Автоматически"      ID_COLOR_AUTOMATIC
    END
END

IDD_DATETIME DIALOG 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 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 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 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 0, 0, 280, 110
STYLE DS_SYSMODAL
Caption ""
FONT 8, "MS Shell Dlg"
BEGIN
    GROUPBOX "Перенос по словам", -1, 10, 10, 130, 85
    RADIOBUTTON "Не переносить", 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
BEGIN
    STRING_RICHTEXT_FILES_RTF,     "Файлы RTF (*.rtf)"
    STRING_TEXT_FILES_TXT,         "Текстовые документы (*.txt)"
    STRING_TEXT_FILES_UNICODE_TXT, "Документы Unicode (*.txt)"
    STRING_ALL_FILES,              "Все документы (*.*)"
END

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

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

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

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

STRINGTABLE
BEGIN
    STRING_PREVIEW_PRINT,            "Печать"
    STRING_PREVIEW_NEXTPAGE,         "Следующая"
    STRING_PREVIEW_PREVPAGE,         "Предыдущая"
    STRING_PREVIEW_TWOPAGES,         "По две"
    STRING_PREVIEW_ONEPAGE,          "По одной"
    STRING_PREVIEW_ZOOMIN,           "Приблизить"
    STRING_PREVIEW_ZOOMOUT,          "Отдалить"
    STRING_PREVIEW_CLOSE,            "Закрыть"
    STRING_PREVIEW_PAGE,             "Страница"
    STRING_PREVIEW_PAGES,            "Страницы"
    STRING_UNITS_CM,                 "см"
    STRING_UNITS_IN,                 "in"
    STRING_UNITS_INCH,               "inch"
    STRING_UNITS_PT,                 "pt"
END

STRINGTABLE
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
