Develop and Download Open Source Software

Browse Subversion Repository

Diff of /trunk/teraterm/teraterm/addsetting.cpp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 10403 by zmatsuo, Sat Dec 3 06:40:31 2022 UTC revision 10404 by zmatsuo, Sun Dec 11 12:08:18 2022 UTC
# Line 592  BOOL CCopypastePropPageDlg::OnCommand(WP Line 592  BOOL CCopypastePropPageDlg::OnCommand(WP
592    
593                  case IDC_CONFIRM_STRING_FILE_PATH | (BN_CLICKED << 16):                  case IDC_CONFIRM_STRING_FILE_PATH | (BN_CLICKED << 16):
594                          {                          {
595                                  wchar_t fileW[_countof(ts.ConfirmChangePasteStringFile)];                                  wchar_t *def;
596                                  MultiByteToWideChar(CP_ACP, 0, ts.ConfirmChangePasteStringFile, -1, fileW, _countof(fileW));                                  hGetDlgItemTextW(m_hWnd, IDC_CONFIRM_STRING_FILE, &def);
597    
598                                  OPENFILENAMEW ofn;                                  TTOPENFILENAMEW ofn = {};
599                                    ofn.hwndOwner = m_hWnd;GetSafeHwnd();
                                 memset(&ofn, 0, sizeof(ofn));  
                                 ofn.lStructSize = get_OPENFILENAME_SIZEW();  
                                 ofn.hwndOwner = GetSafeHwnd();  
600                                  ofn.lpstrFilter = TTGetLangStrW("Tera Term", "FILEDLG_SELECT_CONFIRM_STRING_APP_FILTER", L"txt(*.txt)\\0*.txt\\0all(*.*)\\0*.*\\0\\0", ts.UILanguageFile);                                  ofn.lpstrFilter = TTGetLangStrW("Tera Term", "FILEDLG_SELECT_CONFIRM_STRING_APP_FILTER", L"txt(*.txt)\\0*.txt\\0all(*.*)\\0*.*\\0\\0", ts.UILanguageFile);
601                                  ofn.lpstrFile = fileW;                                  ofn.lpstrFile = def;
                                 ofn.nMaxFile = _countof(fileW);  
602                                  ofn.lpstrTitle = TTGetLangStrW("Tera Term", "FILEDLG_SELECT_CONFIRM_STRING_APP_TITLE", L"Choose a file including strings for ConfirmChangePaste", ts.UILanguageFile);                                  ofn.lpstrTitle = TTGetLangStrW("Tera Term", "FILEDLG_SELECT_CONFIRM_STRING_APP_TITLE", L"Choose a file including strings for ConfirmChangePaste", ts.UILanguageFile);
603                                    ofn.lpstrInitialDir = ts.HomeDirW;
604                                  ofn.Flags = OFN_FILEMUSTEXIST | OFN_HIDEREADONLY;                                  ofn.Flags = OFN_FILEMUSTEXIST | OFN_HIDEREADONLY;
605                                  BOOL ok = GetOpenFileNameW(&ofn);                                  wchar_t *filename;
606                                    BOOL ok = TTGetOpenFileNameW(&ofn, &filename);
607                                  if (ok) {                                  if (ok) {
608                                          char *file = ToCharW(fileW);                                          SetDlgItemTextW(IDC_CONFIRM_STRING_FILE, filename);
609                                          strncpy_s(ts.ConfirmChangePasteStringFile, sizeof(ts.ConfirmChangePasteStringFile), file, _TRUNCATE);                                          free(filename);
                                         free(file);  
                                         SetDlgItemTextA(IDC_CONFIRM_STRING_FILE, ts.ConfirmChangePasteStringFile);  
610                                  }                                  }
611                                    free(def);
612                                  free((void *)ofn.lpstrFilter);                                  free((void *)ofn.lpstrFilter);
613                                  free((void *)ofn.lpstrTitle);                                  free((void *)ofn.lpstrTitle);
614                          }                          }
# Line 899  void CVisualPropPageDlg::OnInitDialog() Line 896  void CVisualPropPageDlg::OnInitDialog()
896    
897          SetCheck(IDC_THEME_ENABLE, ThemeGetEnable() ? BST_CHECKED : BST_UNCHECKED);          SetCheck(IDC_THEME_ENABLE, ThemeGetEnable() ? BST_CHECKED : BST_UNCHECKED);
898    
899            SetDlgItemTextW(IDC_SPIPATH_EDIT, ts.EtermLookfeel.BGSPIPathW);
900    
901          // ダイアログにフォーカスを当てる          // ダイアログにフォーカスを当てる
902          ::SetFocus(GetDlgItem(IDC_ALPHA_BLEND_ACTIVE));          ::SetFocus(GetDlgItem(IDC_ALPHA_BLEND_ACTIVE));
903    
# Line 982  BOOL CVisualPropPageDlg::OnCommand(WPARA Line 981  BOOL CVisualPropPageDlg::OnCommand(WPARA
981                  }                  }
982                  case IDC_THEME_BUTTON | (BN_CLICKED << 16): {                  case IDC_THEME_BUTTON | (BN_CLICKED << 16): {
983                          // テーマファイルを選択する                          // テーマファイルを選択する
984                          OPENFILENAMEW ofn = {};                          wchar_t *theme_file;
985                          wchar_t szFile[MAX_PATH];                          hGetDlgItemTextW(m_hWnd, IDC_THEME_EDIT, &theme_file);
                         wchar_t *curdir;  
                         wchar_t *theme_dir;  
                         hGetCurrentDirectoryW(&curdir);  
   
                         if (GetFileAttributesW(ts.EtermLookfeel.BGThemeFileW) != INVALID_FILE_ATTRIBUTES) {  
                                 wcsncpy_s(szFile, _countof(szFile), ts.EtermLookfeel.BGThemeFileW, _TRUNCATE);  
                         } else {  
                                 szFile[0] = 0;  
                         }  
986    
987                            wchar_t *theme_dir;
988                          aswprintf(&theme_dir, L"%s\\theme", ts.HomeDirW);                          aswprintf(&theme_dir, L"%s\\theme", ts.HomeDirW);
989    
990                          ofn.lStructSize = get_OPENFILENAME_SIZEW();                          TTOPENFILENAMEW ofn = {};
991                          ofn.hwndOwner = GetSafeHwnd();                          ofn.hwndOwner = m_hWnd;
992                          ofn.lpstrFilter = L"Theme Files(*.ini)\0*.ini\0All Files(*.*)\0*.*\0";                          ofn.lpstrFilter = L"Theme Files(*.ini)\0*.ini\0All Files(*.*)\0*.*\0";
                         ofn.lpstrFile = szFile;  
                         ofn.nMaxFile = _countof(szFile);  
993                          ofn.lpstrTitle = L"select theme file";                          ofn.lpstrTitle = L"select theme file";
994                            ofn.lpstrFile = theme_file;
995                          ofn.lpstrInitialDir = theme_dir;                          ofn.lpstrInitialDir = theme_dir;
996                          ofn.Flags = OFN_FILEMUSTEXIST | OFN_HIDEREADONLY;                          ofn.Flags = OFN_FILEMUSTEXIST | OFN_HIDEREADONLY;
997                          BOOL ok = GetOpenFileNameW(&ofn);                          wchar_t *filename;
998                          SetCurrentDirectoryW(curdir);                          BOOL ok = TTGetOpenFileNameW(&ofn, &filename);
                         free(curdir);  
                         free(theme_dir);  
999                          if (ok) {                          if (ok) {
1000                                  SetDlgItemTextW(IDC_THEME_EDIT, szFile);                                  SetDlgItemTextW(IDC_THEME_EDIT, filename);
1001                                    free(filename);
1002                          }                          }
1003                            free(theme_dir);
1004                            free(theme_file);
1005                          return TRUE;                          return TRUE;
1006                  }                  }
1007    
# Line 1102  BOOL CVisualPropPageDlg::OnCommand(WPARA Line 1093  BOOL CVisualPropPageDlg::OnCommand(WPARA
1093                                  OpacityTooltip(TipWin, m_hWnd, IDC_ALPHA_BLEND_INACTIVE, pos, ts.UILanguageFileW);                                  OpacityTooltip(TipWin, m_hWnd, IDC_ALPHA_BLEND_INACTIVE, pos, ts.UILanguageFileW);
1094                                  return TRUE;                                  return TRUE;
1095                          }                          }
1096                    case IDC_SPIPATH_BUTTON | (BN_CLICKED << 16): {
1097                            wchar_t *def;
1098                            hGetDlgItemTextW(m_hWnd, IDC_SPIPATH_EDIT, &def);
1099                            if (GetFileAttributesW(def) == INVALID_FILE_ATTRIBUTES) {
1100                                    // フォルダが存在しない(入力途中?,TT4から移行?)
1101                                    static const TTMessageBoxInfoW info = {
1102                                            "Tera Term",
1103                                            "MSG_TT_NOTICE", L"Tera Term: Notice",
1104                                            NULL, L"'%s' not exist\nUse home folder",
1105                                            MB_OK };
1106                                    TTMessageBoxW(m_hWnd, &info, ts.UILanguageFileW, def);
1107                                    free(def);
1108                                    def = _wcsdup(ts.HomeDirW);
1109                            }
1110    
1111                            TTBROWSEINFOW bi = {};
1112                            bi.hwndOwner = m_hWnd;
1113                            bi.lpszTitle = L"Select Susie Plugin path";
1114                            bi.ulFlags = BIF_RETURNONLYFSDIRS | BIF_EDITBOX | BIF_NEWDIALOGSTYLE;
1115    
1116                            wchar_t *folder;
1117                            if (TTSHBrowseForFolderW(&bi, def, &folder)) {
1118                                    SetDlgItemTextW(IDC_SPIPATH_EDIT, folder);
1119                                    free(folder);
1120                            }
1121                            free(def);
1122                            break;
1123                    }
1124          }          }
1125    
1126          return TTCPropertyPage::OnCommand(wParam, lParam);          return TTCPropertyPage::OnCommand(wParam, lParam);
# Line 1321  void CVisualPropPageDlg::OnOK() Line 1340  void CVisualPropPageDlg::OnOK()
1340                  // テーマをdisableにする                  // テーマをdisableにする
1341                  ThemeSetEnable(FALSE);                  ThemeSetEnable(FALSE);
1342          }          }
1343    
1344            wchar_t *spi_path;
1345            hGetDlgItemTextW(m_hWnd, IDC_SPIPATH_EDIT, &spi_path);
1346            free(ts.EtermLookfeel.BGSPIPathW);
1347            ts.EtermLookfeel.BGSPIPathW = spi_path;
1348  }  }
1349    
1350  void CVisualPropPageDlg::OnHelp()  void CVisualPropPageDlg::OnHelp()
# Line 1480  BOOL CLogPropPageDlg::OnCommand(WPARAM w Line 1504  BOOL CLogPropPageDlg::OnCommand(WPARAM w
1504          switch (wParam) {          switch (wParam) {
1505                  case IDC_VIEWLOG_PATH | (BN_CLICKED << 16):                  case IDC_VIEWLOG_PATH | (BN_CLICKED << 16):
1506                          {                          {
1507                                  wchar_t fileW[_countof(ts.ViewlogEditor)];                                  wchar_t *editor;
1508                                  MultiByteToWideChar(CP_ACP, 0, ts.ViewlogEditor, -1, fileW, _countof(fileW));                                  hGetDlgItemTextW(m_hWnd, IDC_VIEWLOG_EDITOR, &editor);
   
                                 OPENFILENAMEW ofn;  
1509    
1510                                  memset(&ofn, 0, sizeof(ofn));                                  TTOPENFILENAMEW ofn = {};
1511                                  ofn.lStructSize = get_OPENFILENAME_SIZEW();                                  ofn.hwndOwner = m_hWnd;
                                 ofn.hwndOwner = GetSafeHwnd();  
1512                                  ofn.lpstrFilter = TTGetLangStrW("Tera Term", "FILEDLG_SELECT_LOGVIEW_APP_FILTER", L"exe(*.exe)\\0*.exe\\0all(*.*)\\0*.*\\0\\0", ts.UILanguageFile);                                  ofn.lpstrFilter = TTGetLangStrW("Tera Term", "FILEDLG_SELECT_LOGVIEW_APP_FILTER", L"exe(*.exe)\\0*.exe\\0all(*.*)\\0*.*\\0\\0", ts.UILanguageFile);
1513                                  ofn.lpstrFile = fileW;                                  ofn.lpstrFile = editor;
                                 ofn.nMaxFile = _countof(fileW);  
1514                                  ofn.lpstrTitle = TTGetLangStrW("Tera Term", "FILEDLG_SELECT_LOGVIEW_APP_TITLE", L"Choose a executing file with launching logging file", ts.UILanguageFile);                                  ofn.lpstrTitle = TTGetLangStrW("Tera Term", "FILEDLG_SELECT_LOGVIEW_APP_TITLE", L"Choose a executing file with launching logging file", ts.UILanguageFile);
1515                                  ofn.Flags = OFN_FILEMUSTEXIST | OFN_HIDEREADONLY;                                  ofn.Flags = OFN_FILEMUSTEXIST | OFN_HIDEREADONLY;
1516                                  BOOL ok = GetOpenFileNameW(&ofn);                                  wchar_t *filew;
1517                                    BOOL ok = TTGetOpenFileNameW(&ofn, &filew);
1518                                  if (ok) {                                  if (ok) {
1519                                          char *file = ToCharW(fileW);                                          SetDlgItemTextW(IDC_VIEWLOG_EDITOR, filew);
1520                                          strncpy_s(ts.ViewlogEditor, sizeof(ts.ViewlogEditor), file, _TRUNCATE);                                          free(filew);
                                         free(file);  
                                         SetDlgItemTextA(IDC_VIEWLOG_EDITOR, ts.ViewlogEditor);  
1521                                  }                                  }
1522                                  free((void *)ofn.lpstrFilter);                                  free((void *)ofn.lpstrFilter);
1523                                  free((void *)ofn.lpstrTitle);                                  free((void *)ofn.lpstrTitle);
1524                                    free(editor);
1525                          }                          }
1526                          return TRUE;                          return TRUE;
1527    

Legend:
Removed from v.10403  
changed lines
  Added in v.10404

Back to OSDN">Back to OSDN
ViewVC Help
Powered by ViewVC 1.1.26