Leaked source code of windows server 2003
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.

57 lines
1.8 KiB

  1. //
  2. // SnapIn class
  3. //
  4. class CSnapIn:
  5. public IComponent,
  6. public IExtendContextMenu
  7. {
  8. protected:
  9. ULONG m_cRef;
  10. LPCONSOLE m_pConsole; // Console's IFrame interface
  11. CComponentData *m_pcd;
  12. LPRESULTDATA m_pResult; // Result pane's interface
  13. LPHEADERCTRL m_pHeader; // Result pane's header control interface
  14. LPCONSOLEVERB m_pConsoleVerb; // pointer the console verb
  15. LPDISPLAYHELP m_pDisplayHelp; // IDisplayHelp interface
  16. WCHAR m_column1[40]; // Text for column 1
  17. INT m_nColumnSize; // Size of column 1
  18. LONG m_lViewMode; // View mode
  19. BOOL m_bExpand; // Expand root nodes
  20. public:
  21. CSnapIn(CComponentData *pComponent);
  22. ~CSnapIn();
  23. //
  24. // IUnknown methods
  25. //
  26. STDMETHODIMP QueryInterface(REFIID, LPVOID FAR *);
  27. STDMETHODIMP_(ULONG) AddRef();
  28. STDMETHODIMP_(ULONG) Release();
  29. //
  30. // Implemented IComponent methods
  31. //
  32. STDMETHODIMP Initialize(LPCONSOLE);
  33. STDMETHODIMP Destroy(MMC_COOKIE);
  34. STDMETHODIMP Notify(LPDATAOBJECT, MMC_NOTIFY_TYPE, LPARAM, LPARAM);
  35. STDMETHODIMP QueryDataObject(MMC_COOKIE, DATA_OBJECT_TYPES, LPDATAOBJECT *);
  36. STDMETHODIMP GetDisplayInfo(LPRESULTDATAITEM);
  37. STDMETHODIMP GetResultViewType(MMC_COOKIE, LPOLESTR*, long*);
  38. STDMETHODIMP CompareObjects(LPDATAOBJECT, LPDATAOBJECT);
  39. //
  40. // Implemented IExtendContextMenu methods
  41. //
  42. STDMETHODIMP AddMenuItems(LPDATAOBJECT piDataObject, LPCONTEXTMENUCALLBACK pCallback,
  43. LONG *pInsertionAllowed);
  44. STDMETHODIMP Command(LONG lCommandID, LPDATAOBJECT piDataObject);
  45. };