📄 cproptypes.cpp
字号:
cDlgOpenFile.Create(
m_hInstance,
hwndDlg,
"*.*",
szPath
);
if( cDlgOpenFile.DoModal_GetOpenFileName( szPath ) ){
strcpy( m_Types.m_szHokanFile, szPath );
::SetDlgItemText( hwndDlg, IDC_EDIT_HOKANFILE, m_Types.m_szHokanFile );
}
}
return TRUE;
// From Here Sept. 12, 2000 JEPRO
case IDC_CHECK_USEKEYWORDHELP: /* キーワードヘルプ機能を使う時だけ辞書ファイル指定と参照ボタンをEnableにする */
::CheckDlgButton( hwndDlg, IDC_CHECK_USEKEYWORDHELP, m_Types.m_bUseKeyWordHelp );
if( BST_CHECKED == m_Types.m_bUseKeyWordHelp ){
::EnableWindow( ::GetDlgItem( hwndDlg, IDC_LABEL_KEYWORDHELPFILE ), TRUE );
::EnableWindow( ::GetDlgItem( hwndDlg, IDC_EDIT_KEYWORDHELPFILE ), TRUE );
::EnableWindow( ::GetDlgItem( hwndDlg, IDC_BUTTON_KEYWORDHELPFILE_REF ), TRUE );
}else{
::EnableWindow( ::GetDlgItem( hwndDlg, IDC_LABEL_KEYWORDHELPFILE ), FALSE );
::EnableWindow( ::GetDlgItem( hwndDlg, IDC_EDIT_KEYWORDHELPFILE ), FALSE );
::EnableWindow( ::GetDlgItem( hwndDlg, IDC_BUTTON_KEYWORDHELPFILE_REF ), FALSE );
}
return TRUE;
// To Here Sept. 12, 2000
case IDC_BUTTON_KEYWORDHELPFILE_REF: /* キーワードヘルプ 辞書ファイルの「参照...」ボタン */
{
CDlgOpenFile cDlgOpenFile;
char szPath[_MAX_PATH + 1];
// 2003.06.23 Moca 相対パスは実行ファイルからのパスとして開く
if( _IS_REL_PATH( m_Types.m_szKeyWordHelpFile ) ){
GetExecutableDir( szPath, m_Types.m_szKeyWordHelpFile );
}else{
strcpy( szPath, m_Types.m_szKeyWordHelpFile );
}
/* ファイルオープンダイアログの初期化 */
cDlgOpenFile.Create(
m_hInstance,
hwndDlg,
"*.*",
szPath
);
if( cDlgOpenFile.DoModal_GetOpenFileName( szPath ) ){
strcpy( m_Types.m_szKeyWordHelpFile, szPath );
::SetDlgItemText( hwndDlg, IDC_EDIT_KEYWORDHELPFILE, m_Types.m_szKeyWordHelpFile );
}
}
return TRUE;
case IDC_BUTTON_TYPEOPENHELP: /* 外部ヘルプ1の「参照...」ボタン */
{
CDlgOpenFile cDlgOpenFile;
char szPath[_MAX_PATH + 1];
// 2003.06.23 Moca 相対パスは実行ファイルからのパスとして開く
if( _IS_REL_PATH( m_Types.m_szExtHelp ) ){
GetExecutableDir( szPath, m_Types.m_szExtHelp );
}else{
strcpy( szPath, m_Types.m_szExtHelp );
}
/* ファイルオープンダイアログの初期化 */
cDlgOpenFile.Create(
m_hInstance,
hwndDlg,
"*.hlp",
szPath
);
if( cDlgOpenFile.DoModal_GetOpenFileName( szPath ) ){
strcpy( m_Types.m_szExtHelp, szPath );
::SetDlgItemText( hwndDlg, IDC_EDIT_TYPEEXTHELP, m_Types.m_szExtHelp );
}
}
return TRUE;
case IDC_BUTTON_TYPEOPENEXTHTMLHELP: /* 外部HTMLヘルプの「参照...」ボタン */
{
CDlgOpenFile cDlgOpenFile;
char szPath[_MAX_PATH + 1];
// 2003.06.23 Moca 相対パスは実行ファイルからのパスとして開く
if( _IS_REL_PATH( m_Types.m_szExtHtmlHelp ) ){
GetExecutableDir( szPath, m_Types.m_szExtHtmlHelp );
}else{
strcpy( szPath, m_Types.m_szExtHtmlHelp );
}
/* ファイルオープンダイアログの初期化 */
cDlgOpenFile.Create(
m_hInstance,
hwndDlg,
"*.chm;*.col",
szPath
);
if( cDlgOpenFile.DoModal_GetOpenFileName( szPath ) ){
strcpy( m_Types.m_szExtHtmlHelp, szPath );
::SetDlgItemText( hwndDlg, IDC_EDIT_TYPEEXTHTMLHELP, m_Types.m_szExtHtmlHelp );
}
}
return TRUE;
}
break; /* BN_CLICKED */
}
break; /* WM_COMMAND */
case WM_NOTIFY:
// idCtrl = (int)wParam;
pNMHDR = (NMHDR*)lParam;
// pMNUD = (NM_UPDOWN*)lParam;
switch( pNMHDR->code ){
case PSN_HELP: //Jul. 03, 2001 JEPRO 支援タブのヘルプを有効化
OnHelp( hwndDlg, IDD_PROPTYPESP2 );
return TRUE;
case PSN_KILLACTIVE:
/* ダイアログデータの取得 p2 */
GetData_p2( hwndDlg );
return TRUE;
//@@@ 2002.01.03 YAZAKI 最後に表示していたシートを正しく覚えていないバグ修正
case PSN_SETACTIVE:
m_nPageNum = 2;
return TRUE;
}
break;
//From Here Jul. 05, 2001 JEPRO: Popup Help
case WM_HELP:
{
HELPINFO *p = (HELPINFO *)lParam;
::WinHelp( (HWND)p->hItemHandle, m_szHelpFile, HELP_WM_HELP, (ULONG_PTR)(LPVOID)p_helpids3 );
}
return TRUE;
/*NOTREACHED*/
// break;
//To Here Jul. 05, 2001
//@@@ 2001.11.17 add start MIK
//Context Menu
case WM_CONTEXTMENU:
::WinHelp( hwndDlg, m_szHelpFile, HELP_CONTEXTMENU, (ULONG_PTR)(LPVOID)p_helpids3 );
return TRUE;
//@@@ 2001.11.17 add end MIK
}
return FALSE;
}
/* ダイアログデータの設定 p2 */
void CPropTypes::SetData_p2( HWND hwndDlg )
{
/* 入力補完 単語ファイル */
::SetDlgItemText( hwndDlg, IDC_EDIT_HOKANFILE, m_Types.m_szHokanFile );
// 2001/06/19 asa-o
/* 入力補完機能:英大文字小文字を同一視する */
::CheckDlgButton( hwndDlg, IDC_CHECK_HOKANLOHICASE, m_Types.m_bHokanLoHiCase );
// 2003.06.25 Moca ファイルからの補完機能
::CheckDlgButton( hwndDlg, IDC_CHECK_HOKANBYFILE, m_Types.m_bUseHokanByFile );
/* キーワードヘルプを使用する */
::CheckDlgButton( hwndDlg, IDC_CHECK_USEKEYWORDHELP, m_Types.m_bUseKeyWordHelp );
// From Here Sept. 12, 2000 JEPRO キーワードヘルプ機能を使う時だけ辞書ファイル指定と参照ボタンをEnableにする
if( BST_CHECKED == m_Types.m_bUseKeyWordHelp ){
::EnableWindow( ::GetDlgItem( hwndDlg, IDC_LABEL_KEYWORDHELPFILE ), TRUE );
::EnableWindow( ::GetDlgItem( hwndDlg, IDC_EDIT_KEYWORDHELPFILE ), TRUE );
::EnableWindow( ::GetDlgItem( hwndDlg, IDC_BUTTON_KEYWORDHELPFILE_REF ), TRUE );
}else{
::EnableWindow( ::GetDlgItem( hwndDlg, IDC_LABEL_KEYWORDHELPFILE ), FALSE );
::EnableWindow( ::GetDlgItem( hwndDlg, IDC_EDIT_KEYWORDHELPFILE ), FALSE );
::EnableWindow( ::GetDlgItem( hwndDlg, IDC_BUTTON_KEYWORDHELPFILE_REF ), FALSE );
}
// To Here Sept. 12, 2000
/* キーワードヘルプ 辞書ファイル */
::SetDlgItemText( hwndDlg, IDC_EDIT_KEYWORDHELPFILE, m_Types.m_szKeyWordHelpFile );
//@@@ 2002.2.2 YAZAKI
::SetDlgItemText( hwndDlg, IDC_EDIT_TYPEEXTHELP, m_Types.m_szExtHelp );
::SetDlgItemText( hwndDlg, IDC_EDIT_TYPEEXTHTMLHELP, m_Types.m_szExtHtmlHelp );
::CheckDlgButton( hwndDlg, IDC_CHECK_TYPEHTMLHELPISSINGLE, m_Types.m_bHtmlHelpIsSingle );
return;
}
/* ダイアログデータの取得 p2 */
int CPropTypes::GetData_p2( HWND hwndDlg )
{
//@@@ 2002.01.03 YAZAKI 最後に表示していたシートを正しく覚えていないバグ修正
// m_nPageNum = 2;
// 2001/06/19 asa-o
/* 入力補完機能:英大文字小文字を同一視する */
m_Types.m_bHokanLoHiCase = ::IsDlgButtonChecked( hwndDlg, IDC_CHECK_HOKANLOHICASE );
m_Types.m_bUseHokanByFile = ::IsDlgButtonChecked( hwndDlg, IDC_CHECK_HOKANBYFILE );
/* 入力補完 単語ファイル */
::GetDlgItemText( hwndDlg, IDC_EDIT_HOKANFILE, m_Types.m_szHokanFile, sizeof( m_Types.m_szHokanFile ));
/* キーワードヘルプを使用する */
m_Types.m_bUseKeyWordHelp = ::IsDlgButtonChecked( hwndDlg, IDC_CHECK_USEKEYWORDHELP );
/* キーワードヘルプ 辞書ファイル */
::GetDlgItemText( hwndDlg, IDC_EDIT_KEYWORDHELPFILE, m_Types.m_szKeyWordHelpFile, sizeof( m_Types.m_szKeyWordHelpFile ));
//@@@ 2002.2.2 YAZAKI
::GetDlgItemText( hwndDlg, IDC_EDIT_TYPEEXTHELP, m_Types.m_szExtHelp, sizeof( m_Types.m_szExtHelp ));
::GetDlgItemText( hwndDlg, IDC_EDIT_TYPEEXTHTMLHELP, m_Types.m_szExtHtmlHelp, sizeof( m_Types.m_szExtHtmlHelp ));
m_Types.m_bHtmlHelpIsSingle = ::IsDlgButtonChecked( hwndDlg, IDC_CHECK_TYPEHTMLHELPISSINGLE );
return TRUE;
}
// 2001/06/13 End
/* 色の設定をインポート */
void CPropTypes::p3_Import_Colors( HWND hwndDlg )
{
CDlgOpenFile cDlgOpenFile;
char* pszMRU = NULL;;
char* pszOPENFOLDER = NULL;;
char szPath[_MAX_PATH + 1];
HFILE hFile;
// char szLine[1024];
// int i;
int i;
char pHeader[1024];
int nColorInfoArrNum; /* キー割り当て表の有効データ数 */
ColorInfo ColorInfoArr[64];
char szInitDir[_MAX_PATH + 1];
// HWND hwndCtrl;
CProfile cProfile;
strcpy( szPath, "" );
strcpy( szInitDir, m_pShareData->m_szIMPORTFOLDER ); /* インポート用フォルダ */
/* ファイルオープンダイアログの初期化 */
cDlgOpenFile.Create(
m_hInstance,
hwndDlg,
"*.col",
szInitDir,
(const char **)&pszMRU,
(const char **)&pszOPENFOLDER
);
if( !cDlgOpenFile.DoModal_GetOpenFileName( szPath ) ){
return;
}
/* ファイルのフルパスを、フォルダとファイル名に分割 */
/* [c:\work\test\aaa.txt] → [c:\work\test] + [aaa.txt] */
::SplitPath_FolderAndFile( szPath, m_pShareData->m_szIMPORTFOLDER, NULL );
strcat( m_pShareData->m_szIMPORTFOLDER, "\\" );
/* 色設定Ver1か */
hFile = _lopen( szPath, OF_READ );
if( HFILE_ERROR == hFile ){
::MYMESSAGEBOX( hwndDlg, MB_OK | MB_ICONSTOP, GSTR_APPNAME, "ファイルを開けませんでした。\n\n%s", szPath );
return;
}
// if( STR_COLORDATA_HEAD_LEN == _lread( hFile, pHeader, STR_COLORDATA_HEAD_LEN )
// && sizeof( nColorInfoArrNum ) == _lread( hFile, &nColorInfoArrNum, sizeof( nColorInfoArrNum ) )
// && 0 == memcmp( pHeader, STR_COLORDATA_HEAD, STR_COLORDATA_HEAD_LEN )
// ){
// int nWorkWork = sizeof( ColorInfoArr[0] );
//
// for( i = 0; i < nColorInfoArrNum && i < m_Types.m_nColorInfoArrNum; ++i ){
// if( sizeof( ColorInfoArr[i] ) != _lread( hFile, &ColorInfoArr[i], sizeof( ColorInfoArr[i] ) ) ){
// ::MYMESSAGEBOX( hwndDlg, MB_OK | MB_ICONSTOP, GSTR_APPNAME,
// "色設定ファイルの形式が違います。\n\n%s", szPath
// );
// _lclose( hFile );
// return;
// }
// }
// _lclose( hFile );
// goto complete;
// }else{
/* ファイル先頭 */
_llseek( hFile, 0, FILE_BEGIN );
char szWork[256];
int nWorkLen;
// wsprintf( szWork, "//%s\r\n", STR_COLORDATA_HEAD2 );
#ifndef STR_COLORDATA_HEAD3
wsprintf( szWork, "//%s\r\n", STR_COLORDATA_HEAD21 ); //Nov. 2, 2000 JEPRO 変更 [注]. 0.3.9.0:ur3β10以降、設定項目の番号を入れ替えたため
#else
wsprintf( szWork, "//%s\r\n", STR_COLORDATA_HEAD3 ); //Jan. 15, 2001 Stonee
#endif
nWorkLen = strlen( szWork );
if( nWorkLen == (int)_lread( hFile, pHeader, nWorkLen ) &&
0 == memcmp( pHeader, szWork, nWorkLen )
){
}else{
::MYMESSAGEBOX( hwndDlg, MB_OK | MB_ICONSTOP, GSTR_APPNAME,
// "色設定ファイルの形式が違います。\n古い形式はサポートされなくなりました。\n%s", szPath
// Nov. 2, 2000 JEPRO 変更 [注]. 0.3.9.0:ur3β10以降、設定項目の番号を入れ替えたため
// Dec. 26, 2000 JEPRO UR1.2.24.0で強調キーワード2が入ってきたためCI[13]が追加された. それに伴い13番以降を1つづらした
// "色設定ファイルの形式が違います。\n古い形式はサポートされなくなりました。\n%s\n\n"
"色設定ファイルの形式が違います。古い形式はサポートされなくなりました。\n%s\n\n" //Jan. 20, 2001 JEPRO 改行を1つ取った
#ifdef STR_COLORDATA_HEAD3
// "色設定ファイルの変更内容はヘルプをご覧ください。" //Jan. 15, 2001 Stonee added //Jan. 20, 2001 JEPRO killed
// From Here Jan. 20, 2001 JEPRO 文字数オーバーのためコメントアウト!
// "現在の色設定Ver3では CI[インデックス番号] から C[インデックス名] に仕様が変更されました (CI→C に注意)。\n"
// "上記の色設定ファイルの設定内容を利用したい場合は、そのファイルをコピーしエディタで\n"
// "以下の修正を行ってからインポートしてください。\n\n"
// "?UR1.2.24.0 (2000/12/04) 以降で使っていた場合は\n"
// " (1) 一行目に書いてある Ver2 (or 2.1) を Ver3 と書き換え、CI をすべて C に縮める\n"
// " (2) (1)に加えて、インデックス番号を( )内の文字列に変更:\n"
// " 00(TXT), 01(RUL), 02(UND), 03(LNO), 04(MOD), 05(TAB), 06(ZEN), 07(CTL), 08(EOL),\n"
// " 09(RAP), 10(EOF), 11(FND), 12(KW1), 13(KW2), 14(CMT), 15(SQT), 16(WQT), 17(URL)\n\n"
// "?ur3β10 (2000/09/28)~UR1.2.23.0 (2000/11/29) で使っていた場合は\n"
// " (3) (1)に加えて、インデックス番号を( )内の文字列に変更:\n"
// " 00(TXT), 01(RUL), 02(UND), 03(LNO), 04(MOD), 05(TAB), 06(ZEN), 07(CTL), 08(EOL),\n"
// " 09(RAP), 10(EOF), 11(FND), 12(KW1), 13(CMT), 14(SQT), 15(WQT), 16(URL)\n\n"
// " (4) (1)に加えて、番号を( )内の文字列に変更:\n"
// " 00(TXT), 01(LNO), 02(EOL), 03(TAB), 04(ZEN), 05(EOF), 06(KW1), 07(CMT), 08(SQT),\n"
// " 09(WQT), 10(UND), 11(RAP), 12(CTL), 13(URL), 14(FND), 15(MOD), 16(RUL)\n\n"
// To Here Jan. 20, 2001
// From Here Jan. 21, 2001 JEPRO
"色設定Ver3では CI[番号] から C[名前] に変更されました。\n"
"上記ファイルの設定内容を利用したい場合は、以下の修正を行ってからインポートしてください。\n\n"
"?UR1.2.24.0 (00/12/04) 以降で使っていた場合は\n"
" (1) 一行目を Ver3 と書き換え、CI をすべて C に縮める\n"
" (2) (1)の後、番号を( )内の文字列に変更:\n"
" 00(TXT), 01(RUL), 02(UND), 03(LNO), 04(MOD), 05(TAB), 06(ZEN), 07(CTL), 08(EOL),\n"
" 09(RAP), 10(EOF), 11(FND), 12(KW1), 13(KW2), 14(CMT), 15(SQT), 16(WQT), 17(URL)\n\n"
"?ur3β10 (00/09/28)~UR1.2.23.0 (00/11/29) で使っていた場合は\n"
" (3) (1)の後、00-12 までは(2)と同じ 13(CMT), 14(SQT), 15(WQT), 16(URL)\n\n"
"?ur3β9 (00/09/26) 以前で使っていた場合は\n"
" (4) (1)の後、(2)と同様:\n"
" 00(TXT), 01(LNO), 02(EOL), 03(TAB), 04(ZEN), 05(EOF), 06(KW1), 07(CMT), 08(SQT),\n"
" 09(WQT), 10(UND), 11(RAP), 12(CTL), 13(URL), 14(FND), 15(MOD), 16(RUL)\n\n"
// To Here Jan. 21, 2001
#else
// From Here Nov. 2, Dec. 26, 2000, Dec. 26, 2000 追加, Jan. 21, 2001 修正 JEPRO
"現在の色設定Ver2.1ではVer2での仕様が一部変更されました。\n"
"上記のファイルの設定内容を利用したい場合は、そのファイルをコピーしエディタで\n"
"以下の修正を行ってからインポートしてください。\n\n"
"?0.3.9.0 UR1.2.24.0 (2000/12/04) 以降で使っていた場合は\n"
" (1) 一行目に書かれている Ver2 を Ver2.1 と書き換える\n\n"
"?0.3.9.0:ur3β10 (2000/09/28)~UR1.2.23.0 (2000/11/29) で使っていた場合は\n"
" (2) (1)に加えて CI[12] の次行に CI[12] の設定をコピーして CI[13] とし\n"
" 元の CI[13] 以降の番号を1つづつ17までずらす\n\n"
"?0.3.9.0:ur3β9 (2000/09/26) 以前で使っていた場合は\n"
" (3) (1)に加えて CI の[ ]内を順に\n"
" 00, 17,
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -