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.

68 lines
1.7 KiB

  1. //
  2. // Copyright 1997 - Microsoft
  3. //
  4. // DPGUIDQY.H - The duplicate GUID query form
  5. //
  6. #ifndef _DPGUIDQY_H_
  7. #define _DPGUIDQY_H_
  8. // QITable
  9. BEGIN_QITABLE( CRIQueryForm )
  10. DEFINE_QI( IID_IQueryForm, IQueryForm, 3 )
  11. END_QITABLE
  12. // Definitions
  13. LPVOID
  14. CRIQueryForm_CreateInstance( void );
  15. // CRIQueryForm
  16. class CRIQueryForm
  17. : public IQueryForm
  18. {
  19. private:
  20. // IUnknown
  21. ULONG _cRef;
  22. DECLARE_QITABLE( CRIQueryForm );
  23. HWND _hDlg;
  24. private: // methods
  25. CRIQueryForm( );
  26. ~CRIQueryForm( );
  27. HRESULT
  28. Init( void );
  29. // Property Sheet Functions
  30. static INT_PTR CALLBACK
  31. PropSheetDlgProc( HWND hDlg, UINT Msg, WPARAM wParam, LPARAM lParam );
  32. static HRESULT CALLBACK
  33. PropSheetPageProc( LPCQPAGE pQueryPage, HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam);
  34. static UINT CALLBACK
  35. PropSheetPageProc( HWND hwnd, UINT uMsg, LPPROPSHEETPAGE ppsp );
  36. HRESULT _InitDialog( HWND hDlg, LPARAM lParam );
  37. INT _OnCommand( WPARAM wParam, LPARAM lParam );
  38. INT _OnNotify( WPARAM wParam, LPARAM lParam );
  39. HRESULT _OnPSPCB_Create( );
  40. HRESULT _GetQueryParams( HWND hwnd, LPDSQUERYPARAMS* ppdsqp );
  41. public: // methods
  42. friend LPVOID CRIQueryForm_CreateInstance( void );
  43. // IUnknown methods
  44. STDMETHOD(QueryInterface)(REFIID riid, LPVOID * ppvObj);
  45. STDMETHOD_(ULONG,AddRef)();
  46. STDMETHOD_(ULONG,Release)();
  47. // IQueryForm methods
  48. STDMETHOD(Initialize)(HKEY hkForm);
  49. STDMETHOD(AddForms)(LPCQADDFORMSPROC pAddFormsProc, LPARAM lParam);
  50. STDMETHOD(AddPages)(LPCQADDPAGESPROC pAddPagesProc, LPARAM lParam);
  51. };
  52. typedef CRIQueryForm * LPCRIQueryForm;
  53. #endif // _DPGUIDQY_H_