📄 cdlgtypelist.cpp
字号:
// $Id: CDlgTypeList.cpp,v 1.8 2003/09/19 16:41:16 genta Exp $
/*! @file
@brief ファイルタイプ一覧ダイアログ
@author Norio Nakatani
$Revision: 1.8 $
*/
/*
Copyright (C) 1998-2001, Norio Nakatani
Copyright (C) 2000-2001, genta
This source code is designed for sakura editor.
Please contact the copyright holder to use this code for other purpose.
*/
#include <windows.h>
#include <commctrl.h>
#include "sakura_rc.h"
#include "CDlgTypeList.h"
#include "etc_uty.h"
#include "debug.h"
#include "funccode.h" //Stonee, 2001/03/12
// タイプ別設定一覧 CDlgTypeList.cpp //@@@ 2002.01.07 add start MIK
#include "sakura.hh"
const DWORD p_helpids[] = { //12700
IDC_BUTTON_TEMPCHANGE, HIDC_TL_BUTTON_TEMPCHANGE, //一時適用
IDOK, HIDOK_TL, //設定
IDCANCEL, HIDCANCEL_TL, //キャンセル
IDC_BUTTON_HELP, HIDC_TL_BUTTON_HELP, //ヘルプ
IDC_LIST_TYPES, HIDC_TL_LIST_TYPES, //リスト
// IDC_STATIC, -1,
0, 0
}; //@@@ 2002.01.07 add end MIK
/* モーダルダイアログの表示 */
int CDlgTypeList::DoModal( HINSTANCE hInstance, HWND hwndParent, int* pnSettingType )
{
int nRet;
m_nSettingType = *pnSettingType;
nRet = (int)CDialog::DoModal( hInstance, hwndParent, IDD_TYPELIST, NULL );
if( -1 == nRet ){
return FALSE;
}else{
*pnSettingType = nRet;
return TRUE;
}
return nRet;
}
BOOL CDlgTypeList::OnLbnDblclk( int wID )
{
switch( wID ){
case IDC_LIST_TYPES:
// Nov. 29, 2000 genta
// 動作変更: 指定タイプの設定ダイアログ→一時的に別の設定を適用
::EndDialog( m_hWnd, ::SendMessage( GetDlgItem( m_hWnd, IDC_LIST_TYPES ), LB_GETCURSEL, (WPARAM)0, (LPARAM)0 )
| PROP_TEMPCHANGE_FLAG );
return TRUE;
}
return FALSE;
}
BOOL CDlgTypeList::OnBnClicked( int wID )
{
switch( wID ){
case IDC_BUTTON_HELP:
/* 「タイプ別設定一覧」のヘルプ */
//Stonee, 2001/03/12 第四引数を、機能番号からヘルプトピック番号を調べるようにした
::WinHelp( m_hWnd, m_szHelpFile, HELP_CONTEXT, ::FuncID_To_HelpContextID(F_TYPE_LIST) );
return TRUE;
// Nov. 29, 2000 From Here genta
// 適用する型の一時的変更
case IDC_BUTTON_TEMPCHANGE:
::EndDialog( m_hWnd, ::SendMessage( GetDlgItem( m_hWnd, IDC_LIST_TYPES ), LB_GETCURSEL, (WPARAM)0, (LPARAM)0 )
| PROP_TEMPCHANGE_FLAG );
return TRUE;
// Nov. 29, 2000 To Here
case IDOK:
::EndDialog( m_hWnd, ::SendMessage( GetDlgItem( m_hWnd, IDC_LIST_TYPES ), LB_GETCURSEL, (WPARAM)0, (LPARAM)0 ) );
return TRUE;
case IDCANCEL:
::EndDialog( m_hWnd, -1 );
return TRUE;
}
/* 基底クラスメンバ */
return CDialog::OnBnClicked( wID );
}
/* ダイアログデータの設定 */
void CDlgTypeList::SetData( void )
{
int nIdx;
HWND hwndList;
char szText[130];
hwndList = ::GetDlgItem( m_hWnd, IDC_LIST_TYPES );
for( nIdx = 0; nIdx < MAX_TYPES; ++nIdx ){
if( 0 < lstrlen( m_pShareData->m_Types[nIdx].m_szTypeExts ) ){ /* タイプ属性:拡張子リスト */
wsprintf( szText, "%s ( %s )",
m_pShareData->m_Types[nIdx].m_szTypeName, /* タイプ属性:名称 */
m_pShareData->m_Types[nIdx].m_szTypeExts /* タイプ属性:拡張子リスト */
);
}else{
wsprintf( szText, "%s",
m_pShareData->m_Types[nIdx].m_szTypeName /* タイプ属性:拡称 */
);
}
::SendMessage( hwndList, LB_ADDSTRING, 0, (LPARAM)szText );
}
::SendMessage( hwndList, LB_SETCURSEL, (WPARAM)m_nSettingType, (LPARAM)0 );
return;
}
//@@@ 2002.01.18 add start
LPVOID CDlgTypeList::GetHelpIdTable(void)
{
return (LPVOID)p_helpids;
}
//@@@ 2002.01.18 add end
/*[EOF]*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -