diff options
Diffstat (limited to 'plugins/Weather/src/weather_opt.cpp')
-rw-r--r-- | plugins/Weather/src/weather_opt.cpp | 416 |
1 files changed, 191 insertions, 225 deletions
diff --git a/plugins/Weather/src/weather_opt.cpp b/plugins/Weather/src/weather_opt.cpp index 558b35175f..1a2158747e 100644 --- a/plugins/Weather/src/weather_opt.cpp +++ b/plugins/Weather/src/weather_opt.cpp @@ -31,57 +31,47 @@ int RedrawFrame(WPARAM wParam, LPARAM lParam); // set a string to default
// in = string to determine which field to set default "CBNEHXPp"
-void SetTextDefault(const char* in)
+void SetTextDefault(const char* in)
{
TCHAR str[MAX_TEXT_SIZE];
- if (strchr(in, 'C') != NULL)
- {
+ if (strchr(in, 'C') != NULL) {
_tcscpy(str, C_DEFAULT);
wSetData(&opt.cText, str);
}
- if (strchr(in, 'b') != NULL)
- {
+ if (strchr(in, 'b') != NULL) {
_tcscpy(str, b_DEFAULT);
wSetData(&opt.bTitle, str);
}
- if (strchr(in, 'B') != NULL)
- {
+ if (strchr(in, 'B') != NULL) {
_tcscpy(str, B_DEFAULT);
wSetData(&opt.bText, str);
}
- if (strchr(in, 'N') != NULL)
- {
+ if (strchr(in, 'N') != NULL) {
_tcscpy(str, N_DEFAULT);
wSetData(&opt.nText, str);
}
- if (strchr(in, 'E') != NULL)
- {
+ if (strchr(in, 'E') != NULL) {
_tcscpy(str, E_DEFAULT);
wSetData(&opt.eText, str);
}
- if (strchr(in, 'H') != NULL)
- {
+ if (strchr(in, 'H') != NULL) {
_tcscpy(str, H_DEFAULT);
wSetData(&opt.hText, str);
}
- if (strchr(in, 'X') != NULL)
- {
+ if (strchr(in, 'X') != NULL) {
_tcscpy(str, X_DEFAULT);
wSetData(&opt.xText, str);
}
- if (strchr(in, 'P') != NULL)
- {
+ if (strchr(in, 'P') != NULL) {
_tcscpy(str, P_DEFAULT);
wSetData(&opt.pTitle, str);
}
- if (strchr(in, 'p') != NULL)
- {
+ if (strchr(in, 'p') != NULL) {
_tcscpy(str, p_DEFAULT);
wSetData(&opt.pText, str);
}
- if (strchr(in, 'S') != NULL)
- {
+ if (strchr(in, 'S') != NULL) {
_tcscpy(str, s_DEFAULT);
wSetData(&opt.sText, str);
}
@@ -102,7 +92,7 @@ void DestroyOptions(void) }
// load options from database + set default if the setting does not exist
-void LoadOptions(void)
+void LoadOptions(void)
{
ZeroMemory(&opt, sizeof(opt));
@@ -115,7 +105,7 @@ void LoadOptions(void) opt.RemoveOldData = db_get_b(NULL, WEATHERPROTONAME, "RemoveOld", false);
opt.MakeItalic = db_get_b(NULL, WEATHERPROTONAME, "MakeItalic", true);
opt.AvatarSize = db_get_b(NULL, WEATHERPROTONAME, "AvatarSize", 128);
-
+
// units
opt.tUnit = db_get_w(NULL, WEATHERPROTONAME, "tUnit", 1);
opt.wUnit = db_get_w(NULL, WEATHERPROTONAME, "wUnit", 2);
@@ -124,63 +114,52 @@ void LoadOptions(void) opt.dUnit = db_get_w(NULL, WEATHERPROTONAME, "dUnit", 1);
opt.eUnit = db_get_w(NULL, WEATHERPROTONAME, "eUnit", 2);
- DBVARIANT dbv;
- if (db_get_ts(NULL, WEATHERPROTONAME, "DegreeSign",&dbv))
- _tcscpy(opt.DegreeSign, _T(""));
- else {
- _tcscpy(opt.DegreeSign, dbv.ptszVal);
- db_free(&dbv);
- }
+ ptrT szValue(db_get_tsa(NULL, WEATHERPROTONAME, "DegreeSign"));
+ _tcsncpy_s(opt.DegreeSign, SIZEOF(opt.DegreeSign), (szValue == NULL) ? _T("") : szValue, _TRUNCATE);
+
opt.DoNotAppendUnit = db_get_b(NULL, WEATHERPROTONAME, "DoNotAppendUnit", 0);
opt.NoFrac = db_get_b(NULL, WEATHERPROTONAME, "NoFractions", 0);
+
// texts
- if ( !db_get_ts(NULL, WEATHERPROTONAME, "DisplayText", &dbv)) {
- wSetData(&opt.cText, TranslateTS(dbv.ptszVal));
- db_free(&dbv);
- }
- else SetTextDefault("C");
-
- if ( !db_get_ts(NULL, WEATHERPROTONAME, "BriefTextTitle", &dbv)) {
- wSetData(&opt.bTitle, TranslateTS(dbv.ptszVal));
- db_free(&dbv);
- }
- else SetTextDefault("b");
-
- if ( !db_get_ts(NULL, WEATHERPROTONAME, "BriefText", &dbv)) {
- wSetData(&opt.bText, TranslateTS(dbv.ptszVal));
- db_free(&dbv);
- }
- else SetTextDefault("B");
-
- if ( !db_get_ts(NULL, WEATHERPROTONAME, "NoteText", &dbv)) {
- wSetData(&opt.nText, TranslateTS(dbv.ptszVal));
- db_free(&dbv);
- }
- else SetTextDefault("N");
-
- if ( !db_get_ts(NULL, WEATHERPROTONAME, "ExtText", &dbv)) {
- wSetData(&opt.eText, TranslateTS(dbv.ptszVal));
- db_free(&dbv);
- }
- else SetTextDefault("E");
-
- if ( !db_get_ts(NULL, WEATHERPROTONAME, "HistoryText", &dbv)) {
- wSetData(&opt.hText, TranslateTS(dbv.ptszVal));
- db_free(&dbv);
- }
- else SetTextDefault("H");
-
- if ( !db_get_ts(NULL, WEATHERPROTONAME, "ExtraText", &dbv)) {
- wSetData(&opt.xText, TranslateTS(dbv.ptszVal));
- db_free(&dbv);
- }
- else SetTextDefault("X");
-
- if ( !db_get_ts(NULL, WEATHERPROTONAME, "StatusText", &dbv)) {
- wSetData(&opt.sText, TranslateTS(dbv.ptszVal));
- db_free(&dbv);
- }
- else SetTextDefault("S");
+ if (szValue = db_get_tsa(NULL, WEATHERPROTONAME, "DisplayText"))
+ wSetData(&opt.cText, TranslateTS(szValue));
+ else
+ SetTextDefault("C");
+
+ if (szValue = db_get_tsa(NULL, WEATHERPROTONAME, "BriefTextTitle"))
+ wSetData(&opt.bTitle, TranslateTS(szValue));
+ else
+ SetTextDefault("b");
+
+ if (szValue = db_get_tsa(NULL, WEATHERPROTONAME, "BriefText"))
+ wSetData(&opt.bText, TranslateTS(szValue));
+ else
+ SetTextDefault("B");
+
+ if (szValue = db_get_tsa(NULL, WEATHERPROTONAME, "NoteText"))
+ wSetData(&opt.nText, TranslateTS(szValue));
+ else
+ SetTextDefault("N");
+
+ if (szValue = db_get_tsa(NULL, WEATHERPROTONAME, "ExtText"))
+ wSetData(&opt.eText, TranslateTS(szValue));
+ else
+ SetTextDefault("E");
+
+ if (szValue = db_get_tsa(NULL, WEATHERPROTONAME, "HistoryText"))
+ wSetData(&opt.hText, TranslateTS(szValue));
+ else
+ SetTextDefault("H");
+
+ if (szValue = db_get_tsa(NULL, WEATHERPROTONAME, "ExtraText"))
+ wSetData(&opt.xText, TranslateTS(szValue));
+ else
+ SetTextDefault("X");
+
+ if (szValue = db_get_tsa(NULL, WEATHERPROTONAME, "StatusText"))
+ wSetData(&opt.sText, TranslateTS(szValue));
+ else
+ SetTextDefault("S");
// advanced
opt.DisCondIcon = db_get_b(NULL, WEATHERPROTONAME, "DisableConditionIcon", false);
@@ -200,28 +179,25 @@ void LoadOptions(void) // popup delay
opt.pDelay = db_get_dw(NULL, WEATHERPROTONAME, "PopupDelay", 0);
// popup texts
- if ( !db_get_ts(NULL, WEATHERPROTONAME, "PopupTitle",&dbv)) {
- wSetData(&opt.pTitle, dbv.ptszVal);
- db_free(&dbv);
- }
- else SetTextDefault("P");
+ if (szValue = db_get_tsa(NULL, WEATHERPROTONAME, "PopupTitle"))
+ wSetData(&opt.pTitle, szValue);
+ else
+ SetTextDefault("P");
- if ( !db_get_ts(NULL, WEATHERPROTONAME, "PopupText",&dbv)) {
- wSetData(&opt.pText, dbv.ptszVal);
- db_free(&dbv);
- }
- else SetTextDefault("p");
+ if (szValue = db_get_tsa(NULL, WEATHERPROTONAME, "PopupText"))
+ wSetData(&opt.pText, szValue);
+ else
+ SetTextDefault("p");
// misc
- if ( !db_get_ts(NULL, WEATHERPROTONAME, "Default",&dbv)) {
- _tcscpy(opt.Default, dbv.ptszVal);
- db_free(&dbv);
- }
- else opt.Default[0] = 0;
+ if (szValue = db_get_tsa(NULL, WEATHERPROTONAME, "Default"))
+ _tcsncpy_s(opt.Default, SIZEOF(opt.Default), szValue, _TRUNCATE);
+ else
+ opt.Default[0] = 0;
}
// save the options to database
-void SaveOptions(void)
+void SaveOptions(void)
{
// main options
db_set_b(NULL, WEATHERPROTONAME, "StartupUpdate", (BYTE)opt.StartupUpdate);
@@ -278,35 +254,35 @@ void SaveOptions(void) //============ OPTION INITIALIZATION ============
// register the weather option pages
-int OptInit(WPARAM wParam,LPARAM lParam)
+int OptInit(WPARAM wParam, LPARAM lParam)
{
OPTIONSDIALOGPAGE odp = { sizeof(odp) };
odp.hInstance = hInst;
// plugin options
- odp.position = 95600;
+ odp.position = 95600;
odp.pszTemplate = MAKEINTRESOURCEA(IDD_OPTIONS);
- odp.pfnDlgProc = OptionsProc;
- odp.ptszGroup = LPGENT("Network");
- odp.ptszTitle = _T(WEATHERPROTOTEXT);
- odp.ptszTab = LPGENT("General");
- odp.flags = ODPF_BOLDGROUPS|ODPF_TCHAR;
+ odp.pfnDlgProc = OptionsProc;
+ odp.ptszGroup = LPGENT("Network");
+ odp.ptszTitle = _T(WEATHERPROTOTEXT);
+ odp.ptszTab = LPGENT("General");
+ odp.flags = ODPF_BOLDGROUPS | ODPF_TCHAR;
Options_AddPage(wParam, &odp);
// text options
odp.pszTemplate = MAKEINTRESOURCEA(IDD_TEXTOPT);
- odp.pfnDlgProc = DlgProcText;
- odp.ptszTab = LPGENT("Display");
+ odp.pfnDlgProc = DlgProcText;
+ odp.ptszTab = LPGENT("Display");
Options_AddPage(wParam, &odp);
// if popup service exists, load the weather popup options
- if (( ServiceExists(MS_POPUP_ADDPOPUPT))) {
- odp.position = 100000000;
- odp.pszTemplate = MAKEINTRESOURCEA(IDD_POPUP);
- odp.ptszGroup = LPGENT("Popups");
+ if ((ServiceExists(MS_POPUP_ADDPOPUPT))) {
+ odp.position = 100000000;
+ odp.pszTemplate = MAKEINTRESOURCEA(IDD_POPUP);
+ odp.ptszGroup = LPGENT("Popups");
odp.groupPosition = 910000000;
- odp.ptszTab = NULL;
- odp.pfnDlgProc = DlgPopupOpts;
+ odp.ptszTab = NULL;
+ odp.pfnDlgProc = DlgPopupOpts;
Options_AddPage(wParam, &odp);
}
@@ -316,11 +292,11 @@ int OptInit(WPARAM wParam,LPARAM lParam) //============ MAIN OPTIONS ============
// weather options
-INT_PTR CALLBACK OptionsProc(HWND hdlg, UINT msg, WPARAM wparam, LPARAM lparam)
+INT_PTR CALLBACK OptionsProc(HWND hdlg, UINT msg, WPARAM wparam, LPARAM lparam)
{
TCHAR str[512];
- switch(msg) {
+ switch (msg) {
case WM_INITDIALOG:
opt_startup = TRUE;
TranslateDialogDefault(hdlg);
@@ -333,61 +309,61 @@ INT_PTR CALLBACK OptionsProc(HWND hdlg, UINT msg, WPARAM wparam, LPARAM lparam) SendDlgItemMessage(hdlg, IDC_AVATARSPIN, UDM_SETPOS, 0, opt.AvatarSize);
SendDlgItemMessage(hdlg, IDC_AVATARSIZE, EM_LIMITTEXT, 3, 0);
- CheckDlgButton(hdlg, IDC_STARTUPUPD, opt.StartupUpdate);
- CheckDlgButton(hdlg, IDC_UPDATE, opt.AutoUpdate);
- CheckDlgButton(hdlg, IDC_PROTOCOND, !opt.NoProtoCondition);
- CheckDlgButton(hdlg, IDC_UPDCONDCHG, opt.UpdateOnlyConditionChanged);
- CheckDlgButton(hdlg, IDC_REMOVEOLD, opt.RemoveOldData);
- CheckDlgButton(hdlg, IDC_MAKEI, opt.MakeItalic);
- CheckDlgButton(hdlg, IDC_DISCONDICON, opt.DisCondIcon);
+ CheckDlgButton(hdlg, IDC_STARTUPUPD, opt.StartupUpdate);
+ CheckDlgButton(hdlg, IDC_UPDATE, opt.AutoUpdate);
+ CheckDlgButton(hdlg, IDC_PROTOCOND, !opt.NoProtoCondition);
+ CheckDlgButton(hdlg, IDC_UPDCONDCHG, opt.UpdateOnlyConditionChanged);
+ CheckDlgButton(hdlg, IDC_REMOVEOLD, opt.RemoveOldData);
+ CheckDlgButton(hdlg, IDC_MAKEI, opt.MakeItalic);
+ CheckDlgButton(hdlg, IDC_DISCONDICON, opt.DisCondIcon);
CheckDlgButton(hdlg, IDC_DONOTAPPUNITS, opt.DoNotAppendUnit);
- CheckDlgButton(hdlg, IDC_NOFRAC, opt.NoFrac);
+ CheckDlgButton(hdlg, IDC_NOFRAC, opt.NoFrac);
// load units
switch (opt.tUnit) { // temperature
- case 1: CheckRadioButton(hdlg, IDC_T1, IDC_T2, IDC_T1); break;
- case 2: CheckRadioButton(hdlg, IDC_T1, IDC_T2, IDC_T2); break;
+ case 1: CheckRadioButton(hdlg, IDC_T1, IDC_T2, IDC_T1); break;
+ case 2: CheckRadioButton(hdlg, IDC_T1, IDC_T2, IDC_T2); break;
}
switch (opt.wUnit) { // wind
- case 1: CheckRadioButton(hdlg, IDC_W1, IDC_W4, IDC_W1); break;
- case 2: CheckRadioButton(hdlg, IDC_W1, IDC_W4, IDC_W2); break;
- case 3: CheckRadioButton(hdlg, IDC_W1, IDC_W4, IDC_W3); break;
- case 4: CheckRadioButton(hdlg, IDC_W1, IDC_W4, IDC_W4); break;
+ case 1: CheckRadioButton(hdlg, IDC_W1, IDC_W4, IDC_W1); break;
+ case 2: CheckRadioButton(hdlg, IDC_W1, IDC_W4, IDC_W2); break;
+ case 3: CheckRadioButton(hdlg, IDC_W1, IDC_W4, IDC_W3); break;
+ case 4: CheckRadioButton(hdlg, IDC_W1, IDC_W4, IDC_W4); break;
}
switch (opt.vUnit) { // visibility
- case 1: CheckRadioButton(hdlg, IDC_V1, IDC_V2, IDC_V1); break;
- case 2: CheckRadioButton(hdlg, IDC_V1, IDC_V2, IDC_V2); break;
+ case 1: CheckRadioButton(hdlg, IDC_V1, IDC_V2, IDC_V1); break;
+ case 2: CheckRadioButton(hdlg, IDC_V1, IDC_V2, IDC_V2); break;
}
switch (opt.pUnit) { // pressure
- case 1: CheckRadioButton(hdlg, IDC_P1, IDC_P4, IDC_P1); break;
- case 2: CheckRadioButton(hdlg, IDC_P1, IDC_P4, IDC_P2); break;
- case 3: CheckRadioButton(hdlg, IDC_P1, IDC_P4, IDC_P3); break;
- case 4: CheckRadioButton(hdlg, IDC_P1, IDC_P4, IDC_P4); break;
+ case 1: CheckRadioButton(hdlg, IDC_P1, IDC_P4, IDC_P1); break;
+ case 2: CheckRadioButton(hdlg, IDC_P1, IDC_P4, IDC_P2); break;
+ case 3: CheckRadioButton(hdlg, IDC_P1, IDC_P4, IDC_P3); break;
+ case 4: CheckRadioButton(hdlg, IDC_P1, IDC_P4, IDC_P4); break;
}
switch (opt.dUnit) { // pressure
- case 1: CheckRadioButton(hdlg, IDC_D1, IDC_D3, IDC_D1); break;
- case 2: CheckRadioButton(hdlg, IDC_D1, IDC_D3, IDC_D2); break;
- case 3: CheckRadioButton(hdlg, IDC_D1, IDC_D3, IDC_D3); break;
+ case 1: CheckRadioButton(hdlg, IDC_D1, IDC_D3, IDC_D1); break;
+ case 2: CheckRadioButton(hdlg, IDC_D1, IDC_D3, IDC_D2); break;
+ case 3: CheckRadioButton(hdlg, IDC_D1, IDC_D3, IDC_D3); break;
}
switch (opt.eUnit) { // elev
- case 1: CheckRadioButton(hdlg, IDC_E1, IDC_E2, IDC_E1); break;
- case 2: CheckRadioButton(hdlg, IDC_E1, IDC_E2, IDC_E2); break;
+ case 1: CheckRadioButton(hdlg, IDC_E1, IDC_E2, IDC_E1); break;
+ case 2: CheckRadioButton(hdlg, IDC_E1, IDC_E2, IDC_E2); break;
}
opt_startup = FALSE;
return 0;
case WM_COMMAND:
- if (HIWORD(wparam)==BN_CLICKED && GetFocus()==(HWND)lparam)
- if ( !opt_startup) SendMessage(GetParent(hdlg),PSM_CHANGED,0,0);
- if ( !((LOWORD(wparam) == IDC_UPDATE || LOWORD(wparam) == IDC_DEGREE) &&
+ if (HIWORD(wparam) == BN_CLICKED && GetFocus() == (HWND)lparam)
+ if (!opt_startup) SendMessage(GetParent(hdlg), PSM_CHANGED, 0, 0);
+ if (!((LOWORD(wparam) == IDC_UPDATE || LOWORD(wparam) == IDC_DEGREE) &&
(HIWORD(wparam) != EN_CHANGE || (HWND)lparam != GetFocus())))
- if ( !opt_startup) SendMessage(GetParent(hdlg),PSM_CHANGED,0,0);
+ if (!opt_startup) SendMessage(GetParent(hdlg), PSM_CHANGED, 0, 0);
return 0;
case WM_NOTIFY:
- switch(((LPNMHDR)lparam)->code) {
+ switch (((LPNMHDR)lparam)->code) {
case PSN_APPLY:
// change the status for weather protocol
if (IsDlgButtonChecked(hdlg, IDC_PROTOCOND) && opt.DefStn != NULL) {
@@ -401,7 +377,7 @@ INT_PTR CALLBACK OptionsProc(HWND hdlg, UINT msg, WPARAM wparam, LPARAM lparam) opt.UpdateTime = (WORD)_ttoi(str);
if (opt.UpdateTime < 1) opt.UpdateTime = 1;
KillTimer(NULL, timerId);
- timerId = SetTimer(NULL, 0, opt.UpdateTime*60000, (TIMERPROC)timerProc);
+ timerId = SetTimer(NULL, 0, opt.UpdateTime * 60000, (TIMERPROC)timerProc);
// other general options
GetDlgItemText(hdlg, IDC_DEGREE, opt.DegreeSign, sizeof(opt.DegreeSign));
@@ -478,39 +454,38 @@ void FreeTextVar(void) // text option dialog
-static const char *varname[8] = {"C", "b", "B", "N", "X", "E", "H", "S"};
-static const int cname[8] = {IDC_CTEXT, IDC_BTITLE, IDC_BTEXT, IDC_NTEXT, IDC_XTEXT, IDC_ETEXT, IDC_HTEXT, IDC_BTITLE2 };
-static TCHAR* const *var[8] = {&opt.cText, &opt.bTitle, &opt.bText, &opt.nText, &opt.xText, &opt.eText, &opt.hText, &opt.sText };
+static const char *varname[8] = { "C", "b", "B", "N", "X", "E", "H", "S" };
+static const int cname[8] = { IDC_CTEXT, IDC_BTITLE, IDC_BTEXT, IDC_NTEXT, IDC_XTEXT, IDC_ETEXT, IDC_HTEXT, IDC_BTITLE2 };
+static TCHAR* const *var[8] = { &opt.cText, &opt.bTitle, &opt.bText, &opt.nText, &opt.xText, &opt.eText, &opt.hText, &opt.sText };
-INT_PTR CALLBACK DlgProcText(HWND hdlg, UINT msg, WPARAM wParam, LPARAM lParam)
+INT_PTR CALLBACK DlgProcText(HWND hdlg, UINT msg, WPARAM wParam, LPARAM lParam)
{
RECT rc, pos;
HWND button;
HMENU hMenu, hMenu1;
TCHAR str[4096];
- switch (msg)
- {
+ switch (msg) {
case WM_INITDIALOG:
opt_startup = TRUE;
// set windows position, make it top-most
- GetWindowRect(hdlg, &rc);
- SetWindowPos(hdlg, HWND_TOPMOST, rc.left, rc.top, 0, 0, SWP_NOSIZE);
+ GetWindowRect(hdlg, &rc);
+ SetWindowPos(hdlg, HWND_TOPMOST, rc.left, rc.top, 0, 0, SWP_NOSIZE);
TranslateDialogDefault(hdlg);
// generate the display text for variable list
_tcscpy(str, TranslateT("%c\tcurrent condition\n%d\tcurrent date\n%e\tdewpoint\n%f\tfeel-like temp\n%h\ttoday's high\n%i\twind direction\n%l\ttoday's low\n%m\thumidity\n%n\tstation name\n%p\tpressure\n%r\tsunrise time\n%s\tstation ID\n%t\ttemperature\n%u\tupdate time\n%v\tvisibility\n%w\twind speed\n%y\tsun set"));
SetDlgItemText(hdlg, IDC_VARLIST, str);
// make the more variable and other buttons flat
- SendMessage(GetDlgItem(hdlg,IDC_MORE), BUTTONSETASFLATBTN, TRUE, 0);
- SendMessage(GetDlgItem(hdlg,IDC_TM1), BUTTONSETASFLATBTN, TRUE, 0);
- SendMessage(GetDlgItem(hdlg,IDC_TM2), BUTTONSETASFLATBTN, TRUE, 0);
- SendMessage(GetDlgItem(hdlg,IDC_TM3), BUTTONSETASFLATBTN, TRUE, 0);
- SendMessage(GetDlgItem(hdlg,IDC_TM4), BUTTONSETASFLATBTN, TRUE, 0);
- SendMessage(GetDlgItem(hdlg,IDC_TM5), BUTTONSETASFLATBTN, TRUE, 0);
- SendMessage(GetDlgItem(hdlg,IDC_TM6), BUTTONSETASFLATBTN, TRUE, 0);
- SendMessage(GetDlgItem(hdlg,IDC_TM7), BUTTONSETASFLATBTN, TRUE, 0);
- SendMessage(GetDlgItem(hdlg,IDC_TM8), BUTTONSETASFLATBTN, TRUE, 0);
- SendMessage(GetDlgItem(hdlg,IDC_RESET), BUTTONSETASFLATBTN, TRUE, 0);
+ SendMessage(GetDlgItem(hdlg, IDC_MORE), BUTTONSETASFLATBTN, TRUE, 0);
+ SendMessage(GetDlgItem(hdlg, IDC_TM1), BUTTONSETASFLATBTN, TRUE, 0);
+ SendMessage(GetDlgItem(hdlg, IDC_TM2), BUTTONSETASFLATBTN, TRUE, 0);
+ SendMessage(GetDlgItem(hdlg, IDC_TM3), BUTTONSETASFLATBTN, TRUE, 0);
+ SendMessage(GetDlgItem(hdlg, IDC_TM4), BUTTONSETASFLATBTN, TRUE, 0);
+ SendMessage(GetDlgItem(hdlg, IDC_TM5), BUTTONSETASFLATBTN, TRUE, 0);
+ SendMessage(GetDlgItem(hdlg, IDC_TM6), BUTTONSETASFLATBTN, TRUE, 0);
+ SendMessage(GetDlgItem(hdlg, IDC_TM7), BUTTONSETASFLATBTN, TRUE, 0);
+ SendMessage(GetDlgItem(hdlg, IDC_TM8), BUTTONSETASFLATBTN, TRUE, 0);
+ SendMessage(GetDlgItem(hdlg, IDC_RESET), BUTTONSETASFLATBTN, TRUE, 0);
// load the settings
LoadTextSettings(hdlg);
opt_startup = FALSE;
@@ -518,7 +493,7 @@ INT_PTR CALLBACK DlgProcText(HWND hdlg, UINT msg, WPARAM wParam, LPARAM lParam) case WM_COMMAND:
if (opt_startup) return TRUE;
- switch(LOWORD(wParam)) {
+ switch (LOWORD(wParam)) {
case IDC_CTEXT:
case IDC_BTITLE:
case IDC_BTEXT:
@@ -528,7 +503,7 @@ INT_PTR CALLBACK DlgProcText(HWND hdlg, UINT msg, WPARAM wParam, LPARAM lParam) case IDC_HTEXT:
case IDC_BTITLE2:
if (HIWORD(wParam) == EN_CHANGE)
- SendMessage(GetParent(hdlg),PSM_CHANGED,0,0);
+ SendMessage(GetParent(hdlg), PSM_CHANGED, 0, 0);
break;
case IDC_MORE:
@@ -542,52 +517,46 @@ INT_PTR CALLBACK DlgProcText(HWND hdlg, UINT msg, WPARAM wParam, LPARAM lParam) case IDC_TM4:
case IDC_TM5:
case IDC_TM6:
- case IDC_TM7:
- case IDC_TM8:
- {
- WEATHERINFO winfo;
-
- // display the menu
- button = GetDlgItem(hdlg, LOWORD(wParam));
- GetWindowRect(button, &pos);
- hMenu = LoadMenu(hInst, MAKEINTRESOURCE(IDR_TMMENU));
- hMenu1 = GetSubMenu(hMenu, 0);
- TranslateMenu(hMenu1);
- switch(TrackPopupMenu(hMenu1, TPM_LEFTBUTTON|TPM_RETURNCMD, pos.left, pos.bottom, 0, hdlg, NULL)) {
- case ID_MPREVIEW:
- // show the preview in a message box, using the weather data from the default station
- winfo = LoadWeatherInfo(opt.DefStn);
- GetDisplay(&winfo, *var[LOWORD(wParam)-IDC_TM1], str);
- MessageBox(NULL, str, TranslateT("Weather Protocol Text Preview"), MB_OK|MB_TOPMOST);
- break;
-
- case ID_MRESET:
- {
- unsigned varo = LOWORD(wParam) - IDC_TM1;
- // remove the old setting from db and free memory
- TCHAR* vartmp = *var[varo];
- wfree(&vartmp);
- SetTextDefault(varname[varo]);
- SetDlgItemText(hdlg, cname[varo], *var[varo]);
- }
- break;
- }
- DestroyMenu(hMenu);
+ case IDC_TM7:
+ case IDC_TM8:
+ WEATHERINFO winfo;
+ // display the menu
+ button = GetDlgItem(hdlg, LOWORD(wParam));
+ GetWindowRect(button, &pos);
+ hMenu = LoadMenu(hInst, MAKEINTRESOURCE(IDR_TMMENU));
+ hMenu1 = GetSubMenu(hMenu, 0);
+ TranslateMenu(hMenu1);
+ switch (TrackPopupMenu(hMenu1, TPM_LEFTBUTTON | TPM_RETURNCMD, pos.left, pos.bottom, 0, hdlg, NULL)) {
+ case ID_MPREVIEW:
+ // show the preview in a message box, using the weather data from the default station
+ winfo = LoadWeatherInfo(opt.DefStn);
+ GetDisplay(&winfo, *var[LOWORD(wParam) - IDC_TM1], str);
+ MessageBox(NULL, str, TranslateT("Weather Protocol Text Preview"), MB_OK | MB_TOPMOST);
+ break;
+
+ case ID_MRESET:
+ unsigned varo = LOWORD(wParam) - IDC_TM1;
+ // remove the old setting from db and free memory
+ TCHAR* vartmp = *var[varo];
+ wfree(&vartmp);
+ SetTextDefault(varname[varo]);
+ SetDlgItemText(hdlg, cname[varo], *var[varo]);
break;
}
+ DestroyMenu(hMenu);
+ break;
case IDC_RESET:
// left click action selection menu
button = GetDlgItem(hdlg, IDC_RESET);
- GetWindowRect(button, &pos);
- hMenu = LoadMenu(hInst, MAKEINTRESOURCE(IDR_TMENU));
+ GetWindowRect(button, &pos);
+ hMenu = LoadMenu(hInst, MAKEINTRESOURCE(IDR_TMENU));
hMenu1 = GetSubMenu(hMenu, 0);
TranslateMenu(hMenu1);
- switch(TrackPopupMenu(hMenu1, TPM_LEFTBUTTON|TPM_RETURNCMD, pos.left, pos.bottom, 0, hdlg, NULL))
- {
+ switch (TrackPopupMenu(hMenu1, TPM_LEFTBUTTON | TPM_RETURNCMD, pos.left, pos.bottom, 0, hdlg, NULL)) {
case ID_T1:
// reset to the strings in memory, discard all changes
- LoadTextSettings(hdlg);
+ LoadTextSettings(hdlg);
break;
case ID_T2:
@@ -602,35 +571,32 @@ INT_PTR CALLBACK DlgProcText(HWND hdlg, UINT msg, WPARAM wParam, LPARAM lParam) }
return TRUE;
case WM_NOTIFY:
- switch(((LPNMHDR)lParam)->code)
- {
+ switch (((LPNMHDR)lParam)->code) {
case PSN_APPLY:
- {
- // save the option
- TCHAR textstr[MAX_TEXT_SIZE];
- // free memory for old settings
- FreeTextVar();
- // save new settings to memory
- GetDlgItemText(hdlg, IDC_CTEXT, textstr, MAX_TEXT_SIZE);
- wSetData(&opt.cText, textstr);
- GetDlgItemText(hdlg, IDC_BTEXT, textstr, MAX_TEXT_SIZE);
- wSetData(&opt.bText, textstr);
- GetDlgItemText(hdlg, IDC_BTITLE, textstr, MAX_TEXT_SIZE);
- wSetData(&opt.bTitle, textstr);
- GetDlgItemText(hdlg, IDC_ETEXT, textstr, MAX_TEXT_SIZE);
- wSetData(&opt.eText, textstr);
- GetDlgItemText(hdlg, IDC_NTEXT, textstr, MAX_TEXT_SIZE);
- wSetData(&opt.nText, textstr);
- GetDlgItemText(hdlg, IDC_HTEXT, textstr, MAX_TEXT_SIZE);
- wSetData(&opt.hText, textstr);
- GetDlgItemText(hdlg, IDC_XTEXT, textstr, MAX_TEXT_SIZE);
- wSetData(&opt.xText, textstr);
- GetDlgItemText(hdlg, IDC_BTITLE2, textstr, MAX_TEXT_SIZE);
- wSetData(&opt.sText, textstr);
- SaveOptions();
- UpdateAllInfo(0, 0);
- break;
- }
+ // save the option
+ TCHAR textstr[MAX_TEXT_SIZE];
+ // free memory for old settings
+ FreeTextVar();
+ // save new settings to memory
+ GetDlgItemText(hdlg, IDC_CTEXT, textstr, MAX_TEXT_SIZE);
+ wSetData(&opt.cText, textstr);
+ GetDlgItemText(hdlg, IDC_BTEXT, textstr, MAX_TEXT_SIZE);
+ wSetData(&opt.bText, textstr);
+ GetDlgItemText(hdlg, IDC_BTITLE, textstr, MAX_TEXT_SIZE);
+ wSetData(&opt.bTitle, textstr);
+ GetDlgItemText(hdlg, IDC_ETEXT, textstr, MAX_TEXT_SIZE);
+ wSetData(&opt.eText, textstr);
+ GetDlgItemText(hdlg, IDC_NTEXT, textstr, MAX_TEXT_SIZE);
+ wSetData(&opt.nText, textstr);
+ GetDlgItemText(hdlg, IDC_HTEXT, textstr, MAX_TEXT_SIZE);
+ wSetData(&opt.hText, textstr);
+ GetDlgItemText(hdlg, IDC_XTEXT, textstr, MAX_TEXT_SIZE);
+ wSetData(&opt.xText, textstr);
+ GetDlgItemText(hdlg, IDC_BTITLE2, textstr, MAX_TEXT_SIZE);
+ wSetData(&opt.sText, textstr);
+ SaveOptions();
+ UpdateAllInfo(0, 0);
+ break;
}
break;
}
|