3 * PROJECT: ReactOS Power Configuration Applet
4 * LICENSE: GPL - See COPYING in the top level directory
5 * FILE: dll/cpl/powercfg/alarms.c
6 * PURPOSE: alarms tab of applet
7 * PROGRAMMERS: Alexander Wurzinger (Lohnegrim at gmx dot net)
8 * Johannes Anderwald (johannes.anderwald@student.tugraz.at)
22 BOOLEAN
Ala_InitData(HWND
);
24 /* Property page dialog callback */
33 UNREFERENCED_PARAMETER(lParam
);
34 UNREFERENCED_PARAMETER(wParam
);
38 if (!Ala_InitData(hwndDlg
))
41 //handle initialization error
50 BOOLEAN
Ala_InitData(HWND hwndDlg
)
52 TCHAR szAction
[MAX_PATH
];
53 TCHAR szText
[MAX_PATH
];
54 TCHAR szSound
[MAX_PATH
];
55 TCHAR szMessage
[MAX_PATH
];
56 TCHAR szTemp
[MAX_PATH
];
57 TCHAR szBatteryLevel
[MAX_PATH
];
58 TCHAR szProgram
[MAX_PATH
];
60 if (!ReadGlobalPwrPolicy(&gGPP
))
65 if (gGPP
.user
.DischargePolicy
[DISCHARGE_POLICY_LOW
].Enable
)
67 SendMessage(GetDlgItem(hwndDlg
, IDC_ALARM1
),
69 (gGPP
.user
.DischargePolicy
[DISCHARGE_POLICY_LOW
].Enable
? BST_CHECKED
: BST_UNCHECKED
),
72 if (LoadString(hApplet
, IDS_PROCENT
, szTemp
, MAX_PATH
))
74 _stprintf(szBatteryLevel
,szTemp
,gGPP
.user
.DischargePolicy
[DISCHARGE_POLICY_LOW
].BatteryLevel
);
75 SetWindowText(GetDlgItem(hwndDlg
, IDC_ALARMVALUE1
),szBatteryLevel
);
78 SendMessage(GetDlgItem(hwndDlg
, IDC_ALARMBAR1
),
81 (LPARAM
)MAKELONG(0, 100));
82 SendMessage(GetDlgItem(hwndDlg
, IDC_ALARMBAR1
),
86 SendMessage(GetDlgItem(hwndDlg
, IDC_ALARMBAR1
),
89 (LPARAM
)gGPP
.user
.DischargePolicy
[DISCHARGE_POLICY_LOW
].BatteryLevel
);
91 if (LoadString(hApplet
, gGPP
.user
.DischargePolicy
[DISCHARGE_POLICY_LOW
].PowerPolicy
.Action
+IDS_PowerActionNone1
, szAction
, MAX_PATH
))
93 SetWindowText(GetDlgItem(hwndDlg
, IDC_ALARMAKTION1
),szAction
);
96 memset(szMessage
, 0x0, sizeof(szMessage
));
97 LoadString(hApplet
, IDS_NOACTION
, szMessage
, MAX_PATH
);
99 if (LOWORD(gGPP
.user
.DischargePolicy
[DISCHARGE_POLICY_LOW
].PowerPolicy
.EventCode
) & POWER_LEVEL_USER_NOTIFY_TEXT
)
101 if (LOWORD(gGPP
.user
.DischargePolicy
[DISCHARGE_POLICY_LOW
].PowerPolicy
.EventCode
) & POWER_LEVEL_USER_NOTIFY_SOUND
)
103 if (LoadString(hApplet
, IDS_SOUND
, szSound
, MAX_PATH
) && LoadString(hApplet
, IDS_TEXT
, szText
, MAX_PATH
))
105 _stprintf(szMessage
,_T("%s, %s"),szSound
,szText
);
110 if (LoadString(hApplet
, IDS_TEXT
, szText
, MAX_PATH
))
112 _stprintf(szMessage
,_T("%s"),szText
);
118 if (LOWORD(gGPP
.user
.DischargePolicy
[DISCHARGE_POLICY_LOW
].PowerPolicy
.EventCode
) & POWER_LEVEL_USER_NOTIFY_SOUND
)
120 if (LoadString(hApplet
, IDS_SOUND
, szSound
, MAX_PATH
))
122 _stprintf(szMessage
,_T("%s"),szSound
);
127 SetWindowText(GetDlgItem(hwndDlg
, IDC_ALARMMSG1
),szMessage
);
129 if (LoadString(hApplet
, IDS_PowerActionNone2
, szProgram
, MAX_PATH
))
131 SetWindowText(GetDlgItem(hwndDlg
, IDC_ALARMPROG1
),szProgram
);
134 if (gGPP
.user
.DischargePolicy
[DISCHARGE_POLICY_CRITICAL
].Enable
)
136 SendMessage(GetDlgItem(hwndDlg
, IDC_ALARM2
),
138 (gGPP
.user
.DischargePolicy
[DISCHARGE_POLICY_CRITICAL
].Enable
? BST_CHECKED
: BST_UNCHECKED
),
140 if (LoadString(hApplet
, IDS_PROCENT
, szTemp
, MAX_PATH
))
142 _stprintf(szBatteryLevel
,szTemp
,gGPP
.user
.DischargePolicy
[DISCHARGE_POLICY_CRITICAL
].BatteryLevel
);
143 SetWindowText(GetDlgItem(hwndDlg
, IDC_ALARMVALUE2
),szBatteryLevel
);
146 SendMessage(GetDlgItem(hwndDlg
, IDC_ALARMBAR2
),
149 (LPARAM
)MAKELONG(0, 100));
150 SendMessage(GetDlgItem(hwndDlg
, IDC_ALARMBAR2
),
153 (LPARAM
)gGPP
.user
.DischargePolicy
[DISCHARGE_POLICY_CRITICAL
].BatteryLevel
);
155 if (LoadString(hApplet
, gGPP
.user
.DischargePolicy
[DISCHARGE_POLICY_CRITICAL
].PowerPolicy
.Action
+IDS_PowerActionNone1
, szAction
, MAX_PATH
))
157 SendMessage(GetDlgItem(hwndDlg
, IDC_ALARMAKTION2
),
163 memset(szMessage
, 0x0, sizeof(szMessage
));
164 LoadString(hApplet
, IDS_NOACTION
, szMessage
, MAX_PATH
);
166 if (LOWORD(gGPP
.user
.DischargePolicy
[DISCHARGE_POLICY_CRITICAL
].PowerPolicy
.EventCode
) & POWER_LEVEL_USER_NOTIFY_TEXT
)
168 if (LOWORD(gGPP
.user
.DischargePolicy
[DISCHARGE_POLICY_CRITICAL
].PowerPolicy
.EventCode
) & POWER_LEVEL_USER_NOTIFY_SOUND
)
170 if (LoadString(hApplet
, IDS_TEXT
, szText
, MAX_PATH
) && LoadString(hApplet
, IDS_SOUND
, szSound
, MAX_PATH
))
172 _stprintf(szMessage
,_T("%s, %s"),szSound
,szText
);
177 if (LoadString(hApplet
, IDS_TEXT
, szText
, MAX_PATH
))
179 _stprintf(szMessage
,_T("%s"),szText
);
185 if (LOWORD(gGPP
.user
.DischargePolicy
[DISCHARGE_POLICY_CRITICAL
].PowerPolicy
.EventCode
) & POWER_LEVEL_USER_NOTIFY_SOUND
)
187 if (LoadString(hApplet
, IDS_SOUND
, szSound
, MAX_PATH
))
189 _stprintf(szMessage
,_T("%s"),szSound
);
194 SetWindowText(GetDlgItem(hwndDlg
, IDC_ALARMMSG2
),szMessage
);
196 if (LoadString(hApplet
, IDS_PowerActionNone2
, szProgram
, MAX_PATH
))
198 SetWindowText(GetDlgItem(hwndDlg
, IDC_ALARMPROG2
),szProgram
);