COM / ActiveX SDK Documentation  2020SP3
OdaX2.idl
Go to the documentation of this file.
1 
2 // OdaX.idl : IDL source for OdaX.dll
3 //
4 
5 // This file will be processed by the MIDL tool to
6 // produce the type library (OdaX.tlb) and marshalling code.
7 
8 import "oaidl.idl";
9 import "ocidl.idl";
10 
11 #include "TDVersion.h"
12 #if _MSC_VER > 1310
13 
14 // Forward declare all types defined in ACAD2004 typelib
15 interface IAcadObject;
16 interface IAcadDatabase;
17 interface IAcadBlock;
18 interface IAcadModelSpace;
19 interface IAcadEntity;
20 interface IAcadAcCmColor;
21 interface IAcadHyperlinks;
22 interface IAcadHyperlink;
23 interface IAcad3DFace;
24 interface IAcadPolygonMesh;
25 interface IAcad3DPolyline;
26 interface IAcadArc;
27 interface IAcadAttribute;
28 interface IAcad3DSolid;
29 interface IAcadRegion;
30 interface IAcadCircle;
31 interface IAcadDimension;
32 interface IAcadDimAligned;
33 interface IAcadDimAngular;
34 interface IAcadDimDiametric;
35 interface IAcadDimRotated;
36 interface IAcadDimOrdinate;
37 interface IAcadDimRadial;
38 interface IAcadEllipse;
39 interface IAcadLeader;
40 interface IAcadMText;
41 interface IAcadPoint;
42 interface IAcadLWPolyline;
43 interface IAcadPolyline;
44 interface IAcadRay;
45 interface IAcadShape;
46 interface IAcadSolid;
47 interface IAcadSpline;
48 interface IAcadText;
49 interface IAcadTolerance;
50 interface IAcadTrace;
51 interface IAcadXline;
52 interface IAcadBlockReference;
53 interface IAcadHatch;
54 interface IAcadLine;
55 interface IAcadPlotConfiguration;
56 interface IAcadLayout;
57 interface IAcadMInsertBlock;
58 interface IAcadPolyfaceMesh;
59 interface IAcadMLine;
60 interface IAcadDim3PointAngular;
61 interface IAcadExternalReference;
62 interface IAcadPaperSpace;
63 interface IAcadPViewport;
64 interface IAcadBlocks;
65 interface IAcadGroups;
66 interface IAcadGroup;
67 interface IAcadDimStyles;
68 interface IAcadDimStyle;
69 interface IAcadLayers;
70 interface IAcadLayer;
71 interface IAcadLineTypes;
72 interface IAcadLineType;
73 interface IAcadDictionaries;
74 interface IAcadDictionary;
75 interface IAcadXRecord;
76 interface IAcadRegisteredApplications;
77 interface IAcadRegisteredApplication;
78 interface IAcadTextStyles;
79 interface IAcadTextStyle;
80 interface IAcadUCSs;
81 interface IAcadUCS;
82 interface IAcadViews;
83 interface IAcadView;
84 interface IAcadViewports;
85 interface IAcadViewport;
86 interface IAcadLayouts;
87 interface IAcadPlotConfigurations;
88 interface IAcadDatabasePreferences;
89 interface IAcadFileDependencies;
90 interface IAcadFileDependency;
91 interface IAcadSummaryInfo;
92 interface IAcadIdPair;
93 interface IAcadAttributeReference;
94 interface IAcadObjectEvents;
95 interface IAcadRasterImage;
96 //
97 
98 // Oda specific interfaces
99 interface IOdaLineType;
100 interface IOdaBlock;
101 interface IOdaMLineStyles;
102 interface IOdaMLineStyle;
103 interface IOdaRasterImage;
104 interface IOdaOle;
105 
106 // new interfaces appeared in acad 2005
107 interface IAcadSortentsTable;
108 interface IAcadTableStyle;
109 interface IAcadOle;
110 interface IAcadTable;
111 
112 // new interfaces added in acad 2006
113 interface IAcadDynamicBlockReferenceProperty;
114 interface IAcadDimRadialLarge;
115 interface IAcadDimArcLength;
116 
117 // new interfaces added in acad 2007
118 interface IAcadSection;
119 interface IAcadSectionSettings;
120 interface IAcadSectionTypeSettings;
121 interface IAcadSurface;
122 interface IAcadPlaneSurface;
123 interface IAcadExtrudedSurface;
124 interface IAcadRevolvedSurface;
125 interface IAcadSweptSurface;
126 interface IAcadLoftedSurface;
127 interface IAcadHelix;
128 interface IAcadSectionManager;
129 interface IAcadMaterials;
130 interface IAcadMaterial;
131 interface IAcadUnderlay;
132 
133 // new interfaces added in acad 2008
134 interface IAcadMLeader;
135 interface IAcadMLeaderStyle;
136 
137 // new interfaces added in acad 2010
138 interface IAcadSubEntity;
139 interface IAcadMLeaderLeader;
140 interface IAcadDwfUnderlay;
141 interface IAcadSubEntSolidFace;
142 interface IAcadSubEntSolidEdge;
143 interface IAcadSubEntSolidVertex;
144 //interface IAcadSubEntSolidNode
145 interface IAcadWipeout;
146 //interface IAcadSubDMesh;
147 //interface IAcadSubDMeshFace;
148 //interface IAcadSubDMeshEdge;
149 //interface IAcadSubDMeshVertex;
150 import "OdaX.idl";
151 [
152  odl,
153  uuid(62AE6596-74E9-4fc1-9F31-CB9567E550F9),
154  helpstring("TeighaX Interface of table object"),
155  dual,
156  oleautomation
157 ]
158 interface IAcadTable : IAcadEntity {
159  [id(0x00000001), propget, helpstring("Specifies or returns the name of the table style assigned to a table.")]
160  HRESULT StyleName([out, retval] BSTR* bstrName);
161  [id(0x00000001), propput, helpstring("Specifies or returns the name of the table style assigned to a table.")]
162  HRESULT StyleName([in] BSTR bstrName);
163  [id(0x00000002), propget, helpstring("Specifies or returns the number of rows in a table.")]
164  HRESULT Rows([out, retval] int* pRows);
165  [id(0x00000002), propput, helpstring("Specifies or returns the number of rows in a table.")]
166  HRESULT Rows([in] int pRows);
167  [id(0x00000003), propget, helpstring("Specifies or returns the number of columns in a table.")]
168  HRESULT Columns([out, retval] int* pColumns);
169  [id(0x00000003), propput, helpstring("Specifies or returns the number of columns in a table.")]
170  HRESULT Columns([in] int pColumns);
171  [id(0x00000004), propget, helpstring("Specifies or returns the position a table's title and row headings.")]
172  HRESULT FlowDirection([out, retval] AcTableDirection* pFlow);
173  [id(0x00000004), propput, helpstring("Specifies or returns the position a table's title and row headings.")]
174  HRESULT FlowDirection([in] AcTableDirection pFlow);
175  [id(0x00000005), propget, helpstring("Specifies or returns the width of a table.")]
176  HRESULT Width([out, retval] double* pWidth);
177  [id(0x00000005), propput, helpstring("Specifies or returns the width of a table.")]
178  HRESULT Width([in] double pWidth);
179  [id(0x00000006), propget, helpstring("Specifies or returns the height of a table.")]
180  HRESULT Height([out, retval] double* pHeight);
181  [id(0x00000006), propput, helpstring("Specifies or returns the height of a table.")]
182  HRESULT Height([in] double pHeight);
183  [id(0x00000007), propget, helpstring("Specifies or returns the distance between cell text and the top/bottom cell edge.")]
184  HRESULT VertCellMargin([out, retval] double* pGap);
185  [id(0x00000007), propput, helpstring("Specifies or returns the distance between cell text and the top/bottom cell edge.")]
186  HRESULT VertCellMargin([in] double pGap);
187  [id(0x00000008), propget, helpstring("Specifies or returns the distance between cell text and the left/right cell edge.")]
188  HRESULT HorzCellMargin([out, retval] double* pGap);
189  [id(0x00000008), propput, helpstring("Specifies or returns the distance between cell text and the left/right cell edge.")]
190  HRESULT HorzCellMargin([in] double pGap);
191  [id(0x00000009), propget, helpstring("Specifies or returns the x, y, and z coordinates of the table insertion point.")]
192  HRESULT InsertionPoint([out, retval] VARIANT* insPoint);
193  [id(0x00000009), propput, helpstring("Specifies or returns the x, y, and z coordinates of the table insertion point.")]
194  HRESULT InsertionPoint([in] VARIANT insPoint);
195  [id(0x0000000a), helpstring("Returns the width of a column in a table.")]
196  HRESULT GetColumnWidth(
197  [in] int col,
198  [out, retval] double* pWidth);
199  [id(0x0000000b), helpstring("Sets the width of a column in a table.")]
200  HRESULT SetColumnWidth(
201  [in] int col,
202  [in] double Width);
203  [id(0x0000000c), propput, helpstring("Sets the width of all columns in a table.")]
204  HRESULT ColumnWidth([in] double rhs);
205  [id(0x0000000d), helpstring("Returns the height of a row in a table.")]
206  HRESULT GetRowHeight(
207  [in] int row,
208  [out, retval] double* pHeight);
209  [id(0x0000000e), helpstring("Sets the height of a row in a table.")]
210  HRESULT SetRowHeight(
211  [in] int row,
212  [in] double Height);
213  [id(0x0000000f), propput, helpstring("Sets the height of all rows in a table.")]
214  HRESULT RowHeight([in] double rhs);
215  [id(0x0000001a), helpstring("Returns the minimum width of a column in a table.")]
216  HRESULT GetMinimumColumnWidth(
217  [in] int col,
218  [out, retval] double* pWidth);
219  [id(0x0000001b), helpstring("Returns the minimum height of a row in a table.")]
220  HRESULT GetMinimumRowHeight(
221  [in] int row,
222  [out, retval] double* pHeight);
223  [id(0x0000001c), propget, helpstring("Returns the minimum width of a table.")]
224  HRESULT MinimumTableWidth([out, retval] double* pWidth);
225  [id(0x0000001d), propget, helpstring("Returns the minimum height of a table.")]
226  HRESULT MinimumTableHeight([out, retval] double* pHeight);
227  [id(0x0000001e), propget, helpstring("Specifies or returns the x plane where a table is positioned.")]
228  HRESULT Direction([out, retval] VARIANT* DirectionVector);
229  [id(0x0000001e), propput, helpstring("Specifies or returns the x plane where a table is positioned.")]
230  HRESULT Direction([in] VARIANT DirectionVector);
231  [id(0x0000001f), propget, helpstring("Specifies or returns whether the title of a table is visible.")]
232  HRESULT TitleSuppressed([out, retval] VARIANT_BOOL* bValue);
233  [id(0x0000001f), propput, helpstring("Specifies or returns whether the title of a table is visible.")]
234  HRESULT TitleSuppressed([in] VARIANT_BOOL bValue);
235  [id(0x00000020), propget, helpstring("Specifies or returns whether row headings of a table are visible.")]
236  HRESULT HeaderSuppressed([out, retval] VARIANT_BOOL* bValue);
237  [id(0x00000020), propput, helpstring("Specifies or returns whether row headings of a table are visible.")]
238  HRESULT HeaderSuppressed([in] VARIANT_BOOL bValue);
239  [id(0x00000021), helpstring("Returns how the cells of a row type are aligned.")]
240  HRESULT GetAlignment(
241  [in] AcRowType rowType,
242  [out, retval] AcCellAlignment* pCellAlignment);
243  [id(0x00000022), helpstring("Specifies how the cells of a row type are aligned.")]
244  HRESULT SetAlignment(
245  [in] int rowTypes,
246  [in] AcCellAlignment cellAlignment);
247  [id(0x00000023), helpstring("Specifies or returns whether the row type of a table has a background color.")]
248  HRESULT GetBackgroundColorNone(
249  [in] AcRowType rowType,
250  [out, retval] VARIANT_BOOL* bValue);
251  [id(0x00000024), helpstring("Specifies or returns whether the row type of a table has a background color.")]
252  HRESULT SetBackgroundColorNone(
253  [in] int rowTypes,
254  [in] VARIANT_BOOL bValue);
255  [id(0x00000025), helpstring("Returns the background color value of a table's row type.")]
256  HRESULT GetBackgroundColor(
257  [in] AcRowType rowType,
258  [out, retval] IAcadAcCmColor** pColor);
259  [id(0x00000026), helpstring("Specifies the background color value of a table's row type.")]
260  HRESULT SetBackgroundColor(
261  [in] int rowTypes,
262  [in] IAcadAcCmColor* pColor);
263  [id(0x00000027), helpstring("Returns the color value of a table's row type.")]
264  HRESULT GetContentColor(
265  [in] AcRowType rowType,
266  [out, retval] IAcadAcCmColor** pColor);
267  [id(0x00000028), helpstring("Specifies the color value of a table's row type.")]
268  HRESULT SetContentColor(
269  [in] int rowTypes,
270  [in] IAcadAcCmColor* pColor);
271  [id(0x00000029), helpstring("Returns the name of the text style assigned to the row type of a table.")]
272  HRESULT GetTextStyle(
273  [in] AcRowType rowType,
274  [out, retval] BSTR* bstrName);
275  [id(0x0000002a), helpstring("Specifies the text style assigned to the row type of a table.")]
276  HRESULT SetTextStyle(
277  [in] int rowTypes,
278  [in] BSTR bstrName);
279  [id(0x0000002b), helpstring("Returns the text height of a table's row type.")]
280  HRESULT GetTextHeight(
281  [in] AcRowType rowType,
282  [out, retval] double* pTextHeight);
283  [id(0x0000002c), helpstring("Specifies the text height of a table's row type.")]
284  HRESULT SetTextHeight(
285  [in] int rowTypes,
286  [in] double TextHeight);
287  [id(0x0000002d), helpstring("Returns the grid lineweight value for a grid linetype and row type.")]
288  HRESULT GetGridLineWeight(
289  [in] AcGridLineType gridLineType,
290  [in] AcRowType rowType,
291  [out, retval] ACAD_LWEIGHT* Lineweight);
292  [id(0x0000002e), helpstring("Specifies the grid lineweight value for a grid linetype and row type.")]
293  HRESULT SetGridLineWeight(
294  [in] int gridLineTypes,
295  [in] int rowTypes,
296  [in] ACAD_LWEIGHT Lineweight);
297  [id(0x0000002f), helpstring("Returns the grid color value for a grid linetype and row type.")]
298  HRESULT GetGridColor(
299  [in] AcGridLineType gridLineType,
300  [in] AcRowType rowType,
301  [out, retval] IAcadAcCmColor** pColor);
302  [id(0x00000030), helpstring("Specifies the grid color value for a grid linetype and row type.")]
303  HRESULT SetGridColor(
304  [in] int gridLineTypes,
305  [in] int rowTypes,
306  [in] IAcadAcCmColor* pColor);
307  [id(0x00000031), helpstring("Returns the grid visibility value for a Returns the grid color value for a grid linetype and row type.")]
308  HRESULT GetGridVisibility(
309  [in] AcGridLineType gridLineType,
310  [in] AcRowType rowType,
311  [out, retval] VARIANT_BOOL* bValue);
312  [id(0x00000032), helpstring("Specifies the grid visibility value for a grid linetype and row type.")]
313  HRESULT SetGridVisibility(
314  [in] int gridLineTypes,
315  [in] int rowTypes,
316  [in] VARIANT_BOOL bValue);
317  [id(0x00000033), propget, helpstring("Returns the overrides of a table style.")]
318  HRESULT TableStyleOverrides([out, retval] VARIANT* pIntArray);
319  [id(0x00000034), helpstring("Removes the overrides of a table style.")]
320  HRESULT ClearTableStyleOverrides([in] int flag);
321  [id(0x00000035), helpstring("Returns the cell type of a row and column.")]
322  HRESULT GetCellType(
323  [in] int row,
324  [in] int col,
325  [out, retval] AcCellType* pCellType);
326  [id(0x00000036), helpstring("Specifies the cell type of a row and column.")]
327  HRESULT SetCellType(
328  [in] int row,
329  [in] int col,
330  [in] AcCellType CellType);
331  [id(0x00000037), helpstring("Returns whether a table cell is in the inner part of a table or on the outer edge.")]
332  HRESULT GetCellExtents(
333  [in] int row,
334  [in] int col,
335  [in] VARIANT_BOOL bOuterCell,
336  [out, retval] VARIANT* pPts);
337  [id(0x00000038), helpstring("Returns the attachment point of a row and column.")]
338  HRESULT GetAttachmentPoint(
339  [in] int row,
340  [in] int col,
341  [out, retval] VARIANT* pAttachmentPoint);
342  [id(0x0000003a), helpstring("Returns the alignment of a row and column.")]
343  HRESULT GetCellAlignment(
344  [in] int row,
345  [in] int col,
346  [out, retval] AcCellAlignment* pCellAlignment);
347  [id(0x0000003b), helpstring("Specifies the cell alignment of a row and column.")]
348  HRESULT SetCellAlignment(
349  [in] int row,
350  [in] int col,
351  [in] AcCellAlignment cellAlignment);
352  [id(0x0000003c), helpstring("Returns whether the background color is set to None for a row and column.")]
353  HRESULT GetCellBackgroundColorNone(
354  [in] int row,
355  [in] int col,
356  [out, retval] VARIANT_BOOL* bValue);
357  [id(0x0000003d), helpstring("Specifies whether the background color is set to None for a row and column.")]
358  HRESULT SetCellBackgroundColorNone(
359  [in] int row,
360  [in] int col,
361  [in] VARIANT_BOOL bValue);
362  [id(0x0000003e), helpstring("Returns the background color for a row and column.")]
363  HRESULT GetCellBackgroundColor(
364  [in] int row,
365  [in] int col,
366  [out, retval] IAcadAcCmColor** pColor);
367  [id(0x0000003f), helpstring("Specifies the background color for a row and column.")]
368  HRESULT SetCellBackgroundColor(
369  [in] int row,
370  [in] int col,
371  [in] IAcadAcCmColor* pColor);
372  [id(0x00000040), helpstring("Returns the cell content color for a row and column.")]
373  HRESULT GetCellContentColor(
374  [in] int row,
375  [in] int col,
376  [out, retval] IAcadAcCmColor** pColor);
377  [id(0x00000041), helpstring("Specifies the cell content color for a row and column.")]
378  HRESULT SetCellContentColor(
379  [in] int row,
380  [in] int col,
381  [in] IAcadAcCmColor* pColor);
382  [id(0x00000042), helpstring("Returns the overrides of a cell style.")]
383  HRESULT GetCellStyleOverrides(
384  [in] int row,
385  [in] int col,
386  [out, retval] VARIANT* pIntArray);
387  [id(0x00000043), helpstring("Deletes all cell content for a row and coluumn.")]
388  HRESULT DeleteCellContent(
389  [in] int row,
390  [in] int col);
391  [id(0x00000044), helpstring("Returns the row type of a row.")]
392  HRESULT GetRowType(
393  [in] int row,
394  [out, retval] AcRowType* pRowType);
395  [id(0x00000045), helpstring("Returns the text of a row and column.")]
396  HRESULT GetText(
397  [in] int row,
398  [in] int col,
399  [out, retval] BSTR* pStr);
400  [id(0x00000046), helpstring("Specifies the text of a row and column.")]
401  HRESULT SetText(
402  [in] int row,
403  [in] int col,
404  [in] BSTR pStr);
405  [id(0x00000047), helpstring("Returns the text style name of a row and column.")]
406  HRESULT GetCellTextStyle(
407  [in] int row,
408  [in] int col,
409  [out, retval] BSTR* bstrName);
410  [id(0x00000048), helpstring("Specifies the text style name of a row and column.")]
411  HRESULT SetCellTextStyle(
412  [in] int row,
413  [in] int col,
414  [in] BSTR bstrName);
415  [id(0x00000049), helpstring("Returns the text height of a row and column.")]
416  HRESULT GetCellTextHeight(
417  [in] int row,
418  [in] int col,
419  [out, retval] double* pTextHeight);
420  [id(0x0000004a), helpstring("Specifies the text height of a row and column.")]
421  HRESULT SetCellTextHeight(
422  [in] int row,
423  [in] int col,
424  [in] double TextHeight);
425  [id(0x0000004b), helpstring("Returns the text rotation of a row and column.")]
426  HRESULT GetTextRotation(
427  [in] int row,
428  [in] int col,
429  [out, retval] AcRotationAngle* TextRotation);
430  [id(0x0000004c), helpstring("Specifies the text rotation of a row and column.")]
431  HRESULT SetTextRotation(
432  [in] int row,
433  [in] int col,
434  [in] AcRotationAngle TextRotation);
435  [id(0x0000004d), helpstring("Returns whether auto scaling is turned on for a row and column.")]
436  HRESULT GetAutoScale(
437  [in] int row,
438  [in] int col,
439  [out, retval] VARIANT_BOOL* bValue);
440  [id(0x0000004e), helpstring("Specifies whether auto scaling is turned on for a row nad column.")]
441  HRESULT SetAutoScale(
442  [in] int row,
443  [in] int col,
444  [in] VARIANT_BOOL bValue);
445  [id(0x0000004f), helpstring("Returns the block table record ID associated with the block-type cell.")]
446  HRESULT GetBlockTableRecordId(
447  [in] int row,
448  [in] int col,
449  [out, retval] LONG_PTR* blkId);
450  [id(0x00000050), helpstring("Specifies the block table record ID associated with the block-type cell.")]
451  HRESULT SetBlockTableRecordId(
452  [in] int row,
453  [in] int col,
454  [in] LONG_PTR blkId,
455  [in] VARIANT_BOOL bAutoFit);
456  [id(0x00000051), helpstring("Returns the block scale value for a row and column.")]
457  HRESULT GetBlockScale(
458  [in] int row,
459  [in] int col,
460  [out, retval] double* blkScale);
461  [id(0x00000052), helpstring("Specifies the block scale value for a row and column.")]
462  HRESULT SetBlockScale(
463  [in] int row,
464  [in] int col,
465  [in] double blkScale);
466  [id(0x00000053), helpstring("Returns the block rotation of a row and column.")]
467  HRESULT GetBlockRotation(
468  [in] int row,
469  [in] int col,
470  [out, retval] double* blkRotation);
471  [id(0x00000054), helpstring("Specifies the block rotation of a row and column.")]
472  HRESULT SetBlockRotation(
473  [in] int row,
474  [in] int col,
475  [in] double blkRotation);
476  [id(0x00000070), helpstring("Returns the attribute value of a block cell.")]
477  HRESULT GetBlockAttributeValue(
478  [in] int row,
479  [in] int col,
480  [in] LONG_PTR attdefId,
481  [out, retval] BSTR* bstrValue);
482  [id(0x00000071), helpstring("Specifies the attribute value of a block cell.")]
483  HRESULT SetBlockAttributeValue(
484  [in] int row,
485  [in] int col,
486  [in] LONG_PTR attdefId,
487  [in] BSTR bstrValue);
488  [id(0x00000055), helpstring("Returns the grid lineweight value for the edge of a row and column.")]
489  HRESULT GetCellGridLineWeight(
490  [in] int row,
491  [in] int col,
492  [in] AcCellEdgeMask edge,
493  [out, retval] ACAD_LWEIGHT* plineweight);
494  [id(0x00000056), helpstring("Specifies the grid lineweight value for the edges of a row and column.")]
495  HRESULT SetCellGridLineWeight(
496  [in] int row,
497  [in] int col,
498  [in] int edges,
499  [in] ACAD_LWEIGHT Lineweight);
500  [id(0x00000057), helpstring("Returns the grid color value for the edge of a row and column.")]
501  HRESULT GetCellGridColor(
502  [in] int row,
503  [in] int col,
504  [in] AcCellEdgeMask edge,
505  [out, retval] IAcadAcCmColor** pColor);
506  [id(0x00000058), helpstring("Specifies the grid color value for the edges of a row and column.")]
507  HRESULT SetCellGridColor(
508  [in] int row,
509  [in] int col,
510  [in] int edges,
511  [in] IAcadAcCmColor* pColor);
512  [id(0x00000059), helpstring("Returns whether the grid is visible for the edge of a row and column.")]
513  HRESULT GetCellGridVisibility(
514  [in] int row,
515  [in] int col,
516  [in] AcCellEdgeMask edge,
517  [out, retval] VARIANT_BOOL* bValue);
518  [id(0x0000005a), helpstring("Specifies whether the grid is visible for the edges of a row and column.")]
519  HRESULT SetCellGridVisibility(
520  [in] int row,
521  [in] int col,
522  [in] int edges,
523  [in] VARIANT_BOOL bValue);
524  [id(0x0000005f), helpstring("Adds columns to a table.")]
525  HRESULT InsertColumns(
526  [in] int col,
527  [in] double Width,
528  [in] int cols);
529  [id(0x00000060), helpstring("Deletes columns from a table.")]
530  HRESULT DeleteColumns(
531  [in] int col,
532  [in] int cols);
533  [id(0x00000061), helpstring("Adds rows to a table.")]
534  HRESULT InsertRows(
535  [in] int row,
536  [in] double Height,
537  [in] int Rows);
538  [id(0x00000062), helpstring("Deletes rows from a table.")]
539  HRESULT DeleteRows(
540  [in] int row,
541  [in] int Rows);
542  [id(0x00000063), helpstring("Merges cells together into a single cell.")]
543  HRESULT MergeCells(
544  [in] int minRow,
545  [in] int maxRow,
546  [in] int minCol,
547  [in] int maxCol);
548  [id(0x00000064), helpstring("Unmerges cells.")]
549  HRESULT UnmergeCells(
550  [in] int minRow,
551  [in] int maxRow,
552  [in] int minCol,
553  [in] int maxCol);
554  [id(0x00000065), helpstring("Returns whether the specified cells are merged.")]
555  HRESULT IsMergedCell(
556  [in] int row,
557  [in] int col,
558  [out] int* minRow,
559  [out] int* maxRow,
560  [out] int* minCol,
561  [out] int* maxCol,
562  [out, retval] VARIANT_BOOL* pbValue);
563  [id(0x00000072), helpstring("Returns the field object ID that corresponds to a cell.")]
564  HRESULT GetFieldId(
565  [in] int row,
566  [in] int col,
567  [out, retval] LONG_PTR* fieldId);
568  [id(0x00000073), helpstring("Specifies the field object ID for a cell.")]
569  HRESULT SetFieldId(
570  [in] int row,
571  [in] int col,
572  [in] LONG_PTR fieldId);
573  [id(0x00000066), helpstring("Generates the layout and content of a table.")]
574  HRESULT GenerateLayout();
575  [id(0x00000067), helpstring("Recomputes the referenced table block with changes made to the table.")]
576  HRESULT RecomputeTableBlock([in] VARIANT_BOOL bForceUpdate);
577  [id(0x00000068), helpstring("Not implemented. Determines whether a vertex is on a table.")]
578  HRESULT HitTest(
579  [in] VARIANT wpt,
580  [in] VARIANT wviewVec,
581  [out] int* resultRowIndex,
582  [out] int* resultColumnIndex,
583  [out, retval] VARIANT_BOOL* bReturn);
584  [id(0x00000069), helpstring("Not implemented. Selects a cell in a table.")]
585  HRESULT Select(
586  [in] VARIANT wpt,
587  [in] VARIANT wvwVec,
588  [in] VARIANT wvwxVec,
589  [in] double wxaper,
590  [in] double wyaper,
591  [in] VARIANT_BOOL allowOutside,
592  [out] int* resultRowIndex,
593  [out] int* resultColumnIndex,
594  [out, retval] VARIANT* pPaths);
595  [id(0x0000006a), helpstring("Not implemented. Selects a subregion in a table.")]
596  HRESULT SelectSubRegion(
597  [in] VARIANT wpt1,
598  [in] VARIANT wpt2,
599  [in] VARIANT wvwVec,
600  [in] VARIANT wvwxVec,
601  [in] AcSelectType seltype,
602  [in] VARIANT_BOOL bIncludeCurrentSelection,
603  [out] int* rowMin,
604  [out] int* rowMax,
605  [out] int* colMin,
606  [out] int* colMax,
607  [out, retval] VARIANT* pPaths);
608  [id(0x0000006b), helpstring("Not implemented. Reselects a subregion in a table.")]
609  HRESULT ReselectSubRegion([out, retval] VARIANT* pPaths);
610  [id(0x0000006c), helpstring("Not implemented. Returns a subregion in a table.")]
611  HRESULT GetSubSelection(
612  [out] int* rowMin,
613  [out] int* rowMax,
614  [out] int* colMin,
615  [out] int* colMax);
616  [id(0x0000006d), helpstring("Not implemented. Specifies a subregion in a table.")]
617  HRESULT SetSubSelection(
618  [in] int rowMin,
619  [in] int rowMax,
620  [in] int colMin,
621  [in] int colMax);
622  [id(0x0000006e), helpstring("Not implemented. Clears a subregion in a table.")]
623  HRESULT ClearSubSelection();
624  [id(0x0000006f), propget, helpstring("Not implemented. Determines whether a table has a subselection set.")]
625  HRESULT HasSubSelection([out, retval] VARIANT_BOOL* pbValue);
626  [id(0x00000074), propget, helpstring("Not implemented. Determines whether a table can be regenerated.")]
627  HRESULT RegenerateTableSuppressed([out, retval] VARIANT_BOOL* bValue);
628  [id(0x00000074), propput, helpstring("Not implemented. Determines whether a table block can be regenerated.")]
629  HRESULT RegenerateTableSuppressed([in] VARIANT_BOOL bValue);
630  [id(0x00000075), helpstring("Not implemented. Returns the row data type and unit type for the specified row type.")]
631  HRESULT GetDataType(
632  [in] AcRowType rowType,
633  [out] AcValueDataType* pDataType,
634  [out] AcValueUnitType* pUnitType);
635  [id(0x00000076), helpstring("Not implemented. Specifies the row data type and unit type for a row type.")]
636  HRESULT SetDataType(
637  [in] int rowTypes,
638  [in] AcValueDataType dataType,
639  [in] AcValueUnitType unitType);
640  [id(0x00000077), helpstring("Not implemented. Returns the format of a row type.")]
641  HRESULT GetFormat(
642  [in] AcRowType rowType,
643  [out, retval] BSTR* pFormat);
644  [id(0x00000078), helpstring("Not implemented. Specifies the format of a row type.")]
645  HRESULT SetFormat(
646  [in] int rowTypes,
647  BSTR pFormat);
648  [id(0x00000079), helpstring("Not implemented. Returns the formatted text string of a row and column.")]
649  HRESULT FormatValue(
650  [in] int row,
651  [in] int col,
652  AcFormatOption nOption,
653  BSTR* pVal);
654  [id(0x0000079a), helpstring("Not implemented. Returns the cell data type and unit type of a row and column.")]
655  HRESULT GetCellDataType(
656  [in] int row,
657  [in] int col,
658  [out] AcValueDataType* pDataType,
659  [out] AcValueUnitType* pUnitType);
660  [id(0x0000079b), helpstring("Not implemented. Specifies the cell data type and unit type of a row and column.")]
661  HRESULT SetCellDataType(
662  [in] int row,
663  [in] int col,
664  AcValueDataType dataType,
665  AcValueUnitType unitType);
666  [id(0x0000079c), helpstring("Not implemented. Returns the cell format for the specified row and column.")]
667  HRESULT GetCellFormat(
668  [in] int row,
669  [in] int col,
670  [out, retval] BSTR* pFormat);
671  [id(0x0000079d), helpstring("Not implemented. Specifies the cell format of a row and column.")]
672  HRESULT SetCellFormat(
673  [in] int row,
674  [in] int col,
675  BSTR pFormat);
676  [id(0x0000079e), helpstring("Not implemented. Returns the cell value of a row and column.")]
677  HRESULT GetCellValue(
678  [in] int row,
679  [in] int col,
680  [out, retval] VARIANT* pVal);
681  [id(0x0000079f), helpstring("Not implemented. Specifies the cell value of a row and column.")]
682  HRESULT SetCellValue(
683  [in] int row,
684  [in] int col,
685  VARIANT val);
686  [id(0x000008a0), helpstring("Not implemented. Specifies the cell value from existing text in a row and column.")]
687  HRESULT SetCellValueFromText(
688  [in] int row,
689  [in] int col,
690  [in] BSTR val,
691  [in] AcParseOption nOption);
692  [id(0x000008a1), helpstring("Not implemented. Resets the cell value of a row and column.")]
693  HRESULT ResetCellValue(
694  [in] int row,
695  [in] int col);
696 #ifdef WIN64
697  [id(0x0000007a)]
698  HRESULT GetBlockTableRecordId32(
699  [in] int row,
700  [in] int col,
701  [out, retval] long* blkId);
702  [id(0x0000007b)]
703  HRESULT SetBlockTableRecordId32(
704  [in] int row,
705  [in] int col,
706  [in] long blkId,
707  [in] VARIANT_BOOL bAutoFit);
708  [id(0x0000007c)]
709  HRESULT GetBlockAttributeValue32(
710  [in] int row,
711  [in] int col,
712  [in] long attdefId,
713  [out, retval] BSTR* bstrValue);
714  [id(0x0000007d)]
715  HRESULT SetBlockAttributeValue32(
716  [in] int row,
717  [in] int col,
718  [in] long attdefId,
719  [in] BSTR bstrValue);
720  [id(0x0000007e)]
721  HRESULT GetFieldId32(
722  [in] int row,
723  [in] int col,
724  [out, retval] long* fieldId);
725  [id(0x0000007f)]
726  HRESULT SetFieldId32(
727  [in] int row,
728  [in] int col,
729  [in] long fieldId);
730 #endif
731  [id(0x000008a2), helpstring("Checks if the content of the specified cell is empty.")]
732  HRESULT IsEmpty(
733  [in] int nRow,
734  [in] int nCol,
735  [out, retval] VARIANT_BOOL* bValue);
736  [id(0x000008a5), helpstring("Creates new content in a cell")]
737  HRESULT CreateContent(
738  [in] int nRow,
739  [in] int nCol,
740  [in] int nIndex,
741  [out, retval] int* pInt);
742  [id(0x000008a6), helpstring("Moves a content in a cell from one position to another position within the cell")]
743  HRESULT MoveContent(
744  [in] int nRow,
745  [in] int nCol,
746  [in] int nFromIndex,
747  [in] int nToIndex);
748  [id(0x000008a7), helpstring("Deletes a content from a cell")]
749  HRESULT DeleteContent(
750  [in] int nRow,
751  [in] int nCol);
752  [id(0x000008a9), helpstring("Gets the cell value for the specified row and column and nContent.")]
753  HRESULT GetValue(
754  [in] int nRow,
755  [in] int nCol,
756  [in] int nContent,
757  [out, retval] VARIANT* pAcValue);
758  [id(0x000008b0), helpstring("Sets the cell value by parsing the text for the specified row and column and nContent.")]
759  HRESULT SetValue(
760  [in] int nRow,
761  [in] int nCol,
762  [in] int nContent,
763  [in] VARIANT acValue);
764  [id(0x000008b1), helpstring("Sets the value of the content at the specified content index.")]
765  HRESULT SetValueFromText(
766  [in] int nRow,
767  [in] int nCol,
768  [in] int nContent,
769  [in] BSTR szText,
770  [in] AcParseOption nOption);
771  [id(0x000008b3), helpstring("Gets the cell format for the specified row and column and nContent.")]
772  HRESULT GetDataFormat(
773  [in] int nRow,
774  [in] int nCol,
775  [in] int nContent,
776  [out, retval] BSTR* pValue);
777  [id(0x000008b4), helpstring("Sets the cell format for the specified row and column and nContent.")]
778  HRESULT SetDataFormat(
779  [in] int nRow,
780  [in] int nCol,
781  [in] int nContent,
782  [in] BSTR szFormat);
783  [id(0x000008b5), helpstring("Gets the text value value for the specified row and column and nContent.")]
784  HRESULT GetTextString(
785  [in] int nRow,
786  [in] int nCol,
787  [in] int nContent,
788  [out, retval] BSTR* pTextString);
789  [id(0x000008b7), helpstring("Sets the text value value for the specified row and column.")]
790  HRESULT SetTextString(
791  [in] int nRow,
792  [in] int nCol,
793  [in] int nContent,
794  [in] BSTR Text);
795  [id(0x000008b8), helpstring("Returns the field object id associated to the specifed cell and nContent.")]
796  HRESULT GetFieldId2(
797  [in] int nRow,
798  [in] int nCol,
799  [in] int nContent,
800  [out, retval] LONG_PTR* pAcDbObjectId);
801  [id(0x000008b9), helpstring("Sets the field object id associated to the specifed cell and nContent.")]
802  HRESULT SetFieldId2(
803  [in] int nRow,
804  [in] int nCol,
805  [in] int nContent,
806  [in] LONG_PTR acDbObjectId,
807  [in] AcCellOption nflag);
808  [id(0x000008c1), helpstring("Gets the block table record id associated to the block-type cell and nContent.")]
809  HRESULT GetBlockTableRecordId2(
810  [in] int nRow,
811  [in] int nCol,
812  [in] int nContent,
813  [out, retval] LONG_PTR* pAcDbObjectId);
814  [id(0x000008c2), helpstring("Sets the block table record id associated to the block-type cell and nContent.")]
815  HRESULT SetBlockTableRecordId2(
816  [in] int nRow,
817  [in] int nCol,
818  [in] int nContent,
819  [in] LONG_PTR blkId,
820  [in] VARIANT_BOOL autoFit);
821  [id(0x000008c3), helpstring("Returns the attribute value from the Specified block cell for the attribute definition object contained in the block and nContent.")]
822  HRESULT GetBlockAttributeValue2(
823  [in] int nRow,
824  [in] int nCol,
825  [in] int nContent,
826  [in] LONG_PTR blkId,
827  [out, retval] BSTR* Value);
828  [id(0x000008c4), helpstring("Sets the attribute value from the Specified block cell for the attribute definition object contained in the block and nContent.")]
829  HRESULT SetBlockAttributeValue2(
830  [in] int nRow,
831  [in] int nCol,
832  [in] int nContent,
833  [in] LONG_PTR blkId,
834  [in] BSTR Value);
835  [id(0x000008c7), helpstring("Gets the custom data value set in cell, row, or column.")]
836  HRESULT GetCustomData(
837  [in] int nRow,
838  [in] int nCol,
839  [in] BSTR szKey,
840  [out] VARIANT* pData);
841  [id(0x000008c8), helpstring("Sets the custom data value set in cell, row, or column.")]
842  HRESULT SetCustomData(
843  [in] int nRow,
844  [in] int nCol,
845  [in] BSTR szKey,
846  [in] VARIANT data);
847  [id(0x000008c9), helpstring("Gets the cell style of cell, row, or column.")]
848  HRESULT GetCellStyle(
849  [in] int nRow,
850  [in] int nCol,
851  [out, retval] BSTR* pCellStyle);
852  [id(0x000008d0), helpstring("Sets the the cell style of cell, row, or column.")]
853  HRESULT SetCellStyle(
854  [in] int nRow,
855  [in] int nCol,
856  [in] BSTR szCellStyle);
857  [id(0x000008d4), helpstring("Returns the true color value for the specified row type and nContent.")]
858  HRESULT GetContentColor2(
859  [in] int nRow,
860  [in] int nCol,
861  [in] int nContent,
862  [out, retval] IAcadAcCmColor** pColor);
863  [id(0x000008d5), helpstring("Sets the true color value for the specified row type and nContent.")]
864  HRESULT SetContentColor2(
865  [in] int nRow,
866  [in] int nCol,
867  [in] int nContent,
868  [in] IAcadAcCmColor* pColor);
869  [id(0x000008d6), helpstring("Gets the row data type and unit type for the specified row type and nContent.")]
870  HRESULT GetDataType2(
871  [in] int nRow,
872  [in] int nCol,
873  [in] int nContent,
874  [out] AcValueDataType* pDataType,
875  [out] AcValueUnitType* pUnitType);
876  [id(0x000008d7), helpstring("Sets the row data type and unit type for the specified row type and nContent.")]
877  HRESULT SetDataType2(
878  [in] int nRow,
879  [in] int nCol,
880  [in] int nContent,
881  [in] AcValueDataType dataType,
882  [in] AcValueUnitType unitType);
883  [id(0x000008d8), helpstring("Gets the text style name for the specified row and column and nContent.")]
884  HRESULT GetTextStyle2(
885  [in] int nRow,
886  [in] int nCol,
887  [in] int nContent,
888  [out, retval] BSTR* pbstrStyleName);
889  [id(0x000008d9), helpstring("Sets the text style name for the specified row and column and nContent.")]
890  HRESULT SetTextStyle2(
891  [in] int nRow,
892  [in] int nCol,
893  [in] int nContent,
894  [in] BSTR bstrStyleName);
895  [id(0x000008e0), helpstring("Returns the text height for the specified row and column and nContent.")]
896  HRESULT GetTextHeight2(
897  [in] int nRow,
898  [in] int nCol,
899  [in] int nContent,
900  [out, retval] double* pHeight);
901  [id(0x000008e1), helpstring("Gets the text height for the specified row and column and nContent.")]
902  HRESULT SetTextHeight2(
903  [in] int nRow,
904  [in] int nCol,
905  [in] int nContent,
906  [in] double Height);
907  [id(0x00008de2), helpstring("Gets the rotation angle of the content at the specified content index.")]
908  HRESULT GetRotation(
909  [in] int nRow,
910  [in] int nCol,
911  [in] int nContent,
912  [out, retval] double* pValue);
913  [id(0x000008e3), helpstring("Sets the rotation angle of the content at the specified content index.")]
914  HRESULT SetRotation(
915  [in] int nRow,
916  [in] int nCol,
917  [in] int nContent,
918  [in] double Value);
919  [id(0x000008e4), helpstring("Returns the auto scale flag value for the specified row and column and nContent.")]
920  HRESULT GetAutoScale2(
921  [in] int nRow,
922  [in] int nCol,
923  [in] int nContent,
924  [out, retval] VARIANT_BOOL* bAutoScale);
925  [id(0x00008de5), helpstring("Sets the auto scale flag value for the specified row and column and nContent.")]
926  HRESULT SetAutoScale2(
927  [in] int nRow,
928  [in] int nCol,
929  [in] int nContent,
930  [in] VARIANT_BOOL bAutoFit);
931  [id(0x000008e6), helpstring("Gets the scale of the content at the specified content index.")]
932  HRESULT GetScale(
933  [in] int nRow,
934  [in] int nCol,
935  [in] int nContent,
936  [out, retval] double* pScale);
937  [id(0x000008e7), helpstring("Sets the scale of the content at the specified content index.")]
938  HRESULT SetScale(
939  [in] int nRow,
940  [in] int nCol,
941  [in] int nContent,
942  [in] double scale);
943  [id(0x000008e8), helpstring("Removes all the overrides in cell, row, or column.")]
944  HRESULT RemoveAllOverrides(
945  [in] int nRow,
946  [in] int nCol);
947  [id(0x000008e9), helpstring("Gets the gridLineWeight value for the specified gridLineType(s) and row type(s) and nContent.")]
948  HRESULT GetGridLineWeight2(
949  [in] int nRow,
950  [in] int nCol,
951  [in] AcGridLineType nGridLineType,
952  [out, retval] ACAD_LWEIGHT* plineweight);
953  [id(0x000008f0), helpstring("Sets the gridLineWeight value for the specified gridLineType(s) and row type(s) and nContent.")]
954  HRESULT SetGridLineWeight2(
955  [in] int nRow,
956  [in] int nCol,
957  [in] AcGridLineType nGridLineType,
958  [in] ACAD_LWEIGHT Lineweight);
959  [id(0x000008f1), helpstring("Gets the grid line type of cell, row, or column.")]
960  HRESULT GetGridLinetype(
961  [in] int nRow,
962  [in] int nCol,
963  [in] AcGridLineType nGridLineType,
964  [out, retval] LONG_PTR* pacDbObjId);
965  [id(0x000008f2), helpstring("Sets the grid line type of cell, row, or column.")]
966  HRESULT SetGridLinetype(
967  [in] int nRow,
968  [in] int nCol,
969  [in] AcGridLineType nGridLineType,
970  [in] LONG_PTR idLinetype);
971  [id(0x000008f3), helpstring("Returns the gridColor value for the specified gridLineType and row type and nContent.")]
972  HRESULT GetGridColor2(
973  [in] int nRow,
974  [in] int nCol,
975  [in] AcGridLineType nGridLineType,
976  [out, retval] IAcadAcCmColor** pColor);
977  [id(0x000008f4), helpstring("Sets the gridColor value for the specified gridLineType and row type and nContent.")]
978  HRESULT SetGridColor2(
979  [in] int nRow,
980  [in] int nCol,
981  [in] AcGridLineType nGridLineType,
982  [in] IAcadAcCmColor* pColor);
983  [id(0x000008f5), helpstring("Returns the gridVisibility value for the specified gridLineType and row type.")]
984  HRESULT GetGridVisibility2(
985  [in] int nRow,
986  [in] int nCol,
987  [in] AcGridLineType nGridLineType,
988  [out, retval] VARIANT_BOOL* bVisible);
989  [id(0x000008f6), helpstring("Sets the gridVisibility value for the specified gridLineType and row type.")]
990  HRESULT SetGridVisibility2(
991  [in] int nRow,
992  [in] int nCol,
993  [in] AcGridLineType nGridLineType,
994  [in] VARIANT_BOOL bVisible);
995  [id(0x000008f7), helpstring("Gets the grid double line spacing from cell, row, or column")]
996  HRESULT GetGridDoubleLineSpacing(
997  [in] int nRow,
998  [in] int nCol,
999  [in] AcGridLineType nGridLineType,
1000  [out, retval] double* pValue);
1001  [id(0x000008f8), helpstring("Sets the grid double line spacing in cell, row, or column.")]
1002  HRESULT SetGridDoubleLineSpacing(
1003  [in] int nRow,
1004  [in] int nCol,
1005  [in] AcGridLineType nGridLineType,
1006  [in] double fSpacing);
1007  [id(0x00000904), propput, helpstring("Enables or disables table breaking")]
1008  HRESULT EnableBreak([in] VARIANT_BOOL rhs);
1009  [id(0x00000905), helpstring("Returns the break height of the specified table when table breaking is enabled.")]
1010  HRESULT GetBreakHeight(
1011  [in] int nIndex,
1012  [out, retval] double* pHeight);
1013  [id(0x00000906), helpstring("Sets the break height of the specified table when table breaking is enabled.")]
1014  HRESULT SetBreakHeight(
1015  [in] int nIndex,
1016  [in] double Height);
1017  [id(0x00000907), helpstring("Gets the content type of the content at the specified content index.")]
1018  HRESULT GetContentType(
1019  [in] int nRow,
1020  [in] int nCol,
1021  [out, retval] AcCellContentType* pType);
1022  [id(0x00000914), helpstring("Gets the margin of cell, row, or column.")]
1023  HRESULT GetMargin(
1024  [in] int nRow,
1025  [in] int nCol,
1026  [in] AcCellMargin nMargin,
1027  [out, retval] double* pValue);
1028  [id(0x00000916), helpstring("Sets the margin of cell, row, or column.")]
1029  HRESULT SetMargin(
1030  [in] int nRow,
1031  [in] int nCol,
1032  [in] AcCellMargin nMargins,
1033  [in] double fMargin);
1034  [id(0x00000917), helpstring("Gets the content layout of the cell.")]
1035  HRESULT GetContentLayout(
1036  [in] int row,
1037  [in] int col,
1038  [out, retval] AcCellContentLayout* pLayout);
1039  [id(0x00000918), helpstring("Sets the content layout of the cell.")]
1040  HRESULT SetContentLayout(
1041  [in] int row,
1042  [in] int col,
1043  [in] AcCellContentLayout nLayout);
1044  [id(0x00000922), helpstring("Gets the override in cell, row, column, or content.")]
1045  HRESULT GetOverride(
1046  [in] int nRow,
1047  [in] int nCol,
1048  [in] int nContent,
1049  [out, retval] AcCellProperty* pValue);
1050  [id(0x00000923), helpstring("Sets the override in cell, row, column, or content.")]
1051  HRESULT SetOverride(
1052  [in] int nRow,
1053  [in] int nCol,
1054  [in] int nContent,
1055  [in] AcCellProperty nProp);
1056  [id(0x00000924), helpstring("Gets the grid line style of cell, row, or column.")]
1057  HRESULT GetGridLineStyle(
1058  [in] int nRow,
1059  [in] int nCol,
1060  [in] AcGridLineType nGridLineType,
1061  [out, retval] AcGridLineStyle* pStyle);
1062  [id(0x00000925), helpstring("Sets the grid line style of cell, row, or column.")]
1063  HRESULT SetGridLineStyle(
1064  [in] int nRow,
1065  [in] int nCol,
1066  [in] AcGridLineType nGridLineTypes,
1067  [in] AcGridLineStyle nLineStyle);
1068  [id(0x00000929), helpstring("Inserts one or more rows at the specified index and inherits the row properties from specified row.")]
1069  HRESULT InsertRowsAndInherit(
1070  [in] int nIndex,
1071  [in] int nInheritFrom,
1072  [in] int nNumRows);
1073  [id(0x00000931), helpstring("Inserts one or more columns at the specified index and inherits the column properties from specified column.")]
1074  HRESULT InsertColumnsAndInherit(
1075  [in] int col,
1076  [in] int nInheritFrom,
1077  [in] int nNumCols);
1078  [id(0x00000932), helpstring("Returns true if the content at the specified index is a formula.")]
1079  HRESULT GetHasFormula(
1080  [in] int nRow,
1081  [in] int nCol,
1082  [in] int nContent,
1083  [out, retval] VARIANT_BOOL* bValue);
1084  [id(0x00000933), helpstring("Gets the formula if the content at the specified content index has a formula.")]
1085  HRESULT GetFormula(
1086  [in] int nRow,
1087  [in] int nCol,
1088  [in] int nContent,
1089  [out, retval] BSTR* pszFormula);
1090  [id(0x00000934), helpstring("Sets the formula at the specified content index.")]
1091  HRESULT SetFormula(
1092  [in] int nRow,
1093  [in] int nCol,
1094  [in] int nContent,
1095  [in] BSTR pszFormula);
1096  [id(0x00000936), helpstring("Checks if the content of the specified cell can be modified.")]
1097  HRESULT IsContentEditable(
1098  [in] int nRow,
1099  [in] int nCol,
1100  [out, retval] VARIANT_BOOL* bValue);
1101  [id(0x00000937), helpstring("Checks if the format of the specified cell can be modified.")]
1102  HRESULT IsFormatEditable(
1103  [in] int nRow,
1104  [in] int nCol,
1105  [out, retval] VARIANT_BOOL* bValue);
1106  [id(0x00000938), helpstring("Gets the cell state.")]
1107  HRESULT GetCellState(
1108  [in] int nRow,
1109  [in] int nCol,
1110  [out, retval] AcCellState* pCellState);
1111  [id(0x00000939), helpstring("Sets the cell state.")]
1112  HRESULT SetCellState(
1113  [in] int nRow,
1114  [in] int nCol,
1115  [in] AcCellState nLock);
1116  [id(0x00000940), helpstring("Enables or disables the merge all flag in row or column.")]
1117  HRESULT EnableMergeAll(
1118  [in] int nRow,
1119  [in] int nCol,
1120  [in] VARIANT_BOOL bEnable);
1121  [id(0x00000941), helpstring("Returns whether merge all flag is enabled or not in row or column.")]
1122  HRESULT IsMergeAllEnabled(
1123  [in] int nRow,
1124  [in] int nCol,
1125  [out, retval] VARIANT_BOOL* bValue);
1126  [id(0x0000fff0), propget, helpstring("Determines whether table breaking is in use. When enabled, the table will break automatically at the current specified height.")]
1127  HRESULT BreaksEnabled([out, retval] VARIANT_BOOL* bEnabled);
1128  [id(0x0000fff0), propput, helpstring("Determines whether table breaking is in use. When enabled, the table will break automatically at the current specified height.")]
1129  HRESULT BreaksEnabled([in] VARIANT_BOOL bEnabled);
1130  [id(0x0000fff1), propget, helpstring("Determines whether the first set of label rows will be repeated at the top of each broken table part.")]
1131  HRESULT RepeatTopLabels([out, retval] VARIANT_BOOL* bEnabled);
1132  [id(0x0000fff1), propput, helpstring("Determines whether the first set of label rows will be repeated at the top of each broken table part.")]
1133  HRESULT RepeatTopLabels([in] VARIANT_BOOL bEnabled);
1134  [id(0x0000fff2), propget, helpstring("Determines whether the bottom set of label rows is repeated at the bottom of each broken table part.")]
1135  HRESULT RepeatBottomLabels([out, retval] VARIANT_BOOL* bEnabled);
1136  [id(0x0000fff2), propput, helpstring("Determines whether the bottom set of label rows is repeated at the bottom of each broken table part.")]
1137  HRESULT RepeatBottomLabels([in] VARIANT_BOOL bEnabled);
1138  [id(0x0000fff3), propget, helpstring("Determines the direction that parts of the table flow.")]
1139  HRESULT TableBreakFlowDirection([out, retval] AcTableFlowDirection* pDir);
1140  [id(0x0000fff3), propput, helpstring("Determines the direction that parts of the table flow.")]
1141  HRESULT TableBreakFlowDirection([in] AcTableFlowDirection pDir);
1142  [id(0x0000fff4), propget, helpstring("When enabled, each table part can be moved outside of the boundary. When not enabled, the table parts are contained within a rectangular boundary.")]
1143  HRESULT AllowManualPositions([out, retval] VARIANT_BOOL* bEnabled);
1144  [id(0x0000fff4), propput, helpstring("When enabled, each table part can be moved outside of the boundary. When not enabled, the table parts are contained within a rectangular boundary.")]
1145  HRESULT AllowManualPositions([in] VARIANT_BOOL bEnabled);
1146  [id(0x0000fff5), propget, helpstring("Allows the heights of broken table parts to have their own breaking height. When set to No, all table parts will break at the height of the initial table part.")]
1147  HRESULT AllowManualHeights([out, retval] VARIANT_BOOL* bEnabled);
1148  [id(0x0000fff5), propput, helpstring("Allows the heights of broken table parts to have their own breaking height. When set to No, all table parts will break at the height of the initial table part.")]
1149  HRESULT AllowManualHeights([in] VARIANT_BOOL bEnabled);
1150  [id(0x0000fff6), propget, helpstring("Sets the breaking height for the initial table part and any other table parts that do not have manual heights set.")]
1151  HRESULT TableBreakHeight([out, retval] double* pHeight);
1152  [id(0x0000fff6), propput, helpstring("Sets the breaking height for the initial table part and any other table parts that do not have manual heights set.")]
1153  HRESULT TableBreakHeight([in] double pHeight);
1154  [id(0x0000fff7), propget, helpstring("Controls the spacing between the broken table parts. Depending on the break direction this will be a horizontal or vertical spacing.")]
1155  HRESULT BreakSpacing([out, retval] double* pSpacing);
1156  [id(0x0000fff7), propput, helpstring("Controls the spacing between the broken table parts. Depending on the break direction this will be a horizontal or vertical spacing.")]
1157  HRESULT BreakSpacing([in] double pSpacing);
1158  [id(0x0000fff8), helpstring("Gets the columns name.")]
1159  HRESULT GetColumnName(
1160  [in] int nIndex,
1161  [out, retval] BSTR* Name);
1162  [id(0x0000fff9), helpstring("Sets the columns name.")]
1163  HRESULT SetColumnName(
1164  [in] int nIndex,
1165  [in] BSTR Name);
1166  [id(0x0000fffa), helpstring("Sets the tooltip string for cell, row, or column.")]
1167  HRESULT SetToolTip(
1168  [in] int nRow,
1169  [in] int nCol,
1170  [in] BSTR tip);
1171 #ifdef WIN64
1172  HRESULT GetFieldId232(
1173  [in] int nRow,
1174  [in] int nCol,
1175  [in] int nContent,
1176  [out, retval] long* pAcDbObjectId);
1177  [id(0x00000943)]
1178  HRESULT SetFieldId232(
1179  [in] int nRow,
1180  [in] int nCol,
1181  [in] int nContent,
1182  [in] long acDbObjectId,
1183  [in] AcCellOption nflag);
1184  [id(0x00000944)]
1185  HRESULT GetBlockTableRecordId232(
1186  [in] int nRow,
1187  [in] int nCol,
1188  [in] int nContent,
1189  [out, retval] long* pAcDbObjectId);
1190  [id(0x00000945)]
1191  HRESULT SetBlockTableRecordId232(
1192  [in] int nRow,
1193  [in] int nCol,
1194  [in] int nContent,
1195  [in] long blkId,
1196  [in] VARIANT_BOOL autoFit);
1197  [id(0x00000946)]
1198  HRESULT GetBlockAttributeValue232(
1199  [in] int nRow,
1200  [in] int nCol,
1201  [in] int nContent,
1202  [in] long blkId,
1203  [out, retval] BSTR* Value);
1204  [id(0x00000947)]
1205  HRESULT SetBlockAttributeValue232(
1206  [in] int nRow,
1207  [in] int nCol,
1208  [in] int nContent,
1209  [in] long blkId,
1210  [in] BSTR Value);
1211  [id(0x00000948)]
1212  HRESULT GetGridLinetype32(
1213  [in] int nRow,
1214  [in] int nCol,
1215  [in] AcGridLineType nGridLineType,
1216  [out, retval] long* pacDbObjId);
1217  [id(0x00000949)]
1218  HRESULT SetGridLinetype32(
1219  [in] int nRow,
1220  [in] int nCol,
1221  [in] AcGridLineType nGridLineType,
1222  [in] long idLinetype);
1223 #endif
1224 };
1225 
1226 [
1227  odl,
1228  uuid(5A90AA1A-8525-49B7-9F44-62E6A958DE82),
1229  helpstring("TeighaX Interface of Ole object"),
1230  dual,
1231  oleautomation
1232 ]
1233 interface IAcadOle : IAcadEntity {
1234  [id(0x00000001), propget, helpstring("Specifies the origin coordinates (upper left corner) of the OLE object")]
1235  HRESULT InsertionPoint([out, retval] VARIANT* insPoint);
1236  [id(0x00000001), propput, helpstring("Specifies the origin coordinates (upper left corner) of the OLE object")]
1237  HRESULT InsertionPoint([in] VARIANT insPoint);
1238  [id(0x00000002), propget, helpstring("Specifies the rotation angle of the OLE object")]
1239  HRESULT Rotation([out, retval] ACAD_ANGLE* rot);
1240  [id(0x00000002), propput, helpstring("Specifies the rotation angle of the OLE object")]
1241  HRESULT Rotation([in] ACAD_ANGLE rot);
1242  [id(0x00000003), propget, helpstring("Specifies the width of the OLE object box")]
1243  HRESULT Width([out, retval] double* Width);
1244  [id(0x00000003), propput, helpstring("Specifies the width of the OLE object box")]
1245  HRESULT Width([in] double Width);
1246  [id(0x00000004), propget, helpstring("Specifies the height of the OLE object box")]
1247  HRESULT Height([out, retval] double* Height);
1248  [id(0x00000004), propput, helpstring("Specifies the height of the OLE object box")]
1249  HRESULT Height([in] double Height);
1250  [id(0x00000005), propget, helpstring("Specifies the width of the object as a percentage of original width")]
1251  HRESULT ScaleWidth([out, retval] double* swidth);
1252  [id(0x00000005), propput, helpstring("Specifies the width of the object as a percentage of original width")]
1253  HRESULT ScaleWidth([in] double swidth);
1254  [id(0x00000006), propget, helpstring("Specifies the height of the object as a percentage of original height")]
1255  HRESULT ScaleHeight([out, retval] double* sheight);
1256  [id(0x00000006), propput, helpstring("Specifies the height of the object as a percentage of original height")]
1257  HRESULT ScaleHeight([in] double sheight);
1258  [id(0x00000007), propget, helpstring("Ensures the width and height of the object stay in proportion")]
1259  HRESULT LockAspectRatio([out, retval] VARIANT_BOOL* aspect);
1260  [id(0x00000007), propput, helpstring("Ensures the width and height of the object stay in proportion")]
1261  HRESULT LockAspectRatio([in] VARIANT_BOOL aspect);
1262  [id(0x00000008), propget, helpstring("Specifies whether the OLE object is linked to the original pasted file when opening object for editing")]
1263  HRESULT OleItemType([out, retval] AcOleType* pType);
1264  [id(0x00000008), propput, helpstring("Specifies whether the OLE object is linked to the original pasted file when opening object for editing")]
1265  HRESULT OleItemType([in] AcOleType pType);
1266  [id(0x00000009), propget, helpstring("Controls plot quality of OLE object based on file type selected from list")]
1267  HRESULT OlePlotQuality([out, retval] AcOlePlotQuality* pPQuality);
1268  [id(0x00000009), propput, helpstring("Controls plot quality of OLE object based on file type selected from list")]
1269  HRESULT OlePlotQuality([in] AcOlePlotQuality pPQuality);
1270  [id(0x0000000a), propget, helpstring("Application for editing OLE object")]
1271  HRESULT OleSourceApp([out, retval] BSTR* srcApp);
1272  [id(0x0000000a), propput, helpstring("Application for editing OLE object")]
1273  HRESULT OleSourceApp([in] BSTR srcApp);
1274 };
1275 
1276 [
1277  odl,
1278  uuid(39614E96-FFD9-42EA-99F0-FD7DC498D9B6),
1279  helpstring("TeighaX Interface for an additional Ole functionality"),
1280  dual,
1281  oleautomation
1282 ]
1283 interface IOdaOle : IAcadOle
1284 {
1285  [id(0x0000000b), propget, helpstring("Filename and item to which this OLE object is linked")]
1286  HRESULT LinkName([out, retval] BSTR* srcApp);
1287  [id(0x0000000c), propget, helpstring("Filename to which this OLE object is linked")]
1288  HRESULT LinkPath([out, retval] BSTR* srcApp);
1289 };
1290 
1291 [
1292  odl,
1293  uuid(671D7077-2C99-4D21-A5D3-A5001F1B8F12),
1294  helpstring("TeighaX Interface of an object containing the properties of a dynamic block"),
1295  dual,
1296  oleautomation
1297 ]
1298 interface IAcadDynamicBlockReferenceProperty : IDispatch {
1299  [id(0x00000001), propget, helpstring("Returns the name of the property.")]
1300  HRESULT PropertyName([out, retval] BSTR* PropertyName);
1301  [id(0x00000002), propget, helpstring("Returns whether a property is read-only.")]
1302  HRESULT ReadOnly([out, retval] VARIANT_BOOL* ReadOnly);
1303  [id(0x00000003), propget, helpstring("Returns whether a property is available in the application user interface.")]
1304  HRESULT Show([out, retval] VARIANT_BOOL* Show);
1305  [id(0x00000004), propget, helpstring("Returns the description of the property.")]
1306  HRESULT Description([out, retval] BSTR* Description);
1307  [id(0x00000005), propget, helpstring("Returns the values that are valid for a property.")]
1308  HRESULT AllowedValues([out, retval] VARIANT* AllowedValues);
1309  [id(0x00000006), propget, helpstring("Specifies or returns the value of a property.")]
1310  HRESULT Value([out, retval] VARIANT* Value);
1311  [id(0x00000006), propput, helpstring("Specifies or returns the value of a property.")]
1312  HRESULT Value([in] VARIANT Value);
1313  [id(0x00000007), propget, helpstring("Returns the current units type for the display of a property.")]
1314  HRESULT UnitsType([out, retval] AcDynamicBlockReferencePropertyUnitsType* Units);
1315 };
1316 
1317 // TeighaX addition for multiple line styles
1318 
1319 [
1320  odl,
1321  uuid(EAB07C99-ABCA-4880-9B1C-4FD13FC3DE3A),
1322  helpstring("TeighaX Interface for the collection of all mline styles in the drawing"),
1323  dual,
1324  oleautomation
1325 ]
1326 interface IOdaMLineStyles : IAcadObject {
1327  [id(00000000), helpstring("Gets the member object at a given index in a collection, group, or selection set")]
1328  HRESULT Item([in] VARIANT Index, [out, retval] IOdaMLineStyle** pItem);
1329  [id(0x00000001), propget, helpstring("Gets the number of items in the collection, dictionary, group, or selection set")]
1330  HRESULT Count([out, retval] long* pCount);
1331  [id(0xfffffffc), propget, restricted, hidden]
1332  HRESULT _NewEnum([out, retval] IUnknown** pVal);
1333  [id(0x00000002), helpstring("Creates a member object and adds it to the appropriate collection")]
1334  HRESULT Add([in] BSTR Name, [out, retval] IOdaMLineStyle** pLayout);
1335 };
1336 
1337 [
1338  odl,
1339  uuid(3A1DC1C0-D49D-4DC6-A944-A158227BFF03),
1340  helpstring("TeighaX Interface to define a style for multiple parallel lines"),
1341  dual,
1342  oleautomation
1343 ]
1344 interface IOdaMLineStyle : IAcadObject {
1345  [propget, id(0x00000001), helpstring("Specifies the name of the object")]
1346  HRESULT Name([out, retval] BSTR* pName);
1347  [propput, id(0x00000001), helpstring("Specifies the name of the object")]
1348  HRESULT Name([in] BSTR pName);
1349  [propget, id(0x00000002), helpstring("Specifies the style description")]
1350  HRESULT Description([out, retval] BSTR* bstrDes);
1351  [propput, id(0x00000002), helpstring("Specifies the style description")]
1352  HRESULT Description([in] BSTR bstrDes);
1353  [propget, id(0x00000003), helpstring("property StartAngle")]
1354  HRESULT StartAngle([out, retval] ACAD_ANGLE *pVal);
1355  [propput, id(0x00000003), helpstring("property StartAngle")]
1356  HRESULT StartAngle([in] ACAD_ANGLE newVal);
1357  [propget, id(0x00000004), helpstring("property EndAngle")]
1358  HRESULT EndAngle([out, retval] ACAD_ANGLE *pVal);
1359  [propput, id(0x00000004), helpstring("property EndAngle")]
1360  HRESULT EndAngle([in] ACAD_ANGLE newVal);
1361  [propget, id(0x00000005), helpstring("property FillColor")]
1362  HRESULT FillColor([out, retval] IAcadAcCmColor** pVal);
1363  [propput, id(0x00000005), helpstring("property FillColor")]
1364  HRESULT FillColor([in] IAcadAcCmColor* newVal);
1365  [propget, id(0x00000006), helpstring("returns the number of elements in style")]
1366  HRESULT ElementsCount([out, retval] long *pVal);
1367  [propget, id(0x00000007), helpstring("property Filled (DXF 70, bit 0x01)")]
1368  HRESULT Filled([out, retval] VARIANT_BOOL *pVal);
1369  [propput, id(0x00000007), helpstring("property Filled (DXF 70, bit 0x01)")]
1370  HRESULT Filled([in] VARIANT_BOOL newVal);
1371  [propget, id(0x00000008), helpstring("property ShowMiters (DXF 70, bit 0x02)")]
1372  HRESULT ShowMiters([out, retval] VARIANT_BOOL *pVal);
1373  [propput, id(0x00000008), helpstring("property ShowMiters (DXF 70, bit 0x02)")]
1374  HRESULT ShowMiters([in] VARIANT_BOOL newVal);
1375  [propget, id(0x00000009), helpstring("property StartSquareCap (DXF 70, bit 0x10)")]
1376  HRESULT StartSquareCap([out, retval] VARIANT_BOOL *pVal);
1377  [propput, id(0x00000009), helpstring("property StartSquareCap (DXF 70, bit 0x10)")]
1378  HRESULT StartSquareCap([in] VARIANT_BOOL newVal);
1379  [propget, id(0x0000000A), helpstring("property StartRoundCap (DXF 70, bit 0x40)")]
1380  HRESULT StartRoundCap([out, retval] VARIANT_BOOL *pVal);
1381  [propput, id(0x0000000A), helpstring("property StartRoundCap (DXF 70, bit 0x40)")]
1382  HRESULT StartRoundCap([in] VARIANT_BOOL newVal);
1383  [propget, id(0x0000000B), helpstring("property StartInnerArcs (DXF 70, bit 0x20)")]
1384  HRESULT StartInnerArcs([out, retval] VARIANT_BOOL *pVal);
1385  [propput, id(0x0000000B), helpstring("property StartInnerArcs (DXF 70, bit 0x20)")]
1386  HRESULT StartInnerArcs([in] VARIANT_BOOL newVal);
1387  [propget, id(0x0000000C), helpstring("property EndSquareCap (DXF 70, bit 0x80)")]
1388  HRESULT EndSquareCap([out, retval] VARIANT_BOOL *pVal);
1389  [propput, id(0x0000000C), helpstring("property EndSquareCap (DXF 70, bit 0x80)")]
1390  HRESULT EndSquareCap([in] VARIANT_BOOL newVal);
1391  [propget, id(0x0000000D), helpstring("property EndRoundCap (DXF 70, bit 0x200)")]
1392  HRESULT EndRoundCap([out, retval] VARIANT_BOOL *pVal);
1393  [propput, id(0x0000000D), helpstring("property EndRoundCap (DXF 70, bit 0x200)")]
1394  HRESULT EndRoundCap([in] VARIANT_BOOL newVal);
1395  [propget, id(0x0000000E), helpstring("property EndInnerArcs (DXF 70, bit 0x100)")]
1396  HRESULT EndInnerArcs([out, retval] VARIANT_BOOL *pVal);
1397  [propput, id(0x0000000E), helpstring("property EndInnerArcs (DXF 70, bit 0x100)")]
1398  HRESULT EndInnerArcs([in] VARIANT_BOOL newVal);
1399  [id(0x0000000F), helpstring("Adds an element to this MLine Style")]
1400  HRESULT AddElement([in] double offset, [in] IAcadAcCmColor* Color, [in] IAcadLineType* pLinetype);
1401  [propget, id(0x00000010), helpstring("Returns the offset values for an existing element in this MLine Style")]
1402  HRESULT OffsetAt([in] int index, [out, retval] double *value);
1403  [propput, id(0x00000010), helpstring("Changes the offset values for an existing element in this MLine Style")]
1404  HRESULT OffsetAt([in] int index, [in] double value);
1405  [propget, id(0x00000011), helpstring("Returns the Color object for an existing element in this MLine Style")]
1406  HRESULT ColorAt([in] int index, [out, retval] IAcadAcCmColor** Color);
1407  [propput, id(0x00000011), helpstring("Changes the Color for an existing element in this MLine Style")]
1408  HRESULT ColorAt([in] int index, [in] IAcadAcCmColor* Color);
1409  [propget, id(0x00000012), helpstring("Returns the Line Type object for an existing element in this MLine Style")]
1410  HRESULT LineTypeAt([in] int index, [out, retval] IAcadLineType** LineType);
1411  [propput, id(0x00000012), helpstring("Changes the Line Type for an existing element in this MLine Style")]
1412  HRESULT LineTypeAt([in] int index, [in] IAcadLineType* LineType);
1413 };
1414 
1415 [
1416  odl,
1417  uuid(DB31BDE0-6DD6-4FDF-A289-214EEA6C0072),
1418  helpstring("TeighaX Interface of Surface entity"),
1419  dual,
1420  oleautomation
1421 ]
1422 interface IAcadSurface : IAcadEntity {
1423  [id(0x00000001), propget, helpstring("Returns the type of a surface.")]
1424  HRESULT SurfaceType([out, retval] BSTR* SurfaceType);
1425  [id(0x0000000a), propget, helpstring("Specifies or returns the number of U isolines per surface that display.")]
1426  HRESULT UIsolineDensity([out, retval] long* density);
1427  [id(0x0000000a), propput, helpstring("Specifies or returns the number of U isolines per surface that display.")]
1428  HRESULT UIsolineDensity([in] long density);
1429  [id(0x0000000b), propget, helpstring("Specifies or returns the number of V isolines per surface that display.")]
1430  HRESULT VIsolineDensity([out, retval] long* density);
1431  [id(0x0000000b), propput, helpstring("Specifies or returns the number of V isolines per surface that display.")]
1432  HRESULT VIsolineDensity([in] long density);
1433 };
1434 [
1435  odl,
1436  uuid(FFCCA3F9-8BB7-4693-B7F7-07EFDF4DE8A9),
1437  helpstring("TeighaX Interface of a planar surface entity"),
1438  dual,
1439  oleautomation
1440 ]
1441 interface IAcadPlaneSurface : IAcadSurface {
1442 };
1443 
1444 [
1445  odl,
1446  uuid(91D470C0-CAB6-49F8-B13B-83D53527933A),
1447  helpstring("TeighaX Interface of a surface created by extruding an object or a planar face a specified distance and direction"),
1448  dual,
1449  oleautomation
1450 ]
1451 interface IAcadExtrudedSurface : IAcadSurface {
1452  [id(0x00000002), propget, helpstring("Specifies or returns the height of the extruded surface.")]
1453  HRESULT Height([out, retval] double* Height);
1454  [id(0x00000002), propput, helpstring("Specifies or returns the height of the extruded surface.")]
1455  HRESULT Height([in] double Height);
1456  [id(0x00000003), propget, helpstring("Specifies or returns the taper angle of the extruded surface.")]
1457  HRESULT TaperAngle([out, retval] ACAD_ANGLE* TaperAngle);
1458  [id(0x00000003), propput, helpstring("Specifies or returns the taper angle of the extruded surface.")]
1459  HRESULT TaperAngle([in] ACAD_ANGLE TaperAngle);
1460  [id(0x00000004), propget, helpstring("Returns the direction of the extruded surface.")]
1461  HRESULT Direction([out, retval] VARIANT* Direction);
1462 };
1463 
1464 [
1465  odl,
1466  uuid(2AA6DCC2-C242-49CB-A576-545E4F500722),
1467  helpstring("TeighaX Interface of a surface created by revolving one or more 2D objects about an axis"),
1468  dual,
1469  oleautomation
1470 ]
1471 interface IAcadRevolvedSurface : IAcadSurface {
1472  [id(0x00000002), propget, helpstring("Specifies or returns the angle of revolution for a revolved surface.")]
1473  HRESULT RevolutionAngle([out, retval] ACAD_ANGLE* revAngle);
1474  [id(0x00000002), propput, helpstring("Specifies or returns the angle of revolution for a revolved surface.")]
1475  HRESULT RevolutionAngle([in] ACAD_ANGLE revAngle);
1476  [id(0x00000003), propget, helpstring("Specifies or returns the start point of the revolution axis for a revolved surface.")]
1477  HRESULT AxisPosition([out, retval] VARIANT* AxisPosition);
1478  [id(0x00000003), propput, helpstring("Specifies or returns the start point of the revolution axis for a revolved surface.")]
1479  HRESULT AxisPosition([in] VARIANT AxisPosition);
1480  [id(0x00000004), propget, helpstring("Returns the direction of the revolution axis for a revolved surface.")]
1481  HRESULT AxisDirection([out, retval] VARIANT* AxisDirection);
1482 };
1483 
1484 [
1485  odl,
1486  uuid(A1E46554-B62E-4CEB-A9B8-8C9BC7E8252D),
1487  helpstring("TeighaX Interface of a surface created by sweeping a 2D curve along a path"),
1488  dual,
1489  oleautomation
1490 ]
1491 interface IAcadSweptSurface : IAcadSurface {
1492  [id(0x00000002), propget, helpstring("Specifies or returns the rotation of the profile used for a swept surface.")]
1493  HRESULT ProfileRotation([out, retval] ACAD_ANGLE* profileRotationAngle);
1494  [id(0x00000002), propput, helpstring("Specifies or returns the rotation of the profile used for a swept surface.")]
1495  HRESULT ProfileRotation([in] ACAD_ANGLE profileRotationAngle);
1496  [id(0x00000003), propget, helpstring("Specifies or returns whether the profile of a swept surface is banked along the path.")]
1497  HRESULT Bank([out, retval] VARIANT_BOOL* bBank);
1498  [id(0x00000003), propput, helpstring("Specifies or returns whether the profile of a swept surface is banked along the path.")]
1499  HRESULT Bank([in] VARIANT_BOOL bBank);
1500  [id(0x00000004), propget, helpstring("Specifies or returns the rotation value applied along the path of a swept surface.")]
1501  HRESULT Twist([out, retval] ACAD_ANGLE* TwistAngle);
1502  [id(0x00000004), propput, helpstring("Specifies or returns the rotation value applied along the path of a swept surface.")]
1503  HRESULT Twist([in] ACAD_ANGLE TwistAngle);
1504  [id(0x00000005), propget, helpstring("Specifies or returns the scale factor of a swept surface.")]
1505  HRESULT scale([out, retval] double* scale);
1506  [id(0x00000005), propput, helpstring("Specifies or returns the scale factor of a swept surface.")]
1507  HRESULT scale([in] double scale);
1508  [id(0x00000006), propget, helpstring("Not implemented. Returns the length of the path for a swept surface.")]
1509  HRESULT Length([out, retval] double* Length);
1510 };
1511 
1512 [
1513  odl,
1514  uuid(9A580AC7-FD1D-4D94-A668-B00745FDB153),
1515  helpstring("TeighaX Interface of a surface created by lofting through a set of two or more curves"),
1516  dual,
1517  oleautomation
1518 ]
1519 interface IAcadLoftedSurface : IAcadSurface {
1520  [id(0x00000002), propget, helpstring("Returns the number of cross-sections used to create a lofted surface.")]
1521  HRESULT NumCrossSections([out, retval] long* NumCrossSections);
1522  [id(0x00000003), propget, helpstring("Returns the number of guide paths used to create a lofted surface.")]
1523  HRESULT NumGuidePaths([out, retval] long* NumGuidePaths);
1524  [id(0x00000004), propget, helpstring("Specifies or returns which curves are normal to the cross-sections.")]
1525  HRESULT SurfaceNormals([out, retval] AcLoftedSurfaceNormalType* surfaceNormal);
1526  [id(0x00000004), propput, helpstring("Specifies or returns which curves are normal to the cross-sections.")]
1527  HRESULT SurfaceNormals([in] AcLoftedSurfaceNormalType surfaceNormal);
1528  [id(0x00000005), propget, helpstring("Specifies or returns the angle of the first cross-section surface.")]
1529  HRESULT StartDraftAngle([out, retval] ACAD_ANGLE* StartDraftAngle);
1530  [id(0x00000005), propput, helpstring("Specifies or returns the angle of the first cross-section surface.")]
1531  HRESULT StartDraftAngle([in] ACAD_ANGLE StartDraftAngle);
1532  [id(0x00000006), propget, helpstring("Specifies or returns the magnitude of the first cross-section surface.")]
1533  HRESULT StartDraftMagnitude([out, retval] double* startDraftMag);
1534  [id(0x00000006), propput, helpstring("Specifies or returns the magnitude of the first cross-section surface.")]
1535  HRESULT StartDraftMagnitude([in] double startDraftMag);
1536  [id(0x00000007), propget, helpstring("Specifies or returns the angle of the last cross-section surface.")]
1537  HRESULT EndDraftAngle([out, retval] ACAD_ANGLE* EndDraftAngle);
1538  [id(0x00000007), propput, helpstring("Specifies or returns the angle of the last cross-section surface.")]
1539  HRESULT EndDraftAngle([in] ACAD_ANGLE EndDraftAngle);
1540  [id(0x00000008), propget, helpstring("Specifies or returns the magnitude of the last cross-section surface.")]
1541  HRESULT EndDraftMagnitude([out, retval] double* endDraftMag);
1542  [id(0x00000008), propput, helpstring("Specifies or returns the magnitude of the last cross-section surface.")]
1543  HRESULT EndDraftMagnitude([in] double endDraftMag);
1544  [id(0x00000009), propget, helpstring("Specfies or returns whether the lofted surface is open or closed.")]
1545  HRESULT Closed([out, retval] VARIANT_BOOL* bClosed);
1546  [id(0x00000009), propput, helpstring("Specfies or returns whether the lofted surface is open or closed.")]
1547  HRESULT Closed([in] VARIANT_BOOL bClosed);
1548 };
1549 
1550 
1551 [
1552  odl,
1553  uuid(7480DD11-B890-41B3-BD1A-562D5190DDC2),
1554  helpstring("TeighaX Interface of Helix entity"),
1555  dual,
1556  oleautomation
1557 ]
1558 interface IAcadHelix : IAcadEntity {
1559  [id(0x00000001), propget, helpstring("Specifies or returns the x, y, and z coordinates for the base center point of a helix.")]
1560  HRESULT Position([out, retval] VARIANT* StartPoint);
1561  [id(0x00000001), propput, helpstring("Specifies or returns the x, y, and z coordinates for the base center point of a helix.")]
1562  HRESULT Position([in] VARIANT StartPoint);
1563  [id(0x00000002), propget, helpstring("Specifies or returns the property that is contrained to remain constant when changing other properties of a helix.")]
1564  HRESULT Constrain([out, retval] AcHelixConstrainType* constrainType);
1565  [id(0x00000002), propput, helpstring("Specifies or returns the property that is contrained to remain constant when changing other properties of a helix.")]
1566  HRESULT Constrain([in] AcHelixConstrainType constrainType);
1567  [id(0x00000003), propget, helpstring("Specifies or returns the height of a helix.")]
1568  HRESULT Height([out, retval] double* Length);
1569  [id(0x00000003), propput, helpstring("Specifies or returns the height of a helix.")]
1570  HRESULT Height([in] double Length);
1571  [id(0x00000004), propget, helpstring("Specifies or returns the number of turns for a helix.")]
1572  HRESULT Turns([out, retval] ACAD_NOUNITS* Turns);
1573  [id(0x00000004), propput, helpstring("Specifies or returns the number of turns for a helix.")]
1574  HRESULT Turns([in] ACAD_NOUNITS Turns);
1575  [id(0x00000005), propget, helpstring("Specifies or returns the height of a single turn for a helix.")]
1576  HRESULT TurnHeight([out, retval] double* Distance);
1577  [id(0x00000005), propput, helpstring("Specifies or returns the height of a single turn for a helix.")]
1578  HRESULT TurnHeight([in] double Distance);
1579  [id(0x00000006), propget, helpstring("Specifies or returns the radius of the base of a helix.")]
1580  HRESULT BaseRadius([out, retval] double* Radius);
1581  [id(0x00000006), propput, helpstring("Specifies or returns the radius of the base of a helix.")]
1582  HRESULT BaseRadius([in] double Radius);
1583  [id(0x00000007), propget, helpstring("Specifies or returns the radius of the top of a helix.")]
1584  HRESULT TopRadius([out, retval] double* Radius);
1585  [id(0x00000007), propput, helpstring("Specifies or returns the radius of the top of a helix.")]
1586  HRESULT TopRadius([in] double Radius);
1587  [id(0x00000008), propget, helpstring("Specifies or returns the direction in which a helix turns.")]
1588  HRESULT Twist([out, retval] AcHelixTwistType* twistType);
1589  [id(0x00000008), propput, helpstring("Specifies or returns the direction in which a helix turns.")]
1590  HRESULT Twist([in] AcHelixTwistType twistType);
1591  [id(0x00000009), propget, helpstring("Returns the slope angle in which a helix turns along a path.")]
1592  HRESULT TurnSlope([out, retval] ACAD_ANGLE* slopeAngle);
1593  [id(0x0000000a), propget, helpstring("Specifies the length of a helix.")]
1594  HRESULT TotalLength([out, retval] double* TotalLength);
1595 };
1596 [
1597  odl,
1598  uuid(D076BB70-1090-4438-9922-3FD91BA4BB4A),
1599  dual,
1600  oleautomation
1601 ]
1602 interface IAcadUnderlay : IAcadEntity {
1603  [id(0x00000001), propget, helpstring("Specifies or returns the contrast of the underlay.")]
1604  HRESULT Contrast([out, retval] long* Contrast);
1605  [id(0x00000001), propput, helpstring("Specifies or returns the contrast of the underlay.")]
1606  HRESULT Contrast([in] long Contrast);
1607  [id(0x00000002), propget, helpstring("Specifies or returns the fade of the underlay.")]
1608  HRESULT Fade([out, retval] long* Fade);
1609  [id(0x00000002), propput, helpstring("Specifies or returns the fade of the underlay.")]
1610  HRESULT Fade([in] long Fade);
1611  [id(0x00000003), propget, helpstring("Specifies or returns the lower left point of the underlay position.")]
1612  HRESULT Position([out, retval] VARIANT* pos);
1613  [id(0x00000003), propput, helpstring("Specifies or returns the lower left point of the underlay position.")]
1614  HRESULT Position([in] VARIANT pos);
1615  [id(0x00000004), propget, helpstring("Specifies or returns the rotation of the underlay.")]
1616  HRESULT Rotation([out, retval] ACAD_ANGLE* rotAngle);
1617  [id(0x00000004), propput, helpstring("Specifies or returns the rotation of the underlay.")]
1618  HRESULT Rotation([in] ACAD_ANGLE rotAngle);
1619  [id(0x00000005), propget, helpstring("Specifies or returns the width of the underlay.")]
1620  HRESULT Width([out, retval] double* Width);
1621  [id(0x00000005), propput, helpstring("Specifies or returns the width of the underlay.")]
1622  HRESULT Width([in] double Width);
1623  [id(0x00000006), propget, helpstring("Specifies or returns the height of the underlay.")]
1624  HRESULT Height([out, retval] double* Height);
1625  [id(0x00000006), propput, helpstring("Specifies or returns the height of the underlay.")]
1626  HRESULT Height([in] double Height);
1627  [id(0x00000007), propget, helpstring("Specifies or returns the name of the underlay file.")]
1628  HRESULT UnderlayName([out, retval] BSTR* Name);
1629  [id(0x00000007), propput, helpstring("Specifies or returns the name of the underlay file.")]
1630  HRESULT UnderlayName([in] BSTR Name);
1631  [id(0x00000008), propput, helpstring("Specifies or returns the item name of the underlay file.")]
1632  HRESULT ItemName([in] BSTR sheetName);
1633  [id(0x00000008), propget, helpstring("Specifies or returns the item name of the underlay file.")]
1634  HRESULT ItemName([out, retval] BSTR* sheetName);
1635  [id(0x0000000a), propget, helpstring("Specifies or returns whether the underlay displays in monochrome.")]
1636  HRESULT Monochrome([out, retval] VARIANT_BOOL* bMono);
1637  [id(0x0000000a), propput, helpstring("Specifies or returns whether the underlay displays in monochrome.")]
1638  HRESULT Monochrome([in] VARIANT_BOOL bMono);
1639  [id(0x0000000f), propget, helpstring("Specifies or returns whether underlay colors are adjusted according to the background color.")]
1640  HRESULT AdjustForBackground([out, retval] VARIANT_BOOL* Value);
1641  [id(0x0000000f), propput, helpstring("Specifies or returns whether underlay colors are adjusted according to the background color")]
1642  HRESULT AdjustForBackground([in] VARIANT_BOOL Value);
1643  [id(0x0000000b), helpstring("Specifies an area for displaying and printing the underlay.")]
1644  HRESULT ClipBoundary([in] VARIANT boundry);
1645  [id(0x0000000c), propget, helpstring("Specifies or returns the scale factor of the underlay.")]
1646  HRESULT ScaleFactor([out, retval] ACAD_NOUNITS* ScaleFactor);
1647  [id(0x0000000c), propput, helpstring("Specifies or returns the scale factor of the underlay.")]
1648  HRESULT ScaleFactor([in] ACAD_NOUNITS ScaleFactor);
1649  [id(0x0000000d), propget, helpstring("Specifies or returns the path to the underlay file.")]
1650  HRESULT File([out, retval] BSTR* Name);
1651  [id(0x0000000d), propput, helpstring("Specifies or returns the path to the underlay file.")]
1652  HRESULT File([in] BSTR Name);
1653  [id(0x0000000e), propget, helpstring("Specifies or returns whether underlay displays in the drawing.")]
1654  HRESULT UnderlayVisibility([out, retval] VARIANT_BOOL* fVisible);
1655  [id(0x0000000e), propput, helpstring("Specifies or returns whether underlay displays in the drawing.")]
1656  HRESULT UnderlayVisibility([in] VARIANT_BOOL fVisible);
1657  [id(0x00000010), propget, helpstring("Specifies or returns whether the clipping boundary of the underlay is turned on.")]
1658  HRESULT ClippingEnabled([out, retval] VARIANT_BOOL* kClip);
1659  [id(0x00000010), propput, helpstring("Specifies or returns whether the clipping boundary of the underlay is turned on.")]
1660  HRESULT ClippingEnabled([in] VARIANT_BOOL kClip);
1661  [id(0x00000011), propget, helpstring("Specifies or returns whether the layers of a DWF underlay are applied.")]
1662  HRESULT UnderlayLayerOverrideApplied([out, retval] AcUnderlayLayerOverrideType* bOverride);
1663  [id(0x00000011), propput, helpstring("Specifies or returns whether the layers of a DWF underlay are applied.")]
1664  HRESULT UnderlayLayerOverrideApplied([in] AcUnderlayLayerOverrideType bOverride);
1665 };
1666 
1667 [
1668  odl,
1669  uuid(A095BF5E-B1A5-413f-A6EA-6E057C63CA59),
1670  dual,
1671  oleautomation
1672 ]
1673 interface IAcadDwfUnderlay : IAcadUnderlay {
1674  [id(0x00000012), propget, helpstring("Specifies the format of DWF file")]
1675  HRESULT DWFFormat([out, retval] BSTR* Name);
1676  [id(0x00000012), propput, helpstring("Specifies the format of DWF file")]
1677  HRESULT DWFFormat([in] BSTR Name);
1678 };
1679 
1680 [
1681  odl,
1682  uuid(88F4A330-80BA-4593-975B-BB2ACDC4E465),
1683  helpstring("Polyface mesh extended interface"),
1684  dual,
1685  oleautomation
1686 ]
1687 interface IOdaPolyfaceMesh : IAcadPolyfaceMesh
1688 {
1689  HRESULT GetFaces([out] VARIANT*);
1690 };
1691 
1692 [
1693  odl,
1694  uuid(70991FC5-F814-45a8-BB15-BC703AB5BF63),
1695  helpstring("SubEntity Interface"),
1696  dual,
1697  oleautomation
1698 ]
1699 interface IAcadSubEntity : IDispatch {
1700  [id(0x00000400)]
1701  HRESULT OnModified();
1702  [id(0x00000401), propget, helpstring("Gets the AutoCAD class name of the object")]
1703  HRESULT ObjectName([out, retval] BSTR* ObjectName);
1704  [id(0x00000516), propget, helpstring("Returns the true color of the object.")]
1705  HRESULT color([out, retval] IAcadAcCmColor** pColor);
1706  [id(0x00000516), propput, helpstring("Returns the true color of the object.")]
1707  HRESULT color([in] IAcadAcCmColor* pColor);
1708  [id(0x00000501), propget, helpstring("Specifies the current layer of the object")]
1709  HRESULT Layer([out, retval] BSTR* Layer);
1710  [id(0x00000502), propget, helpstring("Specifies the current linetype of the object")]
1711  HRESULT Linetype([out, retval] BSTR* Linetype);
1712  [id(0x00000503), propget, helpstring("Specifies the linetype scale factor of the object")]
1713  HRESULT LinetypeScale([out, retval] ACAD_NOUNITS* ltScale);
1714  [id(0x00000513), propget, helpstring("Specifies the plotstyle name for the object")]
1715  HRESULT PlotStyleName([out, retval] BSTR* plotStyle);
1716  [id(0x00000514), propget, helpstring("Specifies the lineweight for the object")]
1717  HRESULT Lineweight([out, retval] ACAD_LWEIGHT* Lineweight);
1718  [id(0x00000515), propget, helpstring("Assigns a hyperlink to an object and displays the hyperlink name or description (if one is specified)")]
1719  HRESULT Hyperlinks([out, retval] IAcadHyperlinks** Hyperlinks);
1720 };
1721 
1722 [
1723  odl,
1724  uuid(D0AC8EBF-1F76-43ef-9748-D7EE52AABE25),
1725  helpstring("AutoCAD Interface for Multi-Leader's Leader Line"),
1726  dual,
1727  oleautomation
1728 ]
1729 interface IAcadMLeaderLeader : IAcadSubEntity {
1730  [id(0x00000001), propget, helpstring("Specifies the leader type")]
1731  HRESULT LeaderType([out, retval] AcMLeaderType* Type);
1732  [id(0x00000001), propput, helpstring("Specifies the leader type")]
1733  HRESULT LeaderType([in] AcMLeaderType Type);
1734  [id(0x00000002), propget, helpstring("Specifies the color of the leader lines")]
1735  HRESULT LeaderLineColor([out, retval] IAcadAcCmColor** Type);
1736  [id(0x00000002), propput, helpstring("Specifies the color of the leader lines")]
1737  HRESULT LeaderLineColor([in] IAcadAcCmColor* Type);
1738  [id(0x00000003), propget, helpstring("Specifies the linetype of leader lines")]
1739  HRESULT LeaderLinetype([out, retval] ACAD_LTYPE* Linetype);
1740  [id(0x00000003), propput, helpstring("Specifies the linetype of leader lines")]
1741  HRESULT LeaderLinetype([in] ACAD_LTYPE Linetype);
1742  [id(0x00000004), propget, helpstring("Specifies the line weight of leader lines")]
1743  HRESULT LeaderLineWeight([out, retval] ACAD_LWEIGHT* Lineweight);
1744  [id(0x00000004), propput, helpstring("Specifies the line weight of leader lines")]
1745  HRESULT LeaderLineWeight([in] ACAD_LWEIGHT Lineweight);
1746  [id(0x00000005), propget, helpstring("Specifies the type of leader arrowhead")]
1747  HRESULT ArrowheadType([out, retval] AcDimArrowheadType* BlockName);
1748  [id(0x00000005), propput, helpstring("Specifies the type of leader arrowhead")]
1749  HRESULT ArrowheadType([in] AcDimArrowheadType BlockName);
1750  [id(0x00000006), propget, helpstring("Specifies the size of leader arrowhead")]
1751  HRESULT ArrowheadSize([out, retval] double* size);
1752  [id(0x00000006), propput, helpstring("Specifies the size of leader arrowhead")]
1753  HRESULT ArrowheadSize([in] double size);
1754  [id(0x00000007), propget, helpstring("Specifies the block to use as the custom arrowhead for leader lines of multileader")]
1755  HRESULT ArrowheadBlock([out, retval] BSTR* BlockName);
1756  [id(0x00000007), propput, helpstring("Specifies the block to use as the custom arrowhead for leader lines of multileader")]
1757  HRESULT ArrowheadBlock([in] BSTR BlockName);
1758 };
1759 
1760 [
1761  odl,
1762  uuid(9D76FD22-F78B-40b5-94A3-B8C0AB17A1E2),
1763  helpstring("Interface for a face on an AcDb3dSolid"),
1764  dual,
1765  oleautomation
1766 ]
1767 interface IAcadSubEntSolidFace : IAcadSubEntity {
1768  [id(0x00000577), propget, helpstring("Specifies the material")]
1769  HRESULT Material([out, retval] BSTR* Material);
1770  [id(0x00000577), propput, helpstring("Specifies the material")]
1771  HRESULT Material([in] BSTR Material);
1772 };
1773 
1774 [
1775  odl,
1776  uuid(EA82FD79-6DE0-445e-ABFB-541E52C91BB5),
1777  helpstring("Interface for a edge on an AcDb3dSolid"),
1778  dual,
1779  oleautomation
1780 ]
1781 interface IAcadSubEntSolidEdge : IAcadSubEntity {
1782 };
1783 
1784 [
1785  odl,
1786  uuid(45CF6C7D-7191-420a-9881-09042DD618ED),
1787  helpstring("Interface for a vertex on an AcDb3dSolid"),
1788  dual,
1789  oleautomation
1790 ]
1791 interface IAcadSubEntSolidVertex : IAcadSubEntity {
1792 };
1793 
1794 [
1795  odl,
1796  uuid(977345B6-A313-4f2e-A4EE-1C2BB3C2FE0E),
1797  helpstring("Interface for an Wipeout Raster Image"),
1798  dual,
1799  oleautomation
1800 ]
1801 interface IAcadWipeout : IAcadRasterImage {
1802 };
1803 #endif