
//-----------------------------------------------------------------------------
// This is a part of the Microsoft Source Code Samples.
// Copyright (C) 1993-1996 Microsoft Corporation.
// All rights reserved.
//
// This source code is only intended as a supplement to
// Microsoft Development Tools and/or WinHelp documentation.
// See these sources for detailed information regarding the
// Microsoft samples programs.
//-----------------------------------------------------------------------------


#include <windows.h>
#include "globals.h"

#include <winver.h>

//
// Dialog Boxes and Windows
//
#include "filer.dlg"

//
// Icons
//
UI_FILERICON ICON filer.ico

//
// Bitmaps
//
UB_FLOPPY1  BITMAP  FLOPPY.BMP
UB_FLOPPY2  BITMAP  FLOPPY2.BMP
UB_REMOTE1  BITMAP  REMOTE.BMP
UB_REMOTE2  BITMAP  REMOTE2.BMP
UB_CD1      BITMAP  CD.BMP
UB_CD2      BITMAP  CD2.BMP
UB_FIXED1   BITMAP  FIXED.BMP
UB_FIXED2   BITMAP  FIXED2.BMP

LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US

//
// Menus
//
FilerMenu MENU
{
    POPUP  "&File"
    {
        MENUITEM "&Open\t Enter",                   MM_OPEN
        MENUITEM SEPARATOR
        MENUITEM "&Copy\t Ctrl-C",                  MM_COPY
        MENUITEM "&Delete\t Ctrl-X",                MM_DELETE
        MENUITEM "&Move\t Ctrl-M",                  MM_MOVE
        MENUITEM "&Rename\t Ctrl-R",                MM_RENAME
        MENUITEM "File &Version Info\t Alt-Enter",  MM_VERSION
        MENUITEM SEPARATOR
        MENUITEM "Ma&ke Dir\t Ctrl-K",              MM_MKDIR
        MENUITEM "De&lete Dir\t Ctrl-L",            MM_DELDIR, GRAYED
        MENUITEM SEPARATOR
        MENUITEM "E&xit\t   Alt-F4",                MM_EXIT
    }
    POPUP  "&View"
    {
        MENUITEM "Toggle &Active Drive\t F2",       MM_ACTIVEDRV
        MENUITEM "&Refresh\t F3",                   MM_REFRESH
        MENUITEM SEPARATOR
        MENUITEM "&Expand Tree\t F5",               MM_EXPAND
        MENUITEM "&Keep Command Windows\t F6",      MM_KEEPCMD
        MENUITEM SEPARATOR
        MENUITEM "&Swap Sides\t F7",                MM_SWAP
        MENUITEM "Window &Orientation\t F8",        MM_ORIENT
        MENUITEM SEPARATOR
        MENUITEM "&Focus Tree/File/Command\t Tab",  MM_TAB
        MENUITEM "&Clear Selection/Abort\t Esc"     MM_ESCAPE
    }
    POPUP  "&Drives"                        // see DRIVE_MENU_NUM in filer.h
    {
        MENUITEM SEPARATOR
    }
    POPUP  "&Help"
    {
        MENUITEM "&About Filer...",                 MM_ABOUT
    }
}

//
// Accelerators
//
ACCEL_ID ACCELERATORS
{
    VK_TAB,     MM_TAB,         VIRTKEY
    VK_ESCAPE,  MM_ESCAPE,      VIRTKEY
    VK_RETURN,  MM_OPEN,        VIRTKEY
    VK_RETURN,  MM_VERSION,     VIRTKEY, ALT
    VK_F4,      MM_EXIT,        VIRTKEY, ALT
    VK_F2,      MM_ACTIVEDRV,   VIRTKEY
    VK_F3,      MM_REFRESH,     VIRTKEY
    VK_F5,      MM_EXPAND,      VIRTKEY
    VK_F6,      MM_KEEPCMD,     VIRTKEY
    VK_F7,      MM_SWAP,        VIRTKEY
    VK_F8,      MM_ORIENT,      VIRTKEY

    VK_INSERT,  MM_COPY,        VIRTKEY, CONTROL
    "^C",       MM_COPY
    "^M",       MM_MOVE
    VK_DELETE,  MM_DELETE,      VIRTKEY, CONTROL
    "^X",       MM_DELETE
    "^R",       MM_RENAME
    "^K",       MM_MKDIR
    "^L",       MM_DELDIR
}

