mirror of
https://github.com/reactos/reactos.git
synced 2025-02-23 17:05:46 +00:00
- Make local functions static.
- Reorder functions to reduce the number of required prototypes. - Use Win32 types instead of generic types (e.g. int -> INT) and add missing VOIDs. - No code changes. svn path=/trunk/; revision=30957
This commit is contained in:
parent
4f987d4817
commit
7646664619
6 changed files with 466 additions and 495 deletions
|
@ -22,66 +22,15 @@
|
|||
#include "resource.h"
|
||||
#include "powercfg.h"
|
||||
|
||||
HWND hAdv=0;
|
||||
|
||||
void Adv_InitDialog();
|
||||
void Adv_SaveData(HWND hwndDlg);
|
||||
HWND hAdv = 0;
|
||||
|
||||
static POWER_ACTION g_SystemBatteries[3];
|
||||
static POWER_ACTION g_PowerButton[5];
|
||||
static POWER_ACTION g_SleepButton[5];
|
||||
|
||||
/* Property page dialog callback */
|
||||
INT_PTR CALLBACK
|
||||
advancedProc(
|
||||
HWND hwndDlg,
|
||||
UINT uMsg,
|
||||
WPARAM wParam,
|
||||
LPARAM lParam
|
||||
)
|
||||
{
|
||||
switch(uMsg)
|
||||
{
|
||||
case WM_INITDIALOG:
|
||||
hAdv = hwndDlg;
|
||||
Adv_InitDialog();
|
||||
return TRUE;
|
||||
break;
|
||||
case WM_COMMAND:
|
||||
switch(LOWORD(wParam))
|
||||
{
|
||||
case IDC_SYSTRAYBATTERYMETER:
|
||||
case IDC_PASSWORDLOGON:
|
||||
case IDC_VIDEODIMDISPLAY:
|
||||
if (HIWORD(wParam) == BN_CLICKED)
|
||||
{
|
||||
PropSheet_Changed(GetParent(hwndDlg), hwndDlg);
|
||||
}
|
||||
break;
|
||||
case IDC_LIDCLOSE:
|
||||
case IDC_POWERBUTTON:
|
||||
case IDC_SLEEPBUTTON:
|
||||
if (HIWORD(wParam) == CBN_SELCHANGE)
|
||||
{
|
||||
PropSheet_Changed(GetParent(hwndDlg), hwndDlg);
|
||||
}
|
||||
break;
|
||||
}
|
||||
break;
|
||||
case WM_NOTIFY:
|
||||
{
|
||||
LPNMHDR lpnm = (LPNMHDR)lParam;
|
||||
if (lpnm->code == (UINT)PSN_APPLY)
|
||||
{
|
||||
Adv_SaveData(hwndDlg);
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
static void AddItem(HWND hDlgCtrl, int ResourceId, LPARAM lParam, POWER_ACTION * lpAction)
|
||||
static VOID
|
||||
AddItem(HWND hDlgCtrl, INT ResourceId, LPARAM lParam, POWER_ACTION * lpAction)
|
||||
{
|
||||
TCHAR szBuffer[MAX_PATH];
|
||||
LRESULT Index;
|
||||
|
@ -96,11 +45,12 @@ static void AddItem(HWND hDlgCtrl, int ResourceId, LPARAM lParam, POWER_ACTION *
|
|||
}
|
||||
}
|
||||
|
||||
static int FindActionIndex(POWER_ACTION * lpAction, DWORD dwActionSize, POWER_ACTION poAction)
|
||||
static INT
|
||||
FindActionIndex(POWER_ACTION * lpAction, DWORD dwActionSize, POWER_ACTION poAction)
|
||||
{
|
||||
int Index;
|
||||
INT Index;
|
||||
|
||||
for (Index = 0; Index < (int) dwActionSize; Index++)
|
||||
for (Index = 0; Index < (INT)dwActionSize; Index++)
|
||||
{
|
||||
if (lpAction[Index] == poAction)
|
||||
return Index;
|
||||
|
@ -109,7 +59,8 @@ static int FindActionIndex(POWER_ACTION * lpAction, DWORD dwActionSize, POWER_AC
|
|||
return -1;
|
||||
}
|
||||
|
||||
static BOOLEAN IsBatteryUsed()
|
||||
static BOOLEAN
|
||||
IsBatteryUsed(VOID)
|
||||
{
|
||||
SYSTEM_BATTERY_STATE sbs;
|
||||
|
||||
|
@ -128,7 +79,8 @@ static BOOLEAN IsBatteryUsed()
|
|||
return FALSE;
|
||||
}
|
||||
|
||||
POWER_ACTION GetPowerActionFromPolicy(POWER_ACTION_POLICY * Policy)
|
||||
POWER_ACTION
|
||||
GetPowerActionFromPolicy(POWER_ACTION_POLICY *Policy)
|
||||
{
|
||||
POWER_ACTION poAction = PowerActionNone;
|
||||
/*
|
||||
|
@ -171,10 +123,11 @@ POWER_ACTION GetPowerActionFromPolicy(POWER_ACTION_POLICY * Policy)
|
|||
return poAction;
|
||||
}
|
||||
|
||||
void ShowCurrentPowerActionPolicy(HWND hDlgCtrl,
|
||||
POWER_ACTION * lpAction,
|
||||
VOID
|
||||
ShowCurrentPowerActionPolicy(HWND hDlgCtrl,
|
||||
POWER_ACTION *lpAction,
|
||||
DWORD dwActionSize,
|
||||
POWER_ACTION_POLICY * Policy)
|
||||
POWER_ACTION_POLICY *Policy)
|
||||
{
|
||||
int poActionIndex;
|
||||
POWER_ACTION poAction;
|
||||
|
@ -190,8 +143,9 @@ void ShowCurrentPowerActionPolicy(HWND hDlgCtrl,
|
|||
SendMessage(hDlgCtrl, CB_SETCURSEL, (WPARAM)poActionIndex, (LPARAM)0);
|
||||
}
|
||||
|
||||
BOOLEAN SaveCurrentPowerActionPolicy(IN HWND hDlgCtrl,
|
||||
OUT POWER_ACTION_POLICY * Policy)
|
||||
BOOLEAN
|
||||
SaveCurrentPowerActionPolicy(IN HWND hDlgCtrl,
|
||||
OUT POWER_ACTION_POLICY *Policy)
|
||||
{
|
||||
LRESULT Index;
|
||||
LRESULT ItemData;
|
||||
|
@ -236,7 +190,8 @@ BOOLEAN SaveCurrentPowerActionPolicy(IN HWND hDlgCtrl,
|
|||
|
||||
//-------------------------------------------------------------------
|
||||
|
||||
void ShowCurrentPowerActionPolicies(HWND hwndDlg)
|
||||
VOID
|
||||
ShowCurrentPowerActionPolicies(HWND hwndDlg)
|
||||
{
|
||||
TCHAR szAction[MAX_PATH];
|
||||
|
||||
|
@ -323,7 +278,8 @@ void ShowCurrentPowerActionPolicies(HWND hwndDlg)
|
|||
}
|
||||
}
|
||||
|
||||
void Adv_InitDialog()
|
||||
VOID
|
||||
Adv_InitDialog(VOID)
|
||||
{
|
||||
HWND hList1;
|
||||
HWND hList2;
|
||||
|
@ -445,7 +401,8 @@ void Adv_InitDialog()
|
|||
}
|
||||
|
||||
|
||||
void Adv_SaveData(HWND hwndDlg)
|
||||
static VOID
|
||||
Adv_SaveData(HWND hwndDlg)
|
||||
{
|
||||
BOOL bSystrayBatteryMeter;
|
||||
BOOL bPasswordLogon;
|
||||
|
@ -529,3 +486,51 @@ void Adv_SaveData(HWND hwndDlg)
|
|||
|
||||
Adv_InitDialog();
|
||||
}
|
||||
|
||||
/* Property page dialog callback */
|
||||
INT_PTR CALLBACK
|
||||
AdvancedDlgProc(HWND hwndDlg,
|
||||
UINT uMsg,
|
||||
WPARAM wParam,
|
||||
LPARAM lParam)
|
||||
{
|
||||
switch(uMsg)
|
||||
{
|
||||
case WM_INITDIALOG:
|
||||
hAdv = hwndDlg;
|
||||
Adv_InitDialog();
|
||||
return TRUE;
|
||||
break;
|
||||
case WM_COMMAND:
|
||||
switch(LOWORD(wParam))
|
||||
{
|
||||
case IDC_SYSTRAYBATTERYMETER:
|
||||
case IDC_PASSWORDLOGON:
|
||||
case IDC_VIDEODIMDISPLAY:
|
||||
if (HIWORD(wParam) == BN_CLICKED)
|
||||
{
|
||||
PropSheet_Changed(GetParent(hwndDlg), hwndDlg);
|
||||
}
|
||||
break;
|
||||
case IDC_LIDCLOSE:
|
||||
case IDC_POWERBUTTON:
|
||||
case IDC_SLEEPBUTTON:
|
||||
if (HIWORD(wParam) == CBN_SELCHANGE)
|
||||
{
|
||||
PropSheet_Changed(GetParent(hwndDlg), hwndDlg);
|
||||
}
|
||||
break;
|
||||
}
|
||||
break;
|
||||
case WM_NOTIFY:
|
||||
{
|
||||
LPNMHDR lpnm = (LPNMHDR)lParam;
|
||||
if (lpnm->code == (UINT)PSN_APPLY)
|
||||
{
|
||||
Adv_SaveData(hwndDlg);
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
|
|
@ -20,35 +20,8 @@
|
|||
#include "resource.h"
|
||||
#include "powercfg.h"
|
||||
|
||||
BOOLEAN Ala_InitData(HWND);
|
||||
|
||||
/* Property page dialog callback */
|
||||
INT_PTR CALLBACK
|
||||
alarmsProc(
|
||||
HWND hwndDlg,
|
||||
UINT uMsg,
|
||||
WPARAM wParam,
|
||||
LPARAM lParam
|
||||
)
|
||||
{
|
||||
UNREFERENCED_PARAMETER(lParam);
|
||||
UNREFERENCED_PARAMETER(wParam);
|
||||
switch(uMsg)
|
||||
{
|
||||
case WM_INITDIALOG:
|
||||
if (!Ala_InitData(hwndDlg))
|
||||
{
|
||||
//TODO
|
||||
//handle initialization error
|
||||
}
|
||||
return TRUE;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
BOOLEAN Ala_InitData(HWND hwndDlg)
|
||||
static BOOLEAN
|
||||
Ala_InitData(HWND hwndDlg)
|
||||
{
|
||||
TCHAR szAction[MAX_PATH];
|
||||
TCHAR szText[MAX_PATH];
|
||||
|
@ -197,3 +170,27 @@ BOOLEAN Ala_InitData(HWND hwndDlg)
|
|||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/* Property page dialog callback */
|
||||
INT_PTR CALLBACK
|
||||
AlarmsDlgProc(HWND hwndDlg,
|
||||
UINT uMsg,
|
||||
WPARAM wParam,
|
||||
LPARAM lParam)
|
||||
{
|
||||
UNREFERENCED_PARAMETER(lParam);
|
||||
UNREFERENCED_PARAMETER(wParam);
|
||||
switch(uMsg)
|
||||
{
|
||||
case WM_INITDIALOG:
|
||||
if (!Ala_InitData(hwndDlg))
|
||||
{
|
||||
//TODO
|
||||
//handle initialization error
|
||||
}
|
||||
return TRUE;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
|
|
@ -26,48 +26,12 @@
|
|||
#include "powercfg.h"
|
||||
|
||||
|
||||
void Hib_InitDialog(HWND);
|
||||
INT_PTR Hib_SaveData(HWND);
|
||||
BOOLEAN Pos_InitData();
|
||||
void Adv_InitDialog();
|
||||
|
||||
/* Property page dialog callback */
|
||||
INT_PTR CALLBACK
|
||||
hibernateProc(
|
||||
HWND hwndDlg,
|
||||
UINT uMsg,
|
||||
WPARAM wParam,
|
||||
LPARAM lParam
|
||||
)
|
||||
{
|
||||
switch(uMsg)
|
||||
{
|
||||
case WM_INITDIALOG:
|
||||
Hib_InitDialog(hwndDlg);
|
||||
return TRUE;
|
||||
case WM_COMMAND:
|
||||
switch(LOWORD(wParam))
|
||||
{
|
||||
case IDC_HIBERNATEFILE:
|
||||
if (HIWORD(wParam) == BN_CLICKED)
|
||||
{
|
||||
PropSheet_Changed(GetParent(hwndDlg), hwndDlg);
|
||||
}
|
||||
}
|
||||
break;
|
||||
case WM_NOTIFY:
|
||||
{
|
||||
LPNMHDR lpnm = (LPNMHDR)lParam;
|
||||
if (lpnm->code == (UINT)PSN_APPLY)
|
||||
{
|
||||
return Hib_SaveData(hwndDlg);
|
||||
}
|
||||
}
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
void Hib_InitDialog(HWND hwndDlg)
|
||||
static VOID
|
||||
Hib_InitDialog(HWND hwndDlg)
|
||||
{
|
||||
SYSTEM_POWER_CAPABILITIES PowerCaps;
|
||||
MEMORYSTATUSEX msex;
|
||||
|
@ -145,7 +109,8 @@ void Hib_InitDialog(HWND hwndDlg)
|
|||
}
|
||||
}
|
||||
|
||||
INT_PTR Hib_SaveData(HWND hwndDlg)
|
||||
INT_PTR
|
||||
Hib_SaveData(HWND hwndDlg)
|
||||
{
|
||||
BOOLEAN bHibernate;
|
||||
|
||||
|
@ -161,3 +126,37 @@ INT_PTR Hib_SaveData(HWND hwndDlg)
|
|||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/* Property page dialog callback */
|
||||
INT_PTR CALLBACK
|
||||
HibernateDlgProc(HWND hwndDlg,
|
||||
UINT uMsg,
|
||||
WPARAM wParam,
|
||||
LPARAM lParam)
|
||||
{
|
||||
switch(uMsg)
|
||||
{
|
||||
case WM_INITDIALOG:
|
||||
Hib_InitDialog(hwndDlg);
|
||||
return TRUE;
|
||||
case WM_COMMAND:
|
||||
switch(LOWORD(wParam))
|
||||
{
|
||||
case IDC_HIBERNATEFILE:
|
||||
if (HIWORD(wParam) == BN_CLICKED)
|
||||
{
|
||||
PropSheet_Changed(GetParent(hwndDlg), hwndDlg);
|
||||
}
|
||||
}
|
||||
break;
|
||||
case WM_NOTIFY:
|
||||
{
|
||||
LPNMHDR lpnm = (LPNMHDR)lParam;
|
||||
if (lpnm->code == (UINT)PSN_APPLY)
|
||||
{
|
||||
return Hib_SaveData(hwndDlg);
|
||||
}
|
||||
}
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
|
|
@ -22,10 +22,7 @@
|
|||
#define NUM_APPLETS (1)
|
||||
|
||||
static LONG APIENTRY Applet1(HWND hwnd, UINT uMsg, LPARAM wParam, LPARAM lParam);
|
||||
INT_PTR CALLBACK powershemesProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);
|
||||
INT_PTR CALLBACK alarmsProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);
|
||||
INT_PTR CALLBACK advancedProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);
|
||||
INT_PTR CALLBACK hibernateProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);
|
||||
|
||||
|
||||
HINSTANCE hApplet = 0;
|
||||
GLOBAL_POWER_POLICY gGPP;
|
||||
|
@ -76,39 +73,6 @@ InitPropSheetPage(PROPSHEETHEADER *ppsh, WORD idDlg, DLGPROC DlgProc)
|
|||
}
|
||||
|
||||
|
||||
/* Property Sheet Callback */
|
||||
int CALLBACK
|
||||
PropSheetProc(
|
||||
HWND hwndDlg,
|
||||
UINT uMsg,
|
||||
LPARAM lParam
|
||||
)
|
||||
{
|
||||
UNREFERENCED_PARAMETER(hwndDlg);
|
||||
switch(uMsg)
|
||||
{
|
||||
case PSCB_BUTTONPRESSED:
|
||||
switch(lParam)
|
||||
{
|
||||
case PSBTN_OK: /* OK */
|
||||
break;
|
||||
case PSBTN_CANCEL: /* Cancel */
|
||||
break;
|
||||
case PSBTN_APPLYNOW: /* Apply now */
|
||||
break;
|
||||
case PSBTN_FINISH: /* Close */
|
||||
break;
|
||||
default:
|
||||
return FALSE;
|
||||
}
|
||||
break;
|
||||
|
||||
case PSCB_INITIALIZED:
|
||||
break;
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/* First Applet */
|
||||
static LONG APIENTRY
|
||||
Applet1(HWND hwnd, UINT uMsg, LPARAM wParam, LPARAM lParam)
|
||||
|
@ -130,7 +94,7 @@ Applet1(HWND hwnd, UINT uMsg, LPARAM wParam, LPARAM lParam)
|
|||
|
||||
ZeroMemory(&psh, sizeof(PROPSHEETHEADER));
|
||||
psh.dwSize = sizeof(PROPSHEETHEADER);
|
||||
psh.dwFlags = PSH_USECALLBACK | PSH_PROPTITLE;
|
||||
psh.dwFlags = PSH_PROPTITLE;
|
||||
psh.hwndParent = NULL;
|
||||
psh.hInstance = hApplet;
|
||||
psh.hIcon = LoadIcon(hApplet, MAKEINTRESOURCE(IDC_CPLICON_1));
|
||||
|
@ -138,18 +102,17 @@ Applet1(HWND hwnd, UINT uMsg, LPARAM wParam, LPARAM lParam)
|
|||
psh.nPages = 0;
|
||||
psh.nStartPage = 0;
|
||||
psh.phpage = hpsp;
|
||||
psh.pfnCallback = PropSheetProc;
|
||||
|
||||
InitPropSheetPage(&psh, IDD_PROPPAGEPOWERSHEMES, (DLGPROC) powershemesProc);
|
||||
InitPropSheetPage(&psh, IDD_PROPPAGEPOWERSHEMES, (DLGPROC)PowerSchemesDlgProc);
|
||||
if (GetPwrCapabilities(&spc))
|
||||
{
|
||||
if (spc.SystemBatteriesPresent)
|
||||
{
|
||||
InitPropSheetPage(&psh, IDD_PROPPAGEALARMS, (DLGPROC) alarmsProc);
|
||||
InitPropSheetPage(&psh, IDD_PROPPAGEALARMS, (DLGPROC)AlarmsDlgProc);
|
||||
}
|
||||
}
|
||||
InitPropSheetPage(&psh, IDD_PROPPAGEADVANCED, (DLGPROC) advancedProc);
|
||||
InitPropSheetPage(&psh, IDD_PROPPAGEHIBERNATE, (DLGPROC) hibernateProc);
|
||||
InitPropSheetPage(&psh, IDD_PROPPAGEADVANCED, (DLGPROC)AdvancedDlgProc);
|
||||
InitPropSheetPage(&psh, IDD_PROPPAGEHIBERNATE, (DLGPROC)HibernateDlgProc);
|
||||
|
||||
/* Load additional pages provided by shell extensions */
|
||||
hpsxa = SHCreatePropSheetExtArray(HKEY_LOCAL_MACHINE, REGSTR_PATH_CONTROLSFOLDER TEXT("\\Power"), MAX_POWER_PAGES - psh.nPages);
|
||||
|
@ -166,8 +129,7 @@ Applet1(HWND hwnd, UINT uMsg, LPARAM wParam, LPARAM lParam)
|
|||
|
||||
/* Control Panel Callback */
|
||||
LONG CALLBACK
|
||||
CPlApplet(
|
||||
HWND hwndCPl,
|
||||
CPlApplet(HWND hwndCPl,
|
||||
UINT uMsg,
|
||||
LPARAM lParam1,
|
||||
LPARAM lParam2)
|
||||
|
@ -203,10 +165,8 @@ CPlApplet(
|
|||
}
|
||||
|
||||
|
||||
BOOLEAN
|
||||
WINAPI
|
||||
DllMain(
|
||||
HINSTANCE hinstDLL,
|
||||
BOOLEAN WINAPI
|
||||
DllMain(HINSTANCE hinstDLL,
|
||||
DWORD dwReason,
|
||||
LPVOID lpvReserved)
|
||||
{
|
||||
|
|
|
@ -18,6 +18,11 @@ extern UINT guiIndex;
|
|||
|
||||
#define MAX_POWER_PAGES 32
|
||||
|
||||
INT_PTR CALLBACK PowerSchemesDlgProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);
|
||||
INT_PTR CALLBACK AlarmsDlgProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);
|
||||
INT_PTR CALLBACK AdvancedDlgProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);
|
||||
INT_PTR CALLBACK HibernateDlgProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);
|
||||
|
||||
#endif /* __CPL_SAMPLE_H */
|
||||
|
||||
/* EOF */
|
||||
|
|
|
@ -49,132 +49,9 @@ POWER_POLICY gPP[MAX_POWER_POLICY];
|
|||
UINT guiIndex = 0;
|
||||
HWND hwndDialog;
|
||||
|
||||
void LoadConfig(HWND hwndDlg);
|
||||
void Pos_InitPage(HWND hwndDlg);
|
||||
BOOLEAN Pos_InitData();
|
||||
void Pos_SaveData(HWND hwndDlg);
|
||||
|
||||
|
||||
BOOLEAN CreateEnergyList(HWND hwnd);
|
||||
|
||||
static
|
||||
BOOLEAN DelScheme(HWND hwnd)
|
||||
{
|
||||
INT iCurSel;
|
||||
HWND hList;
|
||||
TCHAR szBuf[1024], szBufT[1024];
|
||||
UINT DelScheme;
|
||||
|
||||
hList = GetDlgItem(hwnd, IDC_ENERGYLIST);
|
||||
|
||||
iCurSel = SendMessage(hList, CB_GETCURSEL, 0, 0);
|
||||
if (iCurSel == CB_ERR) return FALSE;
|
||||
|
||||
SendMessage(hList, CB_SETCURSEL, iCurSel, 0);
|
||||
|
||||
DelScheme = SendMessage(hList, CB_GETITEMDATA, (WPARAM)iCurSel, 0);
|
||||
if (DelScheme == (UINT)CB_ERR) return FALSE;
|
||||
|
||||
LoadString(hApplet, IDS_DEL_SCHEME_TITLE, szBufT, sizeof(szBufT) / sizeof(TCHAR));
|
||||
LoadString(hApplet, IDS_DEL_SCHEME, szBuf, sizeof(szBuf) / sizeof(TCHAR));
|
||||
|
||||
if (MessageBox(hwnd, (LPCTSTR)szBuf, (LPCTSTR)szBufT, MB_OKCANCEL | MB_ICONQUESTION) == IDOK)
|
||||
{
|
||||
UINT Current;
|
||||
|
||||
if (GetActivePwrScheme(&Current))
|
||||
{
|
||||
SendMessage(hList, CB_SETCURSEL, (WPARAM)0, 0);
|
||||
SendMessage(hList, CB_DELETESTRING, (WPARAM)iCurSel, 0);
|
||||
if (Current == DelScheme) Pos_SaveData(hwnd);
|
||||
}
|
||||
|
||||
if (DeletePwrScheme(DelScheme) != 0) return TRUE;
|
||||
}
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/* Property page dialog callback */
|
||||
INT_PTR CALLBACK
|
||||
powershemesProc(
|
||||
HWND hwndDlg,
|
||||
UINT uMsg,
|
||||
WPARAM wParam,
|
||||
LPARAM lParam
|
||||
)
|
||||
{
|
||||
switch(uMsg)
|
||||
{
|
||||
case WM_INITDIALOG:
|
||||
hPos = hwndDlg;
|
||||
hwndDialog = hwndDlg;
|
||||
if (!Pos_InitData())
|
||||
{
|
||||
//TODO
|
||||
// initialization failed
|
||||
// handle error
|
||||
MessageBox(hwndDlg,_T("Pos_InitData failed\n"), NULL, MB_OK);
|
||||
|
||||
}
|
||||
if (!CreateEnergyList(GetDlgItem(hwndDlg, IDC_ENERGYLIST)))
|
||||
{
|
||||
//TODO
|
||||
// initialization failed
|
||||
// handle error
|
||||
MessageBox(hwndDlg,_T("CreateEnergyList failed\n"), NULL, MB_OK);
|
||||
}
|
||||
return TRUE;
|
||||
case WM_COMMAND:
|
||||
switch(LOWORD(wParam))
|
||||
{
|
||||
case IDC_ENERGYLIST:
|
||||
if (HIWORD(wParam) == CBN_SELCHANGE)
|
||||
{
|
||||
LoadConfig(hwndDlg);
|
||||
PropSheet_Changed(GetParent(hwndDlg), hwndDlg);
|
||||
}
|
||||
break;
|
||||
case IDC_DELETE_BTN:
|
||||
{
|
||||
DelScheme(hwndDlg);
|
||||
}
|
||||
break;
|
||||
case IDC_SAVEAS_BTN:
|
||||
{
|
||||
|
||||
}
|
||||
break;
|
||||
case IDC_MONITORACLIST:
|
||||
case IDC_MONITORDCLIST:
|
||||
case IDC_DISKACLIST:
|
||||
case IDC_DISKDCLIST:
|
||||
case IDC_STANDBYACLIST:
|
||||
case IDC_STANDBYDCLIST:
|
||||
case IDC_HYBERNATEACLIST:
|
||||
case IDC_HYBERNATEDCLIST:
|
||||
if (HIWORD(wParam) == CBN_SELCHANGE)
|
||||
{
|
||||
PropSheet_Changed(GetParent(hwndDlg), hwndDlg);
|
||||
}
|
||||
break;
|
||||
}
|
||||
break;
|
||||
case WM_NOTIFY:
|
||||
{
|
||||
LPNMHDR lpnm = (LPNMHDR)lParam;
|
||||
if (lpnm->code == (UINT)PSN_APPLY)
|
||||
{
|
||||
Pos_SaveData(hwndDlg);
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
break;
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
BOOLEAN Pos_InitData()
|
||||
BOOLEAN
|
||||
Pos_InitData(VOID)
|
||||
{
|
||||
SYSTEM_POWER_CAPABILITIES spc;
|
||||
/*
|
||||
|
@ -271,185 +148,9 @@ BOOLEAN Pos_InitData()
|
|||
return TRUE;
|
||||
}
|
||||
|
||||
BOOLEAN CALLBACK callback_EnumPwrScheme(UINT uiIndex, DWORD dwName, LPTSTR sName, DWORD dwDesc,
|
||||
LPWSTR sDesc, PPOWER_POLICY pp,LPARAM lParam )
|
||||
{
|
||||
int index;
|
||||
|
||||
UNREFERENCED_PARAMETER(lParam);
|
||||
UNREFERENCED_PARAMETER(sDesc);
|
||||
UNREFERENCED_PARAMETER(dwDesc);
|
||||
UNREFERENCED_PARAMETER(dwName);
|
||||
|
||||
if (ValidatePowerPolicies(0,pp))
|
||||
{
|
||||
if (guiIndex >= MAX_POWER_POLICY)
|
||||
{
|
||||
//FIXME
|
||||
//implement store power policy dynamically
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
|
||||
memcpy(&gPP[guiIndex], pp, sizeof(POWER_POLICY));
|
||||
guiIndex++;
|
||||
|
||||
index = (int) SendMessage(hList,
|
||||
CB_ADDSTRING,
|
||||
0,
|
||||
(LPARAM)sName);
|
||||
if (index == CB_ERR)
|
||||
return FALSE;
|
||||
|
||||
SendMessage(hList,
|
||||
CB_SETITEMDATA,
|
||||
index,
|
||||
(LPARAM)uiIndex);
|
||||
|
||||
if (aps == uiIndex)
|
||||
{
|
||||
SendMessage(hList,
|
||||
CB_SELECTSTRING,
|
||||
TRUE,
|
||||
(LPARAM)sName);
|
||||
LoadConfig(GetParent(hList));
|
||||
}
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
BOOLEAN CreateEnergyList(HWND hwnd)
|
||||
{
|
||||
BOOLEAN retval;
|
||||
POWER_POLICY pp;
|
||||
SYSTEM_POWER_CAPABILITIES spc;
|
||||
|
||||
hList = hwnd;
|
||||
|
||||
if (!GetActivePwrScheme(&aps))
|
||||
return FALSE;
|
||||
|
||||
if (!ReadGlobalPwrPolicy(&gGPP))
|
||||
return FALSE;
|
||||
|
||||
if (!ReadPwrScheme(aps,&pp))
|
||||
return FALSE;
|
||||
|
||||
if (!ValidatePowerPolicies(&gGPP,0))
|
||||
return FALSE;
|
||||
|
||||
/*
|
||||
if (!SetActivePwrScheme(aps,&gGPP,&pp))
|
||||
return FALSE;
|
||||
*/
|
||||
|
||||
if (!GetPwrCapabilities(&spc))
|
||||
return FALSE;
|
||||
|
||||
if (CanUserWritePwrScheme())
|
||||
{
|
||||
//TODO
|
||||
// enable write / delete powerscheme button
|
||||
}
|
||||
|
||||
Pos_InitPage(GetParent(hwnd));
|
||||
|
||||
if (!GetActivePwrScheme(&aps))
|
||||
return FALSE;
|
||||
|
||||
retval = EnumPwrSchemes(callback_EnumPwrScheme, aps);
|
||||
|
||||
if(SendMessage(hwnd, CB_GETCOUNT, 0, 0) > 0)
|
||||
{
|
||||
EnableWindow(GetDlgItem(hwndDialog, IDC_DELETE_BTN),TRUE);
|
||||
EnableWindow(GetDlgItem(hwndDialog, IDC_SAVEAS_BTN),TRUE);
|
||||
}
|
||||
|
||||
return retval;
|
||||
}
|
||||
|
||||
void Pos_InitPage(HWND hwndDlg)
|
||||
{
|
||||
int ifrom=0,i=0,imin=0;
|
||||
HWND hwnd = NULL;
|
||||
TCHAR szName[MAX_PATH];
|
||||
LRESULT index;
|
||||
|
||||
for(i=1;i<9;i++)
|
||||
{
|
||||
switch(i)
|
||||
{
|
||||
case 1:
|
||||
hwnd=GetDlgItem(hwndDlg, IDC_MONITORACLIST);
|
||||
imin=IDS_TIMEOUT1;
|
||||
break;
|
||||
case 2:
|
||||
hwnd=GetDlgItem(hwndDlg, IDC_STANDBYACLIST);
|
||||
imin=IDS_TIMEOUT1;
|
||||
break;
|
||||
case 3:
|
||||
hwnd=GetDlgItem(hwndDlg, IDC_DISKACLIST);
|
||||
imin=IDS_TIMEOUT3;
|
||||
break;
|
||||
case 4:
|
||||
hwnd=GetDlgItem(hwndDlg, IDC_HYBERNATEACLIST);
|
||||
imin=IDS_TIMEOUT3;
|
||||
break;
|
||||
case 5:
|
||||
hwnd=GetDlgItem(hwndDlg, IDC_MONITORDCLIST);
|
||||
imin=IDS_TIMEOUT1;
|
||||
break;
|
||||
case 6:
|
||||
hwnd=GetDlgItem(hwndDlg, IDC_STANDBYDCLIST);
|
||||
imin=IDS_TIMEOUT1;
|
||||
break;
|
||||
case 7:
|
||||
hwnd=GetDlgItem(hwndDlg, IDC_DISKDCLIST);
|
||||
imin=IDS_TIMEOUT3;
|
||||
break;
|
||||
case 8:
|
||||
hwnd=GetDlgItem(hwndDlg, IDC_HYBERNATEDCLIST);
|
||||
imin=IDS_TIMEOUT3;
|
||||
break;
|
||||
default:
|
||||
return;
|
||||
}
|
||||
for (ifrom=imin;ifrom<(IDS_TIMEOUT15+1);ifrom++)
|
||||
{
|
||||
if (LoadString(hApplet, ifrom, szName, MAX_PATH))
|
||||
{
|
||||
index = SendMessage(hwnd,
|
||||
CB_ADDSTRING,
|
||||
0,
|
||||
(LPARAM)szName);
|
||||
|
||||
if (index == CB_ERR)
|
||||
return;
|
||||
|
||||
SendMessage(hwnd,
|
||||
CB_SETITEMDATA,
|
||||
index,
|
||||
(LPARAM)Sec[ifrom-IDS_TIMEOUT16]);
|
||||
}
|
||||
}
|
||||
if (LoadString(hApplet, IDS_TIMEOUT16, szName, MAX_PATH))
|
||||
{
|
||||
index = SendMessage(hwnd,
|
||||
CB_ADDSTRING,
|
||||
0,
|
||||
(LPARAM)szName);
|
||||
if (index == CB_ERR)
|
||||
return;
|
||||
|
||||
SendMessage(hwnd,
|
||||
CB_SETITEMDATA,
|
||||
index,
|
||||
(LPARAM)Sec[0]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void LoadConfig(HWND hwndDlg)
|
||||
static VOID
|
||||
LoadConfig(HWND hwndDlg)
|
||||
{
|
||||
INT i=0, iCurSel=0;
|
||||
UINT uiIndex;
|
||||
|
@ -539,10 +240,143 @@ void LoadConfig(HWND hwndDlg)
|
|||
(LPARAM)0);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
void Pos_SaveData(HWND hwndDlg)
|
||||
|
||||
BOOLEAN CALLBACK
|
||||
callback_EnumPwrScheme(UINT uiIndex, DWORD dwName, LPTSTR sName, DWORD dwDesc,
|
||||
LPWSTR sDesc, PPOWER_POLICY pp,LPARAM lParam)
|
||||
{
|
||||
int index;
|
||||
|
||||
UNREFERENCED_PARAMETER(lParam);
|
||||
UNREFERENCED_PARAMETER(sDesc);
|
||||
UNREFERENCED_PARAMETER(dwDesc);
|
||||
UNREFERENCED_PARAMETER(dwName);
|
||||
|
||||
if (ValidatePowerPolicies(0,pp))
|
||||
{
|
||||
if (guiIndex >= MAX_POWER_POLICY)
|
||||
{
|
||||
//FIXME
|
||||
//implement store power policy dynamically
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
|
||||
memcpy(&gPP[guiIndex], pp, sizeof(POWER_POLICY));
|
||||
guiIndex++;
|
||||
|
||||
index = (int) SendMessage(hList,
|
||||
CB_ADDSTRING,
|
||||
0,
|
||||
(LPARAM)sName);
|
||||
if (index == CB_ERR)
|
||||
return FALSE;
|
||||
|
||||
SendMessage(hList,
|
||||
CB_SETITEMDATA,
|
||||
index,
|
||||
(LPARAM)uiIndex);
|
||||
|
||||
if (aps == uiIndex)
|
||||
{
|
||||
SendMessage(hList,
|
||||
CB_SELECTSTRING,
|
||||
TRUE,
|
||||
(LPARAM)sName);
|
||||
LoadConfig(GetParent(hList));
|
||||
}
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
static VOID
|
||||
Pos_InitPage(HWND hwndDlg)
|
||||
{
|
||||
int ifrom=0,i=0,imin=0;
|
||||
HWND hwnd = NULL;
|
||||
TCHAR szName[MAX_PATH];
|
||||
LRESULT index;
|
||||
|
||||
for(i=1;i<9;i++)
|
||||
{
|
||||
switch(i)
|
||||
{
|
||||
case 1:
|
||||
hwnd=GetDlgItem(hwndDlg, IDC_MONITORACLIST);
|
||||
imin=IDS_TIMEOUT1;
|
||||
break;
|
||||
case 2:
|
||||
hwnd=GetDlgItem(hwndDlg, IDC_STANDBYACLIST);
|
||||
imin=IDS_TIMEOUT1;
|
||||
break;
|
||||
case 3:
|
||||
hwnd=GetDlgItem(hwndDlg, IDC_DISKACLIST);
|
||||
imin=IDS_TIMEOUT3;
|
||||
break;
|
||||
case 4:
|
||||
hwnd=GetDlgItem(hwndDlg, IDC_HYBERNATEACLIST);
|
||||
imin=IDS_TIMEOUT3;
|
||||
break;
|
||||
case 5:
|
||||
hwnd=GetDlgItem(hwndDlg, IDC_MONITORDCLIST);
|
||||
imin=IDS_TIMEOUT1;
|
||||
break;
|
||||
case 6:
|
||||
hwnd=GetDlgItem(hwndDlg, IDC_STANDBYDCLIST);
|
||||
imin=IDS_TIMEOUT1;
|
||||
break;
|
||||
case 7:
|
||||
hwnd=GetDlgItem(hwndDlg, IDC_DISKDCLIST);
|
||||
imin=IDS_TIMEOUT3;
|
||||
break;
|
||||
case 8:
|
||||
hwnd=GetDlgItem(hwndDlg, IDC_HYBERNATEDCLIST);
|
||||
imin=IDS_TIMEOUT3;
|
||||
break;
|
||||
default:
|
||||
return;
|
||||
}
|
||||
for (ifrom=imin;ifrom<(IDS_TIMEOUT15+1);ifrom++)
|
||||
{
|
||||
if (LoadString(hApplet, ifrom, szName, MAX_PATH))
|
||||
{
|
||||
index = SendMessage(hwnd,
|
||||
CB_ADDSTRING,
|
||||
0,
|
||||
(LPARAM)szName);
|
||||
|
||||
if (index == CB_ERR)
|
||||
return;
|
||||
|
||||
SendMessage(hwnd,
|
||||
CB_SETITEMDATA,
|
||||
index,
|
||||
(LPARAM)Sec[ifrom-IDS_TIMEOUT16]);
|
||||
}
|
||||
}
|
||||
if (LoadString(hApplet, IDS_TIMEOUT16, szName, MAX_PATH))
|
||||
{
|
||||
index = SendMessage(hwnd,
|
||||
CB_ADDSTRING,
|
||||
0,
|
||||
(LPARAM)szName);
|
||||
if (index == CB_ERR)
|
||||
return;
|
||||
|
||||
SendMessage(hwnd,
|
||||
CB_SETITEMDATA,
|
||||
index,
|
||||
(LPARAM)Sec[0]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
static VOID
|
||||
Pos_SaveData(HWND hwndDlg)
|
||||
{
|
||||
INT iCurSel=0,tmp=0;
|
||||
|
||||
|
@ -621,3 +455,174 @@ void Pos_SaveData(HWND hwndDlg)
|
|||
SetActivePwrScheme(iCurSel,NULL,&gPP[iCurSel]);
|
||||
LoadConfig(hwndDlg);
|
||||
}
|
||||
|
||||
|
||||
static BOOLEAN
|
||||
DelScheme(HWND hwnd)
|
||||
{
|
||||
INT iCurSel;
|
||||
HWND hList;
|
||||
TCHAR szBuf[1024], szBufT[1024];
|
||||
UINT DelScheme;
|
||||
|
||||
hList = GetDlgItem(hwnd, IDC_ENERGYLIST);
|
||||
|
||||
iCurSel = SendMessage(hList, CB_GETCURSEL, 0, 0);
|
||||
if (iCurSel == CB_ERR) return FALSE;
|
||||
|
||||
SendMessage(hList, CB_SETCURSEL, iCurSel, 0);
|
||||
|
||||
DelScheme = SendMessage(hList, CB_GETITEMDATA, (WPARAM)iCurSel, 0);
|
||||
if (DelScheme == (UINT)CB_ERR) return FALSE;
|
||||
|
||||
LoadString(hApplet, IDS_DEL_SCHEME_TITLE, szBufT, sizeof(szBufT) / sizeof(TCHAR));
|
||||
LoadString(hApplet, IDS_DEL_SCHEME, szBuf, sizeof(szBuf) / sizeof(TCHAR));
|
||||
|
||||
if (MessageBox(hwnd, (LPCTSTR)szBuf, (LPCTSTR)szBufT, MB_OKCANCEL | MB_ICONQUESTION) == IDOK)
|
||||
{
|
||||
UINT Current;
|
||||
|
||||
if (GetActivePwrScheme(&Current))
|
||||
{
|
||||
SendMessage(hList, CB_SETCURSEL, (WPARAM)0, 0);
|
||||
SendMessage(hList, CB_DELETESTRING, (WPARAM)iCurSel, 0);
|
||||
if (Current == DelScheme) Pos_SaveData(hwnd);
|
||||
}
|
||||
|
||||
if (DeletePwrScheme(DelScheme) != 0) return TRUE;
|
||||
}
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
|
||||
static BOOLEAN
|
||||
CreateEnergyList(HWND hwnd)
|
||||
{
|
||||
BOOLEAN retval;
|
||||
POWER_POLICY pp;
|
||||
SYSTEM_POWER_CAPABILITIES spc;
|
||||
|
||||
hList = hwnd;
|
||||
|
||||
if (!GetActivePwrScheme(&aps))
|
||||
return FALSE;
|
||||
|
||||
if (!ReadGlobalPwrPolicy(&gGPP))
|
||||
return FALSE;
|
||||
|
||||
if (!ReadPwrScheme(aps,&pp))
|
||||
return FALSE;
|
||||
|
||||
if (!ValidatePowerPolicies(&gGPP,0))
|
||||
return FALSE;
|
||||
|
||||
/*
|
||||
if (!SetActivePwrScheme(aps,&gGPP,&pp))
|
||||
return FALSE;
|
||||
*/
|
||||
|
||||
if (!GetPwrCapabilities(&spc))
|
||||
return FALSE;
|
||||
|
||||
if (CanUserWritePwrScheme())
|
||||
{
|
||||
//TODO
|
||||
// enable write / delete powerscheme button
|
||||
}
|
||||
|
||||
Pos_InitPage(GetParent(hwnd));
|
||||
|
||||
if (!GetActivePwrScheme(&aps))
|
||||
return FALSE;
|
||||
|
||||
retval = EnumPwrSchemes(callback_EnumPwrScheme, aps);
|
||||
|
||||
if(SendMessage(hwnd, CB_GETCOUNT, 0, 0) > 0)
|
||||
{
|
||||
EnableWindow(GetDlgItem(hwndDialog, IDC_DELETE_BTN),TRUE);
|
||||
EnableWindow(GetDlgItem(hwndDialog, IDC_SAVEAS_BTN),TRUE);
|
||||
}
|
||||
|
||||
return retval;
|
||||
}
|
||||
|
||||
|
||||
/* Property page dialog callback */
|
||||
INT_PTR CALLBACK
|
||||
PowerSchemesDlgProc(
|
||||
HWND hwndDlg,
|
||||
UINT uMsg,
|
||||
WPARAM wParam,
|
||||
LPARAM lParam
|
||||
)
|
||||
{
|
||||
switch(uMsg)
|
||||
{
|
||||
case WM_INITDIALOG:
|
||||
hPos = hwndDlg;
|
||||
hwndDialog = hwndDlg;
|
||||
if (!Pos_InitData())
|
||||
{
|
||||
//TODO
|
||||
// initialization failed
|
||||
// handle error
|
||||
MessageBox(hwndDlg,_T("Pos_InitData failed\n"), NULL, MB_OK);
|
||||
|
||||
}
|
||||
if (!CreateEnergyList(GetDlgItem(hwndDlg, IDC_ENERGYLIST)))
|
||||
{
|
||||
//TODO
|
||||
// initialization failed
|
||||
// handle error
|
||||
MessageBox(hwndDlg,_T("CreateEnergyList failed\n"), NULL, MB_OK);
|
||||
}
|
||||
return TRUE;
|
||||
case WM_COMMAND:
|
||||
switch(LOWORD(wParam))
|
||||
{
|
||||
case IDC_ENERGYLIST:
|
||||
if (HIWORD(wParam) == CBN_SELCHANGE)
|
||||
{
|
||||
LoadConfig(hwndDlg);
|
||||
PropSheet_Changed(GetParent(hwndDlg), hwndDlg);
|
||||
}
|
||||
break;
|
||||
case IDC_DELETE_BTN:
|
||||
{
|
||||
DelScheme(hwndDlg);
|
||||
}
|
||||
break;
|
||||
case IDC_SAVEAS_BTN:
|
||||
{
|
||||
|
||||
}
|
||||
break;
|
||||
case IDC_MONITORACLIST:
|
||||
case IDC_MONITORDCLIST:
|
||||
case IDC_DISKACLIST:
|
||||
case IDC_DISKDCLIST:
|
||||
case IDC_STANDBYACLIST:
|
||||
case IDC_STANDBYDCLIST:
|
||||
case IDC_HYBERNATEACLIST:
|
||||
case IDC_HYBERNATEDCLIST:
|
||||
if (HIWORD(wParam) == CBN_SELCHANGE)
|
||||
{
|
||||
PropSheet_Changed(GetParent(hwndDlg), hwndDlg);
|
||||
}
|
||||
break;
|
||||
}
|
||||
break;
|
||||
case WM_NOTIFY:
|
||||
{
|
||||
LPNMHDR lpnm = (LPNMHDR)lParam;
|
||||
if (lpnm->code == (UINT)PSN_APPLY)
|
||||
{
|
||||
Pos_SaveData(hwndDlg);
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
break;
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue