=================================================================== RCS file: /home/cvs/OpenXM_contrib2/windows/winfep/winfepDlg.cpp,v retrieving revision 1.4 retrieving revision 1.6 diff -u -p -r1.4 -r1.6 --- OpenXM_contrib2/windows/winfep/winfepDlg.cpp 2012/03/10 01:09:15 1.4 +++ OpenXM_contrib2/windows/winfep/winfepDlg.cpp 2013/11/29 08:21:29 1.6 @@ -125,6 +125,7 @@ BEGIN_MESSAGE_MAP(CWinfepDlg, CDialog) ON_BN_CLICKED(IDC_PREV10, OnPrev10) ON_BN_CLICKED(IDC_NEXT10, OnNext10) ON_BN_CLICKED(IDC_QUIT, OnQuit) + ON_BN_CLICKED(IDC_INTR, OnIntr) //}}AFX_MSG_MAP END_MESSAGE_MAP() @@ -224,11 +225,29 @@ void CWinfepDlg::OnSend() for ( i = 0; line[i] && isspace(line[i]); i++ ); if ( line[i] && !strncmp(line+i,"end$",4) || !strncmp(line+i,"end;",4) ) return; - for ( i = 0; line[i]; i++ ) { - if ( line[i] == '\t' ) - ::SendMessage(asirhwnd,WM_CHAR,' ',8); - else - ::SendMessage(asirhwnd,WM_CHAR,line[i],1); + +// for ( i = 0; line[i]; i++ ) { +// if ( line[i] == '\t' ) +// ::SendMessage(asirhwnd,WM_CHAR,' ',8); +// else +// ::SendMessage(asirhwnd,WM_CHAR,line[i],1); +// } +// ::SendMessage(asirhwnd,WM_CHAR,'\n',1); + if ( line[i] ) { +#if 0 + m_currentline.SetSel(0,str.GetLength()); + m_currentline.Copy(); +#else + int len=str.GetLength()+1; + if (!::OpenClipboard(NULL) ) return; + HGLOBAL hMem = ::GlobalAlloc(GMEM_FIXED,len); + LPTSTR pMem = (LPTSTR)hMem; + ::lstrcpy(pMem,(LPCTSTR)line); + ::EmptyClipboard(); + ::SetClipboardData(CF_TEXT,hMem); + ::CloseClipboard(); +#endif + ::SendMessage(asirhwnd,WM_CHAR,0x19,1); } ::SendMessage(asirhwnd,WM_CHAR,'\n',1); show_line(++currentline); @@ -369,4 +388,10 @@ void CWinfepDlg::OnQuit() // TODO: この位置にコントロール通知ハンドラ用のコードを追加してください CDialog::OnOK(); +} + +void CWinfepDlg::OnIntr() +{ + // TODO: この位置にコントロール通知ハンドラ用のコードを追加してください + ::SendMessage(asirhwnd,WM_CHAR,0x3,1); }