version 1.26, 2013/08/03 18:29:11 |
version 1.33, 2019/03/29 00:59:33 |
Line 34 void put_line(char *); |
|
Line 34 void put_line(char *); |
|
void send_intr(void); |
void send_intr(void); |
void insert_to_theView(char *); |
void insert_to_theView(char *); |
BOOL get_rootdir(char *,int,char *); |
BOOL get_rootdir(char *,int,char *); |
|
const char *get_locale_lang_iso639(); |
|
const char *get_helpdir(); |
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 63 BEGIN_MESSAGE_MAP(CAsir32guiView, CEditView) |
|
Line 65 BEGIN_MESSAGE_MAP(CAsir32guiView, CEditView) |
|
ON_COMMAND(ID_FILE_OPEN, OnFileOpen) |
ON_COMMAND(ID_FILE_OPEN, OnFileOpen) |
ON_COMMAND(ID_FILE_LOG, OnFileLog) |
ON_COMMAND(ID_FILE_LOG, OnFileLog) |
ON_COMMAND(ID_ASIRHELP, OnAsirhelp) |
ON_COMMAND(ID_ASIRHELP, OnAsirhelp) |
|
ON_COMMAND(ID_VISIT_SITE, OnVisitSite) |
ON_UPDATE_COMMAND_UI(ID_FILE_LOG, OnUpdateFileLog) |
ON_UPDATE_COMMAND_UI(ID_FILE_LOG, OnUpdateFileLog) |
ON_COMMAND(ID_EDIT_PASTE, OnEditPaste) |
ON_COMMAND(ID_EDIT_PASTE, OnEditPaste) |
ON_COMMAND(IDR_FONT, OnFont) |
ON_COMMAND(IDR_FONT, OnFont) |
Line 377 void CAsir32guiView::OnChar(UINT nChar, UINT nRepCnt, |
|
Line 380 void CAsir32guiView::OnChar(UINT nChar, UINT nRepCnt, |
|
// TODO: この位置にメッセージ ハンドラ用のコードを追加するかまたはデフォルトの処理を呼び出してください |
// TODO: この位置にメッセージ ハンドラ用のコードを追加するかまたはデフォルトの処理を呼び出してください |
char *exp_result; |
char *exp_result; |
char tmp[BUFSIZ]; |
char tmp[BUFSIZ]; |
|
int i; |
|
|
if ( asirgui_kind == ASIRGUI_MESSAGE ) { |
if ( asirgui_kind == ASIRGUI_MESSAGE ) { |
Beep(); return; |
Beep(); return; |
Line 440 void CAsir32guiView::OnChar(UINT nChar, UINT nRepCnt, |
|
Line 444 void CAsir32guiView::OnChar(UINT nChar, UINT nRepCnt, |
|
tmp[0] = 0; |
tmp[0] = 0; |
put_line(tmp); |
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 496 void CAsir32guiView::OnFileOpen() |
|
Line 504 void CAsir32guiView::OnFileOpen() |
|
} |
} |
} |
} |
} |
} |
|
|
void CAsir32guiView::viewHtmlHelp(char *help) |
void CAsir32guiView::viewHtmlHelp(char *help) |
{ |
{ |
char *helpfile; |
char *helpfile; |
char fmt[] = "%s\\help\\%shelp.chm"; |
char fmt[] = "%s\\%shelp.chm"; |
char root[BUFSIZ],errmsg[BUFSIZ]; |
const char *dir = get_helpdir(); |
get_rootdir(root,sizeof(root),errmsg); |
helpfile = (char *)malloc(sizeof(fmt) + strlen(dir) + strlen(help)); |
helpfile = (char *)malloc(sizeof(fmt) + strlen(root) + strlen(help)); |
sprintf(helpfile,fmt,dir,help); |
sprintf(helpfile,fmt,root,help); |
|
#if _MSC_VER < 1300 |
#if _MSC_VER < 1300 |
/* Visual C++ 6.0 */ |
/* Visual C++ 6.0 */ |
::HtmlHelp(NULL, helpfile, HH_DISPLAY_TOPIC, 0); |
::HtmlHelp(NULL, helpfile, HH_DISPLAY_TOPIC, 0); |
Line 518 void CAsir32guiView::viewHtmlHelp(char *help) |
|
Line 526 void CAsir32guiView::viewHtmlHelp(char *help) |
|
#endif |
#endif |
} |
} |
|
|
|
void CAsir32guiView::viewWeb(char *url) |
|
{ |
|
ShellExecute(NULL,"open",url,NULL,NULL,SW_SHOWNORMAL); |
|
} |
|
|
|
void CAsir32guiView::viewWebHelp(char *key) |
|
{ |
|
char *base="http://www.math.kobe-u.ac.jp/OpenXM/Current/doc/"; |
|
char *url = (char *)malloc(strlen(base)+strlen(key)+1); |
|
sprintf(url,"%s%s",base,key); |
|
viewWeb(url); |
|
free(url); |
|
} |
|
|
void CAsir32guiView::OnAsirhelp() |
void CAsir32guiView::OnAsirhelp() |
{ |
{ |
// TODO: この位置にコマンド ハンドラ用のコードを追加してください |
const char *lang = get_locale_lang_iso639(); |
viewHtmlHelp("asir"); |
if(strcmp(lang,"ja")==0) { |
|
viewWebHelp("index-doc-asir-ja.html"); |
|
}else { |
|
viewWebHelp("index-doc-asir.html"); |
|
} |
} |
} |
|
|
|
void CAsir32guiView::OnVisitSite() |
|
{ |
|
const char *lang = get_locale_lang_iso639(); |
|
if(strcmp(lang,"ja")==0) { |
|
viewWeb("http://www.math.kobe-u.ac.jp/Asir/asir-ja.html"); |
|
}else { |
|
viewWeb("http://www.math.kobe-u.ac.jp/Asir/"); |
|
} |
|
} |
|
|
void CAsir32guiView::OnFileLog() |
void CAsir32guiView::OnFileLog() |
{ |
{ |
// TODO: この位置にコマンド ハンドラ用のコードを追加してください |
// TODO: この位置にコマンド ハンドラ用のコードを追加してください |
Line 728 BOOL CAsir32guiView::Create(LPCTSTR lpszClassName, LPC |
|
Line 764 BOOL CAsir32guiView::Create(LPCTSTR lpszClassName, LPC |
|
BOOL ret = CWnd::Create(lpszClassName, lpszWindowName, dwStyle, rect, pParentWnd, nID, pContext); |
BOOL ret = CWnd::Create(lpszClassName, lpszWindowName, dwStyle, rect, pParentWnd, nID, pContext); |
FILE *fp = NULL; |
FILE *fp = NULL; |
char *temp; |
char *temp; |
char rootdir[BUFSIZ], errmsg[BUFSIZ], hndname[_MAX_PATH]; |
char hndname[_MAX_PATH]; |
|
|
if (get_rootdir(rootdir, BUFSIZ, errmsg)) { |
if ( asirgui_kind == ASIRGUI_MAIN ) { |
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") ) { |
if ( temp = getenv("TEMP") ) { |
size_t len; |
sprintf(hndname,"%s\\asirgui.hnd", temp); |
char *name; |
fp = fopen(hndname,"w"); |
|
if ( fp ) { |
len = strlen(temp); |
fprintf(fp,"%d",(unsigned int)theView->m_hWnd); |
name = (char *)malloc(len+BUFSIZ); |
fclose(fp); |
sprintf(name,"%s\\asirgui.hnd",temp); |
} |
fopen(name,"w"); |
|
fprintf(fp,"%d",(unsigned int)theView->m_hWnd); |
|
fclose(fp); |
|
} |
} |
} |
} |
return ret; |
return ret; |