uidragimage.h
上传用户:yatsl7111
上传日期:2007-01-08
资源大小:1433k
文件大小:3k
源码类别:

图形图象

开发平台:

Visual C++

  1. //*******************************************************************************
  2. // COPYRIGHT NOTES
  3. // ---------------
  4. // You may use this source code, compile or redistribute it as part of your application 
  5. // for free. You cannot redistribute it as a part of a software development 
  6. // library without the agreement of the author. If the sources are 
  7. // distributed along with the application, you should leave the original 
  8. // copyright notes in the source code without any changes.
  9. // This code can be used WITHOUT ANY WARRANTIES at your own risk.
  10. // 
  11. // For the latest updates to this code, check this site:
  12. // http://www.masmex.com 
  13. // after Sept 2000
  14. // 
  15. // Copyright(C) 2000 Philip Oldaker <email: philip@masmex.com>
  16. //*******************************************************************************
  17. #if !defined(AFX_WIDGBASE_H__877329CA_C22E_11D0_B2D8_444553540000__INCLUDED_)
  18. #define AFX_WIDGBASE_H__877329CA_C22E_11D0_B2D8_444553540000__INCLUDED_
  19. #if _MSC_VER >= 1000
  20. #pragma once
  21. #endif // _MSC_VER >= 1000
  22. /////////////////////////////////////////////////////////////////////////////
  23. // CDragDropImage command target
  24. class CDragDropItem : public CObject
  25. {
  26. public:
  27. CDragDropItem(LPCRECT prcItem,LPCRECT prcIcon);
  28.     CRect m_rcItem;
  29.     CRect m_rcIcon;
  30. };
  31. inline CDragDropItem::CDragDropItem(LPCRECT prcItem,LPCRECT prcIcon) : m_rcItem(prcItem),m_rcIcon(prcIcon)
  32. {
  33. }
  34. struct DD_ImageData 
  35. {
  36. CRect m_rcItem;
  37. CRect m_rcIcon;
  38. CPoint m_ptDrag;
  39. };
  40. class CDragDropImage : public CCmdTarget
  41. {
  42.     DECLARE_DYNCREATE(CDragDropImage)
  43. protected:
  44. CDragDropImage();// protected constructor used by dynamic creation
  45. public:
  46.     CDragDropImage(int nSelected,int nType);           
  47.     virtual ~CDragDropImage();
  48. // Attributes
  49. public:
  50. // Operations
  51. public:
  52.     void AddItem(LPCRECT prcItem,LPCRECT prcIcon);           
  53.     virtual void DrawDragImage (CDC *pDC,POINT point,POINT ActionPoint);
  54. // Overrides
  55.     // ClassWizard generated virtual function overrides
  56.     //{{AFX_VIRTUAL(CDragDropImage)
  57.     //}}AFX_VIRTUAL
  58. // Implementation
  59. protected:
  60. void DrawItemImage(CDC *pDC, POINT point,const CRect &rcItem,const CRect &rcIcon);
  61. int m_nSelected;
  62. int m_nType;
  63. CTypedPtrList<CObList,CDragDropItem*> m_itemList;
  64.     // Generated message map functions
  65.     //{{AFX_MSG(CDragDropImage)
  66.         // NOTE - the ClassWizard will add and remove member functions here.
  67.     //}}AFX_MSG
  68.     DECLARE_MESSAGE_MAP()
  69. };
  70. /////////////////////////////////////////////////////////////////////////////
  71. //{{AFX_INSERT_LOCATION}}
  72. // Microsoft Developer Studio will insert additional declarations immediately before the previous line.
  73. #endif // !defined(AFX_WIDGBASE_H__877329CA_C22E_11D0_B2D8_444553540000__INCLUDED_)