/*
 *  Notepad (Simplified and Traditional Chinese resources)
 *
 *  Copyright 2002 liuspider <liuspider@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
 * 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 "notepad_res.h"

/* Chinese text is encoded in UTF-8 */
#pragma code_page(65001)

MAIN_MENU MENU LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED
{
 POPUP "文件(&F)" {
  MENUITEM "新建(&N)\tCtrl+N",     CMD_NEW
  MENUITEM "打开(&O)...\tCtrl+O",  CMD_OPEN
  MENUITEM "保存(&S)\tCtrl+S",     CMD_SAVE
  MENUITEM "另存为(&A)...",         CMD_SAVE_AS
  MENUITEM SEPARATOR
  MENUITEM "打印(&P)...\tCtrl+P",   CMD_PRINT
  MENUITEM "页面设置(&T)...",     CMD_PAGE_SETUP
  MENUITEM "打印设置(&R)...",     CMD_PRINTER_SETUP
  MENUITEM SEPARATOR
  MENUITEM "退出(&E)",             CMD_EXIT
 }
POPUP "编辑(&E)" {
  MENUITEM "撤消(&U)\tCtrl+Z",     CMD_UNDO
  MENUITEM SEPARATOR
  MENUITEM "剪切(&T)\tCtrl+X",     CMD_CUT
  MENUITEM "复制(&C)\tCtrl+C",      CMD_COPY
  MENUITEM "粘贴(&P)\tCtrl+V",     CMD_PASTE
  MENUITEM "删除(&D)\tDel",        CMD_DELETE
  MENUITEM SEPARATOR
  MENUITEM "全选(&A)",             CMD_SELECT_ALL
  MENUITEM "插入日期、时间(&T)\tF5", CMD_TIME_DATE
  MENUITEM SEPARATOR
  MENUITEM "自动换行(&W)",        CMD_WRAP
  MENUITEM "字体(&F)...",          CMD_FONT
 }
POPUP "搜索(&S)" {
  MENUITEM "搜索(&S)...",           CMD_SEARCH
  MENUITEM "搜索下一个(&S)\tF3", CMD_SEARCH_NEXT
  MENUITEM "替换...\tCtrl+H", CMD_REPLACE
 }
POPUP "帮助(&H)" {
  MENUITEM "内容(&C)",             CMD_HELP_CONTENTS
  MENUITEM "搜索(&S)...",           CMD_HELP_SEARCH
  MENUITEM "如何使用帮助(&H)", CMD_HELP_ON_HELP
  MENUITEM SEPARATOR
  MENUITEM "关于记事本(&A)",    CMD_HELP_ABOUT_NOTEPAD
 }
}

/* Dialog `Page setup' */

DIALOG_PAGESETUP DIALOG 0, 0, 225, 95
LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED
STYLE DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
FONT 9, "MS Shell Dlg"
CAPTION "页面设置"
{
LTEXT    "页眉(&H)：", 0x140,   10, 07, 40, 15
EDITTEXT IDC_PAGESETUP_HEADERVALUE,   60, 05,110, 12, WS_BORDER | WS_TABSTOP
LTEXT    "页脚(&F)：", 0x142,   10, 24, 40, 15
EDITTEXT IDC_PAGESETUP_FOOTERVALUE,   60, 22,110, 12, WS_BORDER | WS_TABSTOP

GROUPBOX "边距（毫米）(&M)：", 0x144,     10, 43,160, 45
LTEXT    "左(&L)：", 0x145,   20, 55, 30, 10, WS_CHILD
EDITTEXT IDC_PAGESETUP_LEFTVALUE,     50, 55, 35, 11, WS_CHILD | WS_BORDER | WS_TABSTOP
LTEXT    "上(&T)：", 0x148,    20, 73, 30, 10, WS_CHILD
EDITTEXT IDC_PAGESETUP_TOPVALUE,      50, 73, 35, 11, WS_CHILD | WS_BORDER | WS_TABSTOP
LTEXT    "右(&R)：", 0x14B, 100, 55, 30, 10, WS_CHILD
EDITTEXT IDC_PAGESETUP_RIGHTVALUE,   130, 55, 35, 11, WS_CHILD | WS_BORDER | WS_TABSTOP
LTEXT    "下(&B)：", 0x14E,100, 73, 30, 10, WS_CHILD
EDITTEXT IDC_PAGESETUP_BOTTOMVALUE,  130, 73, 35, 11, WS_CHILD | WS_BORDER | WS_TABSTOP

DEFPUSHBUTTON "确定", IDOK,                   180,  3, 40, 15, WS_TABSTOP
PUSHBUTTON    "取消", IDCANCEL,               180, 21, 40, 15, WS_TABSTOP
PUSHBUTTON    "帮助(&H)", IDHELP,                180, 39, 40, 15, WS_TABSTOP
}