//
// String Table
//

STRINGTABLE
{
STR_EXE ".EXE"                      // file extensions for spawnable files
STR_COM ".COM"                      //   NUM_EXTENSION_STRINGS contains the
STR_CMD ".CMD"                      //   number of these strings.
STR_BAT ".BAT"
IDS_ABOUTDLGERR "Main: About Dialog Creation Error!"
IDS_DRVBUTTNERR "DriveBarProc: Drive Button Destroy Error"
IDS_CHNGDRVERR  "Error changing Drives."
IDS_SELOBJERR   "WM_DRAWITEM: SelectObject failure."
IDS_BITBLTERR   "WM_DRAWITEM: BitBlt failure."
IDS_DRVNOTACTVE "A Drive Window Must be Active."
IDS_INSRTMEDIA  "Filer: Insert some media in drive"
IDS_SRCSTRNGERR "RunCommandItem: Get Source String failure."
IDS_CANTSPAWN   "RunListBoxItem: Unable to spawn file."
IDS_MENUERR1    "UpdateDrivesMenu: GetSubMenu error."
IDS_MENUERR2    "Main Refresh: Menu Item Count Error."
IDS_MENUERR3    "Main Refresh: Menu Item Delete Error."
IDS_MENUERR4    "Main Refresh: Menu Item Insert Error."
IDS_ENUMDRVERR	"EnumDrives: Get Drive Strings error"
IDS_ENUMALOCERR "EnumDrives: Allocation error"
IDS_ENUMSTRERR	"EnumDrives: Drive String size Changed!"
IDS_DRVALOCERR	"EnumDrives: DRVINFO Allocation error"
IDS_DCCDRVLST	"Drive Child Create: Drive list failure."
IDS_DCCCURDIR   "Drive Child Create: GetCurrentDir failure."
IDS_DCCTABSTP   "Drv window Create: Set tab stop failure."
IDS_MMOPENERR   "MM_OPEN: Filldir failure."
IDS_COPYING     "COPYING:"
IDS_COPYINGTO   "TO:"
IDS_DELETING    "DELETING:"
IDS_DELETINGFRM "FROM:"
IDS_MOVING      "MOVING:"
IDS_RENAMEERR   "DriveProc: Rename Dialog Creation failure."
IDS_MKDIRERR    "DriveProc: MkDir Dialog Creation failure."
IDS_VERDLGERR   "DriveProc: Version Info Dialog Creation failure."
IDS_MMEXPAND    "MM_EXPAND:  MM_REFRESH failure."
IDS_REFRESH1    "Refresh Drv window: Reset Dir LB content failure."
IDS_REFRESH2    "MM_REFRESH: FullExpand CreateThread failure."
IDS_REFRESH3    "Refresh Drv window: Fillfile failure."
IDS_FILDIRERR   "MM_FILLDIR: ExpDir CreateThread failure."
IDS_FILDIRERR2  "MM_FILLFILE: File LB Mutex Timeout."
IDS_FILDIRERR3  "MM_FILLFILE:  Fill ListBox failure."
IDS_FILDIRERR4  "MM_FILLFILE:  Listbox selection failure."
IDS_DBLCLKERR   "Dir ListBox Notify: Filldir failure."
IDS_SELCNGERR   "Dir LB Notify: Dir LB Mutex Timeout."
IDS_CONDIRERR   "Dir LB Notify:  ConstructDirName failure."
IDS_LBNOTFYERR  "Dir ListBox Notify: Fillfile failure."
IDS_PARNTFYERR  "Drv child: Parent notify failure."
IDS_GETLBTXTERR "LBN_DBLCLK: Text retrieval failure."
IDS_OPENLBERR   "OpenListBoxItem: Fillfile failure." 
IDS_CANTEDIT    "RunListBoxItem: Unable to edit file."
IDS_FILE        "File:  "
IDS_DIR         "Directory:  "
IDS_GETVERERR   "VersionProc: GetFileVersionInfoSize() failure."
IDS_GETVERERR2  "VersionProc: Add Key string failure."
IDS_GETVERERR3  "VersionProc: Add Value string failure."
IDS_GETVERERR4  "VersionProc: Key LB Set Initial Selection failure."
IDS_GETVERERR5  "VersionProc: Value LB Set Initial Selection failure."
IDS_GETVERERR6  "VersionProc: ListBox Set Current Selection failure."
IDS_GETVERERR7  "VersionProc: ListBox Get Selection failure."
IDS_GETVERERR8  "VersionProc: ListBox Get Current Selection failure."
IDS_ISDIRERR    "IsDirectory: String parse failure."
IDS_EXEFILEERR  "ExecuteFileAction: File I/O Dialog Creation failure."
IDS_SELPROCERR  "SelectProc: Set Action Text failure."
IDS_SELDLGERR   "FillSelectDlg: Item list allocation failure."
IDS_SELDLGERR2  "FillSelectDlg: Get Selections failure."
IDS_SELDLGERR3  "FillSelectDlg: Get source string failure."
IDS_SELDLGERR4  ":  Access Denied."
IDS_SELDLGERR5  "FillSelectDlg: Add source string failure."
IDS_SELDLGERR6  "FillSelectDlg: GetTextMetrics failure."
IDS_SELDLGERR7  "FillSelectDlg: Set Destination text failure."
IDS_FILEIOERR   "DoFileIO: file selection failure."
IDS_FILEIOERR2  "Do I/O: Get Destination failure."
IDS_FILEIOERR3  "DoFileIO: file string retrieval failure."
IDS_HNDIOMSG    "File Already Exists!  Overwrite file?"
IDS_HNDIOMSG2   "Access Denied.  Check file name or security. Error %ld"
IDS_HNDIOMSG3   "ERROR: The disk is full.  Unable to continue."
IDS_HNDIOMSG4   "ERROR: The path or file does not exist.  Unable to continue."
IDS_HNDIOMSG5   "File I/O failure. Error %ld"
IDS_RENMEMSG    "Rename: Add Source String failure."
IDS_RENMEMSG2   "Rename: Add Destination String failure."
IDS_RENMEMSG3   "Rename: Get Source String failure."
IDS_RENMEMSG4   "Rename works only in current directory."
IDS_RENMEMSG5   "Filer Notification"
IDS_RENMEMSG6   "Rename: Get Destination String failure."
IDS_RENMEMSG7   "RenameProc: Fillfile failure."
IDS_MKDIRMSG    "Mkdir: Add Directory Name String failure."
IDS_MKDIRMSG2   "MkDir: Get Directory Location String failure."
IDS_MKDIRMSG3   "MkDir: Create Directory failure."
IDS_TXTMSG      "Textwindow: Set text failure."

STR_DEF_EDITOR  "notepad.exe"
}

/////////////////////////////////////////////////////////////////////////////
//
// Version
//

VS_VERSION_INFO VERSIONINFO
FILEVERSION 0,9,0,0
PRODUCTVERSION  3,1,0,0
FILEFLAGSMASK   VS_FFI_FILEFLAGSMASK
FILEFLAGS       (VS_FF_PRERELEASE|VS_FF_DEBUG)
FILEOS          VOS_NT_WINDOWS32
FILETYPE        VFT_APP
FILESUBTYPE     VFT2_UNKNOWN
BEGIN
    BLOCK "StringFileInfo"
    BEGIN
        BLOCK "040904E4"
        BEGIN
            VALUE "CompanyName",     "Microsoft Corporation\0"
            VALUE "FileDescription", "File Management Sample Application\0"
            VALUE "FileVersion",     "1.0\0"
            VALUE "InternalName",    "Filer\0"
            VALUE "LegalCopyright", "Copyright (C) Microsoft Corp. 1990-1995\0"
            VALUE "LegalTrademarks", "Microsoft(R) is a registered trademark of Microsoft Corporation. Windows(TM) is a trademark of Microsoft Corporation\0"
            VALUE "ProductName",     "Filer\0"
            VALUE "ProductVersion",  "1.0\0"
        END
        BLOCK "041104E4"
        BEGIN
            VALUE "CompanyName",     "Microsoft Corporation\0"
            VALUE "FileDescription", "File Management Sample Application\0"
            VALUE "FileVersion",     "1.0\0"
            VALUE "InternalName",    "Filer\0"
            VALUE "LegalCopyright", "Copyright (C) Microsoft Corp. 1990-1995\0"
            VALUE "LegalTrademarks", "Microsoft(R) is a registered trademark of Microsoft Corporation. Windows(TM) is a trademark of Microsoft Corporation\0"
            VALUE "ProductName",     "Filer\0"
            VALUE "ProductVersion",  "1.0\0"
        END
    END
    BLOCK "VarFileInfo"
    BEGIN
        VALUE "Translation", 0x409, 1252, 0x411, 1252
    END
END

// Start Japanese language resources
#ifdef JAPAN
LANGUAGE LANG_JAPANESE, SUBLANG_NEUTRAL

//
// Menus
//
FilerMenu MENU
{
    POPUP  "ファイル(&F)"
    {
        MENUITEM "開く(&O)\t Enter",MM_OPEN
        MENUITEM SEPARATOR
        MENUITEM "コピー(&C)\t Ctrl-C",   MM_COPY
        MENUITEM "削除(&D)\t Ctrl-X",   MM_DELETE
        MENUITEM "移動(&M)\t Ctrl-M",   MM_MOVE
        MENUITEM "名前の変更(&R)\t Ctrl-R", MM_RENAME
        MENUITEM "ファイルバージョン情報(&V)\t Alt-Enter",  MM_VERSION
        MENUITEM SEPARATOR
        MENUITEM "ディレクトリの作成(&K)\t Ctrl-K", MM_MKDIR
        MENUITEM "ディレクトリの削除(&L)\t Ctrl-L", MM_DELDIR, GRAYED
        MENUITEM SEPARATOR
        MENUITEM "終了(&X)\t   Alt-F4", MM_EXIT
    }
    POPUP  "表示(&V)"
    {
        MENUITEM "アクティブなドライブをトグル(&A)\t F2",           MM_ACTIVEDRV
        MENUITEM "最新表示(&R)\t F3",                               MM_REFRESH
        MENUITEM SEPARATOR
        MENUITEM "ツリーを拡張(&E)\t F5",                           MM_EXPAND
        MENUITEM "コマンド ウィンドウを保持(&K)\t F6",              MM_KEEPCMD
        MENUITEM SEPARATOR
        MENUITEM "サイドを入れ換え(&S)\t F7",                     MM_SWAP
        MENUITEM "ウィンドウの向き(&O)\t F8",                       MM_ORIENT
        MENUITEM SEPARATOR
        MENUITEM "ツリー／ファイル／コマンドにフォーカス(&F)\t Tab",MM_TAB
        MENUITEM "選択を解除(&C)\t Esc",                            MM_ESCAPE
    }
    POPUP  "ドライブ(&D)"                   // see DRIVE_MENU_NUM in filer.h
    {
        MENUITEM SEPARATOR
    }
    POPUP  "ヘルプ(&H)"
    {
        MENUITEM "バージョン情報(&A)...", MM_ABOUT
    }
}

//
// String Table
//

