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.

37 lines
1.1 KiB

  1. #ifndef _MBDROP_H_
  2. #define _MBDROP_H_
  3. // The CMenuBand class handles all menu behavior for bands.
  4. class CMenuBandDropTarget : public IDropTarget
  5. {
  6. public:
  7. // *** IUnknown ***
  8. virtual STDMETHODIMP_(ULONG) AddRef(void);
  9. virtual STDMETHODIMP_(ULONG) Release(void);
  10. virtual STDMETHODIMP QueryInterface(REFIID riid, LPVOID * ppvObj);
  11. // *** IDropTarget methods ***
  12. virtual STDMETHODIMP DragEnter(IDataObject *dtobj, DWORD grfKeyState, POINTL pt, DWORD *pdwEffect);
  13. virtual STDMETHODIMP DragOver(DWORD grfKeyState, POINTL pt, DWORD *pdwEffect);
  14. virtual STDMETHODIMP DragLeave(void);
  15. virtual STDMETHODIMP Drop(IDataObject *pdtobj, DWORD grfKeyState, POINTL pt, DWORD *pdwEffect);
  16. CMenuBandDropTarget(HWND hwnd, int idTarget, DWORD dwFlagsMBIF);
  17. protected:
  18. // Member variables
  19. int _cRef;
  20. HWND _hwndParent;
  21. IDropTarget *_pdrop; // hand on to the the favorites target
  22. int _iDropType; // Which format data is in.
  23. int _idTimer;
  24. int _idTarget; // ID of menu item we're hovering over
  25. DWORD _dwFlagsMBIF; // MBIF_*
  26. };
  27. #endif // _MBDROP_H_