IDD_OFN_TEMPLATE  DIALOG 50,50,300,15
LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED
STYLE DS_3DLOOK | DS_CONTROL | WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS | WS_BORDER
FONT 9, "MS Shell Dlg"
BEGIN
  LTEXT "编码：", -1, 5,0, 50,12
  COMBOBOX IDC_OFN_ENCCOMBO, 53,0, 156,48, WS_CHILD | WS_VSCROLL | CBS_DROPDOWNLIST
END

STRINGTABLE DISCARDABLE LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED
{
STRING_PAGESETUP_HEADERVALUE,   "&f"
STRING_PAGESETUP_FOOTERVALUE,   "第 &p 页"

STRING_NOTEPAD,                 "记事本"
STRING_ERROR,                   "错误"
STRING_WARNING,                 "警告"
STRING_INFO,                    "信息"

STRING_UNTITLED,                "（未命名）"

STRING_ALL_FILES,               "所有文件 (*.*)"
STRING_TEXT_FILES_TXT,          "文本文件 (*.txt)"

STRING_TOOLARGE,                "记事本不能打开“%s“这么大的文件。\n请使用别的编辑器。"
STRING_NOTEXT,                  "您没有输入任何文本。\n请输入一些再试。"
STRING_DOESNOTEXIST,            "文件“%s”不存在。\n\n您想新建一个文件吗？"
STRING_NOTSAVED,                "文件“%s”已更改。\n\n是否保存更改？"
STRING_NOTFOUND,                "找不到“%s”。"
STRING_OUT_OF_MEMORY,           "没有足够的内存可以用来完成此项任务。请关闭一些程序后再试。"

STRING_UNICODE_LE,     "Unicode (UTF-16)"
STRING_UNICODE_BE,     "Unicode (UTF-16 大尾)"

STRING_LOSS_OF_UNICODE_CHARACTERS,         "%s\n\
此文件包含 Unicode 字符。如果用 %s 编码保存，这些字符将会丢失。\n\
要保留这些字符，请点“取消”，然后选择一种 Unicode 编码。\n\
要继续吗？"
}

LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_TRADITIONAL

MAIN_MENU MENU
{
 POPUP "檔案(&F)" {
  MENUITEM "新建(&N)\tCtrl+N", CMD_NEW
  MENUITEM "開啟(&O)...\tCtrl+O", CMD_OPEN
  MENUITEM "儲存(&S)\tCtrl+S", CMD_SAVE
  MENUITEM "另存為(&A)...", CMD_SAVE_AS
  MENUITEM SEPARATOR
  MENUITEM "列印(&P)...\tCtrl+P", CMD_PRINT
  MENUITEM "版面設定(&T)...", CMD_PAGE_SETUP
  MENUITEM "列印設定(&R)...", CMD_PRINTER_SETUP
  MENUITEM SEPARATOR
  MENUITEM "結束(&E)", CMD_EXIT
 }
POPUP "編輯(&E)" {
  MENUITEM "復原(&U)\tCtrl+Z", CMD_UNDO
  MENUITEM SEPARATOR
  MENUITEM "剪下(&T)\tCtrl+X", CMD_CUT
  MENUITEM "複製(&C)\tCtrl+C", CMD_COPY
  MENUITEM "貼上(&P)\tCtrl+V", CMD_PASTE
  MENUITEM "刪除(&D)\tDel",    CMD_DELETE
  MENUITEM SEPARATOR
  MENUITEM "全選(&A)", CMD_SELECT_ALL
  MENUITEM "插入日期時間(&T)\tF5", CMD_TIME_DATE
  MENUITEM SEPARATOR
  MENUITEM "自動換行(&W)", CMD_WRAP
  MENUITEM "字型(&F)...",  CMD_FONT
 }
POPUP "搜尋(&S)" {
  MENUITEM "尋找(&S)...", CMD_SEARCH
  MENUITEM "找下一個(&N)\tF3", CMD_SEARCH_NEXT
  MENUITEM "&Replace...\tCtrl+H", CMD_REPLACE
 }
POPUP "幫助(&H)" {
  MENUITEM "主要內容(&C)", CMD_HELP_CONTENTS
  MENUITEM "搜尋(&S)...", CMD_HELP_SEARCH
  MENUITEM "如何使用幫助(&H)", CMD_HELP_ON_HELP
  MENUITEM SEPARATOR
  MENUITEM "關於記事本(&A)", CMD_HELP_ABOUT_NOTEPAD
 }
}

