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.

80 lines
2.1 KiB

  1. //////////////////////////////////////////////////////////////////////////////
  2. /*++
  3. Copyright (C) Microsoft Corporation, 1998 - 1999
  4. Module Name:
  5. IASAttributeEditor.h
  6. Abstract:
  7. Declaration of the CIASAttributeEditor class.
  8. This class is the base C++ implementation of IIASAttributeEditor interface
  9. methods common all our Attribute Editor COM objects.
  10. See IASAttributeEditor.cpp for implementation.
  11. Revision History:
  12. mmaguire 06/25/98 - created
  13. --*/
  14. //////////////////////////////////////////////////////////////////////////////
  15. #if !defined(_ATTRIBUTE_EDITOR_H_)
  16. #define _ATTRIBUTE_EDITOR_H_
  17. //////////////////////////////////////////////////////////////////////////////
  18. // BEGIN INCLUDES
  19. //
  20. // where we can find what this class derives from:
  21. //
  22. //
  23. // where we can find what this class has or uses:
  24. //
  25. #include "iasdebug.h"
  26. //
  27. // END INCLUDES
  28. //////////////////////////////////////////////////////////////////////////////
  29. /////////////////////////////////////////////////////////////////////////////
  30. // CIASAttributeEditor
  31. class ATL_NO_VTABLE CIASAttributeEditor :
  32. public IDispatchImpl<IIASAttributeEditor, &IID_IIASAttributeEditor, &LIBID_NAPMMCLib>
  33. {
  34. public:
  35. CIASAttributeEditor()
  36. {
  37. m_pvarValue = NULL;
  38. }
  39. DECLARE_REGISTRY_RESOURCEID(IDR_NAPSNAPIN)
  40. // IIASAttributeEditor
  41. public:
  42. STDMETHOD(GetDisplayInfo)(/*[in]*/ IIASAttributeInfo *pIASAttributeInfo, /*[in]*/ VARIANT *pAttributeValue, /*[out]*/ BSTR *pVendorName, /*[out]*/ BSTR *pValueAsString, /*[in, out]*/ BSTR *pReserved);
  43. STDMETHOD(Edit)(/*[in]*/ IIASAttributeInfo *pIASAttributeInfo, /*[in]*/ VARIANT *pAttributeValue, /*[in, out]*/ BSTR *pReserved);
  44. protected:
  45. STDMETHOD(get_VendorName)(/*[out, retval]*/ BSTR *pVal);
  46. STDMETHOD(put_VendorName)(/*[in]*/ BSTR newVal);
  47. STDMETHOD(get_ValueAsString)(/*[out, retval]*/ BSTR *pVal);
  48. STDMETHOD(put_ValueAsString)(/*[in]*/ BSTR newVal);
  49. STDMETHOD(SetAttributeValue)(VARIANT *pValue);
  50. STDMETHOD(SetAttributeSchema)(IIASAttributeInfo *pIASAttributeInfo);
  51. STDMETHOD(ShowEditor)( /*[in, out]*/ BSTR *pReserved );
  52. protected:
  53. CComPtr<IIASAttributeInfo> m_spIASAttributeInfo;
  54. VARIANT *m_pvarValue;
  55. };
  56. #endif // _ATTRIBUTE_EDITOR_H_