STRINGTABLE
{
STR_EXE ".EXE"                      // file extensions for spawnable files
STR_COM ".COM"                      //   NUM_EXTENSION_STRINGS contains the
STR_CMD ".CMD"                      //   number of these strings.
STR_BAT ".BAT"
IDS_ABOUTDLGERR "Main: バージョン情報ダイアログの作成でエラー!"
IDS_DRVBUTTNERR "DriveBarProc: ドライブ ボタンの破壊でエラー。"
IDS_CHNGDRVERR  "ドライブの変更でエラー。"
IDS_SELOBJERR   "WM_DRAWITEM: SelectObject でエラー。"
IDS_BITBLTERR   "WM_DRAWITEM: BitBlt でエラー。"
IDS_DRVNOTACTVE "ドライブ ウィンドウはアクティブにならなければなりません。"
IDS_INSRTMEDIA  "Filer: ドライブになにかメディアを挿入してください"  
IDS_SRCSTRNGERR "RunCommandItem: 送り側文字列の取得でエラー。"
IDS_CANTSPAWN   "RunListBoxItem: プロセスが生成できません。"
IDS_MENUERR1    "UpdateDrivesMenu: GetSubMenu でエラー。"
IDS_MENUERR2    "Main Refresh: メニュー アイテムのカウントでエラー。"
IDS_MENUERR3    "Main Refresh: メニュー アイテムの削除でエラー。"
IDS_MENUERR4    "Main Refresh: メニュー アイテムの挿入でエラー。"
IDS_ENUMDRVERR	"EnumDrives: ドライブ文字列の取得でエラー。"
IDS_ENUMALOCERR	"EnumDrives: アロケーション エラー。"
IDS_ENUMSTRERR	"EnumDrives: ドライブ文字列のサイズが変更されました!"
IDS_DRVALOCERR	"EnumDrives: DRVINFO のアロケーション エラー。"
IDS_DCCDRVLST	"Drive Child Create: ドライブのリストでエラー。"
IDS_DCCCURDIR   "Drive Child Create: GetCurrentDir でエラー。"
IDS_DCCTABSTP   "Drv window Create: タブの設定でエラー。"
IDS_MMOPENERR   "MM_OPEN: Filldir でエラー"
IDS_COPYING     "コピー:"
IDS_COPYINGTO   "コピー先:"
IDS_DELETING    "削除:"
IDS_DELETINGFRM "削除元:"
IDS_MOVING      "移動:"
IDS_RENAMEERR   "DriveProc: 名前変更のダイアログの作成でエラー。"
IDS_MKDIRERR    "DriveProc: ディレクトリ作成ダイアログの作成でエラー。"
IDS_VERDLGERR   "DriveProc: バージョン情報ダイアログの作成でエラー。"
IDS_MMEXPAND    "MM_EXPAND:  MM_REFRESH でエラー。"
IDS_REFRESH1    "Refresh Drv window: Reset Dir LB content でエラー。"
IDS_REFRESH2    "MM_REFRESH: FullExpand CreateThread でエラー。"
IDS_REFRESH3    "Refresh Drv window: Fillfile でエラー。"
IDS_FILDIRERR   "MM_FILLDIR: ExpDir CreateThread でエラー。"
IDS_FILDIRERR2  "MM_FILLFILE: File LB Mutexタイムアウト。"
IDS_FILDIRERR3  "MM_FILLFILE:  Fill ListBox でエラー。"
IDS_FILDIRERR4  "MM_FILLFILE:  Listbox selection でエラー。"
IDS_DBLCLKERR   "Dir ListBox Notify: Filldir でエラー。"
IDS_SELCNGERR   "Dir LB Notify: Dir LB Mutex タイムアウト。"
IDS_CONDIRERR   "Dir LB Notify:  ConstructDirName でエラー。"
IDS_LBNOTFYERR  "Dir ListBox Notify: Fillfile でエラー。"
IDS_PARNTFYERR  "Drv child: Parent notify でエラー。"
IDS_GETLBTXTERR "LBN_DBLCLK: 文字列が取得できません。"
IDS_OPENLBERR   "OpenListBoxItem: Fillfile でエラー。"
IDS_CANTEDIT    "RunListBoxItem: ファイルを編集できません。"
IDS_FILE        "ファイル:  "
IDS_DIR         "ディレクトリ:  "
IDS_GETVERERR   "VersionProc: GetFileVersionInfoSize() でエラー。"
IDS_GETVERERR2  "VersionProc: バージョンキー文字列の追加でエラー。"
IDS_GETVERERR3  "VersionProc: バージョンキー文字列の追加でエラー"
IDS_GETVERERR4  "VersionProc: リストボックスの文字列選択でエラー"
IDS_GETVERERR5  "VersionProc: リストボックスの文字列選択でエラー"
IDS_GETVERERR6  "VersionProc: リストボックスのカレントセレクション設定でエラー。"
IDS_GETVERERR7  "VersionProc: リストボックスの文字列選択でエラー。"
IDS_GETVERERR8  "VersionProc: リストボックスの選択位置取得でエラー。"
IDS_ISDIRERR    "IsDirectory: 文字列の分解でエラー。"
IDS_EXEFILEERR  "ExecuteFileAction: ファイル I/O ダイアログの作成でエラー!"
IDS_SELPROCERR  "SelectProc: アクション テキストの設定でエラー。"
IDS_SELDLGERR   "FillSelectDlg: アイテム リストのアロケーションでエラー。"
IDS_SELDLGERR2  "FillSelectDlg: 選択の取得でエラー。" 
IDS_SELDLGERR3  "FillSelectDlg: ソース文字列の取得でエラー。"
IDS_SELDLGERR4  ":  アクセスが拒否されました。"
IDS_SELDLGERR5  "FillSelectDlg: ソース ストリングの追加でエラー。"
IDS_SELDLGERR6  "FillSelectDlg: GetTextMetrics でエラー。"
IDS_SELDLGERR7  "FillSelectDlg: 受け側のテキストの設定でエラー。"
IDS_FILEIOERR   "DoFileIO: ファイルの選択を取得できません。"
IDS_FILEIOERR2  "Do I/O: 受け側の取得でエラー。"
IDS_FILEIOERR3  "DoFileIO: ファイル アイテムを取得する事ができません。"
IDS_HNDIOMSG    "ファイルはすでに存在しています。上書きしますか？"
IDS_HNDIOMSG2   "アクセスが拒否されました。ファイル名かセキュリティを確認してください。エラー %ld"
IDS_HNDIOMSG3   "ERROR: ディスクが一杯です。続けることができません。"
IDS_HNDIOMSG4   "ERROR: パスかファイルが存在しません。続けることができません。"
IDS_HNDIOMSG5   "ファイル I/O に失敗しました。エラー %ld"
IDS_RENMEMSG    "Rename: 送り側文字列の取得でエラー。"
IDS_RENMEMSG2   "Rename: 受け側文字列の取得でエラー。"
IDS_RENMEMSG3   "Rename: 送り側文字列の取得でエラー。"
IDS_RENMEMSG4   "現行ディレクトリ内でのみ名前の変更ができます。"
IDS_RENMEMSG5   "Filer 通知"
IDS_RENMEMSG6   "Rename: 受け側文字列の取得でエラー。"
IDS_RENMEMSG7   "RenameProc: Fillfile でエラー。"
IDS_MKDIRMSG    "Mkdir: ディレクトリ名文字列の追加でエラー。"
IDS_MKDIRMSG2   "MkDir: ディレクトリ ロケーション文字列の取得でエラー。"
IDS_MKDIRMSG3   "MkDir: ディレクトリの作成でエラー。"
IDS_TXTMSG      "Textwindow: テキストの設定でエラー。"

STR_DEF_EDITOR  "notepad.exe"
}

#endif
//End Japanese language resources
