[3434]
(要望)DIFF差分
じゅうじ
一般[3152]を修正して見ました。
最初のSendMessage()は、リストボックスのアクティブなアイテムの
選択を初期化するものでしたので削除しました。
*** コピー ~ CDlgDiff.cpp Sat Sep 20 01:41:16 2003
--- CDlgDiff.cpp Sun Feb 22 04:06:32 2004
***************
*** 126,130 ****
//::EnableWindow( ::GetDlgItem( m_hWnd, IDC_BUTTON_DIFF_DST ), TRUE );
//::EnableWindow( ::GetDlgItem( m_hWnd, IDC_LIST_DIFF_FILES ), FALSE );
! ::SendMessage( ::GetDlgItem( m_hWnd, IDC_LIST_DIFF_FILES), LB_SETCURSEL, (WPARAM)-1, 0 );
return TRUE;
--- 126,130 ----
//::EnableWindow( ::GetDlgItem( m_hWnd, IDC_BUTTON_DIFF_DST ), TRUE );
//::EnableWindow( ::GetDlgItem( m_hWnd, IDC_LIST_DIFF_FILES ), FALSE );
! //::SendMessage( ::GetDlgItem( m_hWnd, IDC_LIST_DIFF_FILES), LB_SETCURSEL, (WPARAM)-1, 0 );
return TRUE;
***************
*** 191,196 ****
/* 相手ファイルの選択 */
! ::CheckDlgButton( m_hWnd, IDC_RADIO_DIFF_DST1, TRUE );
! ::CheckDlgButton( m_hWnd, IDC_RADIO_DIFF_DST2, FALSE );
/* 見つからないときメッセージを表示 */
--- 191,196 ----
/* 相手ファイルの選択 */
! //::CheckDlgButton( m_hWnd, IDC_RADIO_DIFF_DST1, TRUE );
! //::CheckDlgButton( m_hWnd, IDC_RADIO_DIFF_DST2, FALSE );
/* 見つからないときメッセージを表示 */
***************
*** 281,287 ****
--- 281,302 ----
if( count == 0 )
{
+ /* 相手ファイルの選択 */
+ ::CheckDlgButton( m_hWnd, IDC_RADIO_DIFF_DST1, TRUE );
+ ::CheckDlgButton( m_hWnd, IDC_RADIO_DIFF_DST2, FALSE );
/* その他の編集中リストはなし */
::EnableWindow( ::GetDlgItem( m_hWnd, IDC_RADIO_DIFF_DST2 ), FALSE );
::EnableWindow( ::GetDlgItem( m_hWnd, IDC_LIST_DIFF_FILES ), FALSE );
+ }
+ else
+ {
+ /* 相手ファイルの選択 */
+ ::CheckDlgButton( m_hWnd, IDC_RADIO_DIFF_DST1, FALSE );
+ ::CheckDlgButton( m_hWnd, IDC_RADIO_DIFF_DST2, TRUE );
+ // ListBoxが選択されていなかったら,先頭のファイルを選択する.
+ HWND hwndList = GetDlgItem( m_hWnd, IDC_LIST_DIFF_FILES );
+ if( ::SendMessage( hwndList, LB_GETCURSEL, 0, 0 ) == LB_ERR )
+ {
+ ::SendMessage( hwndList, LB_SETCURSEL, 0 /*先頭アイテム*/, 0 );
+ }
}
}