version 1.11, 2005/05/11 07:34:02 |
version 1.28, 2013/08/07 07:54:16 |
Line 17 static char THIS_FILE[] = __FILE__; |
|
Line 17 static char THIS_FILE[] = __FILE__; |
|
#endif |
#endif |
|
|
// const TextBufferSize = 32768; |
// const TextBufferSize = 32768; |
const TextBufferSize = 16384; |
const int TextBufferSize = 16384; |
|
|
CAsir32guiView *theView; |
CAsir32guiView *theView; |
|
|
Line 33 void loadfile(char *); |
|
Line 33 void loadfile(char *); |
|
void put_line(char *); |
void put_line(char *); |
void send_intr(void); |
void send_intr(void); |
void insert_to_theView(char *); |
void insert_to_theView(char *); |
void get_rootdir(char *,int,char *); |
BOOL get_rootdir(char *,int,char *); |
extern int bigfloat, prtime, prresult; |
extern int bigfloat, prtime, prresult; |
extern char *asir_libdir; |
extern char *asir_libdir; |
extern int asirgui_kind; |
extern int asirgui_kind; |
Line 79 BEGIN_MESSAGE_MAP(CAsir32guiView, CEditView) |
|
Line 79 BEGIN_MESSAGE_MAP(CAsir32guiView, CEditView) |
|
ON_COMMAND(ID_SM1, OnSm1) |
ON_COMMAND(ID_SM1, OnSm1) |
ON_COMMAND(ID_TIGERS, OnTigers) |
ON_COMMAND(ID_TIGERS, OnTigers) |
ON_COMMAND(ID_TODOPARAMETRIZE, OnTodoparametrize) |
ON_COMMAND(ID_TODOPARAMETRIZE, OnTodoparametrize) |
|
ON_COMMAND(ID_NOROMATRIX, OnNoromatrix) |
|
ON_COMMAND(ID_NOROMWL, OnNoromwl) |
|
ON_COMMAND(ID_NNNDBF, OnNnndbf) |
|
ON_COMMAND(ID_NOROPD, OnNoropd) |
|
ON_COMMAND(ID_NSTWLG, OnNstwistedlog) |
//}}AFX_MSG_MAP |
//}}AFX_MSG_MAP |
// 標準印刷コマンド |
// 標準印刷コマンド |
// ON_COMMAND(ID_FILE_PRINT, CEditView::OnFilePrint) |
// ON_COMMAND(ID_FILE_PRINT, CEditView::OnFilePrint) |
Line 93 CAsir32guiView::CAsir32guiView() |
|
Line 98 CAsir32guiView::CAsir32guiView() |
|
{ |
{ |
// TODO: この場所に構築用のコードを追加してください。 |
// TODO: この場所に構築用のコードを追加してください。 |
static int tmpView_created = 0; |
static int tmpView_created = 0; |
char errmsg[BUFSIZ]; |
|
|
|
init_input_history(); |
init_input_history(); |
read_input_history(); |
read_input_history(); |
Line 105 CAsir32guiView::CAsir32guiView() |
|
Line 109 CAsir32guiView::CAsir32guiView() |
|
Logfp = NULL; |
Logfp = NULL; |
ResetIndex(); |
ResetIndex(); |
theView = this; |
theView = this; |
|
#if _MSC_VER > 1300 |
|
/* VS2003.NET or later */ |
|
(AfxGetApp())->EnableHtmlHelp(); |
|
#endif |
} |
} |
|
|
CAsir32guiView::~CAsir32guiView() |
CAsir32guiView::~CAsir32guiView() |
Line 203 void CAsir32guiView::DeleteChar(int count) { |
|
Line 211 void CAsir32guiView::DeleteChar(int count) { |
|
|
|
if ( count > (EndPos-CurrentPos) ) |
if ( count > (EndPos-CurrentPos) ) |
count = EndPos - CurrentPos; |
count = EndPos - CurrentPos; |
if ( count == 0 ) |
if ( count > 0 ) { |
Beep(); |
|
else { |
|
EndPos -= count; |
EndPos -= count; |
for ( i = CurrentPos; i < EndPos; i++ ) |
for ( i = CurrentPos; i < EndPos; i++ ) |
Buffer[i] = Buffer[i+count]; |
Buffer[i] = Buffer[i+count]; |
Line 244 void CAsir32guiView::DeleteTop() |
|
Line 250 void CAsir32guiView::DeleteTop() |
|
const char *p,*q; |
const char *p,*q; |
const char *buf; |
const char *buf; |
char null = 0; |
char null = 0; |
int len,len0,len1; |
int len,len0; |
|
|
buf = LockBuffer(); |
buf = LockBuffer(); |
len0 = len = strlen(buf); |
len0 = len = strlen(buf); |
Line 370 void CAsir32guiView::OnChar(UINT nChar, UINT nRepCnt, |
|
Line 376 void CAsir32guiView::OnChar(UINT nChar, UINT nRepCnt, |
|
{ |
{ |
// TODO: この位置にメッセージ ハンドラ用のコードを追加するかまたはデフォルトの処理を呼び出してください |
// TODO: この位置にメッセージ ハンドラ用のコードを追加するかまたはデフォルトの処理を呼び出してください |
char *exp_result; |
char *exp_result; |
|
char tmp[BUFSIZ]; |
|
int i; |
|
|
if ( asirgui_kind == ASIRGUI_MESSAGE ) { |
if ( asirgui_kind == ASIRGUI_MESSAGE ) { |
Beep(); return; |
Beep(); return; |
Line 430 void CAsir32guiView::OnChar(UINT nChar, UINT nRepCnt, |
|
Line 438 void CAsir32guiView::OnChar(UINT nChar, UINT nRepCnt, |
|
case CTRL('C'): |
case CTRL('C'): |
send_intr(); |
send_intr(); |
/* wake up the engine */ |
/* wake up the engine */ |
put_line(""); |
tmp[0] = 0; |
|
put_line(tmp); |
return; |
return; |
|
case CTRL('Y'): |
|
Paste(); return; |
|
case CTRL('I'): |
|
return; |
default : |
default : |
if ( nChar >= 0x20 && nChar < 0x7f ) |
if ( nChar >= 0x20 && nChar < 0x7f ) |
PutChar(nChar); |
PutChar(nChar); |
Line 472 void CAsir32guiView::OnFileOpen() |
|
Line 485 void CAsir32guiView::OnFileOpen() |
|
|
|
_chdir(prevdir); |
_chdir(prevdir); |
CFileDialog fileDialog(TRUE); |
CFileDialog fileDialog(TRUE); |
|
fileDialog.m_ofn.lpstrInitialDir = prevdir; |
if ( fileDialog.DoModal() == IDOK ) { |
if ( fileDialog.DoModal() == IDOK ) { |
CString pathName = fileDialog.GetPathName(); |
CString pathName = fileDialog.GetPathName(); |
sprintf(cmd,"load(\"%s\");",pathName); |
sprintf(cmd,"load(\"%s\");",pathName); |
Line 479 void CAsir32guiView::OnFileOpen() |
|
Line 493 void CAsir32guiView::OnFileOpen() |
|
if ( *p == '\\' ) |
if ( *p == '\\' ) |
*p = '/'; |
*p = '/'; |
put_line(cmd); |
put_line(cmd); |
p = strrchr(pathName,'\\'); |
strcpy(cmd,pathName); |
|
p = strrchr(cmd,'\\'); |
if ( p ) { |
if ( p ) { |
*p = 0; |
*p = 0; |
strcpy(prevdir,pathName); |
strcpy(prevdir,cmd); |
} |
} |
} |
} |
} |
} |
|
void CAsir32guiView::viewHtmlHelp(char *help) |
|
{ |
|
char *helpfile; |
|
char fmt[] = "%s\\help\\%shelp.chm"; |
|
char root[BUFSIZ],errmsg[BUFSIZ]; |
|
get_rootdir(root,sizeof(root),errmsg); |
|
helpfile = (char *)malloc(sizeof(fmt) + strlen(root) + strlen(help)); |
|
sprintf(helpfile,fmt,root,help); |
|
#if _MSC_VER < 1300 |
|
/* Visual C++ 6.0 */ |
|
::HtmlHelp(NULL, helpfile, HH_DISPLAY_TOPIC, 0); |
|
#else |
|
CWinApp *top = AfxGetApp(); |
|
top->SetHelpMode(AFX_HELP_TYPE::afxHTMLHelp); |
|
if (top->m_pszHelpFilePath) { |
|
free((void*)top->m_pszHelpFilePath); |
|
} |
|
top->m_pszHelpFilePath = helpfile; |
|
HtmlHelp(HH_DISPLAY_TOPIC, 0); |
|
#endif |
|
} |
|
|
void CAsir32guiView::OnAsirhelp() |
void CAsir32guiView::OnAsirhelp() |
{ |
{ |
// TODO: この位置にコマンド ハンドラ用のコードを追加してください |
// TODO: この位置にコマンド ハンドラ用のコードを追加してください |
char root[BUFSIZ],errmsg[BUFSIZ],helpfile[BUFSIZ]; |
viewHtmlHelp("asir"); |
|
|
get_rootdir(root,sizeof(root),errmsg); |
|
sprintf(helpfile,"%s\\help\\asirhelp.chm",root); |
|
HtmlHelp(NULL, helpfile, HH_DISPLAY_TOPIC, 0); |
|
} |
} |
|
|
void CAsir32guiView::OnFileLog() |
void CAsir32guiView::OnFileLog() |
Line 550 void CAsir32guiView::UpdateMetrics() |
|
Line 582 void CAsir32guiView::UpdateMetrics() |
|
void CAsir32guiView::OnFont() |
void CAsir32guiView::OnFont() |
{ |
{ |
// TODO: この位置にコマンド ハンドラ用のコードを追加してください |
// TODO: この位置にコマンド ハンドラ用のコードを追加してください |
int ret; |
INT_PTR ret; |
LOGFONT lf; |
LOGFONT lf; |
|
|
GetFont()->GetLogFont(&lf); |
GetFont()->GetLogFont(&lf); |
Line 593 int CAsir32guiView::OnCreate(LPCREATESTRUCT lpCreateSt |
|
Line 625 int CAsir32guiView::OnCreate(LPCREATESTRUCT lpCreateSt |
|
void CAsir32guiView::OnContribhelp() |
void CAsir32guiView::OnContribhelp() |
{ |
{ |
// TODO: この位置にコマンド ハンドラ用のコードを追加してください |
// TODO: この位置にコマンド ハンドラ用のコードを追加してください |
char root[BUFSIZ],errmsg[BUFSIZ],helpfile[BUFSIZ]; |
viewHtmlHelp("cman"); |
|
|
get_rootdir(root,sizeof(root),errmsg); |
|
sprintf(helpfile,"%s\\help\\cmanhelp.chm",root); |
|
HtmlHelp(NULL, helpfile, HH_DISPLAY_TOPIC, 0); |
|
} |
} |
|
|
void CAsir32guiView::OnSize(UINT nType, int cx, int cy) |
void CAsir32guiView::OnSize(UINT nType, int cx, int cy) |
Line 611 void CAsir32guiView::OnSize(UINT nType, int cx, int cy |
|
Line 639 void CAsir32guiView::OnSize(UINT nType, int cx, int cy |
|
void CAsir32guiView::OnDsolv() |
void CAsir32guiView::OnDsolv() |
{ |
{ |
// TODO: この位置にコマンド ハンドラ用のコードを追加してください |
// TODO: この位置にコマンド ハンドラ用のコードを追加してください |
char root[BUFSIZ],errmsg[BUFSIZ],helpfile[BUFSIZ]; |
viewHtmlHelp("dsolv"); |
|
|
get_rootdir(root,sizeof(root),errmsg); |
|
sprintf(helpfile,"%s\\help\\dsolvhelp.chm",root); |
|
HtmlHelp(NULL, helpfile, HH_DISPLAY_TOPIC, 0); |
|
} |
} |
|
|
void CAsir32guiView::OnGnuplot() |
void CAsir32guiView::OnGnuplot() |
{ |
{ |
// TODO: この位置にコマンド ハンドラ用のコードを追加してください |
// TODO: この位置にコマンド ハンドラ用のコードを追加してください |
char root[BUFSIZ],errmsg[BUFSIZ],helpfile[BUFSIZ]; |
viewHtmlHelp("gnuplot"); |
|
|
get_rootdir(root,sizeof(root),errmsg); |
|
sprintf(helpfile,"%s\\help\\gnuplothelp.chm",root); |
|
HtmlHelp(NULL, helpfile, HH_DISPLAY_TOPIC, 0); |
|
|
|
} |
} |
|
|
void CAsir32guiView::OnOkdiff() |
void CAsir32guiView::OnOkdiff() |
{ |
{ |
// TODO: この位置にコマンド ハンドラ用のコードを追加してください |
// TODO: この位置にコマンド ハンドラ用のコードを追加してください |
char root[BUFSIZ],errmsg[BUFSIZ],helpfile[BUFSIZ]; |
viewHtmlHelp("ok_diff"); |
|
|
get_rootdir(root,sizeof(root),errmsg); |
|
sprintf(helpfile,"%s\\help\\ok_diffhelp.chm",root); |
|
HtmlHelp(NULL, helpfile, HH_DISPLAY_TOPIC, 0); |
|
|
|
} |
} |
|
|
void CAsir32guiView::OnOkdmodule() |
void CAsir32guiView::OnOkdmodule() |
{ |
{ |
// TODO: この位置にコマンド ハンドラ用のコードを追加してください |
// TODO: この位置にコマンド ハンドラ用のコードを追加してください |
char root[BUFSIZ],errmsg[BUFSIZ],helpfile[BUFSIZ]; |
viewHtmlHelp("ok_dmodule"); |
|
|
get_rootdir(root,sizeof(root),errmsg); |
|
sprintf(helpfile,"%s\\help\\ok_dmodulehelp.chm",root); |
|
HtmlHelp(NULL, helpfile, HH_DISPLAY_TOPIC, 0); |
|
|
|
} |
} |
|
|
void CAsir32guiView::OnOm() |
void CAsir32guiView::OnOm() |
{ |
{ |
// TODO: この位置にコマンド ハンドラ用のコードを追加してください |
// TODO: この位置にコマンド ハンドラ用のコードを追加してください |
char root[BUFSIZ],errmsg[BUFSIZ],helpfile[BUFSIZ]; |
viewHtmlHelp("om"); |
|
|
get_rootdir(root,sizeof(root),errmsg); |
|
sprintf(helpfile,"%s\\help\\omhelp.chm",root); |
|
HtmlHelp(NULL, helpfile, HH_DISPLAY_TOPIC, 0); |
|
|
|
} |
} |
|
|
void CAsir32guiView::OnPfpcoh() |
void CAsir32guiView::OnPfpcoh() |
{ |
{ |
// TODO: この位置にコマンド ハンドラ用のコードを追加してください |
// TODO: この位置にコマンド ハンドラ用のコードを追加してください |
char root[BUFSIZ],errmsg[BUFSIZ],helpfile[BUFSIZ]; |
viewHtmlHelp("pfpcoh"); |
|
|
get_rootdir(root,sizeof(root),errmsg); |
|
sprintf(helpfile,"%s\\help\\pfpcohhelp.chm",root); |
|
HtmlHelp(NULL, helpfile, HH_DISPLAY_TOPIC, 0); |
|
|
|
} |
} |
|
|
void CAsir32guiView::OnPlucker() |
void CAsir32guiView::OnPlucker() |
{ |
{ |
// TODO: この位置にコマンド ハンドラ用のコードを追加してください |
// TODO: この位置にコマンド ハンドラ用のコードを追加してください |
char root[BUFSIZ],errmsg[BUFSIZ],helpfile[BUFSIZ]; |
viewHtmlHelp("plucker"); |
|
|
get_rootdir(root,sizeof(root),errmsg); |
|
sprintf(helpfile,"%s\\help\\pluckerhelp.chm",root); |
|
HtmlHelp(NULL, helpfile, HH_DISPLAY_TOPIC, 0); |
|
|
|
} |
} |
|
|
void CAsir32guiView::OnSm1() |
void CAsir32guiView::OnSm1() |
{ |
{ |
// TODO: この位置にコマンド ハンドラ用のコードを追加してください |
// TODO: この位置にコマンド ハンドラ用のコードを追加してください |
char root[BUFSIZ],errmsg[BUFSIZ],helpfile[BUFSIZ]; |
viewHtmlHelp("sm1"); |
|
|
get_rootdir(root,sizeof(root),errmsg); |
|
sprintf(helpfile,"%s\\help\\sm1help.chm",root); |
|
HtmlHelp(NULL, helpfile, HH_DISPLAY_TOPIC, 0); |
|
|
|
} |
} |
|
|
void CAsir32guiView::OnTigers() |
void CAsir32guiView::OnTigers() |
{ |
{ |
// TODO: この位置にコマンド ハンドラ用のコードを追加してください |
// TODO: この位置にコマンド ハンドラ用のコードを追加してください |
char root[BUFSIZ],errmsg[BUFSIZ],helpfile[BUFSIZ]; |
viewHtmlHelp("tigers"); |
|
|
get_rootdir(root,sizeof(root),errmsg); |
|
sprintf(helpfile,"%s\\help\\tigershelp.chm",root); |
|
HtmlHelp(NULL, helpfile, HH_DISPLAY_TOPIC, 0); |
|
|
|
} |
} |
|
|
void CAsir32guiView::OnTodoparametrize() |
void CAsir32guiView::OnTodoparametrize() |
{ |
{ |
// TODO: この位置にコマンド ハンドラ用のコードを追加してください |
// TODO: この位置にコマンド ハンドラ用のコードを追加してください |
char root[BUFSIZ],errmsg[BUFSIZ],helpfile[BUFSIZ]; |
viewHtmlHelp("todo_parametrize"); |
|
} |
|
|
get_rootdir(root,sizeof(root),errmsg); |
void CAsir32guiView::OnNoromatrix() |
sprintf(helpfile,"%s\\help\\todo_parametrizehelp.chm",root); |
{ |
HtmlHelp(NULL, helpfile, HH_DISPLAY_TOPIC, 0); |
// TODO: この位置にコマンド ハンドラ用のコードを追加してください |
|
viewHtmlHelp("noro_matrix"); |
|
} |
|
|
|
void CAsir32guiView::OnNoromwl() |
|
{ |
|
// TODO: この位置にコマンド ハンドラ用のコードを追加してください |
|
viewHtmlHelp("noro_mwl"); |
|
} |
|
|
|
void CAsir32guiView::OnNoropd() |
|
{ |
|
// TODO: この位置にコマンド ハンドラ用のコードを追加してください |
|
viewHtmlHelp("noro_pd"); |
|
} |
|
|
|
void CAsir32guiView::OnNnndbf() |
|
{ |
|
// TODO: この位置にコマンド ハンドラ用のコードを追加してください |
|
viewHtmlHelp("nn_ndbf"); |
|
} |
|
|
|
void CAsir32guiView::OnNstwistedlog() |
|
{ |
|
// TODO: この位置にコマンド ハンドラ用のコードを追加してください |
|
viewHtmlHelp("ns_twistedlog"); |
|
} |
|
|
|
BOOL CAsir32guiView::Create(LPCTSTR lpszClassName, LPCTSTR lpszWindowName, DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID, CCreateContext* pContext) |
|
{ |
|
// TODO: この位置に固有の処理を追加するか、または基本クラスを呼び出してください |
|
|
|
BOOL ret = CWnd::Create(lpszClassName, lpszWindowName, dwStyle, rect, pParentWnd, nID, pContext); |
|
FILE *fp = NULL; |
|
char *temp; |
|
char rootdir[BUFSIZ], errmsg[BUFSIZ], hndname[_MAX_PATH]; |
|
|
|
if (get_rootdir(rootdir, BUFSIZ, errmsg)) { |
|
sprintf(hndname, "%s\\bin\\asirgui.hnd", rootdir); |
|
fp = fopen(hndname,"w"); |
|
if ( fp ) { |
|
fprintf(fp,"%d",(unsigned int)theView->m_hWnd); |
|
fclose(fp); |
|
} |
|
} |
|
if ( temp = getenv("TEMP") ) { |
|
sprintf(hndname,"%s\\asirgui.hnd", temp); |
|
fp = fopen(hndname,"w"); |
|
if ( fp ) { |
|
fprintf(fp,"%d",(unsigned int)theView->m_hWnd); |
|
fclose(fp); |
|
} |
|
} |
|
return ret; |
} |
} |