/* Dialog `Page setup' */

DIALOG_PAGESETUP DIALOG 0, 0, 225, 95
STYLE DS_MODALFRAME | WS_CAPTION | WS_SYSMENU
FONT 9, "MS Shell Dlg"
CAPTION "版面設定"
{
LTEXT    "頁首(&H):", 0x140, 10, 07, 40, 15
EDITTEXT IDC_PAGESETUP_HEADERVALUE, 60, 05,110, 12, WS_BORDER | WS_TABSTOP
LTEXT    "腳註(&F):", 0x142, 10, 24, 40, 15
EDITTEXT IDC_PAGESETUP_FOOTERVALUE, 60, 22,110, 12, WS_BORDER | WS_TABSTOP

GROUPBOX "邊緣空白(&M):", 0x144, 10, 43,160, 45
LTEXT    "左(&L):", 0x145, 20, 55, 30, 10, WS_CHILD
EDITTEXT IDC_PAGESETUP_LEFTVALUE, 50, 55, 35, 11, WS_CHILD | WS_BORDER | WS_TABSTOP
LTEXT    "上(&T):", 0x148, 20, 73, 30, 10, WS_CHILD
EDITTEXT IDC_PAGESETUP_TOPVALUE, 50, 73, 35, 11, WS_CHILD | WS_BORDER | WS_TABSTOP
LTEXT    "右(&R):", 0x14B, 100, 55, 30, 10, WS_CHILD
EDITTEXT IDC_PAGESETUP_RIGHTVALUE, 130, 55, 35, 11, WS_CHILD | WS_BORDER | WS_TABSTOP
LTEXT    "下(&B):", 0x14E,100, 73, 30, 10, WS_CHILD
EDITTEXT IDC_PAGESETUP_BOTTOMVALUE, 130, 73, 35, 11, WS_CHILD | WS_BORDER | WS_TABSTOP

DEFPUSHBUTTON "確定", IDOK, 180, 3, 40, 15, WS_TABSTOP
PUSHBUTTON    "取消", IDCANCEL, 180, 21, 40, 15, WS_TABSTOP
PUSHBUTTON    "幫助(&H)", IDHELP, 180, 39, 40, 15, WS_TABSTOP
}

STRINGTABLE DISCARDABLE
{
STRING_PAGESETUP_HEADERVALUE, "&f"
STRING_PAGESETUP_FOOTERVALUE, "&p 頁"

STRING_NOTEPAD,        "記事本"
STRING_ERROR,          "錯誤"
STRING_WARNING,        "警告"
STRING_INFO,           "信息"

STRING_UNTITLED,       "(未命名)"

STRING_ALL_FILES,      "所有檔案 (*.*)"
STRING_TEXT_FILES_TXT, "文本檔案 (*.txt)"

STRING_TOOLARGE,       "記事本不能開啟 '%s' 這麼大的檔案,\n請使用別的編輯器。"
STRING_NOTEXT,         "您沒有輸入任何文本。\n請輸入一些再試"
STRING_DOESNOTEXIST,   "檔案 '%s'\n不存在\n\n您想新建一個檔案嗎？"
STRING_NOTSAVED,       "檔案 '%s'\n正文已更改\n\n是否儲存更改？"
STRING_NOTFOUND,       "找不到: '%s'"
STRING_OUT_OF_MEMORY,  "沒有足夠的內存來完成此項任務,\n請關閉一些程式後再試。"
}
