| 616 |
void OnHScroll(UINT nSBCode, UINT nPos, HWND pScrollBar); |
void OnHScroll(UINT nSBCode, UINT nPos, HWND pScrollBar); |
| 617 |
void SetupRGBbox(int index); |
void SetupRGBbox(int index); |
| 618 |
void OnHelp(); |
void OnHelp(); |
| 619 |
|
BOOL CheckColorChanged(); |
| 620 |
|
BOOL CheckThemeColor(); |
| 621 |
CTipWin* TipWin; |
CTipWin* TipWin; |
| 622 |
COLORREF ANSIColor[16]; |
COLORREF ANSIColor[16]; |
| 623 |
}; |
}; |
| 1027 |
return TTCPropertyPage::OnCtlColor(hDC, hWnd); |
return TTCPropertyPage::OnCtlColor(hDC, hWnd); |
| 1028 |
} |
} |
| 1029 |
|
|
| 1030 |
|
/** |
| 1031 |
|
* 色の設定を変更したかチェックする |
| 1032 |
|
* @retval TRUE 変更した |
| 1033 |
|
* @retval FALSE 変更していない |
| 1034 |
|
*/ |
| 1035 |
|
BOOL CVisualPropPageDlg::CheckColorChanged() |
| 1036 |
|
{ |
| 1037 |
|
for (int i = 0; i < 16; i++) { |
| 1038 |
|
if (ts.ANSIColor[i] != ANSIColor[i]) { |
| 1039 |
|
return TRUE; |
| 1040 |
|
} |
| 1041 |
|
} |
| 1042 |
|
return FALSE; |
| 1043 |
|
} |
| 1044 |
|
|
| 1045 |
|
/** |
| 1046 |
|
* テーマカラーが設定してあるかチェックする |
| 1047 |
|
* @retval TRUE 設定されている |
| 1048 |
|
* @retval FALSE 設定されていない |
| 1049 |
|
*/ |
| 1050 |
|
BOOL CVisualPropPageDlg::CheckThemeColor() |
| 1051 |
|
{ |
| 1052 |
|
TColorTheme def; // default color (=ts.ANSIColor[]) |
| 1053 |
|
ThemeGetColorDefault(&def); |
| 1054 |
|
TColorTheme disp; // 今表示されている色 |
| 1055 |
|
ThemeGetColor(&disp); |
| 1056 |
|
for (int i = 0; i < 16; i++) { |
| 1057 |
|
if (disp.ansicolor.color[i] != def.ansicolor.color[i]) { |
| 1058 |
|
return TRUE; |
| 1059 |
|
} |
| 1060 |
|
} |
| 1061 |
|
return FALSE; |
| 1062 |
|
} |
| 1063 |
|
|
| 1064 |
void CVisualPropPageDlg::OnOK() |
void CVisualPropPageDlg::OnOK() |
| 1065 |
{ |
{ |
| 1066 |
int sel; |
int sel; |
| 1180 |
ts.EtermLookfeel.BGNoCopyBits = GetCheck(IDC_CHECK_FLICKER_LESS_MOVE); |
ts.EtermLookfeel.BGNoCopyBits = GetCheck(IDC_CHECK_FLICKER_LESS_MOVE); |
| 1181 |
|
|
| 1182 |
// ANSI Color |
// ANSI Color |
| 1183 |
TColorTheme color; |
if (CheckColorChanged()) { |
| 1184 |
// 色(デフォルト色)を設定 |
// 色の変更が行われた |
| 1185 |
for (i = 0; i < 16; i++) { |
bool set_color = TRUE; |
| 1186 |
ts.ANSIColor[i] = ANSIColor[i]; |
|
| 1187 |
} |
// カラーテーマを使って色が変更されている? |
| 1188 |
// デフォルト色を設定する |
if (CheckThemeColor()) { |
| 1189 |
ThemeGetColorDefault(&color); |
static const TTMessageBoxInfoW info = { |
| 1190 |
ThemeSetColor(&color); |
"Tera Term", |
| 1191 |
|
"MSG_TT_NOTICE", L"Tera Term: Notice", |
| 1192 |
|
NULL, L"Color settings have been changed.\nDo you want to display this?", |
| 1193 |
|
MB_ICONQUESTION | MB_YESNO }; |
| 1194 |
|
int r = TTMessageBoxW(m_hWnd, &info, ts.UILanguageFileW); |
| 1195 |
|
if (r == IDNO) { |
| 1196 |
|
set_color = FALSE; |
| 1197 |
|
} |
| 1198 |
|
} |
| 1199 |
|
|
| 1200 |
|
// 色を設定(デフォルト色)に反映 |
| 1201 |
|
for (i = 0; i < 16; i++) { |
| 1202 |
|
ts.ANSIColor[i] = ANSIColor[i]; |
| 1203 |
|
} |
| 1204 |
|
|
| 1205 |
|
// 設定された色を表示に反映 |
| 1206 |
|
if (set_color) { |
| 1207 |
|
TColorTheme color; |
| 1208 |
|
// デフォルト色を設定する |
| 1209 |
|
ThemeGetColorDefault(&color); |
| 1210 |
|
ThemeSetColor(&color); |
| 1211 |
|
} |
| 1212 |
|
} |
| 1213 |
|
|
| 1214 |
if (flag_changed) { |
if (flag_changed) { |
| 1215 |
// re-launch |
// re-launch |