clipdata.h 2.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. //
  2. //////////////////////////////////////////////////////////////////////////////
  3. //
  4. // Copyright 2015 Autodesk, Inc. All rights reserved.
  5. //
  6. // Use of this software is subject to the terms of the Autodesk license
  7. // agreement provided at the time of installation or download, or which
  8. // otherwise accompanies this software in either electronic or hard copy form.
  9. //
  10. //////////////////////////////////////////////////////////////////////////////
  11. //
  12. // Name: ClipData.h
  13. //
  14. // Remarks: Supports Clipboard and Drag and Drop Geometry from AutoCAD
  15. //
  16. //////////////////////////////////////////////////////////////////////////////
  17. #ifndef _CLIPDATA_H
  18. #define _CLIPDATA_H
  19. #pragma pack (push, 8)
  20. #include "accoredefs.h"
  21. #include "AdAChar.h"
  22. enum eClipInfoFlags {
  23. kbDragGeometry = 0x01,
  24. };
  25. enum eXrefType {
  26. kXrefTypeAttach = 1,
  27. kXrefTypeOverlay = 2
  28. };
  29. enum eExpandedClipDataTypes {
  30. kDcPlotStyles = 1,
  31. kDcXrefs = 2,
  32. kDcLayouts = 3,
  33. kDcBlocks = 4,
  34. kDcLayers = 5,
  35. kDcDrawings = 6,
  36. kDcLinetypes = 7,
  37. kDcTextStyles = 8,
  38. kDcDimStyles = 9,
  39. kDcBlocksWithAttdef = 10,
  40. //#ifdef ADCHATCH
  41. kDcHatches = 11,
  42. //#endif
  43. kTpXrefs = 12,
  44. kTpImages = 13,
  45. kTpTable = 14,
  46. kDcTableStyles = 15,
  47. kDcMultileaderStyles = 16,
  48. kDcVisualStyles = 17,
  49. kDcSectionViewStyles = 18,
  50. kDcDetailViewStyles = 19,
  51. };
  52. const int nBlockFileSize = 260;
  53. const int nSignatureSize = 4;
  54. // Clipboard and drag and drop information stored in the format
  55. // CAcadDoc::m_cfPrivate ("AutoCAD.r15").
  56. //
  57. typedef struct tagClipboardInfo {
  58. ACHAR szTempFile[nBlockFileSize]; // block temp file name
  59. ACHAR szSourceFile[nBlockFileSize]; // file name of drawing from which selection was made
  60. ACHAR szSignature[nSignatureSize]; // szClipSignature
  61. int nFlags; // kbDragGeometry: dragging geometry from AutoCAD?
  62. AcGePoint3d dptInsert; // original world coordinate of insertion point
  63. RECT rectGDI; // GDI coord bounding rectangle of sset
  64. void* mpView; // Used to verify that this object was created in this view (HWND*)
  65. DWORD m_dwThreadId; // AutoCAD thread that created this DataObject
  66. int nLen; // Length of next segment of data, if any, starting with chData
  67. int nType; // Type of data, if any (eExpandedClipDataTypes)
  68. ACHAR chData[1]; // Start of data, if any.
  69. } ClipboardInfo;
  70. #define szClipSignature ACRX_T(/*MSG0*/"R15")
  71. ACCORE_PORT const ACHAR* acedClipFormatName();
  72. #pragma pack (pop)
  73. #endif