Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

41 lines
1.1 KiB

  1. #pragma once
  2. #include "netcfgx.h"
  3. #include "global.h"
  4. #include "param.h"
  5. class CAdvancedParams
  6. {
  7. public:
  8. CAdvancedParams ();
  9. ~CAdvancedParams ();
  10. HRESULT HrInit(HDEVINFO hdi, PSP_DEVINFO_DATA pdeid);
  11. BOOL FValidateAllParams(BOOL fDisplayUI, HWND hwndParent);
  12. BOOL FSave();
  13. VOID UseAnswerFile(const WCHAR *, const WCHAR *);
  14. protected:
  15. HKEY m_hkRoot; // instance root
  16. CParam * m_pparam; // current param
  17. int m_nCurSel; // current item
  18. CValue m_vCurrent; // control param value
  19. BOOL m_fInit;
  20. HDEVINFO m_hdi;
  21. PSP_DEVINFO_DATA m_pdeid;
  22. vector<CParam*> m_listpParam;
  23. // protected methods
  24. BOOL FList(WORD codeNotify);
  25. VOID FillParamList(HKEY hkRoot, HKEY hk);
  26. VOID SetParamRange();
  27. int EnumvalToItem(const PWSTR psz);
  28. int ItemToEnumval(int iItem, PWSTR psz, UINT cb);
  29. VOID BeginEdit();
  30. BOOL FValidateCurrParam();
  31. BOOL FValidateSingleParam(CParam * pparam, BOOL fDisplayUI,
  32. HWND hwndParent);
  33. BOOL FSetParamValue(const WCHAR * szName, const WCHAR * const szValue);
  34. };