=================================================================== RCS file: /home/cvs/OpenXM_contrib2/windows/asir32gui/asir32guiview.cpp,v retrieving revision 1.30 retrieving revision 1.33 diff -u -p -r1.30 -r1.33 --- OpenXM_contrib2/windows/asir32gui/asir32guiview.cpp 2013/12/09 00:51:20 1.30 +++ OpenXM_contrib2/windows/asir32gui/asir32guiview.cpp 2019/03/29 00:59:33 1.33 @@ -34,6 +34,7 @@ void put_line(char *); void send_intr(void); void insert_to_theView(char *); BOOL get_rootdir(char *,int,char *); +const char *get_locale_lang_iso639(); const char *get_helpdir(); extern int bigfloat, prtime, prresult; extern char *asir_libdir; @@ -64,6 +65,7 @@ BEGIN_MESSAGE_MAP(CAsir32guiView, CEditView) ON_COMMAND(ID_FILE_OPEN, OnFileOpen) ON_COMMAND(ID_FILE_LOG, OnFileLog) ON_COMMAND(ID_ASIRHELP, OnAsirhelp) + ON_COMMAND(ID_VISIT_SITE, OnVisitSite) ON_UPDATE_COMMAND_UI(ID_FILE_LOG, OnUpdateFileLog) ON_COMMAND(ID_EDIT_PASTE, OnEditPaste) ON_COMMAND(IDR_FONT, OnFont) @@ -524,12 +526,40 @@ void CAsir32guiView::viewHtmlHelp(char *help) #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() { - // TODO: この位置にコマンド ハンドラ用のコードを追加してください - viewHtmlHelp("asir"); + const char *lang = get_locale_lang_iso639(); + 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() { // TODO: この位置にコマンド ハンドラ用のコードを追加してください @@ -734,17 +764,9 @@ BOOL CAsir32guiView::Create(LPCTSTR lpszClassName, LPC BOOL ret = CWnd::Create(lpszClassName, lpszWindowName, dwStyle, rect, pParentWnd, nID, pContext); FILE *fp = NULL; char *temp; - char rootdir[BUFSIZ], errmsg[BUFSIZ], hndname[_MAX_PATH]; + char hndname[_MAX_PATH]; if ( asirgui_kind == ASIRGUI_MAIN ) { - 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");