IClip.h 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. #pragma once
  2. //Contains the actual data of a clip format
  3. // Type is the type of clipboard format
  4. // Data is a HGLOBAL object pointing to the clipboard format data
  5. class IClipFormat
  6. {
  7. public:
  8. virtual CLIPFORMAT Type() = 0;
  9. virtual HGLOBAL Data() = 0;
  10. virtual bool AutoDeleteData() = 0;
  11. virtual void Type(CLIPFORMAT type) = 0;
  12. virtual void Data(HGLOBAL data) = 0;
  13. virtual void AutoDeleteData(bool autoDelete) = 0;
  14. };
  15. //Contains a list of IClipFormats
  16. //This is a list of all data associated with a clip
  17. class IClipFormats
  18. {
  19. public:
  20. virtual int Size() = 0;
  21. virtual IClipFormat *GetAt(int nPos) = 0;
  22. virtual void DeleteAt(int nPos) = 0;
  23. virtual void DeleteAll() = 0;
  24. virtual int AddNew(CLIPFORMAT type, HGLOBAL data) = 0;
  25. virtual IClipFormat *FindFormatEx(CLIPFORMAT type) = 0;
  26. };
  27. class IClip
  28. {
  29. public:
  30. virtual CString Description() = 0;
  31. virtual void Description(CString csValue) = 0;
  32. virtual CTime PasteTime() = 0;
  33. virtual int ID() = 0;
  34. virtual int Parent() = 0;
  35. virtual void Parent(int nParent) = 0;
  36. virtual int DontAutoDelete() = 0;
  37. virtual void DontAutoDelete(int Dont) = 0;
  38. virtual CString QuickPaste() = 0;
  39. virtual void QuickPaste(CString csValue) = 0;
  40. virtual IClipFormats *Clips() = 0;
  41. };