home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 1998 November / pcwk_11_98a.iso / Wtestowe / SOFTSRC / vtrial15.exe / DATA.1 / Vobjects.cpp < prev    next >
C/C++ Source or Header  |  1997-10-08  |  466KB  |  21,490 lines

  1. // Machine generated IDispatch wrapper class(es) created with ClassWizard
  2.  
  3. #include "stdafx.h"
  4. #include "Vobjects.h"
  5.  
  6. #ifdef _DEBUG
  7. #define new DEBUG_NEW
  8. #undef THIS_FILE
  9. static char THIS_FILE[] = __FILE__;
  10. #endif
  11.  
  12.  
  13.  
  14. /////////////////////////////////////////////////////////////////////////////
  15. // IVdraft properties
  16.  
  17. LPDISPATCH IVdraft::GetApplication()
  18. {
  19.     LPDISPATCH result;
  20.     GetProperty(0x1, VT_DISPATCH, (void*)&result);
  21.     return result;
  22. }
  23.  
  24. LPDISPATCH IVdraft::GetParent()
  25. {
  26.     LPDISPATCH result;
  27.     GetProperty(0x2, VT_DISPATCH, (void*)&result);
  28.     return result;
  29. }
  30.  
  31. CString IVdraft::GetFullName()
  32. {
  33.     CString result;
  34.     GetProperty(0x3, VT_BSTR, (void*)&result);
  35.     return result;
  36. }
  37.  
  38. CString IVdraft::GetName()
  39. {
  40.     CString result;
  41.     GetProperty(0x4, VT_BSTR, (void*)&result);
  42.     return result;
  43. }
  44.  
  45. CString IVdraft::Get_Name()
  46. {
  47.     CString result;
  48.     GetProperty(0x0, VT_BSTR, (void*)&result);
  49.     return result;
  50. }
  51.  
  52. BOOL IVdraft::GetVisible()
  53. {
  54.     BOOL result;
  55.     GetProperty(0x5, VT_BOOL, (void*)&result);
  56.     return result;
  57. }
  58.  
  59. void IVdraft::SetVisible(BOOL propVal)
  60. {
  61.     SetProperty(0x5, VT_BOOL, propVal);
  62. }
  63.  
  64. BOOL IVdraft::GetMinimized()
  65. {
  66.     BOOL result;
  67.     GetProperty(0x6, VT_BOOL, (void*)&result);
  68.     return result;
  69. }
  70.  
  71. void IVdraft::SetMinimized(BOOL propVal)
  72. {
  73.     SetProperty(0x6, VT_BOOL, propVal);
  74. }
  75.  
  76. BOOL IVdraft::GetMaximized()
  77. {
  78.     BOOL result;
  79.     GetProperty(0x7, VT_BOOL, (void*)&result);
  80.     return result;
  81. }
  82.  
  83. void IVdraft::SetMaximized(BOOL propVal)
  84. {
  85.     SetProperty(0x7, VT_BOOL, propVal);
  86. }
  87.  
  88. LPDISPATCH IVdraft::GetActiveDocument()
  89. {
  90.     LPDISPATCH result;
  91.     GetProperty(0x8, VT_DISPATCH, (void*)&result);
  92.     return result;
  93. }
  94.  
  95. LPDISPATCH IVdraft::GetDocuments()
  96. {
  97.     LPDISPATCH result;
  98.     GetProperty(0x9, VT_DISPATCH, (void*)&result);
  99.     return result;
  100. }
  101.  
  102. LPDISPATCH IVdraft::GetEvents()
  103. {
  104.     LPDISPATCH result;
  105.     GetProperty(0xa, VT_DISPATCH, (void*)&result);
  106.     return result;
  107. }
  108.  
  109. long IVdraft::GetWindowHandle()
  110. {
  111.     long result;
  112.     GetProperty(0xe, VT_I4, (void*)&result);
  113.     return result;
  114. }
  115.  
  116. short IVdraft::GetVersionMajor()
  117. {
  118.     short result;
  119.     GetProperty(0xf, VT_I2, (void*)&result);
  120.     return result;
  121. }
  122.  
  123. short IVdraft::GetVersionMinor()
  124. {
  125.     short result;
  126.     GetProperty(0x10, VT_I2, (void*)&result);
  127.     return result;
  128. }
  129.  
  130. long IVdraft::GetSerialNumber()
  131. {
  132.     long result;
  133.     GetProperty(0x11, VT_I4, (void*)&result);
  134.     return result;
  135. }
  136.  
  137. /////////////////////////////////////////////////////////////////////////////
  138. // IVdraft operations
  139.  
  140. void IVdraft::Quit()
  141. {
  142.     InvokeHelper(0xb, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  143. }
  144.  
  145. LPDISPATCH IVdraft::NewVector(const VARIANT& x, const VARIANT& y, const VARIANT& z)
  146. {
  147.     LPDISPATCH result;
  148.     static BYTE parms[] =
  149.         VTS_VARIANT VTS_VARIANT VTS_VARIANT;
  150.     InvokeHelper(0xc, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  151.         &x, &y, &z);
  152.     return result;
  153. }
  154.  
  155. LPDISPATCH IVdraft::NewMatrix()
  156. {
  157.     LPDISPATCH result;
  158.     InvokeHelper(0xd, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, NULL);
  159.     return result;
  160. }
  161.  
  162. void IVdraft::Dialog()
  163. {
  164.     InvokeHelper(0x12, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  165. }
  166.  
  167.  
  168. /////////////////////////////////////////////////////////////////////////////
  169. // IApplicationEvents properties
  170.  
  171. LPDISPATCH IApplicationEvents::GetApplication()
  172. {
  173.     LPDISPATCH result;
  174.     GetProperty(0x10001, VT_DISPATCH, (void*)&result);
  175.     return result;
  176. }
  177.  
  178. LPDISPATCH IApplicationEvents::GetParent()
  179. {
  180.     LPDISPATCH result;
  181.     GetProperty(0x10002, VT_DISPATCH, (void*)&result);
  182.     return result;
  183. }
  184.  
  185. /////////////////////////////////////////////////////////////////////////////
  186. // IApplicationEvents operations
  187.  
  188. BOOL IApplicationEvents::AddToolsCommand(long addonid, long menuid, LPCTSTR menutext, LPCTSTR statusbar)
  189. {
  190.     BOOL result;
  191.     static BYTE parms[] =
  192.         VTS_I4 VTS_I4 VTS_BSTR VTS_BSTR;
  193.     InvokeHelper(0x1, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  194.         addonid, menuid, menutext, statusbar);
  195.     return result;
  196. }
  197.  
  198. BOOL IApplicationEvents::AddToolsOption(long addonid, long menuid, long eventid, LPCTSTR buttontext)
  199. {
  200.     BOOL result;
  201.     static BYTE parms[] =
  202.         VTS_I4 VTS_I4 VTS_I4 VTS_BSTR;
  203.     InvokeHelper(0x2, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  204.         addonid, menuid, eventid, buttontext);
  205.     return result;
  206. }
  207.  
  208. BOOL IApplicationEvents::RemoveToolsOption(long addonid, long menuid, long eventid)
  209. {
  210.     BOOL result;
  211.     static BYTE parms[] =
  212.         VTS_I4 VTS_I4 VTS_I4;
  213.     InvokeHelper(0x3, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  214.         addonid, menuid, eventid);
  215.     return result;
  216. }
  217.  
  218. BOOL IApplicationEvents::AddKeyboardCommand(long addonid, long eventid, LPCTSTR keystrokes)
  219. {
  220.     BOOL result;
  221.     static BYTE parms[] =
  222.         VTS_I4 VTS_I4 VTS_BSTR;
  223.     InvokeHelper(0x4, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  224.         addonid, eventid, keystrokes);
  225.     return result;
  226. }
  227.  
  228. BOOL IApplicationEvents::RegisterControl(LPDISPATCH channel)
  229. {
  230.     BOOL result;
  231.     static BYTE parms[] =
  232.         VTS_DISPATCH;
  233.     InvokeHelper(0x5, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  234.         channel);
  235.     return result;
  236. }
  237.  
  238. BOOL IApplicationEvents::UnregisterControl(long addonid)
  239. {
  240.     BOOL result;
  241.     static BYTE parms[] =
  242.         VTS_I4;
  243.     InvokeHelper(0x6, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  244.         addonid);
  245.     return result;
  246. }
  247.  
  248.  
  249. /////////////////////////////////////////////////////////////////////////////
  250. // IDocuments properties
  251.  
  252. LPDISPATCH IDocuments::GetApplication()
  253. {
  254.     LPDISPATCH result;
  255.     GetProperty(0x10001, VT_DISPATCH, (void*)&result);
  256.     return result;
  257. }
  258.  
  259. LPDISPATCH IDocuments::GetParent()
  260. {
  261.     LPDISPATCH result;
  262.     GetProperty(0x10002, VT_DISPATCH, (void*)&result);
  263.     return result;
  264. }
  265.  
  266. long IDocuments::GetCount()
  267. {
  268.     long result;
  269.     GetProperty(0x1, VT_I4, (void*)&result);
  270.     return result;
  271. }
  272.  
  273. /////////////////////////////////////////////////////////////////////////////
  274. // IDocuments operations
  275.  
  276. LPDISPATCH IDocuments::GetItem(const VARIANT& which)
  277. {
  278.     LPDISPATCH result;
  279.     static BYTE parms[] =
  280.         VTS_VARIANT;
  281.     InvokeHelper(0x2, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  282.         &which);
  283.     return result;
  284. }
  285.  
  286. LPDISPATCH IDocuments::Get_Item(const VARIANT& which)
  287. {
  288.     LPDISPATCH result;
  289.     static BYTE parms[] =
  290.         VTS_VARIANT;
  291.     InvokeHelper(0x0, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  292.         &which);
  293.     return result;
  294. }
  295.  
  296. LPDISPATCH IDocuments::Add(const VARIANT& Name)
  297. {
  298.     LPDISPATCH result;
  299.     static BYTE parms[] =
  300.         VTS_VARIANT;
  301.     InvokeHelper(0x3, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  302.         &Name);
  303.     return result;
  304. }
  305.  
  306. LPDISPATCH IDocuments::New(const VARIANT& Name)
  307. {
  308.     LPDISPATCH result;
  309.     static BYTE parms[] =
  310.         VTS_VARIANT;
  311.     InvokeHelper(0x4, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  312.         &Name);
  313.     return result;
  314. }
  315.  
  316. void IDocuments::Close()
  317. {
  318.     InvokeHelper(0x5, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  319. }
  320.  
  321. void IDocuments::CloseOut()
  322. {
  323.     InvokeHelper(0x6, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  324. }
  325.  
  326. void IDocuments::Save()
  327. {
  328.     InvokeHelper(0x7, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  329. }
  330.  
  331. void IDocuments::Print()
  332. {
  333.     InvokeHelper(0x8, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  334. }
  335.  
  336. void IDocuments::PrintAll()
  337. {
  338.     InvokeHelper(0x9, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  339. }
  340.  
  341.  
  342. /////////////////////////////////////////////////////////////////////////////
  343. // IDocument properties
  344.  
  345. LPDISPATCH IDocument::GetApplication()
  346. {
  347.     LPDISPATCH result;
  348.     GetProperty(0x1, VT_DISPATCH, (void*)&result);
  349.     return result;
  350. }
  351.  
  352. LPDISPATCH IDocument::GetParent()
  353. {
  354.     LPDISPATCH result;
  355.     GetProperty(0x2, VT_DISPATCH, (void*)&result);
  356.     return result;
  357. }
  358.  
  359. CString IDocument::GetFullName()
  360. {
  361.     CString result;
  362.     GetProperty(0x3, VT_BSTR, (void*)&result);
  363.     return result;
  364. }
  365.  
  366. CString IDocument::GetName()
  367. {
  368.     CString result;
  369.     GetProperty(0x4, VT_BSTR, (void*)&result);
  370.     return result;
  371. }
  372.  
  373. CString IDocument::Get_Name()
  374. {
  375.     CString result;
  376.     GetProperty(0x0, VT_BSTR, (void*)&result);
  377.     return result;
  378. }
  379.  
  380. CString IDocument::GetPath()
  381. {
  382.     CString result;
  383.     GetProperty(0x5, VT_BSTR, (void*)&result);
  384.     return result;
  385. }
  386.  
  387. BOOL IDocument::GetSaved()
  388. {
  389.     BOOL result;
  390.     GetProperty(0x6, VT_BOOL, (void*)&result);
  391.     return result;
  392. }
  393.  
  394. LPDISPATCH IDocument::GetEntitySnap()
  395. {
  396.     LPDISPATCH result;
  397.     GetProperty(0x7, VT_DISPATCH, (void*)&result);
  398.     return result;
  399. }
  400.  
  401. LPDISPATCH IDocument::GetUnits()
  402. {
  403.     LPDISPATCH result;
  404.     GetProperty(0x8, VT_DISPATCH, (void*)&result);
  405.     return result;
  406. }
  407.  
  408. LPDISPATCH IDocument::GetEntities()
  409. {
  410.     LPDISPATCH result;
  411.     GetProperty(0x9, VT_DISPATCH, (void*)&result);
  412.     return result;
  413. }
  414.  
  415. LPDISPATCH IDocument::GetApplicationIDs()
  416. {
  417.     LPDISPATCH result;
  418.     GetProperty(0xa, VT_DISPATCH, (void*)&result);
  419.     return result;
  420. }
  421.  
  422. LPDISPATCH IDocument::GetLayers()
  423. {
  424.     LPDISPATCH result;
  425.     GetProperty(0xb, VT_DISPATCH, (void*)&result);
  426.     return result;
  427. }
  428.  
  429. LPDISPATCH IDocument::GetLinetypes()
  430. {
  431.     LPDISPATCH result;
  432.     GetProperty(0xc, VT_DISPATCH, (void*)&result);
  433.     return result;
  434. }
  435.  
  436. LPDISPATCH IDocument::GetBlocks()
  437. {
  438.     LPDISPATCH result;
  439.     GetProperty(0xd, VT_DISPATCH, (void*)&result);
  440.     return result;
  441. }
  442.  
  443. LPDISPATCH IDocument::GetDimStyles()
  444. {
  445.     LPDISPATCH result;
  446.     GetProperty(0xe, VT_DISPATCH, (void*)&result);
  447.     return result;
  448. }
  449.  
  450. LPDISPATCH IDocument::GetTextStyles()
  451. {
  452.     LPDISPATCH result;
  453.     GetProperty(0xf, VT_DISPATCH, (void*)&result);
  454.     return result;
  455. }
  456.  
  457. LPDISPATCH IDocument::GetUcses()
  458. {
  459.     LPDISPATCH result;
  460.     GetProperty(0x10, VT_DISPATCH, (void*)&result);
  461.     return result;
  462. }
  463.  
  464. LPDISPATCH IDocument::GetNamedViews()
  465. {
  466.     LPDISPATCH result;
  467.     GetProperty(0x11, VT_DISPATCH, (void*)&result);
  468.     return result;
  469. }
  470.  
  471. LPDISPATCH IDocument::GetViews()
  472. {
  473.     LPDISPATCH result;
  474.     GetProperty(0x12, VT_DISPATCH, (void*)&result);
  475.     return result;
  476. }
  477.  
  478. LPDISPATCH IDocument::GetCommands()
  479. {
  480.     LPDISPATCH result;
  481.     GetProperty(0x13, VT_DISPATCH, (void*)&result);
  482.     return result;
  483. }
  484.  
  485. LPDISPATCH IDocument::GetColors()
  486. {
  487.     LPDISPATCH result;
  488.     GetProperty(0x14, VT_DISPATCH, (void*)&result);
  489.     return result;
  490. }
  491.  
  492. LPDISPATCH IDocument::GetSelection()
  493. {
  494.     LPDISPATCH result;
  495.     GetProperty(0x15, VT_DISPATCH, (void*)&result);
  496.     return result;
  497. }
  498.  
  499. CString IDocument::GetStatusbar()
  500. {
  501.     CString result;
  502.     GetProperty(0x16, VT_BSTR, (void*)&result);
  503.     return result;
  504. }
  505.  
  506. void IDocument::SetStatusbar(LPCTSTR propVal)
  507. {
  508.     SetProperty(0x16, VT_BSTR, propVal);
  509. }
  510.  
  511. LPDISPATCH IDocument::GetHeader()
  512. {
  513.     LPDISPATCH result;
  514.     GetProperty(0x17, VT_DISPATCH, (void*)&result);
  515.     return result;
  516. }
  517.  
  518. LPDISPATCH IDocument::GetPickEvents()
  519. {
  520.     LPDISPATCH result;
  521.     GetProperty(0x18, VT_DISPATCH, (void*)&result);
  522.     return result;
  523. }
  524.  
  525. LPDISPATCH IDocument::GetSelectionEvents()
  526. {
  527.     LPDISPATCH result;
  528.     GetProperty(0x19, VT_DISPATCH, (void*)&result);
  529.     return result;
  530. }
  531.  
  532. BOOL IDocument::GetVisible()
  533. {
  534.     BOOL result;
  535.     GetProperty(0x27, VT_BOOL, (void*)&result);
  536.     return result;
  537. }
  538.  
  539. void IDocument::SetVisible(BOOL propVal)
  540. {
  541.     SetProperty(0x27, VT_BOOL, propVal);
  542. }
  543.  
  544. BOOL IDocument::GetMinimized()
  545. {
  546.     BOOL result;
  547.     GetProperty(0x28, VT_BOOL, (void*)&result);
  548.     return result;
  549. }
  550.  
  551. void IDocument::SetMinimized(BOOL propVal)
  552. {
  553.     SetProperty(0x28, VT_BOOL, propVal);
  554. }
  555.  
  556. BOOL IDocument::GetMaximized()
  557. {
  558.     BOOL result;
  559.     GetProperty(0x29, VT_BOOL, (void*)&result);
  560.     return result;
  561. }
  562.  
  563. void IDocument::SetMaximized(BOOL propVal)
  564. {
  565.     SetProperty(0x29, VT_BOOL, propVal);
  566. }
  567.  
  568. long IDocument::GetWindowHandle()
  569. {
  570.     long result;
  571.     GetProperty(0x2a, VT_I4, (void*)&result);
  572.     return result;
  573. }
  574.  
  575. /////////////////////////////////////////////////////////////////////////////
  576. // IDocument operations
  577.  
  578. void IDocument::Activate()
  579. {
  580.     InvokeHelper(0x1a, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  581. }
  582.  
  583. void IDocument::Print(const VARIANT& copies)
  584. {
  585.     static BYTE parms[] =
  586.         VTS_VARIANT;
  587.     InvokeHelper(0x1b, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  588.          &copies);
  589. }
  590.  
  591. void IDocument::PrintOut(const VARIANT& copies)
  592. {
  593.     static BYTE parms[] =
  594.         VTS_VARIANT;
  595.     InvokeHelper(0x1c, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  596.          &copies);
  597. }
  598.  
  599. void IDocument::PrintSetup()
  600. {
  601.     InvokeHelper(0x1d, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  602. }
  603.  
  604. void IDocument::PrintPreview()
  605. {
  606.     InvokeHelper(0x1e, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  607. }
  608.  
  609. void IDocument::PrintPreviewClose()
  610. {
  611.     InvokeHelper(0x1f, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  612. }
  613.  
  614. void IDocument::Save()
  615. {
  616.     InvokeHelper(0x20, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  617. }
  618.  
  619. void IDocument::SaveAs(LPCTSTR filename)
  620. {
  621.     static BYTE parms[] =
  622.         VTS_BSTR;
  623.     InvokeHelper(0x21, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  624.          filename);
  625. }
  626.  
  627. void IDocument::Close(const VARIANT& savechanges, const VARIANT& filename)
  628. {
  629.     static BYTE parms[] =
  630.         VTS_VARIANT VTS_VARIANT;
  631.     InvokeHelper(0x22, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  632.          &savechanges, &filename);
  633. }
  634.  
  635. void IDocument::CloseOut(const VARIANT& savechanges, const VARIANT& filename)
  636. {
  637.     static BYTE parms[] =
  638.         VTS_VARIANT VTS_VARIANT;
  639.     InvokeHelper(0x23, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  640.          &savechanges, &filename);
  641. }
  642.  
  643. void IDocument::Redraw()
  644. {
  645.     InvokeHelper(0x24, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  646. }
  647.  
  648. void IDocument::Regen()
  649. {
  650.     InvokeHelper(0x25, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  651. }
  652.  
  653. LPDISPATCH IDocument::NewEntitySet()
  654. {
  655.     LPDISPATCH result;
  656.     InvokeHelper(0x26, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, NULL);
  657.     return result;
  658. }
  659.  
  660. void IDocument::Dialog()
  661. {
  662.     InvokeHelper(0x2b, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  663. }
  664.  
  665.  
  666. /////////////////////////////////////////////////////////////////////////////
  667. // IVector properties
  668.  
  669. LPDISPATCH IVector::GetApplication()
  670. {
  671.     LPDISPATCH result;
  672.     GetProperty(0x10001, VT_DISPATCH, (void*)&result);
  673.     return result;
  674. }
  675.  
  676. LPDISPATCH IVector::GetParent()
  677. {
  678.     LPDISPATCH result;
  679.     GetProperty(0x10002, VT_DISPATCH, (void*)&result);
  680.     return result;
  681. }
  682.  
  683. double IVector::GetX()
  684. {
  685.     double result;
  686.     GetProperty(0x1, VT_R8, (void*)&result);
  687.     return result;
  688. }
  689.  
  690. void IVector::SetX(double propVal)
  691. {
  692.     SetProperty(0x1, VT_R8, propVal);
  693. }
  694.  
  695. double IVector::GetY()
  696. {
  697.     double result;
  698.     GetProperty(0x2, VT_R8, (void*)&result);
  699.     return result;
  700. }
  701.  
  702. void IVector::SetY(double propVal)
  703. {
  704.     SetProperty(0x2, VT_R8, propVal);
  705. }
  706.  
  707. double IVector::GetZ()
  708. {
  709.     double result;
  710.     GetProperty(0x3, VT_R8, (void*)&result);
  711.     return result;
  712. }
  713.  
  714. void IVector::SetZ(double propVal)
  715. {
  716.     SetProperty(0x3, VT_R8, propVal);
  717. }
  718.  
  719. double IVector::GetLength()
  720. {
  721.     double result;
  722.     GetProperty(0x4, VT_R8, (void*)&result);
  723.     return result;
  724. }
  725.  
  726. double IVector::GetLengthSquared()
  727. {
  728.     double result;
  729.     GetProperty(0x5, VT_R8, (void*)&result);
  730.     return result;
  731. }
  732.  
  733. double IVector::GetAngle()
  734. {
  735.     double result;
  736.     GetProperty(0x15, VT_R8, (void*)&result);
  737.     return result;
  738. }
  739.  
  740. /////////////////////////////////////////////////////////////////////////////
  741. // IVector operations
  742.  
  743. void IVector::CopyFrom(LPDISPATCH vector)
  744. {
  745.     static BYTE parms[] =
  746.         VTS_DISPATCH;
  747.     InvokeHelper(0x6, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  748.          vector);
  749. }
  750.  
  751. void IVector::AddIn(LPDISPATCH vector)
  752. {
  753.     static BYTE parms[] =
  754.         VTS_DISPATCH;
  755.     InvokeHelper(0x7, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  756.          vector);
  757. }
  758.  
  759. void IVector::SubtractAway(LPDISPATCH vector)
  760. {
  761.     static BYTE parms[] =
  762.         VTS_DISPATCH;
  763.     InvokeHelper(0x8, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  764.          vector);
  765. }
  766.  
  767. void IVector::MultiplyBy(LPDISPATCH vector)
  768. {
  769.     static BYTE parms[] =
  770.         VTS_DISPATCH;
  771.     InvokeHelper(0x9, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  772.          vector);
  773. }
  774.  
  775. void IVector::DivideBy(LPDISPATCH vector)
  776. {
  777.     static BYTE parms[] =
  778.         VTS_DISPATCH;
  779.     InvokeHelper(0xa, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  780.          vector);
  781. }
  782.  
  783. void IVector::ScaleBy(double factor)
  784. {
  785.     static BYTE parms[] =
  786.         VTS_R8;
  787.     InvokeHelper(0xb, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  788.          factor);
  789. }
  790.  
  791. double IVector::Distance(LPDISPATCH vector)
  792. {
  793.     double result;
  794.     static BYTE parms[] =
  795.         VTS_DISPATCH;
  796.     InvokeHelper(0xc, DISPATCH_METHOD, VT_R8, (void*)&result, parms,
  797.         vector);
  798.     return result;
  799. }
  800.  
  801. BOOL IVector::Normalize()
  802. {
  803.     BOOL result;
  804.     InvokeHelper(0xd, DISPATCH_METHOD, VT_BOOL, (void*)&result, NULL);
  805.     return result;
  806. }
  807.  
  808. double IVector::DotProduct(LPDISPATCH vector)
  809. {
  810.     double result;
  811.     static BYTE parms[] =
  812.         VTS_DISPATCH;
  813.     InvokeHelper(0xe, DISPATCH_METHOD, VT_R8, (void*)&result, parms,
  814.         vector);
  815.     return result;
  816. }
  817.  
  818. LPDISPATCH IVector::CrossProduct(LPDISPATCH vector)
  819. {
  820.     LPDISPATCH result;
  821.     static BYTE parms[] =
  822.         VTS_DISPATCH;
  823.     InvokeHelper(0xf, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  824.         vector);
  825.     return result;
  826. }
  827.  
  828. void IVector::Set(double x, double y, const VARIANT& z)
  829. {
  830.     static BYTE parms[] =
  831.         VTS_R8 VTS_R8 VTS_VARIANT;
  832.     InvokeHelper(0x10, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  833.          x, y, &z);
  834. }
  835.  
  836. void IVector::Set2D(double x, double y)
  837. {
  838.     static BYTE parms[] =
  839.         VTS_R8 VTS_R8;
  840.     InvokeHelper(0x11, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  841.          x, y);
  842. }
  843.  
  844. void IVector::Set3D(double x, double y, double z)
  845. {
  846.     static BYTE parms[] =
  847.         VTS_R8 VTS_R8 VTS_R8;
  848.     InvokeHelper(0x12, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  849.          x, y, z);
  850. }
  851.  
  852. void IVector::Detach()
  853. {
  854.     InvokeHelper(0x13, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  855. }
  856.  
  857. CString IVector::Dump()
  858. {
  859.     CString result;
  860.     InvokeHelper(0x14, DISPATCH_METHOD, VT_BSTR, (void*)&result, NULL);
  861.     return result;
  862. }
  863.  
  864. CString IVector::_Dump()
  865. {
  866.     CString result;
  867.     InvokeHelper(0x0, DISPATCH_METHOD, VT_BSTR, (void*)&result, NULL);
  868.     return result;
  869. }
  870.  
  871.  
  872. /////////////////////////////////////////////////////////////////////////////
  873. // IVectors properties
  874.  
  875. LPDISPATCH IVectors::GetApplication()
  876. {
  877.     LPDISPATCH result;
  878.     GetProperty(0x10001, VT_DISPATCH, (void*)&result);
  879.     return result;
  880. }
  881.  
  882. LPDISPATCH IVectors::GetParent()
  883. {
  884.     LPDISPATCH result;
  885.     GetProperty(0x10002, VT_DISPATCH, (void*)&result);
  886.     return result;
  887. }
  888.  
  889. long IVectors::GetCount()
  890. {
  891.     long result;
  892.     GetProperty(0x1, VT_I4, (void*)&result);
  893.     return result;
  894. }
  895.  
  896. /////////////////////////////////////////////////////////////////////////////
  897. // IVectors operations
  898.  
  899. LPDISPATCH IVectors::GetItem(long which)
  900. {
  901.     LPDISPATCH result;
  902.     static BYTE parms[] =
  903.         VTS_I4;
  904.     InvokeHelper(0x2, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  905.         which);
  906.     return result;
  907. }
  908.  
  909. void IVectors::SetItem(long which, LPDISPATCH newValue)
  910. {
  911.     static BYTE parms[] =
  912.         VTS_I4 VTS_DISPATCH;
  913.     InvokeHelper(0x2, DISPATCH_PROPERTYPUTREF, VT_EMPTY, NULL, parms,
  914.          which, newValue);
  915. }
  916.  
  917. LPDISPATCH IVectors::Get_Item(long which)
  918. {
  919.     LPDISPATCH result;
  920.     static BYTE parms[] =
  921.         VTS_I4;
  922.     InvokeHelper(0x0, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  923.         which);
  924.     return result;
  925. }
  926.  
  927. void IVectors::Set_Item(long which, LPDISPATCH newValue)
  928. {
  929.     static BYTE parms[] =
  930.         VTS_I4 VTS_DISPATCH;
  931.     InvokeHelper(0x0, DISPATCH_PROPERTYPUTREF, VT_EMPTY, NULL, parms,
  932.          which, newValue);
  933. }
  934.  
  935. void IVectors::Add(LPDISPATCH vector)
  936. {
  937.     static BYTE parms[] =
  938.         VTS_DISPATCH;
  939.     InvokeHelper(0x3, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  940.          vector);
  941. }
  942.  
  943.  
  944. /////////////////////////////////////////////////////////////////////////////
  945. // IMatrix properties
  946.  
  947. LPDISPATCH IMatrix::GetApplication()
  948. {
  949.     LPDISPATCH result;
  950.     GetProperty(0x10001, VT_DISPATCH, (void*)&result);
  951.     return result;
  952. }
  953.  
  954. LPDISPATCH IMatrix::GetParent()
  955. {
  956.     LPDISPATCH result;
  957.     GetProperty(0x10002, VT_DISPATCH, (void*)&result);
  958.     return result;
  959. }
  960.  
  961. /////////////////////////////////////////////////////////////////////////////
  962. // IMatrix operations
  963.  
  964. LPDISPATCH IMatrix::GetItem(long which)
  965. {
  966.     LPDISPATCH result;
  967.     static BYTE parms[] =
  968.         VTS_I4;
  969.     InvokeHelper(0x1, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  970.         which);
  971.     return result;
  972. }
  973.  
  974. void IMatrix::SetItem(long which, LPDISPATCH newValue)
  975. {
  976.     static BYTE parms[] =
  977.         VTS_I4 VTS_DISPATCH;
  978.     InvokeHelper(0x1, DISPATCH_PROPERTYPUTREF, VT_EMPTY, NULL, parms,
  979.          which, newValue);
  980. }
  981.  
  982. LPDISPATCH IMatrix::Get_Item(long which)
  983. {
  984.     LPDISPATCH result;
  985.     static BYTE parms[] =
  986.         VTS_I4;
  987.     InvokeHelper(0x0, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  988.         which);
  989.     return result;
  990. }
  991.  
  992. void IMatrix::Set_Item(long which, LPDISPATCH newValue)
  993. {
  994.     static BYTE parms[] =
  995.         VTS_I4 VTS_DISPATCH;
  996.     InvokeHelper(0x0, DISPATCH_PROPERTYPUTREF, VT_EMPTY, NULL, parms,
  997.          which, newValue);
  998. }
  999.  
  1000. void IMatrix::Id()
  1001. {
  1002.     InvokeHelper(0x2, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  1003. }
  1004.  
  1005. void IMatrix::CopyFrom(LPDISPATCH matrix)
  1006. {
  1007.     static BYTE parms[] =
  1008.         VTS_DISPATCH;
  1009.     InvokeHelper(0x3, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  1010.          matrix);
  1011. }
  1012.  
  1013. void IMatrix::ECStoWCS(LPDISPATCH normal)
  1014. {
  1015.     static BYTE parms[] =
  1016.         VTS_DISPATCH;
  1017.     InvokeHelper(0x4, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  1018.          normal);
  1019. }
  1020.  
  1021. void IMatrix::WCStoECS(LPDISPATCH normal)
  1022. {
  1023.     static BYTE parms[] =
  1024.         VTS_DISPATCH;
  1025.     InvokeHelper(0x5, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  1026.          normal);
  1027. }
  1028.  
  1029. void IMatrix::Translation(LPDISPATCH offset)
  1030. {
  1031.     static BYTE parms[] =
  1032.         VTS_DISPATCH;
  1033.     InvokeHelper(0x6, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  1034.          offset);
  1035. }
  1036.  
  1037. void IMatrix::Rotation(double Angle, const VARIANT& basepoint, const VARIANT& normal)
  1038. {
  1039.     static BYTE parms[] =
  1040.         VTS_R8 VTS_VARIANT VTS_VARIANT;
  1041.     InvokeHelper(0x7, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  1042.          Angle, &basepoint, &normal);
  1043. }
  1044.  
  1045. void IMatrix::Scaling(LPDISPATCH factors, const VARIANT& basepoint, const VARIANT& normal)
  1046. {
  1047.     static BYTE parms[] =
  1048.         VTS_DISPATCH VTS_VARIANT VTS_VARIANT;
  1049.     InvokeHelper(0x8, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  1050.          factors, &basepoint, &normal);
  1051. }
  1052.  
  1053. void IMatrix::Mirror(LPDISPATCH one, LPDISPATCH two, const VARIANT& normal)
  1054. {
  1055.     static BYTE parms[] =
  1056.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  1057.     InvokeHelper(0x9, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  1058.          one, two, &normal);
  1059. }
  1060.  
  1061. void IMatrix::Transform(LPDISPATCH point)
  1062. {
  1063.     static BYTE parms[] =
  1064.         VTS_DISPATCH;
  1065.     InvokeHelper(0xa, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  1066.          point);
  1067. }
  1068.  
  1069.  
  1070. /////////////////////////////////////////////////////////////////////////////
  1071. // IHeader properties
  1072.  
  1073. LPDISPATCH IHeader::GetApplication()
  1074. {
  1075.     LPDISPATCH result;
  1076.     GetProperty(0x10001, VT_DISPATCH, (void*)&result);
  1077.     return result;
  1078. }
  1079.  
  1080. LPDISPATCH IHeader::GetParent()
  1081. {
  1082.     LPDISPATCH result;
  1083.     GetProperty(0x10002, VT_DISPATCH, (void*)&result);
  1084.     return result;
  1085. }
  1086.  
  1087. BOOL IHeader::GetAttributeDialog()
  1088. {
  1089.     BOOL result;
  1090.     GetProperty(0x1, VT_BOOL, (void*)&result);
  1091.     return result;
  1092. }
  1093.  
  1094. void IHeader::SetAttributeDialog(BOOL propVal)
  1095. {
  1096.     SetProperty(0x1, VT_BOOL, propVal);
  1097. }
  1098.  
  1099. long IHeader::GetAttributeMode()
  1100. {
  1101.     long result;
  1102.     GetProperty(0x2, VT_I4, (void*)&result);
  1103.     return result;
  1104. }
  1105.  
  1106. void IHeader::SetAttributeMode(long propVal)
  1107. {
  1108.     SetProperty(0x2, VT_I4, propVal);
  1109. }
  1110.  
  1111. BOOL IHeader::GetAttributeRequest()
  1112. {
  1113.     BOOL result;
  1114.     GetProperty(0x3, VT_BOOL, (void*)&result);
  1115.     return result;
  1116. }
  1117.  
  1118. void IHeader::SetAttributeRequest(BOOL propVal)
  1119. {
  1120.     SetProperty(0x3, VT_BOOL, propVal);
  1121. }
  1122.  
  1123. BOOL IHeader::GetAxisMode()
  1124. {
  1125.     BOOL result;
  1126.     GetProperty(0x4, VT_BOOL, (void*)&result);
  1127.     return result;
  1128. }
  1129.  
  1130. void IHeader::SetAxisMode(BOOL propVal)
  1131. {
  1132.     SetProperty(0x4, VT_BOOL, propVal);
  1133. }
  1134.  
  1135. LPDISPATCH IHeader::GetAxisUnit()
  1136. {
  1137.     LPDISPATCH result;
  1138.     GetProperty(0x5, VT_DISPATCH, (void*)&result);
  1139.     return result;
  1140. }
  1141.  
  1142. void IHeader::SetAxisUnit(LPDISPATCH propVal)
  1143. {
  1144.     SetProperty(0x5, VT_DISPATCH, propVal);
  1145. }
  1146.  
  1147. BOOL IHeader::GetBlipMode()
  1148. {
  1149.     BOOL result;
  1150.     GetProperty(0x6, VT_BOOL, (void*)&result);
  1151.     return result;
  1152. }
  1153.  
  1154. void IHeader::SetBlipMode(BOOL propVal)
  1155. {
  1156.     SetProperty(0x6, VT_BOOL, propVal);
  1157. }
  1158.  
  1159. long IHeader::GetCirclePrecision()
  1160. {
  1161.     long result;
  1162.     GetProperty(0x7, VT_I4, (void*)&result);
  1163.     return result;
  1164. }
  1165.  
  1166. void IHeader::SetCirclePrecision(long propVal)
  1167. {
  1168.     SetProperty(0x7, VT_I4, propVal);
  1169. }
  1170.  
  1171. long IHeader::GetCoordinateDisplay()
  1172. {
  1173.     long result;
  1174.     GetProperty(0x8, VT_I4, (void*)&result);
  1175.     return result;
  1176. }
  1177.  
  1178. void IHeader::SetCoordinateDisplay(long propVal)
  1179. {
  1180.     SetProperty(0x8, VT_I4, propVal);
  1181. }
  1182.  
  1183. double IHeader::GetCurrentElevation()
  1184. {
  1185.     double result;
  1186.     GetProperty(0x9, VT_R8, (void*)&result);
  1187.     return result;
  1188. }
  1189.  
  1190. void IHeader::SetCurrentElevation(double propVal)
  1191. {
  1192.     SetProperty(0x9, VT_R8, propVal);
  1193. }
  1194.  
  1195. double IHeader::GetCurrentThickness()
  1196. {
  1197.     double result;
  1198.     GetProperty(0xa, VT_R8, (void*)&result);
  1199.     return result;
  1200. }
  1201.  
  1202. void IHeader::SetCurrentThickness(double propVal)
  1203. {
  1204.     SetProperty(0xa, VT_R8, propVal);
  1205. }
  1206.  
  1207. long IHeader::GetDragMode()
  1208. {
  1209.     long result;
  1210.     GetProperty(0xb, VT_I4, (void*)&result);
  1211.     return result;
  1212. }
  1213.  
  1214. void IHeader::SetDragMode(long propVal)
  1215. {
  1216.     SetProperty(0xb, VT_I4, propVal);
  1217. }
  1218.  
  1219. long IHeader::GetDrawingCodePage()
  1220. {
  1221.     long result;
  1222.     GetProperty(0xc, VT_I4, (void*)&result);
  1223.     return result;
  1224. }
  1225.  
  1226. void IHeader::SetDrawingCodePage(long propVal)
  1227. {
  1228.     SetProperty(0xc, VT_I4, propVal);
  1229. }
  1230.  
  1231. BOOL IHeader::GetFastZoom()
  1232. {
  1233.     BOOL result;
  1234.     GetProperty(0xd, VT_BOOL, (void*)&result);
  1235.     return result;
  1236. }
  1237.  
  1238. void IHeader::SetFastZoom(BOOL propVal)
  1239. {
  1240.     SetProperty(0xd, VT_BOOL, propVal);
  1241. }
  1242.  
  1243. BOOL IHeader::GetFillMode()
  1244. {
  1245.     BOOL result;
  1246.     GetProperty(0xe, VT_BOOL, (void*)&result);
  1247.     return result;
  1248. }
  1249.  
  1250. void IHeader::SetFillMode(BOOL propVal)
  1251. {
  1252.     SetProperty(0xe, VT_BOOL, propVal);
  1253. }
  1254.  
  1255. BOOL IHeader::GetFlatLand()
  1256. {
  1257.     BOOL result;
  1258.     GetProperty(0xf, VT_BOOL, (void*)&result);
  1259.     return result;
  1260. }
  1261.  
  1262. void IHeader::SetFlatLand(BOOL propVal)
  1263. {
  1264.     SetProperty(0xf, VT_BOOL, propVal);
  1265. }
  1266.  
  1267. BOOL IHeader::GetHandles()
  1268. {
  1269.     BOOL result;
  1270.     GetProperty(0x10, VT_BOOL, (void*)&result);
  1271.     return result;
  1272. }
  1273.  
  1274. void IHeader::SetHandles(BOOL propVal)
  1275. {
  1276.     SetProperty(0x10, VT_BOOL, propVal);
  1277. }
  1278.  
  1279. CString IHeader::GetHandleSeed()
  1280. {
  1281.     CString result;
  1282.     GetProperty(0x11, VT_BSTR, (void*)&result);
  1283.     return result;
  1284. }
  1285.  
  1286. void IHeader::SetHandleSeed(LPCTSTR propVal)
  1287. {
  1288.     SetProperty(0x11, VT_BSTR, propVal);
  1289. }
  1290.  
  1291. LPDISPATCH IHeader::GetLimitsMax()
  1292. {
  1293.     LPDISPATCH result;
  1294.     GetProperty(0x12, VT_DISPATCH, (void*)&result);
  1295.     return result;
  1296. }
  1297.  
  1298. void IHeader::SetLimitsMax(LPDISPATCH propVal)
  1299. {
  1300.     SetProperty(0x12, VT_DISPATCH, propVal);
  1301. }
  1302.  
  1303. LPDISPATCH IHeader::GetLimitsMin()
  1304. {
  1305.     LPDISPATCH result;
  1306.     GetProperty(0x13, VT_DISPATCH, (void*)&result);
  1307.     return result;
  1308. }
  1309.  
  1310. void IHeader::SetLimitsMin(LPDISPATCH propVal)
  1311. {
  1312.     SetProperty(0x13, VT_DISPATCH, propVal);
  1313. }
  1314.  
  1315. BOOL IHeader::GetLimitsCheck()
  1316. {
  1317.     BOOL result;
  1318.     GetProperty(0x14, VT_BOOL, (void*)&result);
  1319.     return result;
  1320. }
  1321.  
  1322. void IHeader::SetLimitsCheck(BOOL propVal)
  1323. {
  1324.     SetProperty(0x14, VT_BOOL, propVal);
  1325. }
  1326.  
  1327. long IHeader::GetMaxActiveViewports()
  1328. {
  1329.     long result;
  1330.     GetProperty(0x15, VT_I4, (void*)&result);
  1331.     return result;
  1332. }
  1333.  
  1334. void IHeader::SetMaxActiveViewports(long propVal)
  1335. {
  1336.     SetProperty(0x15, VT_I4, propVal);
  1337. }
  1338.  
  1339. CString IHeader::GetMenuName()
  1340. {
  1341.     CString result;
  1342.     GetProperty(0x16, VT_BSTR, (void*)&result);
  1343.     return result;
  1344. }
  1345.  
  1346. void IHeader::SetMenuName(LPCTSTR propVal)
  1347. {
  1348.     SetProperty(0x16, VT_BSTR, propVal);
  1349. }
  1350.  
  1351. BOOL IHeader::GetMirrorText()
  1352. {
  1353.     BOOL result;
  1354.     GetProperty(0x17, VT_BOOL, (void*)&result);
  1355.     return result;
  1356. }
  1357.  
  1358. void IHeader::SetMirrorText(BOOL propVal)
  1359. {
  1360.     SetProperty(0x17, VT_BOOL, propVal);
  1361. }
  1362.  
  1363. double IHeader::GetPaperSpaceElevation()
  1364. {
  1365.     double result;
  1366.     GetProperty(0x18, VT_R8, (void*)&result);
  1367.     return result;
  1368. }
  1369.  
  1370. void IHeader::SetPaperSpaceElevation(double propVal)
  1371. {
  1372.     SetProperty(0x18, VT_R8, propVal);
  1373. }
  1374.  
  1375. LPDISPATCH IHeader::GetPaperSpaceLimitsMax()
  1376. {
  1377.     LPDISPATCH result;
  1378.     GetProperty(0x19, VT_DISPATCH, (void*)&result);
  1379.     return result;
  1380. }
  1381.  
  1382. void IHeader::SetPaperSpaceLimitsMax(LPDISPATCH propVal)
  1383. {
  1384.     SetProperty(0x19, VT_DISPATCH, propVal);
  1385. }
  1386.  
  1387. LPDISPATCH IHeader::GetPaperSpaceLimitsMin()
  1388. {
  1389.     LPDISPATCH result;
  1390.     GetProperty(0x1a, VT_DISPATCH, (void*)&result);
  1391.     return result;
  1392. }
  1393.  
  1394. void IHeader::SetPaperSpaceLimitsMin(LPDISPATCH propVal)
  1395. {
  1396.     SetProperty(0x1a, VT_DISPATCH, propVal);
  1397. }
  1398.  
  1399. BOOL IHeader::GetPaperSpaceLimitsCheck()
  1400. {
  1401.     BOOL result;
  1402.     GetProperty(0x1b, VT_BOOL, (void*)&result);
  1403.     return result;
  1404. }
  1405.  
  1406. void IHeader::SetPaperSpaceLimitsCheck(BOOL propVal)
  1407. {
  1408.     SetProperty(0x1b, VT_BOOL, propVal);
  1409. }
  1410.  
  1411. long IHeader::GetPolylineLinetypePattern()
  1412. {
  1413.     long result;
  1414.     GetProperty(0x1c, VT_I4, (void*)&result);
  1415.     return result;
  1416. }
  1417.  
  1418. void IHeader::SetPolylineLinetypePattern(long propVal)
  1419. {
  1420.     SetProperty(0x1c, VT_I4, propVal);
  1421. }
  1422.  
  1423. double IHeader::GetPolylineWidth()
  1424. {
  1425.     double result;
  1426.     GetProperty(0x1d, VT_R8, (void*)&result);
  1427.     return result;
  1428. }
  1429.  
  1430. void IHeader::SetPolylineWidth(double propVal)
  1431. {
  1432.     SetProperty(0x1d, VT_R8, propVal);
  1433. }
  1434.  
  1435. long IHeader::GetQuickText()
  1436. {
  1437.     long result;
  1438.     GetProperty(0x1e, VT_I4, (void*)&result);
  1439.     return result;
  1440. }
  1441.  
  1442. void IHeader::SetQuickText(long propVal)
  1443. {
  1444.     SetProperty(0x1e, VT_I4, propVal);
  1445. }
  1446.  
  1447. long IHeader::GetRegenMode()
  1448. {
  1449.     long result;
  1450.     GetProperty(0x1f, VT_I4, (void*)&result);
  1451.     return result;
  1452. }
  1453.  
  1454. void IHeader::SetRegenMode(long propVal)
  1455. {
  1456.     SetProperty(0x1f, VT_I4, propVal);
  1457. }
  1458.  
  1459. long IHeader::GetShadeDiffuse()
  1460. {
  1461.     long result;
  1462.     GetProperty(0x20, VT_I4, (void*)&result);
  1463.     return result;
  1464. }
  1465.  
  1466. void IHeader::SetShadeDiffuse(long propVal)
  1467. {
  1468.     SetProperty(0x20, VT_I4, propVal);
  1469. }
  1470.  
  1471. long IHeader::GetShadeEdge()
  1472. {
  1473.     long result;
  1474.     GetProperty(0x21, VT_I4, (void*)&result);
  1475.     return result;
  1476. }
  1477.  
  1478. void IHeader::SetShadeEdge(long propVal)
  1479. {
  1480.     SetProperty(0x21, VT_I4, propVal);
  1481. }
  1482.  
  1483. double IHeader::GetSketchIncrement()
  1484. {
  1485.     double result;
  1486.     GetProperty(0x22, VT_R8, (void*)&result);
  1487.     return result;
  1488. }
  1489.  
  1490. void IHeader::SetSketchIncrement(double propVal)
  1491. {
  1492.     SetProperty(0x22, VT_R8, propVal);
  1493. }
  1494.  
  1495. BOOL IHeader::GetSketchPolyline()
  1496. {
  1497.     BOOL result;
  1498.     GetProperty(0x23, VT_BOOL, (void*)&result);
  1499.     return result;
  1500. }
  1501.  
  1502. void IHeader::SetSketchPolyline(BOOL propVal)
  1503. {
  1504.     SetProperty(0x23, VT_BOOL, propVal);
  1505. }
  1506.  
  1507. long IHeader::GetSplineFrame()
  1508. {
  1509.     long result;
  1510.     GetProperty(0x24, VT_I4, (void*)&result);
  1511.     return result;
  1512. }
  1513.  
  1514. void IHeader::SetSplineFrame(long propVal)
  1515. {
  1516.     SetProperty(0x24, VT_I4, propVal);
  1517. }
  1518.  
  1519. long IHeader::GetSplineSegments()
  1520. {
  1521.     long result;
  1522.     GetProperty(0x25, VT_I4, (void*)&result);
  1523.     return result;
  1524. }
  1525.  
  1526. void IHeader::SetSplineSegments(long propVal)
  1527. {
  1528.     SetProperty(0x25, VT_I4, propVal);
  1529. }
  1530.  
  1531. long IHeader::GetSplineType()
  1532. {
  1533.     long result;
  1534.     GetProperty(0x26, VT_I4, (void*)&result);
  1535.     return result;
  1536. }
  1537.  
  1538. void IHeader::SetSplineType(long propVal)
  1539. {
  1540.     SetProperty(0x26, VT_I4, propVal);
  1541. }
  1542.  
  1543. long IHeader::GetSurfaceDensityM()
  1544. {
  1545.     long result;
  1546.     GetProperty(0x27, VT_I4, (void*)&result);
  1547.     return result;
  1548. }
  1549.  
  1550. void IHeader::SetSurfaceDensityM(long propVal)
  1551. {
  1552.     SetProperty(0x27, VT_I4, propVal);
  1553. }
  1554.  
  1555. long IHeader::GetSurfaceDensityN()
  1556. {
  1557.     long result;
  1558.     GetProperty(0x28, VT_I4, (void*)&result);
  1559.     return result;
  1560. }
  1561.  
  1562. void IHeader::SetSurfaceDensityN(long propVal)
  1563. {
  1564.     SetProperty(0x28, VT_I4, propVal);
  1565. }
  1566.  
  1567. long IHeader::GetSurfaceTabulations1()
  1568. {
  1569.     long result;
  1570.     GetProperty(0x29, VT_I4, (void*)&result);
  1571.     return result;
  1572. }
  1573.  
  1574. void IHeader::SetSurfaceTabulations1(long propVal)
  1575. {
  1576.     SetProperty(0x29, VT_I4, propVal);
  1577. }
  1578.  
  1579. long IHeader::GetSurfaceTabulations2()
  1580. {
  1581.     long result;
  1582.     GetProperty(0x2a, VT_I4, (void*)&result);
  1583.     return result;
  1584. }
  1585.  
  1586. void IHeader::SetSurfaceTabulations2(long propVal)
  1587. {
  1588.     SetProperty(0x2a, VT_I4, propVal);
  1589. }
  1590.  
  1591. long IHeader::GetSurfaceType()
  1592. {
  1593.     long result;
  1594.     GetProperty(0x2b, VT_I4, (void*)&result);
  1595.     return result;
  1596. }
  1597.  
  1598. void IHeader::SetSurfaceType(long propVal)
  1599. {
  1600.     SetProperty(0x2b, VT_I4, propVal);
  1601. }
  1602.  
  1603. double IHeader::GetTextSize()
  1604. {
  1605.     double result;
  1606.     GetProperty(0x2c, VT_R8, (void*)&result);
  1607.     return result;
  1608. }
  1609.  
  1610. void IHeader::SetTextSize(double propVal)
  1611. {
  1612.     SetProperty(0x2c, VT_R8, propVal);
  1613. }
  1614.  
  1615. double IHeader::GetTraceSize()
  1616. {
  1617.     double result;
  1618.     GetProperty(0x2d, VT_R8, (void*)&result);
  1619.     return result;
  1620. }
  1621.  
  1622. void IHeader::SetTraceSize(double propVal)
  1623. {
  1624.     SetProperty(0x2d, VT_R8, propVal);
  1625. }
  1626.  
  1627. long IHeader::GetTreeDepth()
  1628. {
  1629.     long result;
  1630.     GetProperty(0x2e, VT_I4, (void*)&result);
  1631.     return result;
  1632. }
  1633.  
  1634. void IHeader::SetTreeDepth(long propVal)
  1635. {
  1636.     SetProperty(0x2e, VT_I4, propVal);
  1637. }
  1638.  
  1639. long IHeader::GetUCSIcon()
  1640. {
  1641.     long result;
  1642.     GetProperty(0x2f, VT_I4, (void*)&result);
  1643.     return result;
  1644. }
  1645.  
  1646. void IHeader::SetUCSIcon(long propVal)
  1647. {
  1648.     SetProperty(0x2f, VT_I4, propVal);
  1649. }
  1650.  
  1651. long IHeader::GetUnitMode()
  1652. {
  1653.     long result;
  1654.     GetProperty(0x30, VT_I4, (void*)&result);
  1655.     return result;
  1656. }
  1657.  
  1658. void IHeader::SetUnitMode(long propVal)
  1659. {
  1660.     SetProperty(0x30, VT_I4, propVal);
  1661. }
  1662.  
  1663. long IHeader::GetUserInteger1()
  1664. {
  1665.     long result;
  1666.     GetProperty(0x31, VT_I4, (void*)&result);
  1667.     return result;
  1668. }
  1669.  
  1670. void IHeader::SetUserInteger1(long propVal)
  1671. {
  1672.     SetProperty(0x31, VT_I4, propVal);
  1673. }
  1674.  
  1675. long IHeader::GetUserInteger2()
  1676. {
  1677.     long result;
  1678.     GetProperty(0x32, VT_I4, (void*)&result);
  1679.     return result;
  1680. }
  1681.  
  1682. void IHeader::SetUserInteger2(long propVal)
  1683. {
  1684.     SetProperty(0x32, VT_I4, propVal);
  1685. }
  1686.  
  1687. long IHeader::GetUserInteger3()
  1688. {
  1689.     long result;
  1690.     GetProperty(0x33, VT_I4, (void*)&result);
  1691.     return result;
  1692. }
  1693.  
  1694. void IHeader::SetUserInteger3(long propVal)
  1695. {
  1696.     SetProperty(0x33, VT_I4, propVal);
  1697. }
  1698.  
  1699. long IHeader::GetUserInteger4()
  1700. {
  1701.     long result;
  1702.     GetProperty(0x34, VT_I4, (void*)&result);
  1703.     return result;
  1704. }
  1705.  
  1706. void IHeader::SetUserInteger4(long propVal)
  1707. {
  1708.     SetProperty(0x34, VT_I4, propVal);
  1709. }
  1710.  
  1711. long IHeader::GetUserInteger5()
  1712. {
  1713.     long result;
  1714.     GetProperty(0x35, VT_I4, (void*)&result);
  1715.     return result;
  1716. }
  1717.  
  1718. void IHeader::SetUserInteger5(long propVal)
  1719. {
  1720.     SetProperty(0x35, VT_I4, propVal);
  1721. }
  1722.  
  1723. long IHeader::GetUserReal1()
  1724. {
  1725.     long result;
  1726.     GetProperty(0x36, VT_I4, (void*)&result);
  1727.     return result;
  1728. }
  1729.  
  1730. void IHeader::SetUserReal1(long propVal)
  1731. {
  1732.     SetProperty(0x36, VT_I4, propVal);
  1733. }
  1734.  
  1735. long IHeader::GetUserReal2()
  1736. {
  1737.     long result;
  1738.     GetProperty(0x37, VT_I4, (void*)&result);
  1739.     return result;
  1740. }
  1741.  
  1742. void IHeader::SetUserReal2(long propVal)
  1743. {
  1744.     SetProperty(0x37, VT_I4, propVal);
  1745. }
  1746.  
  1747. long IHeader::GetUserReal3()
  1748. {
  1749.     long result;
  1750.     GetProperty(0x38, VT_I4, (void*)&result);
  1751.     return result;
  1752. }
  1753.  
  1754. void IHeader::SetUserReal3(long propVal)
  1755. {
  1756.     SetProperty(0x38, VT_I4, propVal);
  1757. }
  1758.  
  1759. long IHeader::GetUserReal4()
  1760. {
  1761.     long result;
  1762.     GetProperty(0x39, VT_I4, (void*)&result);
  1763.     return result;
  1764. }
  1765.  
  1766. void IHeader::SetUserReal4(long propVal)
  1767. {
  1768.     SetProperty(0x39, VT_I4, propVal);
  1769. }
  1770.  
  1771. long IHeader::GetUserReal5()
  1772. {
  1773.     long result;
  1774.     GetProperty(0x3a, VT_I4, (void*)&result);
  1775.     return result;
  1776. }
  1777.  
  1778. void IHeader::SetUserReal5(long propVal)
  1779. {
  1780.     SetProperty(0x3a, VT_I4, propVal);
  1781. }
  1782.  
  1783. BOOL IHeader::GetUserTimer()
  1784. {
  1785.     BOOL result;
  1786.     GetProperty(0x3b, VT_BOOL, (void*)&result);
  1787.     return result;
  1788. }
  1789.  
  1790. void IHeader::SetUserTimer(BOOL propVal)
  1791. {
  1792.     SetProperty(0x3b, VT_BOOL, propVal);
  1793. }
  1794.  
  1795. BOOL IHeader::GetWorldView()
  1796. {
  1797.     BOOL result;
  1798.     GetProperty(0x3c, VT_BOOL, (void*)&result);
  1799.     return result;
  1800. }
  1801.  
  1802. void IHeader::SetWorldView(BOOL propVal)
  1803. {
  1804.     SetProperty(0x3c, VT_BOOL, propVal);
  1805. }
  1806.  
  1807. double IHeader::GetFilletRadius()
  1808. {
  1809.     double result;
  1810.     GetProperty(0x3d, VT_R8, (void*)&result);
  1811.     return result;
  1812. }
  1813.  
  1814. void IHeader::SetFilletRadius(double propVal)
  1815. {
  1816.     SetProperty(0x3d, VT_R8, propVal);
  1817. }
  1818.  
  1819. double IHeader::GetChamferDistanceA()
  1820. {
  1821.     double result;
  1822.     GetProperty(0x3e, VT_R8, (void*)&result);
  1823.     return result;
  1824. }
  1825.  
  1826. void IHeader::SetChamferDistanceA(double propVal)
  1827. {
  1828.     SetProperty(0x3e, VT_R8, propVal);
  1829. }
  1830.  
  1831. double IHeader::GetChamferDistanceB()
  1832. {
  1833.     double result;
  1834.     GetProperty(0x3f, VT_R8, (void*)&result);
  1835.     return result;
  1836. }
  1837.  
  1838. void IHeader::SetChamferDistanceB(double propVal)
  1839. {
  1840.     SetProperty(0x3f, VT_R8, propVal);
  1841. }
  1842.  
  1843. short IHeader::GetPointDisplayMode()
  1844. {
  1845.     short result;
  1846.     GetProperty(0x40, VT_I2, (void*)&result);
  1847.     return result;
  1848. }
  1849.  
  1850. void IHeader::SetPointDisplayMode(short propVal)
  1851. {
  1852.     SetProperty(0x40, VT_I2, propVal);
  1853. }
  1854.  
  1855. double IHeader::GetPointDisplaySize()
  1856. {
  1857.     double result;
  1858.     GetProperty(0x41, VT_R8, (void*)&result);
  1859.     return result;
  1860. }
  1861.  
  1862. void IHeader::SetPointDisplaySize(double propVal)
  1863. {
  1864.     SetProperty(0x41, VT_R8, propVal);
  1865. }
  1866.  
  1867. BOOL IHeader::GetLengthSnap()
  1868. {
  1869.     BOOL result;
  1870.     GetProperty(0x42, VT_BOOL, (void*)&result);
  1871.     return result;
  1872. }
  1873.  
  1874. void IHeader::SetLengthSnap(BOOL propVal)
  1875. {
  1876.     SetProperty(0x42, VT_BOOL, propVal);
  1877. }
  1878.  
  1879. double IHeader::GetLengthSnapValue()
  1880. {
  1881.     double result;
  1882.     GetProperty(0x43, VT_R8, (void*)&result);
  1883.     return result;
  1884. }
  1885.  
  1886. void IHeader::SetLengthSnapValue(double propVal)
  1887. {
  1888.     SetProperty(0x43, VT_R8, propVal);
  1889. }
  1890.  
  1891. /////////////////////////////////////////////////////////////////////////////
  1892. // IHeader operations
  1893.  
  1894.  
  1895. /////////////////////////////////////////////////////////////////////////////
  1896. // IEntitySnap properties
  1897.  
  1898. LPDISPATCH IEntitySnap::GetApplication()
  1899. {
  1900.     LPDISPATCH result;
  1901.     GetProperty(0x10001, VT_DISPATCH, (void*)&result);
  1902.     return result;
  1903. }
  1904.  
  1905. LPDISPATCH IEntitySnap::GetParent()
  1906. {
  1907.     LPDISPATCH result;
  1908.     GetProperty(0x10002, VT_DISPATCH, (void*)&result);
  1909.     return result;
  1910. }
  1911.  
  1912. BOOL IEntitySnap::GetSnap()
  1913. {
  1914.     BOOL result;
  1915.     GetProperty(0x1, VT_BOOL, (void*)&result);
  1916.     return result;
  1917. }
  1918.  
  1919. void IEntitySnap::SetSnap(BOOL propVal)
  1920. {
  1921.     SetProperty(0x1, VT_BOOL, propVal);
  1922. }
  1923.  
  1924. BOOL IEntitySnap::Get_Snap()
  1925. {
  1926.     BOOL result;
  1927.     GetProperty(0x0, VT_BOOL, (void*)&result);
  1928.     return result;
  1929. }
  1930.  
  1931. void IEntitySnap::Set_Snap(BOOL propVal)
  1932. {
  1933.     SetProperty(0x0, VT_BOOL, propVal);
  1934. }
  1935.  
  1936. BOOL IEntitySnap::GetSnapToSelection()
  1937. {
  1938.     BOOL result;
  1939.     GetProperty(0x2, VT_BOOL, (void*)&result);
  1940.     return result;
  1941. }
  1942.  
  1943. void IEntitySnap::SetSnapToSelection(BOOL propVal)
  1944. {
  1945.     SetProperty(0x2, VT_BOOL, propVal);
  1946. }
  1947.  
  1948. BOOL IEntitySnap::GetEndpoint()
  1949. {
  1950.     BOOL result;
  1951.     GetProperty(0x3, VT_BOOL, (void*)&result);
  1952.     return result;
  1953. }
  1954.  
  1955. void IEntitySnap::SetEndpoint(BOOL propVal)
  1956. {
  1957.     SetProperty(0x3, VT_BOOL, propVal);
  1958. }
  1959.  
  1960. BOOL IEntitySnap::GetMidpoint()
  1961. {
  1962.     BOOL result;
  1963.     GetProperty(0x4, VT_BOOL, (void*)&result);
  1964.     return result;
  1965. }
  1966.  
  1967. void IEntitySnap::SetMidpoint(BOOL propVal)
  1968. {
  1969.     SetProperty(0x4, VT_BOOL, propVal);
  1970. }
  1971.  
  1972. BOOL IEntitySnap::GetCenter()
  1973. {
  1974.     BOOL result;
  1975.     GetProperty(0x5, VT_BOOL, (void*)&result);
  1976.     return result;
  1977. }
  1978.  
  1979. void IEntitySnap::SetCenter(BOOL propVal)
  1980. {
  1981.     SetProperty(0x5, VT_BOOL, propVal);
  1982. }
  1983.  
  1984. BOOL IEntitySnap::GetNearest()
  1985. {
  1986.     BOOL result;
  1987.     GetProperty(0x6, VT_BOOL, (void*)&result);
  1988.     return result;
  1989. }
  1990.  
  1991. void IEntitySnap::SetNearest(BOOL propVal)
  1992. {
  1993.     SetProperty(0x6, VT_BOOL, propVal);
  1994. }
  1995.  
  1996. BOOL IEntitySnap::GetPointSnap()
  1997. {
  1998.     BOOL result;
  1999.     GetProperty(0x7, VT_BOOL, (void*)&result);
  2000.     return result;
  2001. }
  2002.  
  2003. void IEntitySnap::SetPointSnap(BOOL propVal)
  2004. {
  2005.     SetProperty(0x7, VT_BOOL, propVal);
  2006. }
  2007.  
  2008. BOOL IEntitySnap::GetQuadrant()
  2009. {
  2010.     BOOL result;
  2011.     GetProperty(0x8, VT_BOOL, (void*)&result);
  2012.     return result;
  2013. }
  2014.  
  2015. void IEntitySnap::SetQuadrant(BOOL propVal)
  2016. {
  2017.     SetProperty(0x8, VT_BOOL, propVal);
  2018. }
  2019.  
  2020. BOOL IEntitySnap::GetInsertion()
  2021. {
  2022.     BOOL result;
  2023.     GetProperty(0x9, VT_BOOL, (void*)&result);
  2024.     return result;
  2025. }
  2026.  
  2027. void IEntitySnap::SetInsertion(BOOL propVal)
  2028. {
  2029.     SetProperty(0x9, VT_BOOL, propVal);
  2030. }
  2031.  
  2032. BOOL IEntitySnap::GetPerpendicular()
  2033. {
  2034.     BOOL result;
  2035.     GetProperty(0xa, VT_BOOL, (void*)&result);
  2036.     return result;
  2037. }
  2038.  
  2039. void IEntitySnap::SetPerpendicular(BOOL propVal)
  2040. {
  2041.     SetProperty(0xa, VT_BOOL, propVal);
  2042. }
  2043.  
  2044. BOOL IEntitySnap::GetTangent()
  2045. {
  2046.     BOOL result;
  2047.     GetProperty(0xb, VT_BOOL, (void*)&result);
  2048.     return result;
  2049. }
  2050.  
  2051. void IEntitySnap::SetTangent(BOOL propVal)
  2052. {
  2053.     SetProperty(0xb, VT_BOOL, propVal);
  2054. }
  2055.  
  2056. BOOL IEntitySnap::GetIntersection()
  2057. {
  2058.     BOOL result;
  2059.     GetProperty(0xc, VT_BOOL, (void*)&result);
  2060.     return result;
  2061. }
  2062.  
  2063. void IEntitySnap::SetIntersection(BOOL propVal)
  2064. {
  2065.     SetProperty(0xc, VT_BOOL, propVal);
  2066. }
  2067.  
  2068. /////////////////////////////////////////////////////////////////////////////
  2069. // IEntitySnap operations
  2070.  
  2071. void IEntitySnap::Dialog()
  2072. {
  2073.     InvokeHelper(0xd, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  2074. }
  2075.  
  2076.  
  2077. /////////////////////////////////////////////////////////////////////////////
  2078. // IUnits properties
  2079.  
  2080. LPDISPATCH IUnits::GetApplication()
  2081. {
  2082.     LPDISPATCH result;
  2083.     GetProperty(0x10001, VT_DISPATCH, (void*)&result);
  2084.     return result;
  2085. }
  2086.  
  2087. LPDISPATCH IUnits::GetParent()
  2088. {
  2089.     LPDISPATCH result;
  2090.     GetProperty(0x10002, VT_DISPATCH, (void*)&result);
  2091.     return result;
  2092. }
  2093.  
  2094. short IUnits::GetLinear()
  2095. {
  2096.     short result;
  2097.     GetProperty(0x1, VT_I2, (void*)&result);
  2098.     return result;
  2099. }
  2100.  
  2101. void IUnits::SetLinear(short propVal)
  2102. {
  2103.     SetProperty(0x1, VT_I2, propVal);
  2104. }
  2105.  
  2106. short IUnits::GetLinearDigits()
  2107. {
  2108.     short result;
  2109.     GetProperty(0x2, VT_I2, (void*)&result);
  2110.     return result;
  2111. }
  2112.  
  2113. void IUnits::SetLinearDigits(short propVal)
  2114. {
  2115.     SetProperty(0x2, VT_I2, propVal);
  2116. }
  2117.  
  2118. short IUnits::GetAngular()
  2119. {
  2120.     short result;
  2121.     GetProperty(0x3, VT_I2, (void*)&result);
  2122.     return result;
  2123. }
  2124.  
  2125. void IUnits::SetAngular(short propVal)
  2126. {
  2127.     SetProperty(0x3, VT_I2, propVal);
  2128. }
  2129.  
  2130. short IUnits::GetAngularDigits()
  2131. {
  2132.     short result;
  2133.     GetProperty(0x4, VT_I2, (void*)&result);
  2134.     return result;
  2135. }
  2136.  
  2137. void IUnits::SetAngularDigits(short propVal)
  2138. {
  2139.     SetProperty(0x4, VT_I2, propVal);
  2140. }
  2141.  
  2142. double IUnits::GetAngleBase()
  2143. {
  2144.     double result;
  2145.     GetProperty(0x5, VT_R8, (void*)&result);
  2146.     return result;
  2147. }
  2148.  
  2149. void IUnits::SetAngleBase(double propVal)
  2150. {
  2151.     SetProperty(0x5, VT_R8, propVal);
  2152. }
  2153.  
  2154. BOOL IUnits::GetClockwise()
  2155. {
  2156.     BOOL result;
  2157.     GetProperty(0x6, VT_BOOL, (void*)&result);
  2158.     return result;
  2159. }
  2160.  
  2161. void IUnits::SetClockwise(BOOL propVal)
  2162. {
  2163.     SetProperty(0x6, VT_BOOL, propVal);
  2164. }
  2165.  
  2166. short IUnits::GetScaleMethod()
  2167. {
  2168.     short result;
  2169.     GetProperty(0xd, VT_I2, (void*)&result);
  2170.     return result;
  2171. }
  2172.  
  2173. double IUnits::GetScaling()
  2174. {
  2175.     double result;
  2176.     GetProperty(0xe, VT_R8, (void*)&result);
  2177.     return result;
  2178. }
  2179.  
  2180. void IUnits::SetScaling(double propVal)
  2181. {
  2182.     SetProperty(0xe, VT_R8, propVal);
  2183. }
  2184.  
  2185. short IUnits::GetMetricUnits()
  2186. {
  2187.     short result;
  2188.     GetProperty(0xf, VT_I2, (void*)&result);
  2189.     return result;
  2190. }
  2191.  
  2192. void IUnits::SetMetricUnits(short propVal)
  2193. {
  2194.     SetProperty(0xf, VT_I2, propVal);
  2195. }
  2196.  
  2197. short IUnits::GetDisplayUnits()
  2198. {
  2199.     short result;
  2200.     GetProperty(0x10, VT_I2, (void*)&result);
  2201.     return result;
  2202. }
  2203.  
  2204. void IUnits::SetDisplayUnits(short propVal)
  2205. {
  2206.     SetProperty(0x10, VT_I2, propVal);
  2207. }
  2208.  
  2209. /////////////////////////////////////////////////////////////////////////////
  2210. // IUnits operations
  2211.  
  2212. CString IUnits::PointToString(LPDISPATCH point)
  2213. {
  2214.     CString result;
  2215.     static BYTE parms[] =
  2216.         VTS_DISPATCH;
  2217.     InvokeHelper(0x7, DISPATCH_METHOD, VT_BSTR, (void*)&result, parms,
  2218.         point);
  2219.     return result;
  2220. }
  2221.  
  2222. CString IUnits::CoordinateToString(double value)
  2223. {
  2224.     CString result;
  2225.     static BYTE parms[] =
  2226.         VTS_R8;
  2227.     InvokeHelper(0x8, DISPATCH_METHOD, VT_BSTR, (void*)&result, parms,
  2228.         value);
  2229.     return result;
  2230. }
  2231.  
  2232. CString IUnits::AngleToString(double Angle)
  2233. {
  2234.     CString result;
  2235.     static BYTE parms[] =
  2236.         VTS_R8;
  2237.     InvokeHelper(0x9, DISPATCH_METHOD, VT_BSTR, (void*)&result, parms,
  2238.         Angle);
  2239.     return result;
  2240. }
  2241.  
  2242. LPDISPATCH IUnits::StringToPoint(LPCTSTR string)
  2243. {
  2244.     LPDISPATCH result;
  2245.     static BYTE parms[] =
  2246.         VTS_BSTR;
  2247.     InvokeHelper(0xa, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  2248.         string);
  2249.     return result;
  2250. }
  2251.  
  2252. double IUnits::StringToCoordinate(LPCTSTR string)
  2253. {
  2254.     double result;
  2255.     static BYTE parms[] =
  2256.         VTS_BSTR;
  2257.     InvokeHelper(0xb, DISPATCH_METHOD, VT_R8, (void*)&result, parms,
  2258.         string);
  2259.     return result;
  2260. }
  2261.  
  2262. double IUnits::StringToAngle(LPCTSTR string)
  2263. {
  2264.     double result;
  2265.     static BYTE parms[] =
  2266.         VTS_BSTR;
  2267.     InvokeHelper(0xc, DISPATCH_METHOD, VT_R8, (void*)&result, parms,
  2268.         string);
  2269.     return result;
  2270. }
  2271.  
  2272. void IUnits::Dialog()
  2273. {
  2274.     InvokeHelper(0x11, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  2275. }
  2276.  
  2277.  
  2278. /////////////////////////////////////////////////////////////////////////////
  2279. // ICommands properties
  2280.  
  2281. LPDISPATCH ICommands::GetApplication()
  2282. {
  2283.     LPDISPATCH result;
  2284.     GetProperty(0x10001, VT_DISPATCH, (void*)&result);
  2285.     return result;
  2286. }
  2287.  
  2288. LPDISPATCH ICommands::GetParent()
  2289. {
  2290.     LPDISPATCH result;
  2291.     GetProperty(0x10002, VT_DISPATCH, (void*)&result);
  2292.     return result;
  2293. }
  2294.  
  2295. long ICommands::GetCount()
  2296. {
  2297.     long result;
  2298.     GetProperty(0x1, VT_I4, (void*)&result);
  2299.     return result;
  2300. }
  2301.  
  2302. /////////////////////////////////////////////////////////////////////////////
  2303. // ICommands operations
  2304.  
  2305. CString ICommands::GetItem(long index)
  2306. {
  2307.     CString result;
  2308.     static BYTE parms[] =
  2309.         VTS_I4;
  2310.     InvokeHelper(0x2, DISPATCH_PROPERTYGET, VT_BSTR, (void*)&result, parms,
  2311.         index);
  2312.     return result;
  2313. }
  2314.  
  2315. CString ICommands::Get_Item(long index)
  2316. {
  2317.     CString result;
  2318.     static BYTE parms[] =
  2319.         VTS_I4;
  2320.     InvokeHelper(0x0, DISPATCH_PROPERTYGET, VT_BSTR, (void*)&result, parms,
  2321.         index);
  2322.     return result;
  2323. }
  2324.  
  2325. BOOL ICommands::Undo(const VARIANT& howmany)
  2326. {
  2327.     BOOL result;
  2328.     static BYTE parms[] =
  2329.         VTS_VARIANT;
  2330.     InvokeHelper(0x3, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  2331.         &howmany);
  2332.     return result;
  2333. }
  2334.  
  2335. BOOL ICommands::Redo(const VARIANT& howmany)
  2336. {
  2337.     BOOL result;
  2338.     static BYTE parms[] =
  2339.         VTS_VARIANT;
  2340.     InvokeHelper(0x4, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  2341.         &howmany);
  2342.     return result;
  2343. }
  2344.  
  2345. BOOL ICommands::Restart()
  2346. {
  2347.     BOOL result;
  2348.     InvokeHelper(0x5, DISPATCH_METHOD, VT_BOOL, (void*)&result, NULL);
  2349.     return result;
  2350. }
  2351.  
  2352. BOOL ICommands::Do(LPCTSTR command)
  2353. {
  2354.     BOOL result;
  2355.     static BYTE parms[] =
  2356.         VTS_BSTR;
  2357.     InvokeHelper(0x6, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  2358.         command);
  2359.     return result;
  2360. }
  2361.  
  2362. void ICommands::Group(LPCTSTR description)
  2363. {
  2364.     static BYTE parms[] =
  2365.         VTS_BSTR;
  2366.     InvokeHelper(0x7, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  2367.          description);
  2368. }
  2369.  
  2370. void ICommands::EndGroup()
  2371. {
  2372.     InvokeHelper(0x8, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  2373. }
  2374.  
  2375. void ICommands::KillUndoRedo()
  2376. {
  2377.     InvokeHelper(0x9, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  2378. }
  2379.  
  2380. void ICommands::Dialog()
  2381. {
  2382.     InvokeHelper(0xa, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  2383. }
  2384.  
  2385.  
  2386. /////////////////////////////////////////////////////////////////////////////
  2387. // IPickEvents properties
  2388.  
  2389. LPDISPATCH IPickEvents::GetApplication()
  2390. {
  2391.     LPDISPATCH result;
  2392.     GetProperty(0x10001, VT_DISPATCH, (void*)&result);
  2393.     return result;
  2394. }
  2395.  
  2396. LPDISPATCH IPickEvents::GetParent()
  2397. {
  2398.     LPDISPATCH result;
  2399.     GetProperty(0x10002, VT_DISPATCH, (void*)&result);
  2400.     return result;
  2401. }
  2402.  
  2403. CString IPickEvents::GetName()
  2404. {
  2405.     CString result;
  2406.     GetProperty(0x1, VT_BSTR, (void*)&result);
  2407.     return result;
  2408. }
  2409.  
  2410. void IPickEvents::SetName(LPCTSTR propVal)
  2411. {
  2412.     SetProperty(0x1, VT_BSTR, propVal);
  2413. }
  2414.  
  2415. CString IPickEvents::GetStatusbar()
  2416. {
  2417.     CString result;
  2418.     GetProperty(0x2, VT_BSTR, (void*)&result);
  2419.     return result;
  2420. }
  2421.  
  2422. void IPickEvents::SetStatusbar(LPCTSTR propVal)
  2423. {
  2424.     SetProperty(0x2, VT_BSTR, propVal);
  2425. }
  2426.  
  2427. BOOL IPickEvents::GetNotifyDone()
  2428. {
  2429.     BOOL result;
  2430.     GetProperty(0x3, VT_BOOL, (void*)&result);
  2431.     return result;
  2432. }
  2433.  
  2434. void IPickEvents::SetNotifyDone(BOOL propVal)
  2435. {
  2436.     SetProperty(0x3, VT_BOOL, propVal);
  2437. }
  2438.  
  2439. BOOL IPickEvents::GetNotifyProperties()
  2440. {
  2441.     BOOL result;
  2442.     GetProperty(0x4, VT_BOOL, (void*)&result);
  2443.     return result;
  2444. }
  2445.  
  2446. void IPickEvents::SetNotifyProperties(BOOL propVal)
  2447. {
  2448.     SetProperty(0x4, VT_BOOL, propVal);
  2449. }
  2450.  
  2451. BOOL IPickEvents::GetNotifyUndo()
  2452. {
  2453.     BOOL result;
  2454.     GetProperty(0x5, VT_BOOL, (void*)&result);
  2455.     return result;
  2456. }
  2457.  
  2458. void IPickEvents::SetNotifyUndo(BOOL propVal)
  2459. {
  2460.     SetProperty(0x5, VT_BOOL, propVal);
  2461. }
  2462.  
  2463. long IPickEvents::GetHelpToken()
  2464. {
  2465.     long result;
  2466.     GetProperty(0x6, VT_I4, (void*)&result);
  2467.     return result;
  2468. }
  2469.  
  2470. void IPickEvents::SetHelpToken(long propVal)
  2471. {
  2472.     SetProperty(0x6, VT_I4, propVal);
  2473. }
  2474.  
  2475. LPDISPATCH IPickEvents::GetBasepoint()
  2476. {
  2477.     LPDISPATCH result;
  2478.     GetProperty(0x7, VT_DISPATCH, (void*)&result);
  2479.     return result;
  2480. }
  2481.  
  2482. void IPickEvents::SetBasepoint(LPDISPATCH propVal)
  2483. {
  2484.     SetProperty(0x7, VT_DISPATCH, propVal);
  2485. }
  2486.  
  2487. /////////////////////////////////////////////////////////////////////////////
  2488. // IPickEvents operations
  2489.  
  2490. BOOL IPickEvents::RequestPick(long addonid, const VARIANT& userinfo)
  2491. {
  2492.     BOOL result;
  2493.     static BYTE parms[] =
  2494.         VTS_I4 VTS_VARIANT;
  2495.     InvokeHelper(0x8, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  2496.         addonid, &userinfo);
  2497.     return result;
  2498. }
  2499.  
  2500. void IPickEvents::SetCursorTips(LPCTSTR tip1, const VARIANT& tip2, const VARIANT& tip3, const VARIANT& tip4)
  2501. {
  2502.     static BYTE parms[] =
  2503.         VTS_BSTR VTS_VARIANT VTS_VARIANT VTS_VARIANT;
  2504.     InvokeHelper(0x9, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  2505.          tip1, &tip2, &tip3, &tip4);
  2506. }
  2507.  
  2508. void IPickEvents::SetCursorTipInfo(short tipinfo, LPDISPATCH basepoint)
  2509. {
  2510.     static BYTE parms[] =
  2511.         VTS_I2 VTS_DISPATCH;
  2512.     InvokeHelper(0xa, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  2513.          tipinfo, basepoint);
  2514. }
  2515.  
  2516. BOOL IPickEvents::RequestDraw(long addonid, const VARIANT& userinfo)
  2517. {
  2518.     BOOL result;
  2519.     static BYTE parms[] =
  2520.         VTS_I4 VTS_VARIANT;
  2521.     InvokeHelper(0xb, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  2522.         addonid, &userinfo);
  2523.     return result;
  2524. }
  2525.  
  2526. BOOL IPickEvents::TriggerPick(LPDISPATCH point)
  2527. {
  2528.     BOOL result;
  2529.     static BYTE parms[] =
  2530.         VTS_DISPATCH;
  2531.     InvokeHelper(0xc, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  2532.         point);
  2533.     return result;
  2534. }
  2535.  
  2536. BOOL IPickEvents::TriggerPopup(short event)
  2537. {
  2538.     BOOL result;
  2539.     static BYTE parms[] =
  2540.         VTS_I2;
  2541.     InvokeHelper(0xd, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  2542.         event);
  2543.     return result;
  2544. }
  2545.  
  2546. BOOL IPickEvents::TriggerLength(double Length)
  2547. {
  2548.     BOOL result;
  2549.     static BYTE parms[] =
  2550.         VTS_R8;
  2551.     InvokeHelper(0xe, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  2552.         Length);
  2553.     return result;
  2554. }
  2555.  
  2556. BOOL IPickEvents::TriggerAngle(double Angle)
  2557. {
  2558.     BOOL result;
  2559.     static BYTE parms[] =
  2560.         VTS_R8;
  2561.     InvokeHelper(0xf, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  2562.         Angle);
  2563.     return result;
  2564. }
  2565.  
  2566. BOOL IPickEvents::TriggerOffset(LPDISPATCH offset)
  2567. {
  2568.     BOOL result;
  2569.     static BYTE parms[] =
  2570.         VTS_DISPATCH;
  2571.     InvokeHelper(0x10, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  2572.         offset);
  2573.     return result;
  2574. }
  2575.  
  2576. BOOL IPickEvents::TriggerScale(LPDISPATCH scale)
  2577. {
  2578.     BOOL result;
  2579.     static BYTE parms[] =
  2580.         VTS_DISPATCH;
  2581.     InvokeHelper(0x11, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  2582.         scale);
  2583.     return result;
  2584. }
  2585.  
  2586. BOOL IPickEvents::TriggerHeight(double height)
  2587. {
  2588.     BOOL result;
  2589.     static BYTE parms[] =
  2590.         VTS_R8;
  2591.     InvokeHelper(0x12, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  2592.         height);
  2593.     return result;
  2594. }
  2595.  
  2596. BOOL IPickEvents::TriggerWidth(double width)
  2597. {
  2598.     BOOL result;
  2599.     static BYTE parms[] =
  2600.         VTS_R8;
  2601.     InvokeHelper(0x13, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  2602.         width);
  2603.     return result;
  2604. }
  2605.  
  2606. BOOL IPickEvents::TriggerRadius(double radius)
  2607. {
  2608.     BOOL result;
  2609.     static BYTE parms[] =
  2610.         VTS_R8;
  2611.     InvokeHelper(0x14, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  2612.         radius);
  2613.     return result;
  2614. }
  2615.  
  2616. BOOL IPickEvents::TriggerDiameter(double diameter)
  2617. {
  2618.     BOOL result;
  2619.     static BYTE parms[] =
  2620.         VTS_R8;
  2621.     InvokeHelper(0x15, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  2622.         diameter);
  2623.     return result;
  2624. }
  2625.  
  2626.  
  2627. /////////////////////////////////////////////////////////////////////////////
  2628. // ISelectionEvents properties
  2629.  
  2630. LPDISPATCH ISelectionEvents::GetApplication()
  2631. {
  2632.     LPDISPATCH result;
  2633.     GetProperty(0x10001, VT_DISPATCH, (void*)&result);
  2634.     return result;
  2635. }
  2636.  
  2637. LPDISPATCH ISelectionEvents::GetParent()
  2638. {
  2639.     LPDISPATCH result;
  2640.     GetProperty(0x10002, VT_DISPATCH, (void*)&result);
  2641.     return result;
  2642. }
  2643.  
  2644. CString ISelectionEvents::GetName()
  2645. {
  2646.     CString result;
  2647.     GetProperty(0x1, VT_BSTR, (void*)&result);
  2648.     return result;
  2649. }
  2650.  
  2651. void ISelectionEvents::SetName(LPCTSTR propVal)
  2652. {
  2653.     SetProperty(0x1, VT_BSTR, propVal);
  2654. }
  2655.  
  2656. CString ISelectionEvents::GetStatusbar()
  2657. {
  2658.     CString result;
  2659.     GetProperty(0x2, VT_BSTR, (void*)&result);
  2660.     return result;
  2661. }
  2662.  
  2663. void ISelectionEvents::SetStatusbar(LPCTSTR propVal)
  2664. {
  2665.     SetProperty(0x2, VT_BSTR, propVal);
  2666. }
  2667.  
  2668. /////////////////////////////////////////////////////////////////////////////
  2669. // ISelectionEvents operations
  2670.  
  2671. BOOL ISelectionEvents::RequestSelect(long addonid, const VARIANT& userinfo)
  2672. {
  2673.     BOOL result;
  2674.     static BYTE parms[] =
  2675.         VTS_I4 VTS_VARIANT;
  2676.     InvokeHelper(0x3, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  2677.         addonid, &userinfo);
  2678.     return result;
  2679. }
  2680.  
  2681. BOOL ISelectionEvents::RequestSingleSelect(long addonid, const VARIANT& userinfo)
  2682. {
  2683.     BOOL result;
  2684.     static BYTE parms[] =
  2685.         VTS_I4 VTS_VARIANT;
  2686.     InvokeHelper(0x4, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  2687.         addonid, &userinfo);
  2688.     return result;
  2689. }
  2690.  
  2691.  
  2692. /////////////////////////////////////////////////////////////////////////////
  2693. // IApplicationIDs properties
  2694.  
  2695. LPDISPATCH IApplicationIDs::GetApplication()
  2696. {
  2697.     LPDISPATCH result;
  2698.     GetProperty(0x20001, VT_DISPATCH, (void*)&result);
  2699.     return result;
  2700. }
  2701.  
  2702. LPDISPATCH IApplicationIDs::GetParent()
  2703. {
  2704.     LPDISPATCH result;
  2705.     GetProperty(0x20002, VT_DISPATCH, (void*)&result);
  2706.     return result;
  2707. }
  2708.  
  2709. long IApplicationIDs::GetCount()
  2710. {
  2711.     long result;
  2712.     GetProperty(0x10001, VT_I4, (void*)&result);
  2713.     return result;
  2714. }
  2715.  
  2716. /////////////////////////////////////////////////////////////////////////////
  2717. // IApplicationIDs operations
  2718.  
  2719. LPDISPATCH IApplicationIDs::GetItem(const VARIANT& which)
  2720. {
  2721.     LPDISPATCH result;
  2722.     static BYTE parms[] =
  2723.         VTS_VARIANT;
  2724.     InvokeHelper(0x10002, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  2725.         &which);
  2726.     return result;
  2727. }
  2728.  
  2729. BOOL IApplicationIDs::GetHasItem(const VARIANT& which)
  2730. {
  2731.     BOOL result;
  2732.     static BYTE parms[] =
  2733.         VTS_VARIANT;
  2734.     InvokeHelper(0x10003, DISPATCH_PROPERTYGET, VT_BOOL, (void*)&result, parms,
  2735.         &which);
  2736.     return result;
  2737. }
  2738.  
  2739. LPDISPATCH IApplicationIDs::Get_Item(const VARIANT& which)
  2740. {
  2741.     LPDISPATCH result;
  2742.     static BYTE parms[] =
  2743.         VTS_VARIANT;
  2744.     InvokeHelper(0x0, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  2745.         &which);
  2746.     return result;
  2747. }
  2748.  
  2749. LPDISPATCH IApplicationIDs::Add(LPCTSTR Name)
  2750. {
  2751.     LPDISPATCH result;
  2752.     static BYTE parms[] =
  2753.         VTS_BSTR;
  2754.     InvokeHelper(0x1, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  2755.         Name);
  2756.     return result;
  2757. }
  2758.  
  2759.  
  2760. /////////////////////////////////////////////////////////////////////////////
  2761. // IApplicationID properties
  2762.  
  2763. LPDISPATCH IApplicationID::GetApplication()
  2764. {
  2765.     LPDISPATCH result;
  2766.     GetProperty(0x20001, VT_DISPATCH, (void*)&result);
  2767.     return result;
  2768. }
  2769.  
  2770. LPDISPATCH IApplicationID::GetParent()
  2771. {
  2772.     LPDISPATCH result;
  2773.     GetProperty(0x20002, VT_DISPATCH, (void*)&result);
  2774.     return result;
  2775. }
  2776.  
  2777. CString IApplicationID::GetName()
  2778. {
  2779.     CString result;
  2780.     GetProperty(0x10001, VT_BSTR, (void*)&result);
  2781.     return result;
  2782. }
  2783.  
  2784. void IApplicationID::SetName(LPCTSTR propVal)
  2785. {
  2786.     SetProperty(0x10001, VT_BSTR, propVal);
  2787. }
  2788.  
  2789. CString IApplicationID::Get_Name()
  2790. {
  2791.     CString result;
  2792.     GetProperty(0x0, VT_BSTR, (void*)&result);
  2793.     return result;
  2794. }
  2795.  
  2796. void IApplicationID::Set_Name(LPCTSTR propVal)
  2797. {
  2798.     SetProperty(0x0, VT_BSTR, propVal);
  2799. }
  2800.  
  2801. /////////////////////////////////////////////////////////////////////////////
  2802. // IApplicationID operations
  2803.  
  2804.  
  2805. /////////////////////////////////////////////////////////////////////////////
  2806. // ILayers properties
  2807.  
  2808. LPDISPATCH ILayers::GetApplication()
  2809. {
  2810.     LPDISPATCH result;
  2811.     GetProperty(0x20001, VT_DISPATCH, (void*)&result);
  2812.     return result;
  2813. }
  2814.  
  2815. LPDISPATCH ILayers::GetParent()
  2816. {
  2817.     LPDISPATCH result;
  2818.     GetProperty(0x20002, VT_DISPATCH, (void*)&result);
  2819.     return result;
  2820. }
  2821.  
  2822. long ILayers::GetCount()
  2823. {
  2824.     long result;
  2825.     GetProperty(0x10001, VT_I4, (void*)&result);
  2826.     return result;
  2827. }
  2828.  
  2829. LPDISPATCH ILayers::GetActive()
  2830. {
  2831.     LPDISPATCH result;
  2832.     GetProperty(0x5, VT_DISPATCH, (void*)&result);
  2833.     return result;
  2834. }
  2835.  
  2836. void ILayers::SetActive(LPDISPATCH propVal)
  2837. {
  2838.     SetProperty(0x5, VT_DISPATCH, propVal);
  2839. }
  2840.  
  2841. /////////////////////////////////////////////////////////////////////////////
  2842. // ILayers operations
  2843.  
  2844. LPDISPATCH ILayers::GetItem(const VARIANT& which)
  2845. {
  2846.     LPDISPATCH result;
  2847.     static BYTE parms[] =
  2848.         VTS_VARIANT;
  2849.     InvokeHelper(0x10002, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  2850.         &which);
  2851.     return result;
  2852. }
  2853.  
  2854. BOOL ILayers::GetHasItem(const VARIANT& which)
  2855. {
  2856.     BOOL result;
  2857.     static BYTE parms[] =
  2858.         VTS_VARIANT;
  2859.     InvokeHelper(0x10003, DISPATCH_PROPERTYGET, VT_BOOL, (void*)&result, parms,
  2860.         &which);
  2861.     return result;
  2862. }
  2863.  
  2864. LPDISPATCH ILayers::Get_Item(const VARIANT& which)
  2865. {
  2866.     LPDISPATCH result;
  2867.     static BYTE parms[] =
  2868.         VTS_VARIANT;
  2869.     InvokeHelper(0x0, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  2870.         &which);
  2871.     return result;
  2872. }
  2873.  
  2874. void ILayers::Dialog()
  2875. {
  2876.     InvokeHelper(0x1, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  2877. }
  2878.  
  2879. void ILayers::Update()
  2880. {
  2881.     InvokeHelper(0x2, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  2882. }
  2883.  
  2884. void ILayers::UpdateNow()
  2885. {
  2886.     InvokeHelper(0x3, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  2887. }
  2888.  
  2889. LPDISPATCH ILayers::Add(LPCTSTR Name)
  2890. {
  2891.     LPDISPATCH result;
  2892.     static BYTE parms[] =
  2893.         VTS_BSTR;
  2894.     InvokeHelper(0x4, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  2895.         Name);
  2896.     return result;
  2897. }
  2898.  
  2899.  
  2900. /////////////////////////////////////////////////////////////////////////////
  2901. // ILayer properties
  2902.  
  2903. LPDISPATCH ILayer::GetApplication()
  2904. {
  2905.     LPDISPATCH result;
  2906.     GetProperty(0x20001, VT_DISPATCH, (void*)&result);
  2907.     return result;
  2908. }
  2909.  
  2910. LPDISPATCH ILayer::GetParent()
  2911. {
  2912.     LPDISPATCH result;
  2913.     GetProperty(0x20002, VT_DISPATCH, (void*)&result);
  2914.     return result;
  2915. }
  2916.  
  2917. CString ILayer::GetName()
  2918. {
  2919.     CString result;
  2920.     GetProperty(0x10001, VT_BSTR, (void*)&result);
  2921.     return result;
  2922. }
  2923.  
  2924. void ILayer::SetName(LPCTSTR propVal)
  2925. {
  2926.     SetProperty(0x10001, VT_BSTR, propVal);
  2927. }
  2928.  
  2929. CString ILayer::Get_Name()
  2930. {
  2931.     CString result;
  2932.     GetProperty(0x0, VT_BSTR, (void*)&result);
  2933.     return result;
  2934. }
  2935.  
  2936. void ILayer::Set_Name(LPCTSTR propVal)
  2937. {
  2938.     SetProperty(0x0, VT_BSTR, propVal);
  2939. }
  2940.  
  2941. BOOL ILayer::GetOn()
  2942. {
  2943.     BOOL result;
  2944.     GetProperty(0x1, VT_BOOL, (void*)&result);
  2945.     return result;
  2946. }
  2947.  
  2948. void ILayer::SetOn(BOOL propVal)
  2949. {
  2950.     SetProperty(0x1, VT_BOOL, propVal);
  2951. }
  2952.  
  2953. BOOL ILayer::GetFrozen()
  2954. {
  2955.     BOOL result;
  2956.     GetProperty(0x2, VT_BOOL, (void*)&result);
  2957.     return result;
  2958. }
  2959.  
  2960. void ILayer::SetFrozen(BOOL propVal)
  2961. {
  2962.     SetProperty(0x2, VT_BOOL, propVal);
  2963. }
  2964.  
  2965. LPDISPATCH ILayer::GetColor()
  2966. {
  2967.     LPDISPATCH result;
  2968.     GetProperty(0x3, VT_DISPATCH, (void*)&result);
  2969.     return result;
  2970. }
  2971.  
  2972. void ILayer::SetColor(LPDISPATCH propVal)
  2973. {
  2974.     SetProperty(0x3, VT_DISPATCH, propVal);
  2975. }
  2976.  
  2977. short ILayer::GetColorNumber()
  2978. {
  2979.     short result;
  2980.     GetProperty(0x4, VT_I2, (void*)&result);
  2981.     return result;
  2982. }
  2983.  
  2984. void ILayer::SetColorNumber(short propVal)
  2985. {
  2986.     SetProperty(0x4, VT_I2, propVal);
  2987. }
  2988.  
  2989. LPDISPATCH ILayer::GetLinetype()
  2990. {
  2991.     LPDISPATCH result;
  2992.     GetProperty(0x5, VT_DISPATCH, (void*)&result);
  2993.     return result;
  2994. }
  2995.  
  2996. void ILayer::SetLinetype(LPDISPATCH propVal)
  2997. {
  2998.     SetProperty(0x5, VT_DISPATCH, propVal);
  2999. }
  3000.  
  3001. /////////////////////////////////////////////////////////////////////////////
  3002. // ILayer operations
  3003.  
  3004. BOOL ILayer::GetFrozenInView(LPDISPATCH view)
  3005. {
  3006.     BOOL result;
  3007.     static BYTE parms[] =
  3008.         VTS_DISPATCH;
  3009.     InvokeHelper(0x6, DISPATCH_PROPERTYGET, VT_BOOL, (void*)&result, parms,
  3010.         view);
  3011.     return result;
  3012. }
  3013.  
  3014. void ILayer::SetFrozenInView(LPDISPATCH view, BOOL bNewValue)
  3015. {
  3016.     static BYTE parms[] =
  3017.         VTS_DISPATCH VTS_BOOL;
  3018.     InvokeHelper(0x6, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms,
  3019.          view, bNewValue);
  3020. }
  3021.  
  3022.  
  3023. /////////////////////////////////////////////////////////////////////////////
  3024. // ILinetypes properties
  3025.  
  3026. LPDISPATCH ILinetypes::GetApplication()
  3027. {
  3028.     LPDISPATCH result;
  3029.     GetProperty(0x20001, VT_DISPATCH, (void*)&result);
  3030.     return result;
  3031. }
  3032.  
  3033. LPDISPATCH ILinetypes::GetParent()
  3034. {
  3035.     LPDISPATCH result;
  3036.     GetProperty(0x20002, VT_DISPATCH, (void*)&result);
  3037.     return result;
  3038. }
  3039.  
  3040. long ILinetypes::GetCount()
  3041. {
  3042.     long result;
  3043.     GetProperty(0x10001, VT_I4, (void*)&result);
  3044.     return result;
  3045. }
  3046.  
  3047. LPDISPATCH ILinetypes::GetActive()
  3048. {
  3049.     LPDISPATCH result;
  3050.     GetProperty(0x5, VT_DISPATCH, (void*)&result);
  3051.     return result;
  3052. }
  3053.  
  3054. void ILinetypes::SetActive(LPDISPATCH propVal)
  3055. {
  3056.     SetProperty(0x5, VT_DISPATCH, propVal);
  3057. }
  3058.  
  3059. double ILinetypes::GetScaling()
  3060. {
  3061.     double result;
  3062.     GetProperty(0x6, VT_R8, (void*)&result);
  3063.     return result;
  3064. }
  3065.  
  3066. void ILinetypes::SetScaling(double propVal)
  3067. {
  3068.     SetProperty(0x6, VT_R8, propVal);
  3069. }
  3070.  
  3071. BOOL ILinetypes::GetPaperSpaceScaling()
  3072. {
  3073.     BOOL result;
  3074.     GetProperty(0x7, VT_BOOL, (void*)&result);
  3075.     return result;
  3076. }
  3077.  
  3078. void ILinetypes::SetPaperSpaceScaling(BOOL propVal)
  3079. {
  3080.     SetProperty(0x7, VT_BOOL, propVal);
  3081. }
  3082.  
  3083. LPDISPATCH ILinetypes::GetSameAsLayer()
  3084. {
  3085.     LPDISPATCH result;
  3086.     GetProperty(0x8, VT_DISPATCH, (void*)&result);
  3087.     return result;
  3088. }
  3089.  
  3090. LPDISPATCH ILinetypes::GetSameAsBlock()
  3091. {
  3092.     LPDISPATCH result;
  3093.     GetProperty(0x9, VT_DISPATCH, (void*)&result);
  3094.     return result;
  3095. }
  3096.  
  3097. /////////////////////////////////////////////////////////////////////////////
  3098. // ILinetypes operations
  3099.  
  3100. LPDISPATCH ILinetypes::GetItem(const VARIANT& which)
  3101. {
  3102.     LPDISPATCH result;
  3103.     static BYTE parms[] =
  3104.         VTS_VARIANT;
  3105.     InvokeHelper(0x10002, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  3106.         &which);
  3107.     return result;
  3108. }
  3109.  
  3110. BOOL ILinetypes::GetHasItem(const VARIANT& which)
  3111. {
  3112.     BOOL result;
  3113.     static BYTE parms[] =
  3114.         VTS_VARIANT;
  3115.     InvokeHelper(0x10003, DISPATCH_PROPERTYGET, VT_BOOL, (void*)&result, parms,
  3116.         &which);
  3117.     return result;
  3118. }
  3119.  
  3120. LPDISPATCH ILinetypes::Get_Item(const VARIANT& which)
  3121. {
  3122.     LPDISPATCH result;
  3123.     static BYTE parms[] =
  3124.         VTS_VARIANT;
  3125.     InvokeHelper(0x0, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  3126.         &which);
  3127.     return result;
  3128. }
  3129.  
  3130. void ILinetypes::Dialog()
  3131. {
  3132.     InvokeHelper(0x1, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  3133. }
  3134.  
  3135. void ILinetypes::Update()
  3136. {
  3137.     InvokeHelper(0x2, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  3138. }
  3139.  
  3140. void ILinetypes::UpdateNow()
  3141. {
  3142.     InvokeHelper(0x3, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  3143. }
  3144.  
  3145. LPDISPATCH ILinetypes::Add(LPCTSTR Name)
  3146. {
  3147.     LPDISPATCH result;
  3148.     static BYTE parms[] =
  3149.         VTS_BSTR;
  3150.     InvokeHelper(0x4, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  3151.         Name);
  3152.     return result;
  3153. }
  3154.  
  3155.  
  3156. /////////////////////////////////////////////////////////////////////////////
  3157. // ILinetype properties
  3158.  
  3159. LPDISPATCH ILinetype::GetApplication()
  3160. {
  3161.     LPDISPATCH result;
  3162.     GetProperty(0x20001, VT_DISPATCH, (void*)&result);
  3163.     return result;
  3164. }
  3165.  
  3166. LPDISPATCH ILinetype::GetParent()
  3167. {
  3168.     LPDISPATCH result;
  3169.     GetProperty(0x20002, VT_DISPATCH, (void*)&result);
  3170.     return result;
  3171. }
  3172.  
  3173. CString ILinetype::GetName()
  3174. {
  3175.     CString result;
  3176.     GetProperty(0x10001, VT_BSTR, (void*)&result);
  3177.     return result;
  3178. }
  3179.  
  3180. void ILinetype::SetName(LPCTSTR propVal)
  3181. {
  3182.     SetProperty(0x10001, VT_BSTR, propVal);
  3183. }
  3184.  
  3185. CString ILinetype::Get_Name()
  3186. {
  3187.     CString result;
  3188.     GetProperty(0x0, VT_BSTR, (void*)&result);
  3189.     return result;
  3190. }
  3191.  
  3192. void ILinetype::Set_Name(LPCTSTR propVal)
  3193. {
  3194.     SetProperty(0x0, VT_BSTR, propVal);
  3195. }
  3196.  
  3197. CString ILinetype::GetDescription()
  3198. {
  3199.     CString result;
  3200.     GetProperty(0x1, VT_BSTR, (void*)&result);
  3201.     return result;
  3202. }
  3203.  
  3204. void ILinetype::SetDescription(LPCTSTR propVal)
  3205. {
  3206.     SetProperty(0x1, VT_BSTR, propVal);
  3207. }
  3208.  
  3209. short ILinetype::GetCount()
  3210. {
  3211.     short result;
  3212.     GetProperty(0x2, VT_I2, (void*)&result);
  3213.     return result;
  3214. }
  3215.  
  3216. /////////////////////////////////////////////////////////////////////////////
  3217. // ILinetype operations
  3218.  
  3219. double ILinetype::GetItem(short index)
  3220. {
  3221.     double result;
  3222.     static BYTE parms[] =
  3223.         VTS_I2;
  3224.     InvokeHelper(0x3, DISPATCH_PROPERTYGET, VT_R8, (void*)&result, parms,
  3225.         index);
  3226.     return result;
  3227. }
  3228.  
  3229. void ILinetype::SetItem(short index, double newValue)
  3230. {
  3231.     static BYTE parms[] =
  3232.         VTS_I2 VTS_R8;
  3233.     InvokeHelper(0x3, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms,
  3234.          index, newValue);
  3235. }
  3236.  
  3237.  
  3238. /////////////////////////////////////////////////////////////////////////////
  3239. // IBlocks properties
  3240.  
  3241. LPDISPATCH IBlocks::GetApplication()
  3242. {
  3243.     LPDISPATCH result;
  3244.     GetProperty(0x20001, VT_DISPATCH, (void*)&result);
  3245.     return result;
  3246. }
  3247.  
  3248. LPDISPATCH IBlocks::GetParent()
  3249. {
  3250.     LPDISPATCH result;
  3251.     GetProperty(0x20002, VT_DISPATCH, (void*)&result);
  3252.     return result;
  3253. }
  3254.  
  3255. long IBlocks::GetCount()
  3256. {
  3257.     long result;
  3258.     GetProperty(0x10001, VT_I4, (void*)&result);
  3259.     return result;
  3260. }
  3261.  
  3262. LPDISPATCH IBlocks::GetInsertBase()
  3263. {
  3264.     LPDISPATCH result;
  3265.     GetProperty(0x6, VT_DISPATCH, (void*)&result);
  3266.     return result;
  3267. }
  3268.  
  3269. void IBlocks::SetInsertBase(LPDISPATCH propVal)
  3270. {
  3271.     SetProperty(0x6, VT_DISPATCH, propVal);
  3272. }
  3273.  
  3274. LPDISPATCH IBlocks::GetPaperSpaceInsertBase()
  3275. {
  3276.     LPDISPATCH result;
  3277.     GetProperty(0x7, VT_DISPATCH, (void*)&result);
  3278.     return result;
  3279. }
  3280.  
  3281. void IBlocks::SetPaperSpaceInsertBase(LPDISPATCH propVal)
  3282. {
  3283.     SetProperty(0x7, VT_DISPATCH, propVal);
  3284. }
  3285.  
  3286. BOOL IBlocks::GetXrefVisibility()
  3287. {
  3288.     BOOL result;
  3289.     GetProperty(0x8, VT_BOOL, (void*)&result);
  3290.     return result;
  3291. }
  3292.  
  3293. void IBlocks::SetXrefVisibility(BOOL propVal)
  3294. {
  3295.     SetProperty(0x8, VT_BOOL, propVal);
  3296. }
  3297.  
  3298. /////////////////////////////////////////////////////////////////////////////
  3299. // IBlocks operations
  3300.  
  3301. LPDISPATCH IBlocks::GetItem(const VARIANT& which)
  3302. {
  3303.     LPDISPATCH result;
  3304.     static BYTE parms[] =
  3305.         VTS_VARIANT;
  3306.     InvokeHelper(0x10002, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  3307.         &which);
  3308.     return result;
  3309. }
  3310.  
  3311. BOOL IBlocks::GetHasItem(const VARIANT& which)
  3312. {
  3313.     BOOL result;
  3314.     static BYTE parms[] =
  3315.         VTS_VARIANT;
  3316.     InvokeHelper(0x10003, DISPATCH_PROPERTYGET, VT_BOOL, (void*)&result, parms,
  3317.         &which);
  3318.     return result;
  3319. }
  3320.  
  3321. LPDISPATCH IBlocks::Get_Item(const VARIANT& which)
  3322. {
  3323.     LPDISPATCH result;
  3324.     static BYTE parms[] =
  3325.         VTS_VARIANT;
  3326.     InvokeHelper(0x0, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  3327.         &which);
  3328.     return result;
  3329. }
  3330.  
  3331. void IBlocks::Dialog()
  3332. {
  3333.     InvokeHelper(0x1, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  3334. }
  3335.  
  3336. void IBlocks::Update()
  3337. {
  3338.     InvokeHelper(0x2, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  3339. }
  3340.  
  3341. void IBlocks::UpdateNow()
  3342. {
  3343.     InvokeHelper(0x3, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  3344. }
  3345.  
  3346. LPDISPATCH IBlocks::Add(LPCTSTR Name, LPDISPATCH basepoint, const VARIANT& how)
  3347. {
  3348.     LPDISPATCH result;
  3349.     static BYTE parms[] =
  3350.         VTS_BSTR VTS_DISPATCH VTS_VARIANT;
  3351.     InvokeHelper(0x4, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  3352.         Name, basepoint, &how);
  3353.     return result;
  3354. }
  3355.  
  3356. LPDISPATCH IBlocks::Load(LPCTSTR filename, const VARIANT& asxref, const VARIANT& blockname)
  3357. {
  3358.     LPDISPATCH result;
  3359.     static BYTE parms[] =
  3360.         VTS_BSTR VTS_VARIANT VTS_VARIANT;
  3361.     InvokeHelper(0x5, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  3362.         filename, &asxref, &blockname);
  3363.     return result;
  3364. }
  3365.  
  3366.  
  3367. /////////////////////////////////////////////////////////////////////////////
  3368. // IBlock properties
  3369.  
  3370. LPDISPATCH IBlock::GetApplication()
  3371. {
  3372.     LPDISPATCH result;
  3373.     GetProperty(0x20001, VT_DISPATCH, (void*)&result);
  3374.     return result;
  3375. }
  3376.  
  3377. LPDISPATCH IBlock::GetParent()
  3378. {
  3379.     LPDISPATCH result;
  3380.     GetProperty(0x20002, VT_DISPATCH, (void*)&result);
  3381.     return result;
  3382. }
  3383.  
  3384. CString IBlock::GetName()
  3385. {
  3386.     CString result;
  3387.     GetProperty(0x10001, VT_BSTR, (void*)&result);
  3388.     return result;
  3389. }
  3390.  
  3391. void IBlock::SetName(LPCTSTR propVal)
  3392. {
  3393.     SetProperty(0x10001, VT_BSTR, propVal);
  3394. }
  3395.  
  3396. CString IBlock::Get_Name()
  3397. {
  3398.     CString result;
  3399.     GetProperty(0x0, VT_BSTR, (void*)&result);
  3400.     return result;
  3401. }
  3402.  
  3403. void IBlock::Set_Name(LPCTSTR propVal)
  3404. {
  3405.     SetProperty(0x0, VT_BSTR, propVal);
  3406. }
  3407.  
  3408. LPDISPATCH IBlock::GetWhere()
  3409. {
  3410.     LPDISPATCH result;
  3411.     GetProperty(0x1, VT_DISPATCH, (void*)&result);
  3412.     return result;
  3413. }
  3414.  
  3415. void IBlock::SetWhere(LPDISPATCH propVal)
  3416. {
  3417.     SetProperty(0x1, VT_DISPATCH, propVal);
  3418. }
  3419.  
  3420. LPDISPATCH IBlock::GetExtentsMin()
  3421. {
  3422.     LPDISPATCH result;
  3423.     GetProperty(0x2, VT_DISPATCH, (void*)&result);
  3424.     return result;
  3425. }
  3426.  
  3427. LPDISPATCH IBlock::GetExtentsMax()
  3428. {
  3429.     LPDISPATCH result;
  3430.     GetProperty(0x3, VT_DISPATCH, (void*)&result);
  3431.     return result;
  3432. }
  3433.  
  3434. BOOL IBlock::GetIsXref()
  3435. {
  3436.     BOOL result;
  3437.     GetProperty(0x4, VT_BOOL, (void*)&result);
  3438.     return result;
  3439. }
  3440.  
  3441. BOOL IBlock::GetIsAnonymous()
  3442. {
  3443.     BOOL result;
  3444.     GetProperty(0x5, VT_BOOL, (void*)&result);
  3445.     return result;
  3446. }
  3447.  
  3448. BOOL IBlock::GetHasAttributes()
  3449. {
  3450.     BOOL result;
  3451.     GetProperty(0x6, VT_BOOL, (void*)&result);
  3452.     return result;
  3453. }
  3454.  
  3455. LPDISPATCH IBlock::GetInserts()
  3456. {
  3457.     LPDISPATCH result;
  3458.     GetProperty(0x7, VT_DISPATCH, (void*)&result);
  3459.     return result;
  3460. }
  3461.  
  3462. /////////////////////////////////////////////////////////////////////////////
  3463. // IBlock operations
  3464.  
  3465. void IBlock::SaveAs(LPCTSTR filename)
  3466. {
  3467.     static BYTE parms[] =
  3468.         VTS_BSTR;
  3469.     InvokeHelper(0x8, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  3470.          filename);
  3471. }
  3472.  
  3473. void IBlock::CopyToClipboard()
  3474. {
  3475.     InvokeHelper(0x9, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  3476. }
  3477.  
  3478. void IBlock::XrefReload()
  3479. {
  3480.     InvokeHelper(0xa, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  3481. }
  3482.  
  3483. void IBlock::XrefDetach()
  3484. {
  3485.     InvokeHelper(0xb, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  3486. }
  3487.  
  3488. void IBlock::XrefBind()
  3489. {
  3490.     InvokeHelper(0xc, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  3491. }
  3492.  
  3493.  
  3494. /////////////////////////////////////////////////////////////////////////////
  3495. // IDimStyles properties
  3496.  
  3497. LPDISPATCH IDimStyles::GetApplication()
  3498. {
  3499.     LPDISPATCH result;
  3500.     GetProperty(0x20001, VT_DISPATCH, (void*)&result);
  3501.     return result;
  3502. }
  3503.  
  3504. LPDISPATCH IDimStyles::GetParent()
  3505. {
  3506.     LPDISPATCH result;
  3507.     GetProperty(0x20002, VT_DISPATCH, (void*)&result);
  3508.     return result;
  3509. }
  3510.  
  3511. long IDimStyles::GetCount()
  3512. {
  3513.     long result;
  3514.     GetProperty(0x10001, VT_I4, (void*)&result);
  3515.     return result;
  3516. }
  3517.  
  3518. LPDISPATCH IDimStyles::GetActive()
  3519. {
  3520.     LPDISPATCH result;
  3521.     GetProperty(0x5, VT_DISPATCH, (void*)&result);
  3522.     return result;
  3523. }
  3524.  
  3525. void IDimStyles::SetActive(LPDISPATCH propVal)
  3526. {
  3527.     SetProperty(0x5, VT_DISPATCH, propVal);
  3528. }
  3529.  
  3530. LPDISPATCH IDimStyles::GetUnnamed()
  3531. {
  3532.     LPDISPATCH result;
  3533.     GetProperty(0x6, VT_DISPATCH, (void*)&result);
  3534.     return result;
  3535. }
  3536.  
  3537. /////////////////////////////////////////////////////////////////////////////
  3538. // IDimStyles operations
  3539.  
  3540. LPDISPATCH IDimStyles::GetItem(const VARIANT& which)
  3541. {
  3542.     LPDISPATCH result;
  3543.     static BYTE parms[] =
  3544.         VTS_VARIANT;
  3545.     InvokeHelper(0x10002, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  3546.         &which);
  3547.     return result;
  3548. }
  3549.  
  3550. BOOL IDimStyles::GetHasItem(const VARIANT& which)
  3551. {
  3552.     BOOL result;
  3553.     static BYTE parms[] =
  3554.         VTS_VARIANT;
  3555.     InvokeHelper(0x10003, DISPATCH_PROPERTYGET, VT_BOOL, (void*)&result, parms,
  3556.         &which);
  3557.     return result;
  3558. }
  3559.  
  3560. LPDISPATCH IDimStyles::Get_Item(const VARIANT& which)
  3561. {
  3562.     LPDISPATCH result;
  3563.     static BYTE parms[] =
  3564.         VTS_VARIANT;
  3565.     InvokeHelper(0x0, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  3566.         &which);
  3567.     return result;
  3568. }
  3569.  
  3570. void IDimStyles::Dialog()
  3571. {
  3572.     InvokeHelper(0x1, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  3573. }
  3574.  
  3575. void IDimStyles::Update()
  3576. {
  3577.     InvokeHelper(0x2, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  3578. }
  3579.  
  3580. void IDimStyles::UpdateNow()
  3581. {
  3582.     InvokeHelper(0x3, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  3583. }
  3584.  
  3585. LPDISPATCH IDimStyles::Add(LPCTSTR Name)
  3586. {
  3587.     LPDISPATCH result;
  3588.     static BYTE parms[] =
  3589.         VTS_BSTR;
  3590.     InvokeHelper(0x4, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  3591.         Name);
  3592.     return result;
  3593. }
  3594.  
  3595.  
  3596. /////////////////////////////////////////////////////////////////////////////
  3597. // IDimStyle properties
  3598.  
  3599. LPDISPATCH IDimStyle::GetApplication()
  3600. {
  3601.     LPDISPATCH result;
  3602.     GetProperty(0x20001, VT_DISPATCH, (void*)&result);
  3603.     return result;
  3604. }
  3605.  
  3606. LPDISPATCH IDimStyle::GetParent()
  3607. {
  3608.     LPDISPATCH result;
  3609.     GetProperty(0x20002, VT_DISPATCH, (void*)&result);
  3610.     return result;
  3611. }
  3612.  
  3613. CString IDimStyle::GetName()
  3614. {
  3615.     CString result;
  3616.     GetProperty(0x10001, VT_BSTR, (void*)&result);
  3617.     return result;
  3618. }
  3619.  
  3620. void IDimStyle::SetName(LPCTSTR propVal)
  3621. {
  3622.     SetProperty(0x10001, VT_BSTR, propVal);
  3623. }
  3624.  
  3625. CString IDimStyle::Get_Name()
  3626. {
  3627.     CString result;
  3628.     GetProperty(0x0, VT_BSTR, (void*)&result);
  3629.     return result;
  3630. }
  3631.  
  3632. void IDimStyle::Set_Name(LPCTSTR propVal)
  3633. {
  3634.     SetProperty(0x0, VT_BSTR, propVal);
  3635. }
  3636.  
  3637. double IDimStyle::GetExtensionAboveLine()
  3638. {
  3639.     double result;
  3640.     GetProperty(0x1, VT_R8, (void*)&result);
  3641.     return result;
  3642. }
  3643.  
  3644. void IDimStyle::SetExtensionAboveLine(double propVal)
  3645. {
  3646.     SetProperty(0x1, VT_R8, propVal);
  3647. }
  3648.  
  3649. double IDimStyle::GetOffsetFromFeature()
  3650. {
  3651.     double result;
  3652.     GetProperty(0x2, VT_R8, (void*)&result);
  3653.     return result;
  3654. }
  3655.  
  3656. void IDimStyle::SetOffsetFromFeature(double propVal)
  3657. {
  3658.     SetProperty(0x2, VT_R8, propVal);
  3659. }
  3660.  
  3661. BOOL IDimStyle::GetExtension1Visibility()
  3662. {
  3663.     BOOL result;
  3664.     GetProperty(0x3, VT_BOOL, (void*)&result);
  3665.     return result;
  3666. }
  3667.  
  3668. void IDimStyle::SetExtension1Visibility(BOOL propVal)
  3669. {
  3670.     SetProperty(0x3, VT_BOOL, propVal);
  3671. }
  3672.  
  3673. BOOL IDimStyle::GetExtension2Visibility()
  3674. {
  3675.     BOOL result;
  3676.     GetProperty(0x4, VT_BOOL, (void*)&result);
  3677.     return result;
  3678. }
  3679.  
  3680. void IDimStyle::SetExtension2Visibility(BOOL propVal)
  3681. {
  3682.     SetProperty(0x4, VT_BOOL, propVal);
  3683. }
  3684.  
  3685. double IDimStyle::GetCenterMarkSize()
  3686. {
  3687.     double result;
  3688.     GetProperty(0x5, VT_R8, (void*)&result);
  3689.     return result;
  3690. }
  3691.  
  3692. void IDimStyle::SetCenterMarkSize(double propVal)
  3693. {
  3694.     SetProperty(0x5, VT_R8, propVal);
  3695. }
  3696.  
  3697. LPDISPATCH IDimStyle::GetExtensionColor()
  3698. {
  3699.     LPDISPATCH result;
  3700.     GetProperty(0x6, VT_DISPATCH, (void*)&result);
  3701.     return result;
  3702. }
  3703.  
  3704. void IDimStyle::SetExtensionColor(LPDISPATCH propVal)
  3705. {
  3706.     SetProperty(0x6, VT_DISPATCH, propVal);
  3707. }
  3708.  
  3709. BOOL IDimStyle::GetCreateCenterLines()
  3710. {
  3711.     BOOL result;
  3712.     GetProperty(0x7, VT_BOOL, (void*)&result);
  3713.     return result;
  3714. }
  3715.  
  3716. void IDimStyle::SetCreateCenterLines(BOOL propVal)
  3717. {
  3718.     SetProperty(0x7, VT_BOOL, propVal);
  3719. }
  3720.  
  3721. BOOL IDimStyle::GetForceInteriorLines()
  3722. {
  3723.     BOOL result;
  3724.     GetProperty(0x8, VT_BOOL, (void*)&result);
  3725.     return result;
  3726. }
  3727.  
  3728. void IDimStyle::SetForceInteriorLines(BOOL propVal)
  3729. {
  3730.     SetProperty(0x8, VT_BOOL, propVal);
  3731. }
  3732.  
  3733. BOOL IDimStyle::GetBoxAroundText()
  3734. {
  3735.     BOOL result;
  3736.     GetProperty(0x9, VT_BOOL, (void*)&result);
  3737.     return result;
  3738. }
  3739.  
  3740. void IDimStyle::SetBoxAroundText(BOOL propVal)
  3741. {
  3742.     SetProperty(0x9, VT_BOOL, propVal);
  3743. }
  3744.  
  3745. double IDimStyle::GetScaling()
  3746. {
  3747.     double result;
  3748.     GetProperty(0xa, VT_R8, (void*)&result);
  3749.     return result;
  3750. }
  3751.  
  3752. void IDimStyle::SetScaling(double propVal)
  3753. {
  3754.     SetProperty(0xa, VT_R8, propVal);
  3755. }
  3756.  
  3757. double IDimStyle::GetBaselineIncrement()
  3758. {
  3759.     double result;
  3760.     GetProperty(0xb, VT_R8, (void*)&result);
  3761.     return result;
  3762. }
  3763.  
  3764. void IDimStyle::SetBaselineIncrement(double propVal)
  3765. {
  3766.     SetProperty(0xb, VT_R8, propVal);
  3767. }
  3768.  
  3769. double IDimStyle::GetTextGap()
  3770. {
  3771.     double result;
  3772.     GetProperty(0xc, VT_R8, (void*)&result);
  3773.     return result;
  3774. }
  3775.  
  3776. void IDimStyle::SetTextGap(double propVal)
  3777. {
  3778.     SetProperty(0xc, VT_R8, propVal);
  3779. }
  3780.  
  3781. LPDISPATCH IDimStyle::GetDimensionLineColor()
  3782. {
  3783.     LPDISPATCH result;
  3784.     GetProperty(0xd, VT_DISPATCH, (void*)&result);
  3785.     return result;
  3786. }
  3787.  
  3788. void IDimStyle::SetDimensionLineColor(LPDISPATCH propVal)
  3789. {
  3790.     SetProperty(0xd, VT_DISPATCH, propVal);
  3791. }
  3792.  
  3793. double IDimStyle::GetTickExtension()
  3794. {
  3795.     double result;
  3796.     GetProperty(0xe, VT_R8, (void*)&result);
  3797.     return result;
  3798. }
  3799.  
  3800. void IDimStyle::SetTickExtension(double propVal)
  3801. {
  3802.     SetProperty(0xe, VT_R8, propVal);
  3803. }
  3804.  
  3805. double IDimStyle::GetTickSize()
  3806. {
  3807.     double result;
  3808.     GetProperty(0xf, VT_R8, (void*)&result);
  3809.     return result;
  3810. }
  3811.  
  3812. void IDimStyle::SetTickSize(double propVal)
  3813. {
  3814.     SetProperty(0xf, VT_R8, propVal);
  3815. }
  3816.  
  3817. double IDimStyle::GetArrowSize()
  3818. {
  3819.     double result;
  3820.     GetProperty(0x10, VT_R8, (void*)&result);
  3821.     return result;
  3822. }
  3823.  
  3824. void IDimStyle::SetArrowSize(double propVal)
  3825. {
  3826.     SetProperty(0x10, VT_R8, propVal);
  3827. }
  3828.  
  3829. BOOL IDimStyle::GetSeparateArrowHeads()
  3830. {
  3831.     BOOL result;
  3832.     GetProperty(0x11, VT_BOOL, (void*)&result);
  3833.     return result;
  3834. }
  3835.  
  3836. void IDimStyle::SetSeparateArrowHeads(BOOL propVal)
  3837. {
  3838.     SetProperty(0x11, VT_BOOL, propVal);
  3839. }
  3840.  
  3841. long IDimStyle::GetArrowsType()
  3842. {
  3843.     long result;
  3844.     GetProperty(0x12, VT_I4, (void*)&result);
  3845.     return result;
  3846. }
  3847.  
  3848. long IDimStyle::GetArrow1Type()
  3849. {
  3850.     long result;
  3851.     GetProperty(0x13, VT_I4, (void*)&result);
  3852.     return result;
  3853. }
  3854.  
  3855. long IDimStyle::GetArrow2Type()
  3856. {
  3857.     long result;
  3858.     GetProperty(0x14, VT_I4, (void*)&result);
  3859.     return result;
  3860. }
  3861.  
  3862. LPDISPATCH IDimStyle::GetArrowsBlock()
  3863. {
  3864.     LPDISPATCH result;
  3865.     GetProperty(0x15, VT_DISPATCH, (void*)&result);
  3866.     return result;
  3867. }
  3868.  
  3869. void IDimStyle::SetArrowsBlock(LPDISPATCH propVal)
  3870. {
  3871.     SetProperty(0x15, VT_DISPATCH, propVal);
  3872. }
  3873.  
  3874. LPDISPATCH IDimStyle::GetArrow1Block()
  3875. {
  3876.     LPDISPATCH result;
  3877.     GetProperty(0x16, VT_DISPATCH, (void*)&result);
  3878.     return result;
  3879. }
  3880.  
  3881. void IDimStyle::SetArrow1Block(LPDISPATCH propVal)
  3882. {
  3883.     SetProperty(0x16, VT_DISPATCH, propVal);
  3884. }
  3885.  
  3886. LPDISPATCH IDimStyle::GetArrow2Block()
  3887. {
  3888.     LPDISPATCH result;
  3889.     GetProperty(0x17, VT_DISPATCH, (void*)&result);
  3890.     return result;
  3891. }
  3892.  
  3893. void IDimStyle::SetArrow2Block(LPDISPATCH propVal)
  3894. {
  3895.     SetProperty(0x17, VT_DISPATCH, propVal);
  3896. }
  3897.  
  3898. double IDimStyle::GetTextHeight()
  3899. {
  3900.     double result;
  3901.     GetProperty(0x18, VT_R8, (void*)&result);
  3902.     return result;
  3903. }
  3904.  
  3905. void IDimStyle::SetTextHeight(double propVal)
  3906. {
  3907.     SetProperty(0x18, VT_R8, propVal);
  3908. }
  3909.  
  3910. double IDimStyle::GetTextHeightValue()
  3911. {
  3912.     double result;
  3913.     GetProperty(0x19, VT_R8, (void*)&result);
  3914.     return result;
  3915. }
  3916.  
  3917. void IDimStyle::SetTextHeightValue(double propVal)
  3918. {
  3919.     SetProperty(0x19, VT_R8, propVal);
  3920. }
  3921.  
  3922. double IDimStyle::GetVerticalPosition()
  3923. {
  3924.     double result;
  3925.     GetProperty(0x1a, VT_R8, (void*)&result);
  3926.     return result;
  3927. }
  3928.  
  3929. void IDimStyle::SetVerticalPosition(double propVal)
  3930. {
  3931.     SetProperty(0x1a, VT_R8, propVal);
  3932. }
  3933.  
  3934. short IDimStyle::GetAlignment()
  3935. {
  3936.     short result;
  3937.     GetProperty(0x1b, VT_I2, (void*)&result);
  3938.     return result;
  3939. }
  3940.  
  3941. void IDimStyle::SetAlignment(short propVal)
  3942. {
  3943.     SetProperty(0x1b, VT_I2, propVal);
  3944. }
  3945.  
  3946. short IDimStyle::GetVertical()
  3947. {
  3948.     short result;
  3949.     GetProperty(0x1c, VT_I2, (void*)&result);
  3950.     return result;
  3951. }
  3952.  
  3953. void IDimStyle::SetVertical(short propVal)
  3954. {
  3955.     SetProperty(0x1c, VT_I2, propVal);
  3956. }
  3957.  
  3958. short IDimStyle::GetHorizontal()
  3959. {
  3960.     short result;
  3961.     GetProperty(0x1d, VT_I2, (void*)&result);
  3962.     return result;
  3963. }
  3964.  
  3965. void IDimStyle::SetHorizontal(short propVal)
  3966. {
  3967.     SetProperty(0x1d, VT_I2, propVal);
  3968. }
  3969.  
  3970. LPDISPATCH IDimStyle::GetTextColor()
  3971. {
  3972.     LPDISPATCH result;
  3973.     GetProperty(0x1e, VT_DISPATCH, (void*)&result);
  3974.     return result;
  3975. }
  3976.  
  3977. void IDimStyle::SetTextColor(LPDISPATCH propVal)
  3978. {
  3979.     SetProperty(0x1e, VT_DISPATCH, propVal);
  3980. }
  3981.  
  3982. double IDimStyle::GetToleranceHeightScaling()
  3983. {
  3984.     double result;
  3985.     GetProperty(0x1f, VT_R8, (void*)&result);
  3986.     return result;
  3987. }
  3988.  
  3989. void IDimStyle::SetToleranceHeightScaling(double propVal)
  3990. {
  3991.     SetProperty(0x1f, VT_R8, propVal);
  3992. }
  3993.  
  3994. double IDimStyle::GetRoundOff()
  3995. {
  3996.     double result;
  3997.     GetProperty(0x20, VT_R8, (void*)&result);
  3998.     return result;
  3999. }
  4000.  
  4001. void IDimStyle::SetRoundOff(double propVal)
  4002. {
  4003.     SetProperty(0x20, VT_R8, propVal);
  4004. }
  4005.  
  4006. CString IDimStyle::GetPreText()
  4007. {
  4008.     CString result;
  4009.     GetProperty(0x21, VT_BSTR, (void*)&result);
  4010.     return result;
  4011. }
  4012.  
  4013. void IDimStyle::SetPreText(LPCTSTR propVal)
  4014. {
  4015.     SetProperty(0x21, VT_BSTR, propVal);
  4016. }
  4017.  
  4018. CString IDimStyle::GetPostText()
  4019. {
  4020.     CString result;
  4021.     GetProperty(0x22, VT_BSTR, (void*)&result);
  4022.     return result;
  4023. }
  4024.  
  4025. void IDimStyle::SetPostText(LPCTSTR propVal)
  4026. {
  4027.     SetProperty(0x22, VT_BSTR, propVal);
  4028. }
  4029.  
  4030. double IDimStyle::GetLengthScaling()
  4031. {
  4032.     double result;
  4033.     GetProperty(0x23, VT_R8, (void*)&result);
  4034.     return result;
  4035. }
  4036.  
  4037. void IDimStyle::SetLengthScaling(double propVal)
  4038. {
  4039.     SetProperty(0x23, VT_R8, propVal);
  4040. }
  4041.  
  4042. short IDimStyle::GetTolerance()
  4043. {
  4044.     short result;
  4045.     GetProperty(0x24, VT_I2, (void*)&result);
  4046.     return result;
  4047. }
  4048.  
  4049. void IDimStyle::SetTolerance(short propVal)
  4050. {
  4051.     SetProperty(0x24, VT_I2, propVal);
  4052. }
  4053.  
  4054. double IDimStyle::GetUpper()
  4055. {
  4056.     double result;
  4057.     GetProperty(0x25, VT_R8, (void*)&result);
  4058.     return result;
  4059. }
  4060.  
  4061. void IDimStyle::SetUpper(double propVal)
  4062. {
  4063.     SetProperty(0x25, VT_R8, propVal);
  4064. }
  4065.  
  4066. double IDimStyle::GetLower()
  4067. {
  4068.     double result;
  4069.     GetProperty(0x26, VT_R8, (void*)&result);
  4070.     return result;
  4071. }
  4072.  
  4073. void IDimStyle::SetLower(double propVal)
  4074. {
  4075.     SetProperty(0x26, VT_R8, propVal);
  4076. }
  4077.  
  4078. BOOL IDimStyle::GetAlternateUnits()
  4079. {
  4080.     BOOL result;
  4081.     GetProperty(0x27, VT_BOOL, (void*)&result);
  4082.     return result;
  4083. }
  4084.  
  4085. void IDimStyle::SetAlternateUnits(BOOL propVal)
  4086. {
  4087.     SetProperty(0x27, VT_BOOL, propVal);
  4088. }
  4089.  
  4090. short IDimStyle::GetAlternatePrecision()
  4091. {
  4092.     short result;
  4093.     GetProperty(0x28, VT_I2, (void*)&result);
  4094.     return result;
  4095. }
  4096.  
  4097. void IDimStyle::SetAlternatePrecision(short propVal)
  4098. {
  4099.     SetProperty(0x28, VT_I2, propVal);
  4100. }
  4101.  
  4102. CString IDimStyle::GetAlternatePostText()
  4103. {
  4104.     CString result;
  4105.     GetProperty(0x29, VT_BSTR, (void*)&result);
  4106.     return result;
  4107. }
  4108.  
  4109. void IDimStyle::SetAlternatePostText(LPCTSTR propVal)
  4110. {
  4111.     SetProperty(0x29, VT_BSTR, propVal);
  4112. }
  4113.  
  4114. double IDimStyle::GetAlternateScaling()
  4115. {
  4116.     double result;
  4117.     GetProperty(0x2a, VT_R8, (void*)&result);
  4118.     return result;
  4119. }
  4120.  
  4121. void IDimStyle::SetAlternateScaling(double propVal)
  4122. {
  4123.     SetProperty(0x2a, VT_R8, propVal);
  4124. }
  4125.  
  4126. /////////////////////////////////////////////////////////////////////////////
  4127. // IDimStyle operations
  4128.  
  4129.  
  4130. /////////////////////////////////////////////////////////////////////////////
  4131. // ITextStyles properties
  4132.  
  4133. LPDISPATCH ITextStyles::GetApplication()
  4134. {
  4135.     LPDISPATCH result;
  4136.     GetProperty(0x20001, VT_DISPATCH, (void*)&result);
  4137.     return result;
  4138. }
  4139.  
  4140. LPDISPATCH ITextStyles::GetParent()
  4141. {
  4142.     LPDISPATCH result;
  4143.     GetProperty(0x20002, VT_DISPATCH, (void*)&result);
  4144.     return result;
  4145. }
  4146.  
  4147. long ITextStyles::GetCount()
  4148. {
  4149.     long result;
  4150.     GetProperty(0x10001, VT_I4, (void*)&result);
  4151.     return result;
  4152. }
  4153.  
  4154. LPDISPATCH ITextStyles::GetActive()
  4155. {
  4156.     LPDISPATCH result;
  4157.     GetProperty(0x5, VT_DISPATCH, (void*)&result);
  4158.     return result;
  4159. }
  4160.  
  4161. void ITextStyles::SetActive(LPDISPATCH propVal)
  4162. {
  4163.     SetProperty(0x5, VT_DISPATCH, propVal);
  4164. }
  4165.  
  4166. /////////////////////////////////////////////////////////////////////////////
  4167. // ITextStyles operations
  4168.  
  4169. LPDISPATCH ITextStyles::GetItem(const VARIANT& which)
  4170. {
  4171.     LPDISPATCH result;
  4172.     static BYTE parms[] =
  4173.         VTS_VARIANT;
  4174.     InvokeHelper(0x10002, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  4175.         &which);
  4176.     return result;
  4177. }
  4178.  
  4179. BOOL ITextStyles::GetHasItem(const VARIANT& which)
  4180. {
  4181.     BOOL result;
  4182.     static BYTE parms[] =
  4183.         VTS_VARIANT;
  4184.     InvokeHelper(0x10003, DISPATCH_PROPERTYGET, VT_BOOL, (void*)&result, parms,
  4185.         &which);
  4186.     return result;
  4187. }
  4188.  
  4189. LPDISPATCH ITextStyles::Get_Item(const VARIANT& which)
  4190. {
  4191.     LPDISPATCH result;
  4192.     static BYTE parms[] =
  4193.         VTS_VARIANT;
  4194.     InvokeHelper(0x0, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  4195.         &which);
  4196.     return result;
  4197. }
  4198.  
  4199. void ITextStyles::Dialog()
  4200. {
  4201.     InvokeHelper(0x1, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  4202. }
  4203.  
  4204. void ITextStyles::Update()
  4205. {
  4206.     InvokeHelper(0x2, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  4207. }
  4208.  
  4209. void ITextStyles::UpdateNow()
  4210. {
  4211.     InvokeHelper(0x3, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  4212. }
  4213.  
  4214. LPDISPATCH ITextStyles::Add(LPCTSTR Name)
  4215. {
  4216.     LPDISPATCH result;
  4217.     static BYTE parms[] =
  4218.         VTS_BSTR;
  4219.     InvokeHelper(0x4, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  4220.         Name);
  4221.     return result;
  4222. }
  4223.  
  4224.  
  4225. /////////////////////////////////////////////////////////////////////////////
  4226. // ITextStyle properties
  4227.  
  4228. LPDISPATCH ITextStyle::GetApplication()
  4229. {
  4230.     LPDISPATCH result;
  4231.     GetProperty(0x20001, VT_DISPATCH, (void*)&result);
  4232.     return result;
  4233. }
  4234.  
  4235. LPDISPATCH ITextStyle::GetParent()
  4236. {
  4237.     LPDISPATCH result;
  4238.     GetProperty(0x20002, VT_DISPATCH, (void*)&result);
  4239.     return result;
  4240. }
  4241.  
  4242. CString ITextStyle::GetName()
  4243. {
  4244.     CString result;
  4245.     GetProperty(0x10001, VT_BSTR, (void*)&result);
  4246.     return result;
  4247. }
  4248.  
  4249. void ITextStyle::SetName(LPCTSTR propVal)
  4250. {
  4251.     SetProperty(0x10001, VT_BSTR, propVal);
  4252. }
  4253.  
  4254. CString ITextStyle::Get_Name()
  4255. {
  4256.     CString result;
  4257.     GetProperty(0x0, VT_BSTR, (void*)&result);
  4258.     return result;
  4259. }
  4260.  
  4261. void ITextStyle::Set_Name(LPCTSTR propVal)
  4262. {
  4263.     SetProperty(0x0, VT_BSTR, propVal);
  4264. }
  4265.  
  4266. double ITextStyle::GetHeight()
  4267. {
  4268.     double result;
  4269.     GetProperty(0x1, VT_R8, (void*)&result);
  4270.     return result;
  4271. }
  4272.  
  4273. void ITextStyle::SetHeight(double propVal)
  4274. {
  4275.     SetProperty(0x1, VT_R8, propVal);
  4276. }
  4277.  
  4278. double ITextStyle::GetLastHeight()
  4279. {
  4280.     double result;
  4281.     GetProperty(0x2, VT_R8, (void*)&result);
  4282.     return result;
  4283. }
  4284.  
  4285. void ITextStyle::SetLastHeight(double propVal)
  4286. {
  4287.     SetProperty(0x2, VT_R8, propVal);
  4288. }
  4289.  
  4290. double ITextStyle::GetObliqueAngle()
  4291. {
  4292.     double result;
  4293.     GetProperty(0x3, VT_R8, (void*)&result);
  4294.     return result;
  4295. }
  4296.  
  4297. void ITextStyle::SetObliqueAngle(double propVal)
  4298. {
  4299.     SetProperty(0x3, VT_R8, propVal);
  4300. }
  4301.  
  4302. double ITextStyle::GetXScaling()
  4303. {
  4304.     double result;
  4305.     GetProperty(0x4, VT_R8, (void*)&result);
  4306.     return result;
  4307. }
  4308.  
  4309. void ITextStyle::SetXScaling(double propVal)
  4310. {
  4311.     SetProperty(0x4, VT_R8, propVal);
  4312. }
  4313.  
  4314. BOOL ITextStyle::GetUpsideDown()
  4315. {
  4316.     BOOL result;
  4317.     GetProperty(0x5, VT_BOOL, (void*)&result);
  4318.     return result;
  4319. }
  4320.  
  4321. void ITextStyle::SetUpsideDown(BOOL propVal)
  4322. {
  4323.     SetProperty(0x5, VT_BOOL, propVal);
  4324. }
  4325.  
  4326. BOOL ITextStyle::GetBackwards()
  4327. {
  4328.     BOOL result;
  4329.     GetProperty(0x6, VT_BOOL, (void*)&result);
  4330.     return result;
  4331. }
  4332.  
  4333. void ITextStyle::SetBackwards(BOOL propVal)
  4334. {
  4335.     SetProperty(0x6, VT_BOOL, propVal);
  4336. }
  4337.  
  4338. CString ITextStyle::GetFont()
  4339. {
  4340.     CString result;
  4341.     GetProperty(0x7, VT_BSTR, (void*)&result);
  4342.     return result;
  4343. }
  4344.  
  4345. void ITextStyle::SetFont(LPCTSTR propVal)
  4346. {
  4347.     SetProperty(0x7, VT_BSTR, propVal);
  4348. }
  4349.  
  4350. CString ITextStyle::GetBigFont()
  4351. {
  4352.     CString result;
  4353.     GetProperty(0x8, VT_BSTR, (void*)&result);
  4354.     return result;
  4355. }
  4356.  
  4357. void ITextStyle::SetBigFont(LPCTSTR propVal)
  4358. {
  4359.     SetProperty(0x8, VT_BSTR, propVal);
  4360. }
  4361.  
  4362. /////////////////////////////////////////////////////////////////////////////
  4363. // ITextStyle operations
  4364.  
  4365.  
  4366. /////////////////////////////////////////////////////////////////////////////
  4367. // IUcses properties
  4368.  
  4369. LPDISPATCH IUcses::GetApplication()
  4370. {
  4371.     LPDISPATCH result;
  4372.     GetProperty(0x20001, VT_DISPATCH, (void*)&result);
  4373.     return result;
  4374. }
  4375.  
  4376. LPDISPATCH IUcses::GetParent()
  4377. {
  4378.     LPDISPATCH result;
  4379.     GetProperty(0x20002, VT_DISPATCH, (void*)&result);
  4380.     return result;
  4381. }
  4382.  
  4383. long IUcses::GetCount()
  4384. {
  4385.     long result;
  4386.     GetProperty(0x10001, VT_I4, (void*)&result);
  4387.     return result;
  4388. }
  4389.  
  4390. LPDISPATCH IUcses::GetActive()
  4391. {
  4392.     LPDISPATCH result;
  4393.     GetProperty(0x6, VT_DISPATCH, (void*)&result);
  4394.     return result;
  4395. }
  4396.  
  4397. void IUcses::SetActive(LPDISPATCH propVal)
  4398. {
  4399.     SetProperty(0x6, VT_DISPATCH, propVal);
  4400. }
  4401.  
  4402. LPDISPATCH IUcses::GetPaperSpace()
  4403. {
  4404.     LPDISPATCH result;
  4405.     GetProperty(0x7, VT_DISPATCH, (void*)&result);
  4406.     return result;
  4407. }
  4408.  
  4409. /////////////////////////////////////////////////////////////////////////////
  4410. // IUcses operations
  4411.  
  4412. LPDISPATCH IUcses::GetItem(const VARIANT& which)
  4413. {
  4414.     LPDISPATCH result;
  4415.     static BYTE parms[] =
  4416.         VTS_VARIANT;
  4417.     InvokeHelper(0x10002, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  4418.         &which);
  4419.     return result;
  4420. }
  4421.  
  4422. BOOL IUcses::GetHasItem(const VARIANT& which)
  4423. {
  4424.     BOOL result;
  4425.     static BYTE parms[] =
  4426.         VTS_VARIANT;
  4427.     InvokeHelper(0x10003, DISPATCH_PROPERTYGET, VT_BOOL, (void*)&result, parms,
  4428.         &which);
  4429.     return result;
  4430. }
  4431.  
  4432. LPDISPATCH IUcses::Get_Item(const VARIANT& which)
  4433. {
  4434.     LPDISPATCH result;
  4435.     static BYTE parms[] =
  4436.         VTS_VARIANT;
  4437.     InvokeHelper(0x0, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  4438.         &which);
  4439.     return result;
  4440. }
  4441.  
  4442. void IUcses::Dialog()
  4443. {
  4444.     InvokeHelper(0x1, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  4445. }
  4446.  
  4447. void IUcses::Update()
  4448. {
  4449.     InvokeHelper(0x2, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  4450. }
  4451.  
  4452. void IUcses::UpdateNow()
  4453. {
  4454.     InvokeHelper(0x3, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  4455. }
  4456.  
  4457. LPDISPATCH IUcses::Add(LPCTSTR Name)
  4458. {
  4459.     LPDISPATCH result;
  4460.     static BYTE parms[] =
  4461.         VTS_BSTR;
  4462.     InvokeHelper(0x4, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  4463.         Name);
  4464.     return result;
  4465. }
  4466.  
  4467. void IUcses::Remove(LPDISPATCH entry)
  4468. {
  4469.     static BYTE parms[] =
  4470.         VTS_DISPATCH;
  4471.     InvokeHelper(0x5, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  4472.          entry);
  4473. }
  4474.  
  4475.  
  4476. /////////////////////////////////////////////////////////////////////////////
  4477. // IUcs properties
  4478.  
  4479. LPDISPATCH IUcs::GetApplication()
  4480. {
  4481.     LPDISPATCH result;
  4482.     GetProperty(0x20001, VT_DISPATCH, (void*)&result);
  4483.     return result;
  4484. }
  4485.  
  4486. LPDISPATCH IUcs::GetParent()
  4487. {
  4488.     LPDISPATCH result;
  4489.     GetProperty(0x20002, VT_DISPATCH, (void*)&result);
  4490.     return result;
  4491. }
  4492.  
  4493. CString IUcs::GetName()
  4494. {
  4495.     CString result;
  4496.     GetProperty(0x10001, VT_BSTR, (void*)&result);
  4497.     return result;
  4498. }
  4499.  
  4500. void IUcs::SetName(LPCTSTR propVal)
  4501. {
  4502.     SetProperty(0x10001, VT_BSTR, propVal);
  4503. }
  4504.  
  4505. CString IUcs::Get_Name()
  4506. {
  4507.     CString result;
  4508.     GetProperty(0x0, VT_BSTR, (void*)&result);
  4509.     return result;
  4510. }
  4511.  
  4512. void IUcs::Set_Name(LPCTSTR propVal)
  4513. {
  4514.     SetProperty(0x0, VT_BSTR, propVal);
  4515. }
  4516.  
  4517. LPDISPATCH IUcs::GetOrigin()
  4518. {
  4519.     LPDISPATCH result;
  4520.     GetProperty(0x1, VT_DISPATCH, (void*)&result);
  4521.     return result;
  4522. }
  4523.  
  4524. void IUcs::SetOrigin(LPDISPATCH propVal)
  4525. {
  4526.     SetProperty(0x1, VT_DISPATCH, propVal);
  4527. }
  4528.  
  4529. LPDISPATCH IUcs::GetXAxis()
  4530. {
  4531.     LPDISPATCH result;
  4532.     GetProperty(0x2, VT_DISPATCH, (void*)&result);
  4533.     return result;
  4534. }
  4535.  
  4536. void IUcs::SetXAxis(LPDISPATCH propVal)
  4537. {
  4538.     SetProperty(0x2, VT_DISPATCH, propVal);
  4539. }
  4540.  
  4541. LPDISPATCH IUcs::GetYAxis()
  4542. {
  4543.     LPDISPATCH result;
  4544.     GetProperty(0x3, VT_DISPATCH, (void*)&result);
  4545.     return result;
  4546. }
  4547.  
  4548. void IUcs::SetYAxis(LPDISPATCH propVal)
  4549. {
  4550.     SetProperty(0x3, VT_DISPATCH, propVal);
  4551. }
  4552.  
  4553. /////////////////////////////////////////////////////////////////////////////
  4554. // IUcs operations
  4555.  
  4556.  
  4557. /////////////////////////////////////////////////////////////////////////////
  4558. // INamedViews properties
  4559.  
  4560. LPDISPATCH INamedViews::GetApplication()
  4561. {
  4562.     LPDISPATCH result;
  4563.     GetProperty(0x20001, VT_DISPATCH, (void*)&result);
  4564.     return result;
  4565. }
  4566.  
  4567. LPDISPATCH INamedViews::GetParent()
  4568. {
  4569.     LPDISPATCH result;
  4570.     GetProperty(0x20002, VT_DISPATCH, (void*)&result);
  4571.     return result;
  4572. }
  4573.  
  4574. long INamedViews::GetCount()
  4575. {
  4576.     long result;
  4577.     GetProperty(0x10001, VT_I4, (void*)&result);
  4578.     return result;
  4579. }
  4580.  
  4581. /////////////////////////////////////////////////////////////////////////////
  4582. // INamedViews operations
  4583.  
  4584. LPDISPATCH INamedViews::GetItem(const VARIANT& which)
  4585. {
  4586.     LPDISPATCH result;
  4587.     static BYTE parms[] =
  4588.         VTS_VARIANT;
  4589.     InvokeHelper(0x10002, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  4590.         &which);
  4591.     return result;
  4592. }
  4593.  
  4594. BOOL INamedViews::GetHasItem(const VARIANT& which)
  4595. {
  4596.     BOOL result;
  4597.     static BYTE parms[] =
  4598.         VTS_VARIANT;
  4599.     InvokeHelper(0x10003, DISPATCH_PROPERTYGET, VT_BOOL, (void*)&result, parms,
  4600.         &which);
  4601.     return result;
  4602. }
  4603.  
  4604. LPDISPATCH INamedViews::Get_Item(const VARIANT& which)
  4605. {
  4606.     LPDISPATCH result;
  4607.     static BYTE parms[] =
  4608.         VTS_VARIANT;
  4609.     InvokeHelper(0x0, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  4610.         &which);
  4611.     return result;
  4612. }
  4613.  
  4614. void INamedViews::Dialog()
  4615. {
  4616.     InvokeHelper(0x1, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  4617. }
  4618.  
  4619. void INamedViews::Update()
  4620. {
  4621.     InvokeHelper(0x2, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  4622. }
  4623.  
  4624. void INamedViews::UpdateNow()
  4625. {
  4626.     InvokeHelper(0x3, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  4627. }
  4628.  
  4629. LPDISPATCH INamedViews::Add(LPCTSTR Name)
  4630. {
  4631.     LPDISPATCH result;
  4632.     static BYTE parms[] =
  4633.         VTS_BSTR;
  4634.     InvokeHelper(0x4, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  4635.         Name);
  4636.     return result;
  4637. }
  4638.  
  4639. void INamedViews::Remove(LPDISPATCH entry)
  4640. {
  4641.     static BYTE parms[] =
  4642.         VTS_DISPATCH;
  4643.     InvokeHelper(0x5, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  4644.          entry);
  4645. }
  4646.  
  4647.  
  4648. /////////////////////////////////////////////////////////////////////////////
  4649. // INamedView properties
  4650.  
  4651. LPDISPATCH INamedView::GetApplication()
  4652. {
  4653.     LPDISPATCH result;
  4654.     GetProperty(0x20001, VT_DISPATCH, (void*)&result);
  4655.     return result;
  4656. }
  4657.  
  4658. LPDISPATCH INamedView::GetParent()
  4659. {
  4660.     LPDISPATCH result;
  4661.     GetProperty(0x20002, VT_DISPATCH, (void*)&result);
  4662.     return result;
  4663. }
  4664.  
  4665. CString INamedView::GetName()
  4666. {
  4667.     CString result;
  4668.     GetProperty(0x10001, VT_BSTR, (void*)&result);
  4669.     return result;
  4670. }
  4671.  
  4672. void INamedView::SetName(LPCTSTR propVal)
  4673. {
  4674.     SetProperty(0x10001, VT_BSTR, propVal);
  4675. }
  4676.  
  4677. CString INamedView::Get_Name()
  4678. {
  4679.     CString result;
  4680.     GetProperty(0x0, VT_BSTR, (void*)&result);
  4681.     return result;
  4682. }
  4683.  
  4684. void INamedView::Set_Name(LPCTSTR propVal)
  4685. {
  4686.     SetProperty(0x0, VT_BSTR, propVal);
  4687. }
  4688.  
  4689. LPDISPATCH INamedView::GetCenter()
  4690. {
  4691.     LPDISPATCH result;
  4692.     GetProperty(0x1, VT_DISPATCH, (void*)&result);
  4693.     return result;
  4694. }
  4695.  
  4696. void INamedView::SetCenter(LPDISPATCH propVal)
  4697. {
  4698.     SetProperty(0x1, VT_DISPATCH, propVal);
  4699. }
  4700.  
  4701. LPDISPATCH INamedView::GetDirection()
  4702. {
  4703.     LPDISPATCH result;
  4704.     GetProperty(0x2, VT_DISPATCH, (void*)&result);
  4705.     return result;
  4706. }
  4707.  
  4708. void INamedView::SetDirection(LPDISPATCH propVal)
  4709. {
  4710.     SetProperty(0x2, VT_DISPATCH, propVal);
  4711. }
  4712.  
  4713. LPDISPATCH INamedView::GetTarget()
  4714. {
  4715.     LPDISPATCH result;
  4716.     GetProperty(0x3, VT_DISPATCH, (void*)&result);
  4717.     return result;
  4718. }
  4719.  
  4720. void INamedView::SetTarget(LPDISPATCH propVal)
  4721. {
  4722.     SetProperty(0x3, VT_DISPATCH, propVal);
  4723. }
  4724.  
  4725. double INamedView::GetHeight()
  4726. {
  4727.     double result;
  4728.     GetProperty(0x4, VT_R8, (void*)&result);
  4729.     return result;
  4730. }
  4731.  
  4732. void INamedView::SetHeight(double propVal)
  4733. {
  4734.     SetProperty(0x4, VT_R8, propVal);
  4735. }
  4736.  
  4737. double INamedView::GetWidth()
  4738. {
  4739.     double result;
  4740.     GetProperty(0x5, VT_R8, (void*)&result);
  4741.     return result;
  4742. }
  4743.  
  4744. void INamedView::SetWidth(double propVal)
  4745. {
  4746.     SetProperty(0x5, VT_R8, propVal);
  4747. }
  4748.  
  4749. double INamedView::GetTwist()
  4750. {
  4751.     double result;
  4752.     GetProperty(0x6, VT_R8, (void*)&result);
  4753.     return result;
  4754. }
  4755.  
  4756. void INamedView::SetTwist(double propVal)
  4757. {
  4758.     SetProperty(0x6, VT_R8, propVal);
  4759. }
  4760.  
  4761. double INamedView::GetLensLength()
  4762. {
  4763.     double result;
  4764.     GetProperty(0x7, VT_R8, (void*)&result);
  4765.     return result;
  4766. }
  4767.  
  4768. void INamedView::SetLensLength(double propVal)
  4769. {
  4770.     SetProperty(0x7, VT_R8, propVal);
  4771. }
  4772.  
  4773. double INamedView::GetFrontClip()
  4774. {
  4775.     double result;
  4776.     GetProperty(0x8, VT_R8, (void*)&result);
  4777.     return result;
  4778. }
  4779.  
  4780. void INamedView::SetFrontClip(double propVal)
  4781. {
  4782.     SetProperty(0x8, VT_R8, propVal);
  4783. }
  4784.  
  4785. double INamedView::GetBackClip()
  4786. {
  4787.     double result;
  4788.     GetProperty(0x9, VT_R8, (void*)&result);
  4789.     return result;
  4790. }
  4791.  
  4792. void INamedView::SetBackClip(double propVal)
  4793. {
  4794.     SetProperty(0x9, VT_R8, propVal);
  4795. }
  4796.  
  4797. BOOL INamedView::GetUseFrontClip()
  4798. {
  4799.     BOOL result;
  4800.     GetProperty(0xa, VT_BOOL, (void*)&result);
  4801.     return result;
  4802. }
  4803.  
  4804. void INamedView::SetUseFrontClip(BOOL propVal)
  4805. {
  4806.     SetProperty(0xa, VT_BOOL, propVal);
  4807. }
  4808.  
  4809. BOOL INamedView::GetUseBackClip()
  4810. {
  4811.     BOOL result;
  4812.     GetProperty(0xb, VT_BOOL, (void*)&result);
  4813.     return result;
  4814. }
  4815.  
  4816. void INamedView::SetUseBackClip(BOOL propVal)
  4817. {
  4818.     SetProperty(0xb, VT_BOOL, propVal);
  4819. }
  4820.  
  4821. BOOL INamedView::GetInPaperSpace()
  4822. {
  4823.     BOOL result;
  4824.     GetProperty(0xc, VT_BOOL, (void*)&result);
  4825.     return result;
  4826. }
  4827.  
  4828. void INamedView::SetInPaperSpace(BOOL propVal)
  4829. {
  4830.     SetProperty(0xc, VT_BOOL, propVal);
  4831. }
  4832.  
  4833. /////////////////////////////////////////////////////////////////////////////
  4834. // INamedView operations
  4835.  
  4836.  
  4837. /////////////////////////////////////////////////////////////////////////////
  4838. // IColors properties
  4839.  
  4840. LPDISPATCH IColors::GetApplication()
  4841. {
  4842.     LPDISPATCH result;
  4843.     GetProperty(0x10001, VT_DISPATCH, (void*)&result);
  4844.     return result;
  4845. }
  4846.  
  4847. LPDISPATCH IColors::GetParent()
  4848. {
  4849.     LPDISPATCH result;
  4850.     GetProperty(0x10002, VT_DISPATCH, (void*)&result);
  4851.     return result;
  4852. }
  4853.  
  4854. long IColors::GetCount()
  4855. {
  4856.     long result;
  4857.     GetProperty(0x1, VT_I4, (void*)&result);
  4858.     return result;
  4859. }
  4860.  
  4861. LPDISPATCH IColors::GetActive()
  4862. {
  4863.     LPDISPATCH result;
  4864.     GetProperty(0x3, VT_DISPATCH, (void*)&result);
  4865.     return result;
  4866. }
  4867.  
  4868. void IColors::SetActive(LPDISPATCH propVal)
  4869. {
  4870.     SetProperty(0x3, VT_DISPATCH, propVal);
  4871. }
  4872.  
  4873. LPDISPATCH IColors::GetSameAsLayer()
  4874. {
  4875.     LPDISPATCH result;
  4876.     GetProperty(0x4, VT_DISPATCH, (void*)&result);
  4877.     return result;
  4878. }
  4879.  
  4880. LPDISPATCH IColors::GetSameAsBlock()
  4881. {
  4882.     LPDISPATCH result;
  4883.     GetProperty(0x5, VT_DISPATCH, (void*)&result);
  4884.     return result;
  4885. }
  4886.  
  4887. /////////////////////////////////////////////////////////////////////////////
  4888. // IColors operations
  4889.  
  4890. LPDISPATCH IColors::GetItem(const VARIANT& which)
  4891. {
  4892.     LPDISPATCH result;
  4893.     static BYTE parms[] =
  4894.         VTS_VARIANT;
  4895.     InvokeHelper(0x2, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  4896.         &which);
  4897.     return result;
  4898. }
  4899.  
  4900. LPDISPATCH IColors::Get_Item(const VARIANT& which)
  4901. {
  4902.     LPDISPATCH result;
  4903.     static BYTE parms[] =
  4904.         VTS_VARIANT;
  4905.     InvokeHelper(0x0, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  4906.         &which);
  4907.     return result;
  4908. }
  4909.  
  4910. void IColors::Dialog()
  4911. {
  4912.     InvokeHelper(0x6, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  4913. }
  4914.  
  4915.  
  4916. /////////////////////////////////////////////////////////////////////////////
  4917. // IColor properties
  4918.  
  4919. LPDISPATCH IColor::GetApplication()
  4920. {
  4921.     LPDISPATCH result;
  4922.     GetProperty(0x10001, VT_DISPATCH, (void*)&result);
  4923.     return result;
  4924. }
  4925.  
  4926. LPDISPATCH IColor::GetParent()
  4927. {
  4928.     LPDISPATCH result;
  4929.     GetProperty(0x10002, VT_DISPATCH, (void*)&result);
  4930.     return result;
  4931. }
  4932.  
  4933. CString IColor::GetName()
  4934. {
  4935.     CString result;
  4936.     GetProperty(0x1, VT_BSTR, (void*)&result);
  4937.     return result;
  4938. }
  4939.  
  4940. CString IColor::Get_Name()
  4941. {
  4942.     CString result;
  4943.     GetProperty(0x0, VT_BSTR, (void*)&result);
  4944.     return result;
  4945. }
  4946.  
  4947. short IColor::GetNumber()
  4948. {
  4949.     short result;
  4950.     GetProperty(0x2, VT_I2, (void*)&result);
  4951.     return result;
  4952. }
  4953.  
  4954. short IColor::GetRed()
  4955. {
  4956.     short result;
  4957.     GetProperty(0x3, VT_I2, (void*)&result);
  4958.     return result;
  4959. }
  4960.  
  4961. short IColor::GetGreen()
  4962. {
  4963.     short result;
  4964.     GetProperty(0x4, VT_I2, (void*)&result);
  4965.     return result;
  4966. }
  4967.  
  4968. short IColor::GetBlue()
  4969. {
  4970.     short result;
  4971.     GetProperty(0x5, VT_I2, (void*)&result);
  4972.     return result;
  4973. }
  4974.  
  4975. /////////////////////////////////////////////////////////////////////////////
  4976. // IColor operations
  4977.  
  4978.  
  4979. /////////////////////////////////////////////////////////////////////////////
  4980. // IViews properties
  4981.  
  4982. LPDISPATCH IViews::GetApplication()
  4983. {
  4984.     LPDISPATCH result;
  4985.     GetProperty(0x10001, VT_DISPATCH, (void*)&result);
  4986.     return result;
  4987. }
  4988.  
  4989. LPDISPATCH IViews::GetParent()
  4990. {
  4991.     LPDISPATCH result;
  4992.     GetProperty(0x10002, VT_DISPATCH, (void*)&result);
  4993.     return result;
  4994. }
  4995.  
  4996. long IViews::GetCount()
  4997. {
  4998.     long result;
  4999.     GetProperty(0x1, VT_I4, (void*)&result);
  5000.     return result;
  5001. }
  5002.  
  5003. BOOL IViews::GetHasPaperSpace()
  5004. {
  5005.     BOOL result;
  5006.     GetProperty(0x3, VT_BOOL, (void*)&result);
  5007.     return result;
  5008. }
  5009.  
  5010. BOOL IViews::GetInPaperSpace()
  5011. {
  5012.     BOOL result;
  5013.     GetProperty(0x4, VT_BOOL, (void*)&result);
  5014.     return result;
  5015. }
  5016.  
  5017. void IViews::SetInPaperSpace(BOOL propVal)
  5018. {
  5019.     SetProperty(0x4, VT_BOOL, propVal);
  5020. }
  5021.  
  5022. BOOL IViews::GetInPaperPorts()
  5023. {
  5024.     BOOL result;
  5025.     GetProperty(0x5, VT_BOOL, (void*)&result);
  5026.     return result;
  5027. }
  5028.  
  5029. void IViews::SetInPaperPorts(BOOL propVal)
  5030. {
  5031.     SetProperty(0x5, VT_BOOL, propVal);
  5032. }
  5033.  
  5034. LPDISPATCH IViews::GetActiveView()
  5035. {
  5036.     LPDISPATCH result;
  5037.     GetProperty(0x6, VT_DISPATCH, (void*)&result);
  5038.     return result;
  5039. }
  5040.  
  5041. void IViews::SetActiveView(LPDISPATCH propVal)
  5042. {
  5043.     SetProperty(0x6, VT_DISPATCH, propVal);
  5044. }
  5045.  
  5046. LPDISPATCH IViews::GetPaperSpace()
  5047. {
  5048.     LPDISPATCH result;
  5049.     GetProperty(0x7, VT_DISPATCH, (void*)&result);
  5050.     return result;
  5051. }
  5052.  
  5053. LPDISPATCH IViews::GetExtentsMax()
  5054. {
  5055.     LPDISPATCH result;
  5056.     GetProperty(0x8, VT_DISPATCH, (void*)&result);
  5057.     return result;
  5058. }
  5059.  
  5060. LPDISPATCH IViews::GetExtentsMin()
  5061. {
  5062.     LPDISPATCH result;
  5063.     GetProperty(0x9, VT_DISPATCH, (void*)&result);
  5064.     return result;
  5065. }
  5066.  
  5067. LPDISPATCH IViews::GetPaperSpaceExtentsMax()
  5068. {
  5069.     LPDISPATCH result;
  5070.     GetProperty(0xa, VT_DISPATCH, (void*)&result);
  5071.     return result;
  5072. }
  5073.  
  5074. LPDISPATCH IViews::GetPaperSpaceExtentsMin()
  5075. {
  5076.     LPDISPATCH result;
  5077.     GetProperty(0xb, VT_DISPATCH, (void*)&result);
  5078.     return result;
  5079. }
  5080.  
  5081. /////////////////////////////////////////////////////////////////////////////
  5082. // IViews operations
  5083.  
  5084. LPDISPATCH IViews::GetItem(long index)
  5085. {
  5086.     LPDISPATCH result;
  5087.     static BYTE parms[] =
  5088.         VTS_I4;
  5089.     InvokeHelper(0x2, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  5090.         index);
  5091.     return result;
  5092. }
  5093.  
  5094. LPDISPATCH IViews::Get_Item(long index)
  5095. {
  5096.     LPDISPATCH result;
  5097.     static BYTE parms[] =
  5098.         VTS_I4;
  5099.     InvokeHelper(0x0, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  5100.         index);
  5101.     return result;
  5102. }
  5103.  
  5104. LPDISPATCH IViews::Add(LPDISPATCH corner1, LPDISPATCH corner2)
  5105. {
  5106.     LPDISPATCH result;
  5107.     static BYTE parms[] =
  5108.         VTS_DISPATCH VTS_DISPATCH;
  5109.     InvokeHelper(0xc, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  5110.         corner1, corner2);
  5111.     return result;
  5112. }
  5113.  
  5114. void IViews::Remove(LPDISPATCH entry)
  5115. {
  5116.     static BYTE parms[] =
  5117.         VTS_DISPATCH;
  5118.     InvokeHelper(0xd, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  5119.          entry);
  5120. }
  5121.  
  5122. void IViews::Redraw()
  5123. {
  5124.     InvokeHelper(0xe, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  5125. }
  5126.  
  5127. void IViews::Regen()
  5128. {
  5129.     InvokeHelper(0xf, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  5130. }
  5131.  
  5132.  
  5133. /////////////////////////////////////////////////////////////////////////////
  5134. // IView properties
  5135.  
  5136. LPDISPATCH IView::GetApplication()
  5137. {
  5138.     LPDISPATCH result;
  5139.     GetProperty(0x10001, VT_DISPATCH, (void*)&result);
  5140.     return result;
  5141. }
  5142.  
  5143. LPDISPATCH IView::GetParent()
  5144. {
  5145.     LPDISPATCH result;
  5146.     GetProperty(0x10002, VT_DISPATCH, (void*)&result);
  5147.     return result;
  5148. }
  5149.  
  5150. LPDISPATCH IView::GetCenter()
  5151. {
  5152.     LPDISPATCH result;
  5153.     GetProperty(0x1, VT_DISPATCH, (void*)&result);
  5154.     return result;
  5155. }
  5156.  
  5157. void IView::SetCenter(LPDISPATCH propVal)
  5158. {
  5159.     SetProperty(0x1, VT_DISPATCH, propVal);
  5160. }
  5161.  
  5162. LPDISPATCH IView::GetDirection()
  5163. {
  5164.     LPDISPATCH result;
  5165.     GetProperty(0x2, VT_DISPATCH, (void*)&result);
  5166.     return result;
  5167. }
  5168.  
  5169. void IView::SetDirection(LPDISPATCH propVal)
  5170. {
  5171.     SetProperty(0x2, VT_DISPATCH, propVal);
  5172. }
  5173.  
  5174. LPDISPATCH IView::GetTarget()
  5175. {
  5176.     LPDISPATCH result;
  5177.     GetProperty(0x3, VT_DISPATCH, (void*)&result);
  5178.     return result;
  5179. }
  5180.  
  5181. void IView::SetTarget(LPDISPATCH propVal)
  5182. {
  5183.     SetProperty(0x3, VT_DISPATCH, propVal);
  5184. }
  5185.  
  5186. double IView::GetHeight()
  5187. {
  5188.     double result;
  5189.     GetProperty(0x4, VT_R8, (void*)&result);
  5190.     return result;
  5191. }
  5192.  
  5193. void IView::SetHeight(double propVal)
  5194. {
  5195.     SetProperty(0x4, VT_R8, propVal);
  5196. }
  5197.  
  5198. double IView::GetWidth()
  5199. {
  5200.     double result;
  5201.     GetProperty(0x5, VT_R8, (void*)&result);
  5202.     return result;
  5203. }
  5204.  
  5205. void IView::SetWidth(double propVal)
  5206. {
  5207.     SetProperty(0x5, VT_R8, propVal);
  5208. }
  5209.  
  5210. double IView::GetTwist()
  5211. {
  5212.     double result;
  5213.     GetProperty(0x6, VT_R8, (void*)&result);
  5214.     return result;
  5215. }
  5216.  
  5217. void IView::SetTwist(double propVal)
  5218. {
  5219.     SetProperty(0x6, VT_R8, propVal);
  5220. }
  5221.  
  5222. double IView::GetLensLength()
  5223. {
  5224.     double result;
  5225.     GetProperty(0x7, VT_R8, (void*)&result);
  5226.     return result;
  5227. }
  5228.  
  5229. void IView::SetLensLength(double propVal)
  5230. {
  5231.     SetProperty(0x7, VT_R8, propVal);
  5232. }
  5233.  
  5234. double IView::GetFrontClip()
  5235. {
  5236.     double result;
  5237.     GetProperty(0x8, VT_R8, (void*)&result);
  5238.     return result;
  5239. }
  5240.  
  5241. void IView::SetFrontClip(double propVal)
  5242. {
  5243.     SetProperty(0x8, VT_R8, propVal);
  5244. }
  5245.  
  5246. double IView::GetBackClip()
  5247. {
  5248.     double result;
  5249.     GetProperty(0x9, VT_R8, (void*)&result);
  5250.     return result;
  5251. }
  5252.  
  5253. void IView::SetBackClip(double propVal)
  5254. {
  5255.     SetProperty(0x9, VT_R8, propVal);
  5256. }
  5257.  
  5258. BOOL IView::GetUseFrontClip()
  5259. {
  5260.     BOOL result;
  5261.     GetProperty(0xa, VT_BOOL, (void*)&result);
  5262.     return result;
  5263. }
  5264.  
  5265. void IView::SetUseFrontClip(BOOL propVal)
  5266. {
  5267.     SetProperty(0xa, VT_BOOL, propVal);
  5268. }
  5269.  
  5270. BOOL IView::GetUseBackClip()
  5271. {
  5272.     BOOL result;
  5273.     GetProperty(0xb, VT_BOOL, (void*)&result);
  5274.     return result;
  5275. }
  5276.  
  5277. void IView::SetUseBackClip(BOOL propVal)
  5278. {
  5279.     SetProperty(0xb, VT_BOOL, propVal);
  5280. }
  5281.  
  5282. LPDISPATCH IView::GetUpperRight()
  5283. {
  5284.     LPDISPATCH result;
  5285.     GetProperty(0xc, VT_DISPATCH, (void*)&result);
  5286.     return result;
  5287. }
  5288.  
  5289. LPDISPATCH IView::GetLowerLeft()
  5290. {
  5291.     LPDISPATCH result;
  5292.     GetProperty(0xd, VT_DISPATCH, (void*)&result);
  5293.     return result;
  5294. }
  5295.  
  5296. LPDISPATCH IView::GetGridSnap()
  5297. {
  5298.     LPDISPATCH result;
  5299.     GetProperty(0xe, VT_DISPATCH, (void*)&result);
  5300.     return result;
  5301. }
  5302.  
  5303. LPDISPATCH IView::GetAngleSnap()
  5304. {
  5305.     LPDISPATCH result;
  5306.     GetProperty(0xf, VT_DISPATCH, (void*)&result);
  5307.     return result;
  5308. }
  5309.  
  5310. LPDISPATCH IView::GetEntity()
  5311. {
  5312.     LPDISPATCH result;
  5313.     GetProperty(0x10, VT_DISPATCH, (void*)&result);
  5314.     return result;
  5315. }
  5316.  
  5317. double IView::GetPaperspaceScale()
  5318. {
  5319.     double result;
  5320.     GetProperty(0x24, VT_R8, (void*)&result);
  5321.     return result;
  5322. }
  5323.  
  5324. void IView::SetPaperspaceScale(double propVal)
  5325. {
  5326.     SetProperty(0x24, VT_R8, propVal);
  5327. }
  5328.  
  5329. /////////////////////////////////////////////////////////////////////////////
  5330. // IView operations
  5331.  
  5332. LPDISPATCH IView::TranslatePoint(LPDISPATCH point)
  5333. {
  5334.     LPDISPATCH result;
  5335.     static BYTE parms[] =
  5336.         VTS_DISPATCH;
  5337.     InvokeHelper(0x11, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  5338.         point);
  5339.     return result;
  5340. }
  5341.  
  5342. void IView::Redraw()
  5343. {
  5344.     InvokeHelper(0x12, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  5345. }
  5346.  
  5347. void IView::Regen()
  5348. {
  5349.     InvokeHelper(0x13, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  5350. }
  5351.  
  5352. void IView::Extents()
  5353. {
  5354.     InvokeHelper(0x14, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  5355. }
  5356.  
  5357. void IView::View(LPDISPATCH namedview)
  5358. {
  5359.     static BYTE parms[] =
  5360.         VTS_DISPATCH;
  5361.     InvokeHelper(0x15, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  5362.          namedview);
  5363. }
  5364.  
  5365. void IView::ViewPoint(LPDISPATCH vpoint)
  5366. {
  5367.     static BYTE parms[] =
  5368.         VTS_DISPATCH;
  5369.     InvokeHelper(0x16, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  5370.          vpoint);
  5371. }
  5372.  
  5373. void IView::ZoomWindow(LPDISPATCH corner1, LPDISPATCH corner2)
  5374. {
  5375.     static BYTE parms[] =
  5376.         VTS_DISPATCH VTS_DISPATCH;
  5377.     InvokeHelper(0x17, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  5378.          corner1, corner2);
  5379. }
  5380.  
  5381. void IView::PanWindow(LPDISPATCH point1, LPDISPATCH point2)
  5382. {
  5383.     static BYTE parms[] =
  5384.         VTS_DISPATCH VTS_DISPATCH;
  5385.     InvokeHelper(0x18, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  5386.          point1, point2);
  5387. }
  5388.  
  5389. void IView::ZoomFactor(double factor)
  5390. {
  5391.     static BYTE parms[] =
  5392.         VTS_R8;
  5393.     InvokeHelper(0x19, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  5394.          factor);
  5395. }
  5396.  
  5397. void IView::PreTranslate(LPDISPATCH offset)
  5398. {
  5399.     static BYTE parms[] =
  5400.         VTS_DISPATCH;
  5401.     InvokeHelper(0x1a, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  5402.          offset);
  5403. }
  5404.  
  5405. void IView::PostTranslate(LPDISPATCH offset)
  5406. {
  5407.     static BYTE parms[] =
  5408.         VTS_DISPATCH;
  5409.     InvokeHelper(0x1b, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  5410.          offset);
  5411. }
  5412.  
  5413. void IView::PreScale(LPDISPATCH scale)
  5414. {
  5415.     static BYTE parms[] =
  5416.         VTS_DISPATCH;
  5417.     InvokeHelper(0x1c, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  5418.          scale);
  5419. }
  5420.  
  5421. void IView::PostScale(LPDISPATCH scale)
  5422. {
  5423.     static BYTE parms[] =
  5424.         VTS_DISPATCH;
  5425.     InvokeHelper(0x1d, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  5426.          scale);
  5427. }
  5428.  
  5429. void IView::PreRotate(double xangle, double yangle, double zangle)
  5430. {
  5431.     static BYTE parms[] =
  5432.         VTS_R8 VTS_R8 VTS_R8;
  5433.     InvokeHelper(0x1e, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  5434.          xangle, yangle, zangle);
  5435. }
  5436.  
  5437. void IView::PostRotate(double xangle, double yangle, double zangle)
  5438. {
  5439.     static BYTE parms[] =
  5440.         VTS_R8 VTS_R8 VTS_R8;
  5441.     InvokeHelper(0x1f, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  5442.          xangle, yangle, zangle);
  5443. }
  5444.  
  5445. void IView::CenterPreRotate(double xangle, double yangle, double zangle)
  5446. {
  5447.     static BYTE parms[] =
  5448.         VTS_R8 VTS_R8 VTS_R8;
  5449.     InvokeHelper(0x20, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  5450.          xangle, yangle, zangle);
  5451. }
  5452.  
  5453. void IView::CenterPostRotate(double xangle, double yangle, double zangle)
  5454. {
  5455.     static BYTE parms[] =
  5456.         VTS_R8 VTS_R8 VTS_R8;
  5457.     InvokeHelper(0x21, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  5458.          xangle, yangle, zangle);
  5459. }
  5460.  
  5461. void IView::Update()
  5462. {
  5463.     InvokeHelper(0x22, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  5464. }
  5465.  
  5466. void IView::UpdateNow()
  5467. {
  5468.     InvokeHelper(0x23, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  5469. }
  5470.  
  5471. void IView::Plan()
  5472. {
  5473.     InvokeHelper(0x25, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  5474. }
  5475.  
  5476. void IView::LastView()
  5477. {
  5478.     InvokeHelper(0x26, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  5479. }
  5480.  
  5481.  
  5482. /////////////////////////////////////////////////////////////////////////////
  5483. // IGridSnap properties
  5484.  
  5485. LPDISPATCH IGridSnap::GetApplication()
  5486. {
  5487.     LPDISPATCH result;
  5488.     GetProperty(0x10001, VT_DISPATCH, (void*)&result);
  5489.     return result;
  5490. }
  5491.  
  5492. LPDISPATCH IGridSnap::GetParent()
  5493. {
  5494.     LPDISPATCH result;
  5495.     GetProperty(0x10002, VT_DISPATCH, (void*)&result);
  5496.     return result;
  5497. }
  5498.  
  5499. BOOL IGridSnap::GetSnap()
  5500. {
  5501.     BOOL result;
  5502.     GetProperty(0x1, VT_BOOL, (void*)&result);
  5503.     return result;
  5504. }
  5505.  
  5506. void IGridSnap::SetSnap(BOOL propVal)
  5507. {
  5508.     SetProperty(0x1, VT_BOOL, propVal);
  5509. }
  5510.  
  5511. BOOL IGridSnap::Get_Snap()
  5512. {
  5513.     BOOL result;
  5514.     GetProperty(0x0, VT_BOOL, (void*)&result);
  5515.     return result;
  5516. }
  5517.  
  5518. void IGridSnap::Set_Snap(BOOL propVal)
  5519. {
  5520.     SetProperty(0x0, VT_BOOL, propVal);
  5521. }
  5522.  
  5523. BOOL IGridSnap::GetDisplay()
  5524. {
  5525.     BOOL result;
  5526.     GetProperty(0x2, VT_BOOL, (void*)&result);
  5527.     return result;
  5528. }
  5529.  
  5530. void IGridSnap::SetDisplay(BOOL propVal)
  5531. {
  5532.     SetProperty(0x2, VT_BOOL, propVal);
  5533. }
  5534.  
  5535. BOOL IGridSnap::GetIsometric()
  5536. {
  5537.     BOOL result;
  5538.     GetProperty(0x3, VT_BOOL, (void*)&result);
  5539.     return result;
  5540. }
  5541.  
  5542. void IGridSnap::SetIsometric(BOOL propVal)
  5543. {
  5544.     SetProperty(0x3, VT_BOOL, propVal);
  5545. }
  5546.  
  5547. LPDISPATCH IGridSnap::GetSnapSpacing()
  5548. {
  5549.     LPDISPATCH result;
  5550.     GetProperty(0x4, VT_DISPATCH, (void*)&result);
  5551.     return result;
  5552. }
  5553.  
  5554. void IGridSnap::SetSnapSpacing(LPDISPATCH propVal)
  5555. {
  5556.     SetProperty(0x4, VT_DISPATCH, propVal);
  5557. }
  5558.  
  5559. LPDISPATCH IGridSnap::GetDisplaySpacing()
  5560. {
  5561.     LPDISPATCH result;
  5562.     GetProperty(0x5, VT_DISPATCH, (void*)&result);
  5563.     return result;
  5564. }
  5565.  
  5566. void IGridSnap::SetDisplaySpacing(LPDISPATCH propVal)
  5567. {
  5568.     SetProperty(0x5, VT_DISPATCH, propVal);
  5569. }
  5570.  
  5571. LPDISPATCH IGridSnap::GetOrigin()
  5572. {
  5573.     LPDISPATCH result;
  5574.     GetProperty(0x6, VT_DISPATCH, (void*)&result);
  5575.     return result;
  5576. }
  5577.  
  5578. void IGridSnap::SetOrigin(LPDISPATCH propVal)
  5579. {
  5580.     SetProperty(0x6, VT_DISPATCH, propVal);
  5581. }
  5582.  
  5583. double IGridSnap::GetIsometricSpacing()
  5584. {
  5585.     double result;
  5586.     GetProperty(0x7, VT_R8, (void*)&result);
  5587.     return result;
  5588. }
  5589.  
  5590. void IGridSnap::SetIsometricSpacing(double propVal)
  5591. {
  5592.     SetProperty(0x7, VT_R8, propVal);
  5593. }
  5594.  
  5595. /////////////////////////////////////////////////////////////////////////////
  5596. // IGridSnap operations
  5597.  
  5598. void IGridSnap::Update()
  5599. {
  5600.     InvokeHelper(0x8, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  5601. }
  5602.  
  5603. void IGridSnap::UpdateNow()
  5604. {
  5605.     InvokeHelper(0x9, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  5606. }
  5607.  
  5608. void IGridSnap::Dialog()
  5609. {
  5610.     InvokeHelper(0xa, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  5611. }
  5612.  
  5613.  
  5614. /////////////////////////////////////////////////////////////////////////////
  5615. // IAngleSnap properties
  5616.  
  5617. LPDISPATCH IAngleSnap::GetApplication()
  5618. {
  5619.     LPDISPATCH result;
  5620.     GetProperty(0x10001, VT_DISPATCH, (void*)&result);
  5621.     return result;
  5622. }
  5623.  
  5624. LPDISPATCH IAngleSnap::GetParent()
  5625. {
  5626.     LPDISPATCH result;
  5627.     GetProperty(0x10002, VT_DISPATCH, (void*)&result);
  5628.     return result;
  5629. }
  5630.  
  5631. BOOL IAngleSnap::GetSnap()
  5632. {
  5633.     BOOL result;
  5634.     GetProperty(0x1, VT_BOOL, (void*)&result);
  5635.     return result;
  5636. }
  5637.  
  5638. void IAngleSnap::SetSnap(BOOL propVal)
  5639. {
  5640.     SetProperty(0x1, VT_BOOL, propVal);
  5641. }
  5642.  
  5643. BOOL IAngleSnap::Get_Snap()
  5644. {
  5645.     BOOL result;
  5646.     GetProperty(0x0, VT_BOOL, (void*)&result);
  5647.     return result;
  5648. }
  5649.  
  5650. void IAngleSnap::Set_Snap(BOOL propVal)
  5651. {
  5652.     SetProperty(0x0, VT_BOOL, propVal);
  5653. }
  5654.  
  5655. BOOL IAngleSnap::GetOrtho()
  5656. {
  5657.     BOOL result;
  5658.     GetProperty(0x2, VT_BOOL, (void*)&result);
  5659.     return result;
  5660. }
  5661.  
  5662. void IAngleSnap::SetOrtho(BOOL propVal)
  5663. {
  5664.     SetProperty(0x2, VT_BOOL, propVal);
  5665. }
  5666.  
  5667. double IAngleSnap::GetAngle()
  5668. {
  5669.     double result;
  5670.     GetProperty(0x3, VT_R8, (void*)&result);
  5671.     return result;
  5672. }
  5673.  
  5674. void IAngleSnap::SetAngle(double propVal)
  5675. {
  5676.     SetProperty(0x3, VT_R8, propVal);
  5677. }
  5678.  
  5679. double IAngleSnap::GetBaseAngle()
  5680. {
  5681.     double result;
  5682.     GetProperty(0x4, VT_R8, (void*)&result);
  5683.     return result;
  5684. }
  5685.  
  5686. void IAngleSnap::SetBaseAngle(double propVal)
  5687. {
  5688.     SetProperty(0x4, VT_R8, propVal);
  5689. }
  5690.  
  5691. /////////////////////////////////////////////////////////////////////////////
  5692. // IAngleSnap operations
  5693.  
  5694. void IAngleSnap::Dialog()
  5695. {
  5696.     InvokeHelper(0x5, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  5697. }
  5698.  
  5699.  
  5700. /////////////////////////////////////////////////////////////////////////////
  5701. // IEntities properties
  5702.  
  5703. LPDISPATCH IEntities::GetApplication()
  5704. {
  5705.     LPDISPATCH result;
  5706.     GetProperty(0x30001, VT_DISPATCH, (void*)&result);
  5707.     return result;
  5708. }
  5709.  
  5710. LPDISPATCH IEntities::GetParent()
  5711. {
  5712.     LPDISPATCH result;
  5713.     GetProperty(0x30002, VT_DISPATCH, (void*)&result);
  5714.     return result;
  5715. }
  5716.  
  5717. LPDISPATCH IEntities::GetColor()
  5718. {
  5719.     LPDISPATCH result;
  5720.     GetProperty(0x20001, VT_DISPATCH, (void*)&result);
  5721.     return result;
  5722. }
  5723.  
  5724. void IEntities::SetColor(LPDISPATCH propVal)
  5725. {
  5726.     SetProperty(0x20001, VT_DISPATCH, propVal);
  5727. }
  5728.  
  5729. short IEntities::GetColorNumber()
  5730. {
  5731.     short result;
  5732.     GetProperty(0x20002, VT_I2, (void*)&result);
  5733.     return result;
  5734. }
  5735.  
  5736. void IEntities::SetColorNumber(short propVal)
  5737. {
  5738.     SetProperty(0x20002, VT_I2, propVal);
  5739. }
  5740.  
  5741. LPDISPATCH IEntities::GetLayer()
  5742. {
  5743.     LPDISPATCH result;
  5744.     GetProperty(0x20003, VT_DISPATCH, (void*)&result);
  5745.     return result;
  5746. }
  5747.  
  5748. void IEntities::SetLayer(LPDISPATCH propVal)
  5749. {
  5750.     SetProperty(0x20003, VT_DISPATCH, propVal);
  5751. }
  5752.  
  5753. LPDISPATCH IEntities::GetLinetype()
  5754. {
  5755.     LPDISPATCH result;
  5756.     GetProperty(0x20004, VT_DISPATCH, (void*)&result);
  5757.     return result;
  5758. }
  5759.  
  5760. void IEntities::SetLinetype(LPDISPATCH propVal)
  5761. {
  5762.     SetProperty(0x20004, VT_DISPATCH, propVal);
  5763. }
  5764.  
  5765. double IEntities::GetThickness()
  5766. {
  5767.     double result;
  5768.     GetProperty(0x20005, VT_R8, (void*)&result);
  5769.     return result;
  5770. }
  5771.  
  5772. void IEntities::SetThickness(double propVal)
  5773. {
  5774.     SetProperty(0x20005, VT_R8, propVal);
  5775. }
  5776.  
  5777. BOOL IEntities::GetPaperSpace()
  5778. {
  5779.     BOOL result;
  5780.     GetProperty(0x20006, VT_BOOL, (void*)&result);
  5781.     return result;
  5782. }
  5783.  
  5784. void IEntities::SetPaperSpace(BOOL propVal)
  5785. {
  5786.     SetProperty(0x20006, VT_BOOL, propVal);
  5787. }
  5788.  
  5789. LPDISPATCH IEntities::GetNormal()
  5790. {
  5791.     LPDISPATCH result;
  5792.     GetProperty(0x20007, VT_DISPATCH, (void*)&result);
  5793.     return result;
  5794. }
  5795.  
  5796. void IEntities::SetNormal(LPDISPATCH propVal)
  5797. {
  5798.     SetProperty(0x20007, VT_DISPATCH, propVal);
  5799. }
  5800.  
  5801. BOOL IEntities::GetHasItems()
  5802. {
  5803.     BOOL result;
  5804.     GetProperty(0x10001, VT_BOOL, (void*)&result);
  5805.     return result;
  5806. }
  5807.  
  5808. long IEntities::GetCount()
  5809. {
  5810.     long result;
  5811.     GetProperty(0x10002, VT_I4, (void*)&result);
  5812.     return result;
  5813. }
  5814.  
  5815. /////////////////////////////////////////////////////////////////////////////
  5816. // IEntities operations
  5817.  
  5818. void IEntities::Redraw()
  5819. {
  5820.     InvokeHelper(0x20008, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  5821. }
  5822.  
  5823. void IEntities::Regen()
  5824. {
  5825.     InvokeHelper(0x20009, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  5826. }
  5827.  
  5828. void IEntities::Erase()
  5829. {
  5830.     InvokeHelper(0x2000a, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  5831. }
  5832.  
  5833. void IEntities::Delete()
  5834. {
  5835.     InvokeHelper(0x2000b, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  5836. }
  5837.  
  5838. void IEntities::Move(LPDISPATCH offset)
  5839. {
  5840.     static BYTE parms[] =
  5841.         VTS_DISPATCH;
  5842.     InvokeHelper(0x2000c, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  5843.          offset);
  5844. }
  5845.  
  5846. LPDISPATCH IEntities::Copy(LPDISPATCH offset)
  5847. {
  5848.     LPDISPATCH result;
  5849.     static BYTE parms[] =
  5850.         VTS_DISPATCH;
  5851.     InvokeHelper(0x2000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  5852.         offset);
  5853.     return result;
  5854. }
  5855.  
  5856. void IEntities::scale(LPDISPATCH basepoint, LPDISPATCH scale)
  5857. {
  5858.     static BYTE parms[] =
  5859.         VTS_DISPATCH VTS_DISPATCH;
  5860.     InvokeHelper(0x2000e, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  5861.          basepoint, scale);
  5862. }
  5863.  
  5864. void IEntities::ScaleIt(LPDISPATCH basepoint, LPDISPATCH scale)
  5865. {
  5866.     static BYTE parms[] =
  5867.         VTS_DISPATCH VTS_DISPATCH;
  5868.     InvokeHelper(0x2000f, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  5869.          basepoint, scale);
  5870. }
  5871.  
  5872. void IEntities::Rotate(LPDISPATCH basepoint, double Angle)
  5873. {
  5874.     static BYTE parms[] =
  5875.         VTS_DISPATCH VTS_R8;
  5876.     InvokeHelper(0x20010, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  5877.          basepoint, Angle);
  5878. }
  5879.  
  5880. void IEntities::Mirror(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  5881. {
  5882.     static BYTE parms[] =
  5883.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  5884.     InvokeHelper(0x20011, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  5885.          point1, point2, &MirrorText);
  5886. }
  5887.  
  5888. LPDISPATCH IEntities::MirrorCopy(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  5889. {
  5890.     LPDISPATCH result;
  5891.     static BYTE parms[] =
  5892.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  5893.     InvokeHelper(0x20012, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  5894.         point1, point2, &MirrorText);
  5895.     return result;
  5896. }
  5897.  
  5898. void IEntities::Dialog()
  5899. {
  5900.     InvokeHelper(0x20013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  5901. }
  5902.  
  5903. LPDISPATCH IEntities::Offset(LPDISPATCH vec, const VARIANT& Distance)
  5904. {
  5905.     LPDISPATCH result;
  5906.     static BYTE parms[] =
  5907.         VTS_DISPATCH VTS_VARIANT;
  5908.     InvokeHelper(0x20014, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  5909.         vec, &Distance);
  5910.     return result;
  5911. }
  5912.  
  5913. LPDISPATCH IEntities::Array(short numrows, short numcols, double rowspacing, double colspacing, double Rotation)
  5914. {
  5915.     LPDISPATCH result;
  5916.     static BYTE parms[] =
  5917.         VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8;
  5918.     InvokeHelper(0x20015, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  5919.         numrows, numcols, rowspacing, colspacing, Rotation);
  5920.     return result;
  5921. }
  5922.  
  5923. LPDISPATCH IEntities::Array3D(short numrows, short numcols, short numlevels, double rowspacing, double colspacing, double levelspacing, double Rotation)
  5924. {
  5925.     LPDISPATCH result;
  5926.     static BYTE parms[] =
  5927.         VTS_I2 VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8 VTS_R8;
  5928.     InvokeHelper(0x20016, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  5929.         numrows, numcols, numlevels, rowspacing, colspacing, levelspacing, Rotation);
  5930.     return result;
  5931. }
  5932.  
  5933. LPDISPATCH IEntities::PolarArray(short numitems, double fillangle, double angletween, LPDISPATCH Center, const VARIANT& refpoint)
  5934. {
  5935.     LPDISPATCH result;
  5936.     static BYTE parms[] =
  5937.         VTS_I2 VTS_R8 VTS_R8 VTS_DISPATCH VTS_VARIANT;
  5938.     InvokeHelper(0x20017, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  5939.         numitems, fillangle, angletween, Center, &refpoint);
  5940.     return result;
  5941. }
  5942.  
  5943. void IEntities::DisplayGrips()
  5944. {
  5945.     InvokeHelper(0x20018, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  5946. }
  5947.  
  5948. void IEntities::EraseGrips()
  5949. {
  5950.     InvokeHelper(0x20019, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  5951. }
  5952.  
  5953. LPDISPATCH IEntities::GetItem(const VARIANT& which)
  5954. {
  5955.     LPDISPATCH result;
  5956.     static BYTE parms[] =
  5957.         VTS_VARIANT;
  5958.     InvokeHelper(0x10003, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  5959.         &which);
  5960.     return result;
  5961. }
  5962.  
  5963. LPDISPATCH IEntities::GetLast()
  5964. {
  5965.     LPDISPATCH result;
  5966.     InvokeHelper(0x10004, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, NULL);
  5967.     return result;
  5968. }
  5969.  
  5970. LPDISPATCH IEntities::GetFirst()
  5971. {
  5972.     LPDISPATCH result;
  5973.     InvokeHelper(0x10005, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, NULL);
  5974.     return result;
  5975. }
  5976.  
  5977. LPDISPATCH IEntities::GetNext()
  5978. {
  5979.     LPDISPATCH result;
  5980.     InvokeHelper(0x10006, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, NULL);
  5981.     return result;
  5982. }
  5983.  
  5984. LPDISPATCH IEntities::Get_Item(const VARIANT& which)
  5985. {
  5986.     LPDISPATCH result;
  5987.     static BYTE parms[] =
  5988.         VTS_VARIANT;
  5989.     InvokeHelper(0x0, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  5990.         &which);
  5991.     return result;
  5992. }
  5993.  
  5994. LPDISPATCH IEntities::AddLine()
  5995. {
  5996.     LPDISPATCH result;
  5997.     InvokeHelper(0x1, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, NULL);
  5998.     return result;
  5999. }
  6000.  
  6001. LPDISPATCH IEntities::AddCircle()
  6002. {
  6003.     LPDISPATCH result;
  6004.     InvokeHelper(0x2, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, NULL);
  6005.     return result;
  6006. }
  6007.  
  6008. LPDISPATCH IEntities::AddArc()
  6009. {
  6010.     LPDISPATCH result;
  6011.     InvokeHelper(0x3, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, NULL);
  6012.     return result;
  6013. }
  6014.  
  6015. LPDISPATCH IEntities::AddFace()
  6016. {
  6017.     LPDISPATCH result;
  6018.     InvokeHelper(0x4, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, NULL);
  6019.     return result;
  6020. }
  6021.  
  6022. LPDISPATCH IEntities::AddText()
  6023. {
  6024.     LPDISPATCH result;
  6025.     InvokeHelper(0x5, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, NULL);
  6026.     return result;
  6027. }
  6028.  
  6029. LPDISPATCH IEntities::AddPoint()
  6030. {
  6031.     LPDISPATCH result;
  6032.     InvokeHelper(0x6, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, NULL);
  6033.     return result;
  6034. }
  6035.  
  6036. LPDISPATCH IEntities::AddShape()
  6037. {
  6038.     LPDISPATCH result;
  6039.     InvokeHelper(0x7, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, NULL);
  6040.     return result;
  6041. }
  6042.  
  6043. LPDISPATCH IEntities::AddTrace()
  6044. {
  6045.     LPDISPATCH result;
  6046.     InvokeHelper(0x8, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, NULL);
  6047.     return result;
  6048. }
  6049.  
  6050. LPDISPATCH IEntities::AddSolid()
  6051. {
  6052.     LPDISPATCH result;
  6053.     InvokeHelper(0x9, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, NULL);
  6054.     return result;
  6055. }
  6056.  
  6057. LPDISPATCH IEntities::AddPolyline(short vertices)
  6058. {
  6059.     LPDISPATCH result;
  6060.     static BYTE parms[] =
  6061.         VTS_I2;
  6062.     InvokeHelper(0xb, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  6063.         vertices);
  6064.     return result;
  6065. }
  6066.  
  6067. LPDISPATCH IEntities::Add3DPolyline(short vertices)
  6068. {
  6069.     LPDISPATCH result;
  6070.     static BYTE parms[] =
  6071.         VTS_I2;
  6072.     InvokeHelper(0xc, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  6073.         vertices);
  6074.     return result;
  6075. }
  6076.  
  6077. LPDISPATCH IEntities::AddPolymesh(short rows, short columns)
  6078. {
  6079.     LPDISPATCH result;
  6080.     static BYTE parms[] =
  6081.         VTS_I2 VTS_I2;
  6082.     InvokeHelper(0xd, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  6083.         rows, columns);
  6084.     return result;
  6085. }
  6086.  
  6087. LPDISPATCH IEntities::AddPolyface(short vertices, short faces)
  6088. {
  6089.     LPDISPATCH result;
  6090.     static BYTE parms[] =
  6091.         VTS_I2 VTS_I2;
  6092.     InvokeHelper(0xe, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  6093.         vertices, faces);
  6094.     return result;
  6095. }
  6096.  
  6097. LPDISPATCH IEntities::AddAttdef()
  6098. {
  6099.     LPDISPATCH result;
  6100.     InvokeHelper(0xf, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, NULL);
  6101.     return result;
  6102. }
  6103.  
  6104. LPDISPATCH IEntities::AddDimension()
  6105. {
  6106.     LPDISPATCH result;
  6107.     InvokeHelper(0x10, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, NULL);
  6108.     return result;
  6109. }
  6110.  
  6111. LPDISPATCH IEntities::AddInsert(LPCTSTR blockname)
  6112. {
  6113.     LPDISPATCH result;
  6114.     static BYTE parms[] =
  6115.         VTS_BSTR;
  6116.     InvokeHelper(0x11, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  6117.         blockname);
  6118.     return result;
  6119. }
  6120.  
  6121. void IEntities::DrawLines()
  6122. {
  6123.     InvokeHelper(0x12, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6124. }
  6125.  
  6126. void IEntities::DrawLine()
  6127. {
  6128.     InvokeHelper(0x13, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6129. }
  6130.  
  6131. void IEntities::DrawDoubleLines()
  6132. {
  6133.     InvokeHelper(0x14, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6134. }
  6135.  
  6136. void IEntities::Draw2DPolyline()
  6137. {
  6138.     InvokeHelper(0x16, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6139. }
  6140.  
  6141. void IEntities::Draw3DPolyline()
  6142. {
  6143.     InvokeHelper(0x17, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6144. }
  6145.  
  6146. void IEntities::DrawCircle()
  6147. {
  6148.     InvokeHelper(0x18, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6149. }
  6150.  
  6151. void IEntities::Draw2PointCircle()
  6152. {
  6153.     InvokeHelper(0x19, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6154. }
  6155.  
  6156. void IEntities::Draw3PointCircle()
  6157. {
  6158.     InvokeHelper(0x1a, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6159. }
  6160.  
  6161. void IEntities::Draw3PointArcs()
  6162. {
  6163.     InvokeHelper(0x1b, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6164. }
  6165.  
  6166. void IEntities::Draw3PointArc()
  6167. {
  6168.     InvokeHelper(0x1c, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6169. }
  6170.  
  6171. void IEntities::DrawCenterStartEndArc()
  6172. {
  6173.     InvokeHelper(0x1d, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6174. }
  6175.  
  6176. void IEntities::DrawStartCenterEndArc()
  6177. {
  6178.     InvokeHelper(0x1e, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6179. }
  6180.  
  6181. void IEntities::DrawStartEndCenterArc()
  6182. {
  6183.     InvokeHelper(0x1f, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6184. }
  6185.  
  6186. void IEntities::DrawStartDirectionEndArc()
  6187. {
  6188.     InvokeHelper(0x20, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6189. }
  6190.  
  6191. void IEntities::DrawFace()
  6192. {
  6193.     InvokeHelper(0x21, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6194. }
  6195.  
  6196. void IEntities::DrawPoint()
  6197. {
  6198.     InvokeHelper(0x22, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6199. }
  6200.  
  6201. void IEntities::DrawSolid()
  6202. {
  6203.     InvokeHelper(0x23, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6204. }
  6205.  
  6206. void IEntities::DrawTrace()
  6207. {
  6208.     InvokeHelper(0x24, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6209. }
  6210.  
  6211. void IEntities::DrawText()
  6212. {
  6213.     InvokeHelper(0x25, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6214. }
  6215.  
  6216. void IEntities::DrawAttdef()
  6217. {
  6218.     InvokeHelper(0x26, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6219. }
  6220.  
  6221. void IEntities::DrawInsert(const VARIANT& which)
  6222. {
  6223.     static BYTE parms[] =
  6224.         VTS_VARIANT;
  6225.     InvokeHelper(0x27, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  6226.          &which);
  6227. }
  6228.  
  6229. void IEntities::Draw2DSpline()
  6230. {
  6231.     InvokeHelper(0x28, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6232. }
  6233.  
  6234. void IEntities::Draw3DSpline()
  6235. {
  6236.     InvokeHelper(0x29, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6237. }
  6238.  
  6239. void IEntities::Draw2DQuadraticSpline()
  6240. {
  6241.     InvokeHelper(0x2a, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6242. }
  6243.  
  6244. void IEntities::Draw3DQuadraticSpline()
  6245. {
  6246.     InvokeHelper(0x2b, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6247. }
  6248.  
  6249. void IEntities::Draw2DCubicSpline()
  6250. {
  6251.     InvokeHelper(0x2c, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6252. }
  6253.  
  6254. void IEntities::Draw3DCubicSpline()
  6255. {
  6256.     InvokeHelper(0x2d, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6257. }
  6258.  
  6259. void IEntities::Draw2PointRectangle()
  6260. {
  6261.     InvokeHelper(0x2e, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6262. }
  6263.  
  6264. void IEntities::Draw3PointRectangle()
  6265. {
  6266.     InvokeHelper(0x2f, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6267. }
  6268.  
  6269. void IEntities::DrawCenterVertexPolygon()
  6270. {
  6271.     InvokeHelper(0x30, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6272. }
  6273.  
  6274. void IEntities::DrawCenterMidpointPolygon()
  6275. {
  6276.     InvokeHelper(0x31, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6277. }
  6278.  
  6279. void IEntities::DrawEdgePolygon()
  6280. {
  6281.     InvokeHelper(0x32, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6282. }
  6283.  
  6284. void IEntities::DrawDonut()
  6285. {
  6286.     InvokeHelper(0x33, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6287. }
  6288.  
  6289. void IEntities::DrawHorizontalDim(const VARIANT& what)
  6290. {
  6291.     static BYTE parms[] =
  6292.         VTS_VARIANT;
  6293.     InvokeHelper(0x34, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  6294.          &what);
  6295. }
  6296.  
  6297. void IEntities::DrawVerticalDim(const VARIANT& what)
  6298. {
  6299.     static BYTE parms[] =
  6300.         VTS_VARIANT;
  6301.     InvokeHelper(0x35, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  6302.          &what);
  6303. }
  6304.  
  6305. void IEntities::DrawAlignedDim(const VARIANT& what)
  6306. {
  6307.     static BYTE parms[] =
  6308.         VTS_VARIANT;
  6309.     InvokeHelper(0x36, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  6310.          &what);
  6311. }
  6312.  
  6313. void IEntities::DrawRotatedDim(const VARIANT& what)
  6314. {
  6315.     static BYTE parms[] =
  6316.         VTS_VARIANT;
  6317.     InvokeHelper(0x37, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  6318.          &what);
  6319. }
  6320.  
  6321. void IEntities::DrawAngularDim(const VARIANT& what)
  6322. {
  6323.     static BYTE parms[] =
  6324.         VTS_VARIANT;
  6325.     InvokeHelper(0x38, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  6326.          &what);
  6327. }
  6328.  
  6329. void IEntities::Draw4PointAngularDim(const VARIANT& what)
  6330. {
  6331.     static BYTE parms[] =
  6332.         VTS_VARIANT;
  6333.     InvokeHelper(0x39, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  6334.          &what);
  6335. }
  6336.  
  6337. void IEntities::DrawRadiusDim(const VARIANT& what)
  6338. {
  6339.     static BYTE parms[] =
  6340.         VTS_VARIANT;
  6341.     InvokeHelper(0x3a, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  6342.          &what);
  6343. }
  6344.  
  6345. void IEntities::DrawDiameterDim(const VARIANT& what)
  6346. {
  6347.     static BYTE parms[] =
  6348.         VTS_VARIANT;
  6349.     InvokeHelper(0x3b, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  6350.          &what);
  6351. }
  6352.  
  6353. void IEntities::DrawOrdinateXDim(const VARIANT& what)
  6354. {
  6355.     static BYTE parms[] =
  6356.         VTS_VARIANT;
  6357.     InvokeHelper(0x3c, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  6358.          &what);
  6359. }
  6360.  
  6361. void IEntities::DrawOrdinateYDim(const VARIANT& what)
  6362. {
  6363.     static BYTE parms[] =
  6364.         VTS_VARIANT;
  6365.     InvokeHelper(0x3d, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  6366.          &what);
  6367. }
  6368.  
  6369. void IEntities::DrawBaselineDim(const VARIANT& what)
  6370. {
  6371.     static BYTE parms[] =
  6372.         VTS_VARIANT;
  6373.     InvokeHelper(0x3e, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  6374.          &what);
  6375. }
  6376.  
  6377. void IEntities::DrawContinuousDim(const VARIANT& what)
  6378. {
  6379.     static BYTE parms[] =
  6380.         VTS_VARIANT;
  6381.     InvokeHelper(0x3f, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  6382.          &what);
  6383. }
  6384.  
  6385. void IEntities::DrawLeader()
  6386. {
  6387.     InvokeHelper(0x40, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6388. }
  6389.  
  6390. void IEntities::DrawViewport()
  6391. {
  6392.     InvokeHelper(0x41, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6393. }
  6394.  
  6395.  
  6396. /////////////////////////////////////////////////////////////////////////////
  6397. // ISelection properties
  6398.  
  6399. LPDISPATCH ISelection::GetApplication()
  6400. {
  6401.     LPDISPATCH result;
  6402.     GetProperty(0x30001, VT_DISPATCH, (void*)&result);
  6403.     return result;
  6404. }
  6405.  
  6406. LPDISPATCH ISelection::GetParent()
  6407. {
  6408.     LPDISPATCH result;
  6409.     GetProperty(0x30002, VT_DISPATCH, (void*)&result);
  6410.     return result;
  6411. }
  6412.  
  6413. LPDISPATCH ISelection::GetColor()
  6414. {
  6415.     LPDISPATCH result;
  6416.     GetProperty(0x20001, VT_DISPATCH, (void*)&result);
  6417.     return result;
  6418. }
  6419.  
  6420. void ISelection::SetColor(LPDISPATCH propVal)
  6421. {
  6422.     SetProperty(0x20001, VT_DISPATCH, propVal);
  6423. }
  6424.  
  6425. short ISelection::GetColorNumber()
  6426. {
  6427.     short result;
  6428.     GetProperty(0x20002, VT_I2, (void*)&result);
  6429.     return result;
  6430. }
  6431.  
  6432. void ISelection::SetColorNumber(short propVal)
  6433. {
  6434.     SetProperty(0x20002, VT_I2, propVal);
  6435. }
  6436.  
  6437. LPDISPATCH ISelection::GetLayer()
  6438. {
  6439.     LPDISPATCH result;
  6440.     GetProperty(0x20003, VT_DISPATCH, (void*)&result);
  6441.     return result;
  6442. }
  6443.  
  6444. void ISelection::SetLayer(LPDISPATCH propVal)
  6445. {
  6446.     SetProperty(0x20003, VT_DISPATCH, propVal);
  6447. }
  6448.  
  6449. LPDISPATCH ISelection::GetLinetype()
  6450. {
  6451.     LPDISPATCH result;
  6452.     GetProperty(0x20004, VT_DISPATCH, (void*)&result);
  6453.     return result;
  6454. }
  6455.  
  6456. void ISelection::SetLinetype(LPDISPATCH propVal)
  6457. {
  6458.     SetProperty(0x20004, VT_DISPATCH, propVal);
  6459. }
  6460.  
  6461. double ISelection::GetThickness()
  6462. {
  6463.     double result;
  6464.     GetProperty(0x20005, VT_R8, (void*)&result);
  6465.     return result;
  6466. }
  6467.  
  6468. void ISelection::SetThickness(double propVal)
  6469. {
  6470.     SetProperty(0x20005, VT_R8, propVal);
  6471. }
  6472.  
  6473. BOOL ISelection::GetPaperSpace()
  6474. {
  6475.     BOOL result;
  6476.     GetProperty(0x20006, VT_BOOL, (void*)&result);
  6477.     return result;
  6478. }
  6479.  
  6480. void ISelection::SetPaperSpace(BOOL propVal)
  6481. {
  6482.     SetProperty(0x20006, VT_BOOL, propVal);
  6483. }
  6484.  
  6485. LPDISPATCH ISelection::GetNormal()
  6486. {
  6487.     LPDISPATCH result;
  6488.     GetProperty(0x20007, VT_DISPATCH, (void*)&result);
  6489.     return result;
  6490. }
  6491.  
  6492. void ISelection::SetNormal(LPDISPATCH propVal)
  6493. {
  6494.     SetProperty(0x20007, VT_DISPATCH, propVal);
  6495. }
  6496.  
  6497. BOOL ISelection::GetHasItems()
  6498. {
  6499.     BOOL result;
  6500.     GetProperty(0x10001, VT_BOOL, (void*)&result);
  6501.     return result;
  6502. }
  6503.  
  6504. long ISelection::GetCount()
  6505. {
  6506.     long result;
  6507.     GetProperty(0x10002, VT_I4, (void*)&result);
  6508.     return result;
  6509. }
  6510.  
  6511. /////////////////////////////////////////////////////////////////////////////
  6512. // ISelection operations
  6513.  
  6514. void ISelection::Redraw()
  6515. {
  6516.     InvokeHelper(0x20008, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6517. }
  6518.  
  6519. void ISelection::Regen()
  6520. {
  6521.     InvokeHelper(0x20009, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6522. }
  6523.  
  6524. void ISelection::Erase()
  6525. {
  6526.     InvokeHelper(0x2000a, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6527. }
  6528.  
  6529. void ISelection::Delete()
  6530. {
  6531.     InvokeHelper(0x2000b, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6532. }
  6533.  
  6534. void ISelection::Move(LPDISPATCH offset)
  6535. {
  6536.     static BYTE parms[] =
  6537.         VTS_DISPATCH;
  6538.     InvokeHelper(0x2000c, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  6539.          offset);
  6540. }
  6541.  
  6542. LPDISPATCH ISelection::Copy(LPDISPATCH offset)
  6543. {
  6544.     LPDISPATCH result;
  6545.     static BYTE parms[] =
  6546.         VTS_DISPATCH;
  6547.     InvokeHelper(0x2000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  6548.         offset);
  6549.     return result;
  6550. }
  6551.  
  6552. void ISelection::scale(LPDISPATCH basepoint, LPDISPATCH scale)
  6553. {
  6554.     static BYTE parms[] =
  6555.         VTS_DISPATCH VTS_DISPATCH;
  6556.     InvokeHelper(0x2000e, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  6557.          basepoint, scale);
  6558. }
  6559.  
  6560. void ISelection::ScaleIt(LPDISPATCH basepoint, LPDISPATCH scale)
  6561. {
  6562.     static BYTE parms[] =
  6563.         VTS_DISPATCH VTS_DISPATCH;
  6564.     InvokeHelper(0x2000f, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  6565.          basepoint, scale);
  6566. }
  6567.  
  6568. void ISelection::Rotate(LPDISPATCH basepoint, double Angle)
  6569. {
  6570.     static BYTE parms[] =
  6571.         VTS_DISPATCH VTS_R8;
  6572.     InvokeHelper(0x20010, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  6573.          basepoint, Angle);
  6574. }
  6575.  
  6576. void ISelection::Mirror(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  6577. {
  6578.     static BYTE parms[] =
  6579.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  6580.     InvokeHelper(0x20011, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  6581.          point1, point2, &MirrorText);
  6582. }
  6583.  
  6584. LPDISPATCH ISelection::MirrorCopy(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  6585. {
  6586.     LPDISPATCH result;
  6587.     static BYTE parms[] =
  6588.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  6589.     InvokeHelper(0x20012, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  6590.         point1, point2, &MirrorText);
  6591.     return result;
  6592. }
  6593.  
  6594. void ISelection::Dialog()
  6595. {
  6596.     InvokeHelper(0x20013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6597. }
  6598.  
  6599. LPDISPATCH ISelection::Offset(LPDISPATCH vec, const VARIANT& Distance)
  6600. {
  6601.     LPDISPATCH result;
  6602.     static BYTE parms[] =
  6603.         VTS_DISPATCH VTS_VARIANT;
  6604.     InvokeHelper(0x20014, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  6605.         vec, &Distance);
  6606.     return result;
  6607. }
  6608.  
  6609. LPDISPATCH ISelection::Array(short numrows, short numcols, double rowspacing, double colspacing, double Rotation)
  6610. {
  6611.     LPDISPATCH result;
  6612.     static BYTE parms[] =
  6613.         VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8;
  6614.     InvokeHelper(0x20015, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  6615.         numrows, numcols, rowspacing, colspacing, Rotation);
  6616.     return result;
  6617. }
  6618.  
  6619. LPDISPATCH ISelection::Array3D(short numrows, short numcols, short numlevels, double rowspacing, double colspacing, double levelspacing, double Rotation)
  6620. {
  6621.     LPDISPATCH result;
  6622.     static BYTE parms[] =
  6623.         VTS_I2 VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8 VTS_R8;
  6624.     InvokeHelper(0x20016, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  6625.         numrows, numcols, numlevels, rowspacing, colspacing, levelspacing, Rotation);
  6626.     return result;
  6627. }
  6628.  
  6629. LPDISPATCH ISelection::PolarArray(short numitems, double fillangle, double angletween, LPDISPATCH Center, const VARIANT& refpoint)
  6630. {
  6631.     LPDISPATCH result;
  6632.     static BYTE parms[] =
  6633.         VTS_I2 VTS_R8 VTS_R8 VTS_DISPATCH VTS_VARIANT;
  6634.     InvokeHelper(0x20017, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  6635.         numitems, fillangle, angletween, Center, &refpoint);
  6636.     return result;
  6637. }
  6638.  
  6639. void ISelection::DisplayGrips()
  6640. {
  6641.     InvokeHelper(0x20018, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6642. }
  6643.  
  6644. void ISelection::EraseGrips()
  6645. {
  6646.     InvokeHelper(0x20019, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6647. }
  6648.  
  6649. LPDISPATCH ISelection::GetItem(const VARIANT& which)
  6650. {
  6651.     LPDISPATCH result;
  6652.     static BYTE parms[] =
  6653.         VTS_VARIANT;
  6654.     InvokeHelper(0x10003, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  6655.         &which);
  6656.     return result;
  6657. }
  6658.  
  6659. LPDISPATCH ISelection::GetLast()
  6660. {
  6661.     LPDISPATCH result;
  6662.     InvokeHelper(0x10004, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, NULL);
  6663.     return result;
  6664. }
  6665.  
  6666. LPDISPATCH ISelection::GetFirst()
  6667. {
  6668.     LPDISPATCH result;
  6669.     InvokeHelper(0x10005, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, NULL);
  6670.     return result;
  6671. }
  6672.  
  6673. LPDISPATCH ISelection::GetNext()
  6674. {
  6675.     LPDISPATCH result;
  6676.     InvokeHelper(0x10006, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, NULL);
  6677.     return result;
  6678. }
  6679.  
  6680. LPDISPATCH ISelection::Get_Item(const VARIANT& which)
  6681. {
  6682.     LPDISPATCH result;
  6683.     static BYTE parms[] =
  6684.         VTS_VARIANT;
  6685.     InvokeHelper(0x0, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  6686.         &which);
  6687.     return result;
  6688. }
  6689.  
  6690. void ISelection::Add(LPDISPATCH Entity)
  6691. {
  6692.     static BYTE parms[] =
  6693.         VTS_DISPATCH;
  6694.     InvokeHelper(0x1, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  6695.          Entity);
  6696. }
  6697.  
  6698. void ISelection::Remove(LPDISPATCH Entity)
  6699. {
  6700.     static BYTE parms[] =
  6701.         VTS_DISPATCH;
  6702.     InvokeHelper(0x2, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  6703.          Entity);
  6704. }
  6705.  
  6706. void ISelection::RemoveAll()
  6707. {
  6708.     InvokeHelper(0x3, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6709. }
  6710.  
  6711. void ISelection::AddAll()
  6712. {
  6713.     InvokeHelper(0x4, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6714. }
  6715.  
  6716. void ISelection::AddPrevious()
  6717. {
  6718.     InvokeHelper(0x5, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6719. }
  6720.  
  6721. void ISelection::CrossingWindow(LPDISPATCH corner1, LPDISPATCH corner2)
  6722. {
  6723.     static BYTE parms[] =
  6724.         VTS_DISPATCH VTS_DISPATCH;
  6725.     InvokeHelper(0x6, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  6726.          corner1, corner2);
  6727. }
  6728.  
  6729. void ISelection::ContainingWindow(LPDISPATCH corner1, LPDISPATCH corner2)
  6730. {
  6731.     static BYTE parms[] =
  6732.         VTS_DISPATCH VTS_DISPATCH;
  6733.     InvokeHelper(0x7, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  6734.          corner1, corner2);
  6735. }
  6736.  
  6737. void ISelection::PickSingle(LPDISPATCH point)
  6738. {
  6739.     static BYTE parms[] =
  6740.         VTS_DISPATCH;
  6741.     InvokeHelper(0x8, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  6742.          point);
  6743. }
  6744.  
  6745. void ISelection::CopyToClipboard(const VARIANT& basepoint)
  6746. {
  6747.     static BYTE parms[] =
  6748.         VTS_VARIANT;
  6749.     InvokeHelper(0x9, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  6750.          &basepoint);
  6751. }
  6752.  
  6753. void ISelection::CutToClipboard(const VARIANT& basepoint)
  6754. {
  6755.     static BYTE parms[] =
  6756.         VTS_VARIANT;
  6757.     InvokeHelper(0xa, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  6758.          &basepoint);
  6759. }
  6760.  
  6761. void ISelection::WindowToClipboard()
  6762. {
  6763.     InvokeHelper(0xb, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6764. }
  6765.  
  6766. void ISelection::TextToClipboard()
  6767. {
  6768.     InvokeHelper(0xc, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6769. }
  6770.  
  6771.  
  6772. /////////////////////////////////////////////////////////////////////////////
  6773. // IEntitySet properties
  6774.  
  6775. LPDISPATCH IEntitySet::GetApplication()
  6776. {
  6777.     LPDISPATCH result;
  6778.     GetProperty(0x30001, VT_DISPATCH, (void*)&result);
  6779.     return result;
  6780. }
  6781.  
  6782. LPDISPATCH IEntitySet::GetParent()
  6783. {
  6784.     LPDISPATCH result;
  6785.     GetProperty(0x30002, VT_DISPATCH, (void*)&result);
  6786.     return result;
  6787. }
  6788.  
  6789. LPDISPATCH IEntitySet::GetColor()
  6790. {
  6791.     LPDISPATCH result;
  6792.     GetProperty(0x20001, VT_DISPATCH, (void*)&result);
  6793.     return result;
  6794. }
  6795.  
  6796. void IEntitySet::SetColor(LPDISPATCH propVal)
  6797. {
  6798.     SetProperty(0x20001, VT_DISPATCH, propVal);
  6799. }
  6800.  
  6801. short IEntitySet::GetColorNumber()
  6802. {
  6803.     short result;
  6804.     GetProperty(0x20002, VT_I2, (void*)&result);
  6805.     return result;
  6806. }
  6807.  
  6808. void IEntitySet::SetColorNumber(short propVal)
  6809. {
  6810.     SetProperty(0x20002, VT_I2, propVal);
  6811. }
  6812.  
  6813. LPDISPATCH IEntitySet::GetLayer()
  6814. {
  6815.     LPDISPATCH result;
  6816.     GetProperty(0x20003, VT_DISPATCH, (void*)&result);
  6817.     return result;
  6818. }
  6819.  
  6820. void IEntitySet::SetLayer(LPDISPATCH propVal)
  6821. {
  6822.     SetProperty(0x20003, VT_DISPATCH, propVal);
  6823. }
  6824.  
  6825. LPDISPATCH IEntitySet::GetLinetype()
  6826. {
  6827.     LPDISPATCH result;
  6828.     GetProperty(0x20004, VT_DISPATCH, (void*)&result);
  6829.     return result;
  6830. }
  6831.  
  6832. void IEntitySet::SetLinetype(LPDISPATCH propVal)
  6833. {
  6834.     SetProperty(0x20004, VT_DISPATCH, propVal);
  6835. }
  6836.  
  6837. double IEntitySet::GetThickness()
  6838. {
  6839.     double result;
  6840.     GetProperty(0x20005, VT_R8, (void*)&result);
  6841.     return result;
  6842. }
  6843.  
  6844. void IEntitySet::SetThickness(double propVal)
  6845. {
  6846.     SetProperty(0x20005, VT_R8, propVal);
  6847. }
  6848.  
  6849. BOOL IEntitySet::GetPaperSpace()
  6850. {
  6851.     BOOL result;
  6852.     GetProperty(0x20006, VT_BOOL, (void*)&result);
  6853.     return result;
  6854. }
  6855.  
  6856. void IEntitySet::SetPaperSpace(BOOL propVal)
  6857. {
  6858.     SetProperty(0x20006, VT_BOOL, propVal);
  6859. }
  6860.  
  6861. LPDISPATCH IEntitySet::GetNormal()
  6862. {
  6863.     LPDISPATCH result;
  6864.     GetProperty(0x20007, VT_DISPATCH, (void*)&result);
  6865.     return result;
  6866. }
  6867.  
  6868. void IEntitySet::SetNormal(LPDISPATCH propVal)
  6869. {
  6870.     SetProperty(0x20007, VT_DISPATCH, propVal);
  6871. }
  6872.  
  6873. BOOL IEntitySet::GetHasItems()
  6874. {
  6875.     BOOL result;
  6876.     GetProperty(0x10001, VT_BOOL, (void*)&result);
  6877.     return result;
  6878. }
  6879.  
  6880. long IEntitySet::GetCount()
  6881. {
  6882.     long result;
  6883.     GetProperty(0x10002, VT_I4, (void*)&result);
  6884.     return result;
  6885. }
  6886.  
  6887. /////////////////////////////////////////////////////////////////////////////
  6888. // IEntitySet operations
  6889.  
  6890. void IEntitySet::Redraw()
  6891. {
  6892.     InvokeHelper(0x20008, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6893. }
  6894.  
  6895. void IEntitySet::Regen()
  6896. {
  6897.     InvokeHelper(0x20009, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6898. }
  6899.  
  6900. void IEntitySet::Erase()
  6901. {
  6902.     InvokeHelper(0x2000a, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6903. }
  6904.  
  6905. void IEntitySet::Delete()
  6906. {
  6907.     InvokeHelper(0x2000b, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6908. }
  6909.  
  6910. void IEntitySet::Move(LPDISPATCH offset)
  6911. {
  6912.     static BYTE parms[] =
  6913.         VTS_DISPATCH;
  6914.     InvokeHelper(0x2000c, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  6915.          offset);
  6916. }
  6917.  
  6918. LPDISPATCH IEntitySet::Copy(LPDISPATCH offset)
  6919. {
  6920.     LPDISPATCH result;
  6921.     static BYTE parms[] =
  6922.         VTS_DISPATCH;
  6923.     InvokeHelper(0x2000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  6924.         offset);
  6925.     return result;
  6926. }
  6927.  
  6928. void IEntitySet::scale(LPDISPATCH basepoint, LPDISPATCH scale)
  6929. {
  6930.     static BYTE parms[] =
  6931.         VTS_DISPATCH VTS_DISPATCH;
  6932.     InvokeHelper(0x2000e, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  6933.          basepoint, scale);
  6934. }
  6935.  
  6936. void IEntitySet::ScaleIt(LPDISPATCH basepoint, LPDISPATCH scale)
  6937. {
  6938.     static BYTE parms[] =
  6939.         VTS_DISPATCH VTS_DISPATCH;
  6940.     InvokeHelper(0x2000f, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  6941.          basepoint, scale);
  6942. }
  6943.  
  6944. void IEntitySet::Rotate(LPDISPATCH basepoint, double Angle)
  6945. {
  6946.     static BYTE parms[] =
  6947.         VTS_DISPATCH VTS_R8;
  6948.     InvokeHelper(0x20010, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  6949.          basepoint, Angle);
  6950. }
  6951.  
  6952. void IEntitySet::Mirror(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  6953. {
  6954.     static BYTE parms[] =
  6955.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  6956.     InvokeHelper(0x20011, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  6957.          point1, point2, &MirrorText);
  6958. }
  6959.  
  6960. LPDISPATCH IEntitySet::MirrorCopy(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  6961. {
  6962.     LPDISPATCH result;
  6963.     static BYTE parms[] =
  6964.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  6965.     InvokeHelper(0x20012, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  6966.         point1, point2, &MirrorText);
  6967.     return result;
  6968. }
  6969.  
  6970. void IEntitySet::Dialog()
  6971. {
  6972.     InvokeHelper(0x20013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  6973. }
  6974.  
  6975. LPDISPATCH IEntitySet::Offset(LPDISPATCH vec, const VARIANT& Distance)
  6976. {
  6977.     LPDISPATCH result;
  6978.     static BYTE parms[] =
  6979.         VTS_DISPATCH VTS_VARIANT;
  6980.     InvokeHelper(0x20014, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  6981.         vec, &Distance);
  6982.     return result;
  6983. }
  6984.  
  6985. LPDISPATCH IEntitySet::Array(short numrows, short numcols, double rowspacing, double colspacing, double Rotation)
  6986. {
  6987.     LPDISPATCH result;
  6988.     static BYTE parms[] =
  6989.         VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8;
  6990.     InvokeHelper(0x20015, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  6991.         numrows, numcols, rowspacing, colspacing, Rotation);
  6992.     return result;
  6993. }
  6994.  
  6995. LPDISPATCH IEntitySet::Array3D(short numrows, short numcols, short numlevels, double rowspacing, double colspacing, double levelspacing, double Rotation)
  6996. {
  6997.     LPDISPATCH result;
  6998.     static BYTE parms[] =
  6999.         VTS_I2 VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8 VTS_R8;
  7000.     InvokeHelper(0x20016, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  7001.         numrows, numcols, numlevels, rowspacing, colspacing, levelspacing, Rotation);
  7002.     return result;
  7003. }
  7004.  
  7005. LPDISPATCH IEntitySet::PolarArray(short numitems, double fillangle, double angletween, LPDISPATCH Center, const VARIANT& refpoint)
  7006. {
  7007.     LPDISPATCH result;
  7008.     static BYTE parms[] =
  7009.         VTS_I2 VTS_R8 VTS_R8 VTS_DISPATCH VTS_VARIANT;
  7010.     InvokeHelper(0x20017, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  7011.         numitems, fillangle, angletween, Center, &refpoint);
  7012.     return result;
  7013. }
  7014.  
  7015. void IEntitySet::DisplayGrips()
  7016. {
  7017.     InvokeHelper(0x20018, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  7018. }
  7019.  
  7020. void IEntitySet::EraseGrips()
  7021. {
  7022.     InvokeHelper(0x20019, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  7023. }
  7024.  
  7025. LPDISPATCH IEntitySet::GetItem(const VARIANT& which)
  7026. {
  7027.     LPDISPATCH result;
  7028.     static BYTE parms[] =
  7029.         VTS_VARIANT;
  7030.     InvokeHelper(0x10003, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  7031.         &which);
  7032.     return result;
  7033. }
  7034.  
  7035. LPDISPATCH IEntitySet::GetLast()
  7036. {
  7037.     LPDISPATCH result;
  7038.     InvokeHelper(0x10004, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, NULL);
  7039.     return result;
  7040. }
  7041.  
  7042. LPDISPATCH IEntitySet::GetFirst()
  7043. {
  7044.     LPDISPATCH result;
  7045.     InvokeHelper(0x10005, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, NULL);
  7046.     return result;
  7047. }
  7048.  
  7049. LPDISPATCH IEntitySet::GetNext()
  7050. {
  7051.     LPDISPATCH result;
  7052.     InvokeHelper(0x10006, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, NULL);
  7053.     return result;
  7054. }
  7055.  
  7056. LPDISPATCH IEntitySet::Get_Item(const VARIANT& which)
  7057. {
  7058.     LPDISPATCH result;
  7059.     static BYTE parms[] =
  7060.         VTS_VARIANT;
  7061.     InvokeHelper(0x0, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  7062.         &which);
  7063.     return result;
  7064. }
  7065.  
  7066. void IEntitySet::Add(LPDISPATCH Entity)
  7067. {
  7068.     static BYTE parms[] =
  7069.         VTS_DISPATCH;
  7070.     InvokeHelper(0x1, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  7071.          Entity);
  7072. }
  7073.  
  7074. void IEntitySet::Remove(LPDISPATCH Entity)
  7075. {
  7076.     static BYTE parms[] =
  7077.         VTS_DISPATCH;
  7078.     InvokeHelper(0x2, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  7079.          Entity);
  7080. }
  7081.  
  7082. void IEntitySet::RemoveAll()
  7083. {
  7084.     InvokeHelper(0x3, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  7085. }
  7086.  
  7087. void IEntitySet::AddAll()
  7088. {
  7089.     InvokeHelper(0x4, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  7090. }
  7091.  
  7092.  
  7093. /////////////////////////////////////////////////////////////////////////////
  7094. // IXData properties
  7095.  
  7096. LPDISPATCH IXData::GetApplication()
  7097. {
  7098.     LPDISPATCH result;
  7099.     GetProperty(0x10001, VT_DISPATCH, (void*)&result);
  7100.     return result;
  7101. }
  7102.  
  7103. LPDISPATCH IXData::GetParent()
  7104. {
  7105.     LPDISPATCH result;
  7106.     GetProperty(0x10002, VT_DISPATCH, (void*)&result);
  7107.     return result;
  7108. }
  7109.  
  7110. short IXData::GetGroup()
  7111. {
  7112.     short result;
  7113.     GetProperty(0x1, VT_I2, (void*)&result);
  7114.     return result;
  7115. }
  7116.  
  7117. short IXData::GetType()
  7118. {
  7119.     short result;
  7120.     GetProperty(0x2, VT_I2, (void*)&result);
  7121.     return result;
  7122. }
  7123.  
  7124. short IXData::GetIndex()
  7125. {
  7126.     short result;
  7127.     GetProperty(0x3, VT_I2, (void*)&result);
  7128.     return result;
  7129. }
  7130.  
  7131. void IXData::SetIndex(short propVal)
  7132. {
  7133.     SetProperty(0x3, VT_I2, propVal);
  7134. }
  7135.  
  7136. CString IXData::GetString()
  7137. {
  7138.     CString result;
  7139.     GetProperty(0x4, VT_BSTR, (void*)&result);
  7140.     return result;
  7141. }
  7142.  
  7143. void IXData::SetString(LPCTSTR propVal)
  7144. {
  7145.     SetProperty(0x4, VT_BSTR, propVal);
  7146. }
  7147.  
  7148. short IXData::GetControl()
  7149. {
  7150.     short result;
  7151.     GetProperty(0x5, VT_I2, (void*)&result);
  7152.     return result;
  7153. }
  7154.  
  7155. void IXData::SetControl(short propVal)
  7156. {
  7157.     SetProperty(0x5, VT_I2, propVal);
  7158. }
  7159.  
  7160. LPDISPATCH IXData::GetLayer()
  7161. {
  7162.     LPDISPATCH result;
  7163.     GetProperty(0x6, VT_DISPATCH, (void*)&result);
  7164.     return result;
  7165. }
  7166.  
  7167. void IXData::SetLayer(LPDISPATCH propVal)
  7168. {
  7169.     SetProperty(0x6, VT_DISPATCH, propVal);
  7170. }
  7171.  
  7172. CString IXData::GetHandle()
  7173. {
  7174.     CString result;
  7175.     GetProperty(0x7, VT_BSTR, (void*)&result);
  7176.     return result;
  7177. }
  7178.  
  7179. void IXData::SetHandle(LPCTSTR propVal)
  7180. {
  7181.     SetProperty(0x7, VT_BSTR, propVal);
  7182. }
  7183.  
  7184. LPDISPATCH IXData::GetVector()
  7185. {
  7186.     LPDISPATCH result;
  7187.     GetProperty(0x8, VT_DISPATCH, (void*)&result);
  7188.     return result;
  7189. }
  7190.  
  7191. void IXData::SetVector(LPDISPATCH propVal)
  7192. {
  7193.     SetProperty(0x8, VT_DISPATCH, propVal);
  7194. }
  7195.  
  7196. double IXData::GetDouble()
  7197. {
  7198.     double result;
  7199.     GetProperty(0x9, VT_R8, (void*)&result);
  7200.     return result;
  7201. }
  7202.  
  7203. void IXData::SetDouble(double propVal)
  7204. {
  7205.     SetProperty(0x9, VT_R8, propVal);
  7206. }
  7207.  
  7208. short IXData::GetShort()
  7209. {
  7210.     short result;
  7211.     GetProperty(0xa, VT_I2, (void*)&result);
  7212.     return result;
  7213. }
  7214.  
  7215. void IXData::SetShort(short propVal)
  7216. {
  7217.     SetProperty(0xa, VT_I2, propVal);
  7218. }
  7219.  
  7220. long IXData::GetLong()
  7221. {
  7222.     long result;
  7223.     GetProperty(0xb, VT_I4, (void*)&result);
  7224.     return result;
  7225. }
  7226.  
  7227. void IXData::SetLong(long propVal)
  7228. {
  7229.     SetProperty(0xb, VT_I4, propVal);
  7230. }
  7231.  
  7232. /////////////////////////////////////////////////////////////////////////////
  7233. // IXData operations
  7234.  
  7235. BOOL IXData::Next()
  7236. {
  7237.     BOOL result;
  7238.     InvokeHelper(0xc, DISPATCH_METHOD, VT_BOOL, (void*)&result, NULL);
  7239.     return result;
  7240. }
  7241.  
  7242. BOOL IXData::Add(short Group, const VARIANT& data)
  7243. {
  7244.     BOOL result;
  7245.     static BYTE parms[] =
  7246.         VTS_I2 VTS_VARIANT;
  7247.     InvokeHelper(0xd, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  7248.         Group, &data);
  7249.     return result;
  7250. }
  7251.  
  7252. BOOL IXData::Remove()
  7253. {
  7254.     BOOL result;
  7255.     InvokeHelper(0xe, DISPATCH_METHOD, VT_BOOL, (void*)&result, NULL);
  7256.     return result;
  7257. }
  7258.  
  7259. BOOL IXData::FindApplicationID(LPCTSTR appname)
  7260. {
  7261.     BOOL result;
  7262.     static BYTE parms[] =
  7263.         VTS_BSTR;
  7264.     InvokeHelper(0xf, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  7265.         appname);
  7266.     return result;
  7267. }
  7268.  
  7269. BOOL IXData::AddApplicationID(LPCTSTR appname)
  7270. {
  7271.     BOOL result;
  7272.     static BYTE parms[] =
  7273.         VTS_BSTR;
  7274.     InvokeHelper(0x10, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  7275.         appname);
  7276.     return result;
  7277. }
  7278.  
  7279.  
  7280. /////////////////////////////////////////////////////////////////////////////
  7281. // IEntity properties
  7282.  
  7283. LPDISPATCH IEntity::GetApplication()
  7284. {
  7285.     LPDISPATCH result;
  7286.     GetProperty(0x40001, VT_DISPATCH, (void*)&result);
  7287.     return result;
  7288. }
  7289.  
  7290. LPDISPATCH IEntity::GetParent()
  7291. {
  7292.     LPDISPATCH result;
  7293.     GetProperty(0x40002, VT_DISPATCH, (void*)&result);
  7294.     return result;
  7295. }
  7296.  
  7297. LPDISPATCH IEntity::GetColor()
  7298. {
  7299.     LPDISPATCH result;
  7300.     GetProperty(0x30001, VT_DISPATCH, (void*)&result);
  7301.     return result;
  7302. }
  7303.  
  7304. void IEntity::SetColor(LPDISPATCH propVal)
  7305. {
  7306.     SetProperty(0x30001, VT_DISPATCH, propVal);
  7307. }
  7308.  
  7309. short IEntity::GetColorNumber()
  7310. {
  7311.     short result;
  7312.     GetProperty(0x30002, VT_I2, (void*)&result);
  7313.     return result;
  7314. }
  7315.  
  7316. void IEntity::SetColorNumber(short propVal)
  7317. {
  7318.     SetProperty(0x30002, VT_I2, propVal);
  7319. }
  7320.  
  7321. LPDISPATCH IEntity::GetLayer()
  7322. {
  7323.     LPDISPATCH result;
  7324.     GetProperty(0x30003, VT_DISPATCH, (void*)&result);
  7325.     return result;
  7326. }
  7327.  
  7328. void IEntity::SetLayer(LPDISPATCH propVal)
  7329. {
  7330.     SetProperty(0x30003, VT_DISPATCH, propVal);
  7331. }
  7332.  
  7333. LPDISPATCH IEntity::GetLinetype()
  7334. {
  7335.     LPDISPATCH result;
  7336.     GetProperty(0x30004, VT_DISPATCH, (void*)&result);
  7337.     return result;
  7338. }
  7339.  
  7340. void IEntity::SetLinetype(LPDISPATCH propVal)
  7341. {
  7342.     SetProperty(0x30004, VT_DISPATCH, propVal);
  7343. }
  7344.  
  7345. double IEntity::GetThickness()
  7346. {
  7347.     double result;
  7348.     GetProperty(0x30005, VT_R8, (void*)&result);
  7349.     return result;
  7350. }
  7351.  
  7352. void IEntity::SetThickness(double propVal)
  7353. {
  7354.     SetProperty(0x30005, VT_R8, propVal);
  7355. }
  7356.  
  7357. BOOL IEntity::GetPaperSpace()
  7358. {
  7359.     BOOL result;
  7360.     GetProperty(0x30006, VT_BOOL, (void*)&result);
  7361.     return result;
  7362. }
  7363.  
  7364. void IEntity::SetPaperSpace(BOOL propVal)
  7365. {
  7366.     SetProperty(0x30006, VT_BOOL, propVal);
  7367. }
  7368.  
  7369. LPDISPATCH IEntity::GetNormal()
  7370. {
  7371.     LPDISPATCH result;
  7372.     GetProperty(0x30007, VT_DISPATCH, (void*)&result);
  7373.     return result;
  7374. }
  7375.  
  7376. void IEntity::SetNormal(LPDISPATCH propVal)
  7377. {
  7378.     SetProperty(0x30007, VT_DISPATCH, propVal);
  7379. }
  7380.  
  7381. CString IEntity::GetName()
  7382. {
  7383.     CString result;
  7384.     GetProperty(0x20001, VT_BSTR, (void*)&result);
  7385.     return result;
  7386. }
  7387.  
  7388. short IEntity::GetType()
  7389. {
  7390.     short result;
  7391.     GetProperty(0x20002, VT_I2, (void*)&result);
  7392.     return result;
  7393. }
  7394.  
  7395. CString IEntity::GetHandle()
  7396. {
  7397.     CString result;
  7398.     GetProperty(0x20003, VT_BSTR, (void*)&result);
  7399.     return result;
  7400. }
  7401.  
  7402. BOOL IEntity::GetHasXData()
  7403. {
  7404.     BOOL result;
  7405.     GetProperty(0x20004, VT_BOOL, (void*)&result);
  7406.     return result;
  7407. }
  7408.  
  7409. LPDISPATCH IEntity::GetXData()
  7410. {
  7411.     LPDISPATCH result;
  7412.     GetProperty(0x20005, VT_DISPATCH, (void*)&result);
  7413.     return result;
  7414. }
  7415.  
  7416. BOOL IEntity::GetAutoDraw()
  7417. {
  7418.     BOOL result;
  7419.     GetProperty(0x20015, VT_BOOL, (void*)&result);
  7420.     return result;
  7421. }
  7422.  
  7423. void IEntity::SetAutoDraw(BOOL propVal)
  7424. {
  7425.     SetProperty(0x20015, VT_BOOL, propVal);
  7426. }
  7427.  
  7428. /////////////////////////////////////////////////////////////////////////////
  7429. // IEntity operations
  7430.  
  7431. void IEntity::Redraw()
  7432. {
  7433.     InvokeHelper(0x30008, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  7434. }
  7435.  
  7436. void IEntity::Regen()
  7437. {
  7438.     InvokeHelper(0x30009, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  7439. }
  7440.  
  7441. void IEntity::Erase()
  7442. {
  7443.     InvokeHelper(0x3000a, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  7444. }
  7445.  
  7446. void IEntity::Delete()
  7447. {
  7448.     InvokeHelper(0x3000b, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  7449. }
  7450.  
  7451. void IEntity::Move(LPDISPATCH offset)
  7452. {
  7453.     static BYTE parms[] =
  7454.         VTS_DISPATCH;
  7455.     InvokeHelper(0x3000c, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  7456.          offset);
  7457. }
  7458.  
  7459. LPDISPATCH IEntity::Copy(LPDISPATCH offset)
  7460. {
  7461.     LPDISPATCH result;
  7462.     static BYTE parms[] =
  7463.         VTS_DISPATCH;
  7464.     InvokeHelper(0x3000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  7465.         offset);
  7466.     return result;
  7467. }
  7468.  
  7469. void IEntity::scale(LPDISPATCH basepoint, LPDISPATCH scale)
  7470. {
  7471.     static BYTE parms[] =
  7472.         VTS_DISPATCH VTS_DISPATCH;
  7473.     InvokeHelper(0x3000e, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  7474.          basepoint, scale);
  7475. }
  7476.  
  7477. void IEntity::ScaleIt(LPDISPATCH basepoint, LPDISPATCH scale)
  7478. {
  7479.     static BYTE parms[] =
  7480.         VTS_DISPATCH VTS_DISPATCH;
  7481.     InvokeHelper(0x3000f, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  7482.          basepoint, scale);
  7483. }
  7484.  
  7485. void IEntity::Rotate(LPDISPATCH basepoint, double Angle)
  7486. {
  7487.     static BYTE parms[] =
  7488.         VTS_DISPATCH VTS_R8;
  7489.     InvokeHelper(0x30010, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  7490.          basepoint, Angle);
  7491. }
  7492.  
  7493. void IEntity::Mirror(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  7494. {
  7495.     static BYTE parms[] =
  7496.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  7497.     InvokeHelper(0x30011, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  7498.          point1, point2, &MirrorText);
  7499. }
  7500.  
  7501. LPDISPATCH IEntity::MirrorCopy(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  7502. {
  7503.     LPDISPATCH result;
  7504.     static BYTE parms[] =
  7505.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  7506.     InvokeHelper(0x30012, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  7507.         point1, point2, &MirrorText);
  7508.     return result;
  7509. }
  7510.  
  7511. void IEntity::Dialog()
  7512. {
  7513.     InvokeHelper(0x30013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  7514. }
  7515.  
  7516. LPDISPATCH IEntity::Offset(LPDISPATCH vec, const VARIANT& Distance)
  7517. {
  7518.     LPDISPATCH result;
  7519.     static BYTE parms[] =
  7520.         VTS_DISPATCH VTS_VARIANT;
  7521.     InvokeHelper(0x30014, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  7522.         vec, &Distance);
  7523.     return result;
  7524. }
  7525.  
  7526. LPDISPATCH IEntity::Array(short numrows, short numcols, double rowspacing, double colspacing, double Rotation)
  7527. {
  7528.     LPDISPATCH result;
  7529.     static BYTE parms[] =
  7530.         VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8;
  7531.     InvokeHelper(0x30015, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  7532.         numrows, numcols, rowspacing, colspacing, Rotation);
  7533.     return result;
  7534. }
  7535.  
  7536. LPDISPATCH IEntity::Array3D(short numrows, short numcols, short numlevels, double rowspacing, double colspacing, double levelspacing, double Rotation)
  7537. {
  7538.     LPDISPATCH result;
  7539.     static BYTE parms[] =
  7540.         VTS_I2 VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8 VTS_R8;
  7541.     InvokeHelper(0x30016, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  7542.         numrows, numcols, numlevels, rowspacing, colspacing, levelspacing, Rotation);
  7543.     return result;
  7544. }
  7545.  
  7546. LPDISPATCH IEntity::PolarArray(short numitems, double fillangle, double angletween, LPDISPATCH Center, const VARIANT& refpoint)
  7547. {
  7548.     LPDISPATCH result;
  7549.     static BYTE parms[] =
  7550.         VTS_I2 VTS_R8 VTS_R8 VTS_DISPATCH VTS_VARIANT;
  7551.     InvokeHelper(0x30017, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  7552.         numitems, fillangle, angletween, Center, &refpoint);
  7553.     return result;
  7554. }
  7555.  
  7556. void IEntity::DisplayGrips()
  7557. {
  7558.     InvokeHelper(0x30018, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  7559. }
  7560.  
  7561. void IEntity::EraseGrips()
  7562. {
  7563.     InvokeHelper(0x30019, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  7564. }
  7565.  
  7566. LPDISPATCH IEntity::Snap2Endpoint(LPDISPATCH closeto)
  7567. {
  7568.     LPDISPATCH result;
  7569.     static BYTE parms[] =
  7570.         VTS_DISPATCH;
  7571.     InvokeHelper(0x20006, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  7572.         closeto);
  7573.     return result;
  7574. }
  7575.  
  7576. LPDISPATCH IEntity::Snap2Midpoint(LPDISPATCH closeto)
  7577. {
  7578.     LPDISPATCH result;
  7579.     static BYTE parms[] =
  7580.         VTS_DISPATCH;
  7581.     InvokeHelper(0x20007, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  7582.         closeto);
  7583.     return result;
  7584. }
  7585.  
  7586. LPDISPATCH IEntity::Snap2Center(LPDISPATCH closeto)
  7587. {
  7588.     LPDISPATCH result;
  7589.     static BYTE parms[] =
  7590.         VTS_DISPATCH;
  7591.     InvokeHelper(0x20008, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  7592.         closeto);
  7593.     return result;
  7594. }
  7595.  
  7596. LPDISPATCH IEntity::Snap2Nearest(LPDISPATCH closeto)
  7597. {
  7598.     LPDISPATCH result;
  7599.     static BYTE parms[] =
  7600.         VTS_DISPATCH;
  7601.     InvokeHelper(0x20009, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  7602.         closeto);
  7603.     return result;
  7604. }
  7605.  
  7606. LPDISPATCH IEntity::Snap2Point(LPDISPATCH closeto)
  7607. {
  7608.     LPDISPATCH result;
  7609.     static BYTE parms[] =
  7610.         VTS_DISPATCH;
  7611.     InvokeHelper(0x2000a, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  7612.         closeto);
  7613.     return result;
  7614. }
  7615.  
  7616. LPDISPATCH IEntity::Snap2Quadrant(LPDISPATCH closeto)
  7617. {
  7618.     LPDISPATCH result;
  7619.     static BYTE parms[] =
  7620.         VTS_DISPATCH;
  7621.     InvokeHelper(0x2000b, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  7622.         closeto);
  7623.     return result;
  7624. }
  7625.  
  7626. LPDISPATCH IEntity::Snap2Insertion(LPDISPATCH closeto)
  7627. {
  7628.     LPDISPATCH result;
  7629.     static BYTE parms[] =
  7630.         VTS_DISPATCH;
  7631.     InvokeHelper(0x2000c, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  7632.         closeto);
  7633.     return result;
  7634. }
  7635.  
  7636. LPDISPATCH IEntity::Snap2Perpendicular(LPDISPATCH closeto, LPDISPATCH prevpoint)
  7637. {
  7638.     LPDISPATCH result;
  7639.     static BYTE parms[] =
  7640.         VTS_DISPATCH VTS_DISPATCH;
  7641.     InvokeHelper(0x2000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  7642.         closeto, prevpoint);
  7643.     return result;
  7644. }
  7645.  
  7646. LPDISPATCH IEntity::Snap2Tangent(LPDISPATCH closeto, LPDISPATCH prevpoint)
  7647. {
  7648.     LPDISPATCH result;
  7649.     static BYTE parms[] =
  7650.         VTS_DISPATCH VTS_DISPATCH;
  7651.     InvokeHelper(0x2000e, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  7652.         closeto, prevpoint);
  7653.     return result;
  7654. }
  7655.  
  7656. LPDISPATCH IEntity::Intersection(LPDISPATCH Entity, const VARIANT& infinite1, const VARIANT& infinite2)
  7657. {
  7658.     LPDISPATCH result;
  7659.     static BYTE parms[] =
  7660.         VTS_DISPATCH VTS_VARIANT VTS_VARIANT;
  7661.     InvokeHelper(0x2000f, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  7662.         Entity, &infinite1, &infinite2);
  7663.     return result;
  7664. }
  7665.  
  7666. BOOL IEntity::ExtendToSet(LPDISPATCH point)
  7667. {
  7668.     BOOL result;
  7669.     static BYTE parms[] =
  7670.         VTS_DISPATCH;
  7671.     InvokeHelper(0x20010, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  7672.         point);
  7673.     return result;
  7674. }
  7675.  
  7676. BOOL IEntity::TrimToSet(LPDISPATCH point)
  7677. {
  7678.     BOOL result;
  7679.     static BYTE parms[] =
  7680.         VTS_DISPATCH;
  7681.     InvokeHelper(0x20011, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  7682.         point);
  7683.     return result;
  7684. }
  7685.  
  7686. BOOL IEntity::Break(LPDISPATCH point1, LPDISPATCH point2)
  7687. {
  7688.     BOOL result;
  7689.     static BYTE parms[] =
  7690.         VTS_DISPATCH VTS_DISPATCH;
  7691.     InvokeHelper(0x20012, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  7692.         point1, point2);
  7693.     return result;
  7694. }
  7695.  
  7696. void IEntity::Update()
  7697. {
  7698.     InvokeHelper(0x20013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  7699. }
  7700.  
  7701. void IEntity::UpdateNow()
  7702. {
  7703.     InvokeHelper(0x20014, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  7704. }
  7705.  
  7706.  
  7707. /////////////////////////////////////////////////////////////////////////////
  7708. // ILine properties
  7709.  
  7710. LPDISPATCH ILine::GetApplication()
  7711. {
  7712.     LPDISPATCH result;
  7713.     GetProperty(0x40001, VT_DISPATCH, (void*)&result);
  7714.     return result;
  7715. }
  7716.  
  7717. LPDISPATCH ILine::GetParent()
  7718. {
  7719.     LPDISPATCH result;
  7720.     GetProperty(0x40002, VT_DISPATCH, (void*)&result);
  7721.     return result;
  7722. }
  7723.  
  7724. LPDISPATCH ILine::GetColor()
  7725. {
  7726.     LPDISPATCH result;
  7727.     GetProperty(0x30001, VT_DISPATCH, (void*)&result);
  7728.     return result;
  7729. }
  7730.  
  7731. void ILine::SetColor(LPDISPATCH propVal)
  7732. {
  7733.     SetProperty(0x30001, VT_DISPATCH, propVal);
  7734. }
  7735.  
  7736. short ILine::GetColorNumber()
  7737. {
  7738.     short result;
  7739.     GetProperty(0x30002, VT_I2, (void*)&result);
  7740.     return result;
  7741. }
  7742.  
  7743. void ILine::SetColorNumber(short propVal)
  7744. {
  7745.     SetProperty(0x30002, VT_I2, propVal);
  7746. }
  7747.  
  7748. LPDISPATCH ILine::GetLayer()
  7749. {
  7750.     LPDISPATCH result;
  7751.     GetProperty(0x30003, VT_DISPATCH, (void*)&result);
  7752.     return result;
  7753. }
  7754.  
  7755. void ILine::SetLayer(LPDISPATCH propVal)
  7756. {
  7757.     SetProperty(0x30003, VT_DISPATCH, propVal);
  7758. }
  7759.  
  7760. LPDISPATCH ILine::GetLinetype()
  7761. {
  7762.     LPDISPATCH result;
  7763.     GetProperty(0x30004, VT_DISPATCH, (void*)&result);
  7764.     return result;
  7765. }
  7766.  
  7767. void ILine::SetLinetype(LPDISPATCH propVal)
  7768. {
  7769.     SetProperty(0x30004, VT_DISPATCH, propVal);
  7770. }
  7771.  
  7772. double ILine::GetThickness()
  7773. {
  7774.     double result;
  7775.     GetProperty(0x30005, VT_R8, (void*)&result);
  7776.     return result;
  7777. }
  7778.  
  7779. void ILine::SetThickness(double propVal)
  7780. {
  7781.     SetProperty(0x30005, VT_R8, propVal);
  7782. }
  7783.  
  7784. BOOL ILine::GetPaperSpace()
  7785. {
  7786.     BOOL result;
  7787.     GetProperty(0x30006, VT_BOOL, (void*)&result);
  7788.     return result;
  7789. }
  7790.  
  7791. void ILine::SetPaperSpace(BOOL propVal)
  7792. {
  7793.     SetProperty(0x30006, VT_BOOL, propVal);
  7794. }
  7795.  
  7796. LPDISPATCH ILine::GetNormal()
  7797. {
  7798.     LPDISPATCH result;
  7799.     GetProperty(0x30007, VT_DISPATCH, (void*)&result);
  7800.     return result;
  7801. }
  7802.  
  7803. void ILine::SetNormal(LPDISPATCH propVal)
  7804. {
  7805.     SetProperty(0x30007, VT_DISPATCH, propVal);
  7806. }
  7807.  
  7808. CString ILine::GetName()
  7809. {
  7810.     CString result;
  7811.     GetProperty(0x20001, VT_BSTR, (void*)&result);
  7812.     return result;
  7813. }
  7814.  
  7815. short ILine::GetType()
  7816. {
  7817.     short result;
  7818.     GetProperty(0x20002, VT_I2, (void*)&result);
  7819.     return result;
  7820. }
  7821.  
  7822. CString ILine::GetHandle()
  7823. {
  7824.     CString result;
  7825.     GetProperty(0x20003, VT_BSTR, (void*)&result);
  7826.     return result;
  7827. }
  7828.  
  7829. BOOL ILine::GetHasXData()
  7830. {
  7831.     BOOL result;
  7832.     GetProperty(0x20004, VT_BOOL, (void*)&result);
  7833.     return result;
  7834. }
  7835.  
  7836. LPDISPATCH ILine::GetXData()
  7837. {
  7838.     LPDISPATCH result;
  7839.     GetProperty(0x20005, VT_DISPATCH, (void*)&result);
  7840.     return result;
  7841. }
  7842.  
  7843. BOOL ILine::GetAutoDraw()
  7844. {
  7845.     BOOL result;
  7846.     GetProperty(0x20015, VT_BOOL, (void*)&result);
  7847.     return result;
  7848. }
  7849.  
  7850. void ILine::SetAutoDraw(BOOL propVal)
  7851. {
  7852.     SetProperty(0x20015, VT_BOOL, propVal);
  7853. }
  7854.  
  7855. CString ILine::Get_Name()
  7856. {
  7857.     CString result;
  7858.     GetProperty(0x0, VT_BSTR, (void*)&result);
  7859.     return result;
  7860. }
  7861.  
  7862. LPDISPATCH ILine::GetWhere1()
  7863. {
  7864.     LPDISPATCH result;
  7865.     GetProperty(0x1, VT_DISPATCH, (void*)&result);
  7866.     return result;
  7867. }
  7868.  
  7869. void ILine::SetWhere1(LPDISPATCH propVal)
  7870. {
  7871.     SetProperty(0x1, VT_DISPATCH, propVal);
  7872. }
  7873.  
  7874. LPDISPATCH ILine::GetWhere2()
  7875. {
  7876.     LPDISPATCH result;
  7877.     GetProperty(0x2, VT_DISPATCH, (void*)&result);
  7878.     return result;
  7879. }
  7880.  
  7881. void ILine::SetWhere2(LPDISPATCH propVal)
  7882. {
  7883.     SetProperty(0x2, VT_DISPATCH, propVal);
  7884. }
  7885.  
  7886. double ILine::GetLength()
  7887. {
  7888.     double result;
  7889.     GetProperty(0x3, VT_R8, (void*)&result);
  7890.     return result;
  7891. }
  7892.  
  7893. LPDISPATCH ILine::GetStartPoint()
  7894. {
  7895.     LPDISPATCH result;
  7896.     GetProperty(0x4, VT_DISPATCH, (void*)&result);
  7897.     return result;
  7898. }
  7899.  
  7900. void ILine::SetStartPoint(LPDISPATCH propVal)
  7901. {
  7902.     SetProperty(0x4, VT_DISPATCH, propVal);
  7903. }
  7904.  
  7905. LPDISPATCH ILine::GetEndpoint()
  7906. {
  7907.     LPDISPATCH result;
  7908.     GetProperty(0x5, VT_DISPATCH, (void*)&result);
  7909.     return result;
  7910. }
  7911.  
  7912. void ILine::SetEndpoint(LPDISPATCH propVal)
  7913. {
  7914.     SetProperty(0x5, VT_DISPATCH, propVal);
  7915. }
  7916.  
  7917. double ILine::GetAngle()
  7918. {
  7919.     double result;
  7920.     GetProperty(0x6, VT_R8, (void*)&result);
  7921.     return result;
  7922. }
  7923.  
  7924. /////////////////////////////////////////////////////////////////////////////
  7925. // ILine operations
  7926.  
  7927. void ILine::Redraw()
  7928. {
  7929.     InvokeHelper(0x30008, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  7930. }
  7931.  
  7932. void ILine::Regen()
  7933. {
  7934.     InvokeHelper(0x30009, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  7935. }
  7936.  
  7937. void ILine::Erase()
  7938. {
  7939.     InvokeHelper(0x3000a, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  7940. }
  7941.  
  7942. void ILine::Delete()
  7943. {
  7944.     InvokeHelper(0x3000b, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  7945. }
  7946.  
  7947. void ILine::Move(LPDISPATCH offset)
  7948. {
  7949.     static BYTE parms[] =
  7950.         VTS_DISPATCH;
  7951.     InvokeHelper(0x3000c, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  7952.          offset);
  7953. }
  7954.  
  7955. LPDISPATCH ILine::Copy(LPDISPATCH offset)
  7956. {
  7957.     LPDISPATCH result;
  7958.     static BYTE parms[] =
  7959.         VTS_DISPATCH;
  7960.     InvokeHelper(0x3000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  7961.         offset);
  7962.     return result;
  7963. }
  7964.  
  7965. void ILine::scale(LPDISPATCH basepoint, LPDISPATCH scale)
  7966. {
  7967.     static BYTE parms[] =
  7968.         VTS_DISPATCH VTS_DISPATCH;
  7969.     InvokeHelper(0x3000e, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  7970.          basepoint, scale);
  7971. }
  7972.  
  7973. void ILine::ScaleIt(LPDISPATCH basepoint, LPDISPATCH scale)
  7974. {
  7975.     static BYTE parms[] =
  7976.         VTS_DISPATCH VTS_DISPATCH;
  7977.     InvokeHelper(0x3000f, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  7978.          basepoint, scale);
  7979. }
  7980.  
  7981. void ILine::Rotate(LPDISPATCH basepoint, double Angle)
  7982. {
  7983.     static BYTE parms[] =
  7984.         VTS_DISPATCH VTS_R8;
  7985.     InvokeHelper(0x30010, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  7986.          basepoint, Angle);
  7987. }
  7988.  
  7989. void ILine::Mirror(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  7990. {
  7991.     static BYTE parms[] =
  7992.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  7993.     InvokeHelper(0x30011, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  7994.          point1, point2, &MirrorText);
  7995. }
  7996.  
  7997. LPDISPATCH ILine::MirrorCopy(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  7998. {
  7999.     LPDISPATCH result;
  8000.     static BYTE parms[] =
  8001.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  8002.     InvokeHelper(0x30012, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  8003.         point1, point2, &MirrorText);
  8004.     return result;
  8005. }
  8006.  
  8007. void ILine::Dialog()
  8008. {
  8009.     InvokeHelper(0x30013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  8010. }
  8011.  
  8012. LPDISPATCH ILine::Offset(LPDISPATCH vec, const VARIANT& Distance)
  8013. {
  8014.     LPDISPATCH result;
  8015.     static BYTE parms[] =
  8016.         VTS_DISPATCH VTS_VARIANT;
  8017.     InvokeHelper(0x30014, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  8018.         vec, &Distance);
  8019.     return result;
  8020. }
  8021.  
  8022. LPDISPATCH ILine::Array(short numrows, short numcols, double rowspacing, double colspacing, double Rotation)
  8023. {
  8024.     LPDISPATCH result;
  8025.     static BYTE parms[] =
  8026.         VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8;
  8027.     InvokeHelper(0x30015, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  8028.         numrows, numcols, rowspacing, colspacing, Rotation);
  8029.     return result;
  8030. }
  8031.  
  8032. LPDISPATCH ILine::Array3D(short numrows, short numcols, short numlevels, double rowspacing, double colspacing, double levelspacing, double Rotation)
  8033. {
  8034.     LPDISPATCH result;
  8035.     static BYTE parms[] =
  8036.         VTS_I2 VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8 VTS_R8;
  8037.     InvokeHelper(0x30016, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  8038.         numrows, numcols, numlevels, rowspacing, colspacing, levelspacing, Rotation);
  8039.     return result;
  8040. }
  8041.  
  8042. LPDISPATCH ILine::PolarArray(short numitems, double fillangle, double angletween, LPDISPATCH Center, const VARIANT& refpoint)
  8043. {
  8044.     LPDISPATCH result;
  8045.     static BYTE parms[] =
  8046.         VTS_I2 VTS_R8 VTS_R8 VTS_DISPATCH VTS_VARIANT;
  8047.     InvokeHelper(0x30017, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  8048.         numitems, fillangle, angletween, Center, &refpoint);
  8049.     return result;
  8050. }
  8051.  
  8052. void ILine::DisplayGrips()
  8053. {
  8054.     InvokeHelper(0x30018, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  8055. }
  8056.  
  8057. void ILine::EraseGrips()
  8058. {
  8059.     InvokeHelper(0x30019, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  8060. }
  8061.  
  8062. LPDISPATCH ILine::Snap2Endpoint(LPDISPATCH closeto)
  8063. {
  8064.     LPDISPATCH result;
  8065.     static BYTE parms[] =
  8066.         VTS_DISPATCH;
  8067.     InvokeHelper(0x20006, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  8068.         closeto);
  8069.     return result;
  8070. }
  8071.  
  8072. LPDISPATCH ILine::Snap2Midpoint(LPDISPATCH closeto)
  8073. {
  8074.     LPDISPATCH result;
  8075.     static BYTE parms[] =
  8076.         VTS_DISPATCH;
  8077.     InvokeHelper(0x20007, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  8078.         closeto);
  8079.     return result;
  8080. }
  8081.  
  8082. LPDISPATCH ILine::Snap2Center(LPDISPATCH closeto)
  8083. {
  8084.     LPDISPATCH result;
  8085.     static BYTE parms[] =
  8086.         VTS_DISPATCH;
  8087.     InvokeHelper(0x20008, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  8088.         closeto);
  8089.     return result;
  8090. }
  8091.  
  8092. LPDISPATCH ILine::Snap2Nearest(LPDISPATCH closeto)
  8093. {
  8094.     LPDISPATCH result;
  8095.     static BYTE parms[] =
  8096.         VTS_DISPATCH;
  8097.     InvokeHelper(0x20009, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  8098.         closeto);
  8099.     return result;
  8100. }
  8101.  
  8102. LPDISPATCH ILine::Snap2Point(LPDISPATCH closeto)
  8103. {
  8104.     LPDISPATCH result;
  8105.     static BYTE parms[] =
  8106.         VTS_DISPATCH;
  8107.     InvokeHelper(0x2000a, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  8108.         closeto);
  8109.     return result;
  8110. }
  8111.  
  8112. LPDISPATCH ILine::Snap2Quadrant(LPDISPATCH closeto)
  8113. {
  8114.     LPDISPATCH result;
  8115.     static BYTE parms[] =
  8116.         VTS_DISPATCH;
  8117.     InvokeHelper(0x2000b, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  8118.         closeto);
  8119.     return result;
  8120. }
  8121.  
  8122. LPDISPATCH ILine::Snap2Insertion(LPDISPATCH closeto)
  8123. {
  8124.     LPDISPATCH result;
  8125.     static BYTE parms[] =
  8126.         VTS_DISPATCH;
  8127.     InvokeHelper(0x2000c, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  8128.         closeto);
  8129.     return result;
  8130. }
  8131.  
  8132. LPDISPATCH ILine::Snap2Perpendicular(LPDISPATCH closeto, LPDISPATCH prevpoint)
  8133. {
  8134.     LPDISPATCH result;
  8135.     static BYTE parms[] =
  8136.         VTS_DISPATCH VTS_DISPATCH;
  8137.     InvokeHelper(0x2000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  8138.         closeto, prevpoint);
  8139.     return result;
  8140. }
  8141.  
  8142. LPDISPATCH ILine::Snap2Tangent(LPDISPATCH closeto, LPDISPATCH prevpoint)
  8143. {
  8144.     LPDISPATCH result;
  8145.     static BYTE parms[] =
  8146.         VTS_DISPATCH VTS_DISPATCH;
  8147.     InvokeHelper(0x2000e, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  8148.         closeto, prevpoint);
  8149.     return result;
  8150. }
  8151.  
  8152. LPDISPATCH ILine::Intersection(LPDISPATCH Entity, const VARIANT& infinite1, const VARIANT& infinite2)
  8153. {
  8154.     LPDISPATCH result;
  8155.     static BYTE parms[] =
  8156.         VTS_DISPATCH VTS_VARIANT VTS_VARIANT;
  8157.     InvokeHelper(0x2000f, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  8158.         Entity, &infinite1, &infinite2);
  8159.     return result;
  8160. }
  8161.  
  8162. BOOL ILine::ExtendToSet(LPDISPATCH point)
  8163. {
  8164.     BOOL result;
  8165.     static BYTE parms[] =
  8166.         VTS_DISPATCH;
  8167.     InvokeHelper(0x20010, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  8168.         point);
  8169.     return result;
  8170. }
  8171.  
  8172. BOOL ILine::TrimToSet(LPDISPATCH point)
  8173. {
  8174.     BOOL result;
  8175.     static BYTE parms[] =
  8176.         VTS_DISPATCH;
  8177.     InvokeHelper(0x20011, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  8178.         point);
  8179.     return result;
  8180. }
  8181.  
  8182. BOOL ILine::Break(LPDISPATCH point1, LPDISPATCH point2)
  8183. {
  8184.     BOOL result;
  8185.     static BYTE parms[] =
  8186.         VTS_DISPATCH VTS_DISPATCH;
  8187.     InvokeHelper(0x20012, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  8188.         point1, point2);
  8189.     return result;
  8190. }
  8191.  
  8192. void ILine::Update()
  8193. {
  8194.     InvokeHelper(0x20013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  8195. }
  8196.  
  8197. void ILine::UpdateNow()
  8198. {
  8199.     InvokeHelper(0x20014, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  8200. }
  8201.  
  8202. short ILine::Fillet(LPDISPATCH Entity, LPDISPATCH pick1, LPDISPATCH pick2)
  8203. {
  8204.     short result;
  8205.     static BYTE parms[] =
  8206.         VTS_DISPATCH VTS_DISPATCH VTS_DISPATCH;
  8207.     InvokeHelper(0x7, DISPATCH_METHOD, VT_I2, (void*)&result, parms,
  8208.         Entity, pick1, pick2);
  8209.     return result;
  8210. }
  8211.  
  8212. short ILine::Chamfer(LPDISPATCH Entity, LPDISPATCH pick1, LPDISPATCH pick2)
  8213. {
  8214.     short result;
  8215.     static BYTE parms[] =
  8216.         VTS_DISPATCH VTS_DISPATCH VTS_DISPATCH;
  8217.     InvokeHelper(0x8, DISPATCH_METHOD, VT_I2, (void*)&result, parms,
  8218.         Entity, pick1, pick2);
  8219.     return result;
  8220. }
  8221.  
  8222.  
  8223. /////////////////////////////////////////////////////////////////////////////
  8224. // IPoint properties
  8225.  
  8226. LPDISPATCH IPoint::GetApplication()
  8227. {
  8228.     LPDISPATCH result;
  8229.     GetProperty(0x40001, VT_DISPATCH, (void*)&result);
  8230.     return result;
  8231. }
  8232.  
  8233. LPDISPATCH IPoint::GetParent()
  8234. {
  8235.     LPDISPATCH result;
  8236.     GetProperty(0x40002, VT_DISPATCH, (void*)&result);
  8237.     return result;
  8238. }
  8239.  
  8240. LPDISPATCH IPoint::GetColor()
  8241. {
  8242.     LPDISPATCH result;
  8243.     GetProperty(0x30001, VT_DISPATCH, (void*)&result);
  8244.     return result;
  8245. }
  8246.  
  8247. void IPoint::SetColor(LPDISPATCH propVal)
  8248. {
  8249.     SetProperty(0x30001, VT_DISPATCH, propVal);
  8250. }
  8251.  
  8252. short IPoint::GetColorNumber()
  8253. {
  8254.     short result;
  8255.     GetProperty(0x30002, VT_I2, (void*)&result);
  8256.     return result;
  8257. }
  8258.  
  8259. void IPoint::SetColorNumber(short propVal)
  8260. {
  8261.     SetProperty(0x30002, VT_I2, propVal);
  8262. }
  8263.  
  8264. LPDISPATCH IPoint::GetLayer()
  8265. {
  8266.     LPDISPATCH result;
  8267.     GetProperty(0x30003, VT_DISPATCH, (void*)&result);
  8268.     return result;
  8269. }
  8270.  
  8271. void IPoint::SetLayer(LPDISPATCH propVal)
  8272. {
  8273.     SetProperty(0x30003, VT_DISPATCH, propVal);
  8274. }
  8275.  
  8276. LPDISPATCH IPoint::GetLinetype()
  8277. {
  8278.     LPDISPATCH result;
  8279.     GetProperty(0x30004, VT_DISPATCH, (void*)&result);
  8280.     return result;
  8281. }
  8282.  
  8283. void IPoint::SetLinetype(LPDISPATCH propVal)
  8284. {
  8285.     SetProperty(0x30004, VT_DISPATCH, propVal);
  8286. }
  8287.  
  8288. double IPoint::GetThickness()
  8289. {
  8290.     double result;
  8291.     GetProperty(0x30005, VT_R8, (void*)&result);
  8292.     return result;
  8293. }
  8294.  
  8295. void IPoint::SetThickness(double propVal)
  8296. {
  8297.     SetProperty(0x30005, VT_R8, propVal);
  8298. }
  8299.  
  8300. BOOL IPoint::GetPaperSpace()
  8301. {
  8302.     BOOL result;
  8303.     GetProperty(0x30006, VT_BOOL, (void*)&result);
  8304.     return result;
  8305. }
  8306.  
  8307. void IPoint::SetPaperSpace(BOOL propVal)
  8308. {
  8309.     SetProperty(0x30006, VT_BOOL, propVal);
  8310. }
  8311.  
  8312. LPDISPATCH IPoint::GetNormal()
  8313. {
  8314.     LPDISPATCH result;
  8315.     GetProperty(0x30007, VT_DISPATCH, (void*)&result);
  8316.     return result;
  8317. }
  8318.  
  8319. void IPoint::SetNormal(LPDISPATCH propVal)
  8320. {
  8321.     SetProperty(0x30007, VT_DISPATCH, propVal);
  8322. }
  8323.  
  8324. CString IPoint::GetName()
  8325. {
  8326.     CString result;
  8327.     GetProperty(0x20001, VT_BSTR, (void*)&result);
  8328.     return result;
  8329. }
  8330.  
  8331. short IPoint::GetType()
  8332. {
  8333.     short result;
  8334.     GetProperty(0x20002, VT_I2, (void*)&result);
  8335.     return result;
  8336. }
  8337.  
  8338. CString IPoint::GetHandle()
  8339. {
  8340.     CString result;
  8341.     GetProperty(0x20003, VT_BSTR, (void*)&result);
  8342.     return result;
  8343. }
  8344.  
  8345. BOOL IPoint::GetHasXData()
  8346. {
  8347.     BOOL result;
  8348.     GetProperty(0x20004, VT_BOOL, (void*)&result);
  8349.     return result;
  8350. }
  8351.  
  8352. LPDISPATCH IPoint::GetXData()
  8353. {
  8354.     LPDISPATCH result;
  8355.     GetProperty(0x20005, VT_DISPATCH, (void*)&result);
  8356.     return result;
  8357. }
  8358.  
  8359. BOOL IPoint::GetAutoDraw()
  8360. {
  8361.     BOOL result;
  8362.     GetProperty(0x20015, VT_BOOL, (void*)&result);
  8363.     return result;
  8364. }
  8365.  
  8366. void IPoint::SetAutoDraw(BOOL propVal)
  8367. {
  8368.     SetProperty(0x20015, VT_BOOL, propVal);
  8369. }
  8370.  
  8371. CString IPoint::Get_Name()
  8372. {
  8373.     CString result;
  8374.     GetProperty(0x0, VT_BSTR, (void*)&result);
  8375.     return result;
  8376. }
  8377.  
  8378. LPDISPATCH IPoint::GetWhere()
  8379. {
  8380.     LPDISPATCH result;
  8381.     GetProperty(0x1, VT_DISPATCH, (void*)&result);
  8382.     return result;
  8383. }
  8384.  
  8385. void IPoint::SetWhere(LPDISPATCH propVal)
  8386. {
  8387.     SetProperty(0x1, VT_DISPATCH, propVal);
  8388. }
  8389.  
  8390. double IPoint::GetRotation()
  8391. {
  8392.     double result;
  8393.     GetProperty(0x2, VT_R8, (void*)&result);
  8394.     return result;
  8395. }
  8396.  
  8397. void IPoint::SetRotation(double propVal)
  8398. {
  8399.     SetProperty(0x2, VT_R8, propVal);
  8400. }
  8401.  
  8402. /////////////////////////////////////////////////////////////////////////////
  8403. // IPoint operations
  8404.  
  8405. void IPoint::Redraw()
  8406. {
  8407.     InvokeHelper(0x30008, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  8408. }
  8409.  
  8410. void IPoint::Regen()
  8411. {
  8412.     InvokeHelper(0x30009, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  8413. }
  8414.  
  8415. void IPoint::Erase()
  8416. {
  8417.     InvokeHelper(0x3000a, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  8418. }
  8419.  
  8420. void IPoint::Delete()
  8421. {
  8422.     InvokeHelper(0x3000b, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  8423. }
  8424.  
  8425. void IPoint::Move(LPDISPATCH offset)
  8426. {
  8427.     static BYTE parms[] =
  8428.         VTS_DISPATCH;
  8429.     InvokeHelper(0x3000c, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  8430.          offset);
  8431. }
  8432.  
  8433. LPDISPATCH IPoint::Copy(LPDISPATCH offset)
  8434. {
  8435.     LPDISPATCH result;
  8436.     static BYTE parms[] =
  8437.         VTS_DISPATCH;
  8438.     InvokeHelper(0x3000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  8439.         offset);
  8440.     return result;
  8441. }
  8442.  
  8443. void IPoint::scale(LPDISPATCH basepoint, LPDISPATCH scale)
  8444. {
  8445.     static BYTE parms[] =
  8446.         VTS_DISPATCH VTS_DISPATCH;
  8447.     InvokeHelper(0x3000e, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  8448.          basepoint, scale);
  8449. }
  8450.  
  8451. void IPoint::ScaleIt(LPDISPATCH basepoint, LPDISPATCH scale)
  8452. {
  8453.     static BYTE parms[] =
  8454.         VTS_DISPATCH VTS_DISPATCH;
  8455.     InvokeHelper(0x3000f, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  8456.          basepoint, scale);
  8457. }
  8458.  
  8459. void IPoint::Rotate(LPDISPATCH basepoint, double Angle)
  8460. {
  8461.     static BYTE parms[] =
  8462.         VTS_DISPATCH VTS_R8;
  8463.     InvokeHelper(0x30010, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  8464.          basepoint, Angle);
  8465. }
  8466.  
  8467. void IPoint::Mirror(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  8468. {
  8469.     static BYTE parms[] =
  8470.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  8471.     InvokeHelper(0x30011, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  8472.          point1, point2, &MirrorText);
  8473. }
  8474.  
  8475. LPDISPATCH IPoint::MirrorCopy(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  8476. {
  8477.     LPDISPATCH result;
  8478.     static BYTE parms[] =
  8479.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  8480.     InvokeHelper(0x30012, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  8481.         point1, point2, &MirrorText);
  8482.     return result;
  8483. }
  8484.  
  8485. void IPoint::Dialog()
  8486. {
  8487.     InvokeHelper(0x30013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  8488. }
  8489.  
  8490. LPDISPATCH IPoint::Offset(LPDISPATCH vec, const VARIANT& Distance)
  8491. {
  8492.     LPDISPATCH result;
  8493.     static BYTE parms[] =
  8494.         VTS_DISPATCH VTS_VARIANT;
  8495.     InvokeHelper(0x30014, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  8496.         vec, &Distance);
  8497.     return result;
  8498. }
  8499.  
  8500. LPDISPATCH IPoint::Array(short numrows, short numcols, double rowspacing, double colspacing, double Rotation)
  8501. {
  8502.     LPDISPATCH result;
  8503.     static BYTE parms[] =
  8504.         VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8;
  8505.     InvokeHelper(0x30015, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  8506.         numrows, numcols, rowspacing, colspacing, Rotation);
  8507.     return result;
  8508. }
  8509.  
  8510. LPDISPATCH IPoint::Array3D(short numrows, short numcols, short numlevels, double rowspacing, double colspacing, double levelspacing, double Rotation)
  8511. {
  8512.     LPDISPATCH result;
  8513.     static BYTE parms[] =
  8514.         VTS_I2 VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8 VTS_R8;
  8515.     InvokeHelper(0x30016, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  8516.         numrows, numcols, numlevels, rowspacing, colspacing, levelspacing, Rotation);
  8517.     return result;
  8518. }
  8519.  
  8520. LPDISPATCH IPoint::PolarArray(short numitems, double fillangle, double angletween, LPDISPATCH Center, const VARIANT& refpoint)
  8521. {
  8522.     LPDISPATCH result;
  8523.     static BYTE parms[] =
  8524.         VTS_I2 VTS_R8 VTS_R8 VTS_DISPATCH VTS_VARIANT;
  8525.     InvokeHelper(0x30017, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  8526.         numitems, fillangle, angletween, Center, &refpoint);
  8527.     return result;
  8528. }
  8529.  
  8530. void IPoint::DisplayGrips()
  8531. {
  8532.     InvokeHelper(0x30018, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  8533. }
  8534.  
  8535. void IPoint::EraseGrips()
  8536. {
  8537.     InvokeHelper(0x30019, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  8538. }
  8539.  
  8540. LPDISPATCH IPoint::Snap2Endpoint(LPDISPATCH closeto)
  8541. {
  8542.     LPDISPATCH result;
  8543.     static BYTE parms[] =
  8544.         VTS_DISPATCH;
  8545.     InvokeHelper(0x20006, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  8546.         closeto);
  8547.     return result;
  8548. }
  8549.  
  8550. LPDISPATCH IPoint::Snap2Midpoint(LPDISPATCH closeto)
  8551. {
  8552.     LPDISPATCH result;
  8553.     static BYTE parms[] =
  8554.         VTS_DISPATCH;
  8555.     InvokeHelper(0x20007, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  8556.         closeto);
  8557.     return result;
  8558. }
  8559.  
  8560. LPDISPATCH IPoint::Snap2Center(LPDISPATCH closeto)
  8561. {
  8562.     LPDISPATCH result;
  8563.     static BYTE parms[] =
  8564.         VTS_DISPATCH;
  8565.     InvokeHelper(0x20008, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  8566.         closeto);
  8567.     return result;
  8568. }
  8569.  
  8570. LPDISPATCH IPoint::Snap2Nearest(LPDISPATCH closeto)
  8571. {
  8572.     LPDISPATCH result;
  8573.     static BYTE parms[] =
  8574.         VTS_DISPATCH;
  8575.     InvokeHelper(0x20009, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  8576.         closeto);
  8577.     return result;
  8578. }
  8579.  
  8580. LPDISPATCH IPoint::Snap2Point(LPDISPATCH closeto)
  8581. {
  8582.     LPDISPATCH result;
  8583.     static BYTE parms[] =
  8584.         VTS_DISPATCH;
  8585.     InvokeHelper(0x2000a, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  8586.         closeto);
  8587.     return result;
  8588. }
  8589.  
  8590. LPDISPATCH IPoint::Snap2Quadrant(LPDISPATCH closeto)
  8591. {
  8592.     LPDISPATCH result;
  8593.     static BYTE parms[] =
  8594.         VTS_DISPATCH;
  8595.     InvokeHelper(0x2000b, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  8596.         closeto);
  8597.     return result;
  8598. }
  8599.  
  8600. LPDISPATCH IPoint::Snap2Insertion(LPDISPATCH closeto)
  8601. {
  8602.     LPDISPATCH result;
  8603.     static BYTE parms[] =
  8604.         VTS_DISPATCH;
  8605.     InvokeHelper(0x2000c, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  8606.         closeto);
  8607.     return result;
  8608. }
  8609.  
  8610. LPDISPATCH IPoint::Snap2Perpendicular(LPDISPATCH closeto, LPDISPATCH prevpoint)
  8611. {
  8612.     LPDISPATCH result;
  8613.     static BYTE parms[] =
  8614.         VTS_DISPATCH VTS_DISPATCH;
  8615.     InvokeHelper(0x2000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  8616.         closeto, prevpoint);
  8617.     return result;
  8618. }
  8619.  
  8620. LPDISPATCH IPoint::Snap2Tangent(LPDISPATCH closeto, LPDISPATCH prevpoint)
  8621. {
  8622.     LPDISPATCH result;
  8623.     static BYTE parms[] =
  8624.         VTS_DISPATCH VTS_DISPATCH;
  8625.     InvokeHelper(0x2000e, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  8626.         closeto, prevpoint);
  8627.     return result;
  8628. }
  8629.  
  8630. LPDISPATCH IPoint::Intersection(LPDISPATCH Entity, const VARIANT& infinite1, const VARIANT& infinite2)
  8631. {
  8632.     LPDISPATCH result;
  8633.     static BYTE parms[] =
  8634.         VTS_DISPATCH VTS_VARIANT VTS_VARIANT;
  8635.     InvokeHelper(0x2000f, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  8636.         Entity, &infinite1, &infinite2);
  8637.     return result;
  8638. }
  8639.  
  8640. BOOL IPoint::ExtendToSet(LPDISPATCH point)
  8641. {
  8642.     BOOL result;
  8643.     static BYTE parms[] =
  8644.         VTS_DISPATCH;
  8645.     InvokeHelper(0x20010, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  8646.         point);
  8647.     return result;
  8648. }
  8649.  
  8650. BOOL IPoint::TrimToSet(LPDISPATCH point)
  8651. {
  8652.     BOOL result;
  8653.     static BYTE parms[] =
  8654.         VTS_DISPATCH;
  8655.     InvokeHelper(0x20011, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  8656.         point);
  8657.     return result;
  8658. }
  8659.  
  8660. BOOL IPoint::Break(LPDISPATCH point1, LPDISPATCH point2)
  8661. {
  8662.     BOOL result;
  8663.     static BYTE parms[] =
  8664.         VTS_DISPATCH VTS_DISPATCH;
  8665.     InvokeHelper(0x20012, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  8666.         point1, point2);
  8667.     return result;
  8668. }
  8669.  
  8670. void IPoint::Update()
  8671. {
  8672.     InvokeHelper(0x20013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  8673. }
  8674.  
  8675. void IPoint::UpdateNow()
  8676. {
  8677.     InvokeHelper(0x20014, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  8678. }
  8679.  
  8680.  
  8681. /////////////////////////////////////////////////////////////////////////////
  8682. // ICircle properties
  8683.  
  8684. LPDISPATCH ICircle::GetApplication()
  8685. {
  8686.     LPDISPATCH result;
  8687.     GetProperty(0x40001, VT_DISPATCH, (void*)&result);
  8688.     return result;
  8689. }
  8690.  
  8691. LPDISPATCH ICircle::GetParent()
  8692. {
  8693.     LPDISPATCH result;
  8694.     GetProperty(0x40002, VT_DISPATCH, (void*)&result);
  8695.     return result;
  8696. }
  8697.  
  8698. LPDISPATCH ICircle::GetColor()
  8699. {
  8700.     LPDISPATCH result;
  8701.     GetProperty(0x30001, VT_DISPATCH, (void*)&result);
  8702.     return result;
  8703. }
  8704.  
  8705. void ICircle::SetColor(LPDISPATCH propVal)
  8706. {
  8707.     SetProperty(0x30001, VT_DISPATCH, propVal);
  8708. }
  8709.  
  8710. short ICircle::GetColorNumber()
  8711. {
  8712.     short result;
  8713.     GetProperty(0x30002, VT_I2, (void*)&result);
  8714.     return result;
  8715. }
  8716.  
  8717. void ICircle::SetColorNumber(short propVal)
  8718. {
  8719.     SetProperty(0x30002, VT_I2, propVal);
  8720. }
  8721.  
  8722. LPDISPATCH ICircle::GetLayer()
  8723. {
  8724.     LPDISPATCH result;
  8725.     GetProperty(0x30003, VT_DISPATCH, (void*)&result);
  8726.     return result;
  8727. }
  8728.  
  8729. void ICircle::SetLayer(LPDISPATCH propVal)
  8730. {
  8731.     SetProperty(0x30003, VT_DISPATCH, propVal);
  8732. }
  8733.  
  8734. LPDISPATCH ICircle::GetLinetype()
  8735. {
  8736.     LPDISPATCH result;
  8737.     GetProperty(0x30004, VT_DISPATCH, (void*)&result);
  8738.     return result;
  8739. }
  8740.  
  8741. void ICircle::SetLinetype(LPDISPATCH propVal)
  8742. {
  8743.     SetProperty(0x30004, VT_DISPATCH, propVal);
  8744. }
  8745.  
  8746. double ICircle::GetThickness()
  8747. {
  8748.     double result;
  8749.     GetProperty(0x30005, VT_R8, (void*)&result);
  8750.     return result;
  8751. }
  8752.  
  8753. void ICircle::SetThickness(double propVal)
  8754. {
  8755.     SetProperty(0x30005, VT_R8, propVal);
  8756. }
  8757.  
  8758. BOOL ICircle::GetPaperSpace()
  8759. {
  8760.     BOOL result;
  8761.     GetProperty(0x30006, VT_BOOL, (void*)&result);
  8762.     return result;
  8763. }
  8764.  
  8765. void ICircle::SetPaperSpace(BOOL propVal)
  8766. {
  8767.     SetProperty(0x30006, VT_BOOL, propVal);
  8768. }
  8769.  
  8770. LPDISPATCH ICircle::GetNormal()
  8771. {
  8772.     LPDISPATCH result;
  8773.     GetProperty(0x30007, VT_DISPATCH, (void*)&result);
  8774.     return result;
  8775. }
  8776.  
  8777. void ICircle::SetNormal(LPDISPATCH propVal)
  8778. {
  8779.     SetProperty(0x30007, VT_DISPATCH, propVal);
  8780. }
  8781.  
  8782. CString ICircle::GetName()
  8783. {
  8784.     CString result;
  8785.     GetProperty(0x20001, VT_BSTR, (void*)&result);
  8786.     return result;
  8787. }
  8788.  
  8789. short ICircle::GetType()
  8790. {
  8791.     short result;
  8792.     GetProperty(0x20002, VT_I2, (void*)&result);
  8793.     return result;
  8794. }
  8795.  
  8796. CString ICircle::GetHandle()
  8797. {
  8798.     CString result;
  8799.     GetProperty(0x20003, VT_BSTR, (void*)&result);
  8800.     return result;
  8801. }
  8802.  
  8803. BOOL ICircle::GetHasXData()
  8804. {
  8805.     BOOL result;
  8806.     GetProperty(0x20004, VT_BOOL, (void*)&result);
  8807.     return result;
  8808. }
  8809.  
  8810. LPDISPATCH ICircle::GetXData()
  8811. {
  8812.     LPDISPATCH result;
  8813.     GetProperty(0x20005, VT_DISPATCH, (void*)&result);
  8814.     return result;
  8815. }
  8816.  
  8817. BOOL ICircle::GetAutoDraw()
  8818. {
  8819.     BOOL result;
  8820.     GetProperty(0x20015, VT_BOOL, (void*)&result);
  8821.     return result;
  8822. }
  8823.  
  8824. void ICircle::SetAutoDraw(BOOL propVal)
  8825. {
  8826.     SetProperty(0x20015, VT_BOOL, propVal);
  8827. }
  8828.  
  8829. CString ICircle::Get_Name()
  8830. {
  8831.     CString result;
  8832.     GetProperty(0x0, VT_BSTR, (void*)&result);
  8833.     return result;
  8834. }
  8835.  
  8836. LPDISPATCH ICircle::GetWhere()
  8837. {
  8838.     LPDISPATCH result;
  8839.     GetProperty(0x1, VT_DISPATCH, (void*)&result);
  8840.     return result;
  8841. }
  8842.  
  8843. void ICircle::SetWhere(LPDISPATCH propVal)
  8844. {
  8845.     SetProperty(0x1, VT_DISPATCH, propVal);
  8846. }
  8847.  
  8848. double ICircle::GetRadius()
  8849. {
  8850.     double result;
  8851.     GetProperty(0x2, VT_R8, (void*)&result);
  8852.     return result;
  8853. }
  8854.  
  8855. void ICircle::SetRadius(double propVal)
  8856. {
  8857.     SetProperty(0x2, VT_R8, propVal);
  8858. }
  8859.  
  8860. double ICircle::GetCircumference()
  8861. {
  8862.     double result;
  8863.     GetProperty(0x3, VT_R8, (void*)&result);
  8864.     return result;
  8865. }
  8866.  
  8867. double ICircle::GetArea()
  8868. {
  8869.     double result;
  8870.     GetProperty(0x4, VT_R8, (void*)&result);
  8871.     return result;
  8872. }
  8873.  
  8874. LPDISPATCH ICircle::GetCenter()
  8875. {
  8876.     LPDISPATCH result;
  8877.     GetProperty(0x5, VT_DISPATCH, (void*)&result);
  8878.     return result;
  8879. }
  8880.  
  8881. void ICircle::SetCenter(LPDISPATCH propVal)
  8882. {
  8883.     SetProperty(0x5, VT_DISPATCH, propVal);
  8884. }
  8885.  
  8886. /////////////////////////////////////////////////////////////////////////////
  8887. // ICircle operations
  8888.  
  8889. void ICircle::Redraw()
  8890. {
  8891.     InvokeHelper(0x30008, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  8892. }
  8893.  
  8894. void ICircle::Regen()
  8895. {
  8896.     InvokeHelper(0x30009, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  8897. }
  8898.  
  8899. void ICircle::Erase()
  8900. {
  8901.     InvokeHelper(0x3000a, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  8902. }
  8903.  
  8904. void ICircle::Delete()
  8905. {
  8906.     InvokeHelper(0x3000b, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  8907. }
  8908.  
  8909. void ICircle::Move(LPDISPATCH offset)
  8910. {
  8911.     static BYTE parms[] =
  8912.         VTS_DISPATCH;
  8913.     InvokeHelper(0x3000c, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  8914.          offset);
  8915. }
  8916.  
  8917. LPDISPATCH ICircle::Copy(LPDISPATCH offset)
  8918. {
  8919.     LPDISPATCH result;
  8920.     static BYTE parms[] =
  8921.         VTS_DISPATCH;
  8922.     InvokeHelper(0x3000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  8923.         offset);
  8924.     return result;
  8925. }
  8926.  
  8927. void ICircle::scale(LPDISPATCH basepoint, LPDISPATCH scale)
  8928. {
  8929.     static BYTE parms[] =
  8930.         VTS_DISPATCH VTS_DISPATCH;
  8931.     InvokeHelper(0x3000e, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  8932.          basepoint, scale);
  8933. }
  8934.  
  8935. void ICircle::ScaleIt(LPDISPATCH basepoint, LPDISPATCH scale)
  8936. {
  8937.     static BYTE parms[] =
  8938.         VTS_DISPATCH VTS_DISPATCH;
  8939.     InvokeHelper(0x3000f, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  8940.          basepoint, scale);
  8941. }
  8942.  
  8943. void ICircle::Rotate(LPDISPATCH basepoint, double Angle)
  8944. {
  8945.     static BYTE parms[] =
  8946.         VTS_DISPATCH VTS_R8;
  8947.     InvokeHelper(0x30010, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  8948.          basepoint, Angle);
  8949. }
  8950.  
  8951. void ICircle::Mirror(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  8952. {
  8953.     static BYTE parms[] =
  8954.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  8955.     InvokeHelper(0x30011, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  8956.          point1, point2, &MirrorText);
  8957. }
  8958.  
  8959. LPDISPATCH ICircle::MirrorCopy(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  8960. {
  8961.     LPDISPATCH result;
  8962.     static BYTE parms[] =
  8963.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  8964.     InvokeHelper(0x30012, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  8965.         point1, point2, &MirrorText);
  8966.     return result;
  8967. }
  8968.  
  8969. void ICircle::Dialog()
  8970. {
  8971.     InvokeHelper(0x30013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  8972. }
  8973.  
  8974. LPDISPATCH ICircle::Offset(LPDISPATCH vec, const VARIANT& Distance)
  8975. {
  8976.     LPDISPATCH result;
  8977.     static BYTE parms[] =
  8978.         VTS_DISPATCH VTS_VARIANT;
  8979.     InvokeHelper(0x30014, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  8980.         vec, &Distance);
  8981.     return result;
  8982. }
  8983.  
  8984. LPDISPATCH ICircle::Array(short numrows, short numcols, double rowspacing, double colspacing, double Rotation)
  8985. {
  8986.     LPDISPATCH result;
  8987.     static BYTE parms[] =
  8988.         VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8;
  8989.     InvokeHelper(0x30015, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  8990.         numrows, numcols, rowspacing, colspacing, Rotation);
  8991.     return result;
  8992. }
  8993.  
  8994. LPDISPATCH ICircle::Array3D(short numrows, short numcols, short numlevels, double rowspacing, double colspacing, double levelspacing, double Rotation)
  8995. {
  8996.     LPDISPATCH result;
  8997.     static BYTE parms[] =
  8998.         VTS_I2 VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8 VTS_R8;
  8999.     InvokeHelper(0x30016, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  9000.         numrows, numcols, numlevels, rowspacing, colspacing, levelspacing, Rotation);
  9001.     return result;
  9002. }
  9003.  
  9004. LPDISPATCH ICircle::PolarArray(short numitems, double fillangle, double angletween, LPDISPATCH Center, const VARIANT& refpoint)
  9005. {
  9006.     LPDISPATCH result;
  9007.     static BYTE parms[] =
  9008.         VTS_I2 VTS_R8 VTS_R8 VTS_DISPATCH VTS_VARIANT;
  9009.     InvokeHelper(0x30017, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  9010.         numitems, fillangle, angletween, Center, &refpoint);
  9011.     return result;
  9012. }
  9013.  
  9014. void ICircle::DisplayGrips()
  9015. {
  9016.     InvokeHelper(0x30018, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  9017. }
  9018.  
  9019. void ICircle::EraseGrips()
  9020. {
  9021.     InvokeHelper(0x30019, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  9022. }
  9023.  
  9024. LPDISPATCH ICircle::Snap2Endpoint(LPDISPATCH closeto)
  9025. {
  9026.     LPDISPATCH result;
  9027.     static BYTE parms[] =
  9028.         VTS_DISPATCH;
  9029.     InvokeHelper(0x20006, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  9030.         closeto);
  9031.     return result;
  9032. }
  9033.  
  9034. LPDISPATCH ICircle::Snap2Midpoint(LPDISPATCH closeto)
  9035. {
  9036.     LPDISPATCH result;
  9037.     static BYTE parms[] =
  9038.         VTS_DISPATCH;
  9039.     InvokeHelper(0x20007, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  9040.         closeto);
  9041.     return result;
  9042. }
  9043.  
  9044. LPDISPATCH ICircle::Snap2Center(LPDISPATCH closeto)
  9045. {
  9046.     LPDISPATCH result;
  9047.     static BYTE parms[] =
  9048.         VTS_DISPATCH;
  9049.     InvokeHelper(0x20008, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  9050.         closeto);
  9051.     return result;
  9052. }
  9053.  
  9054. LPDISPATCH ICircle::Snap2Nearest(LPDISPATCH closeto)
  9055. {
  9056.     LPDISPATCH result;
  9057.     static BYTE parms[] =
  9058.         VTS_DISPATCH;
  9059.     InvokeHelper(0x20009, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  9060.         closeto);
  9061.     return result;
  9062. }
  9063.  
  9064. LPDISPATCH ICircle::Snap2Point(LPDISPATCH closeto)
  9065. {
  9066.     LPDISPATCH result;
  9067.     static BYTE parms[] =
  9068.         VTS_DISPATCH;
  9069.     InvokeHelper(0x2000a, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  9070.         closeto);
  9071.     return result;
  9072. }
  9073.  
  9074. LPDISPATCH ICircle::Snap2Quadrant(LPDISPATCH closeto)
  9075. {
  9076.     LPDISPATCH result;
  9077.     static BYTE parms[] =
  9078.         VTS_DISPATCH;
  9079.     InvokeHelper(0x2000b, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  9080.         closeto);
  9081.     return result;
  9082. }
  9083.  
  9084. LPDISPATCH ICircle::Snap2Insertion(LPDISPATCH closeto)
  9085. {
  9086.     LPDISPATCH result;
  9087.     static BYTE parms[] =
  9088.         VTS_DISPATCH;
  9089.     InvokeHelper(0x2000c, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  9090.         closeto);
  9091.     return result;
  9092. }
  9093.  
  9094. LPDISPATCH ICircle::Snap2Perpendicular(LPDISPATCH closeto, LPDISPATCH prevpoint)
  9095. {
  9096.     LPDISPATCH result;
  9097.     static BYTE parms[] =
  9098.         VTS_DISPATCH VTS_DISPATCH;
  9099.     InvokeHelper(0x2000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  9100.         closeto, prevpoint);
  9101.     return result;
  9102. }
  9103.  
  9104. LPDISPATCH ICircle::Snap2Tangent(LPDISPATCH closeto, LPDISPATCH prevpoint)
  9105. {
  9106.     LPDISPATCH result;
  9107.     static BYTE parms[] =
  9108.         VTS_DISPATCH VTS_DISPATCH;
  9109.     InvokeHelper(0x2000e, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  9110.         closeto, prevpoint);
  9111.     return result;
  9112. }
  9113.  
  9114. LPDISPATCH ICircle::Intersection(LPDISPATCH Entity, const VARIANT& infinite1, const VARIANT& infinite2)
  9115. {
  9116.     LPDISPATCH result;
  9117.     static BYTE parms[] =
  9118.         VTS_DISPATCH VTS_VARIANT VTS_VARIANT;
  9119.     InvokeHelper(0x2000f, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  9120.         Entity, &infinite1, &infinite2);
  9121.     return result;
  9122. }
  9123.  
  9124. BOOL ICircle::ExtendToSet(LPDISPATCH point)
  9125. {
  9126.     BOOL result;
  9127.     static BYTE parms[] =
  9128.         VTS_DISPATCH;
  9129.     InvokeHelper(0x20010, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  9130.         point);
  9131.     return result;
  9132. }
  9133.  
  9134. BOOL ICircle::TrimToSet(LPDISPATCH point)
  9135. {
  9136.     BOOL result;
  9137.     static BYTE parms[] =
  9138.         VTS_DISPATCH;
  9139.     InvokeHelper(0x20011, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  9140.         point);
  9141.     return result;
  9142. }
  9143.  
  9144. BOOL ICircle::Break(LPDISPATCH point1, LPDISPATCH point2)
  9145. {
  9146.     BOOL result;
  9147.     static BYTE parms[] =
  9148.         VTS_DISPATCH VTS_DISPATCH;
  9149.     InvokeHelper(0x20012, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  9150.         point1, point2);
  9151.     return result;
  9152. }
  9153.  
  9154. void ICircle::Update()
  9155. {
  9156.     InvokeHelper(0x20013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  9157. }
  9158.  
  9159. void ICircle::UpdateNow()
  9160. {
  9161.     InvokeHelper(0x20014, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  9162. }
  9163.  
  9164.  
  9165. /////////////////////////////////////////////////////////////////////////////
  9166. // IShape properties
  9167.  
  9168. LPDISPATCH IShape::GetApplication()
  9169. {
  9170.     LPDISPATCH result;
  9171.     GetProperty(0x40001, VT_DISPATCH, (void*)&result);
  9172.     return result;
  9173. }
  9174.  
  9175. LPDISPATCH IShape::GetParent()
  9176. {
  9177.     LPDISPATCH result;
  9178.     GetProperty(0x40002, VT_DISPATCH, (void*)&result);
  9179.     return result;
  9180. }
  9181.  
  9182. LPDISPATCH IShape::GetColor()
  9183. {
  9184.     LPDISPATCH result;
  9185.     GetProperty(0x30001, VT_DISPATCH, (void*)&result);
  9186.     return result;
  9187. }
  9188.  
  9189. void IShape::SetColor(LPDISPATCH propVal)
  9190. {
  9191.     SetProperty(0x30001, VT_DISPATCH, propVal);
  9192. }
  9193.  
  9194. short IShape::GetColorNumber()
  9195. {
  9196.     short result;
  9197.     GetProperty(0x30002, VT_I2, (void*)&result);
  9198.     return result;
  9199. }
  9200.  
  9201. void IShape::SetColorNumber(short propVal)
  9202. {
  9203.     SetProperty(0x30002, VT_I2, propVal);
  9204. }
  9205.  
  9206. LPDISPATCH IShape::GetLayer()
  9207. {
  9208.     LPDISPATCH result;
  9209.     GetProperty(0x30003, VT_DISPATCH, (void*)&result);
  9210.     return result;
  9211. }
  9212.  
  9213. void IShape::SetLayer(LPDISPATCH propVal)
  9214. {
  9215.     SetProperty(0x30003, VT_DISPATCH, propVal);
  9216. }
  9217.  
  9218. LPDISPATCH IShape::GetLinetype()
  9219. {
  9220.     LPDISPATCH result;
  9221.     GetProperty(0x30004, VT_DISPATCH, (void*)&result);
  9222.     return result;
  9223. }
  9224.  
  9225. void IShape::SetLinetype(LPDISPATCH propVal)
  9226. {
  9227.     SetProperty(0x30004, VT_DISPATCH, propVal);
  9228. }
  9229.  
  9230. double IShape::GetThickness()
  9231. {
  9232.     double result;
  9233.     GetProperty(0x30005, VT_R8, (void*)&result);
  9234.     return result;
  9235. }
  9236.  
  9237. void IShape::SetThickness(double propVal)
  9238. {
  9239.     SetProperty(0x30005, VT_R8, propVal);
  9240. }
  9241.  
  9242. BOOL IShape::GetPaperSpace()
  9243. {
  9244.     BOOL result;
  9245.     GetProperty(0x30006, VT_BOOL, (void*)&result);
  9246.     return result;
  9247. }
  9248.  
  9249. void IShape::SetPaperSpace(BOOL propVal)
  9250. {
  9251.     SetProperty(0x30006, VT_BOOL, propVal);
  9252. }
  9253.  
  9254. LPDISPATCH IShape::GetNormal()
  9255. {
  9256.     LPDISPATCH result;
  9257.     GetProperty(0x30007, VT_DISPATCH, (void*)&result);
  9258.     return result;
  9259. }
  9260.  
  9261. void IShape::SetNormal(LPDISPATCH propVal)
  9262. {
  9263.     SetProperty(0x30007, VT_DISPATCH, propVal);
  9264. }
  9265.  
  9266. CString IShape::GetName()
  9267. {
  9268.     CString result;
  9269.     GetProperty(0x20001, VT_BSTR, (void*)&result);
  9270.     return result;
  9271. }
  9272.  
  9273. short IShape::GetType()
  9274. {
  9275.     short result;
  9276.     GetProperty(0x20002, VT_I2, (void*)&result);
  9277.     return result;
  9278. }
  9279.  
  9280. CString IShape::GetHandle()
  9281. {
  9282.     CString result;
  9283.     GetProperty(0x20003, VT_BSTR, (void*)&result);
  9284.     return result;
  9285. }
  9286.  
  9287. BOOL IShape::GetHasXData()
  9288. {
  9289.     BOOL result;
  9290.     GetProperty(0x20004, VT_BOOL, (void*)&result);
  9291.     return result;
  9292. }
  9293.  
  9294. LPDISPATCH IShape::GetXData()
  9295. {
  9296.     LPDISPATCH result;
  9297.     GetProperty(0x20005, VT_DISPATCH, (void*)&result);
  9298.     return result;
  9299. }
  9300.  
  9301. BOOL IShape::GetAutoDraw()
  9302. {
  9303.     BOOL result;
  9304.     GetProperty(0x20015, VT_BOOL, (void*)&result);
  9305.     return result;
  9306. }
  9307.  
  9308. void IShape::SetAutoDraw(BOOL propVal)
  9309. {
  9310.     SetProperty(0x20015, VT_BOOL, propVal);
  9311. }
  9312.  
  9313. CString IShape::Get_Name()
  9314. {
  9315.     CString result;
  9316.     GetProperty(0x0, VT_BSTR, (void*)&result);
  9317.     return result;
  9318. }
  9319.  
  9320. LPDISPATCH IShape::GetWhere()
  9321. {
  9322.     LPDISPATCH result;
  9323.     GetProperty(0x1, VT_DISPATCH, (void*)&result);
  9324.     return result;
  9325. }
  9326.  
  9327. void IShape::SetWhere(LPDISPATCH propVal)
  9328. {
  9329.     SetProperty(0x1, VT_DISPATCH, propVal);
  9330. }
  9331.  
  9332. CString IShape::GetShapeName()
  9333. {
  9334.     CString result;
  9335.     GetProperty(0x2, VT_BSTR, (void*)&result);
  9336.     return result;
  9337. }
  9338.  
  9339. void IShape::SetShapeName(LPCTSTR propVal)
  9340. {
  9341.     SetProperty(0x2, VT_BSTR, propVal);
  9342. }
  9343.  
  9344. short IShape::GetShapeNumber()
  9345. {
  9346.     short result;
  9347.     GetProperty(0x3, VT_I2, (void*)&result);
  9348.     return result;
  9349. }
  9350.  
  9351. void IShape::SetShapeNumber(short propVal)
  9352. {
  9353.     SetProperty(0x3, VT_I2, propVal);
  9354. }
  9355.  
  9356. double IShape::GetRotation()
  9357. {
  9358.     double result;
  9359.     GetProperty(0x4, VT_R8, (void*)&result);
  9360.     return result;
  9361. }
  9362.  
  9363. void IShape::SetRotation(double propVal)
  9364. {
  9365.     SetProperty(0x4, VT_R8, propVal);
  9366. }
  9367.  
  9368. double IShape::GetSize()
  9369. {
  9370.     double result;
  9371.     GetProperty(0x5, VT_R8, (void*)&result);
  9372.     return result;
  9373. }
  9374.  
  9375. void IShape::SetSize(double propVal)
  9376. {
  9377.     SetProperty(0x5, VT_R8, propVal);
  9378. }
  9379.  
  9380. LPDISPATCH IShape::GetStyle()
  9381. {
  9382.     LPDISPATCH result;
  9383.     GetProperty(0x6, VT_DISPATCH, (void*)&result);
  9384.     return result;
  9385. }
  9386.  
  9387. void IShape::SetStyle(LPDISPATCH propVal)
  9388. {
  9389.     SetProperty(0x6, VT_DISPATCH, propVal);
  9390. }
  9391.  
  9392. double IShape::GetXScaling()
  9393. {
  9394.     double result;
  9395.     GetProperty(0x7, VT_R8, (void*)&result);
  9396.     return result;
  9397. }
  9398.  
  9399. void IShape::SetXScaling(double propVal)
  9400. {
  9401.     SetProperty(0x7, VT_R8, propVal);
  9402. }
  9403.  
  9404. /////////////////////////////////////////////////////////////////////////////
  9405. // IShape operations
  9406.  
  9407. void IShape::Redraw()
  9408. {
  9409.     InvokeHelper(0x30008, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  9410. }
  9411.  
  9412. void IShape::Regen()
  9413. {
  9414.     InvokeHelper(0x30009, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  9415. }
  9416.  
  9417. void IShape::Erase()
  9418. {
  9419.     InvokeHelper(0x3000a, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  9420. }
  9421.  
  9422. void IShape::Delete()
  9423. {
  9424.     InvokeHelper(0x3000b, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  9425. }
  9426.  
  9427. void IShape::Move(LPDISPATCH offset)
  9428. {
  9429.     static BYTE parms[] =
  9430.         VTS_DISPATCH;
  9431.     InvokeHelper(0x3000c, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  9432.          offset);
  9433. }
  9434.  
  9435. LPDISPATCH IShape::Copy(LPDISPATCH offset)
  9436. {
  9437.     LPDISPATCH result;
  9438.     static BYTE parms[] =
  9439.         VTS_DISPATCH;
  9440.     InvokeHelper(0x3000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  9441.         offset);
  9442.     return result;
  9443. }
  9444.  
  9445. void IShape::scale(LPDISPATCH basepoint, LPDISPATCH scale)
  9446. {
  9447.     static BYTE parms[] =
  9448.         VTS_DISPATCH VTS_DISPATCH;
  9449.     InvokeHelper(0x3000e, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  9450.          basepoint, scale);
  9451. }
  9452.  
  9453. void IShape::ScaleIt(LPDISPATCH basepoint, LPDISPATCH scale)
  9454. {
  9455.     static BYTE parms[] =
  9456.         VTS_DISPATCH VTS_DISPATCH;
  9457.     InvokeHelper(0x3000f, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  9458.          basepoint, scale);
  9459. }
  9460.  
  9461. void IShape::Rotate(LPDISPATCH basepoint, double Angle)
  9462. {
  9463.     static BYTE parms[] =
  9464.         VTS_DISPATCH VTS_R8;
  9465.     InvokeHelper(0x30010, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  9466.          basepoint, Angle);
  9467. }
  9468.  
  9469. void IShape::Mirror(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  9470. {
  9471.     static BYTE parms[] =
  9472.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  9473.     InvokeHelper(0x30011, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  9474.          point1, point2, &MirrorText);
  9475. }
  9476.  
  9477. LPDISPATCH IShape::MirrorCopy(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  9478. {
  9479.     LPDISPATCH result;
  9480.     static BYTE parms[] =
  9481.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  9482.     InvokeHelper(0x30012, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  9483.         point1, point2, &MirrorText);
  9484.     return result;
  9485. }
  9486.  
  9487. void IShape::Dialog()
  9488. {
  9489.     InvokeHelper(0x30013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  9490. }
  9491.  
  9492. LPDISPATCH IShape::Offset(LPDISPATCH vec, const VARIANT& Distance)
  9493. {
  9494.     LPDISPATCH result;
  9495.     static BYTE parms[] =
  9496.         VTS_DISPATCH VTS_VARIANT;
  9497.     InvokeHelper(0x30014, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  9498.         vec, &Distance);
  9499.     return result;
  9500. }
  9501.  
  9502. LPDISPATCH IShape::Array(short numrows, short numcols, double rowspacing, double colspacing, double Rotation)
  9503. {
  9504.     LPDISPATCH result;
  9505.     static BYTE parms[] =
  9506.         VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8;
  9507.     InvokeHelper(0x30015, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  9508.         numrows, numcols, rowspacing, colspacing, Rotation);
  9509.     return result;
  9510. }
  9511.  
  9512. LPDISPATCH IShape::Array3D(short numrows, short numcols, short numlevels, double rowspacing, double colspacing, double levelspacing, double Rotation)
  9513. {
  9514.     LPDISPATCH result;
  9515.     static BYTE parms[] =
  9516.         VTS_I2 VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8 VTS_R8;
  9517.     InvokeHelper(0x30016, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  9518.         numrows, numcols, numlevels, rowspacing, colspacing, levelspacing, Rotation);
  9519.     return result;
  9520. }
  9521.  
  9522. LPDISPATCH IShape::PolarArray(short numitems, double fillangle, double angletween, LPDISPATCH Center, const VARIANT& refpoint)
  9523. {
  9524.     LPDISPATCH result;
  9525.     static BYTE parms[] =
  9526.         VTS_I2 VTS_R8 VTS_R8 VTS_DISPATCH VTS_VARIANT;
  9527.     InvokeHelper(0x30017, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  9528.         numitems, fillangle, angletween, Center, &refpoint);
  9529.     return result;
  9530. }
  9531.  
  9532. void IShape::DisplayGrips()
  9533. {
  9534.     InvokeHelper(0x30018, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  9535. }
  9536.  
  9537. void IShape::EraseGrips()
  9538. {
  9539.     InvokeHelper(0x30019, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  9540. }
  9541.  
  9542. LPDISPATCH IShape::Snap2Endpoint(LPDISPATCH closeto)
  9543. {
  9544.     LPDISPATCH result;
  9545.     static BYTE parms[] =
  9546.         VTS_DISPATCH;
  9547.     InvokeHelper(0x20006, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  9548.         closeto);
  9549.     return result;
  9550. }
  9551.  
  9552. LPDISPATCH IShape::Snap2Midpoint(LPDISPATCH closeto)
  9553. {
  9554.     LPDISPATCH result;
  9555.     static BYTE parms[] =
  9556.         VTS_DISPATCH;
  9557.     InvokeHelper(0x20007, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  9558.         closeto);
  9559.     return result;
  9560. }
  9561.  
  9562. LPDISPATCH IShape::Snap2Center(LPDISPATCH closeto)
  9563. {
  9564.     LPDISPATCH result;
  9565.     static BYTE parms[] =
  9566.         VTS_DISPATCH;
  9567.     InvokeHelper(0x20008, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  9568.         closeto);
  9569.     return result;
  9570. }
  9571.  
  9572. LPDISPATCH IShape::Snap2Nearest(LPDISPATCH closeto)
  9573. {
  9574.     LPDISPATCH result;
  9575.     static BYTE parms[] =
  9576.         VTS_DISPATCH;
  9577.     InvokeHelper(0x20009, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  9578.         closeto);
  9579.     return result;
  9580. }
  9581.  
  9582. LPDISPATCH IShape::Snap2Point(LPDISPATCH closeto)
  9583. {
  9584.     LPDISPATCH result;
  9585.     static BYTE parms[] =
  9586.         VTS_DISPATCH;
  9587.     InvokeHelper(0x2000a, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  9588.         closeto);
  9589.     return result;
  9590. }
  9591.  
  9592. LPDISPATCH IShape::Snap2Quadrant(LPDISPATCH closeto)
  9593. {
  9594.     LPDISPATCH result;
  9595.     static BYTE parms[] =
  9596.         VTS_DISPATCH;
  9597.     InvokeHelper(0x2000b, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  9598.         closeto);
  9599.     return result;
  9600. }
  9601.  
  9602. LPDISPATCH IShape::Snap2Insertion(LPDISPATCH closeto)
  9603. {
  9604.     LPDISPATCH result;
  9605.     static BYTE parms[] =
  9606.         VTS_DISPATCH;
  9607.     InvokeHelper(0x2000c, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  9608.         closeto);
  9609.     return result;
  9610. }
  9611.  
  9612. LPDISPATCH IShape::Snap2Perpendicular(LPDISPATCH closeto, LPDISPATCH prevpoint)
  9613. {
  9614.     LPDISPATCH result;
  9615.     static BYTE parms[] =
  9616.         VTS_DISPATCH VTS_DISPATCH;
  9617.     InvokeHelper(0x2000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  9618.         closeto, prevpoint);
  9619.     return result;
  9620. }
  9621.  
  9622. LPDISPATCH IShape::Snap2Tangent(LPDISPATCH closeto, LPDISPATCH prevpoint)
  9623. {
  9624.     LPDISPATCH result;
  9625.     static BYTE parms[] =
  9626.         VTS_DISPATCH VTS_DISPATCH;
  9627.     InvokeHelper(0x2000e, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  9628.         closeto, prevpoint);
  9629.     return result;
  9630. }
  9631.  
  9632. LPDISPATCH IShape::Intersection(LPDISPATCH Entity, const VARIANT& infinite1, const VARIANT& infinite2)
  9633. {
  9634.     LPDISPATCH result;
  9635.     static BYTE parms[] =
  9636.         VTS_DISPATCH VTS_VARIANT VTS_VARIANT;
  9637.     InvokeHelper(0x2000f, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  9638.         Entity, &infinite1, &infinite2);
  9639.     return result;
  9640. }
  9641.  
  9642. BOOL IShape::ExtendToSet(LPDISPATCH point)
  9643. {
  9644.     BOOL result;
  9645.     static BYTE parms[] =
  9646.         VTS_DISPATCH;
  9647.     InvokeHelper(0x20010, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  9648.         point);
  9649.     return result;
  9650. }
  9651.  
  9652. BOOL IShape::TrimToSet(LPDISPATCH point)
  9653. {
  9654.     BOOL result;
  9655.     static BYTE parms[] =
  9656.         VTS_DISPATCH;
  9657.     InvokeHelper(0x20011, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  9658.         point);
  9659.     return result;
  9660. }
  9661.  
  9662. BOOL IShape::Break(LPDISPATCH point1, LPDISPATCH point2)
  9663. {
  9664.     BOOL result;
  9665.     static BYTE parms[] =
  9666.         VTS_DISPATCH VTS_DISPATCH;
  9667.     InvokeHelper(0x20012, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  9668.         point1, point2);
  9669.     return result;
  9670. }
  9671.  
  9672. void IShape::Update()
  9673. {
  9674.     InvokeHelper(0x20013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  9675. }
  9676.  
  9677. void IShape::UpdateNow()
  9678. {
  9679.     InvokeHelper(0x20014, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  9680. }
  9681.  
  9682.  
  9683. /////////////////////////////////////////////////////////////////////////////
  9684. // IArc properties
  9685.  
  9686. LPDISPATCH IArc::GetApplication()
  9687. {
  9688.     LPDISPATCH result;
  9689.     GetProperty(0x40001, VT_DISPATCH, (void*)&result);
  9690.     return result;
  9691. }
  9692.  
  9693. LPDISPATCH IArc::GetParent()
  9694. {
  9695.     LPDISPATCH result;
  9696.     GetProperty(0x40002, VT_DISPATCH, (void*)&result);
  9697.     return result;
  9698. }
  9699.  
  9700. LPDISPATCH IArc::GetColor()
  9701. {
  9702.     LPDISPATCH result;
  9703.     GetProperty(0x30001, VT_DISPATCH, (void*)&result);
  9704.     return result;
  9705. }
  9706.  
  9707. void IArc::SetColor(LPDISPATCH propVal)
  9708. {
  9709.     SetProperty(0x30001, VT_DISPATCH, propVal);
  9710. }
  9711.  
  9712. short IArc::GetColorNumber()
  9713. {
  9714.     short result;
  9715.     GetProperty(0x30002, VT_I2, (void*)&result);
  9716.     return result;
  9717. }
  9718.  
  9719. void IArc::SetColorNumber(short propVal)
  9720. {
  9721.     SetProperty(0x30002, VT_I2, propVal);
  9722. }
  9723.  
  9724. LPDISPATCH IArc::GetLayer()
  9725. {
  9726.     LPDISPATCH result;
  9727.     GetProperty(0x30003, VT_DISPATCH, (void*)&result);
  9728.     return result;
  9729. }
  9730.  
  9731. void IArc::SetLayer(LPDISPATCH propVal)
  9732. {
  9733.     SetProperty(0x30003, VT_DISPATCH, propVal);
  9734. }
  9735.  
  9736. LPDISPATCH IArc::GetLinetype()
  9737. {
  9738.     LPDISPATCH result;
  9739.     GetProperty(0x30004, VT_DISPATCH, (void*)&result);
  9740.     return result;
  9741. }
  9742.  
  9743. void IArc::SetLinetype(LPDISPATCH propVal)
  9744. {
  9745.     SetProperty(0x30004, VT_DISPATCH, propVal);
  9746. }
  9747.  
  9748. double IArc::GetThickness()
  9749. {
  9750.     double result;
  9751.     GetProperty(0x30005, VT_R8, (void*)&result);
  9752.     return result;
  9753. }
  9754.  
  9755. void IArc::SetThickness(double propVal)
  9756. {
  9757.     SetProperty(0x30005, VT_R8, propVal);
  9758. }
  9759.  
  9760. BOOL IArc::GetPaperSpace()
  9761. {
  9762.     BOOL result;
  9763.     GetProperty(0x30006, VT_BOOL, (void*)&result);
  9764.     return result;
  9765. }
  9766.  
  9767. void IArc::SetPaperSpace(BOOL propVal)
  9768. {
  9769.     SetProperty(0x30006, VT_BOOL, propVal);
  9770. }
  9771.  
  9772. LPDISPATCH IArc::GetNormal()
  9773. {
  9774.     LPDISPATCH result;
  9775.     GetProperty(0x30007, VT_DISPATCH, (void*)&result);
  9776.     return result;
  9777. }
  9778.  
  9779. void IArc::SetNormal(LPDISPATCH propVal)
  9780. {
  9781.     SetProperty(0x30007, VT_DISPATCH, propVal);
  9782. }
  9783.  
  9784. CString IArc::GetName()
  9785. {
  9786.     CString result;
  9787.     GetProperty(0x20001, VT_BSTR, (void*)&result);
  9788.     return result;
  9789. }
  9790.  
  9791. short IArc::GetType()
  9792. {
  9793.     short result;
  9794.     GetProperty(0x20002, VT_I2, (void*)&result);
  9795.     return result;
  9796. }
  9797.  
  9798. CString IArc::GetHandle()
  9799. {
  9800.     CString result;
  9801.     GetProperty(0x20003, VT_BSTR, (void*)&result);
  9802.     return result;
  9803. }
  9804.  
  9805. BOOL IArc::GetHasXData()
  9806. {
  9807.     BOOL result;
  9808.     GetProperty(0x20004, VT_BOOL, (void*)&result);
  9809.     return result;
  9810. }
  9811.  
  9812. LPDISPATCH IArc::GetXData()
  9813. {
  9814.     LPDISPATCH result;
  9815.     GetProperty(0x20005, VT_DISPATCH, (void*)&result);
  9816.     return result;
  9817. }
  9818.  
  9819. BOOL IArc::GetAutoDraw()
  9820. {
  9821.     BOOL result;
  9822.     GetProperty(0x20015, VT_BOOL, (void*)&result);
  9823.     return result;
  9824. }
  9825.  
  9826. void IArc::SetAutoDraw(BOOL propVal)
  9827. {
  9828.     SetProperty(0x20015, VT_BOOL, propVal);
  9829. }
  9830.  
  9831. CString IArc::Get_Name()
  9832. {
  9833.     CString result;
  9834.     GetProperty(0x0, VT_BSTR, (void*)&result);
  9835.     return result;
  9836. }
  9837.  
  9838. LPDISPATCH IArc::GetWhere()
  9839. {
  9840.     LPDISPATCH result;
  9841.     GetProperty(0x1, VT_DISPATCH, (void*)&result);
  9842.     return result;
  9843. }
  9844.  
  9845. void IArc::SetWhere(LPDISPATCH propVal)
  9846. {
  9847.     SetProperty(0x1, VT_DISPATCH, propVal);
  9848. }
  9849.  
  9850. double IArc::GetRadius()
  9851. {
  9852.     double result;
  9853.     GetProperty(0x2, VT_R8, (void*)&result);
  9854.     return result;
  9855. }
  9856.  
  9857. void IArc::SetRadius(double propVal)
  9858. {
  9859.     SetProperty(0x2, VT_R8, propVal);
  9860. }
  9861.  
  9862. double IArc::GetStartAngle()
  9863. {
  9864.     double result;
  9865.     GetProperty(0x3, VT_R8, (void*)&result);
  9866.     return result;
  9867. }
  9868.  
  9869. void IArc::SetStartAngle(double propVal)
  9870. {
  9871.     SetProperty(0x3, VT_R8, propVal);
  9872. }
  9873.  
  9874. double IArc::GetEndAngle()
  9875. {
  9876.     double result;
  9877.     GetProperty(0x4, VT_R8, (void*)&result);
  9878.     return result;
  9879. }
  9880.  
  9881. void IArc::SetEndAngle(double propVal)
  9882. {
  9883.     SetProperty(0x4, VT_R8, propVal);
  9884. }
  9885.  
  9886. double IArc::GetLength()
  9887. {
  9888.     double result;
  9889.     GetProperty(0x5, VT_R8, (void*)&result);
  9890.     return result;
  9891. }
  9892.  
  9893. double IArc::GetChordedArea()
  9894. {
  9895.     double result;
  9896.     GetProperty(0x6, VT_R8, (void*)&result);
  9897.     return result;
  9898. }
  9899.  
  9900. double IArc::GetPieArea()
  9901. {
  9902.     double result;
  9903.     GetProperty(0x7, VT_R8, (void*)&result);
  9904.     return result;
  9905. }
  9906.  
  9907. LPDISPATCH IArc::GetWhere1()
  9908. {
  9909.     LPDISPATCH result;
  9910.     GetProperty(0x8, VT_DISPATCH, (void*)&result);
  9911.     return result;
  9912. }
  9913.  
  9914. LPDISPATCH IArc::GetWhere2()
  9915. {
  9916.     LPDISPATCH result;
  9917.     GetProperty(0x9, VT_DISPATCH, (void*)&result);
  9918.     return result;
  9919. }
  9920.  
  9921. LPDISPATCH IArc::GetStartPoint()
  9922. {
  9923.     LPDISPATCH result;
  9924.     GetProperty(0xa, VT_DISPATCH, (void*)&result);
  9925.     return result;
  9926. }
  9927.  
  9928. LPDISPATCH IArc::GetEndpoint()
  9929. {
  9930.     LPDISPATCH result;
  9931.     GetProperty(0xb, VT_DISPATCH, (void*)&result);
  9932.     return result;
  9933. }
  9934.  
  9935. LPDISPATCH IArc::GetCenter()
  9936. {
  9937.     LPDISPATCH result;
  9938.     GetProperty(0xc, VT_DISPATCH, (void*)&result);
  9939.     return result;
  9940. }
  9941.  
  9942. void IArc::SetCenter(LPDISPATCH propVal)
  9943. {
  9944.     SetProperty(0xc, VT_DISPATCH, propVal);
  9945. }
  9946.  
  9947. /////////////////////////////////////////////////////////////////////////////
  9948. // IArc operations
  9949.  
  9950. void IArc::Redraw()
  9951. {
  9952.     InvokeHelper(0x30008, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  9953. }
  9954.  
  9955. void IArc::Regen()
  9956. {
  9957.     InvokeHelper(0x30009, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  9958. }
  9959.  
  9960. void IArc::Erase()
  9961. {
  9962.     InvokeHelper(0x3000a, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  9963. }
  9964.  
  9965. void IArc::Delete()
  9966. {
  9967.     InvokeHelper(0x3000b, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  9968. }
  9969.  
  9970. void IArc::Move(LPDISPATCH offset)
  9971. {
  9972.     static BYTE parms[] =
  9973.         VTS_DISPATCH;
  9974.     InvokeHelper(0x3000c, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  9975.          offset);
  9976. }
  9977.  
  9978. LPDISPATCH IArc::Copy(LPDISPATCH offset)
  9979. {
  9980.     LPDISPATCH result;
  9981.     static BYTE parms[] =
  9982.         VTS_DISPATCH;
  9983.     InvokeHelper(0x3000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  9984.         offset);
  9985.     return result;
  9986. }
  9987.  
  9988. void IArc::scale(LPDISPATCH basepoint, LPDISPATCH scale)
  9989. {
  9990.     static BYTE parms[] =
  9991.         VTS_DISPATCH VTS_DISPATCH;
  9992.     InvokeHelper(0x3000e, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  9993.          basepoint, scale);
  9994. }
  9995.  
  9996. void IArc::ScaleIt(LPDISPATCH basepoint, LPDISPATCH scale)
  9997. {
  9998.     static BYTE parms[] =
  9999.         VTS_DISPATCH VTS_DISPATCH;
  10000.     InvokeHelper(0x3000f, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  10001.          basepoint, scale);
  10002. }
  10003.  
  10004. void IArc::Rotate(LPDISPATCH basepoint, double Angle)
  10005. {
  10006.     static BYTE parms[] =
  10007.         VTS_DISPATCH VTS_R8;
  10008.     InvokeHelper(0x30010, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  10009.          basepoint, Angle);
  10010. }
  10011.  
  10012. void IArc::Mirror(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  10013. {
  10014.     static BYTE parms[] =
  10015.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  10016.     InvokeHelper(0x30011, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  10017.          point1, point2, &MirrorText);
  10018. }
  10019.  
  10020. LPDISPATCH IArc::MirrorCopy(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  10021. {
  10022.     LPDISPATCH result;
  10023.     static BYTE parms[] =
  10024.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  10025.     InvokeHelper(0x30012, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  10026.         point1, point2, &MirrorText);
  10027.     return result;
  10028. }
  10029.  
  10030. void IArc::Dialog()
  10031. {
  10032.     InvokeHelper(0x30013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  10033. }
  10034.  
  10035. LPDISPATCH IArc::Offset(LPDISPATCH vec, const VARIANT& Distance)
  10036. {
  10037.     LPDISPATCH result;
  10038.     static BYTE parms[] =
  10039.         VTS_DISPATCH VTS_VARIANT;
  10040.     InvokeHelper(0x30014, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  10041.         vec, &Distance);
  10042.     return result;
  10043. }
  10044.  
  10045. LPDISPATCH IArc::Array(short numrows, short numcols, double rowspacing, double colspacing, double Rotation)
  10046. {
  10047.     LPDISPATCH result;
  10048.     static BYTE parms[] =
  10049.         VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8;
  10050.     InvokeHelper(0x30015, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  10051.         numrows, numcols, rowspacing, colspacing, Rotation);
  10052.     return result;
  10053. }
  10054.  
  10055. LPDISPATCH IArc::Array3D(short numrows, short numcols, short numlevels, double rowspacing, double colspacing, double levelspacing, double Rotation)
  10056. {
  10057.     LPDISPATCH result;
  10058.     static BYTE parms[] =
  10059.         VTS_I2 VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8 VTS_R8;
  10060.     InvokeHelper(0x30016, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  10061.         numrows, numcols, numlevels, rowspacing, colspacing, levelspacing, Rotation);
  10062.     return result;
  10063. }
  10064.  
  10065. LPDISPATCH IArc::PolarArray(short numitems, double fillangle, double angletween, LPDISPATCH Center, const VARIANT& refpoint)
  10066. {
  10067.     LPDISPATCH result;
  10068.     static BYTE parms[] =
  10069.         VTS_I2 VTS_R8 VTS_R8 VTS_DISPATCH VTS_VARIANT;
  10070.     InvokeHelper(0x30017, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  10071.         numitems, fillangle, angletween, Center, &refpoint);
  10072.     return result;
  10073. }
  10074.  
  10075. void IArc::DisplayGrips()
  10076. {
  10077.     InvokeHelper(0x30018, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  10078. }
  10079.  
  10080. void IArc::EraseGrips()
  10081. {
  10082.     InvokeHelper(0x30019, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  10083. }
  10084.  
  10085. LPDISPATCH IArc::Snap2Endpoint(LPDISPATCH closeto)
  10086. {
  10087.     LPDISPATCH result;
  10088.     static BYTE parms[] =
  10089.         VTS_DISPATCH;
  10090.     InvokeHelper(0x20006, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  10091.         closeto);
  10092.     return result;
  10093. }
  10094.  
  10095. LPDISPATCH IArc::Snap2Midpoint(LPDISPATCH closeto)
  10096. {
  10097.     LPDISPATCH result;
  10098.     static BYTE parms[] =
  10099.         VTS_DISPATCH;
  10100.     InvokeHelper(0x20007, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  10101.         closeto);
  10102.     return result;
  10103. }
  10104.  
  10105. LPDISPATCH IArc::Snap2Center(LPDISPATCH closeto)
  10106. {
  10107.     LPDISPATCH result;
  10108.     static BYTE parms[] =
  10109.         VTS_DISPATCH;
  10110.     InvokeHelper(0x20008, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  10111.         closeto);
  10112.     return result;
  10113. }
  10114.  
  10115. LPDISPATCH IArc::Snap2Nearest(LPDISPATCH closeto)
  10116. {
  10117.     LPDISPATCH result;
  10118.     static BYTE parms[] =
  10119.         VTS_DISPATCH;
  10120.     InvokeHelper(0x20009, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  10121.         closeto);
  10122.     return result;
  10123. }
  10124.  
  10125. LPDISPATCH IArc::Snap2Point(LPDISPATCH closeto)
  10126. {
  10127.     LPDISPATCH result;
  10128.     static BYTE parms[] =
  10129.         VTS_DISPATCH;
  10130.     InvokeHelper(0x2000a, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  10131.         closeto);
  10132.     return result;
  10133. }
  10134.  
  10135. LPDISPATCH IArc::Snap2Quadrant(LPDISPATCH closeto)
  10136. {
  10137.     LPDISPATCH result;
  10138.     static BYTE parms[] =
  10139.         VTS_DISPATCH;
  10140.     InvokeHelper(0x2000b, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  10141.         closeto);
  10142.     return result;
  10143. }
  10144.  
  10145. LPDISPATCH IArc::Snap2Insertion(LPDISPATCH closeto)
  10146. {
  10147.     LPDISPATCH result;
  10148.     static BYTE parms[] =
  10149.         VTS_DISPATCH;
  10150.     InvokeHelper(0x2000c, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  10151.         closeto);
  10152.     return result;
  10153. }
  10154.  
  10155. LPDISPATCH IArc::Snap2Perpendicular(LPDISPATCH closeto, LPDISPATCH prevpoint)
  10156. {
  10157.     LPDISPATCH result;
  10158.     static BYTE parms[] =
  10159.         VTS_DISPATCH VTS_DISPATCH;
  10160.     InvokeHelper(0x2000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  10161.         closeto, prevpoint);
  10162.     return result;
  10163. }
  10164.  
  10165. LPDISPATCH IArc::Snap2Tangent(LPDISPATCH closeto, LPDISPATCH prevpoint)
  10166. {
  10167.     LPDISPATCH result;
  10168.     static BYTE parms[] =
  10169.         VTS_DISPATCH VTS_DISPATCH;
  10170.     InvokeHelper(0x2000e, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  10171.         closeto, prevpoint);
  10172.     return result;
  10173. }
  10174.  
  10175. LPDISPATCH IArc::Intersection(LPDISPATCH Entity, const VARIANT& infinite1, const VARIANT& infinite2)
  10176. {
  10177.     LPDISPATCH result;
  10178.     static BYTE parms[] =
  10179.         VTS_DISPATCH VTS_VARIANT VTS_VARIANT;
  10180.     InvokeHelper(0x2000f, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  10181.         Entity, &infinite1, &infinite2);
  10182.     return result;
  10183. }
  10184.  
  10185. BOOL IArc::ExtendToSet(LPDISPATCH point)
  10186. {
  10187.     BOOL result;
  10188.     static BYTE parms[] =
  10189.         VTS_DISPATCH;
  10190.     InvokeHelper(0x20010, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  10191.         point);
  10192.     return result;
  10193. }
  10194.  
  10195. BOOL IArc::TrimToSet(LPDISPATCH point)
  10196. {
  10197.     BOOL result;
  10198.     static BYTE parms[] =
  10199.         VTS_DISPATCH;
  10200.     InvokeHelper(0x20011, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  10201.         point);
  10202.     return result;
  10203. }
  10204.  
  10205. BOOL IArc::Break(LPDISPATCH point1, LPDISPATCH point2)
  10206. {
  10207.     BOOL result;
  10208.     static BYTE parms[] =
  10209.         VTS_DISPATCH VTS_DISPATCH;
  10210.     InvokeHelper(0x20012, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  10211.         point1, point2);
  10212.     return result;
  10213. }
  10214.  
  10215. void IArc::Update()
  10216. {
  10217.     InvokeHelper(0x20013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  10218. }
  10219.  
  10220. void IArc::UpdateNow()
  10221. {
  10222.     InvokeHelper(0x20014, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  10223. }
  10224.  
  10225.  
  10226. /////////////////////////////////////////////////////////////////////////////
  10227. // ISolid properties
  10228.  
  10229. LPDISPATCH ISolid::GetApplication()
  10230. {
  10231.     LPDISPATCH result;
  10232.     GetProperty(0x40001, VT_DISPATCH, (void*)&result);
  10233.     return result;
  10234. }
  10235.  
  10236. LPDISPATCH ISolid::GetParent()
  10237. {
  10238.     LPDISPATCH result;
  10239.     GetProperty(0x40002, VT_DISPATCH, (void*)&result);
  10240.     return result;
  10241. }
  10242.  
  10243. LPDISPATCH ISolid::GetColor()
  10244. {
  10245.     LPDISPATCH result;
  10246.     GetProperty(0x30001, VT_DISPATCH, (void*)&result);
  10247.     return result;
  10248. }
  10249.  
  10250. void ISolid::SetColor(LPDISPATCH propVal)
  10251. {
  10252.     SetProperty(0x30001, VT_DISPATCH, propVal);
  10253. }
  10254.  
  10255. short ISolid::GetColorNumber()
  10256. {
  10257.     short result;
  10258.     GetProperty(0x30002, VT_I2, (void*)&result);
  10259.     return result;
  10260. }
  10261.  
  10262. void ISolid::SetColorNumber(short propVal)
  10263. {
  10264.     SetProperty(0x30002, VT_I2, propVal);
  10265. }
  10266.  
  10267. LPDISPATCH ISolid::GetLayer()
  10268. {
  10269.     LPDISPATCH result;
  10270.     GetProperty(0x30003, VT_DISPATCH, (void*)&result);
  10271.     return result;
  10272. }
  10273.  
  10274. void ISolid::SetLayer(LPDISPATCH propVal)
  10275. {
  10276.     SetProperty(0x30003, VT_DISPATCH, propVal);
  10277. }
  10278.  
  10279. LPDISPATCH ISolid::GetLinetype()
  10280. {
  10281.     LPDISPATCH result;
  10282.     GetProperty(0x30004, VT_DISPATCH, (void*)&result);
  10283.     return result;
  10284. }
  10285.  
  10286. void ISolid::SetLinetype(LPDISPATCH propVal)
  10287. {
  10288.     SetProperty(0x30004, VT_DISPATCH, propVal);
  10289. }
  10290.  
  10291. double ISolid::GetThickness()
  10292. {
  10293.     double result;
  10294.     GetProperty(0x30005, VT_R8, (void*)&result);
  10295.     return result;
  10296. }
  10297.  
  10298. void ISolid::SetThickness(double propVal)
  10299. {
  10300.     SetProperty(0x30005, VT_R8, propVal);
  10301. }
  10302.  
  10303. BOOL ISolid::GetPaperSpace()
  10304. {
  10305.     BOOL result;
  10306.     GetProperty(0x30006, VT_BOOL, (void*)&result);
  10307.     return result;
  10308. }
  10309.  
  10310. void ISolid::SetPaperSpace(BOOL propVal)
  10311. {
  10312.     SetProperty(0x30006, VT_BOOL, propVal);
  10313. }
  10314.  
  10315. LPDISPATCH ISolid::GetNormal()
  10316. {
  10317.     LPDISPATCH result;
  10318.     GetProperty(0x30007, VT_DISPATCH, (void*)&result);
  10319.     return result;
  10320. }
  10321.  
  10322. void ISolid::SetNormal(LPDISPATCH propVal)
  10323. {
  10324.     SetProperty(0x30007, VT_DISPATCH, propVal);
  10325. }
  10326.  
  10327. CString ISolid::GetName()
  10328. {
  10329.     CString result;
  10330.     GetProperty(0x20001, VT_BSTR, (void*)&result);
  10331.     return result;
  10332. }
  10333.  
  10334. short ISolid::GetType()
  10335. {
  10336.     short result;
  10337.     GetProperty(0x20002, VT_I2, (void*)&result);
  10338.     return result;
  10339. }
  10340.  
  10341. CString ISolid::GetHandle()
  10342. {
  10343.     CString result;
  10344.     GetProperty(0x20003, VT_BSTR, (void*)&result);
  10345.     return result;
  10346. }
  10347.  
  10348. BOOL ISolid::GetHasXData()
  10349. {
  10350.     BOOL result;
  10351.     GetProperty(0x20004, VT_BOOL, (void*)&result);
  10352.     return result;
  10353. }
  10354.  
  10355. LPDISPATCH ISolid::GetXData()
  10356. {
  10357.     LPDISPATCH result;
  10358.     GetProperty(0x20005, VT_DISPATCH, (void*)&result);
  10359.     return result;
  10360. }
  10361.  
  10362. BOOL ISolid::GetAutoDraw()
  10363. {
  10364.     BOOL result;
  10365.     GetProperty(0x20015, VT_BOOL, (void*)&result);
  10366.     return result;
  10367. }
  10368.  
  10369. void ISolid::SetAutoDraw(BOOL propVal)
  10370. {
  10371.     SetProperty(0x20015, VT_BOOL, propVal);
  10372. }
  10373.  
  10374. double ISolid::GetCircumference()
  10375. {
  10376.     double result;
  10377.     GetProperty(0x10002, VT_R8, (void*)&result);
  10378.     return result;
  10379. }
  10380.  
  10381. double ISolid::GetArea()
  10382. {
  10383.     double result;
  10384.     GetProperty(0x10003, VT_R8, (void*)&result);
  10385.     return result;
  10386. }
  10387.  
  10388. CString ISolid::Get_Name()
  10389. {
  10390.     CString result;
  10391.     GetProperty(0x0, VT_BSTR, (void*)&result);
  10392.     return result;
  10393. }
  10394.  
  10395. /////////////////////////////////////////////////////////////////////////////
  10396. // ISolid operations
  10397.  
  10398. void ISolid::Redraw()
  10399. {
  10400.     InvokeHelper(0x30008, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  10401. }
  10402.  
  10403. void ISolid::Regen()
  10404. {
  10405.     InvokeHelper(0x30009, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  10406. }
  10407.  
  10408. void ISolid::Erase()
  10409. {
  10410.     InvokeHelper(0x3000a, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  10411. }
  10412.  
  10413. void ISolid::Delete()
  10414. {
  10415.     InvokeHelper(0x3000b, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  10416. }
  10417.  
  10418. void ISolid::Move(LPDISPATCH offset)
  10419. {
  10420.     static BYTE parms[] =
  10421.         VTS_DISPATCH;
  10422.     InvokeHelper(0x3000c, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  10423.          offset);
  10424. }
  10425.  
  10426. LPDISPATCH ISolid::Copy(LPDISPATCH offset)
  10427. {
  10428.     LPDISPATCH result;
  10429.     static BYTE parms[] =
  10430.         VTS_DISPATCH;
  10431.     InvokeHelper(0x3000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  10432.         offset);
  10433.     return result;
  10434. }
  10435.  
  10436. void ISolid::scale(LPDISPATCH basepoint, LPDISPATCH scale)
  10437. {
  10438.     static BYTE parms[] =
  10439.         VTS_DISPATCH VTS_DISPATCH;
  10440.     InvokeHelper(0x3000e, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  10441.          basepoint, scale);
  10442. }
  10443.  
  10444. void ISolid::ScaleIt(LPDISPATCH basepoint, LPDISPATCH scale)
  10445. {
  10446.     static BYTE parms[] =
  10447.         VTS_DISPATCH VTS_DISPATCH;
  10448.     InvokeHelper(0x3000f, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  10449.          basepoint, scale);
  10450. }
  10451.  
  10452. void ISolid::Rotate(LPDISPATCH basepoint, double Angle)
  10453. {
  10454.     static BYTE parms[] =
  10455.         VTS_DISPATCH VTS_R8;
  10456.     InvokeHelper(0x30010, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  10457.          basepoint, Angle);
  10458. }
  10459.  
  10460. void ISolid::Mirror(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  10461. {
  10462.     static BYTE parms[] =
  10463.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  10464.     InvokeHelper(0x30011, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  10465.          point1, point2, &MirrorText);
  10466. }
  10467.  
  10468. LPDISPATCH ISolid::MirrorCopy(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  10469. {
  10470.     LPDISPATCH result;
  10471.     static BYTE parms[] =
  10472.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  10473.     InvokeHelper(0x30012, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  10474.         point1, point2, &MirrorText);
  10475.     return result;
  10476. }
  10477.  
  10478. void ISolid::Dialog()
  10479. {
  10480.     InvokeHelper(0x30013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  10481. }
  10482.  
  10483. LPDISPATCH ISolid::Offset(LPDISPATCH vec, const VARIANT& Distance)
  10484. {
  10485.     LPDISPATCH result;
  10486.     static BYTE parms[] =
  10487.         VTS_DISPATCH VTS_VARIANT;
  10488.     InvokeHelper(0x30014, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  10489.         vec, &Distance);
  10490.     return result;
  10491. }
  10492.  
  10493. LPDISPATCH ISolid::Array(short numrows, short numcols, double rowspacing, double colspacing, double Rotation)
  10494. {
  10495.     LPDISPATCH result;
  10496.     static BYTE parms[] =
  10497.         VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8;
  10498.     InvokeHelper(0x30015, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  10499.         numrows, numcols, rowspacing, colspacing, Rotation);
  10500.     return result;
  10501. }
  10502.  
  10503. LPDISPATCH ISolid::Array3D(short numrows, short numcols, short numlevels, double rowspacing, double colspacing, double levelspacing, double Rotation)
  10504. {
  10505.     LPDISPATCH result;
  10506.     static BYTE parms[] =
  10507.         VTS_I2 VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8 VTS_R8;
  10508.     InvokeHelper(0x30016, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  10509.         numrows, numcols, numlevels, rowspacing, colspacing, levelspacing, Rotation);
  10510.     return result;
  10511. }
  10512.  
  10513. LPDISPATCH ISolid::PolarArray(short numitems, double fillangle, double angletween, LPDISPATCH Center, const VARIANT& refpoint)
  10514. {
  10515.     LPDISPATCH result;
  10516.     static BYTE parms[] =
  10517.         VTS_I2 VTS_R8 VTS_R8 VTS_DISPATCH VTS_VARIANT;
  10518.     InvokeHelper(0x30017, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  10519.         numitems, fillangle, angletween, Center, &refpoint);
  10520.     return result;
  10521. }
  10522.  
  10523. void ISolid::DisplayGrips()
  10524. {
  10525.     InvokeHelper(0x30018, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  10526. }
  10527.  
  10528. void ISolid::EraseGrips()
  10529. {
  10530.     InvokeHelper(0x30019, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  10531. }
  10532.  
  10533. LPDISPATCH ISolid::Snap2Endpoint(LPDISPATCH closeto)
  10534. {
  10535.     LPDISPATCH result;
  10536.     static BYTE parms[] =
  10537.         VTS_DISPATCH;
  10538.     InvokeHelper(0x20006, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  10539.         closeto);
  10540.     return result;
  10541. }
  10542.  
  10543. LPDISPATCH ISolid::Snap2Midpoint(LPDISPATCH closeto)
  10544. {
  10545.     LPDISPATCH result;
  10546.     static BYTE parms[] =
  10547.         VTS_DISPATCH;
  10548.     InvokeHelper(0x20007, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  10549.         closeto);
  10550.     return result;
  10551. }
  10552.  
  10553. LPDISPATCH ISolid::Snap2Center(LPDISPATCH closeto)
  10554. {
  10555.     LPDISPATCH result;
  10556.     static BYTE parms[] =
  10557.         VTS_DISPATCH;
  10558.     InvokeHelper(0x20008, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  10559.         closeto);
  10560.     return result;
  10561. }
  10562.  
  10563. LPDISPATCH ISolid::Snap2Nearest(LPDISPATCH closeto)
  10564. {
  10565.     LPDISPATCH result;
  10566.     static BYTE parms[] =
  10567.         VTS_DISPATCH;
  10568.     InvokeHelper(0x20009, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  10569.         closeto);
  10570.     return result;
  10571. }
  10572.  
  10573. LPDISPATCH ISolid::Snap2Point(LPDISPATCH closeto)
  10574. {
  10575.     LPDISPATCH result;
  10576.     static BYTE parms[] =
  10577.         VTS_DISPATCH;
  10578.     InvokeHelper(0x2000a, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  10579.         closeto);
  10580.     return result;
  10581. }
  10582.  
  10583. LPDISPATCH ISolid::Snap2Quadrant(LPDISPATCH closeto)
  10584. {
  10585.     LPDISPATCH result;
  10586.     static BYTE parms[] =
  10587.         VTS_DISPATCH;
  10588.     InvokeHelper(0x2000b, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  10589.         closeto);
  10590.     return result;
  10591. }
  10592.  
  10593. LPDISPATCH ISolid::Snap2Insertion(LPDISPATCH closeto)
  10594. {
  10595.     LPDISPATCH result;
  10596.     static BYTE parms[] =
  10597.         VTS_DISPATCH;
  10598.     InvokeHelper(0x2000c, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  10599.         closeto);
  10600.     return result;
  10601. }
  10602.  
  10603. LPDISPATCH ISolid::Snap2Perpendicular(LPDISPATCH closeto, LPDISPATCH prevpoint)
  10604. {
  10605.     LPDISPATCH result;
  10606.     static BYTE parms[] =
  10607.         VTS_DISPATCH VTS_DISPATCH;
  10608.     InvokeHelper(0x2000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  10609.         closeto, prevpoint);
  10610.     return result;
  10611. }
  10612.  
  10613. LPDISPATCH ISolid::Snap2Tangent(LPDISPATCH closeto, LPDISPATCH prevpoint)
  10614. {
  10615.     LPDISPATCH result;
  10616.     static BYTE parms[] =
  10617.         VTS_DISPATCH VTS_DISPATCH;
  10618.     InvokeHelper(0x2000e, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  10619.         closeto, prevpoint);
  10620.     return result;
  10621. }
  10622.  
  10623. LPDISPATCH ISolid::Intersection(LPDISPATCH Entity, const VARIANT& infinite1, const VARIANT& infinite2)
  10624. {
  10625.     LPDISPATCH result;
  10626.     static BYTE parms[] =
  10627.         VTS_DISPATCH VTS_VARIANT VTS_VARIANT;
  10628.     InvokeHelper(0x2000f, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  10629.         Entity, &infinite1, &infinite2);
  10630.     return result;
  10631. }
  10632.  
  10633. BOOL ISolid::ExtendToSet(LPDISPATCH point)
  10634. {
  10635.     BOOL result;
  10636.     static BYTE parms[] =
  10637.         VTS_DISPATCH;
  10638.     InvokeHelper(0x20010, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  10639.         point);
  10640.     return result;
  10641. }
  10642.  
  10643. BOOL ISolid::TrimToSet(LPDISPATCH point)
  10644. {
  10645.     BOOL result;
  10646.     static BYTE parms[] =
  10647.         VTS_DISPATCH;
  10648.     InvokeHelper(0x20011, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  10649.         point);
  10650.     return result;
  10651. }
  10652.  
  10653. BOOL ISolid::Break(LPDISPATCH point1, LPDISPATCH point2)
  10654. {
  10655.     BOOL result;
  10656.     static BYTE parms[] =
  10657.         VTS_DISPATCH VTS_DISPATCH;
  10658.     InvokeHelper(0x20012, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  10659.         point1, point2);
  10660.     return result;
  10661. }
  10662.  
  10663. void ISolid::Update()
  10664. {
  10665.     InvokeHelper(0x20013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  10666. }
  10667.  
  10668. void ISolid::UpdateNow()
  10669. {
  10670.     InvokeHelper(0x20014, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  10671. }
  10672.  
  10673. LPDISPATCH ISolid::GetWhere(short which)
  10674. {
  10675.     LPDISPATCH result;
  10676.     static BYTE parms[] =
  10677.         VTS_I2;
  10678.     InvokeHelper(0x10001, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  10679.         which);
  10680.     return result;
  10681. }
  10682.  
  10683. void ISolid::SetWhere(short which, LPDISPATCH newValue)
  10684. {
  10685.     static BYTE parms[] =
  10686.         VTS_I2 VTS_DISPATCH;
  10687.     InvokeHelper(0x10001, DISPATCH_PROPERTYPUTREF, VT_EMPTY, NULL, parms,
  10688.          which, newValue);
  10689. }
  10690.  
  10691.  
  10692. /////////////////////////////////////////////////////////////////////////////
  10693. // ITrace properties
  10694.  
  10695. LPDISPATCH ITrace::GetApplication()
  10696. {
  10697.     LPDISPATCH result;
  10698.     GetProperty(0x40001, VT_DISPATCH, (void*)&result);
  10699.     return result;
  10700. }
  10701.  
  10702. LPDISPATCH ITrace::GetParent()
  10703. {
  10704.     LPDISPATCH result;
  10705.     GetProperty(0x40002, VT_DISPATCH, (void*)&result);
  10706.     return result;
  10707. }
  10708.  
  10709. LPDISPATCH ITrace::GetColor()
  10710. {
  10711.     LPDISPATCH result;
  10712.     GetProperty(0x30001, VT_DISPATCH, (void*)&result);
  10713.     return result;
  10714. }
  10715.  
  10716. void ITrace::SetColor(LPDISPATCH propVal)
  10717. {
  10718.     SetProperty(0x30001, VT_DISPATCH, propVal);
  10719. }
  10720.  
  10721. short ITrace::GetColorNumber()
  10722. {
  10723.     short result;
  10724.     GetProperty(0x30002, VT_I2, (void*)&result);
  10725.     return result;
  10726. }
  10727.  
  10728. void ITrace::SetColorNumber(short propVal)
  10729. {
  10730.     SetProperty(0x30002, VT_I2, propVal);
  10731. }
  10732.  
  10733. LPDISPATCH ITrace::GetLayer()
  10734. {
  10735.     LPDISPATCH result;
  10736.     GetProperty(0x30003, VT_DISPATCH, (void*)&result);
  10737.     return result;
  10738. }
  10739.  
  10740. void ITrace::SetLayer(LPDISPATCH propVal)
  10741. {
  10742.     SetProperty(0x30003, VT_DISPATCH, propVal);
  10743. }
  10744.  
  10745. LPDISPATCH ITrace::GetLinetype()
  10746. {
  10747.     LPDISPATCH result;
  10748.     GetProperty(0x30004, VT_DISPATCH, (void*)&result);
  10749.     return result;
  10750. }
  10751.  
  10752. void ITrace::SetLinetype(LPDISPATCH propVal)
  10753. {
  10754.     SetProperty(0x30004, VT_DISPATCH, propVal);
  10755. }
  10756.  
  10757. double ITrace::GetThickness()
  10758. {
  10759.     double result;
  10760.     GetProperty(0x30005, VT_R8, (void*)&result);
  10761.     return result;
  10762. }
  10763.  
  10764. void ITrace::SetThickness(double propVal)
  10765. {
  10766.     SetProperty(0x30005, VT_R8, propVal);
  10767. }
  10768.  
  10769. BOOL ITrace::GetPaperSpace()
  10770. {
  10771.     BOOL result;
  10772.     GetProperty(0x30006, VT_BOOL, (void*)&result);
  10773.     return result;
  10774. }
  10775.  
  10776. void ITrace::SetPaperSpace(BOOL propVal)
  10777. {
  10778.     SetProperty(0x30006, VT_BOOL, propVal);
  10779. }
  10780.  
  10781. LPDISPATCH ITrace::GetNormal()
  10782. {
  10783.     LPDISPATCH result;
  10784.     GetProperty(0x30007, VT_DISPATCH, (void*)&result);
  10785.     return result;
  10786. }
  10787.  
  10788. void ITrace::SetNormal(LPDISPATCH propVal)
  10789. {
  10790.     SetProperty(0x30007, VT_DISPATCH, propVal);
  10791. }
  10792.  
  10793. CString ITrace::GetName()
  10794. {
  10795.     CString result;
  10796.     GetProperty(0x20001, VT_BSTR, (void*)&result);
  10797.     return result;
  10798. }
  10799.  
  10800. short ITrace::GetType()
  10801. {
  10802.     short result;
  10803.     GetProperty(0x20002, VT_I2, (void*)&result);
  10804.     return result;
  10805. }
  10806.  
  10807. CString ITrace::GetHandle()
  10808. {
  10809.     CString result;
  10810.     GetProperty(0x20003, VT_BSTR, (void*)&result);
  10811.     return result;
  10812. }
  10813.  
  10814. BOOL ITrace::GetHasXData()
  10815. {
  10816.     BOOL result;
  10817.     GetProperty(0x20004, VT_BOOL, (void*)&result);
  10818.     return result;
  10819. }
  10820.  
  10821. LPDISPATCH ITrace::GetXData()
  10822. {
  10823.     LPDISPATCH result;
  10824.     GetProperty(0x20005, VT_DISPATCH, (void*)&result);
  10825.     return result;
  10826. }
  10827.  
  10828. BOOL ITrace::GetAutoDraw()
  10829. {
  10830.     BOOL result;
  10831.     GetProperty(0x20015, VT_BOOL, (void*)&result);
  10832.     return result;
  10833. }
  10834.  
  10835. void ITrace::SetAutoDraw(BOOL propVal)
  10836. {
  10837.     SetProperty(0x20015, VT_BOOL, propVal);
  10838. }
  10839.  
  10840. double ITrace::GetCircumference()
  10841. {
  10842.     double result;
  10843.     GetProperty(0x10002, VT_R8, (void*)&result);
  10844.     return result;
  10845. }
  10846.  
  10847. double ITrace::GetArea()
  10848. {
  10849.     double result;
  10850.     GetProperty(0x10003, VT_R8, (void*)&result);
  10851.     return result;
  10852. }
  10853.  
  10854. CString ITrace::Get_Name()
  10855. {
  10856.     CString result;
  10857.     GetProperty(0x0, VT_BSTR, (void*)&result);
  10858.     return result;
  10859. }
  10860.  
  10861. /////////////////////////////////////////////////////////////////////////////
  10862. // ITrace operations
  10863.  
  10864. void ITrace::Redraw()
  10865. {
  10866.     InvokeHelper(0x30008, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  10867. }
  10868.  
  10869. void ITrace::Regen()
  10870. {
  10871.     InvokeHelper(0x30009, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  10872. }
  10873.  
  10874. void ITrace::Erase()
  10875. {
  10876.     InvokeHelper(0x3000a, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  10877. }
  10878.  
  10879. void ITrace::Delete()
  10880. {
  10881.     InvokeHelper(0x3000b, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  10882. }
  10883.  
  10884. void ITrace::Move(LPDISPATCH offset)
  10885. {
  10886.     static BYTE parms[] =
  10887.         VTS_DISPATCH;
  10888.     InvokeHelper(0x3000c, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  10889.          offset);
  10890. }
  10891.  
  10892. LPDISPATCH ITrace::Copy(LPDISPATCH offset)
  10893. {
  10894.     LPDISPATCH result;
  10895.     static BYTE parms[] =
  10896.         VTS_DISPATCH;
  10897.     InvokeHelper(0x3000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  10898.         offset);
  10899.     return result;
  10900. }
  10901.  
  10902. void ITrace::scale(LPDISPATCH basepoint, LPDISPATCH scale)
  10903. {
  10904.     static BYTE parms[] =
  10905.         VTS_DISPATCH VTS_DISPATCH;
  10906.     InvokeHelper(0x3000e, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  10907.          basepoint, scale);
  10908. }
  10909.  
  10910. void ITrace::ScaleIt(LPDISPATCH basepoint, LPDISPATCH scale)
  10911. {
  10912.     static BYTE parms[] =
  10913.         VTS_DISPATCH VTS_DISPATCH;
  10914.     InvokeHelper(0x3000f, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  10915.          basepoint, scale);
  10916. }
  10917.  
  10918. void ITrace::Rotate(LPDISPATCH basepoint, double Angle)
  10919. {
  10920.     static BYTE parms[] =
  10921.         VTS_DISPATCH VTS_R8;
  10922.     InvokeHelper(0x30010, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  10923.          basepoint, Angle);
  10924. }
  10925.  
  10926. void ITrace::Mirror(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  10927. {
  10928.     static BYTE parms[] =
  10929.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  10930.     InvokeHelper(0x30011, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  10931.          point1, point2, &MirrorText);
  10932. }
  10933.  
  10934. LPDISPATCH ITrace::MirrorCopy(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  10935. {
  10936.     LPDISPATCH result;
  10937.     static BYTE parms[] =
  10938.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  10939.     InvokeHelper(0x30012, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  10940.         point1, point2, &MirrorText);
  10941.     return result;
  10942. }
  10943.  
  10944. void ITrace::Dialog()
  10945. {
  10946.     InvokeHelper(0x30013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  10947. }
  10948.  
  10949. LPDISPATCH ITrace::Offset(LPDISPATCH vec, const VARIANT& Distance)
  10950. {
  10951.     LPDISPATCH result;
  10952.     static BYTE parms[] =
  10953.         VTS_DISPATCH VTS_VARIANT;
  10954.     InvokeHelper(0x30014, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  10955.         vec, &Distance);
  10956.     return result;
  10957. }
  10958.  
  10959. LPDISPATCH ITrace::Array(short numrows, short numcols, double rowspacing, double colspacing, double Rotation)
  10960. {
  10961.     LPDISPATCH result;
  10962.     static BYTE parms[] =
  10963.         VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8;
  10964.     InvokeHelper(0x30015, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  10965.         numrows, numcols, rowspacing, colspacing, Rotation);
  10966.     return result;
  10967. }
  10968.  
  10969. LPDISPATCH ITrace::Array3D(short numrows, short numcols, short numlevels, double rowspacing, double colspacing, double levelspacing, double Rotation)
  10970. {
  10971.     LPDISPATCH result;
  10972.     static BYTE parms[] =
  10973.         VTS_I2 VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8 VTS_R8;
  10974.     InvokeHelper(0x30016, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  10975.         numrows, numcols, numlevels, rowspacing, colspacing, levelspacing, Rotation);
  10976.     return result;
  10977. }
  10978.  
  10979. LPDISPATCH ITrace::PolarArray(short numitems, double fillangle, double angletween, LPDISPATCH Center, const VARIANT& refpoint)
  10980. {
  10981.     LPDISPATCH result;
  10982.     static BYTE parms[] =
  10983.         VTS_I2 VTS_R8 VTS_R8 VTS_DISPATCH VTS_VARIANT;
  10984.     InvokeHelper(0x30017, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  10985.         numitems, fillangle, angletween, Center, &refpoint);
  10986.     return result;
  10987. }
  10988.  
  10989. void ITrace::DisplayGrips()
  10990. {
  10991.     InvokeHelper(0x30018, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  10992. }
  10993.  
  10994. void ITrace::EraseGrips()
  10995. {
  10996.     InvokeHelper(0x30019, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  10997. }
  10998.  
  10999. LPDISPATCH ITrace::Snap2Endpoint(LPDISPATCH closeto)
  11000. {
  11001.     LPDISPATCH result;
  11002.     static BYTE parms[] =
  11003.         VTS_DISPATCH;
  11004.     InvokeHelper(0x20006, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  11005.         closeto);
  11006.     return result;
  11007. }
  11008.  
  11009. LPDISPATCH ITrace::Snap2Midpoint(LPDISPATCH closeto)
  11010. {
  11011.     LPDISPATCH result;
  11012.     static BYTE parms[] =
  11013.         VTS_DISPATCH;
  11014.     InvokeHelper(0x20007, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  11015.         closeto);
  11016.     return result;
  11017. }
  11018.  
  11019. LPDISPATCH ITrace::Snap2Center(LPDISPATCH closeto)
  11020. {
  11021.     LPDISPATCH result;
  11022.     static BYTE parms[] =
  11023.         VTS_DISPATCH;
  11024.     InvokeHelper(0x20008, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  11025.         closeto);
  11026.     return result;
  11027. }
  11028.  
  11029. LPDISPATCH ITrace::Snap2Nearest(LPDISPATCH closeto)
  11030. {
  11031.     LPDISPATCH result;
  11032.     static BYTE parms[] =
  11033.         VTS_DISPATCH;
  11034.     InvokeHelper(0x20009, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  11035.         closeto);
  11036.     return result;
  11037. }
  11038.  
  11039. LPDISPATCH ITrace::Snap2Point(LPDISPATCH closeto)
  11040. {
  11041.     LPDISPATCH result;
  11042.     static BYTE parms[] =
  11043.         VTS_DISPATCH;
  11044.     InvokeHelper(0x2000a, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  11045.         closeto);
  11046.     return result;
  11047. }
  11048.  
  11049. LPDISPATCH ITrace::Snap2Quadrant(LPDISPATCH closeto)
  11050. {
  11051.     LPDISPATCH result;
  11052.     static BYTE parms[] =
  11053.         VTS_DISPATCH;
  11054.     InvokeHelper(0x2000b, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  11055.         closeto);
  11056.     return result;
  11057. }
  11058.  
  11059. LPDISPATCH ITrace::Snap2Insertion(LPDISPATCH closeto)
  11060. {
  11061.     LPDISPATCH result;
  11062.     static BYTE parms[] =
  11063.         VTS_DISPATCH;
  11064.     InvokeHelper(0x2000c, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  11065.         closeto);
  11066.     return result;
  11067. }
  11068.  
  11069. LPDISPATCH ITrace::Snap2Perpendicular(LPDISPATCH closeto, LPDISPATCH prevpoint)
  11070. {
  11071.     LPDISPATCH result;
  11072.     static BYTE parms[] =
  11073.         VTS_DISPATCH VTS_DISPATCH;
  11074.     InvokeHelper(0x2000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  11075.         closeto, prevpoint);
  11076.     return result;
  11077. }
  11078.  
  11079. LPDISPATCH ITrace::Snap2Tangent(LPDISPATCH closeto, LPDISPATCH prevpoint)
  11080. {
  11081.     LPDISPATCH result;
  11082.     static BYTE parms[] =
  11083.         VTS_DISPATCH VTS_DISPATCH;
  11084.     InvokeHelper(0x2000e, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  11085.         closeto, prevpoint);
  11086.     return result;
  11087. }
  11088.  
  11089. LPDISPATCH ITrace::Intersection(LPDISPATCH Entity, const VARIANT& infinite1, const VARIANT& infinite2)
  11090. {
  11091.     LPDISPATCH result;
  11092.     static BYTE parms[] =
  11093.         VTS_DISPATCH VTS_VARIANT VTS_VARIANT;
  11094.     InvokeHelper(0x2000f, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  11095.         Entity, &infinite1, &infinite2);
  11096.     return result;
  11097. }
  11098.  
  11099. BOOL ITrace::ExtendToSet(LPDISPATCH point)
  11100. {
  11101.     BOOL result;
  11102.     static BYTE parms[] =
  11103.         VTS_DISPATCH;
  11104.     InvokeHelper(0x20010, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  11105.         point);
  11106.     return result;
  11107. }
  11108.  
  11109. BOOL ITrace::TrimToSet(LPDISPATCH point)
  11110. {
  11111.     BOOL result;
  11112.     static BYTE parms[] =
  11113.         VTS_DISPATCH;
  11114.     InvokeHelper(0x20011, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  11115.         point);
  11116.     return result;
  11117. }
  11118.  
  11119. BOOL ITrace::Break(LPDISPATCH point1, LPDISPATCH point2)
  11120. {
  11121.     BOOL result;
  11122.     static BYTE parms[] =
  11123.         VTS_DISPATCH VTS_DISPATCH;
  11124.     InvokeHelper(0x20012, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  11125.         point1, point2);
  11126.     return result;
  11127. }
  11128.  
  11129. void ITrace::Update()
  11130. {
  11131.     InvokeHelper(0x20013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  11132. }
  11133.  
  11134. void ITrace::UpdateNow()
  11135. {
  11136.     InvokeHelper(0x20014, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  11137. }
  11138.  
  11139. LPDISPATCH ITrace::GetWhere(short which)
  11140. {
  11141.     LPDISPATCH result;
  11142.     static BYTE parms[] =
  11143.         VTS_I2;
  11144.     InvokeHelper(0x10001, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  11145.         which);
  11146.     return result;
  11147. }
  11148.  
  11149. void ITrace::SetWhere(short which, LPDISPATCH newValue)
  11150. {
  11151.     static BYTE parms[] =
  11152.         VTS_I2 VTS_DISPATCH;
  11153.     InvokeHelper(0x10001, DISPATCH_PROPERTYPUTREF, VT_EMPTY, NULL, parms,
  11154.          which, newValue);
  11155. }
  11156.  
  11157.  
  11158. /////////////////////////////////////////////////////////////////////////////
  11159. // IFace properties
  11160.  
  11161. LPDISPATCH IFace::GetApplication()
  11162. {
  11163.     LPDISPATCH result;
  11164.     GetProperty(0x40001, VT_DISPATCH, (void*)&result);
  11165.     return result;
  11166. }
  11167.  
  11168. LPDISPATCH IFace::GetParent()
  11169. {
  11170.     LPDISPATCH result;
  11171.     GetProperty(0x40002, VT_DISPATCH, (void*)&result);
  11172.     return result;
  11173. }
  11174.  
  11175. LPDISPATCH IFace::GetColor()
  11176. {
  11177.     LPDISPATCH result;
  11178.     GetProperty(0x30001, VT_DISPATCH, (void*)&result);
  11179.     return result;
  11180. }
  11181.  
  11182. void IFace::SetColor(LPDISPATCH propVal)
  11183. {
  11184.     SetProperty(0x30001, VT_DISPATCH, propVal);
  11185. }
  11186.  
  11187. short IFace::GetColorNumber()
  11188. {
  11189.     short result;
  11190.     GetProperty(0x30002, VT_I2, (void*)&result);
  11191.     return result;
  11192. }
  11193.  
  11194. void IFace::SetColorNumber(short propVal)
  11195. {
  11196.     SetProperty(0x30002, VT_I2, propVal);
  11197. }
  11198.  
  11199. LPDISPATCH IFace::GetLayer()
  11200. {
  11201.     LPDISPATCH result;
  11202.     GetProperty(0x30003, VT_DISPATCH, (void*)&result);
  11203.     return result;
  11204. }
  11205.  
  11206. void IFace::SetLayer(LPDISPATCH propVal)
  11207. {
  11208.     SetProperty(0x30003, VT_DISPATCH, propVal);
  11209. }
  11210.  
  11211. LPDISPATCH IFace::GetLinetype()
  11212. {
  11213.     LPDISPATCH result;
  11214.     GetProperty(0x30004, VT_DISPATCH, (void*)&result);
  11215.     return result;
  11216. }
  11217.  
  11218. void IFace::SetLinetype(LPDISPATCH propVal)
  11219. {
  11220.     SetProperty(0x30004, VT_DISPATCH, propVal);
  11221. }
  11222.  
  11223. double IFace::GetThickness()
  11224. {
  11225.     double result;
  11226.     GetProperty(0x30005, VT_R8, (void*)&result);
  11227.     return result;
  11228. }
  11229.  
  11230. void IFace::SetThickness(double propVal)
  11231. {
  11232.     SetProperty(0x30005, VT_R8, propVal);
  11233. }
  11234.  
  11235. BOOL IFace::GetPaperSpace()
  11236. {
  11237.     BOOL result;
  11238.     GetProperty(0x30006, VT_BOOL, (void*)&result);
  11239.     return result;
  11240. }
  11241.  
  11242. void IFace::SetPaperSpace(BOOL propVal)
  11243. {
  11244.     SetProperty(0x30006, VT_BOOL, propVal);
  11245. }
  11246.  
  11247. LPDISPATCH IFace::GetNormal()
  11248. {
  11249.     LPDISPATCH result;
  11250.     GetProperty(0x30007, VT_DISPATCH, (void*)&result);
  11251.     return result;
  11252. }
  11253.  
  11254. void IFace::SetNormal(LPDISPATCH propVal)
  11255. {
  11256.     SetProperty(0x30007, VT_DISPATCH, propVal);
  11257. }
  11258.  
  11259. CString IFace::GetName()
  11260. {
  11261.     CString result;
  11262.     GetProperty(0x20001, VT_BSTR, (void*)&result);
  11263.     return result;
  11264. }
  11265.  
  11266. short IFace::GetType()
  11267. {
  11268.     short result;
  11269.     GetProperty(0x20002, VT_I2, (void*)&result);
  11270.     return result;
  11271. }
  11272.  
  11273. CString IFace::GetHandle()
  11274. {
  11275.     CString result;
  11276.     GetProperty(0x20003, VT_BSTR, (void*)&result);
  11277.     return result;
  11278. }
  11279.  
  11280. BOOL IFace::GetHasXData()
  11281. {
  11282.     BOOL result;
  11283.     GetProperty(0x20004, VT_BOOL, (void*)&result);
  11284.     return result;
  11285. }
  11286.  
  11287. LPDISPATCH IFace::GetXData()
  11288. {
  11289.     LPDISPATCH result;
  11290.     GetProperty(0x20005, VT_DISPATCH, (void*)&result);
  11291.     return result;
  11292. }
  11293.  
  11294. BOOL IFace::GetAutoDraw()
  11295. {
  11296.     BOOL result;
  11297.     GetProperty(0x20015, VT_BOOL, (void*)&result);
  11298.     return result;
  11299. }
  11300.  
  11301. void IFace::SetAutoDraw(BOOL propVal)
  11302. {
  11303.     SetProperty(0x20015, VT_BOOL, propVal);
  11304. }
  11305.  
  11306. double IFace::GetCircumference()
  11307. {
  11308.     double result;
  11309.     GetProperty(0x10002, VT_R8, (void*)&result);
  11310.     return result;
  11311. }
  11312.  
  11313. double IFace::GetArea()
  11314. {
  11315.     double result;
  11316.     GetProperty(0x10003, VT_R8, (void*)&result);
  11317.     return result;
  11318. }
  11319.  
  11320. CString IFace::Get_Name()
  11321. {
  11322.     CString result;
  11323.     GetProperty(0x0, VT_BSTR, (void*)&result);
  11324.     return result;
  11325. }
  11326.  
  11327. /////////////////////////////////////////////////////////////////////////////
  11328. // IFace operations
  11329.  
  11330. void IFace::Redraw()
  11331. {
  11332.     InvokeHelper(0x30008, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  11333. }
  11334.  
  11335. void IFace::Regen()
  11336. {
  11337.     InvokeHelper(0x30009, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  11338. }
  11339.  
  11340. void IFace::Erase()
  11341. {
  11342.     InvokeHelper(0x3000a, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  11343. }
  11344.  
  11345. void IFace::Delete()
  11346. {
  11347.     InvokeHelper(0x3000b, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  11348. }
  11349.  
  11350. void IFace::Move(LPDISPATCH offset)
  11351. {
  11352.     static BYTE parms[] =
  11353.         VTS_DISPATCH;
  11354.     InvokeHelper(0x3000c, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  11355.          offset);
  11356. }
  11357.  
  11358. LPDISPATCH IFace::Copy(LPDISPATCH offset)
  11359. {
  11360.     LPDISPATCH result;
  11361.     static BYTE parms[] =
  11362.         VTS_DISPATCH;
  11363.     InvokeHelper(0x3000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  11364.         offset);
  11365.     return result;
  11366. }
  11367.  
  11368. void IFace::scale(LPDISPATCH basepoint, LPDISPATCH scale)
  11369. {
  11370.     static BYTE parms[] =
  11371.         VTS_DISPATCH VTS_DISPATCH;
  11372.     InvokeHelper(0x3000e, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  11373.          basepoint, scale);
  11374. }
  11375.  
  11376. void IFace::ScaleIt(LPDISPATCH basepoint, LPDISPATCH scale)
  11377. {
  11378.     static BYTE parms[] =
  11379.         VTS_DISPATCH VTS_DISPATCH;
  11380.     InvokeHelper(0x3000f, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  11381.          basepoint, scale);
  11382. }
  11383.  
  11384. void IFace::Rotate(LPDISPATCH basepoint, double Angle)
  11385. {
  11386.     static BYTE parms[] =
  11387.         VTS_DISPATCH VTS_R8;
  11388.     InvokeHelper(0x30010, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  11389.          basepoint, Angle);
  11390. }
  11391.  
  11392. void IFace::Mirror(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  11393. {
  11394.     static BYTE parms[] =
  11395.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  11396.     InvokeHelper(0x30011, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  11397.          point1, point2, &MirrorText);
  11398. }
  11399.  
  11400. LPDISPATCH IFace::MirrorCopy(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  11401. {
  11402.     LPDISPATCH result;
  11403.     static BYTE parms[] =
  11404.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  11405.     InvokeHelper(0x30012, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  11406.         point1, point2, &MirrorText);
  11407.     return result;
  11408. }
  11409.  
  11410. void IFace::Dialog()
  11411. {
  11412.     InvokeHelper(0x30013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  11413. }
  11414.  
  11415. LPDISPATCH IFace::Offset(LPDISPATCH vec, const VARIANT& Distance)
  11416. {
  11417.     LPDISPATCH result;
  11418.     static BYTE parms[] =
  11419.         VTS_DISPATCH VTS_VARIANT;
  11420.     InvokeHelper(0x30014, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  11421.         vec, &Distance);
  11422.     return result;
  11423. }
  11424.  
  11425. LPDISPATCH IFace::Array(short numrows, short numcols, double rowspacing, double colspacing, double Rotation)
  11426. {
  11427.     LPDISPATCH result;
  11428.     static BYTE parms[] =
  11429.         VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8;
  11430.     InvokeHelper(0x30015, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  11431.         numrows, numcols, rowspacing, colspacing, Rotation);
  11432.     return result;
  11433. }
  11434.  
  11435. LPDISPATCH IFace::Array3D(short numrows, short numcols, short numlevels, double rowspacing, double colspacing, double levelspacing, double Rotation)
  11436. {
  11437.     LPDISPATCH result;
  11438.     static BYTE parms[] =
  11439.         VTS_I2 VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8 VTS_R8;
  11440.     InvokeHelper(0x30016, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  11441.         numrows, numcols, numlevels, rowspacing, colspacing, levelspacing, Rotation);
  11442.     return result;
  11443. }
  11444.  
  11445. LPDISPATCH IFace::PolarArray(short numitems, double fillangle, double angletween, LPDISPATCH Center, const VARIANT& refpoint)
  11446. {
  11447.     LPDISPATCH result;
  11448.     static BYTE parms[] =
  11449.         VTS_I2 VTS_R8 VTS_R8 VTS_DISPATCH VTS_VARIANT;
  11450.     InvokeHelper(0x30017, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  11451.         numitems, fillangle, angletween, Center, &refpoint);
  11452.     return result;
  11453. }
  11454.  
  11455. void IFace::DisplayGrips()
  11456. {
  11457.     InvokeHelper(0x30018, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  11458. }
  11459.  
  11460. void IFace::EraseGrips()
  11461. {
  11462.     InvokeHelper(0x30019, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  11463. }
  11464.  
  11465. LPDISPATCH IFace::Snap2Endpoint(LPDISPATCH closeto)
  11466. {
  11467.     LPDISPATCH result;
  11468.     static BYTE parms[] =
  11469.         VTS_DISPATCH;
  11470.     InvokeHelper(0x20006, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  11471.         closeto);
  11472.     return result;
  11473. }
  11474.  
  11475. LPDISPATCH IFace::Snap2Midpoint(LPDISPATCH closeto)
  11476. {
  11477.     LPDISPATCH result;
  11478.     static BYTE parms[] =
  11479.         VTS_DISPATCH;
  11480.     InvokeHelper(0x20007, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  11481.         closeto);
  11482.     return result;
  11483. }
  11484.  
  11485. LPDISPATCH IFace::Snap2Center(LPDISPATCH closeto)
  11486. {
  11487.     LPDISPATCH result;
  11488.     static BYTE parms[] =
  11489.         VTS_DISPATCH;
  11490.     InvokeHelper(0x20008, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  11491.         closeto);
  11492.     return result;
  11493. }
  11494.  
  11495. LPDISPATCH IFace::Snap2Nearest(LPDISPATCH closeto)
  11496. {
  11497.     LPDISPATCH result;
  11498.     static BYTE parms[] =
  11499.         VTS_DISPATCH;
  11500.     InvokeHelper(0x20009, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  11501.         closeto);
  11502.     return result;
  11503. }
  11504.  
  11505. LPDISPATCH IFace::Snap2Point(LPDISPATCH closeto)
  11506. {
  11507.     LPDISPATCH result;
  11508.     static BYTE parms[] =
  11509.         VTS_DISPATCH;
  11510.     InvokeHelper(0x2000a, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  11511.         closeto);
  11512.     return result;
  11513. }
  11514.  
  11515. LPDISPATCH IFace::Snap2Quadrant(LPDISPATCH closeto)
  11516. {
  11517.     LPDISPATCH result;
  11518.     static BYTE parms[] =
  11519.         VTS_DISPATCH;
  11520.     InvokeHelper(0x2000b, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  11521.         closeto);
  11522.     return result;
  11523. }
  11524.  
  11525. LPDISPATCH IFace::Snap2Insertion(LPDISPATCH closeto)
  11526. {
  11527.     LPDISPATCH result;
  11528.     static BYTE parms[] =
  11529.         VTS_DISPATCH;
  11530.     InvokeHelper(0x2000c, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  11531.         closeto);
  11532.     return result;
  11533. }
  11534.  
  11535. LPDISPATCH IFace::Snap2Perpendicular(LPDISPATCH closeto, LPDISPATCH prevpoint)
  11536. {
  11537.     LPDISPATCH result;
  11538.     static BYTE parms[] =
  11539.         VTS_DISPATCH VTS_DISPATCH;
  11540.     InvokeHelper(0x2000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  11541.         closeto, prevpoint);
  11542.     return result;
  11543. }
  11544.  
  11545. LPDISPATCH IFace::Snap2Tangent(LPDISPATCH closeto, LPDISPATCH prevpoint)
  11546. {
  11547.     LPDISPATCH result;
  11548.     static BYTE parms[] =
  11549.         VTS_DISPATCH VTS_DISPATCH;
  11550.     InvokeHelper(0x2000e, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  11551.         closeto, prevpoint);
  11552.     return result;
  11553. }
  11554.  
  11555. LPDISPATCH IFace::Intersection(LPDISPATCH Entity, const VARIANT& infinite1, const VARIANT& infinite2)
  11556. {
  11557.     LPDISPATCH result;
  11558.     static BYTE parms[] =
  11559.         VTS_DISPATCH VTS_VARIANT VTS_VARIANT;
  11560.     InvokeHelper(0x2000f, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  11561.         Entity, &infinite1, &infinite2);
  11562.     return result;
  11563. }
  11564.  
  11565. BOOL IFace::ExtendToSet(LPDISPATCH point)
  11566. {
  11567.     BOOL result;
  11568.     static BYTE parms[] =
  11569.         VTS_DISPATCH;
  11570.     InvokeHelper(0x20010, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  11571.         point);
  11572.     return result;
  11573. }
  11574.  
  11575. BOOL IFace::TrimToSet(LPDISPATCH point)
  11576. {
  11577.     BOOL result;
  11578.     static BYTE parms[] =
  11579.         VTS_DISPATCH;
  11580.     InvokeHelper(0x20011, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  11581.         point);
  11582.     return result;
  11583. }
  11584.  
  11585. BOOL IFace::Break(LPDISPATCH point1, LPDISPATCH point2)
  11586. {
  11587.     BOOL result;
  11588.     static BYTE parms[] =
  11589.         VTS_DISPATCH VTS_DISPATCH;
  11590.     InvokeHelper(0x20012, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  11591.         point1, point2);
  11592.     return result;
  11593. }
  11594.  
  11595. void IFace::Update()
  11596. {
  11597.     InvokeHelper(0x20013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  11598. }
  11599.  
  11600. void IFace::UpdateNow()
  11601. {
  11602.     InvokeHelper(0x20014, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  11603. }
  11604.  
  11605. LPDISPATCH IFace::GetWhere(short which)
  11606. {
  11607.     LPDISPATCH result;
  11608.     static BYTE parms[] =
  11609.         VTS_I2;
  11610.     InvokeHelper(0x10001, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  11611.         which);
  11612.     return result;
  11613. }
  11614.  
  11615. void IFace::SetWhere(short which, LPDISPATCH newValue)
  11616. {
  11617.     static BYTE parms[] =
  11618.         VTS_I2 VTS_DISPATCH;
  11619.     InvokeHelper(0x10001, DISPATCH_PROPERTYPUTREF, VT_EMPTY, NULL, parms,
  11620.          which, newValue);
  11621. }
  11622.  
  11623. BOOL IFace::GetVisible(short which)
  11624. {
  11625.     BOOL result;
  11626.     static BYTE parms[] =
  11627.         VTS_I2;
  11628.     InvokeHelper(0x1, DISPATCH_PROPERTYGET, VT_BOOL, (void*)&result, parms,
  11629.         which);
  11630.     return result;
  11631. }
  11632.  
  11633. void IFace::SetVisible(short which, BOOL bNewValue)
  11634. {
  11635.     static BYTE parms[] =
  11636.         VTS_I2 VTS_BOOL;
  11637.     InvokeHelper(0x1, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms,
  11638.          which, bNewValue);
  11639. }
  11640.  
  11641.  
  11642. /////////////////////////////////////////////////////////////////////////////
  11643. // IInsert properties
  11644.  
  11645. LPDISPATCH IInsert::GetApplication()
  11646. {
  11647.     LPDISPATCH result;
  11648.     GetProperty(0x40001, VT_DISPATCH, (void*)&result);
  11649.     return result;
  11650. }
  11651.  
  11652. LPDISPATCH IInsert::GetParent()
  11653. {
  11654.     LPDISPATCH result;
  11655.     GetProperty(0x40002, VT_DISPATCH, (void*)&result);
  11656.     return result;
  11657. }
  11658.  
  11659. LPDISPATCH IInsert::GetColor()
  11660. {
  11661.     LPDISPATCH result;
  11662.     GetProperty(0x30001, VT_DISPATCH, (void*)&result);
  11663.     return result;
  11664. }
  11665.  
  11666. void IInsert::SetColor(LPDISPATCH propVal)
  11667. {
  11668.     SetProperty(0x30001, VT_DISPATCH, propVal);
  11669. }
  11670.  
  11671. short IInsert::GetColorNumber()
  11672. {
  11673.     short result;
  11674.     GetProperty(0x30002, VT_I2, (void*)&result);
  11675.     return result;
  11676. }
  11677.  
  11678. void IInsert::SetColorNumber(short propVal)
  11679. {
  11680.     SetProperty(0x30002, VT_I2, propVal);
  11681. }
  11682.  
  11683. LPDISPATCH IInsert::GetLayer()
  11684. {
  11685.     LPDISPATCH result;
  11686.     GetProperty(0x30003, VT_DISPATCH, (void*)&result);
  11687.     return result;
  11688. }
  11689.  
  11690. void IInsert::SetLayer(LPDISPATCH propVal)
  11691. {
  11692.     SetProperty(0x30003, VT_DISPATCH, propVal);
  11693. }
  11694.  
  11695. LPDISPATCH IInsert::GetLinetype()
  11696. {
  11697.     LPDISPATCH result;
  11698.     GetProperty(0x30004, VT_DISPATCH, (void*)&result);
  11699.     return result;
  11700. }
  11701.  
  11702. void IInsert::SetLinetype(LPDISPATCH propVal)
  11703. {
  11704.     SetProperty(0x30004, VT_DISPATCH, propVal);
  11705. }
  11706.  
  11707. double IInsert::GetThickness()
  11708. {
  11709.     double result;
  11710.     GetProperty(0x30005, VT_R8, (void*)&result);
  11711.     return result;
  11712. }
  11713.  
  11714. void IInsert::SetThickness(double propVal)
  11715. {
  11716.     SetProperty(0x30005, VT_R8, propVal);
  11717. }
  11718.  
  11719. BOOL IInsert::GetPaperSpace()
  11720. {
  11721.     BOOL result;
  11722.     GetProperty(0x30006, VT_BOOL, (void*)&result);
  11723.     return result;
  11724. }
  11725.  
  11726. void IInsert::SetPaperSpace(BOOL propVal)
  11727. {
  11728.     SetProperty(0x30006, VT_BOOL, propVal);
  11729. }
  11730.  
  11731. LPDISPATCH IInsert::GetNormal()
  11732. {
  11733.     LPDISPATCH result;
  11734.     GetProperty(0x30007, VT_DISPATCH, (void*)&result);
  11735.     return result;
  11736. }
  11737.  
  11738. void IInsert::SetNormal(LPDISPATCH propVal)
  11739. {
  11740.     SetProperty(0x30007, VT_DISPATCH, propVal);
  11741. }
  11742.  
  11743. CString IInsert::GetName()
  11744. {
  11745.     CString result;
  11746.     GetProperty(0x20001, VT_BSTR, (void*)&result);
  11747.     return result;
  11748. }
  11749.  
  11750. short IInsert::GetType()
  11751. {
  11752.     short result;
  11753.     GetProperty(0x20002, VT_I2, (void*)&result);
  11754.     return result;
  11755. }
  11756.  
  11757. CString IInsert::GetHandle()
  11758. {
  11759.     CString result;
  11760.     GetProperty(0x20003, VT_BSTR, (void*)&result);
  11761.     return result;
  11762. }
  11763.  
  11764. BOOL IInsert::GetHasXData()
  11765. {
  11766.     BOOL result;
  11767.     GetProperty(0x20004, VT_BOOL, (void*)&result);
  11768.     return result;
  11769. }
  11770.  
  11771. LPDISPATCH IInsert::GetXData()
  11772. {
  11773.     LPDISPATCH result;
  11774.     GetProperty(0x20005, VT_DISPATCH, (void*)&result);
  11775.     return result;
  11776. }
  11777.  
  11778. BOOL IInsert::GetAutoDraw()
  11779. {
  11780.     BOOL result;
  11781.     GetProperty(0x20015, VT_BOOL, (void*)&result);
  11782.     return result;
  11783. }
  11784.  
  11785. void IInsert::SetAutoDraw(BOOL propVal)
  11786. {
  11787.     SetProperty(0x20015, VT_BOOL, propVal);
  11788. }
  11789.  
  11790. CString IInsert::Get_Name()
  11791. {
  11792.     CString result;
  11793.     GetProperty(0x0, VT_BSTR, (void*)&result);
  11794.     return result;
  11795. }
  11796.  
  11797. LPDISPATCH IInsert::GetBlock()
  11798. {
  11799.     LPDISPATCH result;
  11800.     GetProperty(0x1, VT_DISPATCH, (void*)&result);
  11801.     return result;
  11802. }
  11803.  
  11804. LPDISPATCH IInsert::GetWhere()
  11805. {
  11806.     LPDISPATCH result;
  11807.     GetProperty(0x2, VT_DISPATCH, (void*)&result);
  11808.     return result;
  11809. }
  11810.  
  11811. void IInsert::SetWhere(LPDISPATCH propVal)
  11812. {
  11813.     SetProperty(0x2, VT_DISPATCH, propVal);
  11814. }
  11815.  
  11816. LPDISPATCH IInsert::GetScaling()
  11817. {
  11818.     LPDISPATCH result;
  11819.     GetProperty(0x3, VT_DISPATCH, (void*)&result);
  11820.     return result;
  11821. }
  11822.  
  11823. void IInsert::SetScaling(LPDISPATCH propVal)
  11824. {
  11825.     SetProperty(0x3, VT_DISPATCH, propVal);
  11826. }
  11827.  
  11828. double IInsert::GetRotation()
  11829. {
  11830.     double result;
  11831.     GetProperty(0x4, VT_R8, (void*)&result);
  11832.     return result;
  11833. }
  11834.  
  11835. void IInsert::SetRotation(double propVal)
  11836. {
  11837.     SetProperty(0x4, VT_R8, propVal);
  11838. }
  11839.  
  11840. short IInsert::GetColumns()
  11841. {
  11842.     short result;
  11843.     GetProperty(0x5, VT_I2, (void*)&result);
  11844.     return result;
  11845. }
  11846.  
  11847. void IInsert::SetColumns(short propVal)
  11848. {
  11849.     SetProperty(0x5, VT_I2, propVal);
  11850. }
  11851.  
  11852. short IInsert::GetRows()
  11853. {
  11854.     short result;
  11855.     GetProperty(0x6, VT_I2, (void*)&result);
  11856.     return result;
  11857. }
  11858.  
  11859. void IInsert::SetRows(short propVal)
  11860. {
  11861.     SetProperty(0x6, VT_I2, propVal);
  11862. }
  11863.  
  11864. double IInsert::GetColumnSpacing()
  11865. {
  11866.     double result;
  11867.     GetProperty(0x7, VT_R8, (void*)&result);
  11868.     return result;
  11869. }
  11870.  
  11871. void IInsert::SetColumnSpacing(double propVal)
  11872. {
  11873.     SetProperty(0x7, VT_R8, propVal);
  11874. }
  11875.  
  11876. double IInsert::GetRowSpacing()
  11877. {
  11878.     double result;
  11879.     GetProperty(0x8, VT_R8, (void*)&result);
  11880.     return result;
  11881. }
  11882.  
  11883. void IInsert::SetRowSpacing(double propVal)
  11884. {
  11885.     SetProperty(0x8, VT_R8, propVal);
  11886. }
  11887.  
  11888. LPDISPATCH IInsert::GetAttributes()
  11889. {
  11890.     LPDISPATCH result;
  11891.     GetProperty(0x9, VT_DISPATCH, (void*)&result);
  11892.     return result;
  11893. }
  11894.  
  11895. BOOL IInsert::GetHasAttributes()
  11896. {
  11897.     BOOL result;
  11898.     GetProperty(0xa, VT_BOOL, (void*)&result);
  11899.     return result;
  11900. }
  11901.  
  11902. /////////////////////////////////////////////////////////////////////////////
  11903. // IInsert operations
  11904.  
  11905. void IInsert::Redraw()
  11906. {
  11907.     InvokeHelper(0x30008, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  11908. }
  11909.  
  11910. void IInsert::Regen()
  11911. {
  11912.     InvokeHelper(0x30009, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  11913. }
  11914.  
  11915. void IInsert::Erase()
  11916. {
  11917.     InvokeHelper(0x3000a, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  11918. }
  11919.  
  11920. void IInsert::Delete()
  11921. {
  11922.     InvokeHelper(0x3000b, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  11923. }
  11924.  
  11925. void IInsert::Move(LPDISPATCH offset)
  11926. {
  11927.     static BYTE parms[] =
  11928.         VTS_DISPATCH;
  11929.     InvokeHelper(0x3000c, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  11930.          offset);
  11931. }
  11932.  
  11933. LPDISPATCH IInsert::Copy(LPDISPATCH offset)
  11934. {
  11935.     LPDISPATCH result;
  11936.     static BYTE parms[] =
  11937.         VTS_DISPATCH;
  11938.     InvokeHelper(0x3000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  11939.         offset);
  11940.     return result;
  11941. }
  11942.  
  11943. void IInsert::scale(LPDISPATCH basepoint, LPDISPATCH scale)
  11944. {
  11945.     static BYTE parms[] =
  11946.         VTS_DISPATCH VTS_DISPATCH;
  11947.     InvokeHelper(0x3000e, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  11948.          basepoint, scale);
  11949. }
  11950.  
  11951. void IInsert::ScaleIt(LPDISPATCH basepoint, LPDISPATCH scale)
  11952. {
  11953.     static BYTE parms[] =
  11954.         VTS_DISPATCH VTS_DISPATCH;
  11955.     InvokeHelper(0x3000f, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  11956.          basepoint, scale);
  11957. }
  11958.  
  11959. void IInsert::Rotate(LPDISPATCH basepoint, double Angle)
  11960. {
  11961.     static BYTE parms[] =
  11962.         VTS_DISPATCH VTS_R8;
  11963.     InvokeHelper(0x30010, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  11964.          basepoint, Angle);
  11965. }
  11966.  
  11967. void IInsert::Mirror(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  11968. {
  11969.     static BYTE parms[] =
  11970.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  11971.     InvokeHelper(0x30011, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  11972.          point1, point2, &MirrorText);
  11973. }
  11974.  
  11975. LPDISPATCH IInsert::MirrorCopy(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  11976. {
  11977.     LPDISPATCH result;
  11978.     static BYTE parms[] =
  11979.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  11980.     InvokeHelper(0x30012, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  11981.         point1, point2, &MirrorText);
  11982.     return result;
  11983. }
  11984.  
  11985. void IInsert::Dialog()
  11986. {
  11987.     InvokeHelper(0x30013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  11988. }
  11989.  
  11990. LPDISPATCH IInsert::Offset(LPDISPATCH vec, const VARIANT& Distance)
  11991. {
  11992.     LPDISPATCH result;
  11993.     static BYTE parms[] =
  11994.         VTS_DISPATCH VTS_VARIANT;
  11995.     InvokeHelper(0x30014, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  11996.         vec, &Distance);
  11997.     return result;
  11998. }
  11999.  
  12000. LPDISPATCH IInsert::Array(short numrows, short numcols, double rowspacing, double colspacing, double Rotation)
  12001. {
  12002.     LPDISPATCH result;
  12003.     static BYTE parms[] =
  12004.         VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8;
  12005.     InvokeHelper(0x30015, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  12006.         numrows, numcols, rowspacing, colspacing, Rotation);
  12007.     return result;
  12008. }
  12009.  
  12010. LPDISPATCH IInsert::Array3D(short numrows, short numcols, short numlevels, double rowspacing, double colspacing, double levelspacing, double Rotation)
  12011. {
  12012.     LPDISPATCH result;
  12013.     static BYTE parms[] =
  12014.         VTS_I2 VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8 VTS_R8;
  12015.     InvokeHelper(0x30016, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  12016.         numrows, numcols, numlevels, rowspacing, colspacing, levelspacing, Rotation);
  12017.     return result;
  12018. }
  12019.  
  12020. LPDISPATCH IInsert::PolarArray(short numitems, double fillangle, double angletween, LPDISPATCH Center, const VARIANT& refpoint)
  12021. {
  12022.     LPDISPATCH result;
  12023.     static BYTE parms[] =
  12024.         VTS_I2 VTS_R8 VTS_R8 VTS_DISPATCH VTS_VARIANT;
  12025.     InvokeHelper(0x30017, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  12026.         numitems, fillangle, angletween, Center, &refpoint);
  12027.     return result;
  12028. }
  12029.  
  12030. void IInsert::DisplayGrips()
  12031. {
  12032.     InvokeHelper(0x30018, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  12033. }
  12034.  
  12035. void IInsert::EraseGrips()
  12036. {
  12037.     InvokeHelper(0x30019, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  12038. }
  12039.  
  12040. LPDISPATCH IInsert::Snap2Endpoint(LPDISPATCH closeto)
  12041. {
  12042.     LPDISPATCH result;
  12043.     static BYTE parms[] =
  12044.         VTS_DISPATCH;
  12045.     InvokeHelper(0x20006, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  12046.         closeto);
  12047.     return result;
  12048. }
  12049.  
  12050. LPDISPATCH IInsert::Snap2Midpoint(LPDISPATCH closeto)
  12051. {
  12052.     LPDISPATCH result;
  12053.     static BYTE parms[] =
  12054.         VTS_DISPATCH;
  12055.     InvokeHelper(0x20007, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  12056.         closeto);
  12057.     return result;
  12058. }
  12059.  
  12060. LPDISPATCH IInsert::Snap2Center(LPDISPATCH closeto)
  12061. {
  12062.     LPDISPATCH result;
  12063.     static BYTE parms[] =
  12064.         VTS_DISPATCH;
  12065.     InvokeHelper(0x20008, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  12066.         closeto);
  12067.     return result;
  12068. }
  12069.  
  12070. LPDISPATCH IInsert::Snap2Nearest(LPDISPATCH closeto)
  12071. {
  12072.     LPDISPATCH result;
  12073.     static BYTE parms[] =
  12074.         VTS_DISPATCH;
  12075.     InvokeHelper(0x20009, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  12076.         closeto);
  12077.     return result;
  12078. }
  12079.  
  12080. LPDISPATCH IInsert::Snap2Point(LPDISPATCH closeto)
  12081. {
  12082.     LPDISPATCH result;
  12083.     static BYTE parms[] =
  12084.         VTS_DISPATCH;
  12085.     InvokeHelper(0x2000a, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  12086.         closeto);
  12087.     return result;
  12088. }
  12089.  
  12090. LPDISPATCH IInsert::Snap2Quadrant(LPDISPATCH closeto)
  12091. {
  12092.     LPDISPATCH result;
  12093.     static BYTE parms[] =
  12094.         VTS_DISPATCH;
  12095.     InvokeHelper(0x2000b, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  12096.         closeto);
  12097.     return result;
  12098. }
  12099.  
  12100. LPDISPATCH IInsert::Snap2Insertion(LPDISPATCH closeto)
  12101. {
  12102.     LPDISPATCH result;
  12103.     static BYTE parms[] =
  12104.         VTS_DISPATCH;
  12105.     InvokeHelper(0x2000c, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  12106.         closeto);
  12107.     return result;
  12108. }
  12109.  
  12110. LPDISPATCH IInsert::Snap2Perpendicular(LPDISPATCH closeto, LPDISPATCH prevpoint)
  12111. {
  12112.     LPDISPATCH result;
  12113.     static BYTE parms[] =
  12114.         VTS_DISPATCH VTS_DISPATCH;
  12115.     InvokeHelper(0x2000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  12116.         closeto, prevpoint);
  12117.     return result;
  12118. }
  12119.  
  12120. LPDISPATCH IInsert::Snap2Tangent(LPDISPATCH closeto, LPDISPATCH prevpoint)
  12121. {
  12122.     LPDISPATCH result;
  12123.     static BYTE parms[] =
  12124.         VTS_DISPATCH VTS_DISPATCH;
  12125.     InvokeHelper(0x2000e, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  12126.         closeto, prevpoint);
  12127.     return result;
  12128. }
  12129.  
  12130. LPDISPATCH IInsert::Intersection(LPDISPATCH Entity, const VARIANT& infinite1, const VARIANT& infinite2)
  12131. {
  12132.     LPDISPATCH result;
  12133.     static BYTE parms[] =
  12134.         VTS_DISPATCH VTS_VARIANT VTS_VARIANT;
  12135.     InvokeHelper(0x2000f, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  12136.         Entity, &infinite1, &infinite2);
  12137.     return result;
  12138. }
  12139.  
  12140. BOOL IInsert::ExtendToSet(LPDISPATCH point)
  12141. {
  12142.     BOOL result;
  12143.     static BYTE parms[] =
  12144.         VTS_DISPATCH;
  12145.     InvokeHelper(0x20010, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  12146.         point);
  12147.     return result;
  12148. }
  12149.  
  12150. BOOL IInsert::TrimToSet(LPDISPATCH point)
  12151. {
  12152.     BOOL result;
  12153.     static BYTE parms[] =
  12154.         VTS_DISPATCH;
  12155.     InvokeHelper(0x20011, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  12156.         point);
  12157.     return result;
  12158. }
  12159.  
  12160. BOOL IInsert::Break(LPDISPATCH point1, LPDISPATCH point2)
  12161. {
  12162.     BOOL result;
  12163.     static BYTE parms[] =
  12164.         VTS_DISPATCH VTS_DISPATCH;
  12165.     InvokeHelper(0x20012, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  12166.         point1, point2);
  12167.     return result;
  12168. }
  12169.  
  12170. void IInsert::Update()
  12171. {
  12172.     InvokeHelper(0x20013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  12173. }
  12174.  
  12175. void IInsert::UpdateNow()
  12176. {
  12177.     InvokeHelper(0x20014, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  12178. }
  12179.  
  12180. BOOL IInsert::Explode()
  12181. {
  12182.     BOOL result;
  12183.     InvokeHelper(0xb, DISPATCH_METHOD, VT_BOOL, (void*)&result, NULL);
  12184.     return result;
  12185. }
  12186.  
  12187.  
  12188. /////////////////////////////////////////////////////////////////////////////
  12189. // IText properties
  12190.  
  12191. LPDISPATCH IText::GetApplication()
  12192. {
  12193.     LPDISPATCH result;
  12194.     GetProperty(0x40001, VT_DISPATCH, (void*)&result);
  12195.     return result;
  12196. }
  12197.  
  12198. LPDISPATCH IText::GetParent()
  12199. {
  12200.     LPDISPATCH result;
  12201.     GetProperty(0x40002, VT_DISPATCH, (void*)&result);
  12202.     return result;
  12203. }
  12204.  
  12205. LPDISPATCH IText::GetColor()
  12206. {
  12207.     LPDISPATCH result;
  12208.     GetProperty(0x30001, VT_DISPATCH, (void*)&result);
  12209.     return result;
  12210. }
  12211.  
  12212. void IText::SetColor(LPDISPATCH propVal)
  12213. {
  12214.     SetProperty(0x30001, VT_DISPATCH, propVal);
  12215. }
  12216.  
  12217. short IText::GetColorNumber()
  12218. {
  12219.     short result;
  12220.     GetProperty(0x30002, VT_I2, (void*)&result);
  12221.     return result;
  12222. }
  12223.  
  12224. void IText::SetColorNumber(short propVal)
  12225. {
  12226.     SetProperty(0x30002, VT_I2, propVal);
  12227. }
  12228.  
  12229. LPDISPATCH IText::GetLayer()
  12230. {
  12231.     LPDISPATCH result;
  12232.     GetProperty(0x30003, VT_DISPATCH, (void*)&result);
  12233.     return result;
  12234. }
  12235.  
  12236. void IText::SetLayer(LPDISPATCH propVal)
  12237. {
  12238.     SetProperty(0x30003, VT_DISPATCH, propVal);
  12239. }
  12240.  
  12241. LPDISPATCH IText::GetLinetype()
  12242. {
  12243.     LPDISPATCH result;
  12244.     GetProperty(0x30004, VT_DISPATCH, (void*)&result);
  12245.     return result;
  12246. }
  12247.  
  12248. void IText::SetLinetype(LPDISPATCH propVal)
  12249. {
  12250.     SetProperty(0x30004, VT_DISPATCH, propVal);
  12251. }
  12252.  
  12253. double IText::GetThickness()
  12254. {
  12255.     double result;
  12256.     GetProperty(0x30005, VT_R8, (void*)&result);
  12257.     return result;
  12258. }
  12259.  
  12260. void IText::SetThickness(double propVal)
  12261. {
  12262.     SetProperty(0x30005, VT_R8, propVal);
  12263. }
  12264.  
  12265. BOOL IText::GetPaperSpace()
  12266. {
  12267.     BOOL result;
  12268.     GetProperty(0x30006, VT_BOOL, (void*)&result);
  12269.     return result;
  12270. }
  12271.  
  12272. void IText::SetPaperSpace(BOOL propVal)
  12273. {
  12274.     SetProperty(0x30006, VT_BOOL, propVal);
  12275. }
  12276.  
  12277. LPDISPATCH IText::GetNormal()
  12278. {
  12279.     LPDISPATCH result;
  12280.     GetProperty(0x30007, VT_DISPATCH, (void*)&result);
  12281.     return result;
  12282. }
  12283.  
  12284. void IText::SetNormal(LPDISPATCH propVal)
  12285. {
  12286.     SetProperty(0x30007, VT_DISPATCH, propVal);
  12287. }
  12288.  
  12289. CString IText::GetName()
  12290. {
  12291.     CString result;
  12292.     GetProperty(0x20001, VT_BSTR, (void*)&result);
  12293.     return result;
  12294. }
  12295.  
  12296. short IText::GetType()
  12297. {
  12298.     short result;
  12299.     GetProperty(0x20002, VT_I2, (void*)&result);
  12300.     return result;
  12301. }
  12302.  
  12303. CString IText::GetHandle()
  12304. {
  12305.     CString result;
  12306.     GetProperty(0x20003, VT_BSTR, (void*)&result);
  12307.     return result;
  12308. }
  12309.  
  12310. BOOL IText::GetHasXData()
  12311. {
  12312.     BOOL result;
  12313.     GetProperty(0x20004, VT_BOOL, (void*)&result);
  12314.     return result;
  12315. }
  12316.  
  12317. LPDISPATCH IText::GetXData()
  12318. {
  12319.     LPDISPATCH result;
  12320.     GetProperty(0x20005, VT_DISPATCH, (void*)&result);
  12321.     return result;
  12322. }
  12323.  
  12324. BOOL IText::GetAutoDraw()
  12325. {
  12326.     BOOL result;
  12327.     GetProperty(0x20015, VT_BOOL, (void*)&result);
  12328.     return result;
  12329. }
  12330.  
  12331. void IText::SetAutoDraw(BOOL propVal)
  12332. {
  12333.     SetProperty(0x20015, VT_BOOL, propVal);
  12334. }
  12335.  
  12336. LPDISPATCH IText::GetAlignPoint()
  12337. {
  12338.     LPDISPATCH result;
  12339.     GetProperty(0x10001, VT_DISPATCH, (void*)&result);
  12340.     return result;
  12341. }
  12342.  
  12343. void IText::SetAlignPoint(LPDISPATCH propVal)
  12344. {
  12345.     SetProperty(0x10001, VT_DISPATCH, propVal);
  12346. }
  12347.  
  12348. BOOL IText::GetBackwards()
  12349. {
  12350.     BOOL result;
  12351.     GetProperty(0x10002, VT_BOOL, (void*)&result);
  12352.     return result;
  12353. }
  12354.  
  12355. void IText::SetBackwards(BOOL propVal)
  12356. {
  12357.     SetProperty(0x10002, VT_BOOL, propVal);
  12358. }
  12359.  
  12360. double IText::GetHeight()
  12361. {
  12362.     double result;
  12363.     GetProperty(0x10003, VT_R8, (void*)&result);
  12364.     return result;
  12365. }
  12366.  
  12367. void IText::SetHeight(double propVal)
  12368. {
  12369.     SetProperty(0x10003, VT_R8, propVal);
  12370. }
  12371.  
  12372. short IText::GetHorizontal()
  12373. {
  12374.     short result;
  12375.     GetProperty(0x10004, VT_I2, (void*)&result);
  12376.     return result;
  12377. }
  12378.  
  12379. void IText::SetHorizontal(short propVal)
  12380. {
  12381.     SetProperty(0x10004, VT_I2, propVal);
  12382. }
  12383.  
  12384. double IText::GetObliqueAngle()
  12385. {
  12386.     double result;
  12387.     GetProperty(0x10005, VT_R8, (void*)&result);
  12388.     return result;
  12389. }
  12390.  
  12391. void IText::SetObliqueAngle(double propVal)
  12392. {
  12393.     SetProperty(0x10005, VT_R8, propVal);
  12394. }
  12395.  
  12396. double IText::GetRotation()
  12397. {
  12398.     double result;
  12399.     GetProperty(0x10006, VT_R8, (void*)&result);
  12400.     return result;
  12401. }
  12402.  
  12403. void IText::SetRotation(double propVal)
  12404. {
  12405.     SetProperty(0x10006, VT_R8, propVal);
  12406. }
  12407.  
  12408. LPDISPATCH IText::GetWhere()
  12409. {
  12410.     LPDISPATCH result;
  12411.     GetProperty(0x10007, VT_DISPATCH, (void*)&result);
  12412.     return result;
  12413. }
  12414.  
  12415. void IText::SetWhere(LPDISPATCH propVal)
  12416. {
  12417.     SetProperty(0x10007, VT_DISPATCH, propVal);
  12418. }
  12419.  
  12420. LPDISPATCH IText::GetWhereJustified()
  12421. {
  12422.     LPDISPATCH result;
  12423.     GetProperty(0x10008, VT_DISPATCH, (void*)&result);
  12424.     return result;
  12425. }
  12426.  
  12427. void IText::SetWhereJustified(LPDISPATCH propVal)
  12428. {
  12429.     SetProperty(0x10008, VT_DISPATCH, propVal);
  12430. }
  12431.  
  12432. CString IText::GetText()
  12433. {
  12434.     CString result;
  12435.     GetProperty(0x10009, VT_BSTR, (void*)&result);
  12436.     return result;
  12437. }
  12438.  
  12439. void IText::SetText(LPCTSTR propVal)
  12440. {
  12441.     SetProperty(0x10009, VT_BSTR, propVal);
  12442. }
  12443.  
  12444. LPDISPATCH IText::GetStyle()
  12445. {
  12446.     LPDISPATCH result;
  12447.     GetProperty(0x1000a, VT_DISPATCH, (void*)&result);
  12448.     return result;
  12449. }
  12450.  
  12451. void IText::SetStyle(LPDISPATCH propVal)
  12452. {
  12453.     SetProperty(0x1000a, VT_DISPATCH, propVal);
  12454. }
  12455.  
  12456. BOOL IText::GetUpsideDown()
  12457. {
  12458.     BOOL result;
  12459.     GetProperty(0x1000b, VT_BOOL, (void*)&result);
  12460.     return result;
  12461. }
  12462.  
  12463. void IText::SetUpsideDown(BOOL propVal)
  12464. {
  12465.     SetProperty(0x1000b, VT_BOOL, propVal);
  12466. }
  12467.  
  12468. short IText::GetVertical()
  12469. {
  12470.     short result;
  12471.     GetProperty(0x1000c, VT_I2, (void*)&result);
  12472.     return result;
  12473. }
  12474.  
  12475. void IText::SetVertical(short propVal)
  12476. {
  12477.     SetProperty(0x1000c, VT_I2, propVal);
  12478. }
  12479.  
  12480. double IText::GetXScaling()
  12481. {
  12482.     double result;
  12483.     GetProperty(0x1000d, VT_R8, (void*)&result);
  12484.     return result;
  12485. }
  12486.  
  12487. void IText::SetXScaling(double propVal)
  12488. {
  12489.     SetProperty(0x1000d, VT_R8, propVal);
  12490. }
  12491.  
  12492. CString IText::Get_Name()
  12493. {
  12494.     CString result;
  12495.     GetProperty(0x0, VT_BSTR, (void*)&result);
  12496.     return result;
  12497. }
  12498.  
  12499. /////////////////////////////////////////////////////////////////////////////
  12500. // IText operations
  12501.  
  12502. void IText::Redraw()
  12503. {
  12504.     InvokeHelper(0x30008, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  12505. }
  12506.  
  12507. void IText::Regen()
  12508. {
  12509.     InvokeHelper(0x30009, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  12510. }
  12511.  
  12512. void IText::Erase()
  12513. {
  12514.     InvokeHelper(0x3000a, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  12515. }
  12516.  
  12517. void IText::Delete()
  12518. {
  12519.     InvokeHelper(0x3000b, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  12520. }
  12521.  
  12522. void IText::Move(LPDISPATCH offset)
  12523. {
  12524.     static BYTE parms[] =
  12525.         VTS_DISPATCH;
  12526.     InvokeHelper(0x3000c, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  12527.          offset);
  12528. }
  12529.  
  12530. LPDISPATCH IText::Copy(LPDISPATCH offset)
  12531. {
  12532.     LPDISPATCH result;
  12533.     static BYTE parms[] =
  12534.         VTS_DISPATCH;
  12535.     InvokeHelper(0x3000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  12536.         offset);
  12537.     return result;
  12538. }
  12539.  
  12540. void IText::scale(LPDISPATCH basepoint, LPDISPATCH scale)
  12541. {
  12542.     static BYTE parms[] =
  12543.         VTS_DISPATCH VTS_DISPATCH;
  12544.     InvokeHelper(0x3000e, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  12545.          basepoint, scale);
  12546. }
  12547.  
  12548. void IText::ScaleIt(LPDISPATCH basepoint, LPDISPATCH scale)
  12549. {
  12550.     static BYTE parms[] =
  12551.         VTS_DISPATCH VTS_DISPATCH;
  12552.     InvokeHelper(0x3000f, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  12553.          basepoint, scale);
  12554. }
  12555.  
  12556. void IText::Rotate(LPDISPATCH basepoint, double Angle)
  12557. {
  12558.     static BYTE parms[] =
  12559.         VTS_DISPATCH VTS_R8;
  12560.     InvokeHelper(0x30010, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  12561.          basepoint, Angle);
  12562. }
  12563.  
  12564. void IText::Mirror(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  12565. {
  12566.     static BYTE parms[] =
  12567.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  12568.     InvokeHelper(0x30011, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  12569.          point1, point2, &MirrorText);
  12570. }
  12571.  
  12572. LPDISPATCH IText::MirrorCopy(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  12573. {
  12574.     LPDISPATCH result;
  12575.     static BYTE parms[] =
  12576.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  12577.     InvokeHelper(0x30012, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  12578.         point1, point2, &MirrorText);
  12579.     return result;
  12580. }
  12581.  
  12582. void IText::Dialog()
  12583. {
  12584.     InvokeHelper(0x30013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  12585. }
  12586.  
  12587. LPDISPATCH IText::Offset(LPDISPATCH vec, const VARIANT& Distance)
  12588. {
  12589.     LPDISPATCH result;
  12590.     static BYTE parms[] =
  12591.         VTS_DISPATCH VTS_VARIANT;
  12592.     InvokeHelper(0x30014, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  12593.         vec, &Distance);
  12594.     return result;
  12595. }
  12596.  
  12597. LPDISPATCH IText::Array(short numrows, short numcols, double rowspacing, double colspacing, double Rotation)
  12598. {
  12599.     LPDISPATCH result;
  12600.     static BYTE parms[] =
  12601.         VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8;
  12602.     InvokeHelper(0x30015, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  12603.         numrows, numcols, rowspacing, colspacing, Rotation);
  12604.     return result;
  12605. }
  12606.  
  12607. LPDISPATCH IText::Array3D(short numrows, short numcols, short numlevels, double rowspacing, double colspacing, double levelspacing, double Rotation)
  12608. {
  12609.     LPDISPATCH result;
  12610.     static BYTE parms[] =
  12611.         VTS_I2 VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8 VTS_R8;
  12612.     InvokeHelper(0x30016, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  12613.         numrows, numcols, numlevels, rowspacing, colspacing, levelspacing, Rotation);
  12614.     return result;
  12615. }
  12616.  
  12617. LPDISPATCH IText::PolarArray(short numitems, double fillangle, double angletween, LPDISPATCH Center, const VARIANT& refpoint)
  12618. {
  12619.     LPDISPATCH result;
  12620.     static BYTE parms[] =
  12621.         VTS_I2 VTS_R8 VTS_R8 VTS_DISPATCH VTS_VARIANT;
  12622.     InvokeHelper(0x30017, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  12623.         numitems, fillangle, angletween, Center, &refpoint);
  12624.     return result;
  12625. }
  12626.  
  12627. void IText::DisplayGrips()
  12628. {
  12629.     InvokeHelper(0x30018, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  12630. }
  12631.  
  12632. void IText::EraseGrips()
  12633. {
  12634.     InvokeHelper(0x30019, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  12635. }
  12636.  
  12637. LPDISPATCH IText::Snap2Endpoint(LPDISPATCH closeto)
  12638. {
  12639.     LPDISPATCH result;
  12640.     static BYTE parms[] =
  12641.         VTS_DISPATCH;
  12642.     InvokeHelper(0x20006, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  12643.         closeto);
  12644.     return result;
  12645. }
  12646.  
  12647. LPDISPATCH IText::Snap2Midpoint(LPDISPATCH closeto)
  12648. {
  12649.     LPDISPATCH result;
  12650.     static BYTE parms[] =
  12651.         VTS_DISPATCH;
  12652.     InvokeHelper(0x20007, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  12653.         closeto);
  12654.     return result;
  12655. }
  12656.  
  12657. LPDISPATCH IText::Snap2Center(LPDISPATCH closeto)
  12658. {
  12659.     LPDISPATCH result;
  12660.     static BYTE parms[] =
  12661.         VTS_DISPATCH;
  12662.     InvokeHelper(0x20008, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  12663.         closeto);
  12664.     return result;
  12665. }
  12666.  
  12667. LPDISPATCH IText::Snap2Nearest(LPDISPATCH closeto)
  12668. {
  12669.     LPDISPATCH result;
  12670.     static BYTE parms[] =
  12671.         VTS_DISPATCH;
  12672.     InvokeHelper(0x20009, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  12673.         closeto);
  12674.     return result;
  12675. }
  12676.  
  12677. LPDISPATCH IText::Snap2Point(LPDISPATCH closeto)
  12678. {
  12679.     LPDISPATCH result;
  12680.     static BYTE parms[] =
  12681.         VTS_DISPATCH;
  12682.     InvokeHelper(0x2000a, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  12683.         closeto);
  12684.     return result;
  12685. }
  12686.  
  12687. LPDISPATCH IText::Snap2Quadrant(LPDISPATCH closeto)
  12688. {
  12689.     LPDISPATCH result;
  12690.     static BYTE parms[] =
  12691.         VTS_DISPATCH;
  12692.     InvokeHelper(0x2000b, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  12693.         closeto);
  12694.     return result;
  12695. }
  12696.  
  12697. LPDISPATCH IText::Snap2Insertion(LPDISPATCH closeto)
  12698. {
  12699.     LPDISPATCH result;
  12700.     static BYTE parms[] =
  12701.         VTS_DISPATCH;
  12702.     InvokeHelper(0x2000c, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  12703.         closeto);
  12704.     return result;
  12705. }
  12706.  
  12707. LPDISPATCH IText::Snap2Perpendicular(LPDISPATCH closeto, LPDISPATCH prevpoint)
  12708. {
  12709.     LPDISPATCH result;
  12710.     static BYTE parms[] =
  12711.         VTS_DISPATCH VTS_DISPATCH;
  12712.     InvokeHelper(0x2000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  12713.         closeto, prevpoint);
  12714.     return result;
  12715. }
  12716.  
  12717. LPDISPATCH IText::Snap2Tangent(LPDISPATCH closeto, LPDISPATCH prevpoint)
  12718. {
  12719.     LPDISPATCH result;
  12720.     static BYTE parms[] =
  12721.         VTS_DISPATCH VTS_DISPATCH;
  12722.     InvokeHelper(0x2000e, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  12723.         closeto, prevpoint);
  12724.     return result;
  12725. }
  12726.  
  12727. LPDISPATCH IText::Intersection(LPDISPATCH Entity, const VARIANT& infinite1, const VARIANT& infinite2)
  12728. {
  12729.     LPDISPATCH result;
  12730.     static BYTE parms[] =
  12731.         VTS_DISPATCH VTS_VARIANT VTS_VARIANT;
  12732.     InvokeHelper(0x2000f, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  12733.         Entity, &infinite1, &infinite2);
  12734.     return result;
  12735. }
  12736.  
  12737. BOOL IText::ExtendToSet(LPDISPATCH point)
  12738. {
  12739.     BOOL result;
  12740.     static BYTE parms[] =
  12741.         VTS_DISPATCH;
  12742.     InvokeHelper(0x20010, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  12743.         point);
  12744.     return result;
  12745. }
  12746.  
  12747. BOOL IText::TrimToSet(LPDISPATCH point)
  12748. {
  12749.     BOOL result;
  12750.     static BYTE parms[] =
  12751.         VTS_DISPATCH;
  12752.     InvokeHelper(0x20011, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  12753.         point);
  12754.     return result;
  12755. }
  12756.  
  12757. BOOL IText::Break(LPDISPATCH point1, LPDISPATCH point2)
  12758. {
  12759.     BOOL result;
  12760.     static BYTE parms[] =
  12761.         VTS_DISPATCH VTS_DISPATCH;
  12762.     InvokeHelper(0x20012, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  12763.         point1, point2);
  12764.     return result;
  12765. }
  12766.  
  12767. void IText::Update()
  12768. {
  12769.     InvokeHelper(0x20013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  12770. }
  12771.  
  12772. void IText::UpdateNow()
  12773. {
  12774.     InvokeHelper(0x20014, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  12775. }
  12776.  
  12777.  
  12778. /////////////////////////////////////////////////////////////////////////////
  12779. // IAttdef properties
  12780.  
  12781. LPDISPATCH IAttdef::GetApplication()
  12782. {
  12783.     LPDISPATCH result;
  12784.     GetProperty(0x40001, VT_DISPATCH, (void*)&result);
  12785.     return result;
  12786. }
  12787.  
  12788. LPDISPATCH IAttdef::GetParent()
  12789. {
  12790.     LPDISPATCH result;
  12791.     GetProperty(0x40002, VT_DISPATCH, (void*)&result);
  12792.     return result;
  12793. }
  12794.  
  12795. LPDISPATCH IAttdef::GetColor()
  12796. {
  12797.     LPDISPATCH result;
  12798.     GetProperty(0x30001, VT_DISPATCH, (void*)&result);
  12799.     return result;
  12800. }
  12801.  
  12802. void IAttdef::SetColor(LPDISPATCH propVal)
  12803. {
  12804.     SetProperty(0x30001, VT_DISPATCH, propVal);
  12805. }
  12806.  
  12807. short IAttdef::GetColorNumber()
  12808. {
  12809.     short result;
  12810.     GetProperty(0x30002, VT_I2, (void*)&result);
  12811.     return result;
  12812. }
  12813.  
  12814. void IAttdef::SetColorNumber(short propVal)
  12815. {
  12816.     SetProperty(0x30002, VT_I2, propVal);
  12817. }
  12818.  
  12819. LPDISPATCH IAttdef::GetLayer()
  12820. {
  12821.     LPDISPATCH result;
  12822.     GetProperty(0x30003, VT_DISPATCH, (void*)&result);
  12823.     return result;
  12824. }
  12825.  
  12826. void IAttdef::SetLayer(LPDISPATCH propVal)
  12827. {
  12828.     SetProperty(0x30003, VT_DISPATCH, propVal);
  12829. }
  12830.  
  12831. LPDISPATCH IAttdef::GetLinetype()
  12832. {
  12833.     LPDISPATCH result;
  12834.     GetProperty(0x30004, VT_DISPATCH, (void*)&result);
  12835.     return result;
  12836. }
  12837.  
  12838. void IAttdef::SetLinetype(LPDISPATCH propVal)
  12839. {
  12840.     SetProperty(0x30004, VT_DISPATCH, propVal);
  12841. }
  12842.  
  12843. double IAttdef::GetThickness()
  12844. {
  12845.     double result;
  12846.     GetProperty(0x30005, VT_R8, (void*)&result);
  12847.     return result;
  12848. }
  12849.  
  12850. void IAttdef::SetThickness(double propVal)
  12851. {
  12852.     SetProperty(0x30005, VT_R8, propVal);
  12853. }
  12854.  
  12855. BOOL IAttdef::GetPaperSpace()
  12856. {
  12857.     BOOL result;
  12858.     GetProperty(0x30006, VT_BOOL, (void*)&result);
  12859.     return result;
  12860. }
  12861.  
  12862. void IAttdef::SetPaperSpace(BOOL propVal)
  12863. {
  12864.     SetProperty(0x30006, VT_BOOL, propVal);
  12865. }
  12866.  
  12867. LPDISPATCH IAttdef::GetNormal()
  12868. {
  12869.     LPDISPATCH result;
  12870.     GetProperty(0x30007, VT_DISPATCH, (void*)&result);
  12871.     return result;
  12872. }
  12873.  
  12874. void IAttdef::SetNormal(LPDISPATCH propVal)
  12875. {
  12876.     SetProperty(0x30007, VT_DISPATCH, propVal);
  12877. }
  12878.  
  12879. CString IAttdef::GetName()
  12880. {
  12881.     CString result;
  12882.     GetProperty(0x20001, VT_BSTR, (void*)&result);
  12883.     return result;
  12884. }
  12885.  
  12886. short IAttdef::GetType()
  12887. {
  12888.     short result;
  12889.     GetProperty(0x20002, VT_I2, (void*)&result);
  12890.     return result;
  12891. }
  12892.  
  12893. CString IAttdef::GetHandle()
  12894. {
  12895.     CString result;
  12896.     GetProperty(0x20003, VT_BSTR, (void*)&result);
  12897.     return result;
  12898. }
  12899.  
  12900. BOOL IAttdef::GetHasXData()
  12901. {
  12902.     BOOL result;
  12903.     GetProperty(0x20004, VT_BOOL, (void*)&result);
  12904.     return result;
  12905. }
  12906.  
  12907. LPDISPATCH IAttdef::GetXData()
  12908. {
  12909.     LPDISPATCH result;
  12910.     GetProperty(0x20005, VT_DISPATCH, (void*)&result);
  12911.     return result;
  12912. }
  12913.  
  12914. BOOL IAttdef::GetAutoDraw()
  12915. {
  12916.     BOOL result;
  12917.     GetProperty(0x20015, VT_BOOL, (void*)&result);
  12918.     return result;
  12919. }
  12920.  
  12921. void IAttdef::SetAutoDraw(BOOL propVal)
  12922. {
  12923.     SetProperty(0x20015, VT_BOOL, propVal);
  12924. }
  12925.  
  12926. LPDISPATCH IAttdef::GetAlignPoint()
  12927. {
  12928.     LPDISPATCH result;
  12929.     GetProperty(0x10001, VT_DISPATCH, (void*)&result);
  12930.     return result;
  12931. }
  12932.  
  12933. void IAttdef::SetAlignPoint(LPDISPATCH propVal)
  12934. {
  12935.     SetProperty(0x10001, VT_DISPATCH, propVal);
  12936. }
  12937.  
  12938. BOOL IAttdef::GetBackwards()
  12939. {
  12940.     BOOL result;
  12941.     GetProperty(0x10002, VT_BOOL, (void*)&result);
  12942.     return result;
  12943. }
  12944.  
  12945. void IAttdef::SetBackwards(BOOL propVal)
  12946. {
  12947.     SetProperty(0x10002, VT_BOOL, propVal);
  12948. }
  12949.  
  12950. double IAttdef::GetHeight()
  12951. {
  12952.     double result;
  12953.     GetProperty(0x10003, VT_R8, (void*)&result);
  12954.     return result;
  12955. }
  12956.  
  12957. void IAttdef::SetHeight(double propVal)
  12958. {
  12959.     SetProperty(0x10003, VT_R8, propVal);
  12960. }
  12961.  
  12962. short IAttdef::GetHorizontal()
  12963. {
  12964.     short result;
  12965.     GetProperty(0x10004, VT_I2, (void*)&result);
  12966.     return result;
  12967. }
  12968.  
  12969. void IAttdef::SetHorizontal(short propVal)
  12970. {
  12971.     SetProperty(0x10004, VT_I2, propVal);
  12972. }
  12973.  
  12974. double IAttdef::GetObliqueAngle()
  12975. {
  12976.     double result;
  12977.     GetProperty(0x10005, VT_R8, (void*)&result);
  12978.     return result;
  12979. }
  12980.  
  12981. void IAttdef::SetObliqueAngle(double propVal)
  12982. {
  12983.     SetProperty(0x10005, VT_R8, propVal);
  12984. }
  12985.  
  12986. double IAttdef::GetRotation()
  12987. {
  12988.     double result;
  12989.     GetProperty(0x10006, VT_R8, (void*)&result);
  12990.     return result;
  12991. }
  12992.  
  12993. void IAttdef::SetRotation(double propVal)
  12994. {
  12995.     SetProperty(0x10006, VT_R8, propVal);
  12996. }
  12997.  
  12998. LPDISPATCH IAttdef::GetWhere()
  12999. {
  13000.     LPDISPATCH result;
  13001.     GetProperty(0x10007, VT_DISPATCH, (void*)&result);
  13002.     return result;
  13003. }
  13004.  
  13005. void IAttdef::SetWhere(LPDISPATCH propVal)
  13006. {
  13007.     SetProperty(0x10007, VT_DISPATCH, propVal);
  13008. }
  13009.  
  13010. LPDISPATCH IAttdef::GetWhereJustified()
  13011. {
  13012.     LPDISPATCH result;
  13013.     GetProperty(0x10008, VT_DISPATCH, (void*)&result);
  13014.     return result;
  13015. }
  13016.  
  13017. void IAttdef::SetWhereJustified(LPDISPATCH propVal)
  13018. {
  13019.     SetProperty(0x10008, VT_DISPATCH, propVal);
  13020. }
  13021.  
  13022. CString IAttdef::GetText()
  13023. {
  13024.     CString result;
  13025.     GetProperty(0x10009, VT_BSTR, (void*)&result);
  13026.     return result;
  13027. }
  13028.  
  13029. void IAttdef::SetText(LPCTSTR propVal)
  13030. {
  13031.     SetProperty(0x10009, VT_BSTR, propVal);
  13032. }
  13033.  
  13034. LPDISPATCH IAttdef::GetStyle()
  13035. {
  13036.     LPDISPATCH result;
  13037.     GetProperty(0x1000a, VT_DISPATCH, (void*)&result);
  13038.     return result;
  13039. }
  13040.  
  13041. void IAttdef::SetStyle(LPDISPATCH propVal)
  13042. {
  13043.     SetProperty(0x1000a, VT_DISPATCH, propVal);
  13044. }
  13045.  
  13046. BOOL IAttdef::GetUpsideDown()
  13047. {
  13048.     BOOL result;
  13049.     GetProperty(0x1000b, VT_BOOL, (void*)&result);
  13050.     return result;
  13051. }
  13052.  
  13053. void IAttdef::SetUpsideDown(BOOL propVal)
  13054. {
  13055.     SetProperty(0x1000b, VT_BOOL, propVal);
  13056. }
  13057.  
  13058. short IAttdef::GetVertical()
  13059. {
  13060.     short result;
  13061.     GetProperty(0x1000c, VT_I2, (void*)&result);
  13062.     return result;
  13063. }
  13064.  
  13065. void IAttdef::SetVertical(short propVal)
  13066. {
  13067.     SetProperty(0x1000c, VT_I2, propVal);
  13068. }
  13069.  
  13070. double IAttdef::GetXScaling()
  13071. {
  13072.     double result;
  13073.     GetProperty(0x1000d, VT_R8, (void*)&result);
  13074.     return result;
  13075. }
  13076.  
  13077. void IAttdef::SetXScaling(double propVal)
  13078. {
  13079.     SetProperty(0x1000d, VT_R8, propVal);
  13080. }
  13081.  
  13082. CString IAttdef::Get_Name()
  13083. {
  13084.     CString result;
  13085.     GetProperty(0x0, VT_BSTR, (void*)&result);
  13086.     return result;
  13087. }
  13088.  
  13089. BOOL IAttdef::GetVisible()
  13090. {
  13091.     BOOL result;
  13092.     GetProperty(0x1, VT_BOOL, (void*)&result);
  13093.     return result;
  13094. }
  13095.  
  13096. void IAttdef::SetVisible(BOOL propVal)
  13097. {
  13098.     SetProperty(0x1, VT_BOOL, propVal);
  13099. }
  13100.  
  13101. BOOL IAttdef::GetConstant()
  13102. {
  13103.     BOOL result;
  13104.     GetProperty(0x2, VT_BOOL, (void*)&result);
  13105.     return result;
  13106. }
  13107.  
  13108. void IAttdef::SetConstant(BOOL propVal)
  13109. {
  13110.     SetProperty(0x2, VT_BOOL, propVal);
  13111. }
  13112.  
  13113. BOOL IAttdef::GetVerify()
  13114. {
  13115.     BOOL result;
  13116.     GetProperty(0x3, VT_BOOL, (void*)&result);
  13117.     return result;
  13118. }
  13119.  
  13120. void IAttdef::SetVerify(BOOL propVal)
  13121. {
  13122.     SetProperty(0x3, VT_BOOL, propVal);
  13123. }
  13124.  
  13125. BOOL IAttdef::GetPreset()
  13126. {
  13127.     BOOL result;
  13128.     GetProperty(0x4, VT_BOOL, (void*)&result);
  13129.     return result;
  13130. }
  13131.  
  13132. void IAttdef::SetPreset(BOOL propVal)
  13133. {
  13134.     SetProperty(0x4, VT_BOOL, propVal);
  13135. }
  13136.  
  13137. CString IAttdef::GetTag()
  13138. {
  13139.     CString result;
  13140.     GetProperty(0x5, VT_BSTR, (void*)&result);
  13141.     return result;
  13142. }
  13143.  
  13144. void IAttdef::SetTag(LPCTSTR propVal)
  13145. {
  13146.     SetProperty(0x5, VT_BSTR, propVal);
  13147. }
  13148.  
  13149. CString IAttdef::GetPrompt()
  13150. {
  13151.     CString result;
  13152.     GetProperty(0x6, VT_BSTR, (void*)&result);
  13153.     return result;
  13154. }
  13155.  
  13156. void IAttdef::SetPrompt(LPCTSTR propVal)
  13157. {
  13158.     SetProperty(0x6, VT_BSTR, propVal);
  13159. }
  13160.  
  13161. /////////////////////////////////////////////////////////////////////////////
  13162. // IAttdef operations
  13163.  
  13164. void IAttdef::Redraw()
  13165. {
  13166.     InvokeHelper(0x30008, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  13167. }
  13168.  
  13169. void IAttdef::Regen()
  13170. {
  13171.     InvokeHelper(0x30009, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  13172. }
  13173.  
  13174. void IAttdef::Erase()
  13175. {
  13176.     InvokeHelper(0x3000a, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  13177. }
  13178.  
  13179. void IAttdef::Delete()
  13180. {
  13181.     InvokeHelper(0x3000b, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  13182. }
  13183.  
  13184. void IAttdef::Move(LPDISPATCH offset)
  13185. {
  13186.     static BYTE parms[] =
  13187.         VTS_DISPATCH;
  13188.     InvokeHelper(0x3000c, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  13189.          offset);
  13190. }
  13191.  
  13192. LPDISPATCH IAttdef::Copy(LPDISPATCH offset)
  13193. {
  13194.     LPDISPATCH result;
  13195.     static BYTE parms[] =
  13196.         VTS_DISPATCH;
  13197.     InvokeHelper(0x3000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  13198.         offset);
  13199.     return result;
  13200. }
  13201.  
  13202. void IAttdef::scale(LPDISPATCH basepoint, LPDISPATCH scale)
  13203. {
  13204.     static BYTE parms[] =
  13205.         VTS_DISPATCH VTS_DISPATCH;
  13206.     InvokeHelper(0x3000e, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  13207.          basepoint, scale);
  13208. }
  13209.  
  13210. void IAttdef::ScaleIt(LPDISPATCH basepoint, LPDISPATCH scale)
  13211. {
  13212.     static BYTE parms[] =
  13213.         VTS_DISPATCH VTS_DISPATCH;
  13214.     InvokeHelper(0x3000f, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  13215.          basepoint, scale);
  13216. }
  13217.  
  13218. void IAttdef::Rotate(LPDISPATCH basepoint, double Angle)
  13219. {
  13220.     static BYTE parms[] =
  13221.         VTS_DISPATCH VTS_R8;
  13222.     InvokeHelper(0x30010, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  13223.          basepoint, Angle);
  13224. }
  13225.  
  13226. void IAttdef::Mirror(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  13227. {
  13228.     static BYTE parms[] =
  13229.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  13230.     InvokeHelper(0x30011, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  13231.          point1, point2, &MirrorText);
  13232. }
  13233.  
  13234. LPDISPATCH IAttdef::MirrorCopy(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  13235. {
  13236.     LPDISPATCH result;
  13237.     static BYTE parms[] =
  13238.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  13239.     InvokeHelper(0x30012, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  13240.         point1, point2, &MirrorText);
  13241.     return result;
  13242. }
  13243.  
  13244. void IAttdef::Dialog()
  13245. {
  13246.     InvokeHelper(0x30013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  13247. }
  13248.  
  13249. LPDISPATCH IAttdef::Offset(LPDISPATCH vec, const VARIANT& Distance)
  13250. {
  13251.     LPDISPATCH result;
  13252.     static BYTE parms[] =
  13253.         VTS_DISPATCH VTS_VARIANT;
  13254.     InvokeHelper(0x30014, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  13255.         vec, &Distance);
  13256.     return result;
  13257. }
  13258.  
  13259. LPDISPATCH IAttdef::Array(short numrows, short numcols, double rowspacing, double colspacing, double Rotation)
  13260. {
  13261.     LPDISPATCH result;
  13262.     static BYTE parms[] =
  13263.         VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8;
  13264.     InvokeHelper(0x30015, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  13265.         numrows, numcols, rowspacing, colspacing, Rotation);
  13266.     return result;
  13267. }
  13268.  
  13269. LPDISPATCH IAttdef::Array3D(short numrows, short numcols, short numlevels, double rowspacing, double colspacing, double levelspacing, double Rotation)
  13270. {
  13271.     LPDISPATCH result;
  13272.     static BYTE parms[] =
  13273.         VTS_I2 VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8 VTS_R8;
  13274.     InvokeHelper(0x30016, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  13275.         numrows, numcols, numlevels, rowspacing, colspacing, levelspacing, Rotation);
  13276.     return result;
  13277. }
  13278.  
  13279. LPDISPATCH IAttdef::PolarArray(short numitems, double fillangle, double angletween, LPDISPATCH Center, const VARIANT& refpoint)
  13280. {
  13281.     LPDISPATCH result;
  13282.     static BYTE parms[] =
  13283.         VTS_I2 VTS_R8 VTS_R8 VTS_DISPATCH VTS_VARIANT;
  13284.     InvokeHelper(0x30017, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  13285.         numitems, fillangle, angletween, Center, &refpoint);
  13286.     return result;
  13287. }
  13288.  
  13289. void IAttdef::DisplayGrips()
  13290. {
  13291.     InvokeHelper(0x30018, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  13292. }
  13293.  
  13294. void IAttdef::EraseGrips()
  13295. {
  13296.     InvokeHelper(0x30019, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  13297. }
  13298.  
  13299. LPDISPATCH IAttdef::Snap2Endpoint(LPDISPATCH closeto)
  13300. {
  13301.     LPDISPATCH result;
  13302.     static BYTE parms[] =
  13303.         VTS_DISPATCH;
  13304.     InvokeHelper(0x20006, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  13305.         closeto);
  13306.     return result;
  13307. }
  13308.  
  13309. LPDISPATCH IAttdef::Snap2Midpoint(LPDISPATCH closeto)
  13310. {
  13311.     LPDISPATCH result;
  13312.     static BYTE parms[] =
  13313.         VTS_DISPATCH;
  13314.     InvokeHelper(0x20007, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  13315.         closeto);
  13316.     return result;
  13317. }
  13318.  
  13319. LPDISPATCH IAttdef::Snap2Center(LPDISPATCH closeto)
  13320. {
  13321.     LPDISPATCH result;
  13322.     static BYTE parms[] =
  13323.         VTS_DISPATCH;
  13324.     InvokeHelper(0x20008, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  13325.         closeto);
  13326.     return result;
  13327. }
  13328.  
  13329. LPDISPATCH IAttdef::Snap2Nearest(LPDISPATCH closeto)
  13330. {
  13331.     LPDISPATCH result;
  13332.     static BYTE parms[] =
  13333.         VTS_DISPATCH;
  13334.     InvokeHelper(0x20009, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  13335.         closeto);
  13336.     return result;
  13337. }
  13338.  
  13339. LPDISPATCH IAttdef::Snap2Point(LPDISPATCH closeto)
  13340. {
  13341.     LPDISPATCH result;
  13342.     static BYTE parms[] =
  13343.         VTS_DISPATCH;
  13344.     InvokeHelper(0x2000a, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  13345.         closeto);
  13346.     return result;
  13347. }
  13348.  
  13349. LPDISPATCH IAttdef::Snap2Quadrant(LPDISPATCH closeto)
  13350. {
  13351.     LPDISPATCH result;
  13352.     static BYTE parms[] =
  13353.         VTS_DISPATCH;
  13354.     InvokeHelper(0x2000b, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  13355.         closeto);
  13356.     return result;
  13357. }
  13358.  
  13359. LPDISPATCH IAttdef::Snap2Insertion(LPDISPATCH closeto)
  13360. {
  13361.     LPDISPATCH result;
  13362.     static BYTE parms[] =
  13363.         VTS_DISPATCH;
  13364.     InvokeHelper(0x2000c, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  13365.         closeto);
  13366.     return result;
  13367. }
  13368.  
  13369. LPDISPATCH IAttdef::Snap2Perpendicular(LPDISPATCH closeto, LPDISPATCH prevpoint)
  13370. {
  13371.     LPDISPATCH result;
  13372.     static BYTE parms[] =
  13373.         VTS_DISPATCH VTS_DISPATCH;
  13374.     InvokeHelper(0x2000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  13375.         closeto, prevpoint);
  13376.     return result;
  13377. }
  13378.  
  13379. LPDISPATCH IAttdef::Snap2Tangent(LPDISPATCH closeto, LPDISPATCH prevpoint)
  13380. {
  13381.     LPDISPATCH result;
  13382.     static BYTE parms[] =
  13383.         VTS_DISPATCH VTS_DISPATCH;
  13384.     InvokeHelper(0x2000e, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  13385.         closeto, prevpoint);
  13386.     return result;
  13387. }
  13388.  
  13389. LPDISPATCH IAttdef::Intersection(LPDISPATCH Entity, const VARIANT& infinite1, const VARIANT& infinite2)
  13390. {
  13391.     LPDISPATCH result;
  13392.     static BYTE parms[] =
  13393.         VTS_DISPATCH VTS_VARIANT VTS_VARIANT;
  13394.     InvokeHelper(0x2000f, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  13395.         Entity, &infinite1, &infinite2);
  13396.     return result;
  13397. }
  13398.  
  13399. BOOL IAttdef::ExtendToSet(LPDISPATCH point)
  13400. {
  13401.     BOOL result;
  13402.     static BYTE parms[] =
  13403.         VTS_DISPATCH;
  13404.     InvokeHelper(0x20010, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  13405.         point);
  13406.     return result;
  13407. }
  13408.  
  13409. BOOL IAttdef::TrimToSet(LPDISPATCH point)
  13410. {
  13411.     BOOL result;
  13412.     static BYTE parms[] =
  13413.         VTS_DISPATCH;
  13414.     InvokeHelper(0x20011, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  13415.         point);
  13416.     return result;
  13417. }
  13418.  
  13419. BOOL IAttdef::Break(LPDISPATCH point1, LPDISPATCH point2)
  13420. {
  13421.     BOOL result;
  13422.     static BYTE parms[] =
  13423.         VTS_DISPATCH VTS_DISPATCH;
  13424.     InvokeHelper(0x20012, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  13425.         point1, point2);
  13426.     return result;
  13427. }
  13428.  
  13429. void IAttdef::Update()
  13430. {
  13431.     InvokeHelper(0x20013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  13432. }
  13433.  
  13434. void IAttdef::UpdateNow()
  13435. {
  13436.     InvokeHelper(0x20014, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  13437. }
  13438.  
  13439.  
  13440. /////////////////////////////////////////////////////////////////////////////
  13441. // IAttributes properties
  13442.  
  13443. LPDISPATCH IAttributes::GetApplication()
  13444. {
  13445.     LPDISPATCH result;
  13446.     GetProperty(0x10001, VT_DISPATCH, (void*)&result);
  13447.     return result;
  13448. }
  13449.  
  13450. LPDISPATCH IAttributes::GetParent()
  13451. {
  13452.     LPDISPATCH result;
  13453.     GetProperty(0x10002, VT_DISPATCH, (void*)&result);
  13454.     return result;
  13455. }
  13456.  
  13457. long IAttributes::GetCount()
  13458. {
  13459.     long result;
  13460.     GetProperty(0x1, VT_I4, (void*)&result);
  13461.     return result;
  13462. }
  13463.  
  13464. /////////////////////////////////////////////////////////////////////////////
  13465. // IAttributes operations
  13466.  
  13467. LPDISPATCH IAttributes::GetItem(long index)
  13468. {
  13469.     LPDISPATCH result;
  13470.     static BYTE parms[] =
  13471.         VTS_I4;
  13472.     InvokeHelper(0x2, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  13473.         index);
  13474.     return result;
  13475. }
  13476.  
  13477. LPDISPATCH IAttributes::Get_Item(long index)
  13478. {
  13479.     LPDISPATCH result;
  13480.     static BYTE parms[] =
  13481.         VTS_I4;
  13482.     InvokeHelper(0x0, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  13483.         index);
  13484.     return result;
  13485. }
  13486.  
  13487.  
  13488. /////////////////////////////////////////////////////////////////////////////
  13489. // IAttribute properties
  13490.  
  13491. LPDISPATCH IAttribute::GetApplication()
  13492. {
  13493.     LPDISPATCH result;
  13494.     GetProperty(0x40001, VT_DISPATCH, (void*)&result);
  13495.     return result;
  13496. }
  13497.  
  13498. LPDISPATCH IAttribute::GetParent()
  13499. {
  13500.     LPDISPATCH result;
  13501.     GetProperty(0x40002, VT_DISPATCH, (void*)&result);
  13502.     return result;
  13503. }
  13504.  
  13505. LPDISPATCH IAttribute::GetColor()
  13506. {
  13507.     LPDISPATCH result;
  13508.     GetProperty(0x30001, VT_DISPATCH, (void*)&result);
  13509.     return result;
  13510. }
  13511.  
  13512. void IAttribute::SetColor(LPDISPATCH propVal)
  13513. {
  13514.     SetProperty(0x30001, VT_DISPATCH, propVal);
  13515. }
  13516.  
  13517. short IAttribute::GetColorNumber()
  13518. {
  13519.     short result;
  13520.     GetProperty(0x30002, VT_I2, (void*)&result);
  13521.     return result;
  13522. }
  13523.  
  13524. void IAttribute::SetColorNumber(short propVal)
  13525. {
  13526.     SetProperty(0x30002, VT_I2, propVal);
  13527. }
  13528.  
  13529. LPDISPATCH IAttribute::GetLayer()
  13530. {
  13531.     LPDISPATCH result;
  13532.     GetProperty(0x30003, VT_DISPATCH, (void*)&result);
  13533.     return result;
  13534. }
  13535.  
  13536. void IAttribute::SetLayer(LPDISPATCH propVal)
  13537. {
  13538.     SetProperty(0x30003, VT_DISPATCH, propVal);
  13539. }
  13540.  
  13541. LPDISPATCH IAttribute::GetLinetype()
  13542. {
  13543.     LPDISPATCH result;
  13544.     GetProperty(0x30004, VT_DISPATCH, (void*)&result);
  13545.     return result;
  13546. }
  13547.  
  13548. void IAttribute::SetLinetype(LPDISPATCH propVal)
  13549. {
  13550.     SetProperty(0x30004, VT_DISPATCH, propVal);
  13551. }
  13552.  
  13553. double IAttribute::GetThickness()
  13554. {
  13555.     double result;
  13556.     GetProperty(0x30005, VT_R8, (void*)&result);
  13557.     return result;
  13558. }
  13559.  
  13560. void IAttribute::SetThickness(double propVal)
  13561. {
  13562.     SetProperty(0x30005, VT_R8, propVal);
  13563. }
  13564.  
  13565. BOOL IAttribute::GetPaperSpace()
  13566. {
  13567.     BOOL result;
  13568.     GetProperty(0x30006, VT_BOOL, (void*)&result);
  13569.     return result;
  13570. }
  13571.  
  13572. void IAttribute::SetPaperSpace(BOOL propVal)
  13573. {
  13574.     SetProperty(0x30006, VT_BOOL, propVal);
  13575. }
  13576.  
  13577. LPDISPATCH IAttribute::GetNormal()
  13578. {
  13579.     LPDISPATCH result;
  13580.     GetProperty(0x30007, VT_DISPATCH, (void*)&result);
  13581.     return result;
  13582. }
  13583.  
  13584. void IAttribute::SetNormal(LPDISPATCH propVal)
  13585. {
  13586.     SetProperty(0x30007, VT_DISPATCH, propVal);
  13587. }
  13588.  
  13589. CString IAttribute::GetName()
  13590. {
  13591.     CString result;
  13592.     GetProperty(0x20001, VT_BSTR, (void*)&result);
  13593.     return result;
  13594. }
  13595.  
  13596. short IAttribute::GetType()
  13597. {
  13598.     short result;
  13599.     GetProperty(0x20002, VT_I2, (void*)&result);
  13600.     return result;
  13601. }
  13602.  
  13603. CString IAttribute::GetHandle()
  13604. {
  13605.     CString result;
  13606.     GetProperty(0x20003, VT_BSTR, (void*)&result);
  13607.     return result;
  13608. }
  13609.  
  13610. BOOL IAttribute::GetHasXData()
  13611. {
  13612.     BOOL result;
  13613.     GetProperty(0x20004, VT_BOOL, (void*)&result);
  13614.     return result;
  13615. }
  13616.  
  13617. LPDISPATCH IAttribute::GetXData()
  13618. {
  13619.     LPDISPATCH result;
  13620.     GetProperty(0x20005, VT_DISPATCH, (void*)&result);
  13621.     return result;
  13622. }
  13623.  
  13624. BOOL IAttribute::GetAutoDraw()
  13625. {
  13626.     BOOL result;
  13627.     GetProperty(0x20015, VT_BOOL, (void*)&result);
  13628.     return result;
  13629. }
  13630.  
  13631. void IAttribute::SetAutoDraw(BOOL propVal)
  13632. {
  13633.     SetProperty(0x20015, VT_BOOL, propVal);
  13634. }
  13635.  
  13636. LPDISPATCH IAttribute::GetAlignPoint()
  13637. {
  13638.     LPDISPATCH result;
  13639.     GetProperty(0x10001, VT_DISPATCH, (void*)&result);
  13640.     return result;
  13641. }
  13642.  
  13643. void IAttribute::SetAlignPoint(LPDISPATCH propVal)
  13644. {
  13645.     SetProperty(0x10001, VT_DISPATCH, propVal);
  13646. }
  13647.  
  13648. BOOL IAttribute::GetBackwards()
  13649. {
  13650.     BOOL result;
  13651.     GetProperty(0x10002, VT_BOOL, (void*)&result);
  13652.     return result;
  13653. }
  13654.  
  13655. void IAttribute::SetBackwards(BOOL propVal)
  13656. {
  13657.     SetProperty(0x10002, VT_BOOL, propVal);
  13658. }
  13659.  
  13660. double IAttribute::GetHeight()
  13661. {
  13662.     double result;
  13663.     GetProperty(0x10003, VT_R8, (void*)&result);
  13664.     return result;
  13665. }
  13666.  
  13667. void IAttribute::SetHeight(double propVal)
  13668. {
  13669.     SetProperty(0x10003, VT_R8, propVal);
  13670. }
  13671.  
  13672. short IAttribute::GetHorizontal()
  13673. {
  13674.     short result;
  13675.     GetProperty(0x10004, VT_I2, (void*)&result);
  13676.     return result;
  13677. }
  13678.  
  13679. void IAttribute::SetHorizontal(short propVal)
  13680. {
  13681.     SetProperty(0x10004, VT_I2, propVal);
  13682. }
  13683.  
  13684. double IAttribute::GetObliqueAngle()
  13685. {
  13686.     double result;
  13687.     GetProperty(0x10005, VT_R8, (void*)&result);
  13688.     return result;
  13689. }
  13690.  
  13691. void IAttribute::SetObliqueAngle(double propVal)
  13692. {
  13693.     SetProperty(0x10005, VT_R8, propVal);
  13694. }
  13695.  
  13696. double IAttribute::GetRotation()
  13697. {
  13698.     double result;
  13699.     GetProperty(0x10006, VT_R8, (void*)&result);
  13700.     return result;
  13701. }
  13702.  
  13703. void IAttribute::SetRotation(double propVal)
  13704. {
  13705.     SetProperty(0x10006, VT_R8, propVal);
  13706. }
  13707.  
  13708. LPDISPATCH IAttribute::GetWhere()
  13709. {
  13710.     LPDISPATCH result;
  13711.     GetProperty(0x10007, VT_DISPATCH, (void*)&result);
  13712.     return result;
  13713. }
  13714.  
  13715. void IAttribute::SetWhere(LPDISPATCH propVal)
  13716. {
  13717.     SetProperty(0x10007, VT_DISPATCH, propVal);
  13718. }
  13719.  
  13720. LPDISPATCH IAttribute::GetWhereJustified()
  13721. {
  13722.     LPDISPATCH result;
  13723.     GetProperty(0x10008, VT_DISPATCH, (void*)&result);
  13724.     return result;
  13725. }
  13726.  
  13727. void IAttribute::SetWhereJustified(LPDISPATCH propVal)
  13728. {
  13729.     SetProperty(0x10008, VT_DISPATCH, propVal);
  13730. }
  13731.  
  13732. CString IAttribute::GetText()
  13733. {
  13734.     CString result;
  13735.     GetProperty(0x10009, VT_BSTR, (void*)&result);
  13736.     return result;
  13737. }
  13738.  
  13739. void IAttribute::SetText(LPCTSTR propVal)
  13740. {
  13741.     SetProperty(0x10009, VT_BSTR, propVal);
  13742. }
  13743.  
  13744. LPDISPATCH IAttribute::GetStyle()
  13745. {
  13746.     LPDISPATCH result;
  13747.     GetProperty(0x1000a, VT_DISPATCH, (void*)&result);
  13748.     return result;
  13749. }
  13750.  
  13751. void IAttribute::SetStyle(LPDISPATCH propVal)
  13752. {
  13753.     SetProperty(0x1000a, VT_DISPATCH, propVal);
  13754. }
  13755.  
  13756. BOOL IAttribute::GetUpsideDown()
  13757. {
  13758.     BOOL result;
  13759.     GetProperty(0x1000b, VT_BOOL, (void*)&result);
  13760.     return result;
  13761. }
  13762.  
  13763. void IAttribute::SetUpsideDown(BOOL propVal)
  13764. {
  13765.     SetProperty(0x1000b, VT_BOOL, propVal);
  13766. }
  13767.  
  13768. short IAttribute::GetVertical()
  13769. {
  13770.     short result;
  13771.     GetProperty(0x1000c, VT_I2, (void*)&result);
  13772.     return result;
  13773. }
  13774.  
  13775. void IAttribute::SetVertical(short propVal)
  13776. {
  13777.     SetProperty(0x1000c, VT_I2, propVal);
  13778. }
  13779.  
  13780. double IAttribute::GetXScaling()
  13781. {
  13782.     double result;
  13783.     GetProperty(0x1000d, VT_R8, (void*)&result);
  13784.     return result;
  13785. }
  13786.  
  13787. void IAttribute::SetXScaling(double propVal)
  13788. {
  13789.     SetProperty(0x1000d, VT_R8, propVal);
  13790. }
  13791.  
  13792. CString IAttribute::Get_Name()
  13793. {
  13794.     CString result;
  13795.     GetProperty(0x0, VT_BSTR, (void*)&result);
  13796.     return result;
  13797. }
  13798.  
  13799. BOOL IAttribute::GetVisible()
  13800. {
  13801.     BOOL result;
  13802.     GetProperty(0x1, VT_BOOL, (void*)&result);
  13803.     return result;
  13804. }
  13805.  
  13806. BOOL IAttribute::GetConstant()
  13807. {
  13808.     BOOL result;
  13809.     GetProperty(0x2, VT_BOOL, (void*)&result);
  13810.     return result;
  13811. }
  13812.  
  13813. BOOL IAttribute::GetVerify()
  13814. {
  13815.     BOOL result;
  13816.     GetProperty(0x3, VT_BOOL, (void*)&result);
  13817.     return result;
  13818. }
  13819.  
  13820. BOOL IAttribute::GetPreset()
  13821. {
  13822.     BOOL result;
  13823.     GetProperty(0x4, VT_BOOL, (void*)&result);
  13824.     return result;
  13825. }
  13826.  
  13827. CString IAttribute::GetTag()
  13828. {
  13829.     CString result;
  13830.     GetProperty(0x5, VT_BSTR, (void*)&result);
  13831.     return result;
  13832. }
  13833.  
  13834. void IAttribute::SetTag(LPCTSTR propVal)
  13835. {
  13836.     SetProperty(0x5, VT_BSTR, propVal);
  13837. }
  13838.  
  13839. /////////////////////////////////////////////////////////////////////////////
  13840. // IAttribute operations
  13841.  
  13842. void IAttribute::Redraw()
  13843. {
  13844.     InvokeHelper(0x30008, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  13845. }
  13846.  
  13847. void IAttribute::Regen()
  13848. {
  13849.     InvokeHelper(0x30009, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  13850. }
  13851.  
  13852. void IAttribute::Erase()
  13853. {
  13854.     InvokeHelper(0x3000a, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  13855. }
  13856.  
  13857. void IAttribute::Delete()
  13858. {
  13859.     InvokeHelper(0x3000b, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  13860. }
  13861.  
  13862. void IAttribute::Move(LPDISPATCH offset)
  13863. {
  13864.     static BYTE parms[] =
  13865.         VTS_DISPATCH;
  13866.     InvokeHelper(0x3000c, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  13867.          offset);
  13868. }
  13869.  
  13870. LPDISPATCH IAttribute::Copy(LPDISPATCH offset)
  13871. {
  13872.     LPDISPATCH result;
  13873.     static BYTE parms[] =
  13874.         VTS_DISPATCH;
  13875.     InvokeHelper(0x3000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  13876.         offset);
  13877.     return result;
  13878. }
  13879.  
  13880. void IAttribute::scale(LPDISPATCH basepoint, LPDISPATCH scale)
  13881. {
  13882.     static BYTE parms[] =
  13883.         VTS_DISPATCH VTS_DISPATCH;
  13884.     InvokeHelper(0x3000e, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  13885.          basepoint, scale);
  13886. }
  13887.  
  13888. void IAttribute::ScaleIt(LPDISPATCH basepoint, LPDISPATCH scale)
  13889. {
  13890.     static BYTE parms[] =
  13891.         VTS_DISPATCH VTS_DISPATCH;
  13892.     InvokeHelper(0x3000f, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  13893.          basepoint, scale);
  13894. }
  13895.  
  13896. void IAttribute::Rotate(LPDISPATCH basepoint, double Angle)
  13897. {
  13898.     static BYTE parms[] =
  13899.         VTS_DISPATCH VTS_R8;
  13900.     InvokeHelper(0x30010, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  13901.          basepoint, Angle);
  13902. }
  13903.  
  13904. void IAttribute::Mirror(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  13905. {
  13906.     static BYTE parms[] =
  13907.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  13908.     InvokeHelper(0x30011, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  13909.          point1, point2, &MirrorText);
  13910. }
  13911.  
  13912. LPDISPATCH IAttribute::MirrorCopy(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  13913. {
  13914.     LPDISPATCH result;
  13915.     static BYTE parms[] =
  13916.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  13917.     InvokeHelper(0x30012, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  13918.         point1, point2, &MirrorText);
  13919.     return result;
  13920. }
  13921.  
  13922. void IAttribute::Dialog()
  13923. {
  13924.     InvokeHelper(0x30013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  13925. }
  13926.  
  13927. LPDISPATCH IAttribute::Offset(LPDISPATCH vec, const VARIANT& Distance)
  13928. {
  13929.     LPDISPATCH result;
  13930.     static BYTE parms[] =
  13931.         VTS_DISPATCH VTS_VARIANT;
  13932.     InvokeHelper(0x30014, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  13933.         vec, &Distance);
  13934.     return result;
  13935. }
  13936.  
  13937. LPDISPATCH IAttribute::Array(short numrows, short numcols, double rowspacing, double colspacing, double Rotation)
  13938. {
  13939.     LPDISPATCH result;
  13940.     static BYTE parms[] =
  13941.         VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8;
  13942.     InvokeHelper(0x30015, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  13943.         numrows, numcols, rowspacing, colspacing, Rotation);
  13944.     return result;
  13945. }
  13946.  
  13947. LPDISPATCH IAttribute::Array3D(short numrows, short numcols, short numlevels, double rowspacing, double colspacing, double levelspacing, double Rotation)
  13948. {
  13949.     LPDISPATCH result;
  13950.     static BYTE parms[] =
  13951.         VTS_I2 VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8 VTS_R8;
  13952.     InvokeHelper(0x30016, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  13953.         numrows, numcols, numlevels, rowspacing, colspacing, levelspacing, Rotation);
  13954.     return result;
  13955. }
  13956.  
  13957. LPDISPATCH IAttribute::PolarArray(short numitems, double fillangle, double angletween, LPDISPATCH Center, const VARIANT& refpoint)
  13958. {
  13959.     LPDISPATCH result;
  13960.     static BYTE parms[] =
  13961.         VTS_I2 VTS_R8 VTS_R8 VTS_DISPATCH VTS_VARIANT;
  13962.     InvokeHelper(0x30017, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  13963.         numitems, fillangle, angletween, Center, &refpoint);
  13964.     return result;
  13965. }
  13966.  
  13967. void IAttribute::DisplayGrips()
  13968. {
  13969.     InvokeHelper(0x30018, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  13970. }
  13971.  
  13972. void IAttribute::EraseGrips()
  13973. {
  13974.     InvokeHelper(0x30019, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  13975. }
  13976.  
  13977. LPDISPATCH IAttribute::Snap2Endpoint(LPDISPATCH closeto)
  13978. {
  13979.     LPDISPATCH result;
  13980.     static BYTE parms[] =
  13981.         VTS_DISPATCH;
  13982.     InvokeHelper(0x20006, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  13983.         closeto);
  13984.     return result;
  13985. }
  13986.  
  13987. LPDISPATCH IAttribute::Snap2Midpoint(LPDISPATCH closeto)
  13988. {
  13989.     LPDISPATCH result;
  13990.     static BYTE parms[] =
  13991.         VTS_DISPATCH;
  13992.     InvokeHelper(0x20007, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  13993.         closeto);
  13994.     return result;
  13995. }
  13996.  
  13997. LPDISPATCH IAttribute::Snap2Center(LPDISPATCH closeto)
  13998. {
  13999.     LPDISPATCH result;
  14000.     static BYTE parms[] =
  14001.         VTS_DISPATCH;
  14002.     InvokeHelper(0x20008, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  14003.         closeto);
  14004.     return result;
  14005. }
  14006.  
  14007. LPDISPATCH IAttribute::Snap2Nearest(LPDISPATCH closeto)
  14008. {
  14009.     LPDISPATCH result;
  14010.     static BYTE parms[] =
  14011.         VTS_DISPATCH;
  14012.     InvokeHelper(0x20009, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  14013.         closeto);
  14014.     return result;
  14015. }
  14016.  
  14017. LPDISPATCH IAttribute::Snap2Point(LPDISPATCH closeto)
  14018. {
  14019.     LPDISPATCH result;
  14020.     static BYTE parms[] =
  14021.         VTS_DISPATCH;
  14022.     InvokeHelper(0x2000a, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  14023.         closeto);
  14024.     return result;
  14025. }
  14026.  
  14027. LPDISPATCH IAttribute::Snap2Quadrant(LPDISPATCH closeto)
  14028. {
  14029.     LPDISPATCH result;
  14030.     static BYTE parms[] =
  14031.         VTS_DISPATCH;
  14032.     InvokeHelper(0x2000b, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  14033.         closeto);
  14034.     return result;
  14035. }
  14036.  
  14037. LPDISPATCH IAttribute::Snap2Insertion(LPDISPATCH closeto)
  14038. {
  14039.     LPDISPATCH result;
  14040.     static BYTE parms[] =
  14041.         VTS_DISPATCH;
  14042.     InvokeHelper(0x2000c, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  14043.         closeto);
  14044.     return result;
  14045. }
  14046.  
  14047. LPDISPATCH IAttribute::Snap2Perpendicular(LPDISPATCH closeto, LPDISPATCH prevpoint)
  14048. {
  14049.     LPDISPATCH result;
  14050.     static BYTE parms[] =
  14051.         VTS_DISPATCH VTS_DISPATCH;
  14052.     InvokeHelper(0x2000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  14053.         closeto, prevpoint);
  14054.     return result;
  14055. }
  14056.  
  14057. LPDISPATCH IAttribute::Snap2Tangent(LPDISPATCH closeto, LPDISPATCH prevpoint)
  14058. {
  14059.     LPDISPATCH result;
  14060.     static BYTE parms[] =
  14061.         VTS_DISPATCH VTS_DISPATCH;
  14062.     InvokeHelper(0x2000e, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  14063.         closeto, prevpoint);
  14064.     return result;
  14065. }
  14066.  
  14067. LPDISPATCH IAttribute::Intersection(LPDISPATCH Entity, const VARIANT& infinite1, const VARIANT& infinite2)
  14068. {
  14069.     LPDISPATCH result;
  14070.     static BYTE parms[] =
  14071.         VTS_DISPATCH VTS_VARIANT VTS_VARIANT;
  14072.     InvokeHelper(0x2000f, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  14073.         Entity, &infinite1, &infinite2);
  14074.     return result;
  14075. }
  14076.  
  14077. BOOL IAttribute::ExtendToSet(LPDISPATCH point)
  14078. {
  14079.     BOOL result;
  14080.     static BYTE parms[] =
  14081.         VTS_DISPATCH;
  14082.     InvokeHelper(0x20010, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  14083.         point);
  14084.     return result;
  14085. }
  14086.  
  14087. BOOL IAttribute::TrimToSet(LPDISPATCH point)
  14088. {
  14089.     BOOL result;
  14090.     static BYTE parms[] =
  14091.         VTS_DISPATCH;
  14092.     InvokeHelper(0x20011, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  14093.         point);
  14094.     return result;
  14095. }
  14096.  
  14097. BOOL IAttribute::Break(LPDISPATCH point1, LPDISPATCH point2)
  14098. {
  14099.     BOOL result;
  14100.     static BYTE parms[] =
  14101.         VTS_DISPATCH VTS_DISPATCH;
  14102.     InvokeHelper(0x20012, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  14103.         point1, point2);
  14104.     return result;
  14105. }
  14106.  
  14107. void IAttribute::Update()
  14108. {
  14109.     InvokeHelper(0x20013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  14110. }
  14111.  
  14112. void IAttribute::UpdateNow()
  14113. {
  14114.     InvokeHelper(0x20014, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  14115. }
  14116.  
  14117.  
  14118. /////////////////////////////////////////////////////////////////////////////
  14119. // I2DPolyline properties
  14120.  
  14121. LPDISPATCH I2DPolyline::GetApplication()
  14122. {
  14123.     LPDISPATCH result;
  14124.     GetProperty(0x40001, VT_DISPATCH, (void*)&result);
  14125.     return result;
  14126. }
  14127.  
  14128. LPDISPATCH I2DPolyline::GetParent()
  14129. {
  14130.     LPDISPATCH result;
  14131.     GetProperty(0x40002, VT_DISPATCH, (void*)&result);
  14132.     return result;
  14133. }
  14134.  
  14135. LPDISPATCH I2DPolyline::GetColor()
  14136. {
  14137.     LPDISPATCH result;
  14138.     GetProperty(0x30001, VT_DISPATCH, (void*)&result);
  14139.     return result;
  14140. }
  14141.  
  14142. void I2DPolyline::SetColor(LPDISPATCH propVal)
  14143. {
  14144.     SetProperty(0x30001, VT_DISPATCH, propVal);
  14145. }
  14146.  
  14147. short I2DPolyline::GetColorNumber()
  14148. {
  14149.     short result;
  14150.     GetProperty(0x30002, VT_I2, (void*)&result);
  14151.     return result;
  14152. }
  14153.  
  14154. void I2DPolyline::SetColorNumber(short propVal)
  14155. {
  14156.     SetProperty(0x30002, VT_I2, propVal);
  14157. }
  14158.  
  14159. LPDISPATCH I2DPolyline::GetLayer()
  14160. {
  14161.     LPDISPATCH result;
  14162.     GetProperty(0x30003, VT_DISPATCH, (void*)&result);
  14163.     return result;
  14164. }
  14165.  
  14166. void I2DPolyline::SetLayer(LPDISPATCH propVal)
  14167. {
  14168.     SetProperty(0x30003, VT_DISPATCH, propVal);
  14169. }
  14170.  
  14171. LPDISPATCH I2DPolyline::GetLinetype()
  14172. {
  14173.     LPDISPATCH result;
  14174.     GetProperty(0x30004, VT_DISPATCH, (void*)&result);
  14175.     return result;
  14176. }
  14177.  
  14178. void I2DPolyline::SetLinetype(LPDISPATCH propVal)
  14179. {
  14180.     SetProperty(0x30004, VT_DISPATCH, propVal);
  14181. }
  14182.  
  14183. double I2DPolyline::GetThickness()
  14184. {
  14185.     double result;
  14186.     GetProperty(0x30005, VT_R8, (void*)&result);
  14187.     return result;
  14188. }
  14189.  
  14190. void I2DPolyline::SetThickness(double propVal)
  14191. {
  14192.     SetProperty(0x30005, VT_R8, propVal);
  14193. }
  14194.  
  14195. BOOL I2DPolyline::GetPaperSpace()
  14196. {
  14197.     BOOL result;
  14198.     GetProperty(0x30006, VT_BOOL, (void*)&result);
  14199.     return result;
  14200. }
  14201.  
  14202. void I2DPolyline::SetPaperSpace(BOOL propVal)
  14203. {
  14204.     SetProperty(0x30006, VT_BOOL, propVal);
  14205. }
  14206.  
  14207. LPDISPATCH I2DPolyline::GetNormal()
  14208. {
  14209.     LPDISPATCH result;
  14210.     GetProperty(0x30007, VT_DISPATCH, (void*)&result);
  14211.     return result;
  14212. }
  14213.  
  14214. void I2DPolyline::SetNormal(LPDISPATCH propVal)
  14215. {
  14216.     SetProperty(0x30007, VT_DISPATCH, propVal);
  14217. }
  14218.  
  14219. CString I2DPolyline::GetName()
  14220. {
  14221.     CString result;
  14222.     GetProperty(0x20001, VT_BSTR, (void*)&result);
  14223.     return result;
  14224. }
  14225.  
  14226. short I2DPolyline::GetType()
  14227. {
  14228.     short result;
  14229.     GetProperty(0x20002, VT_I2, (void*)&result);
  14230.     return result;
  14231. }
  14232.  
  14233. CString I2DPolyline::GetHandle()
  14234. {
  14235.     CString result;
  14236.     GetProperty(0x20003, VT_BSTR, (void*)&result);
  14237.     return result;
  14238. }
  14239.  
  14240. BOOL I2DPolyline::GetHasXData()
  14241. {
  14242.     BOOL result;
  14243.     GetProperty(0x20004, VT_BOOL, (void*)&result);
  14244.     return result;
  14245. }
  14246.  
  14247. LPDISPATCH I2DPolyline::GetXData()
  14248. {
  14249.     LPDISPATCH result;
  14250.     GetProperty(0x20005, VT_DISPATCH, (void*)&result);
  14251.     return result;
  14252. }
  14253.  
  14254. BOOL I2DPolyline::GetAutoDraw()
  14255. {
  14256.     BOOL result;
  14257.     GetProperty(0x20015, VT_BOOL, (void*)&result);
  14258.     return result;
  14259. }
  14260.  
  14261. void I2DPolyline::SetAutoDraw(BOOL propVal)
  14262. {
  14263.     SetProperty(0x20015, VT_BOOL, propVal);
  14264. }
  14265.  
  14266. CString I2DPolyline::Get_Name()
  14267. {
  14268.     CString result;
  14269.     GetProperty(0x0, VT_BSTR, (void*)&result);
  14270.     return result;
  14271. }
  14272.  
  14273. LPDISPATCH I2DPolyline::GetVertices()
  14274. {
  14275.     LPDISPATCH result;
  14276.     GetProperty(0x1, VT_DISPATCH, (void*)&result);
  14277.     return result;
  14278. }
  14279.  
  14280. BOOL I2DPolyline::GetClosed()
  14281. {
  14282.     BOOL result;
  14283.     GetProperty(0x2, VT_BOOL, (void*)&result);
  14284.     return result;
  14285. }
  14286.  
  14287. void I2DPolyline::SetClosed(BOOL propVal)
  14288. {
  14289.     SetProperty(0x2, VT_BOOL, propVal);
  14290. }
  14291.  
  14292. short I2DPolyline::GetCurve()
  14293. {
  14294.     short result;
  14295.     GetProperty(0x3, VT_I2, (void*)&result);
  14296.     return result;
  14297. }
  14298.  
  14299. void I2DPolyline::SetCurve(short propVal)
  14300. {
  14301.     SetProperty(0x3, VT_I2, propVal);
  14302. }
  14303.  
  14304. double I2DPolyline::GetEndWidth()
  14305. {
  14306.     double result;
  14307.     GetProperty(0x4, VT_R8, (void*)&result);
  14308.     return result;
  14309. }
  14310.  
  14311. void I2DPolyline::SetEndWidth(double propVal)
  14312. {
  14313.     SetProperty(0x4, VT_R8, propVal);
  14314. }
  14315.  
  14316. double I2DPolyline::GetStartWidth()
  14317. {
  14318.     double result;
  14319.     GetProperty(0x5, VT_R8, (void*)&result);
  14320.     return result;
  14321. }
  14322.  
  14323. void I2DPolyline::SetStartWidth(double propVal)
  14324. {
  14325.     SetProperty(0x5, VT_R8, propVal);
  14326. }
  14327.  
  14328. double I2DPolyline::GetLength()
  14329. {
  14330.     double result;
  14331.     GetProperty(0x6, VT_R8, (void*)&result);
  14332.     return result;
  14333. }
  14334.  
  14335. /////////////////////////////////////////////////////////////////////////////
  14336. // I2DPolyline operations
  14337.  
  14338. void I2DPolyline::Redraw()
  14339. {
  14340.     InvokeHelper(0x30008, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  14341. }
  14342.  
  14343. void I2DPolyline::Regen()
  14344. {
  14345.     InvokeHelper(0x30009, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  14346. }
  14347.  
  14348. void I2DPolyline::Erase()
  14349. {
  14350.     InvokeHelper(0x3000a, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  14351. }
  14352.  
  14353. void I2DPolyline::Delete()
  14354. {
  14355.     InvokeHelper(0x3000b, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  14356. }
  14357.  
  14358. void I2DPolyline::Move(LPDISPATCH offset)
  14359. {
  14360.     static BYTE parms[] =
  14361.         VTS_DISPATCH;
  14362.     InvokeHelper(0x3000c, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  14363.          offset);
  14364. }
  14365.  
  14366. LPDISPATCH I2DPolyline::Copy(LPDISPATCH offset)
  14367. {
  14368.     LPDISPATCH result;
  14369.     static BYTE parms[] =
  14370.         VTS_DISPATCH;
  14371.     InvokeHelper(0x3000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  14372.         offset);
  14373.     return result;
  14374. }
  14375.  
  14376. void I2DPolyline::scale(LPDISPATCH basepoint, LPDISPATCH scale)
  14377. {
  14378.     static BYTE parms[] =
  14379.         VTS_DISPATCH VTS_DISPATCH;
  14380.     InvokeHelper(0x3000e, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  14381.          basepoint, scale);
  14382. }
  14383.  
  14384. void I2DPolyline::ScaleIt(LPDISPATCH basepoint, LPDISPATCH scale)
  14385. {
  14386.     static BYTE parms[] =
  14387.         VTS_DISPATCH VTS_DISPATCH;
  14388.     InvokeHelper(0x3000f, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  14389.          basepoint, scale);
  14390. }
  14391.  
  14392. void I2DPolyline::Rotate(LPDISPATCH basepoint, double Angle)
  14393. {
  14394.     static BYTE parms[] =
  14395.         VTS_DISPATCH VTS_R8;
  14396.     InvokeHelper(0x30010, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  14397.          basepoint, Angle);
  14398. }
  14399.  
  14400. void I2DPolyline::Mirror(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  14401. {
  14402.     static BYTE parms[] =
  14403.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  14404.     InvokeHelper(0x30011, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  14405.          point1, point2, &MirrorText);
  14406. }
  14407.  
  14408. LPDISPATCH I2DPolyline::MirrorCopy(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  14409. {
  14410.     LPDISPATCH result;
  14411.     static BYTE parms[] =
  14412.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  14413.     InvokeHelper(0x30012, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  14414.         point1, point2, &MirrorText);
  14415.     return result;
  14416. }
  14417.  
  14418. void I2DPolyline::Dialog()
  14419. {
  14420.     InvokeHelper(0x30013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  14421. }
  14422.  
  14423. LPDISPATCH I2DPolyline::Offset(LPDISPATCH vec, const VARIANT& Distance)
  14424. {
  14425.     LPDISPATCH result;
  14426.     static BYTE parms[] =
  14427.         VTS_DISPATCH VTS_VARIANT;
  14428.     InvokeHelper(0x30014, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  14429.         vec, &Distance);
  14430.     return result;
  14431. }
  14432.  
  14433. LPDISPATCH I2DPolyline::Array(short numrows, short numcols, double rowspacing, double colspacing, double Rotation)
  14434. {
  14435.     LPDISPATCH result;
  14436.     static BYTE parms[] =
  14437.         VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8;
  14438.     InvokeHelper(0x30015, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  14439.         numrows, numcols, rowspacing, colspacing, Rotation);
  14440.     return result;
  14441. }
  14442.  
  14443. LPDISPATCH I2DPolyline::Array3D(short numrows, short numcols, short numlevels, double rowspacing, double colspacing, double levelspacing, double Rotation)
  14444. {
  14445.     LPDISPATCH result;
  14446.     static BYTE parms[] =
  14447.         VTS_I2 VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8 VTS_R8;
  14448.     InvokeHelper(0x30016, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  14449.         numrows, numcols, numlevels, rowspacing, colspacing, levelspacing, Rotation);
  14450.     return result;
  14451. }
  14452.  
  14453. LPDISPATCH I2DPolyline::PolarArray(short numitems, double fillangle, double angletween, LPDISPATCH Center, const VARIANT& refpoint)
  14454. {
  14455.     LPDISPATCH result;
  14456.     static BYTE parms[] =
  14457.         VTS_I2 VTS_R8 VTS_R8 VTS_DISPATCH VTS_VARIANT;
  14458.     InvokeHelper(0x30017, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  14459.         numitems, fillangle, angletween, Center, &refpoint);
  14460.     return result;
  14461. }
  14462.  
  14463. void I2DPolyline::DisplayGrips()
  14464. {
  14465.     InvokeHelper(0x30018, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  14466. }
  14467.  
  14468. void I2DPolyline::EraseGrips()
  14469. {
  14470.     InvokeHelper(0x30019, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  14471. }
  14472.  
  14473. LPDISPATCH I2DPolyline::Snap2Endpoint(LPDISPATCH closeto)
  14474. {
  14475.     LPDISPATCH result;
  14476.     static BYTE parms[] =
  14477.         VTS_DISPATCH;
  14478.     InvokeHelper(0x20006, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  14479.         closeto);
  14480.     return result;
  14481. }
  14482.  
  14483. LPDISPATCH I2DPolyline::Snap2Midpoint(LPDISPATCH closeto)
  14484. {
  14485.     LPDISPATCH result;
  14486.     static BYTE parms[] =
  14487.         VTS_DISPATCH;
  14488.     InvokeHelper(0x20007, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  14489.         closeto);
  14490.     return result;
  14491. }
  14492.  
  14493. LPDISPATCH I2DPolyline::Snap2Center(LPDISPATCH closeto)
  14494. {
  14495.     LPDISPATCH result;
  14496.     static BYTE parms[] =
  14497.         VTS_DISPATCH;
  14498.     InvokeHelper(0x20008, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  14499.         closeto);
  14500.     return result;
  14501. }
  14502.  
  14503. LPDISPATCH I2DPolyline::Snap2Nearest(LPDISPATCH closeto)
  14504. {
  14505.     LPDISPATCH result;
  14506.     static BYTE parms[] =
  14507.         VTS_DISPATCH;
  14508.     InvokeHelper(0x20009, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  14509.         closeto);
  14510.     return result;
  14511. }
  14512.  
  14513. LPDISPATCH I2DPolyline::Snap2Point(LPDISPATCH closeto)
  14514. {
  14515.     LPDISPATCH result;
  14516.     static BYTE parms[] =
  14517.         VTS_DISPATCH;
  14518.     InvokeHelper(0x2000a, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  14519.         closeto);
  14520.     return result;
  14521. }
  14522.  
  14523. LPDISPATCH I2DPolyline::Snap2Quadrant(LPDISPATCH closeto)
  14524. {
  14525.     LPDISPATCH result;
  14526.     static BYTE parms[] =
  14527.         VTS_DISPATCH;
  14528.     InvokeHelper(0x2000b, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  14529.         closeto);
  14530.     return result;
  14531. }
  14532.  
  14533. LPDISPATCH I2DPolyline::Snap2Insertion(LPDISPATCH closeto)
  14534. {
  14535.     LPDISPATCH result;
  14536.     static BYTE parms[] =
  14537.         VTS_DISPATCH;
  14538.     InvokeHelper(0x2000c, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  14539.         closeto);
  14540.     return result;
  14541. }
  14542.  
  14543. LPDISPATCH I2DPolyline::Snap2Perpendicular(LPDISPATCH closeto, LPDISPATCH prevpoint)
  14544. {
  14545.     LPDISPATCH result;
  14546.     static BYTE parms[] =
  14547.         VTS_DISPATCH VTS_DISPATCH;
  14548.     InvokeHelper(0x2000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  14549.         closeto, prevpoint);
  14550.     return result;
  14551. }
  14552.  
  14553. LPDISPATCH I2DPolyline::Snap2Tangent(LPDISPATCH closeto, LPDISPATCH prevpoint)
  14554. {
  14555.     LPDISPATCH result;
  14556.     static BYTE parms[] =
  14557.         VTS_DISPATCH VTS_DISPATCH;
  14558.     InvokeHelper(0x2000e, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  14559.         closeto, prevpoint);
  14560.     return result;
  14561. }
  14562.  
  14563. LPDISPATCH I2DPolyline::Intersection(LPDISPATCH Entity, const VARIANT& infinite1, const VARIANT& infinite2)
  14564. {
  14565.     LPDISPATCH result;
  14566.     static BYTE parms[] =
  14567.         VTS_DISPATCH VTS_VARIANT VTS_VARIANT;
  14568.     InvokeHelper(0x2000f, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  14569.         Entity, &infinite1, &infinite2);
  14570.     return result;
  14571. }
  14572.  
  14573. BOOL I2DPolyline::ExtendToSet(LPDISPATCH point)
  14574. {
  14575.     BOOL result;
  14576.     static BYTE parms[] =
  14577.         VTS_DISPATCH;
  14578.     InvokeHelper(0x20010, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  14579.         point);
  14580.     return result;
  14581. }
  14582.  
  14583. BOOL I2DPolyline::TrimToSet(LPDISPATCH point)
  14584. {
  14585.     BOOL result;
  14586.     static BYTE parms[] =
  14587.         VTS_DISPATCH;
  14588.     InvokeHelper(0x20011, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  14589.         point);
  14590.     return result;
  14591. }
  14592.  
  14593. BOOL I2DPolyline::Break(LPDISPATCH point1, LPDISPATCH point2)
  14594. {
  14595.     BOOL result;
  14596.     static BYTE parms[] =
  14597.         VTS_DISPATCH VTS_DISPATCH;
  14598.     InvokeHelper(0x20012, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  14599.         point1, point2);
  14600.     return result;
  14601. }
  14602.  
  14603. void I2DPolyline::Update()
  14604. {
  14605.     InvokeHelper(0x20013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  14606. }
  14607.  
  14608. void I2DPolyline::UpdateNow()
  14609. {
  14610.     InvokeHelper(0x20014, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  14611. }
  14612.  
  14613. BOOL I2DPolyline::Explode()
  14614. {
  14615.     BOOL result;
  14616.     InvokeHelper(0x10001, DISPATCH_METHOD, VT_BOOL, (void*)&result, NULL);
  14617.     return result;
  14618. }
  14619.  
  14620. short I2DPolyline::Fillet()
  14621. {
  14622.     short result;
  14623.     InvokeHelper(0x7, DISPATCH_METHOD, VT_I2, (void*)&result, NULL);
  14624.     return result;
  14625. }
  14626.  
  14627. short I2DPolyline::Chamfer()
  14628. {
  14629.     short result;
  14630.     InvokeHelper(0x8, DISPATCH_METHOD, VT_I2, (void*)&result, NULL);
  14631.     return result;
  14632. }
  14633.  
  14634.  
  14635. /////////////////////////////////////////////////////////////////////////////
  14636. // I3DPolyline properties
  14637.  
  14638. LPDISPATCH I3DPolyline::GetApplication()
  14639. {
  14640.     LPDISPATCH result;
  14641.     GetProperty(0x40001, VT_DISPATCH, (void*)&result);
  14642.     return result;
  14643. }
  14644.  
  14645. LPDISPATCH I3DPolyline::GetParent()
  14646. {
  14647.     LPDISPATCH result;
  14648.     GetProperty(0x40002, VT_DISPATCH, (void*)&result);
  14649.     return result;
  14650. }
  14651.  
  14652. LPDISPATCH I3DPolyline::GetColor()
  14653. {
  14654.     LPDISPATCH result;
  14655.     GetProperty(0x30001, VT_DISPATCH, (void*)&result);
  14656.     return result;
  14657. }
  14658.  
  14659. void I3DPolyline::SetColor(LPDISPATCH propVal)
  14660. {
  14661.     SetProperty(0x30001, VT_DISPATCH, propVal);
  14662. }
  14663.  
  14664. short I3DPolyline::GetColorNumber()
  14665. {
  14666.     short result;
  14667.     GetProperty(0x30002, VT_I2, (void*)&result);
  14668.     return result;
  14669. }
  14670.  
  14671. void I3DPolyline::SetColorNumber(short propVal)
  14672. {
  14673.     SetProperty(0x30002, VT_I2, propVal);
  14674. }
  14675.  
  14676. LPDISPATCH I3DPolyline::GetLayer()
  14677. {
  14678.     LPDISPATCH result;
  14679.     GetProperty(0x30003, VT_DISPATCH, (void*)&result);
  14680.     return result;
  14681. }
  14682.  
  14683. void I3DPolyline::SetLayer(LPDISPATCH propVal)
  14684. {
  14685.     SetProperty(0x30003, VT_DISPATCH, propVal);
  14686. }
  14687.  
  14688. LPDISPATCH I3DPolyline::GetLinetype()
  14689. {
  14690.     LPDISPATCH result;
  14691.     GetProperty(0x30004, VT_DISPATCH, (void*)&result);
  14692.     return result;
  14693. }
  14694.  
  14695. void I3DPolyline::SetLinetype(LPDISPATCH propVal)
  14696. {
  14697.     SetProperty(0x30004, VT_DISPATCH, propVal);
  14698. }
  14699.  
  14700. double I3DPolyline::GetThickness()
  14701. {
  14702.     double result;
  14703.     GetProperty(0x30005, VT_R8, (void*)&result);
  14704.     return result;
  14705. }
  14706.  
  14707. void I3DPolyline::SetThickness(double propVal)
  14708. {
  14709.     SetProperty(0x30005, VT_R8, propVal);
  14710. }
  14711.  
  14712. BOOL I3DPolyline::GetPaperSpace()
  14713. {
  14714.     BOOL result;
  14715.     GetProperty(0x30006, VT_BOOL, (void*)&result);
  14716.     return result;
  14717. }
  14718.  
  14719. void I3DPolyline::SetPaperSpace(BOOL propVal)
  14720. {
  14721.     SetProperty(0x30006, VT_BOOL, propVal);
  14722. }
  14723.  
  14724. LPDISPATCH I3DPolyline::GetNormal()
  14725. {
  14726.     LPDISPATCH result;
  14727.     GetProperty(0x30007, VT_DISPATCH, (void*)&result);
  14728.     return result;
  14729. }
  14730.  
  14731. void I3DPolyline::SetNormal(LPDISPATCH propVal)
  14732. {
  14733.     SetProperty(0x30007, VT_DISPATCH, propVal);
  14734. }
  14735.  
  14736. CString I3DPolyline::GetName()
  14737. {
  14738.     CString result;
  14739.     GetProperty(0x20001, VT_BSTR, (void*)&result);
  14740.     return result;
  14741. }
  14742.  
  14743. short I3DPolyline::GetType()
  14744. {
  14745.     short result;
  14746.     GetProperty(0x20002, VT_I2, (void*)&result);
  14747.     return result;
  14748. }
  14749.  
  14750. CString I3DPolyline::GetHandle()
  14751. {
  14752.     CString result;
  14753.     GetProperty(0x20003, VT_BSTR, (void*)&result);
  14754.     return result;
  14755. }
  14756.  
  14757. BOOL I3DPolyline::GetHasXData()
  14758. {
  14759.     BOOL result;
  14760.     GetProperty(0x20004, VT_BOOL, (void*)&result);
  14761.     return result;
  14762. }
  14763.  
  14764. LPDISPATCH I3DPolyline::GetXData()
  14765. {
  14766.     LPDISPATCH result;
  14767.     GetProperty(0x20005, VT_DISPATCH, (void*)&result);
  14768.     return result;
  14769. }
  14770.  
  14771. BOOL I3DPolyline::GetAutoDraw()
  14772. {
  14773.     BOOL result;
  14774.     GetProperty(0x20015, VT_BOOL, (void*)&result);
  14775.     return result;
  14776. }
  14777.  
  14778. void I3DPolyline::SetAutoDraw(BOOL propVal)
  14779. {
  14780.     SetProperty(0x20015, VT_BOOL, propVal);
  14781. }
  14782.  
  14783. CString I3DPolyline::Get_Name()
  14784. {
  14785.     CString result;
  14786.     GetProperty(0x0, VT_BSTR, (void*)&result);
  14787.     return result;
  14788. }
  14789.  
  14790. LPDISPATCH I3DPolyline::GetVertices()
  14791. {
  14792.     LPDISPATCH result;
  14793.     GetProperty(0x1, VT_DISPATCH, (void*)&result);
  14794.     return result;
  14795. }
  14796.  
  14797. BOOL I3DPolyline::GetClosed()
  14798. {
  14799.     BOOL result;
  14800.     GetProperty(0x2, VT_BOOL, (void*)&result);
  14801.     return result;
  14802. }
  14803.  
  14804. void I3DPolyline::SetClosed(BOOL propVal)
  14805. {
  14806.     SetProperty(0x2, VT_BOOL, propVal);
  14807. }
  14808.  
  14809. short I3DPolyline::GetCurve()
  14810. {
  14811.     short result;
  14812.     GetProperty(0x3, VT_I2, (void*)&result);
  14813.     return result;
  14814. }
  14815.  
  14816. void I3DPolyline::SetCurve(short propVal)
  14817. {
  14818.     SetProperty(0x3, VT_I2, propVal);
  14819. }
  14820.  
  14821. double I3DPolyline::GetLength()
  14822. {
  14823.     double result;
  14824.     GetProperty(0x4, VT_R8, (void*)&result);
  14825.     return result;
  14826. }
  14827.  
  14828. /////////////////////////////////////////////////////////////////////////////
  14829. // I3DPolyline operations
  14830.  
  14831. void I3DPolyline::Redraw()
  14832. {
  14833.     InvokeHelper(0x30008, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  14834. }
  14835.  
  14836. void I3DPolyline::Regen()
  14837. {
  14838.     InvokeHelper(0x30009, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  14839. }
  14840.  
  14841. void I3DPolyline::Erase()
  14842. {
  14843.     InvokeHelper(0x3000a, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  14844. }
  14845.  
  14846. void I3DPolyline::Delete()
  14847. {
  14848.     InvokeHelper(0x3000b, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  14849. }
  14850.  
  14851. void I3DPolyline::Move(LPDISPATCH offset)
  14852. {
  14853.     static BYTE parms[] =
  14854.         VTS_DISPATCH;
  14855.     InvokeHelper(0x3000c, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  14856.          offset);
  14857. }
  14858.  
  14859. LPDISPATCH I3DPolyline::Copy(LPDISPATCH offset)
  14860. {
  14861.     LPDISPATCH result;
  14862.     static BYTE parms[] =
  14863.         VTS_DISPATCH;
  14864.     InvokeHelper(0x3000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  14865.         offset);
  14866.     return result;
  14867. }
  14868.  
  14869. void I3DPolyline::scale(LPDISPATCH basepoint, LPDISPATCH scale)
  14870. {
  14871.     static BYTE parms[] =
  14872.         VTS_DISPATCH VTS_DISPATCH;
  14873.     InvokeHelper(0x3000e, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  14874.          basepoint, scale);
  14875. }
  14876.  
  14877. void I3DPolyline::ScaleIt(LPDISPATCH basepoint, LPDISPATCH scale)
  14878. {
  14879.     static BYTE parms[] =
  14880.         VTS_DISPATCH VTS_DISPATCH;
  14881.     InvokeHelper(0x3000f, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  14882.          basepoint, scale);
  14883. }
  14884.  
  14885. void I3DPolyline::Rotate(LPDISPATCH basepoint, double Angle)
  14886. {
  14887.     static BYTE parms[] =
  14888.         VTS_DISPATCH VTS_R8;
  14889.     InvokeHelper(0x30010, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  14890.          basepoint, Angle);
  14891. }
  14892.  
  14893. void I3DPolyline::Mirror(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  14894. {
  14895.     static BYTE parms[] =
  14896.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  14897.     InvokeHelper(0x30011, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  14898.          point1, point2, &MirrorText);
  14899. }
  14900.  
  14901. LPDISPATCH I3DPolyline::MirrorCopy(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  14902. {
  14903.     LPDISPATCH result;
  14904.     static BYTE parms[] =
  14905.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  14906.     InvokeHelper(0x30012, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  14907.         point1, point2, &MirrorText);
  14908.     return result;
  14909. }
  14910.  
  14911. void I3DPolyline::Dialog()
  14912. {
  14913.     InvokeHelper(0x30013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  14914. }
  14915.  
  14916. LPDISPATCH I3DPolyline::Offset(LPDISPATCH vec, const VARIANT& Distance)
  14917. {
  14918.     LPDISPATCH result;
  14919.     static BYTE parms[] =
  14920.         VTS_DISPATCH VTS_VARIANT;
  14921.     InvokeHelper(0x30014, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  14922.         vec, &Distance);
  14923.     return result;
  14924. }
  14925.  
  14926. LPDISPATCH I3DPolyline::Array(short numrows, short numcols, double rowspacing, double colspacing, double Rotation)
  14927. {
  14928.     LPDISPATCH result;
  14929.     static BYTE parms[] =
  14930.         VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8;
  14931.     InvokeHelper(0x30015, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  14932.         numrows, numcols, rowspacing, colspacing, Rotation);
  14933.     return result;
  14934. }
  14935.  
  14936. LPDISPATCH I3DPolyline::Array3D(short numrows, short numcols, short numlevels, double rowspacing, double colspacing, double levelspacing, double Rotation)
  14937. {
  14938.     LPDISPATCH result;
  14939.     static BYTE parms[] =
  14940.         VTS_I2 VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8 VTS_R8;
  14941.     InvokeHelper(0x30016, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  14942.         numrows, numcols, numlevels, rowspacing, colspacing, levelspacing, Rotation);
  14943.     return result;
  14944. }
  14945.  
  14946. LPDISPATCH I3DPolyline::PolarArray(short numitems, double fillangle, double angletween, LPDISPATCH Center, const VARIANT& refpoint)
  14947. {
  14948.     LPDISPATCH result;
  14949.     static BYTE parms[] =
  14950.         VTS_I2 VTS_R8 VTS_R8 VTS_DISPATCH VTS_VARIANT;
  14951.     InvokeHelper(0x30017, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  14952.         numitems, fillangle, angletween, Center, &refpoint);
  14953.     return result;
  14954. }
  14955.  
  14956. void I3DPolyline::DisplayGrips()
  14957. {
  14958.     InvokeHelper(0x30018, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  14959. }
  14960.  
  14961. void I3DPolyline::EraseGrips()
  14962. {
  14963.     InvokeHelper(0x30019, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  14964. }
  14965.  
  14966. LPDISPATCH I3DPolyline::Snap2Endpoint(LPDISPATCH closeto)
  14967. {
  14968.     LPDISPATCH result;
  14969.     static BYTE parms[] =
  14970.         VTS_DISPATCH;
  14971.     InvokeHelper(0x20006, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  14972.         closeto);
  14973.     return result;
  14974. }
  14975.  
  14976. LPDISPATCH I3DPolyline::Snap2Midpoint(LPDISPATCH closeto)
  14977. {
  14978.     LPDISPATCH result;
  14979.     static BYTE parms[] =
  14980.         VTS_DISPATCH;
  14981.     InvokeHelper(0x20007, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  14982.         closeto);
  14983.     return result;
  14984. }
  14985.  
  14986. LPDISPATCH I3DPolyline::Snap2Center(LPDISPATCH closeto)
  14987. {
  14988.     LPDISPATCH result;
  14989.     static BYTE parms[] =
  14990.         VTS_DISPATCH;
  14991.     InvokeHelper(0x20008, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  14992.         closeto);
  14993.     return result;
  14994. }
  14995.  
  14996. LPDISPATCH I3DPolyline::Snap2Nearest(LPDISPATCH closeto)
  14997. {
  14998.     LPDISPATCH result;
  14999.     static BYTE parms[] =
  15000.         VTS_DISPATCH;
  15001.     InvokeHelper(0x20009, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  15002.         closeto);
  15003.     return result;
  15004. }
  15005.  
  15006. LPDISPATCH I3DPolyline::Snap2Point(LPDISPATCH closeto)
  15007. {
  15008.     LPDISPATCH result;
  15009.     static BYTE parms[] =
  15010.         VTS_DISPATCH;
  15011.     InvokeHelper(0x2000a, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  15012.         closeto);
  15013.     return result;
  15014. }
  15015.  
  15016. LPDISPATCH I3DPolyline::Snap2Quadrant(LPDISPATCH closeto)
  15017. {
  15018.     LPDISPATCH result;
  15019.     static BYTE parms[] =
  15020.         VTS_DISPATCH;
  15021.     InvokeHelper(0x2000b, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  15022.         closeto);
  15023.     return result;
  15024. }
  15025.  
  15026. LPDISPATCH I3DPolyline::Snap2Insertion(LPDISPATCH closeto)
  15027. {
  15028.     LPDISPATCH result;
  15029.     static BYTE parms[] =
  15030.         VTS_DISPATCH;
  15031.     InvokeHelper(0x2000c, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  15032.         closeto);
  15033.     return result;
  15034. }
  15035.  
  15036. LPDISPATCH I3DPolyline::Snap2Perpendicular(LPDISPATCH closeto, LPDISPATCH prevpoint)
  15037. {
  15038.     LPDISPATCH result;
  15039.     static BYTE parms[] =
  15040.         VTS_DISPATCH VTS_DISPATCH;
  15041.     InvokeHelper(0x2000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  15042.         closeto, prevpoint);
  15043.     return result;
  15044. }
  15045.  
  15046. LPDISPATCH I3DPolyline::Snap2Tangent(LPDISPATCH closeto, LPDISPATCH prevpoint)
  15047. {
  15048.     LPDISPATCH result;
  15049.     static BYTE parms[] =
  15050.         VTS_DISPATCH VTS_DISPATCH;
  15051.     InvokeHelper(0x2000e, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  15052.         closeto, prevpoint);
  15053.     return result;
  15054. }
  15055.  
  15056. LPDISPATCH I3DPolyline::Intersection(LPDISPATCH Entity, const VARIANT& infinite1, const VARIANT& infinite2)
  15057. {
  15058.     LPDISPATCH result;
  15059.     static BYTE parms[] =
  15060.         VTS_DISPATCH VTS_VARIANT VTS_VARIANT;
  15061.     InvokeHelper(0x2000f, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  15062.         Entity, &infinite1, &infinite2);
  15063.     return result;
  15064. }
  15065.  
  15066. BOOL I3DPolyline::ExtendToSet(LPDISPATCH point)
  15067. {
  15068.     BOOL result;
  15069.     static BYTE parms[] =
  15070.         VTS_DISPATCH;
  15071.     InvokeHelper(0x20010, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  15072.         point);
  15073.     return result;
  15074. }
  15075.  
  15076. BOOL I3DPolyline::TrimToSet(LPDISPATCH point)
  15077. {
  15078.     BOOL result;
  15079.     static BYTE parms[] =
  15080.         VTS_DISPATCH;
  15081.     InvokeHelper(0x20011, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  15082.         point);
  15083.     return result;
  15084. }
  15085.  
  15086. BOOL I3DPolyline::Break(LPDISPATCH point1, LPDISPATCH point2)
  15087. {
  15088.     BOOL result;
  15089.     static BYTE parms[] =
  15090.         VTS_DISPATCH VTS_DISPATCH;
  15091.     InvokeHelper(0x20012, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  15092.         point1, point2);
  15093.     return result;
  15094. }
  15095.  
  15096. void I3DPolyline::Update()
  15097. {
  15098.     InvokeHelper(0x20013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  15099. }
  15100.  
  15101. void I3DPolyline::UpdateNow()
  15102. {
  15103.     InvokeHelper(0x20014, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  15104. }
  15105.  
  15106. BOOL I3DPolyline::Explode()
  15107. {
  15108.     BOOL result;
  15109.     InvokeHelper(0x10001, DISPATCH_METHOD, VT_BOOL, (void*)&result, NULL);
  15110.     return result;
  15111. }
  15112.  
  15113.  
  15114. /////////////////////////////////////////////////////////////////////////////
  15115. // IPolymesh properties
  15116.  
  15117. LPDISPATCH IPolymesh::GetApplication()
  15118. {
  15119.     LPDISPATCH result;
  15120.     GetProperty(0x40001, VT_DISPATCH, (void*)&result);
  15121.     return result;
  15122. }
  15123.  
  15124. LPDISPATCH IPolymesh::GetParent()
  15125. {
  15126.     LPDISPATCH result;
  15127.     GetProperty(0x40002, VT_DISPATCH, (void*)&result);
  15128.     return result;
  15129. }
  15130.  
  15131. LPDISPATCH IPolymesh::GetColor()
  15132. {
  15133.     LPDISPATCH result;
  15134.     GetProperty(0x30001, VT_DISPATCH, (void*)&result);
  15135.     return result;
  15136. }
  15137.  
  15138. void IPolymesh::SetColor(LPDISPATCH propVal)
  15139. {
  15140.     SetProperty(0x30001, VT_DISPATCH, propVal);
  15141. }
  15142.  
  15143. short IPolymesh::GetColorNumber()
  15144. {
  15145.     short result;
  15146.     GetProperty(0x30002, VT_I2, (void*)&result);
  15147.     return result;
  15148. }
  15149.  
  15150. void IPolymesh::SetColorNumber(short propVal)
  15151. {
  15152.     SetProperty(0x30002, VT_I2, propVal);
  15153. }
  15154.  
  15155. LPDISPATCH IPolymesh::GetLayer()
  15156. {
  15157.     LPDISPATCH result;
  15158.     GetProperty(0x30003, VT_DISPATCH, (void*)&result);
  15159.     return result;
  15160. }
  15161.  
  15162. void IPolymesh::SetLayer(LPDISPATCH propVal)
  15163. {
  15164.     SetProperty(0x30003, VT_DISPATCH, propVal);
  15165. }
  15166.  
  15167. LPDISPATCH IPolymesh::GetLinetype()
  15168. {
  15169.     LPDISPATCH result;
  15170.     GetProperty(0x30004, VT_DISPATCH, (void*)&result);
  15171.     return result;
  15172. }
  15173.  
  15174. void IPolymesh::SetLinetype(LPDISPATCH propVal)
  15175. {
  15176.     SetProperty(0x30004, VT_DISPATCH, propVal);
  15177. }
  15178.  
  15179. double IPolymesh::GetThickness()
  15180. {
  15181.     double result;
  15182.     GetProperty(0x30005, VT_R8, (void*)&result);
  15183.     return result;
  15184. }
  15185.  
  15186. void IPolymesh::SetThickness(double propVal)
  15187. {
  15188.     SetProperty(0x30005, VT_R8, propVal);
  15189. }
  15190.  
  15191. BOOL IPolymesh::GetPaperSpace()
  15192. {
  15193.     BOOL result;
  15194.     GetProperty(0x30006, VT_BOOL, (void*)&result);
  15195.     return result;
  15196. }
  15197.  
  15198. void IPolymesh::SetPaperSpace(BOOL propVal)
  15199. {
  15200.     SetProperty(0x30006, VT_BOOL, propVal);
  15201. }
  15202.  
  15203. LPDISPATCH IPolymesh::GetNormal()
  15204. {
  15205.     LPDISPATCH result;
  15206.     GetProperty(0x30007, VT_DISPATCH, (void*)&result);
  15207.     return result;
  15208. }
  15209.  
  15210. void IPolymesh::SetNormal(LPDISPATCH propVal)
  15211. {
  15212.     SetProperty(0x30007, VT_DISPATCH, propVal);
  15213. }
  15214.  
  15215. CString IPolymesh::GetName()
  15216. {
  15217.     CString result;
  15218.     GetProperty(0x20001, VT_BSTR, (void*)&result);
  15219.     return result;
  15220. }
  15221.  
  15222. short IPolymesh::GetType()
  15223. {
  15224.     short result;
  15225.     GetProperty(0x20002, VT_I2, (void*)&result);
  15226.     return result;
  15227. }
  15228.  
  15229. CString IPolymesh::GetHandle()
  15230. {
  15231.     CString result;
  15232.     GetProperty(0x20003, VT_BSTR, (void*)&result);
  15233.     return result;
  15234. }
  15235.  
  15236. BOOL IPolymesh::GetHasXData()
  15237. {
  15238.     BOOL result;
  15239.     GetProperty(0x20004, VT_BOOL, (void*)&result);
  15240.     return result;
  15241. }
  15242.  
  15243. LPDISPATCH IPolymesh::GetXData()
  15244. {
  15245.     LPDISPATCH result;
  15246.     GetProperty(0x20005, VT_DISPATCH, (void*)&result);
  15247.     return result;
  15248. }
  15249.  
  15250. BOOL IPolymesh::GetAutoDraw()
  15251. {
  15252.     BOOL result;
  15253.     GetProperty(0x20015, VT_BOOL, (void*)&result);
  15254.     return result;
  15255. }
  15256.  
  15257. void IPolymesh::SetAutoDraw(BOOL propVal)
  15258. {
  15259.     SetProperty(0x20015, VT_BOOL, propVal);
  15260. }
  15261.  
  15262. CString IPolymesh::Get_Name()
  15263. {
  15264.     CString result;
  15265.     GetProperty(0x0, VT_BSTR, (void*)&result);
  15266.     return result;
  15267. }
  15268.  
  15269. LPDISPATCH IPolymesh::GetVertices()
  15270. {
  15271.     LPDISPATCH result;
  15272.     GetProperty(0x1, VT_DISPATCH, (void*)&result);
  15273.     return result;
  15274. }
  15275.  
  15276. BOOL IPolymesh::GetColumnClosed()
  15277. {
  15278.     BOOL result;
  15279.     GetProperty(0x2, VT_BOOL, (void*)&result);
  15280.     return result;
  15281. }
  15282.  
  15283. void IPolymesh::SetColumnClosed(BOOL propVal)
  15284. {
  15285.     SetProperty(0x2, VT_BOOL, propVal);
  15286. }
  15287.  
  15288. BOOL IPolymesh::GetRowClosed()
  15289. {
  15290.     BOOL result;
  15291.     GetProperty(0x3, VT_BOOL, (void*)&result);
  15292.     return result;
  15293. }
  15294.  
  15295. void IPolymesh::SetRowClosed(BOOL propVal)
  15296. {
  15297.     SetProperty(0x3, VT_BOOL, propVal);
  15298. }
  15299.  
  15300. short IPolymesh::GetColumnSize()
  15301. {
  15302.     short result;
  15303.     GetProperty(0x4, VT_I2, (void*)&result);
  15304.     return result;
  15305. }
  15306.  
  15307. short IPolymesh::GetRowSize()
  15308. {
  15309.     short result;
  15310.     GetProperty(0x5, VT_I2, (void*)&result);
  15311.     return result;
  15312. }
  15313.  
  15314. short IPolymesh::GetColumnCurve()
  15315. {
  15316.     short result;
  15317.     GetProperty(0x6, VT_I2, (void*)&result);
  15318.     return result;
  15319. }
  15320.  
  15321. short IPolymesh::GetRowCurve()
  15322. {
  15323.     short result;
  15324.     GetProperty(0x7, VT_I2, (void*)&result);
  15325.     return result;
  15326. }
  15327.  
  15328. /////////////////////////////////////////////////////////////////////////////
  15329. // IPolymesh operations
  15330.  
  15331. void IPolymesh::Redraw()
  15332. {
  15333.     InvokeHelper(0x30008, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  15334. }
  15335.  
  15336. void IPolymesh::Regen()
  15337. {
  15338.     InvokeHelper(0x30009, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  15339. }
  15340.  
  15341. void IPolymesh::Erase()
  15342. {
  15343.     InvokeHelper(0x3000a, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  15344. }
  15345.  
  15346. void IPolymesh::Delete()
  15347. {
  15348.     InvokeHelper(0x3000b, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  15349. }
  15350.  
  15351. void IPolymesh::Move(LPDISPATCH offset)
  15352. {
  15353.     static BYTE parms[] =
  15354.         VTS_DISPATCH;
  15355.     InvokeHelper(0x3000c, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  15356.          offset);
  15357. }
  15358.  
  15359. LPDISPATCH IPolymesh::Copy(LPDISPATCH offset)
  15360. {
  15361.     LPDISPATCH result;
  15362.     static BYTE parms[] =
  15363.         VTS_DISPATCH;
  15364.     InvokeHelper(0x3000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  15365.         offset);
  15366.     return result;
  15367. }
  15368.  
  15369. void IPolymesh::scale(LPDISPATCH basepoint, LPDISPATCH scale)
  15370. {
  15371.     static BYTE parms[] =
  15372.         VTS_DISPATCH VTS_DISPATCH;
  15373.     InvokeHelper(0x3000e, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  15374.          basepoint, scale);
  15375. }
  15376.  
  15377. void IPolymesh::ScaleIt(LPDISPATCH basepoint, LPDISPATCH scale)
  15378. {
  15379.     static BYTE parms[] =
  15380.         VTS_DISPATCH VTS_DISPATCH;
  15381.     InvokeHelper(0x3000f, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  15382.          basepoint, scale);
  15383. }
  15384.  
  15385. void IPolymesh::Rotate(LPDISPATCH basepoint, double Angle)
  15386. {
  15387.     static BYTE parms[] =
  15388.         VTS_DISPATCH VTS_R8;
  15389.     InvokeHelper(0x30010, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  15390.          basepoint, Angle);
  15391. }
  15392.  
  15393. void IPolymesh::Mirror(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  15394. {
  15395.     static BYTE parms[] =
  15396.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  15397.     InvokeHelper(0x30011, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  15398.          point1, point2, &MirrorText);
  15399. }
  15400.  
  15401. LPDISPATCH IPolymesh::MirrorCopy(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  15402. {
  15403.     LPDISPATCH result;
  15404.     static BYTE parms[] =
  15405.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  15406.     InvokeHelper(0x30012, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  15407.         point1, point2, &MirrorText);
  15408.     return result;
  15409. }
  15410.  
  15411. void IPolymesh::Dialog()
  15412. {
  15413.     InvokeHelper(0x30013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  15414. }
  15415.  
  15416. LPDISPATCH IPolymesh::Offset(LPDISPATCH vec, const VARIANT& Distance)
  15417. {
  15418.     LPDISPATCH result;
  15419.     static BYTE parms[] =
  15420.         VTS_DISPATCH VTS_VARIANT;
  15421.     InvokeHelper(0x30014, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  15422.         vec, &Distance);
  15423.     return result;
  15424. }
  15425.  
  15426. LPDISPATCH IPolymesh::Array(short numrows, short numcols, double rowspacing, double colspacing, double Rotation)
  15427. {
  15428.     LPDISPATCH result;
  15429.     static BYTE parms[] =
  15430.         VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8;
  15431.     InvokeHelper(0x30015, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  15432.         numrows, numcols, rowspacing, colspacing, Rotation);
  15433.     return result;
  15434. }
  15435.  
  15436. LPDISPATCH IPolymesh::Array3D(short numrows, short numcols, short numlevels, double rowspacing, double colspacing, double levelspacing, double Rotation)
  15437. {
  15438.     LPDISPATCH result;
  15439.     static BYTE parms[] =
  15440.         VTS_I2 VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8 VTS_R8;
  15441.     InvokeHelper(0x30016, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  15442.         numrows, numcols, numlevels, rowspacing, colspacing, levelspacing, Rotation);
  15443.     return result;
  15444. }
  15445.  
  15446. LPDISPATCH IPolymesh::PolarArray(short numitems, double fillangle, double angletween, LPDISPATCH Center, const VARIANT& refpoint)
  15447. {
  15448.     LPDISPATCH result;
  15449.     static BYTE parms[] =
  15450.         VTS_I2 VTS_R8 VTS_R8 VTS_DISPATCH VTS_VARIANT;
  15451.     InvokeHelper(0x30017, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  15452.         numitems, fillangle, angletween, Center, &refpoint);
  15453.     return result;
  15454. }
  15455.  
  15456. void IPolymesh::DisplayGrips()
  15457. {
  15458.     InvokeHelper(0x30018, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  15459. }
  15460.  
  15461. void IPolymesh::EraseGrips()
  15462. {
  15463.     InvokeHelper(0x30019, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  15464. }
  15465.  
  15466. LPDISPATCH IPolymesh::Snap2Endpoint(LPDISPATCH closeto)
  15467. {
  15468.     LPDISPATCH result;
  15469.     static BYTE parms[] =
  15470.         VTS_DISPATCH;
  15471.     InvokeHelper(0x20006, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  15472.         closeto);
  15473.     return result;
  15474. }
  15475.  
  15476. LPDISPATCH IPolymesh::Snap2Midpoint(LPDISPATCH closeto)
  15477. {
  15478.     LPDISPATCH result;
  15479.     static BYTE parms[] =
  15480.         VTS_DISPATCH;
  15481.     InvokeHelper(0x20007, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  15482.         closeto);
  15483.     return result;
  15484. }
  15485.  
  15486. LPDISPATCH IPolymesh::Snap2Center(LPDISPATCH closeto)
  15487. {
  15488.     LPDISPATCH result;
  15489.     static BYTE parms[] =
  15490.         VTS_DISPATCH;
  15491.     InvokeHelper(0x20008, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  15492.         closeto);
  15493.     return result;
  15494. }
  15495.  
  15496. LPDISPATCH IPolymesh::Snap2Nearest(LPDISPATCH closeto)
  15497. {
  15498.     LPDISPATCH result;
  15499.     static BYTE parms[] =
  15500.         VTS_DISPATCH;
  15501.     InvokeHelper(0x20009, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  15502.         closeto);
  15503.     return result;
  15504. }
  15505.  
  15506. LPDISPATCH IPolymesh::Snap2Point(LPDISPATCH closeto)
  15507. {
  15508.     LPDISPATCH result;
  15509.     static BYTE parms[] =
  15510.         VTS_DISPATCH;
  15511.     InvokeHelper(0x2000a, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  15512.         closeto);
  15513.     return result;
  15514. }
  15515.  
  15516. LPDISPATCH IPolymesh::Snap2Quadrant(LPDISPATCH closeto)
  15517. {
  15518.     LPDISPATCH result;
  15519.     static BYTE parms[] =
  15520.         VTS_DISPATCH;
  15521.     InvokeHelper(0x2000b, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  15522.         closeto);
  15523.     return result;
  15524. }
  15525.  
  15526. LPDISPATCH IPolymesh::Snap2Insertion(LPDISPATCH closeto)
  15527. {
  15528.     LPDISPATCH result;
  15529.     static BYTE parms[] =
  15530.         VTS_DISPATCH;
  15531.     InvokeHelper(0x2000c, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  15532.         closeto);
  15533.     return result;
  15534. }
  15535.  
  15536. LPDISPATCH IPolymesh::Snap2Perpendicular(LPDISPATCH closeto, LPDISPATCH prevpoint)
  15537. {
  15538.     LPDISPATCH result;
  15539.     static BYTE parms[] =
  15540.         VTS_DISPATCH VTS_DISPATCH;
  15541.     InvokeHelper(0x2000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  15542.         closeto, prevpoint);
  15543.     return result;
  15544. }
  15545.  
  15546. LPDISPATCH IPolymesh::Snap2Tangent(LPDISPATCH closeto, LPDISPATCH prevpoint)
  15547. {
  15548.     LPDISPATCH result;
  15549.     static BYTE parms[] =
  15550.         VTS_DISPATCH VTS_DISPATCH;
  15551.     InvokeHelper(0x2000e, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  15552.         closeto, prevpoint);
  15553.     return result;
  15554. }
  15555.  
  15556. LPDISPATCH IPolymesh::Intersection(LPDISPATCH Entity, const VARIANT& infinite1, const VARIANT& infinite2)
  15557. {
  15558.     LPDISPATCH result;
  15559.     static BYTE parms[] =
  15560.         VTS_DISPATCH VTS_VARIANT VTS_VARIANT;
  15561.     InvokeHelper(0x2000f, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  15562.         Entity, &infinite1, &infinite2);
  15563.     return result;
  15564. }
  15565.  
  15566. BOOL IPolymesh::ExtendToSet(LPDISPATCH point)
  15567. {
  15568.     BOOL result;
  15569.     static BYTE parms[] =
  15570.         VTS_DISPATCH;
  15571.     InvokeHelper(0x20010, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  15572.         point);
  15573.     return result;
  15574. }
  15575.  
  15576. BOOL IPolymesh::TrimToSet(LPDISPATCH point)
  15577. {
  15578.     BOOL result;
  15579.     static BYTE parms[] =
  15580.         VTS_DISPATCH;
  15581.     InvokeHelper(0x20011, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  15582.         point);
  15583.     return result;
  15584. }
  15585.  
  15586. BOOL IPolymesh::Break(LPDISPATCH point1, LPDISPATCH point2)
  15587. {
  15588.     BOOL result;
  15589.     static BYTE parms[] =
  15590.         VTS_DISPATCH VTS_DISPATCH;
  15591.     InvokeHelper(0x20012, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  15592.         point1, point2);
  15593.     return result;
  15594. }
  15595.  
  15596. void IPolymesh::Update()
  15597. {
  15598.     InvokeHelper(0x20013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  15599. }
  15600.  
  15601. void IPolymesh::UpdateNow()
  15602. {
  15603.     InvokeHelper(0x20014, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  15604. }
  15605.  
  15606. BOOL IPolymesh::Explode()
  15607. {
  15608.     BOOL result;
  15609.     InvokeHelper(0x10001, DISPATCH_METHOD, VT_BOOL, (void*)&result, NULL);
  15610.     return result;
  15611. }
  15612.  
  15613.  
  15614. /////////////////////////////////////////////////////////////////////////////
  15615. // IPolyface properties
  15616.  
  15617. LPDISPATCH IPolyface::GetApplication()
  15618. {
  15619.     LPDISPATCH result;
  15620.     GetProperty(0x40001, VT_DISPATCH, (void*)&result);
  15621.     return result;
  15622. }
  15623.  
  15624. LPDISPATCH IPolyface::GetParent()
  15625. {
  15626.     LPDISPATCH result;
  15627.     GetProperty(0x40002, VT_DISPATCH, (void*)&result);
  15628.     return result;
  15629. }
  15630.  
  15631. LPDISPATCH IPolyface::GetColor()
  15632. {
  15633.     LPDISPATCH result;
  15634.     GetProperty(0x30001, VT_DISPATCH, (void*)&result);
  15635.     return result;
  15636. }
  15637.  
  15638. void IPolyface::SetColor(LPDISPATCH propVal)
  15639. {
  15640.     SetProperty(0x30001, VT_DISPATCH, propVal);
  15641. }
  15642.  
  15643. short IPolyface::GetColorNumber()
  15644. {
  15645.     short result;
  15646.     GetProperty(0x30002, VT_I2, (void*)&result);
  15647.     return result;
  15648. }
  15649.  
  15650. void IPolyface::SetColorNumber(short propVal)
  15651. {
  15652.     SetProperty(0x30002, VT_I2, propVal);
  15653. }
  15654.  
  15655. LPDISPATCH IPolyface::GetLayer()
  15656. {
  15657.     LPDISPATCH result;
  15658.     GetProperty(0x30003, VT_DISPATCH, (void*)&result);
  15659.     return result;
  15660. }
  15661.  
  15662. void IPolyface::SetLayer(LPDISPATCH propVal)
  15663. {
  15664.     SetProperty(0x30003, VT_DISPATCH, propVal);
  15665. }
  15666.  
  15667. LPDISPATCH IPolyface::GetLinetype()
  15668. {
  15669.     LPDISPATCH result;
  15670.     GetProperty(0x30004, VT_DISPATCH, (void*)&result);
  15671.     return result;
  15672. }
  15673.  
  15674. void IPolyface::SetLinetype(LPDISPATCH propVal)
  15675. {
  15676.     SetProperty(0x30004, VT_DISPATCH, propVal);
  15677. }
  15678.  
  15679. double IPolyface::GetThickness()
  15680. {
  15681.     double result;
  15682.     GetProperty(0x30005, VT_R8, (void*)&result);
  15683.     return result;
  15684. }
  15685.  
  15686. void IPolyface::SetThickness(double propVal)
  15687. {
  15688.     SetProperty(0x30005, VT_R8, propVal);
  15689. }
  15690.  
  15691. BOOL IPolyface::GetPaperSpace()
  15692. {
  15693.     BOOL result;
  15694.     GetProperty(0x30006, VT_BOOL, (void*)&result);
  15695.     return result;
  15696. }
  15697.  
  15698. void IPolyface::SetPaperSpace(BOOL propVal)
  15699. {
  15700.     SetProperty(0x30006, VT_BOOL, propVal);
  15701. }
  15702.  
  15703. LPDISPATCH IPolyface::GetNormal()
  15704. {
  15705.     LPDISPATCH result;
  15706.     GetProperty(0x30007, VT_DISPATCH, (void*)&result);
  15707.     return result;
  15708. }
  15709.  
  15710. void IPolyface::SetNormal(LPDISPATCH propVal)
  15711. {
  15712.     SetProperty(0x30007, VT_DISPATCH, propVal);
  15713. }
  15714.  
  15715. CString IPolyface::GetName()
  15716. {
  15717.     CString result;
  15718.     GetProperty(0x20001, VT_BSTR, (void*)&result);
  15719.     return result;
  15720. }
  15721.  
  15722. short IPolyface::GetType()
  15723. {
  15724.     short result;
  15725.     GetProperty(0x20002, VT_I2, (void*)&result);
  15726.     return result;
  15727. }
  15728.  
  15729. CString IPolyface::GetHandle()
  15730. {
  15731.     CString result;
  15732.     GetProperty(0x20003, VT_BSTR, (void*)&result);
  15733.     return result;
  15734. }
  15735.  
  15736. BOOL IPolyface::GetHasXData()
  15737. {
  15738.     BOOL result;
  15739.     GetProperty(0x20004, VT_BOOL, (void*)&result);
  15740.     return result;
  15741. }
  15742.  
  15743. LPDISPATCH IPolyface::GetXData()
  15744. {
  15745.     LPDISPATCH result;
  15746.     GetProperty(0x20005, VT_DISPATCH, (void*)&result);
  15747.     return result;
  15748. }
  15749.  
  15750. BOOL IPolyface::GetAutoDraw()
  15751. {
  15752.     BOOL result;
  15753.     GetProperty(0x20015, VT_BOOL, (void*)&result);
  15754.     return result;
  15755. }
  15756.  
  15757. void IPolyface::SetAutoDraw(BOOL propVal)
  15758. {
  15759.     SetProperty(0x20015, VT_BOOL, propVal);
  15760. }
  15761.  
  15762. CString IPolyface::Get_Name()
  15763. {
  15764.     CString result;
  15765.     GetProperty(0x0, VT_BSTR, (void*)&result);
  15766.     return result;
  15767. }
  15768.  
  15769. LPDISPATCH IPolyface::GetVertices()
  15770. {
  15771.     LPDISPATCH result;
  15772.     GetProperty(0x1, VT_DISPATCH, (void*)&result);
  15773.     return result;
  15774. }
  15775.  
  15776. LPDISPATCH IPolyface::GetFaceVertices()
  15777. {
  15778.     LPDISPATCH result;
  15779.     GetProperty(0x2, VT_DISPATCH, (void*)&result);
  15780.     return result;
  15781. }
  15782.  
  15783. /////////////////////////////////////////////////////////////////////////////
  15784. // IPolyface operations
  15785.  
  15786. void IPolyface::Redraw()
  15787. {
  15788.     InvokeHelper(0x30008, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  15789. }
  15790.  
  15791. void IPolyface::Regen()
  15792. {
  15793.     InvokeHelper(0x30009, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  15794. }
  15795.  
  15796. void IPolyface::Erase()
  15797. {
  15798.     InvokeHelper(0x3000a, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  15799. }
  15800.  
  15801. void IPolyface::Delete()
  15802. {
  15803.     InvokeHelper(0x3000b, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  15804. }
  15805.  
  15806. void IPolyface::Move(LPDISPATCH offset)
  15807. {
  15808.     static BYTE parms[] =
  15809.         VTS_DISPATCH;
  15810.     InvokeHelper(0x3000c, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  15811.          offset);
  15812. }
  15813.  
  15814. LPDISPATCH IPolyface::Copy(LPDISPATCH offset)
  15815. {
  15816.     LPDISPATCH result;
  15817.     static BYTE parms[] =
  15818.         VTS_DISPATCH;
  15819.     InvokeHelper(0x3000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  15820.         offset);
  15821.     return result;
  15822. }
  15823.  
  15824. void IPolyface::scale(LPDISPATCH basepoint, LPDISPATCH scale)
  15825. {
  15826.     static BYTE parms[] =
  15827.         VTS_DISPATCH VTS_DISPATCH;
  15828.     InvokeHelper(0x3000e, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  15829.          basepoint, scale);
  15830. }
  15831.  
  15832. void IPolyface::ScaleIt(LPDISPATCH basepoint, LPDISPATCH scale)
  15833. {
  15834.     static BYTE parms[] =
  15835.         VTS_DISPATCH VTS_DISPATCH;
  15836.     InvokeHelper(0x3000f, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  15837.          basepoint, scale);
  15838. }
  15839.  
  15840. void IPolyface::Rotate(LPDISPATCH basepoint, double Angle)
  15841. {
  15842.     static BYTE parms[] =
  15843.         VTS_DISPATCH VTS_R8;
  15844.     InvokeHelper(0x30010, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  15845.          basepoint, Angle);
  15846. }
  15847.  
  15848. void IPolyface::Mirror(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  15849. {
  15850.     static BYTE parms[] =
  15851.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  15852.     InvokeHelper(0x30011, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  15853.          point1, point2, &MirrorText);
  15854. }
  15855.  
  15856. LPDISPATCH IPolyface::MirrorCopy(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  15857. {
  15858.     LPDISPATCH result;
  15859.     static BYTE parms[] =
  15860.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  15861.     InvokeHelper(0x30012, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  15862.         point1, point2, &MirrorText);
  15863.     return result;
  15864. }
  15865.  
  15866. void IPolyface::Dialog()
  15867. {
  15868.     InvokeHelper(0x30013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  15869. }
  15870.  
  15871. LPDISPATCH IPolyface::Offset(LPDISPATCH vec, const VARIANT& Distance)
  15872. {
  15873.     LPDISPATCH result;
  15874.     static BYTE parms[] =
  15875.         VTS_DISPATCH VTS_VARIANT;
  15876.     InvokeHelper(0x30014, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  15877.         vec, &Distance);
  15878.     return result;
  15879. }
  15880.  
  15881. LPDISPATCH IPolyface::Array(short numrows, short numcols, double rowspacing, double colspacing, double Rotation)
  15882. {
  15883.     LPDISPATCH result;
  15884.     static BYTE parms[] =
  15885.         VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8;
  15886.     InvokeHelper(0x30015, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  15887.         numrows, numcols, rowspacing, colspacing, Rotation);
  15888.     return result;
  15889. }
  15890.  
  15891. LPDISPATCH IPolyface::Array3D(short numrows, short numcols, short numlevels, double rowspacing, double colspacing, double levelspacing, double Rotation)
  15892. {
  15893.     LPDISPATCH result;
  15894.     static BYTE parms[] =
  15895.         VTS_I2 VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8 VTS_R8;
  15896.     InvokeHelper(0x30016, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  15897.         numrows, numcols, numlevels, rowspacing, colspacing, levelspacing, Rotation);
  15898.     return result;
  15899. }
  15900.  
  15901. LPDISPATCH IPolyface::PolarArray(short numitems, double fillangle, double angletween, LPDISPATCH Center, const VARIANT& refpoint)
  15902. {
  15903.     LPDISPATCH result;
  15904.     static BYTE parms[] =
  15905.         VTS_I2 VTS_R8 VTS_R8 VTS_DISPATCH VTS_VARIANT;
  15906.     InvokeHelper(0x30017, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  15907.         numitems, fillangle, angletween, Center, &refpoint);
  15908.     return result;
  15909. }
  15910.  
  15911. void IPolyface::DisplayGrips()
  15912. {
  15913.     InvokeHelper(0x30018, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  15914. }
  15915.  
  15916. void IPolyface::EraseGrips()
  15917. {
  15918.     InvokeHelper(0x30019, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  15919. }
  15920.  
  15921. LPDISPATCH IPolyface::Snap2Endpoint(LPDISPATCH closeto)
  15922. {
  15923.     LPDISPATCH result;
  15924.     static BYTE parms[] =
  15925.         VTS_DISPATCH;
  15926.     InvokeHelper(0x20006, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  15927.         closeto);
  15928.     return result;
  15929. }
  15930.  
  15931. LPDISPATCH IPolyface::Snap2Midpoint(LPDISPATCH closeto)
  15932. {
  15933.     LPDISPATCH result;
  15934.     static BYTE parms[] =
  15935.         VTS_DISPATCH;
  15936.     InvokeHelper(0x20007, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  15937.         closeto);
  15938.     return result;
  15939. }
  15940.  
  15941. LPDISPATCH IPolyface::Snap2Center(LPDISPATCH closeto)
  15942. {
  15943.     LPDISPATCH result;
  15944.     static BYTE parms[] =
  15945.         VTS_DISPATCH;
  15946.     InvokeHelper(0x20008, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  15947.         closeto);
  15948.     return result;
  15949. }
  15950.  
  15951. LPDISPATCH IPolyface::Snap2Nearest(LPDISPATCH closeto)
  15952. {
  15953.     LPDISPATCH result;
  15954.     static BYTE parms[] =
  15955.         VTS_DISPATCH;
  15956.     InvokeHelper(0x20009, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  15957.         closeto);
  15958.     return result;
  15959. }
  15960.  
  15961. LPDISPATCH IPolyface::Snap2Point(LPDISPATCH closeto)
  15962. {
  15963.     LPDISPATCH result;
  15964.     static BYTE parms[] =
  15965.         VTS_DISPATCH;
  15966.     InvokeHelper(0x2000a, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  15967.         closeto);
  15968.     return result;
  15969. }
  15970.  
  15971. LPDISPATCH IPolyface::Snap2Quadrant(LPDISPATCH closeto)
  15972. {
  15973.     LPDISPATCH result;
  15974.     static BYTE parms[] =
  15975.         VTS_DISPATCH;
  15976.     InvokeHelper(0x2000b, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  15977.         closeto);
  15978.     return result;
  15979. }
  15980.  
  15981. LPDISPATCH IPolyface::Snap2Insertion(LPDISPATCH closeto)
  15982. {
  15983.     LPDISPATCH result;
  15984.     static BYTE parms[] =
  15985.         VTS_DISPATCH;
  15986.     InvokeHelper(0x2000c, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  15987.         closeto);
  15988.     return result;
  15989. }
  15990.  
  15991. LPDISPATCH IPolyface::Snap2Perpendicular(LPDISPATCH closeto, LPDISPATCH prevpoint)
  15992. {
  15993.     LPDISPATCH result;
  15994.     static BYTE parms[] =
  15995.         VTS_DISPATCH VTS_DISPATCH;
  15996.     InvokeHelper(0x2000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  15997.         closeto, prevpoint);
  15998.     return result;
  15999. }
  16000.  
  16001. LPDISPATCH IPolyface::Snap2Tangent(LPDISPATCH closeto, LPDISPATCH prevpoint)
  16002. {
  16003.     LPDISPATCH result;
  16004.     static BYTE parms[] =
  16005.         VTS_DISPATCH VTS_DISPATCH;
  16006.     InvokeHelper(0x2000e, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  16007.         closeto, prevpoint);
  16008.     return result;
  16009. }
  16010.  
  16011. LPDISPATCH IPolyface::Intersection(LPDISPATCH Entity, const VARIANT& infinite1, const VARIANT& infinite2)
  16012. {
  16013.     LPDISPATCH result;
  16014.     static BYTE parms[] =
  16015.         VTS_DISPATCH VTS_VARIANT VTS_VARIANT;
  16016.     InvokeHelper(0x2000f, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  16017.         Entity, &infinite1, &infinite2);
  16018.     return result;
  16019. }
  16020.  
  16021. BOOL IPolyface::ExtendToSet(LPDISPATCH point)
  16022. {
  16023.     BOOL result;
  16024.     static BYTE parms[] =
  16025.         VTS_DISPATCH;
  16026.     InvokeHelper(0x20010, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  16027.         point);
  16028.     return result;
  16029. }
  16030.  
  16031. BOOL IPolyface::TrimToSet(LPDISPATCH point)
  16032. {
  16033.     BOOL result;
  16034.     static BYTE parms[] =
  16035.         VTS_DISPATCH;
  16036.     InvokeHelper(0x20011, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  16037.         point);
  16038.     return result;
  16039. }
  16040.  
  16041. BOOL IPolyface::Break(LPDISPATCH point1, LPDISPATCH point2)
  16042. {
  16043.     BOOL result;
  16044.     static BYTE parms[] =
  16045.         VTS_DISPATCH VTS_DISPATCH;
  16046.     InvokeHelper(0x20012, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  16047.         point1, point2);
  16048.     return result;
  16049. }
  16050.  
  16051. void IPolyface::Update()
  16052. {
  16053.     InvokeHelper(0x20013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  16054. }
  16055.  
  16056. void IPolyface::UpdateNow()
  16057. {
  16058.     InvokeHelper(0x20014, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  16059. }
  16060.  
  16061. BOOL IPolyface::Explode()
  16062. {
  16063.     BOOL result;
  16064.     InvokeHelper(0x10001, DISPATCH_METHOD, VT_BOOL, (void*)&result, NULL);
  16065.     return result;
  16066. }
  16067.  
  16068.  
  16069. /////////////////////////////////////////////////////////////////////////////
  16070. // I2DVertices properties
  16071.  
  16072. LPDISPATCH I2DVertices::GetApplication()
  16073. {
  16074.     LPDISPATCH result;
  16075.     GetProperty(0x20001, VT_DISPATCH, (void*)&result);
  16076.     return result;
  16077. }
  16078.  
  16079. LPDISPATCH I2DVertices::GetParent()
  16080. {
  16081.     LPDISPATCH result;
  16082.     GetProperty(0x20002, VT_DISPATCH, (void*)&result);
  16083.     return result;
  16084. }
  16085.  
  16086. long I2DVertices::GetCount()
  16087. {
  16088.     long result;
  16089.     GetProperty(0x10001, VT_I4, (void*)&result);
  16090.     return result;
  16091. }
  16092.  
  16093. /////////////////////////////////////////////////////////////////////////////
  16094. // I2DVertices operations
  16095.  
  16096. LPDISPATCH I2DVertices::GetItem(long index)
  16097. {
  16098.     LPDISPATCH result;
  16099.     static BYTE parms[] =
  16100.         VTS_I4;
  16101.     InvokeHelper(0x10002, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  16102.         index);
  16103.     return result;
  16104. }
  16105.  
  16106. LPDISPATCH I2DVertices::Get_Item(long index)
  16107. {
  16108.     LPDISPATCH result;
  16109.     static BYTE parms[] =
  16110.         VTS_I4;
  16111.     InvokeHelper(0x0, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  16112.         index);
  16113.     return result;
  16114. }
  16115.  
  16116.  
  16117. /////////////////////////////////////////////////////////////////////////////
  16118. // IVertices properties
  16119.  
  16120. LPDISPATCH IVertices::GetApplication()
  16121. {
  16122.     LPDISPATCH result;
  16123.     GetProperty(0x20001, VT_DISPATCH, (void*)&result);
  16124.     return result;
  16125. }
  16126.  
  16127. LPDISPATCH IVertices::GetParent()
  16128. {
  16129.     LPDISPATCH result;
  16130.     GetProperty(0x20002, VT_DISPATCH, (void*)&result);
  16131.     return result;
  16132. }
  16133.  
  16134. long IVertices::GetCount()
  16135. {
  16136.     long result;
  16137.     GetProperty(0x10001, VT_I4, (void*)&result);
  16138.     return result;
  16139. }
  16140.  
  16141. /////////////////////////////////////////////////////////////////////////////
  16142. // IVertices operations
  16143.  
  16144. LPDISPATCH IVertices::GetItem(long index)
  16145. {
  16146.     LPDISPATCH result;
  16147.     static BYTE parms[] =
  16148.         VTS_I4;
  16149.     InvokeHelper(0x10002, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  16150.         index);
  16151.     return result;
  16152. }
  16153.  
  16154. LPDISPATCH IVertices::Get_Item(long index)
  16155. {
  16156.     LPDISPATCH result;
  16157.     static BYTE parms[] =
  16158.         VTS_I4;
  16159.     InvokeHelper(0x0, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  16160.         index);
  16161.     return result;
  16162. }
  16163.  
  16164.  
  16165. /////////////////////////////////////////////////////////////////////////////
  16166. // IFaceVertices properties
  16167.  
  16168. LPDISPATCH IFaceVertices::GetApplication()
  16169. {
  16170.     LPDISPATCH result;
  16171.     GetProperty(0x20001, VT_DISPATCH, (void*)&result);
  16172.     return result;
  16173. }
  16174.  
  16175. LPDISPATCH IFaceVertices::GetParent()
  16176. {
  16177.     LPDISPATCH result;
  16178.     GetProperty(0x20002, VT_DISPATCH, (void*)&result);
  16179.     return result;
  16180. }
  16181.  
  16182. long IFaceVertices::GetCount()
  16183. {
  16184.     long result;
  16185.     GetProperty(0x10001, VT_I4, (void*)&result);
  16186.     return result;
  16187. }
  16188.  
  16189. /////////////////////////////////////////////////////////////////////////////
  16190. // IFaceVertices operations
  16191.  
  16192. LPDISPATCH IFaceVertices::GetItem(long index)
  16193. {
  16194.     LPDISPATCH result;
  16195.     static BYTE parms[] =
  16196.         VTS_I4;
  16197.     InvokeHelper(0x10002, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  16198.         index);
  16199.     return result;
  16200. }
  16201.  
  16202. LPDISPATCH IFaceVertices::Get_Item(long index)
  16203. {
  16204.     LPDISPATCH result;
  16205.     static BYTE parms[] =
  16206.         VTS_I4;
  16207.     InvokeHelper(0x0, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&result, parms,
  16208.         index);
  16209.     return result;
  16210. }
  16211.  
  16212.  
  16213. /////////////////////////////////////////////////////////////////////////////
  16214. // I2DVertex properties
  16215.  
  16216. LPDISPATCH I2DVertex::GetApplication()
  16217. {
  16218.     LPDISPATCH result;
  16219.     GetProperty(0x40001, VT_DISPATCH, (void*)&result);
  16220.     return result;
  16221. }
  16222.  
  16223. LPDISPATCH I2DVertex::GetParent()
  16224. {
  16225.     LPDISPATCH result;
  16226.     GetProperty(0x40002, VT_DISPATCH, (void*)&result);
  16227.     return result;
  16228. }
  16229.  
  16230. LPDISPATCH I2DVertex::GetColor()
  16231. {
  16232.     LPDISPATCH result;
  16233.     GetProperty(0x30001, VT_DISPATCH, (void*)&result);
  16234.     return result;
  16235. }
  16236.  
  16237. void I2DVertex::SetColor(LPDISPATCH propVal)
  16238. {
  16239.     SetProperty(0x30001, VT_DISPATCH, propVal);
  16240. }
  16241.  
  16242. short I2DVertex::GetColorNumber()
  16243. {
  16244.     short result;
  16245.     GetProperty(0x30002, VT_I2, (void*)&result);
  16246.     return result;
  16247. }
  16248.  
  16249. void I2DVertex::SetColorNumber(short propVal)
  16250. {
  16251.     SetProperty(0x30002, VT_I2, propVal);
  16252. }
  16253.  
  16254. LPDISPATCH I2DVertex::GetLayer()
  16255. {
  16256.     LPDISPATCH result;
  16257.     GetProperty(0x30003, VT_DISPATCH, (void*)&result);
  16258.     return result;
  16259. }
  16260.  
  16261. void I2DVertex::SetLayer(LPDISPATCH propVal)
  16262. {
  16263.     SetProperty(0x30003, VT_DISPATCH, propVal);
  16264. }
  16265.  
  16266. LPDISPATCH I2DVertex::GetLinetype()
  16267. {
  16268.     LPDISPATCH result;
  16269.     GetProperty(0x30004, VT_DISPATCH, (void*)&result);
  16270.     return result;
  16271. }
  16272.  
  16273. void I2DVertex::SetLinetype(LPDISPATCH propVal)
  16274. {
  16275.     SetProperty(0x30004, VT_DISPATCH, propVal);
  16276. }
  16277.  
  16278. double I2DVertex::GetThickness()
  16279. {
  16280.     double result;
  16281.     GetProperty(0x30005, VT_R8, (void*)&result);
  16282.     return result;
  16283. }
  16284.  
  16285. void I2DVertex::SetThickness(double propVal)
  16286. {
  16287.     SetProperty(0x30005, VT_R8, propVal);
  16288. }
  16289.  
  16290. BOOL I2DVertex::GetPaperSpace()
  16291. {
  16292.     BOOL result;
  16293.     GetProperty(0x30006, VT_BOOL, (void*)&result);
  16294.     return result;
  16295. }
  16296.  
  16297. void I2DVertex::SetPaperSpace(BOOL propVal)
  16298. {
  16299.     SetProperty(0x30006, VT_BOOL, propVal);
  16300. }
  16301.  
  16302. LPDISPATCH I2DVertex::GetNormal()
  16303. {
  16304.     LPDISPATCH result;
  16305.     GetProperty(0x30007, VT_DISPATCH, (void*)&result);
  16306.     return result;
  16307. }
  16308.  
  16309. void I2DVertex::SetNormal(LPDISPATCH propVal)
  16310. {
  16311.     SetProperty(0x30007, VT_DISPATCH, propVal);
  16312. }
  16313.  
  16314. CString I2DVertex::GetName()
  16315. {
  16316.     CString result;
  16317.     GetProperty(0x20001, VT_BSTR, (void*)&result);
  16318.     return result;
  16319. }
  16320.  
  16321. short I2DVertex::GetType()
  16322. {
  16323.     short result;
  16324.     GetProperty(0x20002, VT_I2, (void*)&result);
  16325.     return result;
  16326. }
  16327.  
  16328. CString I2DVertex::GetHandle()
  16329. {
  16330.     CString result;
  16331.     GetProperty(0x20003, VT_BSTR, (void*)&result);
  16332.     return result;
  16333. }
  16334.  
  16335. BOOL I2DVertex::GetHasXData()
  16336. {
  16337.     BOOL result;
  16338.     GetProperty(0x20004, VT_BOOL, (void*)&result);
  16339.     return result;
  16340. }
  16341.  
  16342. LPDISPATCH I2DVertex::GetXData()
  16343. {
  16344.     LPDISPATCH result;
  16345.     GetProperty(0x20005, VT_DISPATCH, (void*)&result);
  16346.     return result;
  16347. }
  16348.  
  16349. BOOL I2DVertex::GetAutoDraw()
  16350. {
  16351.     BOOL result;
  16352.     GetProperty(0x20015, VT_BOOL, (void*)&result);
  16353.     return result;
  16354. }
  16355.  
  16356. void I2DVertex::SetAutoDraw(BOOL propVal)
  16357. {
  16358.     SetProperty(0x20015, VT_BOOL, propVal);
  16359. }
  16360.  
  16361. CString I2DVertex::Get_Name()
  16362. {
  16363.     CString result;
  16364.     GetProperty(0x0, VT_BSTR, (void*)&result);
  16365.     return result;
  16366. }
  16367.  
  16368. LPDISPATCH I2DVertex::GetWhere()
  16369. {
  16370.     LPDISPATCH result;
  16371.     GetProperty(0x1, VT_DISPATCH, (void*)&result);
  16372.     return result;
  16373. }
  16374.  
  16375. void I2DVertex::SetWhere(LPDISPATCH propVal)
  16376. {
  16377.     SetProperty(0x1, VT_DISPATCH, propVal);
  16378. }
  16379.  
  16380. double I2DVertex::GetEndWidth()
  16381. {
  16382.     double result;
  16383.     GetProperty(0x2, VT_R8, (void*)&result);
  16384.     return result;
  16385. }
  16386.  
  16387. void I2DVertex::SetEndWidth(double propVal)
  16388. {
  16389.     SetProperty(0x2, VT_R8, propVal);
  16390. }
  16391.  
  16392. double I2DVertex::GetStartWidth()
  16393. {
  16394.     double result;
  16395.     GetProperty(0x3, VT_R8, (void*)&result);
  16396.     return result;
  16397. }
  16398.  
  16399. void I2DVertex::SetStartWidth(double propVal)
  16400. {
  16401.     SetProperty(0x3, VT_R8, propVal);
  16402. }
  16403.  
  16404. double I2DVertex::GetBulge()
  16405. {
  16406.     double result;
  16407.     GetProperty(0x4, VT_R8, (void*)&result);
  16408.     return result;
  16409. }
  16410.  
  16411. void I2DVertex::SetBulge(double propVal)
  16412. {
  16413.     SetProperty(0x4, VT_R8, propVal);
  16414. }
  16415.  
  16416. double I2DVertex::GetTangent()
  16417. {
  16418.     double result;
  16419.     GetProperty(0x5, VT_R8, (void*)&result);
  16420.     return result;
  16421. }
  16422.  
  16423. void I2DVertex::SetTangent(double propVal)
  16424. {
  16425.     SetProperty(0x5, VT_R8, propVal);
  16426. }
  16427.  
  16428. BOOL I2DVertex::GetControlPoint()
  16429. {
  16430.     BOOL result;
  16431.     GetProperty(0x6, VT_BOOL, (void*)&result);
  16432.     return result;
  16433. }
  16434.  
  16435. BOOL I2DVertex::GetCurveFit()
  16436. {
  16437.     BOOL result;
  16438.     GetProperty(0x7, VT_BOOL, (void*)&result);
  16439.     return result;
  16440. }
  16441.  
  16442. /////////////////////////////////////////////////////////////////////////////
  16443. // I2DVertex operations
  16444.  
  16445. void I2DVertex::Redraw()
  16446. {
  16447.     InvokeHelper(0x30008, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  16448. }
  16449.  
  16450. void I2DVertex::Regen()
  16451. {
  16452.     InvokeHelper(0x30009, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  16453. }
  16454.  
  16455. void I2DVertex::Erase()
  16456. {
  16457.     InvokeHelper(0x3000a, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  16458. }
  16459.  
  16460. void I2DVertex::Delete()
  16461. {
  16462.     InvokeHelper(0x3000b, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  16463. }
  16464.  
  16465. void I2DVertex::Move(LPDISPATCH offset)
  16466. {
  16467.     static BYTE parms[] =
  16468.         VTS_DISPATCH;
  16469.     InvokeHelper(0x3000c, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  16470.          offset);
  16471. }
  16472.  
  16473. LPDISPATCH I2DVertex::Copy(LPDISPATCH offset)
  16474. {
  16475.     LPDISPATCH result;
  16476.     static BYTE parms[] =
  16477.         VTS_DISPATCH;
  16478.     InvokeHelper(0x3000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  16479.         offset);
  16480.     return result;
  16481. }
  16482.  
  16483. void I2DVertex::scale(LPDISPATCH basepoint, LPDISPATCH scale)
  16484. {
  16485.     static BYTE parms[] =
  16486.         VTS_DISPATCH VTS_DISPATCH;
  16487.     InvokeHelper(0x3000e, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  16488.          basepoint, scale);
  16489. }
  16490.  
  16491. void I2DVertex::ScaleIt(LPDISPATCH basepoint, LPDISPATCH scale)
  16492. {
  16493.     static BYTE parms[] =
  16494.         VTS_DISPATCH VTS_DISPATCH;
  16495.     InvokeHelper(0x3000f, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  16496.          basepoint, scale);
  16497. }
  16498.  
  16499. void I2DVertex::Rotate(LPDISPATCH basepoint, double Angle)
  16500. {
  16501.     static BYTE parms[] =
  16502.         VTS_DISPATCH VTS_R8;
  16503.     InvokeHelper(0x30010, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  16504.          basepoint, Angle);
  16505. }
  16506.  
  16507. void I2DVertex::Mirror(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  16508. {
  16509.     static BYTE parms[] =
  16510.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  16511.     InvokeHelper(0x30011, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  16512.          point1, point2, &MirrorText);
  16513. }
  16514.  
  16515. LPDISPATCH I2DVertex::MirrorCopy(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  16516. {
  16517.     LPDISPATCH result;
  16518.     static BYTE parms[] =
  16519.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  16520.     InvokeHelper(0x30012, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  16521.         point1, point2, &MirrorText);
  16522.     return result;
  16523. }
  16524.  
  16525. void I2DVertex::Dialog()
  16526. {
  16527.     InvokeHelper(0x30013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  16528. }
  16529.  
  16530. LPDISPATCH I2DVertex::Offset(LPDISPATCH vec, const VARIANT& Distance)
  16531. {
  16532.     LPDISPATCH result;
  16533.     static BYTE parms[] =
  16534.         VTS_DISPATCH VTS_VARIANT;
  16535.     InvokeHelper(0x30014, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  16536.         vec, &Distance);
  16537.     return result;
  16538. }
  16539.  
  16540. LPDISPATCH I2DVertex::Array(short numrows, short numcols, double rowspacing, double colspacing, double Rotation)
  16541. {
  16542.     LPDISPATCH result;
  16543.     static BYTE parms[] =
  16544.         VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8;
  16545.     InvokeHelper(0x30015, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  16546.         numrows, numcols, rowspacing, colspacing, Rotation);
  16547.     return result;
  16548. }
  16549.  
  16550. LPDISPATCH I2DVertex::Array3D(short numrows, short numcols, short numlevels, double rowspacing, double colspacing, double levelspacing, double Rotation)
  16551. {
  16552.     LPDISPATCH result;
  16553.     static BYTE parms[] =
  16554.         VTS_I2 VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8 VTS_R8;
  16555.     InvokeHelper(0x30016, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  16556.         numrows, numcols, numlevels, rowspacing, colspacing, levelspacing, Rotation);
  16557.     return result;
  16558. }
  16559.  
  16560. LPDISPATCH I2DVertex::PolarArray(short numitems, double fillangle, double angletween, LPDISPATCH Center, const VARIANT& refpoint)
  16561. {
  16562.     LPDISPATCH result;
  16563.     static BYTE parms[] =
  16564.         VTS_I2 VTS_R8 VTS_R8 VTS_DISPATCH VTS_VARIANT;
  16565.     InvokeHelper(0x30017, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  16566.         numitems, fillangle, angletween, Center, &refpoint);
  16567.     return result;
  16568. }
  16569.  
  16570. void I2DVertex::DisplayGrips()
  16571. {
  16572.     InvokeHelper(0x30018, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  16573. }
  16574.  
  16575. void I2DVertex::EraseGrips()
  16576. {
  16577.     InvokeHelper(0x30019, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  16578. }
  16579.  
  16580. LPDISPATCH I2DVertex::Snap2Endpoint(LPDISPATCH closeto)
  16581. {
  16582.     LPDISPATCH result;
  16583.     static BYTE parms[] =
  16584.         VTS_DISPATCH;
  16585.     InvokeHelper(0x20006, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  16586.         closeto);
  16587.     return result;
  16588. }
  16589.  
  16590. LPDISPATCH I2DVertex::Snap2Midpoint(LPDISPATCH closeto)
  16591. {
  16592.     LPDISPATCH result;
  16593.     static BYTE parms[] =
  16594.         VTS_DISPATCH;
  16595.     InvokeHelper(0x20007, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  16596.         closeto);
  16597.     return result;
  16598. }
  16599.  
  16600. LPDISPATCH I2DVertex::Snap2Center(LPDISPATCH closeto)
  16601. {
  16602.     LPDISPATCH result;
  16603.     static BYTE parms[] =
  16604.         VTS_DISPATCH;
  16605.     InvokeHelper(0x20008, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  16606.         closeto);
  16607.     return result;
  16608. }
  16609.  
  16610. LPDISPATCH I2DVertex::Snap2Nearest(LPDISPATCH closeto)
  16611. {
  16612.     LPDISPATCH result;
  16613.     static BYTE parms[] =
  16614.         VTS_DISPATCH;
  16615.     InvokeHelper(0x20009, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  16616.         closeto);
  16617.     return result;
  16618. }
  16619.  
  16620. LPDISPATCH I2DVertex::Snap2Point(LPDISPATCH closeto)
  16621. {
  16622.     LPDISPATCH result;
  16623.     static BYTE parms[] =
  16624.         VTS_DISPATCH;
  16625.     InvokeHelper(0x2000a, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  16626.         closeto);
  16627.     return result;
  16628. }
  16629.  
  16630. LPDISPATCH I2DVertex::Snap2Quadrant(LPDISPATCH closeto)
  16631. {
  16632.     LPDISPATCH result;
  16633.     static BYTE parms[] =
  16634.         VTS_DISPATCH;
  16635.     InvokeHelper(0x2000b, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  16636.         closeto);
  16637.     return result;
  16638. }
  16639.  
  16640. LPDISPATCH I2DVertex::Snap2Insertion(LPDISPATCH closeto)
  16641. {
  16642.     LPDISPATCH result;
  16643.     static BYTE parms[] =
  16644.         VTS_DISPATCH;
  16645.     InvokeHelper(0x2000c, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  16646.         closeto);
  16647.     return result;
  16648. }
  16649.  
  16650. LPDISPATCH I2DVertex::Snap2Perpendicular(LPDISPATCH closeto, LPDISPATCH prevpoint)
  16651. {
  16652.     LPDISPATCH result;
  16653.     static BYTE parms[] =
  16654.         VTS_DISPATCH VTS_DISPATCH;
  16655.     InvokeHelper(0x2000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  16656.         closeto, prevpoint);
  16657.     return result;
  16658. }
  16659.  
  16660. LPDISPATCH I2DVertex::Snap2Tangent(LPDISPATCH closeto, LPDISPATCH prevpoint)
  16661. {
  16662.     LPDISPATCH result;
  16663.     static BYTE parms[] =
  16664.         VTS_DISPATCH VTS_DISPATCH;
  16665.     InvokeHelper(0x2000e, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  16666.         closeto, prevpoint);
  16667.     return result;
  16668. }
  16669.  
  16670. LPDISPATCH I2DVertex::Intersection(LPDISPATCH Entity, const VARIANT& infinite1, const VARIANT& infinite2)
  16671. {
  16672.     LPDISPATCH result;
  16673.     static BYTE parms[] =
  16674.         VTS_DISPATCH VTS_VARIANT VTS_VARIANT;
  16675.     InvokeHelper(0x2000f, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  16676.         Entity, &infinite1, &infinite2);
  16677.     return result;
  16678. }
  16679.  
  16680. BOOL I2DVertex::ExtendToSet(LPDISPATCH point)
  16681. {
  16682.     BOOL result;
  16683.     static BYTE parms[] =
  16684.         VTS_DISPATCH;
  16685.     InvokeHelper(0x20010, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  16686.         point);
  16687.     return result;
  16688. }
  16689.  
  16690. BOOL I2DVertex::TrimToSet(LPDISPATCH point)
  16691. {
  16692.     BOOL result;
  16693.     static BYTE parms[] =
  16694.         VTS_DISPATCH;
  16695.     InvokeHelper(0x20011, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  16696.         point);
  16697.     return result;
  16698. }
  16699.  
  16700. BOOL I2DVertex::Break(LPDISPATCH point1, LPDISPATCH point2)
  16701. {
  16702.     BOOL result;
  16703.     static BYTE parms[] =
  16704.         VTS_DISPATCH VTS_DISPATCH;
  16705.     InvokeHelper(0x20012, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  16706.         point1, point2);
  16707.     return result;
  16708. }
  16709.  
  16710. void I2DVertex::Update()
  16711. {
  16712.     InvokeHelper(0x20013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  16713. }
  16714.  
  16715. void I2DVertex::UpdateNow()
  16716. {
  16717.     InvokeHelper(0x20014, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  16718. }
  16719.  
  16720.  
  16721. /////////////////////////////////////////////////////////////////////////////
  16722. // IVertex properties
  16723.  
  16724. LPDISPATCH IVertex::GetApplication()
  16725. {
  16726.     LPDISPATCH result;
  16727.     GetProperty(0x40001, VT_DISPATCH, (void*)&result);
  16728.     return result;
  16729. }
  16730.  
  16731. LPDISPATCH IVertex::GetParent()
  16732. {
  16733.     LPDISPATCH result;
  16734.     GetProperty(0x40002, VT_DISPATCH, (void*)&result);
  16735.     return result;
  16736. }
  16737.  
  16738. LPDISPATCH IVertex::GetColor()
  16739. {
  16740.     LPDISPATCH result;
  16741.     GetProperty(0x30001, VT_DISPATCH, (void*)&result);
  16742.     return result;
  16743. }
  16744.  
  16745. void IVertex::SetColor(LPDISPATCH propVal)
  16746. {
  16747.     SetProperty(0x30001, VT_DISPATCH, propVal);
  16748. }
  16749.  
  16750. short IVertex::GetColorNumber()
  16751. {
  16752.     short result;
  16753.     GetProperty(0x30002, VT_I2, (void*)&result);
  16754.     return result;
  16755. }
  16756.  
  16757. void IVertex::SetColorNumber(short propVal)
  16758. {
  16759.     SetProperty(0x30002, VT_I2, propVal);
  16760. }
  16761.  
  16762. LPDISPATCH IVertex::GetLayer()
  16763. {
  16764.     LPDISPATCH result;
  16765.     GetProperty(0x30003, VT_DISPATCH, (void*)&result);
  16766.     return result;
  16767. }
  16768.  
  16769. void IVertex::SetLayer(LPDISPATCH propVal)
  16770. {
  16771.     SetProperty(0x30003, VT_DISPATCH, propVal);
  16772. }
  16773.  
  16774. LPDISPATCH IVertex::GetLinetype()
  16775. {
  16776.     LPDISPATCH result;
  16777.     GetProperty(0x30004, VT_DISPATCH, (void*)&result);
  16778.     return result;
  16779. }
  16780.  
  16781. void IVertex::SetLinetype(LPDISPATCH propVal)
  16782. {
  16783.     SetProperty(0x30004, VT_DISPATCH, propVal);
  16784. }
  16785.  
  16786. double IVertex::GetThickness()
  16787. {
  16788.     double result;
  16789.     GetProperty(0x30005, VT_R8, (void*)&result);
  16790.     return result;
  16791. }
  16792.  
  16793. void IVertex::SetThickness(double propVal)
  16794. {
  16795.     SetProperty(0x30005, VT_R8, propVal);
  16796. }
  16797.  
  16798. BOOL IVertex::GetPaperSpace()
  16799. {
  16800.     BOOL result;
  16801.     GetProperty(0x30006, VT_BOOL, (void*)&result);
  16802.     return result;
  16803. }
  16804.  
  16805. void IVertex::SetPaperSpace(BOOL propVal)
  16806. {
  16807.     SetProperty(0x30006, VT_BOOL, propVal);
  16808. }
  16809.  
  16810. LPDISPATCH IVertex::GetNormal()
  16811. {
  16812.     LPDISPATCH result;
  16813.     GetProperty(0x30007, VT_DISPATCH, (void*)&result);
  16814.     return result;
  16815. }
  16816.  
  16817. void IVertex::SetNormal(LPDISPATCH propVal)
  16818. {
  16819.     SetProperty(0x30007, VT_DISPATCH, propVal);
  16820. }
  16821.  
  16822. CString IVertex::GetName()
  16823. {
  16824.     CString result;
  16825.     GetProperty(0x20001, VT_BSTR, (void*)&result);
  16826.     return result;
  16827. }
  16828.  
  16829. short IVertex::GetType()
  16830. {
  16831.     short result;
  16832.     GetProperty(0x20002, VT_I2, (void*)&result);
  16833.     return result;
  16834. }
  16835.  
  16836. CString IVertex::GetHandle()
  16837. {
  16838.     CString result;
  16839.     GetProperty(0x20003, VT_BSTR, (void*)&result);
  16840.     return result;
  16841. }
  16842.  
  16843. BOOL IVertex::GetHasXData()
  16844. {
  16845.     BOOL result;
  16846.     GetProperty(0x20004, VT_BOOL, (void*)&result);
  16847.     return result;
  16848. }
  16849.  
  16850. LPDISPATCH IVertex::GetXData()
  16851. {
  16852.     LPDISPATCH result;
  16853.     GetProperty(0x20005, VT_DISPATCH, (void*)&result);
  16854.     return result;
  16855. }
  16856.  
  16857. BOOL IVertex::GetAutoDraw()
  16858. {
  16859.     BOOL result;
  16860.     GetProperty(0x20015, VT_BOOL, (void*)&result);
  16861.     return result;
  16862. }
  16863.  
  16864. void IVertex::SetAutoDraw(BOOL propVal)
  16865. {
  16866.     SetProperty(0x20015, VT_BOOL, propVal);
  16867. }
  16868.  
  16869. CString IVertex::Get_Name()
  16870. {
  16871.     CString result;
  16872.     GetProperty(0x0, VT_BSTR, (void*)&result);
  16873.     return result;
  16874. }
  16875.  
  16876. LPDISPATCH IVertex::GetWhere()
  16877. {
  16878.     LPDISPATCH result;
  16879.     GetProperty(0x1, VT_DISPATCH, (void*)&result);
  16880.     return result;
  16881. }
  16882.  
  16883. void IVertex::SetWhere(LPDISPATCH propVal)
  16884. {
  16885.     SetProperty(0x1, VT_DISPATCH, propVal);
  16886. }
  16887.  
  16888. /////////////////////////////////////////////////////////////////////////////
  16889. // IVertex operations
  16890.  
  16891. void IVertex::Redraw()
  16892. {
  16893.     InvokeHelper(0x30008, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  16894. }
  16895.  
  16896. void IVertex::Regen()
  16897. {
  16898.     InvokeHelper(0x30009, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  16899. }
  16900.  
  16901. void IVertex::Erase()
  16902. {
  16903.     InvokeHelper(0x3000a, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  16904. }
  16905.  
  16906. void IVertex::Delete()
  16907. {
  16908.     InvokeHelper(0x3000b, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  16909. }
  16910.  
  16911. void IVertex::Move(LPDISPATCH offset)
  16912. {
  16913.     static BYTE parms[] =
  16914.         VTS_DISPATCH;
  16915.     InvokeHelper(0x3000c, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  16916.          offset);
  16917. }
  16918.  
  16919. LPDISPATCH IVertex::Copy(LPDISPATCH offset)
  16920. {
  16921.     LPDISPATCH result;
  16922.     static BYTE parms[] =
  16923.         VTS_DISPATCH;
  16924.     InvokeHelper(0x3000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  16925.         offset);
  16926.     return result;
  16927. }
  16928.  
  16929. void IVertex::scale(LPDISPATCH basepoint, LPDISPATCH scale)
  16930. {
  16931.     static BYTE parms[] =
  16932.         VTS_DISPATCH VTS_DISPATCH;
  16933.     InvokeHelper(0x3000e, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  16934.          basepoint, scale);
  16935. }
  16936.  
  16937. void IVertex::ScaleIt(LPDISPATCH basepoint, LPDISPATCH scale)
  16938. {
  16939.     static BYTE parms[] =
  16940.         VTS_DISPATCH VTS_DISPATCH;
  16941.     InvokeHelper(0x3000f, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  16942.          basepoint, scale);
  16943. }
  16944.  
  16945. void IVertex::Rotate(LPDISPATCH basepoint, double Angle)
  16946. {
  16947.     static BYTE parms[] =
  16948.         VTS_DISPATCH VTS_R8;
  16949.     InvokeHelper(0x30010, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  16950.          basepoint, Angle);
  16951. }
  16952.  
  16953. void IVertex::Mirror(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  16954. {
  16955.     static BYTE parms[] =
  16956.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  16957.     InvokeHelper(0x30011, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  16958.          point1, point2, &MirrorText);
  16959. }
  16960.  
  16961. LPDISPATCH IVertex::MirrorCopy(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  16962. {
  16963.     LPDISPATCH result;
  16964.     static BYTE parms[] =
  16965.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  16966.     InvokeHelper(0x30012, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  16967.         point1, point2, &MirrorText);
  16968.     return result;
  16969. }
  16970.  
  16971. void IVertex::Dialog()
  16972. {
  16973.     InvokeHelper(0x30013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  16974. }
  16975.  
  16976. LPDISPATCH IVertex::Offset(LPDISPATCH vec, const VARIANT& Distance)
  16977. {
  16978.     LPDISPATCH result;
  16979.     static BYTE parms[] =
  16980.         VTS_DISPATCH VTS_VARIANT;
  16981.     InvokeHelper(0x30014, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  16982.         vec, &Distance);
  16983.     return result;
  16984. }
  16985.  
  16986. LPDISPATCH IVertex::Array(short numrows, short numcols, double rowspacing, double colspacing, double Rotation)
  16987. {
  16988.     LPDISPATCH result;
  16989.     static BYTE parms[] =
  16990.         VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8;
  16991.     InvokeHelper(0x30015, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  16992.         numrows, numcols, rowspacing, colspacing, Rotation);
  16993.     return result;
  16994. }
  16995.  
  16996. LPDISPATCH IVertex::Array3D(short numrows, short numcols, short numlevels, double rowspacing, double colspacing, double levelspacing, double Rotation)
  16997. {
  16998.     LPDISPATCH result;
  16999.     static BYTE parms[] =
  17000.         VTS_I2 VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8 VTS_R8;
  17001.     InvokeHelper(0x30016, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  17002.         numrows, numcols, numlevels, rowspacing, colspacing, levelspacing, Rotation);
  17003.     return result;
  17004. }
  17005.  
  17006. LPDISPATCH IVertex::PolarArray(short numitems, double fillangle, double angletween, LPDISPATCH Center, const VARIANT& refpoint)
  17007. {
  17008.     LPDISPATCH result;
  17009.     static BYTE parms[] =
  17010.         VTS_I2 VTS_R8 VTS_R8 VTS_DISPATCH VTS_VARIANT;
  17011.     InvokeHelper(0x30017, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  17012.         numitems, fillangle, angletween, Center, &refpoint);
  17013.     return result;
  17014. }
  17015.  
  17016. void IVertex::DisplayGrips()
  17017. {
  17018.     InvokeHelper(0x30018, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  17019. }
  17020.  
  17021. void IVertex::EraseGrips()
  17022. {
  17023.     InvokeHelper(0x30019, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  17024. }
  17025.  
  17026. LPDISPATCH IVertex::Snap2Endpoint(LPDISPATCH closeto)
  17027. {
  17028.     LPDISPATCH result;
  17029.     static BYTE parms[] =
  17030.         VTS_DISPATCH;
  17031.     InvokeHelper(0x20006, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  17032.         closeto);
  17033.     return result;
  17034. }
  17035.  
  17036. LPDISPATCH IVertex::Snap2Midpoint(LPDISPATCH closeto)
  17037. {
  17038.     LPDISPATCH result;
  17039.     static BYTE parms[] =
  17040.         VTS_DISPATCH;
  17041.     InvokeHelper(0x20007, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  17042.         closeto);
  17043.     return result;
  17044. }
  17045.  
  17046. LPDISPATCH IVertex::Snap2Center(LPDISPATCH closeto)
  17047. {
  17048.     LPDISPATCH result;
  17049.     static BYTE parms[] =
  17050.         VTS_DISPATCH;
  17051.     InvokeHelper(0x20008, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  17052.         closeto);
  17053.     return result;
  17054. }
  17055.  
  17056. LPDISPATCH IVertex::Snap2Nearest(LPDISPATCH closeto)
  17057. {
  17058.     LPDISPATCH result;
  17059.     static BYTE parms[] =
  17060.         VTS_DISPATCH;
  17061.     InvokeHelper(0x20009, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  17062.         closeto);
  17063.     return result;
  17064. }
  17065.  
  17066. LPDISPATCH IVertex::Snap2Point(LPDISPATCH closeto)
  17067. {
  17068.     LPDISPATCH result;
  17069.     static BYTE parms[] =
  17070.         VTS_DISPATCH;
  17071.     InvokeHelper(0x2000a, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  17072.         closeto);
  17073.     return result;
  17074. }
  17075.  
  17076. LPDISPATCH IVertex::Snap2Quadrant(LPDISPATCH closeto)
  17077. {
  17078.     LPDISPATCH result;
  17079.     static BYTE parms[] =
  17080.         VTS_DISPATCH;
  17081.     InvokeHelper(0x2000b, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  17082.         closeto);
  17083.     return result;
  17084. }
  17085.  
  17086. LPDISPATCH IVertex::Snap2Insertion(LPDISPATCH closeto)
  17087. {
  17088.     LPDISPATCH result;
  17089.     static BYTE parms[] =
  17090.         VTS_DISPATCH;
  17091.     InvokeHelper(0x2000c, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  17092.         closeto);
  17093.     return result;
  17094. }
  17095.  
  17096. LPDISPATCH IVertex::Snap2Perpendicular(LPDISPATCH closeto, LPDISPATCH prevpoint)
  17097. {
  17098.     LPDISPATCH result;
  17099.     static BYTE parms[] =
  17100.         VTS_DISPATCH VTS_DISPATCH;
  17101.     InvokeHelper(0x2000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  17102.         closeto, prevpoint);
  17103.     return result;
  17104. }
  17105.  
  17106. LPDISPATCH IVertex::Snap2Tangent(LPDISPATCH closeto, LPDISPATCH prevpoint)
  17107. {
  17108.     LPDISPATCH result;
  17109.     static BYTE parms[] =
  17110.         VTS_DISPATCH VTS_DISPATCH;
  17111.     InvokeHelper(0x2000e, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  17112.         closeto, prevpoint);
  17113.     return result;
  17114. }
  17115.  
  17116. LPDISPATCH IVertex::Intersection(LPDISPATCH Entity, const VARIANT& infinite1, const VARIANT& infinite2)
  17117. {
  17118.     LPDISPATCH result;
  17119.     static BYTE parms[] =
  17120.         VTS_DISPATCH VTS_VARIANT VTS_VARIANT;
  17121.     InvokeHelper(0x2000f, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  17122.         Entity, &infinite1, &infinite2);
  17123.     return result;
  17124. }
  17125.  
  17126. BOOL IVertex::ExtendToSet(LPDISPATCH point)
  17127. {
  17128.     BOOL result;
  17129.     static BYTE parms[] =
  17130.         VTS_DISPATCH;
  17131.     InvokeHelper(0x20010, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  17132.         point);
  17133.     return result;
  17134. }
  17135.  
  17136. BOOL IVertex::TrimToSet(LPDISPATCH point)
  17137. {
  17138.     BOOL result;
  17139.     static BYTE parms[] =
  17140.         VTS_DISPATCH;
  17141.     InvokeHelper(0x20011, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  17142.         point);
  17143.     return result;
  17144. }
  17145.  
  17146. BOOL IVertex::Break(LPDISPATCH point1, LPDISPATCH point2)
  17147. {
  17148.     BOOL result;
  17149.     static BYTE parms[] =
  17150.         VTS_DISPATCH VTS_DISPATCH;
  17151.     InvokeHelper(0x20012, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  17152.         point1, point2);
  17153.     return result;
  17154. }
  17155.  
  17156. void IVertex::Update()
  17157. {
  17158.     InvokeHelper(0x20013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  17159. }
  17160.  
  17161. void IVertex::UpdateNow()
  17162. {
  17163.     InvokeHelper(0x20014, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  17164. }
  17165.  
  17166.  
  17167. /////////////////////////////////////////////////////////////////////////////
  17168. // IFaceVertex properties
  17169.  
  17170. LPDISPATCH IFaceVertex::GetApplication()
  17171. {
  17172.     LPDISPATCH result;
  17173.     GetProperty(0x40001, VT_DISPATCH, (void*)&result);
  17174.     return result;
  17175. }
  17176.  
  17177. LPDISPATCH IFaceVertex::GetParent()
  17178. {
  17179.     LPDISPATCH result;
  17180.     GetProperty(0x40002, VT_DISPATCH, (void*)&result);
  17181.     return result;
  17182. }
  17183.  
  17184. LPDISPATCH IFaceVertex::GetColor()
  17185. {
  17186.     LPDISPATCH result;
  17187.     GetProperty(0x30001, VT_DISPATCH, (void*)&result);
  17188.     return result;
  17189. }
  17190.  
  17191. void IFaceVertex::SetColor(LPDISPATCH propVal)
  17192. {
  17193.     SetProperty(0x30001, VT_DISPATCH, propVal);
  17194. }
  17195.  
  17196. short IFaceVertex::GetColorNumber()
  17197. {
  17198.     short result;
  17199.     GetProperty(0x30002, VT_I2, (void*)&result);
  17200.     return result;
  17201. }
  17202.  
  17203. void IFaceVertex::SetColorNumber(short propVal)
  17204. {
  17205.     SetProperty(0x30002, VT_I2, propVal);
  17206. }
  17207.  
  17208. LPDISPATCH IFaceVertex::GetLayer()
  17209. {
  17210.     LPDISPATCH result;
  17211.     GetProperty(0x30003, VT_DISPATCH, (void*)&result);
  17212.     return result;
  17213. }
  17214.  
  17215. void IFaceVertex::SetLayer(LPDISPATCH propVal)
  17216. {
  17217.     SetProperty(0x30003, VT_DISPATCH, propVal);
  17218. }
  17219.  
  17220. LPDISPATCH IFaceVertex::GetLinetype()
  17221. {
  17222.     LPDISPATCH result;
  17223.     GetProperty(0x30004, VT_DISPATCH, (void*)&result);
  17224.     return result;
  17225. }
  17226.  
  17227. void IFaceVertex::SetLinetype(LPDISPATCH propVal)
  17228. {
  17229.     SetProperty(0x30004, VT_DISPATCH, propVal);
  17230. }
  17231.  
  17232. double IFaceVertex::GetThickness()
  17233. {
  17234.     double result;
  17235.     GetProperty(0x30005, VT_R8, (void*)&result);
  17236.     return result;
  17237. }
  17238.  
  17239. void IFaceVertex::SetThickness(double propVal)
  17240. {
  17241.     SetProperty(0x30005, VT_R8, propVal);
  17242. }
  17243.  
  17244. BOOL IFaceVertex::GetPaperSpace()
  17245. {
  17246.     BOOL result;
  17247.     GetProperty(0x30006, VT_BOOL, (void*)&result);
  17248.     return result;
  17249. }
  17250.  
  17251. void IFaceVertex::SetPaperSpace(BOOL propVal)
  17252. {
  17253.     SetProperty(0x30006, VT_BOOL, propVal);
  17254. }
  17255.  
  17256. LPDISPATCH IFaceVertex::GetNormal()
  17257. {
  17258.     LPDISPATCH result;
  17259.     GetProperty(0x30007, VT_DISPATCH, (void*)&result);
  17260.     return result;
  17261. }
  17262.  
  17263. void IFaceVertex::SetNormal(LPDISPATCH propVal)
  17264. {
  17265.     SetProperty(0x30007, VT_DISPATCH, propVal);
  17266. }
  17267.  
  17268. CString IFaceVertex::GetName()
  17269. {
  17270.     CString result;
  17271.     GetProperty(0x20001, VT_BSTR, (void*)&result);
  17272.     return result;
  17273. }
  17274.  
  17275. short IFaceVertex::GetType()
  17276. {
  17277.     short result;
  17278.     GetProperty(0x20002, VT_I2, (void*)&result);
  17279.     return result;
  17280. }
  17281.  
  17282. CString IFaceVertex::GetHandle()
  17283. {
  17284.     CString result;
  17285.     GetProperty(0x20003, VT_BSTR, (void*)&result);
  17286.     return result;
  17287. }
  17288.  
  17289. BOOL IFaceVertex::GetHasXData()
  17290. {
  17291.     BOOL result;
  17292.     GetProperty(0x20004, VT_BOOL, (void*)&result);
  17293.     return result;
  17294. }
  17295.  
  17296. LPDISPATCH IFaceVertex::GetXData()
  17297. {
  17298.     LPDISPATCH result;
  17299.     GetProperty(0x20005, VT_DISPATCH, (void*)&result);
  17300.     return result;
  17301. }
  17302.  
  17303. BOOL IFaceVertex::GetAutoDraw()
  17304. {
  17305.     BOOL result;
  17306.     GetProperty(0x20015, VT_BOOL, (void*)&result);
  17307.     return result;
  17308. }
  17309.  
  17310. void IFaceVertex::SetAutoDraw(BOOL propVal)
  17311. {
  17312.     SetProperty(0x20015, VT_BOOL, propVal);
  17313. }
  17314.  
  17315. CString IFaceVertex::Get_Name()
  17316. {
  17317.     CString result;
  17318.     GetProperty(0x0, VT_BSTR, (void*)&result);
  17319.     return result;
  17320. }
  17321.  
  17322. /////////////////////////////////////////////////////////////////////////////
  17323. // IFaceVertex operations
  17324.  
  17325. void IFaceVertex::Redraw()
  17326. {
  17327.     InvokeHelper(0x30008, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  17328. }
  17329.  
  17330. void IFaceVertex::Regen()
  17331. {
  17332.     InvokeHelper(0x30009, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  17333. }
  17334.  
  17335. void IFaceVertex::Erase()
  17336. {
  17337.     InvokeHelper(0x3000a, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  17338. }
  17339.  
  17340. void IFaceVertex::Delete()
  17341. {
  17342.     InvokeHelper(0x3000b, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  17343. }
  17344.  
  17345. void IFaceVertex::Move(LPDISPATCH offset)
  17346. {
  17347.     static BYTE parms[] =
  17348.         VTS_DISPATCH;
  17349.     InvokeHelper(0x3000c, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  17350.          offset);
  17351. }
  17352.  
  17353. LPDISPATCH IFaceVertex::Copy(LPDISPATCH offset)
  17354. {
  17355.     LPDISPATCH result;
  17356.     static BYTE parms[] =
  17357.         VTS_DISPATCH;
  17358.     InvokeHelper(0x3000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  17359.         offset);
  17360.     return result;
  17361. }
  17362.  
  17363. void IFaceVertex::scale(LPDISPATCH basepoint, LPDISPATCH scale)
  17364. {
  17365.     static BYTE parms[] =
  17366.         VTS_DISPATCH VTS_DISPATCH;
  17367.     InvokeHelper(0x3000e, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  17368.          basepoint, scale);
  17369. }
  17370.  
  17371. void IFaceVertex::ScaleIt(LPDISPATCH basepoint, LPDISPATCH scale)
  17372. {
  17373.     static BYTE parms[] =
  17374.         VTS_DISPATCH VTS_DISPATCH;
  17375.     InvokeHelper(0x3000f, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  17376.          basepoint, scale);
  17377. }
  17378.  
  17379. void IFaceVertex::Rotate(LPDISPATCH basepoint, double Angle)
  17380. {
  17381.     static BYTE parms[] =
  17382.         VTS_DISPATCH VTS_R8;
  17383.     InvokeHelper(0x30010, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  17384.          basepoint, Angle);
  17385. }
  17386.  
  17387. void IFaceVertex::Mirror(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  17388. {
  17389.     static BYTE parms[] =
  17390.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  17391.     InvokeHelper(0x30011, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  17392.          point1, point2, &MirrorText);
  17393. }
  17394.  
  17395. LPDISPATCH IFaceVertex::MirrorCopy(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  17396. {
  17397.     LPDISPATCH result;
  17398.     static BYTE parms[] =
  17399.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  17400.     InvokeHelper(0x30012, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  17401.         point1, point2, &MirrorText);
  17402.     return result;
  17403. }
  17404.  
  17405. void IFaceVertex::Dialog()
  17406. {
  17407.     InvokeHelper(0x30013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  17408. }
  17409.  
  17410. LPDISPATCH IFaceVertex::Offset(LPDISPATCH vec, const VARIANT& Distance)
  17411. {
  17412.     LPDISPATCH result;
  17413.     static BYTE parms[] =
  17414.         VTS_DISPATCH VTS_VARIANT;
  17415.     InvokeHelper(0x30014, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  17416.         vec, &Distance);
  17417.     return result;
  17418. }
  17419.  
  17420. LPDISPATCH IFaceVertex::Array(short numrows, short numcols, double rowspacing, double colspacing, double Rotation)
  17421. {
  17422.     LPDISPATCH result;
  17423.     static BYTE parms[] =
  17424.         VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8;
  17425.     InvokeHelper(0x30015, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  17426.         numrows, numcols, rowspacing, colspacing, Rotation);
  17427.     return result;
  17428. }
  17429.  
  17430. LPDISPATCH IFaceVertex::Array3D(short numrows, short numcols, short numlevels, double rowspacing, double colspacing, double levelspacing, double Rotation)
  17431. {
  17432.     LPDISPATCH result;
  17433.     static BYTE parms[] =
  17434.         VTS_I2 VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8 VTS_R8;
  17435.     InvokeHelper(0x30016, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  17436.         numrows, numcols, numlevels, rowspacing, colspacing, levelspacing, Rotation);
  17437.     return result;
  17438. }
  17439.  
  17440. LPDISPATCH IFaceVertex::PolarArray(short numitems, double fillangle, double angletween, LPDISPATCH Center, const VARIANT& refpoint)
  17441. {
  17442.     LPDISPATCH result;
  17443.     static BYTE parms[] =
  17444.         VTS_I2 VTS_R8 VTS_R8 VTS_DISPATCH VTS_VARIANT;
  17445.     InvokeHelper(0x30017, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  17446.         numitems, fillangle, angletween, Center, &refpoint);
  17447.     return result;
  17448. }
  17449.  
  17450. void IFaceVertex::DisplayGrips()
  17451. {
  17452.     InvokeHelper(0x30018, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  17453. }
  17454.  
  17455. void IFaceVertex::EraseGrips()
  17456. {
  17457.     InvokeHelper(0x30019, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  17458. }
  17459.  
  17460. LPDISPATCH IFaceVertex::Snap2Endpoint(LPDISPATCH closeto)
  17461. {
  17462.     LPDISPATCH result;
  17463.     static BYTE parms[] =
  17464.         VTS_DISPATCH;
  17465.     InvokeHelper(0x20006, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  17466.         closeto);
  17467.     return result;
  17468. }
  17469.  
  17470. LPDISPATCH IFaceVertex::Snap2Midpoint(LPDISPATCH closeto)
  17471. {
  17472.     LPDISPATCH result;
  17473.     static BYTE parms[] =
  17474.         VTS_DISPATCH;
  17475.     InvokeHelper(0x20007, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  17476.         closeto);
  17477.     return result;
  17478. }
  17479.  
  17480. LPDISPATCH IFaceVertex::Snap2Center(LPDISPATCH closeto)
  17481. {
  17482.     LPDISPATCH result;
  17483.     static BYTE parms[] =
  17484.         VTS_DISPATCH;
  17485.     InvokeHelper(0x20008, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  17486.         closeto);
  17487.     return result;
  17488. }
  17489.  
  17490. LPDISPATCH IFaceVertex::Snap2Nearest(LPDISPATCH closeto)
  17491. {
  17492.     LPDISPATCH result;
  17493.     static BYTE parms[] =
  17494.         VTS_DISPATCH;
  17495.     InvokeHelper(0x20009, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  17496.         closeto);
  17497.     return result;
  17498. }
  17499.  
  17500. LPDISPATCH IFaceVertex::Snap2Point(LPDISPATCH closeto)
  17501. {
  17502.     LPDISPATCH result;
  17503.     static BYTE parms[] =
  17504.         VTS_DISPATCH;
  17505.     InvokeHelper(0x2000a, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  17506.         closeto);
  17507.     return result;
  17508. }
  17509.  
  17510. LPDISPATCH IFaceVertex::Snap2Quadrant(LPDISPATCH closeto)
  17511. {
  17512.     LPDISPATCH result;
  17513.     static BYTE parms[] =
  17514.         VTS_DISPATCH;
  17515.     InvokeHelper(0x2000b, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  17516.         closeto);
  17517.     return result;
  17518. }
  17519.  
  17520. LPDISPATCH IFaceVertex::Snap2Insertion(LPDISPATCH closeto)
  17521. {
  17522.     LPDISPATCH result;
  17523.     static BYTE parms[] =
  17524.         VTS_DISPATCH;
  17525.     InvokeHelper(0x2000c, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  17526.         closeto);
  17527.     return result;
  17528. }
  17529.  
  17530. LPDISPATCH IFaceVertex::Snap2Perpendicular(LPDISPATCH closeto, LPDISPATCH prevpoint)
  17531. {
  17532.     LPDISPATCH result;
  17533.     static BYTE parms[] =
  17534.         VTS_DISPATCH VTS_DISPATCH;
  17535.     InvokeHelper(0x2000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  17536.         closeto, prevpoint);
  17537.     return result;
  17538. }
  17539.  
  17540. LPDISPATCH IFaceVertex::Snap2Tangent(LPDISPATCH closeto, LPDISPATCH prevpoint)
  17541. {
  17542.     LPDISPATCH result;
  17543.     static BYTE parms[] =
  17544.         VTS_DISPATCH VTS_DISPATCH;
  17545.     InvokeHelper(0x2000e, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  17546.         closeto, prevpoint);
  17547.     return result;
  17548. }
  17549.  
  17550. LPDISPATCH IFaceVertex::Intersection(LPDISPATCH Entity, const VARIANT& infinite1, const VARIANT& infinite2)
  17551. {
  17552.     LPDISPATCH result;
  17553.     static BYTE parms[] =
  17554.         VTS_DISPATCH VTS_VARIANT VTS_VARIANT;
  17555.     InvokeHelper(0x2000f, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  17556.         Entity, &infinite1, &infinite2);
  17557.     return result;
  17558. }
  17559.  
  17560. BOOL IFaceVertex::ExtendToSet(LPDISPATCH point)
  17561. {
  17562.     BOOL result;
  17563.     static BYTE parms[] =
  17564.         VTS_DISPATCH;
  17565.     InvokeHelper(0x20010, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  17566.         point);
  17567.     return result;
  17568. }
  17569.  
  17570. BOOL IFaceVertex::TrimToSet(LPDISPATCH point)
  17571. {
  17572.     BOOL result;
  17573.     static BYTE parms[] =
  17574.         VTS_DISPATCH;
  17575.     InvokeHelper(0x20011, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  17576.         point);
  17577.     return result;
  17578. }
  17579.  
  17580. BOOL IFaceVertex::Break(LPDISPATCH point1, LPDISPATCH point2)
  17581. {
  17582.     BOOL result;
  17583.     static BYTE parms[] =
  17584.         VTS_DISPATCH VTS_DISPATCH;
  17585.     InvokeHelper(0x20012, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  17586.         point1, point2);
  17587.     return result;
  17588. }
  17589.  
  17590. void IFaceVertex::Update()
  17591. {
  17592.     InvokeHelper(0x20013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  17593. }
  17594.  
  17595. void IFaceVertex::UpdateNow()
  17596. {
  17597.     InvokeHelper(0x20014, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  17598. }
  17599.  
  17600. short IFaceVertex::GetCorner(short which)
  17601. {
  17602.     short result;
  17603.     static BYTE parms[] =
  17604.         VTS_I2;
  17605.     InvokeHelper(0x1, DISPATCH_PROPERTYGET, VT_I2, (void*)&result, parms,
  17606.         which);
  17607.     return result;
  17608. }
  17609.  
  17610. void IFaceVertex::SetCorner(short which, short nNewValue)
  17611. {
  17612.     static BYTE parms[] =
  17613.         VTS_I2 VTS_I2;
  17614.     InvokeHelper(0x1, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms,
  17615.          which, nNewValue);
  17616. }
  17617.  
  17618. BOOL IFaceVertex::GetVisible(short which)
  17619. {
  17620.     BOOL result;
  17621.     static BYTE parms[] =
  17622.         VTS_I2;
  17623.     InvokeHelper(0x2, DISPATCH_PROPERTYGET, VT_BOOL, (void*)&result, parms,
  17624.         which);
  17625.     return result;
  17626. }
  17627.  
  17628. void IFaceVertex::SetVisible(short which, BOOL bNewValue)
  17629. {
  17630.     static BYTE parms[] =
  17631.         VTS_I2 VTS_BOOL;
  17632.     InvokeHelper(0x2, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms,
  17633.          which, bNewValue);
  17634. }
  17635.  
  17636. void IFaceVertex::SetCorners(short val1, short val2, short val3, short val4)
  17637. {
  17638.     static BYTE parms[] =
  17639.         VTS_I2 VTS_I2 VTS_I2 VTS_I2;
  17640.     InvokeHelper(0x3, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  17641.          val1, val2, val3, val4);
  17642. }
  17643.  
  17644. void IFaceVertex::SetVisibility(BOOL flag1, BOOL flag2, BOOL flag3, BOOL flag4)
  17645. {
  17646.     static BYTE parms[] =
  17647.         VTS_BOOL VTS_BOOL VTS_BOOL VTS_BOOL;
  17648.     InvokeHelper(0x4, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  17649.          flag1, flag2, flag3, flag4);
  17650. }
  17651.  
  17652.  
  17653. /////////////////////////////////////////////////////////////////////////////
  17654. // IDimension properties
  17655.  
  17656. LPDISPATCH IDimension::GetApplication()
  17657. {
  17658.     LPDISPATCH result;
  17659.     GetProperty(0x40001, VT_DISPATCH, (void*)&result);
  17660.     return result;
  17661. }
  17662.  
  17663. LPDISPATCH IDimension::GetParent()
  17664. {
  17665.     LPDISPATCH result;
  17666.     GetProperty(0x40002, VT_DISPATCH, (void*)&result);
  17667.     return result;
  17668. }
  17669.  
  17670. LPDISPATCH IDimension::GetColor()
  17671. {
  17672.     LPDISPATCH result;
  17673.     GetProperty(0x30001, VT_DISPATCH, (void*)&result);
  17674.     return result;
  17675. }
  17676.  
  17677. void IDimension::SetColor(LPDISPATCH propVal)
  17678. {
  17679.     SetProperty(0x30001, VT_DISPATCH, propVal);
  17680. }
  17681.  
  17682. short IDimension::GetColorNumber()
  17683. {
  17684.     short result;
  17685.     GetProperty(0x30002, VT_I2, (void*)&result);
  17686.     return result;
  17687. }
  17688.  
  17689. void IDimension::SetColorNumber(short propVal)
  17690. {
  17691.     SetProperty(0x30002, VT_I2, propVal);
  17692. }
  17693.  
  17694. LPDISPATCH IDimension::GetLayer()
  17695. {
  17696.     LPDISPATCH result;
  17697.     GetProperty(0x30003, VT_DISPATCH, (void*)&result);
  17698.     return result;
  17699. }
  17700.  
  17701. void IDimension::SetLayer(LPDISPATCH propVal)
  17702. {
  17703.     SetProperty(0x30003, VT_DISPATCH, propVal);
  17704. }
  17705.  
  17706. LPDISPATCH IDimension::GetLinetype()
  17707. {
  17708.     LPDISPATCH result;
  17709.     GetProperty(0x30004, VT_DISPATCH, (void*)&result);
  17710.     return result;
  17711. }
  17712.  
  17713. void IDimension::SetLinetype(LPDISPATCH propVal)
  17714. {
  17715.     SetProperty(0x30004, VT_DISPATCH, propVal);
  17716. }
  17717.  
  17718. double IDimension::GetThickness()
  17719. {
  17720.     double result;
  17721.     GetProperty(0x30005, VT_R8, (void*)&result);
  17722.     return result;
  17723. }
  17724.  
  17725. void IDimension::SetThickness(double propVal)
  17726. {
  17727.     SetProperty(0x30005, VT_R8, propVal);
  17728. }
  17729.  
  17730. BOOL IDimension::GetPaperSpace()
  17731. {
  17732.     BOOL result;
  17733.     GetProperty(0x30006, VT_BOOL, (void*)&result);
  17734.     return result;
  17735. }
  17736.  
  17737. void IDimension::SetPaperSpace(BOOL propVal)
  17738. {
  17739.     SetProperty(0x30006, VT_BOOL, propVal);
  17740. }
  17741.  
  17742. LPDISPATCH IDimension::GetNormal()
  17743. {
  17744.     LPDISPATCH result;
  17745.     GetProperty(0x30007, VT_DISPATCH, (void*)&result);
  17746.     return result;
  17747. }
  17748.  
  17749. void IDimension::SetNormal(LPDISPATCH propVal)
  17750. {
  17751.     SetProperty(0x30007, VT_DISPATCH, propVal);
  17752. }
  17753.  
  17754. CString IDimension::GetName()
  17755. {
  17756.     CString result;
  17757.     GetProperty(0x20001, VT_BSTR, (void*)&result);
  17758.     return result;
  17759. }
  17760.  
  17761. short IDimension::GetType()
  17762. {
  17763.     short result;
  17764.     GetProperty(0x20002, VT_I2, (void*)&result);
  17765.     return result;
  17766. }
  17767.  
  17768. CString IDimension::GetHandle()
  17769. {
  17770.     CString result;
  17771.     GetProperty(0x20003, VT_BSTR, (void*)&result);
  17772.     return result;
  17773. }
  17774.  
  17775. BOOL IDimension::GetHasXData()
  17776. {
  17777.     BOOL result;
  17778.     GetProperty(0x20004, VT_BOOL, (void*)&result);
  17779.     return result;
  17780. }
  17781.  
  17782. LPDISPATCH IDimension::GetXData()
  17783. {
  17784.     LPDISPATCH result;
  17785.     GetProperty(0x20005, VT_DISPATCH, (void*)&result);
  17786.     return result;
  17787. }
  17788.  
  17789. BOOL IDimension::GetAutoDraw()
  17790. {
  17791.     BOOL result;
  17792.     GetProperty(0x20015, VT_BOOL, (void*)&result);
  17793.     return result;
  17794. }
  17795.  
  17796. void IDimension::SetAutoDraw(BOOL propVal)
  17797. {
  17798.     SetProperty(0x20015, VT_BOOL, propVal);
  17799. }
  17800.  
  17801. double IDimension::GetAngle()
  17802. {
  17803.     double result;
  17804.     GetProperty(0x10001, VT_R8, (void*)&result);
  17805.     return result;
  17806. }
  17807.  
  17808. void IDimension::SetAngle(double propVal)
  17809. {
  17810.     SetProperty(0x10001, VT_R8, propVal);
  17811. }
  17812.  
  17813. LPDISPATCH IDimension::GetDxf10()
  17814. {
  17815.     LPDISPATCH result;
  17816.     GetProperty(0x10002, VT_DISPATCH, (void*)&result);
  17817.     return result;
  17818. }
  17819.  
  17820. void IDimension::SetDxf10(LPDISPATCH propVal)
  17821. {
  17822.     SetProperty(0x10002, VT_DISPATCH, propVal);
  17823. }
  17824.  
  17825. LPDISPATCH IDimension::GetDxf11()
  17826. {
  17827.     LPDISPATCH result;
  17828.     GetProperty(0x10003, VT_DISPATCH, (void*)&result);
  17829.     return result;
  17830. }
  17831.  
  17832. void IDimension::SetDxf11(LPDISPATCH propVal)
  17833. {
  17834.     SetProperty(0x10003, VT_DISPATCH, propVal);
  17835. }
  17836.  
  17837. LPDISPATCH IDimension::GetDxf12()
  17838. {
  17839.     LPDISPATCH result;
  17840.     GetProperty(0x10004, VT_DISPATCH, (void*)&result);
  17841.     return result;
  17842. }
  17843.  
  17844. void IDimension::SetDxf12(LPDISPATCH propVal)
  17845. {
  17846.     SetProperty(0x10004, VT_DISPATCH, propVal);
  17847. }
  17848.  
  17849. LPDISPATCH IDimension::GetDxf13()
  17850. {
  17851.     LPDISPATCH result;
  17852.     GetProperty(0x10005, VT_DISPATCH, (void*)&result);
  17853.     return result;
  17854. }
  17855.  
  17856. void IDimension::SetDxf13(LPDISPATCH propVal)
  17857. {
  17858.     SetProperty(0x10005, VT_DISPATCH, propVal);
  17859. }
  17860.  
  17861. LPDISPATCH IDimension::GetDxf14()
  17862. {
  17863.     LPDISPATCH result;
  17864.     GetProperty(0x10006, VT_DISPATCH, (void*)&result);
  17865.     return result;
  17866. }
  17867.  
  17868. void IDimension::SetDxf14(LPDISPATCH propVal)
  17869. {
  17870.     SetProperty(0x10006, VT_DISPATCH, propVal);
  17871. }
  17872.  
  17873. LPDISPATCH IDimension::GetDxf15()
  17874. {
  17875.     LPDISPATCH result;
  17876.     GetProperty(0x10007, VT_DISPATCH, (void*)&result);
  17877.     return result;
  17878. }
  17879.  
  17880. void IDimension::SetDxf15(LPDISPATCH propVal)
  17881. {
  17882.     SetProperty(0x10007, VT_DISPATCH, propVal);
  17883. }
  17884.  
  17885. LPDISPATCH IDimension::GetDxf16()
  17886. {
  17887.     LPDISPATCH result;
  17888.     GetProperty(0x10008, VT_DISPATCH, (void*)&result);
  17889.     return result;
  17890. }
  17891.  
  17892. void IDimension::SetDxf16(LPDISPATCH propVal)
  17893. {
  17894.     SetProperty(0x10008, VT_DISPATCH, propVal);
  17895. }
  17896.  
  17897. double IDimension::GetHorizontalAngle()
  17898. {
  17899.     double result;
  17900.     GetProperty(0x10009, VT_R8, (void*)&result);
  17901.     return result;
  17902. }
  17903.  
  17904. void IDimension::SetHorizontalAngle(double propVal)
  17905. {
  17906.     SetProperty(0x10009, VT_R8, propVal);
  17907. }
  17908.  
  17909. double IDimension::GetLeaderLength()
  17910. {
  17911.     double result;
  17912.     GetProperty(0x1000a, VT_R8, (void*)&result);
  17913.     return result;
  17914. }
  17915.  
  17916. void IDimension::SetLeaderLength(double propVal)
  17917. {
  17918.     SetProperty(0x1000a, VT_R8, propVal);
  17919. }
  17920.  
  17921. double IDimension::GetObliqueAngle()
  17922. {
  17923.     double result;
  17924.     GetProperty(0x1000b, VT_R8, (void*)&result);
  17925.     return result;
  17926. }
  17927.  
  17928. void IDimension::SetObliqueAngle(double propVal)
  17929. {
  17930.     SetProperty(0x1000b, VT_R8, propVal);
  17931. }
  17932.  
  17933. LPDISPATCH IDimension::GetStyle()
  17934. {
  17935.     LPDISPATCH result;
  17936.     GetProperty(0x1000c, VT_DISPATCH, (void*)&result);
  17937.     return result;
  17938. }
  17939.  
  17940. void IDimension::SetStyle(LPDISPATCH propVal)
  17941. {
  17942.     SetProperty(0x1000c, VT_DISPATCH, propVal);
  17943. }
  17944.  
  17945. CString IDimension::GetString()
  17946. {
  17947.     CString result;
  17948.     GetProperty(0x1000d, VT_BSTR, (void*)&result);
  17949.     return result;
  17950. }
  17951.  
  17952. void IDimension::SetString(LPCTSTR propVal)
  17953. {
  17954.     SetProperty(0x1000d, VT_BSTR, propVal);
  17955. }
  17956.  
  17957. double IDimension::GetTextAngle()
  17958. {
  17959.     double result;
  17960.     GetProperty(0x1000e, VT_R8, (void*)&result);
  17961.     return result;
  17962. }
  17963.  
  17964. void IDimension::SetTextAngle(double propVal)
  17965. {
  17966.     SetProperty(0x1000e, VT_R8, propVal);
  17967. }
  17968.  
  17969. BOOL IDimension::GetTextHomePosition()
  17970. {
  17971.     BOOL result;
  17972.     GetProperty(0x1000f, VT_BOOL, (void*)&result);
  17973.     return result;
  17974. }
  17975.  
  17976. void IDimension::SetTextHomePosition(BOOL propVal)
  17977. {
  17978.     SetProperty(0x1000f, VT_BOOL, propVal);
  17979. }
  17980.  
  17981. CString IDimension::Get_Name()
  17982. {
  17983.     CString result;
  17984.     GetProperty(0x0, VT_BSTR, (void*)&result);
  17985.     return result;
  17986. }
  17987.  
  17988. /////////////////////////////////////////////////////////////////////////////
  17989. // IDimension operations
  17990.  
  17991. void IDimension::Redraw()
  17992. {
  17993.     InvokeHelper(0x30008, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  17994. }
  17995.  
  17996. void IDimension::Regen()
  17997. {
  17998.     InvokeHelper(0x30009, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  17999. }
  18000.  
  18001. void IDimension::Erase()
  18002. {
  18003.     InvokeHelper(0x3000a, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  18004. }
  18005.  
  18006. void IDimension::Delete()
  18007. {
  18008.     InvokeHelper(0x3000b, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  18009. }
  18010.  
  18011. void IDimension::Move(LPDISPATCH offset)
  18012. {
  18013.     static BYTE parms[] =
  18014.         VTS_DISPATCH;
  18015.     InvokeHelper(0x3000c, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  18016.          offset);
  18017. }
  18018.  
  18019. LPDISPATCH IDimension::Copy(LPDISPATCH offset)
  18020. {
  18021.     LPDISPATCH result;
  18022.     static BYTE parms[] =
  18023.         VTS_DISPATCH;
  18024.     InvokeHelper(0x3000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  18025.         offset);
  18026.     return result;
  18027. }
  18028.  
  18029. void IDimension::scale(LPDISPATCH basepoint, LPDISPATCH scale)
  18030. {
  18031.     static BYTE parms[] =
  18032.         VTS_DISPATCH VTS_DISPATCH;
  18033.     InvokeHelper(0x3000e, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  18034.          basepoint, scale);
  18035. }
  18036.  
  18037. void IDimension::ScaleIt(LPDISPATCH basepoint, LPDISPATCH scale)
  18038. {
  18039.     static BYTE parms[] =
  18040.         VTS_DISPATCH VTS_DISPATCH;
  18041.     InvokeHelper(0x3000f, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  18042.          basepoint, scale);
  18043. }
  18044.  
  18045. void IDimension::Rotate(LPDISPATCH basepoint, double Angle)
  18046. {
  18047.     static BYTE parms[] =
  18048.         VTS_DISPATCH VTS_R8;
  18049.     InvokeHelper(0x30010, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  18050.          basepoint, Angle);
  18051. }
  18052.  
  18053. void IDimension::Mirror(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  18054. {
  18055.     static BYTE parms[] =
  18056.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  18057.     InvokeHelper(0x30011, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  18058.          point1, point2, &MirrorText);
  18059. }
  18060.  
  18061. LPDISPATCH IDimension::MirrorCopy(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  18062. {
  18063.     LPDISPATCH result;
  18064.     static BYTE parms[] =
  18065.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  18066.     InvokeHelper(0x30012, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  18067.         point1, point2, &MirrorText);
  18068.     return result;
  18069. }
  18070.  
  18071. void IDimension::Dialog()
  18072. {
  18073.     InvokeHelper(0x30013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  18074. }
  18075.  
  18076. LPDISPATCH IDimension::Offset(LPDISPATCH vec, const VARIANT& Distance)
  18077. {
  18078.     LPDISPATCH result;
  18079.     static BYTE parms[] =
  18080.         VTS_DISPATCH VTS_VARIANT;
  18081.     InvokeHelper(0x30014, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  18082.         vec, &Distance);
  18083.     return result;
  18084. }
  18085.  
  18086. LPDISPATCH IDimension::Array(short numrows, short numcols, double rowspacing, double colspacing, double Rotation)
  18087. {
  18088.     LPDISPATCH result;
  18089.     static BYTE parms[] =
  18090.         VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8;
  18091.     InvokeHelper(0x30015, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  18092.         numrows, numcols, rowspacing, colspacing, Rotation);
  18093.     return result;
  18094. }
  18095.  
  18096. LPDISPATCH IDimension::Array3D(short numrows, short numcols, short numlevels, double rowspacing, double colspacing, double levelspacing, double Rotation)
  18097. {
  18098.     LPDISPATCH result;
  18099.     static BYTE parms[] =
  18100.         VTS_I2 VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8 VTS_R8;
  18101.     InvokeHelper(0x30016, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  18102.         numrows, numcols, numlevels, rowspacing, colspacing, levelspacing, Rotation);
  18103.     return result;
  18104. }
  18105.  
  18106. LPDISPATCH IDimension::PolarArray(short numitems, double fillangle, double angletween, LPDISPATCH Center, const VARIANT& refpoint)
  18107. {
  18108.     LPDISPATCH result;
  18109.     static BYTE parms[] =
  18110.         VTS_I2 VTS_R8 VTS_R8 VTS_DISPATCH VTS_VARIANT;
  18111.     InvokeHelper(0x30017, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  18112.         numitems, fillangle, angletween, Center, &refpoint);
  18113.     return result;
  18114. }
  18115.  
  18116. void IDimension::DisplayGrips()
  18117. {
  18118.     InvokeHelper(0x30018, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  18119. }
  18120.  
  18121. void IDimension::EraseGrips()
  18122. {
  18123.     InvokeHelper(0x30019, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  18124. }
  18125.  
  18126. LPDISPATCH IDimension::Snap2Endpoint(LPDISPATCH closeto)
  18127. {
  18128.     LPDISPATCH result;
  18129.     static BYTE parms[] =
  18130.         VTS_DISPATCH;
  18131.     InvokeHelper(0x20006, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  18132.         closeto);
  18133.     return result;
  18134. }
  18135.  
  18136. LPDISPATCH IDimension::Snap2Midpoint(LPDISPATCH closeto)
  18137. {
  18138.     LPDISPATCH result;
  18139.     static BYTE parms[] =
  18140.         VTS_DISPATCH;
  18141.     InvokeHelper(0x20007, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  18142.         closeto);
  18143.     return result;
  18144. }
  18145.  
  18146. LPDISPATCH IDimension::Snap2Center(LPDISPATCH closeto)
  18147. {
  18148.     LPDISPATCH result;
  18149.     static BYTE parms[] =
  18150.         VTS_DISPATCH;
  18151.     InvokeHelper(0x20008, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  18152.         closeto);
  18153.     return result;
  18154. }
  18155.  
  18156. LPDISPATCH IDimension::Snap2Nearest(LPDISPATCH closeto)
  18157. {
  18158.     LPDISPATCH result;
  18159.     static BYTE parms[] =
  18160.         VTS_DISPATCH;
  18161.     InvokeHelper(0x20009, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  18162.         closeto);
  18163.     return result;
  18164. }
  18165.  
  18166. LPDISPATCH IDimension::Snap2Point(LPDISPATCH closeto)
  18167. {
  18168.     LPDISPATCH result;
  18169.     static BYTE parms[] =
  18170.         VTS_DISPATCH;
  18171.     InvokeHelper(0x2000a, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  18172.         closeto);
  18173.     return result;
  18174. }
  18175.  
  18176. LPDISPATCH IDimension::Snap2Quadrant(LPDISPATCH closeto)
  18177. {
  18178.     LPDISPATCH result;
  18179.     static BYTE parms[] =
  18180.         VTS_DISPATCH;
  18181.     InvokeHelper(0x2000b, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  18182.         closeto);
  18183.     return result;
  18184. }
  18185.  
  18186. LPDISPATCH IDimension::Snap2Insertion(LPDISPATCH closeto)
  18187. {
  18188.     LPDISPATCH result;
  18189.     static BYTE parms[] =
  18190.         VTS_DISPATCH;
  18191.     InvokeHelper(0x2000c, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  18192.         closeto);
  18193.     return result;
  18194. }
  18195.  
  18196. LPDISPATCH IDimension::Snap2Perpendicular(LPDISPATCH closeto, LPDISPATCH prevpoint)
  18197. {
  18198.     LPDISPATCH result;
  18199.     static BYTE parms[] =
  18200.         VTS_DISPATCH VTS_DISPATCH;
  18201.     InvokeHelper(0x2000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  18202.         closeto, prevpoint);
  18203.     return result;
  18204. }
  18205.  
  18206. LPDISPATCH IDimension::Snap2Tangent(LPDISPATCH closeto, LPDISPATCH prevpoint)
  18207. {
  18208.     LPDISPATCH result;
  18209.     static BYTE parms[] =
  18210.         VTS_DISPATCH VTS_DISPATCH;
  18211.     InvokeHelper(0x2000e, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  18212.         closeto, prevpoint);
  18213.     return result;
  18214. }
  18215.  
  18216. LPDISPATCH IDimension::Intersection(LPDISPATCH Entity, const VARIANT& infinite1, const VARIANT& infinite2)
  18217. {
  18218.     LPDISPATCH result;
  18219.     static BYTE parms[] =
  18220.         VTS_DISPATCH VTS_VARIANT VTS_VARIANT;
  18221.     InvokeHelper(0x2000f, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  18222.         Entity, &infinite1, &infinite2);
  18223.     return result;
  18224. }
  18225.  
  18226. BOOL IDimension::ExtendToSet(LPDISPATCH point)
  18227. {
  18228.     BOOL result;
  18229.     static BYTE parms[] =
  18230.         VTS_DISPATCH;
  18231.     InvokeHelper(0x20010, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  18232.         point);
  18233.     return result;
  18234. }
  18235.  
  18236. BOOL IDimension::TrimToSet(LPDISPATCH point)
  18237. {
  18238.     BOOL result;
  18239.     static BYTE parms[] =
  18240.         VTS_DISPATCH;
  18241.     InvokeHelper(0x20011, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  18242.         point);
  18243.     return result;
  18244. }
  18245.  
  18246. BOOL IDimension::Break(LPDISPATCH point1, LPDISPATCH point2)
  18247. {
  18248.     BOOL result;
  18249.     static BYTE parms[] =
  18250.         VTS_DISPATCH VTS_DISPATCH;
  18251.     InvokeHelper(0x20012, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  18252.         point1, point2);
  18253.     return result;
  18254. }
  18255.  
  18256. void IDimension::Update()
  18257. {
  18258.     InvokeHelper(0x20013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  18259. }
  18260.  
  18261. void IDimension::UpdateNow()
  18262. {
  18263.     InvokeHelper(0x20014, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  18264. }
  18265.  
  18266. BOOL IDimension::Explode()
  18267. {
  18268.     BOOL result;
  18269.     InvokeHelper(0x10010, DISPATCH_METHOD, VT_BOOL, (void*)&result, NULL);
  18270.     return result;
  18271. }
  18272.  
  18273.  
  18274. /////////////////////////////////////////////////////////////////////////////
  18275. // IDimHorizontal properties
  18276.  
  18277. LPDISPATCH IDimHorizontal::GetApplication()
  18278. {
  18279.     LPDISPATCH result;
  18280.     GetProperty(0x40001, VT_DISPATCH, (void*)&result);
  18281.     return result;
  18282. }
  18283.  
  18284. LPDISPATCH IDimHorizontal::GetParent()
  18285. {
  18286.     LPDISPATCH result;
  18287.     GetProperty(0x40002, VT_DISPATCH, (void*)&result);
  18288.     return result;
  18289. }
  18290.  
  18291. LPDISPATCH IDimHorizontal::GetColor()
  18292. {
  18293.     LPDISPATCH result;
  18294.     GetProperty(0x30001, VT_DISPATCH, (void*)&result);
  18295.     return result;
  18296. }
  18297.  
  18298. void IDimHorizontal::SetColor(LPDISPATCH propVal)
  18299. {
  18300.     SetProperty(0x30001, VT_DISPATCH, propVal);
  18301. }
  18302.  
  18303. short IDimHorizontal::GetColorNumber()
  18304. {
  18305.     short result;
  18306.     GetProperty(0x30002, VT_I2, (void*)&result);
  18307.     return result;
  18308. }
  18309.  
  18310. void IDimHorizontal::SetColorNumber(short propVal)
  18311. {
  18312.     SetProperty(0x30002, VT_I2, propVal);
  18313. }
  18314.  
  18315. LPDISPATCH IDimHorizontal::GetLayer()
  18316. {
  18317.     LPDISPATCH result;
  18318.     GetProperty(0x30003, VT_DISPATCH, (void*)&result);
  18319.     return result;
  18320. }
  18321.  
  18322. void IDimHorizontal::SetLayer(LPDISPATCH propVal)
  18323. {
  18324.     SetProperty(0x30003, VT_DISPATCH, propVal);
  18325. }
  18326.  
  18327. LPDISPATCH IDimHorizontal::GetLinetype()
  18328. {
  18329.     LPDISPATCH result;
  18330.     GetProperty(0x30004, VT_DISPATCH, (void*)&result);
  18331.     return result;
  18332. }
  18333.  
  18334. void IDimHorizontal::SetLinetype(LPDISPATCH propVal)
  18335. {
  18336.     SetProperty(0x30004, VT_DISPATCH, propVal);
  18337. }
  18338.  
  18339. double IDimHorizontal::GetThickness()
  18340. {
  18341.     double result;
  18342.     GetProperty(0x30005, VT_R8, (void*)&result);
  18343.     return result;
  18344. }
  18345.  
  18346. void IDimHorizontal::SetThickness(double propVal)
  18347. {
  18348.     SetProperty(0x30005, VT_R8, propVal);
  18349. }
  18350.  
  18351. BOOL IDimHorizontal::GetPaperSpace()
  18352. {
  18353.     BOOL result;
  18354.     GetProperty(0x30006, VT_BOOL, (void*)&result);
  18355.     return result;
  18356. }
  18357.  
  18358. void IDimHorizontal::SetPaperSpace(BOOL propVal)
  18359. {
  18360.     SetProperty(0x30006, VT_BOOL, propVal);
  18361. }
  18362.  
  18363. LPDISPATCH IDimHorizontal::GetNormal()
  18364. {
  18365.     LPDISPATCH result;
  18366.     GetProperty(0x30007, VT_DISPATCH, (void*)&result);
  18367.     return result;
  18368. }
  18369.  
  18370. void IDimHorizontal::SetNormal(LPDISPATCH propVal)
  18371. {
  18372.     SetProperty(0x30007, VT_DISPATCH, propVal);
  18373. }
  18374.  
  18375. CString IDimHorizontal::GetName()
  18376. {
  18377.     CString result;
  18378.     GetProperty(0x20001, VT_BSTR, (void*)&result);
  18379.     return result;
  18380. }
  18381.  
  18382. short IDimHorizontal::GetType()
  18383. {
  18384.     short result;
  18385.     GetProperty(0x20002, VT_I2, (void*)&result);
  18386.     return result;
  18387. }
  18388.  
  18389. CString IDimHorizontal::GetHandle()
  18390. {
  18391.     CString result;
  18392.     GetProperty(0x20003, VT_BSTR, (void*)&result);
  18393.     return result;
  18394. }
  18395.  
  18396. BOOL IDimHorizontal::GetHasXData()
  18397. {
  18398.     BOOL result;
  18399.     GetProperty(0x20004, VT_BOOL, (void*)&result);
  18400.     return result;
  18401. }
  18402.  
  18403. LPDISPATCH IDimHorizontal::GetXData()
  18404. {
  18405.     LPDISPATCH result;
  18406.     GetProperty(0x20005, VT_DISPATCH, (void*)&result);
  18407.     return result;
  18408. }
  18409.  
  18410. BOOL IDimHorizontal::GetAutoDraw()
  18411. {
  18412.     BOOL result;
  18413.     GetProperty(0x20015, VT_BOOL, (void*)&result);
  18414.     return result;
  18415. }
  18416.  
  18417. void IDimHorizontal::SetAutoDraw(BOOL propVal)
  18418. {
  18419.     SetProperty(0x20015, VT_BOOL, propVal);
  18420. }
  18421.  
  18422. double IDimHorizontal::GetAngle()
  18423. {
  18424.     double result;
  18425.     GetProperty(0x10001, VT_R8, (void*)&result);
  18426.     return result;
  18427. }
  18428.  
  18429. void IDimHorizontal::SetAngle(double propVal)
  18430. {
  18431.     SetProperty(0x10001, VT_R8, propVal);
  18432. }
  18433.  
  18434. LPDISPATCH IDimHorizontal::GetDxf10()
  18435. {
  18436.     LPDISPATCH result;
  18437.     GetProperty(0x10002, VT_DISPATCH, (void*)&result);
  18438.     return result;
  18439. }
  18440.  
  18441. void IDimHorizontal::SetDxf10(LPDISPATCH propVal)
  18442. {
  18443.     SetProperty(0x10002, VT_DISPATCH, propVal);
  18444. }
  18445.  
  18446. LPDISPATCH IDimHorizontal::GetDxf11()
  18447. {
  18448.     LPDISPATCH result;
  18449.     GetProperty(0x10003, VT_DISPATCH, (void*)&result);
  18450.     return result;
  18451. }
  18452.  
  18453. void IDimHorizontal::SetDxf11(LPDISPATCH propVal)
  18454. {
  18455.     SetProperty(0x10003, VT_DISPATCH, propVal);
  18456. }
  18457.  
  18458. LPDISPATCH IDimHorizontal::GetDxf12()
  18459. {
  18460.     LPDISPATCH result;
  18461.     GetProperty(0x10004, VT_DISPATCH, (void*)&result);
  18462.     return result;
  18463. }
  18464.  
  18465. void IDimHorizontal::SetDxf12(LPDISPATCH propVal)
  18466. {
  18467.     SetProperty(0x10004, VT_DISPATCH, propVal);
  18468. }
  18469.  
  18470. LPDISPATCH IDimHorizontal::GetDxf13()
  18471. {
  18472.     LPDISPATCH result;
  18473.     GetProperty(0x10005, VT_DISPATCH, (void*)&result);
  18474.     return result;
  18475. }
  18476.  
  18477. void IDimHorizontal::SetDxf13(LPDISPATCH propVal)
  18478. {
  18479.     SetProperty(0x10005, VT_DISPATCH, propVal);
  18480. }
  18481.  
  18482. LPDISPATCH IDimHorizontal::GetDxf14()
  18483. {
  18484.     LPDISPATCH result;
  18485.     GetProperty(0x10006, VT_DISPATCH, (void*)&result);
  18486.     return result;
  18487. }
  18488.  
  18489. void IDimHorizontal::SetDxf14(LPDISPATCH propVal)
  18490. {
  18491.     SetProperty(0x10006, VT_DISPATCH, propVal);
  18492. }
  18493.  
  18494. LPDISPATCH IDimHorizontal::GetDxf15()
  18495. {
  18496.     LPDISPATCH result;
  18497.     GetProperty(0x10007, VT_DISPATCH, (void*)&result);
  18498.     return result;
  18499. }
  18500.  
  18501. void IDimHorizontal::SetDxf15(LPDISPATCH propVal)
  18502. {
  18503.     SetProperty(0x10007, VT_DISPATCH, propVal);
  18504. }
  18505.  
  18506. LPDISPATCH IDimHorizontal::GetDxf16()
  18507. {
  18508.     LPDISPATCH result;
  18509.     GetProperty(0x10008, VT_DISPATCH, (void*)&result);
  18510.     return result;
  18511. }
  18512.  
  18513. void IDimHorizontal::SetDxf16(LPDISPATCH propVal)
  18514. {
  18515.     SetProperty(0x10008, VT_DISPATCH, propVal);
  18516. }
  18517.  
  18518. double IDimHorizontal::GetHorizontalAngle()
  18519. {
  18520.     double result;
  18521.     GetProperty(0x10009, VT_R8, (void*)&result);
  18522.     return result;
  18523. }
  18524.  
  18525. void IDimHorizontal::SetHorizontalAngle(double propVal)
  18526. {
  18527.     SetProperty(0x10009, VT_R8, propVal);
  18528. }
  18529.  
  18530. double IDimHorizontal::GetLeaderLength()
  18531. {
  18532.     double result;
  18533.     GetProperty(0x1000a, VT_R8, (void*)&result);
  18534.     return result;
  18535. }
  18536.  
  18537. void IDimHorizontal::SetLeaderLength(double propVal)
  18538. {
  18539.     SetProperty(0x1000a, VT_R8, propVal);
  18540. }
  18541.  
  18542. double IDimHorizontal::GetObliqueAngle()
  18543. {
  18544.     double result;
  18545.     GetProperty(0x1000b, VT_R8, (void*)&result);
  18546.     return result;
  18547. }
  18548.  
  18549. void IDimHorizontal::SetObliqueAngle(double propVal)
  18550. {
  18551.     SetProperty(0x1000b, VT_R8, propVal);
  18552. }
  18553.  
  18554. LPDISPATCH IDimHorizontal::GetStyle()
  18555. {
  18556.     LPDISPATCH result;
  18557.     GetProperty(0x1000c, VT_DISPATCH, (void*)&result);
  18558.     return result;
  18559. }
  18560.  
  18561. void IDimHorizontal::SetStyle(LPDISPATCH propVal)
  18562. {
  18563.     SetProperty(0x1000c, VT_DISPATCH, propVal);
  18564. }
  18565.  
  18566. CString IDimHorizontal::GetString()
  18567. {
  18568.     CString result;
  18569.     GetProperty(0x1000d, VT_BSTR, (void*)&result);
  18570.     return result;
  18571. }
  18572.  
  18573. void IDimHorizontal::SetString(LPCTSTR propVal)
  18574. {
  18575.     SetProperty(0x1000d, VT_BSTR, propVal);
  18576. }
  18577.  
  18578. double IDimHorizontal::GetTextAngle()
  18579. {
  18580.     double result;
  18581.     GetProperty(0x1000e, VT_R8, (void*)&result);
  18582.     return result;
  18583. }
  18584.  
  18585. void IDimHorizontal::SetTextAngle(double propVal)
  18586. {
  18587.     SetProperty(0x1000e, VT_R8, propVal);
  18588. }
  18589.  
  18590. BOOL IDimHorizontal::GetTextHomePosition()
  18591. {
  18592.     BOOL result;
  18593.     GetProperty(0x1000f, VT_BOOL, (void*)&result);
  18594.     return result;
  18595. }
  18596.  
  18597. void IDimHorizontal::SetTextHomePosition(BOOL propVal)
  18598. {
  18599.     SetProperty(0x1000f, VT_BOOL, propVal);
  18600. }
  18601.  
  18602. CString IDimHorizontal::Get_Name()
  18603. {
  18604.     CString result;
  18605.     GetProperty(0x0, VT_BSTR, (void*)&result);
  18606.     return result;
  18607. }
  18608.  
  18609. LPDISPATCH IDimHorizontal::GetTextPosition()
  18610. {
  18611.     LPDISPATCH result;
  18612.     GetProperty(0x1, VT_DISPATCH, (void*)&result);
  18613.     return result;
  18614. }
  18615.  
  18616. void IDimHorizontal::SetTextPosition(LPDISPATCH propVal)
  18617. {
  18618.     SetProperty(0x1, VT_DISPATCH, propVal);
  18619. }
  18620.  
  18621. LPDISPATCH IDimHorizontal::GetTranslationVector()
  18622. {
  18623.     LPDISPATCH result;
  18624.     GetProperty(0x2, VT_DISPATCH, (void*)&result);
  18625.     return result;
  18626. }
  18627.  
  18628. void IDimHorizontal::SetTranslationVector(LPDISPATCH propVal)
  18629. {
  18630.     SetProperty(0x2, VT_DISPATCH, propVal);
  18631. }
  18632.  
  18633. LPDISPATCH IDimHorizontal::GetDimensionLine()
  18634. {
  18635.     LPDISPATCH result;
  18636.     GetProperty(0x3, VT_DISPATCH, (void*)&result);
  18637.     return result;
  18638. }
  18639.  
  18640. void IDimHorizontal::SetDimensionLine(LPDISPATCH propVal)
  18641. {
  18642.     SetProperty(0x3, VT_DISPATCH, propVal);
  18643. }
  18644.  
  18645. LPDISPATCH IDimHorizontal::GetFirstExtension()
  18646. {
  18647.     LPDISPATCH result;
  18648.     GetProperty(0x4, VT_DISPATCH, (void*)&result);
  18649.     return result;
  18650. }
  18651.  
  18652. void IDimHorizontal::SetFirstExtension(LPDISPATCH propVal)
  18653. {
  18654.     SetProperty(0x4, VT_DISPATCH, propVal);
  18655. }
  18656.  
  18657. LPDISPATCH IDimHorizontal::GetSecondExtension()
  18658. {
  18659.     LPDISPATCH result;
  18660.     GetProperty(0x5, VT_DISPATCH, (void*)&result);
  18661.     return result;
  18662. }
  18663.  
  18664. void IDimHorizontal::SetSecondExtension(LPDISPATCH propVal)
  18665. {
  18666.     SetProperty(0x5, VT_DISPATCH, propVal);
  18667. }
  18668.  
  18669. /////////////////////////////////////////////////////////////////////////////
  18670. // IDimHorizontal operations
  18671.  
  18672. void IDimHorizontal::Redraw()
  18673. {
  18674.     InvokeHelper(0x30008, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  18675. }
  18676.  
  18677. void IDimHorizontal::Regen()
  18678. {
  18679.     InvokeHelper(0x30009, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  18680. }
  18681.  
  18682. void IDimHorizontal::Erase()
  18683. {
  18684.     InvokeHelper(0x3000a, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  18685. }
  18686.  
  18687. void IDimHorizontal::Delete()
  18688. {
  18689.     InvokeHelper(0x3000b, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  18690. }
  18691.  
  18692. void IDimHorizontal::Move(LPDISPATCH offset)
  18693. {
  18694.     static BYTE parms[] =
  18695.         VTS_DISPATCH;
  18696.     InvokeHelper(0x3000c, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  18697.          offset);
  18698. }
  18699.  
  18700. LPDISPATCH IDimHorizontal::Copy(LPDISPATCH offset)
  18701. {
  18702.     LPDISPATCH result;
  18703.     static BYTE parms[] =
  18704.         VTS_DISPATCH;
  18705.     InvokeHelper(0x3000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  18706.         offset);
  18707.     return result;
  18708. }
  18709.  
  18710. void IDimHorizontal::scale(LPDISPATCH basepoint, LPDISPATCH scale)
  18711. {
  18712.     static BYTE parms[] =
  18713.         VTS_DISPATCH VTS_DISPATCH;
  18714.     InvokeHelper(0x3000e, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  18715.          basepoint, scale);
  18716. }
  18717.  
  18718. void IDimHorizontal::ScaleIt(LPDISPATCH basepoint, LPDISPATCH scale)
  18719. {
  18720.     static BYTE parms[] =
  18721.         VTS_DISPATCH VTS_DISPATCH;
  18722.     InvokeHelper(0x3000f, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  18723.          basepoint, scale);
  18724. }
  18725.  
  18726. void IDimHorizontal::Rotate(LPDISPATCH basepoint, double Angle)
  18727. {
  18728.     static BYTE parms[] =
  18729.         VTS_DISPATCH VTS_R8;
  18730.     InvokeHelper(0x30010, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  18731.          basepoint, Angle);
  18732. }
  18733.  
  18734. void IDimHorizontal::Mirror(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  18735. {
  18736.     static BYTE parms[] =
  18737.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  18738.     InvokeHelper(0x30011, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  18739.          point1, point2, &MirrorText);
  18740. }
  18741.  
  18742. LPDISPATCH IDimHorizontal::MirrorCopy(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  18743. {
  18744.     LPDISPATCH result;
  18745.     static BYTE parms[] =
  18746.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  18747.     InvokeHelper(0x30012, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  18748.         point1, point2, &MirrorText);
  18749.     return result;
  18750. }
  18751.  
  18752. void IDimHorizontal::Dialog()
  18753. {
  18754.     InvokeHelper(0x30013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  18755. }
  18756.  
  18757. LPDISPATCH IDimHorizontal::Offset(LPDISPATCH vec, const VARIANT& Distance)
  18758. {
  18759.     LPDISPATCH result;
  18760.     static BYTE parms[] =
  18761.         VTS_DISPATCH VTS_VARIANT;
  18762.     InvokeHelper(0x30014, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  18763.         vec, &Distance);
  18764.     return result;
  18765. }
  18766.  
  18767. LPDISPATCH IDimHorizontal::Array(short numrows, short numcols, double rowspacing, double colspacing, double Rotation)
  18768. {
  18769.     LPDISPATCH result;
  18770.     static BYTE parms[] =
  18771.         VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8;
  18772.     InvokeHelper(0x30015, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  18773.         numrows, numcols, rowspacing, colspacing, Rotation);
  18774.     return result;
  18775. }
  18776.  
  18777. LPDISPATCH IDimHorizontal::Array3D(short numrows, short numcols, short numlevels, double rowspacing, double colspacing, double levelspacing, double Rotation)
  18778. {
  18779.     LPDISPATCH result;
  18780.     static BYTE parms[] =
  18781.         VTS_I2 VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8 VTS_R8;
  18782.     InvokeHelper(0x30016, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  18783.         numrows, numcols, numlevels, rowspacing, colspacing, levelspacing, Rotation);
  18784.     return result;
  18785. }
  18786.  
  18787. LPDISPATCH IDimHorizontal::PolarArray(short numitems, double fillangle, double angletween, LPDISPATCH Center, const VARIANT& refpoint)
  18788. {
  18789.     LPDISPATCH result;
  18790.     static BYTE parms[] =
  18791.         VTS_I2 VTS_R8 VTS_R8 VTS_DISPATCH VTS_VARIANT;
  18792.     InvokeHelper(0x30017, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  18793.         numitems, fillangle, angletween, Center, &refpoint);
  18794.     return result;
  18795. }
  18796.  
  18797. void IDimHorizontal::DisplayGrips()
  18798. {
  18799.     InvokeHelper(0x30018, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  18800. }
  18801.  
  18802. void IDimHorizontal::EraseGrips()
  18803. {
  18804.     InvokeHelper(0x30019, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  18805. }
  18806.  
  18807. LPDISPATCH IDimHorizontal::Snap2Endpoint(LPDISPATCH closeto)
  18808. {
  18809.     LPDISPATCH result;
  18810.     static BYTE parms[] =
  18811.         VTS_DISPATCH;
  18812.     InvokeHelper(0x20006, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  18813.         closeto);
  18814.     return result;
  18815. }
  18816.  
  18817. LPDISPATCH IDimHorizontal::Snap2Midpoint(LPDISPATCH closeto)
  18818. {
  18819.     LPDISPATCH result;
  18820.     static BYTE parms[] =
  18821.         VTS_DISPATCH;
  18822.     InvokeHelper(0x20007, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  18823.         closeto);
  18824.     return result;
  18825. }
  18826.  
  18827. LPDISPATCH IDimHorizontal::Snap2Center(LPDISPATCH closeto)
  18828. {
  18829.     LPDISPATCH result;
  18830.     static BYTE parms[] =
  18831.         VTS_DISPATCH;
  18832.     InvokeHelper(0x20008, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  18833.         closeto);
  18834.     return result;
  18835. }
  18836.  
  18837. LPDISPATCH IDimHorizontal::Snap2Nearest(LPDISPATCH closeto)
  18838. {
  18839.     LPDISPATCH result;
  18840.     static BYTE parms[] =
  18841.         VTS_DISPATCH;
  18842.     InvokeHelper(0x20009, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  18843.         closeto);
  18844.     return result;
  18845. }
  18846.  
  18847. LPDISPATCH IDimHorizontal::Snap2Point(LPDISPATCH closeto)
  18848. {
  18849.     LPDISPATCH result;
  18850.     static BYTE parms[] =
  18851.         VTS_DISPATCH;
  18852.     InvokeHelper(0x2000a, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  18853.         closeto);
  18854.     return result;
  18855. }
  18856.  
  18857. LPDISPATCH IDimHorizontal::Snap2Quadrant(LPDISPATCH closeto)
  18858. {
  18859.     LPDISPATCH result;
  18860.     static BYTE parms[] =
  18861.         VTS_DISPATCH;
  18862.     InvokeHelper(0x2000b, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  18863.         closeto);
  18864.     return result;
  18865. }
  18866.  
  18867. LPDISPATCH IDimHorizontal::Snap2Insertion(LPDISPATCH closeto)
  18868. {
  18869.     LPDISPATCH result;
  18870.     static BYTE parms[] =
  18871.         VTS_DISPATCH;
  18872.     InvokeHelper(0x2000c, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  18873.         closeto);
  18874.     return result;
  18875. }
  18876.  
  18877. LPDISPATCH IDimHorizontal::Snap2Perpendicular(LPDISPATCH closeto, LPDISPATCH prevpoint)
  18878. {
  18879.     LPDISPATCH result;
  18880.     static BYTE parms[] =
  18881.         VTS_DISPATCH VTS_DISPATCH;
  18882.     InvokeHelper(0x2000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  18883.         closeto, prevpoint);
  18884.     return result;
  18885. }
  18886.  
  18887. LPDISPATCH IDimHorizontal::Snap2Tangent(LPDISPATCH closeto, LPDISPATCH prevpoint)
  18888. {
  18889.     LPDISPATCH result;
  18890.     static BYTE parms[] =
  18891.         VTS_DISPATCH VTS_DISPATCH;
  18892.     InvokeHelper(0x2000e, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  18893.         closeto, prevpoint);
  18894.     return result;
  18895. }
  18896.  
  18897. LPDISPATCH IDimHorizontal::Intersection(LPDISPATCH Entity, const VARIANT& infinite1, const VARIANT& infinite2)
  18898. {
  18899.     LPDISPATCH result;
  18900.     static BYTE parms[] =
  18901.         VTS_DISPATCH VTS_VARIANT VTS_VARIANT;
  18902.     InvokeHelper(0x2000f, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  18903.         Entity, &infinite1, &infinite2);
  18904.     return result;
  18905. }
  18906.  
  18907. BOOL IDimHorizontal::ExtendToSet(LPDISPATCH point)
  18908. {
  18909.     BOOL result;
  18910.     static BYTE parms[] =
  18911.         VTS_DISPATCH;
  18912.     InvokeHelper(0x20010, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  18913.         point);
  18914.     return result;
  18915. }
  18916.  
  18917. BOOL IDimHorizontal::TrimToSet(LPDISPATCH point)
  18918. {
  18919.     BOOL result;
  18920.     static BYTE parms[] =
  18921.         VTS_DISPATCH;
  18922.     InvokeHelper(0x20011, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  18923.         point);
  18924.     return result;
  18925. }
  18926.  
  18927. BOOL IDimHorizontal::Break(LPDISPATCH point1, LPDISPATCH point2)
  18928. {
  18929.     BOOL result;
  18930.     static BYTE parms[] =
  18931.         VTS_DISPATCH VTS_DISPATCH;
  18932.     InvokeHelper(0x20012, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  18933.         point1, point2);
  18934.     return result;
  18935. }
  18936.  
  18937. void IDimHorizontal::Update()
  18938. {
  18939.     InvokeHelper(0x20013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  18940. }
  18941.  
  18942. void IDimHorizontal::UpdateNow()
  18943. {
  18944.     InvokeHelper(0x20014, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  18945. }
  18946.  
  18947. BOOL IDimHorizontal::Explode()
  18948. {
  18949.     BOOL result;
  18950.     InvokeHelper(0x10010, DISPATCH_METHOD, VT_BOOL, (void*)&result, NULL);
  18951.     return result;
  18952. }
  18953.  
  18954.  
  18955. /////////////////////////////////////////////////////////////////////////////
  18956. // IDimVertical properties
  18957.  
  18958. LPDISPATCH IDimVertical::GetApplication()
  18959. {
  18960.     LPDISPATCH result;
  18961.     GetProperty(0x40001, VT_DISPATCH, (void*)&result);
  18962.     return result;
  18963. }
  18964.  
  18965. LPDISPATCH IDimVertical::GetParent()
  18966. {
  18967.     LPDISPATCH result;
  18968.     GetProperty(0x40002, VT_DISPATCH, (void*)&result);
  18969.     return result;
  18970. }
  18971.  
  18972. LPDISPATCH IDimVertical::GetColor()
  18973. {
  18974.     LPDISPATCH result;
  18975.     GetProperty(0x30001, VT_DISPATCH, (void*)&result);
  18976.     return result;
  18977. }
  18978.  
  18979. void IDimVertical::SetColor(LPDISPATCH propVal)
  18980. {
  18981.     SetProperty(0x30001, VT_DISPATCH, propVal);
  18982. }
  18983.  
  18984. short IDimVertical::GetColorNumber()
  18985. {
  18986.     short result;
  18987.     GetProperty(0x30002, VT_I2, (void*)&result);
  18988.     return result;
  18989. }
  18990.  
  18991. void IDimVertical::SetColorNumber(short propVal)
  18992. {
  18993.     SetProperty(0x30002, VT_I2, propVal);
  18994. }
  18995.  
  18996. LPDISPATCH IDimVertical::GetLayer()
  18997. {
  18998.     LPDISPATCH result;
  18999.     GetProperty(0x30003, VT_DISPATCH, (void*)&result);
  19000.     return result;
  19001. }
  19002.  
  19003. void IDimVertical::SetLayer(LPDISPATCH propVal)
  19004. {
  19005.     SetProperty(0x30003, VT_DISPATCH, propVal);
  19006. }
  19007.  
  19008. LPDISPATCH IDimVertical::GetLinetype()
  19009. {
  19010.     LPDISPATCH result;
  19011.     GetProperty(0x30004, VT_DISPATCH, (void*)&result);
  19012.     return result;
  19013. }
  19014.  
  19015. void IDimVertical::SetLinetype(LPDISPATCH propVal)
  19016. {
  19017.     SetProperty(0x30004, VT_DISPATCH, propVal);
  19018. }
  19019.  
  19020. double IDimVertical::GetThickness()
  19021. {
  19022.     double result;
  19023.     GetProperty(0x30005, VT_R8, (void*)&result);
  19024.     return result;
  19025. }
  19026.  
  19027. void IDimVertical::SetThickness(double propVal)
  19028. {
  19029.     SetProperty(0x30005, VT_R8, propVal);
  19030. }
  19031.  
  19032. BOOL IDimVertical::GetPaperSpace()
  19033. {
  19034.     BOOL result;
  19035.     GetProperty(0x30006, VT_BOOL, (void*)&result);
  19036.     return result;
  19037. }
  19038.  
  19039. void IDimVertical::SetPaperSpace(BOOL propVal)
  19040. {
  19041.     SetProperty(0x30006, VT_BOOL, propVal);
  19042. }
  19043.  
  19044. LPDISPATCH IDimVertical::GetNormal()
  19045. {
  19046.     LPDISPATCH result;
  19047.     GetProperty(0x30007, VT_DISPATCH, (void*)&result);
  19048.     return result;
  19049. }
  19050.  
  19051. void IDimVertical::SetNormal(LPDISPATCH propVal)
  19052. {
  19053.     SetProperty(0x30007, VT_DISPATCH, propVal);
  19054. }
  19055.  
  19056. CString IDimVertical::GetName()
  19057. {
  19058.     CString result;
  19059.     GetProperty(0x20001, VT_BSTR, (void*)&result);
  19060.     return result;
  19061. }
  19062.  
  19063. short IDimVertical::GetType()
  19064. {
  19065.     short result;
  19066.     GetProperty(0x20002, VT_I2, (void*)&result);
  19067.     return result;
  19068. }
  19069.  
  19070. CString IDimVertical::GetHandle()
  19071. {
  19072.     CString result;
  19073.     GetProperty(0x20003, VT_BSTR, (void*)&result);
  19074.     return result;
  19075. }
  19076.  
  19077. BOOL IDimVertical::GetHasXData()
  19078. {
  19079.     BOOL result;
  19080.     GetProperty(0x20004, VT_BOOL, (void*)&result);
  19081.     return result;
  19082. }
  19083.  
  19084. LPDISPATCH IDimVertical::GetXData()
  19085. {
  19086.     LPDISPATCH result;
  19087.     GetProperty(0x20005, VT_DISPATCH, (void*)&result);
  19088.     return result;
  19089. }
  19090.  
  19091. BOOL IDimVertical::GetAutoDraw()
  19092. {
  19093.     BOOL result;
  19094.     GetProperty(0x20015, VT_BOOL, (void*)&result);
  19095.     return result;
  19096. }
  19097.  
  19098. void IDimVertical::SetAutoDraw(BOOL propVal)
  19099. {
  19100.     SetProperty(0x20015, VT_BOOL, propVal);
  19101. }
  19102.  
  19103. double IDimVertical::GetAngle()
  19104. {
  19105.     double result;
  19106.     GetProperty(0x10001, VT_R8, (void*)&result);
  19107.     return result;
  19108. }
  19109.  
  19110. void IDimVertical::SetAngle(double propVal)
  19111. {
  19112.     SetProperty(0x10001, VT_R8, propVal);
  19113. }
  19114.  
  19115. LPDISPATCH IDimVertical::GetDxf10()
  19116. {
  19117.     LPDISPATCH result;
  19118.     GetProperty(0x10002, VT_DISPATCH, (void*)&result);
  19119.     return result;
  19120. }
  19121.  
  19122. void IDimVertical::SetDxf10(LPDISPATCH propVal)
  19123. {
  19124.     SetProperty(0x10002, VT_DISPATCH, propVal);
  19125. }
  19126.  
  19127. LPDISPATCH IDimVertical::GetDxf11()
  19128. {
  19129.     LPDISPATCH result;
  19130.     GetProperty(0x10003, VT_DISPATCH, (void*)&result);
  19131.     return result;
  19132. }
  19133.  
  19134. void IDimVertical::SetDxf11(LPDISPATCH propVal)
  19135. {
  19136.     SetProperty(0x10003, VT_DISPATCH, propVal);
  19137. }
  19138.  
  19139. LPDISPATCH IDimVertical::GetDxf12()
  19140. {
  19141.     LPDISPATCH result;
  19142.     GetProperty(0x10004, VT_DISPATCH, (void*)&result);
  19143.     return result;
  19144. }
  19145.  
  19146. void IDimVertical::SetDxf12(LPDISPATCH propVal)
  19147. {
  19148.     SetProperty(0x10004, VT_DISPATCH, propVal);
  19149. }
  19150.  
  19151. LPDISPATCH IDimVertical::GetDxf13()
  19152. {
  19153.     LPDISPATCH result;
  19154.     GetProperty(0x10005, VT_DISPATCH, (void*)&result);
  19155.     return result;
  19156. }
  19157.  
  19158. void IDimVertical::SetDxf13(LPDISPATCH propVal)
  19159. {
  19160.     SetProperty(0x10005, VT_DISPATCH, propVal);
  19161. }
  19162.  
  19163. LPDISPATCH IDimVertical::GetDxf14()
  19164. {
  19165.     LPDISPATCH result;
  19166.     GetProperty(0x10006, VT_DISPATCH, (void*)&result);
  19167.     return result;
  19168. }
  19169.  
  19170. void IDimVertical::SetDxf14(LPDISPATCH propVal)
  19171. {
  19172.     SetProperty(0x10006, VT_DISPATCH, propVal);
  19173. }
  19174.  
  19175. LPDISPATCH IDimVertical::GetDxf15()
  19176. {
  19177.     LPDISPATCH result;
  19178.     GetProperty(0x10007, VT_DISPATCH, (void*)&result);
  19179.     return result;
  19180. }
  19181.  
  19182. void IDimVertical::SetDxf15(LPDISPATCH propVal)
  19183. {
  19184.     SetProperty(0x10007, VT_DISPATCH, propVal);
  19185. }
  19186.  
  19187. LPDISPATCH IDimVertical::GetDxf16()
  19188. {
  19189.     LPDISPATCH result;
  19190.     GetProperty(0x10008, VT_DISPATCH, (void*)&result);
  19191.     return result;
  19192. }
  19193.  
  19194. void IDimVertical::SetDxf16(LPDISPATCH propVal)
  19195. {
  19196.     SetProperty(0x10008, VT_DISPATCH, propVal);
  19197. }
  19198.  
  19199. double IDimVertical::GetHorizontalAngle()
  19200. {
  19201.     double result;
  19202.     GetProperty(0x10009, VT_R8, (void*)&result);
  19203.     return result;
  19204. }
  19205.  
  19206. void IDimVertical::SetHorizontalAngle(double propVal)
  19207. {
  19208.     SetProperty(0x10009, VT_R8, propVal);
  19209. }
  19210.  
  19211. double IDimVertical::GetLeaderLength()
  19212. {
  19213.     double result;
  19214.     GetProperty(0x1000a, VT_R8, (void*)&result);
  19215.     return result;
  19216. }
  19217.  
  19218. void IDimVertical::SetLeaderLength(double propVal)
  19219. {
  19220.     SetProperty(0x1000a, VT_R8, propVal);
  19221. }
  19222.  
  19223. double IDimVertical::GetObliqueAngle()
  19224. {
  19225.     double result;
  19226.     GetProperty(0x1000b, VT_R8, (void*)&result);
  19227.     return result;
  19228. }
  19229.  
  19230. void IDimVertical::SetObliqueAngle(double propVal)
  19231. {
  19232.     SetProperty(0x1000b, VT_R8, propVal);
  19233. }
  19234.  
  19235. LPDISPATCH IDimVertical::GetStyle()
  19236. {
  19237.     LPDISPATCH result;
  19238.     GetProperty(0x1000c, VT_DISPATCH, (void*)&result);
  19239.     return result;
  19240. }
  19241.  
  19242. void IDimVertical::SetStyle(LPDISPATCH propVal)
  19243. {
  19244.     SetProperty(0x1000c, VT_DISPATCH, propVal);
  19245. }
  19246.  
  19247. CString IDimVertical::GetString()
  19248. {
  19249.     CString result;
  19250.     GetProperty(0x1000d, VT_BSTR, (void*)&result);
  19251.     return result;
  19252. }
  19253.  
  19254. void IDimVertical::SetString(LPCTSTR propVal)
  19255. {
  19256.     SetProperty(0x1000d, VT_BSTR, propVal);
  19257. }
  19258.  
  19259. double IDimVertical::GetTextAngle()
  19260. {
  19261.     double result;
  19262.     GetProperty(0x1000e, VT_R8, (void*)&result);
  19263.     return result;
  19264. }
  19265.  
  19266. void IDimVertical::SetTextAngle(double propVal)
  19267. {
  19268.     SetProperty(0x1000e, VT_R8, propVal);
  19269. }
  19270.  
  19271. BOOL IDimVertical::GetTextHomePosition()
  19272. {
  19273.     BOOL result;
  19274.     GetProperty(0x1000f, VT_BOOL, (void*)&result);
  19275.     return result;
  19276. }
  19277.  
  19278. void IDimVertical::SetTextHomePosition(BOOL propVal)
  19279. {
  19280.     SetProperty(0x1000f, VT_BOOL, propVal);
  19281. }
  19282.  
  19283. CString IDimVertical::Get_Name()
  19284. {
  19285.     CString result;
  19286.     GetProperty(0x0, VT_BSTR, (void*)&result);
  19287.     return result;
  19288. }
  19289.  
  19290. LPDISPATCH IDimVertical::GetTextPosition()
  19291. {
  19292.     LPDISPATCH result;
  19293.     GetProperty(0x1, VT_DISPATCH, (void*)&result);
  19294.     return result;
  19295. }
  19296.  
  19297. void IDimVertical::SetTextPosition(LPDISPATCH propVal)
  19298. {
  19299.     SetProperty(0x1, VT_DISPATCH, propVal);
  19300. }
  19301.  
  19302. LPDISPATCH IDimVertical::GetTranslationVector()
  19303. {
  19304.     LPDISPATCH result;
  19305.     GetProperty(0x2, VT_DISPATCH, (void*)&result);
  19306.     return result;
  19307. }
  19308.  
  19309. void IDimVertical::SetTranslationVector(LPDISPATCH propVal)
  19310. {
  19311.     SetProperty(0x2, VT_DISPATCH, propVal);
  19312. }
  19313.  
  19314. LPDISPATCH IDimVertical::GetDimensionLine()
  19315. {
  19316.     LPDISPATCH result;
  19317.     GetProperty(0x3, VT_DISPATCH, (void*)&result);
  19318.     return result;
  19319. }
  19320.  
  19321. void IDimVertical::SetDimensionLine(LPDISPATCH propVal)
  19322. {
  19323.     SetProperty(0x3, VT_DISPATCH, propVal);
  19324. }
  19325.  
  19326. LPDISPATCH IDimVertical::GetFirstExtension()
  19327. {
  19328.     LPDISPATCH result;
  19329.     GetProperty(0x4, VT_DISPATCH, (void*)&result);
  19330.     return result;
  19331. }
  19332.  
  19333. void IDimVertical::SetFirstExtension(LPDISPATCH propVal)
  19334. {
  19335.     SetProperty(0x4, VT_DISPATCH, propVal);
  19336. }
  19337.  
  19338. LPDISPATCH IDimVertical::GetSecondExtension()
  19339. {
  19340.     LPDISPATCH result;
  19341.     GetProperty(0x5, VT_DISPATCH, (void*)&result);
  19342.     return result;
  19343. }
  19344.  
  19345. void IDimVertical::SetSecondExtension(LPDISPATCH propVal)
  19346. {
  19347.     SetProperty(0x5, VT_DISPATCH, propVal);
  19348. }
  19349.  
  19350. /////////////////////////////////////////////////////////////////////////////
  19351. // IDimVertical operations
  19352.  
  19353. void IDimVertical::Redraw()
  19354. {
  19355.     InvokeHelper(0x30008, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  19356. }
  19357.  
  19358. void IDimVertical::Regen()
  19359. {
  19360.     InvokeHelper(0x30009, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  19361. }
  19362.  
  19363. void IDimVertical::Erase()
  19364. {
  19365.     InvokeHelper(0x3000a, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  19366. }
  19367.  
  19368. void IDimVertical::Delete()
  19369. {
  19370.     InvokeHelper(0x3000b, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  19371. }
  19372.  
  19373. void IDimVertical::Move(LPDISPATCH offset)
  19374. {
  19375.     static BYTE parms[] =
  19376.         VTS_DISPATCH;
  19377.     InvokeHelper(0x3000c, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  19378.          offset);
  19379. }
  19380.  
  19381. LPDISPATCH IDimVertical::Copy(LPDISPATCH offset)
  19382. {
  19383.     LPDISPATCH result;
  19384.     static BYTE parms[] =
  19385.         VTS_DISPATCH;
  19386.     InvokeHelper(0x3000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  19387.         offset);
  19388.     return result;
  19389. }
  19390.  
  19391. void IDimVertical::scale(LPDISPATCH basepoint, LPDISPATCH scale)
  19392. {
  19393.     static BYTE parms[] =
  19394.         VTS_DISPATCH VTS_DISPATCH;
  19395.     InvokeHelper(0x3000e, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  19396.          basepoint, scale);
  19397. }
  19398.  
  19399. void IDimVertical::ScaleIt(LPDISPATCH basepoint, LPDISPATCH scale)
  19400. {
  19401.     static BYTE parms[] =
  19402.         VTS_DISPATCH VTS_DISPATCH;
  19403.     InvokeHelper(0x3000f, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  19404.          basepoint, scale);
  19405. }
  19406.  
  19407. void IDimVertical::Rotate(LPDISPATCH basepoint, double Angle)
  19408. {
  19409.     static BYTE parms[] =
  19410.         VTS_DISPATCH VTS_R8;
  19411.     InvokeHelper(0x30010, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  19412.          basepoint, Angle);
  19413. }
  19414.  
  19415. void IDimVertical::Mirror(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  19416. {
  19417.     static BYTE parms[] =
  19418.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  19419.     InvokeHelper(0x30011, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  19420.          point1, point2, &MirrorText);
  19421. }
  19422.  
  19423. LPDISPATCH IDimVertical::MirrorCopy(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  19424. {
  19425.     LPDISPATCH result;
  19426.     static BYTE parms[] =
  19427.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  19428.     InvokeHelper(0x30012, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  19429.         point1, point2, &MirrorText);
  19430.     return result;
  19431. }
  19432.  
  19433. void IDimVertical::Dialog()
  19434. {
  19435.     InvokeHelper(0x30013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  19436. }
  19437.  
  19438. LPDISPATCH IDimVertical::Offset(LPDISPATCH vec, const VARIANT& Distance)
  19439. {
  19440.     LPDISPATCH result;
  19441.     static BYTE parms[] =
  19442.         VTS_DISPATCH VTS_VARIANT;
  19443.     InvokeHelper(0x30014, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  19444.         vec, &Distance);
  19445.     return result;
  19446. }
  19447.  
  19448. LPDISPATCH IDimVertical::Array(short numrows, short numcols, double rowspacing, double colspacing, double Rotation)
  19449. {
  19450.     LPDISPATCH result;
  19451.     static BYTE parms[] =
  19452.         VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8;
  19453.     InvokeHelper(0x30015, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  19454.         numrows, numcols, rowspacing, colspacing, Rotation);
  19455.     return result;
  19456. }
  19457.  
  19458. LPDISPATCH IDimVertical::Array3D(short numrows, short numcols, short numlevels, double rowspacing, double colspacing, double levelspacing, double Rotation)
  19459. {
  19460.     LPDISPATCH result;
  19461.     static BYTE parms[] =
  19462.         VTS_I2 VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8 VTS_R8;
  19463.     InvokeHelper(0x30016, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  19464.         numrows, numcols, numlevels, rowspacing, colspacing, levelspacing, Rotation);
  19465.     return result;
  19466. }
  19467.  
  19468. LPDISPATCH IDimVertical::PolarArray(short numitems, double fillangle, double angletween, LPDISPATCH Center, const VARIANT& refpoint)
  19469. {
  19470.     LPDISPATCH result;
  19471.     static BYTE parms[] =
  19472.         VTS_I2 VTS_R8 VTS_R8 VTS_DISPATCH VTS_VARIANT;
  19473.     InvokeHelper(0x30017, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  19474.         numitems, fillangle, angletween, Center, &refpoint);
  19475.     return result;
  19476. }
  19477.  
  19478. void IDimVertical::DisplayGrips()
  19479. {
  19480.     InvokeHelper(0x30018, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  19481. }
  19482.  
  19483. void IDimVertical::EraseGrips()
  19484. {
  19485.     InvokeHelper(0x30019, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  19486. }
  19487.  
  19488. LPDISPATCH IDimVertical::Snap2Endpoint(LPDISPATCH closeto)
  19489. {
  19490.     LPDISPATCH result;
  19491.     static BYTE parms[] =
  19492.         VTS_DISPATCH;
  19493.     InvokeHelper(0x20006, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  19494.         closeto);
  19495.     return result;
  19496. }
  19497.  
  19498. LPDISPATCH IDimVertical::Snap2Midpoint(LPDISPATCH closeto)
  19499. {
  19500.     LPDISPATCH result;
  19501.     static BYTE parms[] =
  19502.         VTS_DISPATCH;
  19503.     InvokeHelper(0x20007, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  19504.         closeto);
  19505.     return result;
  19506. }
  19507.  
  19508. LPDISPATCH IDimVertical::Snap2Center(LPDISPATCH closeto)
  19509. {
  19510.     LPDISPATCH result;
  19511.     static BYTE parms[] =
  19512.         VTS_DISPATCH;
  19513.     InvokeHelper(0x20008, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  19514.         closeto);
  19515.     return result;
  19516. }
  19517.  
  19518. LPDISPATCH IDimVertical::Snap2Nearest(LPDISPATCH closeto)
  19519. {
  19520.     LPDISPATCH result;
  19521.     static BYTE parms[] =
  19522.         VTS_DISPATCH;
  19523.     InvokeHelper(0x20009, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  19524.         closeto);
  19525.     return result;
  19526. }
  19527.  
  19528. LPDISPATCH IDimVertical::Snap2Point(LPDISPATCH closeto)
  19529. {
  19530.     LPDISPATCH result;
  19531.     static BYTE parms[] =
  19532.         VTS_DISPATCH;
  19533.     InvokeHelper(0x2000a, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  19534.         closeto);
  19535.     return result;
  19536. }
  19537.  
  19538. LPDISPATCH IDimVertical::Snap2Quadrant(LPDISPATCH closeto)
  19539. {
  19540.     LPDISPATCH result;
  19541.     static BYTE parms[] =
  19542.         VTS_DISPATCH;
  19543.     InvokeHelper(0x2000b, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  19544.         closeto);
  19545.     return result;
  19546. }
  19547.  
  19548. LPDISPATCH IDimVertical::Snap2Insertion(LPDISPATCH closeto)
  19549. {
  19550.     LPDISPATCH result;
  19551.     static BYTE parms[] =
  19552.         VTS_DISPATCH;
  19553.     InvokeHelper(0x2000c, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  19554.         closeto);
  19555.     return result;
  19556. }
  19557.  
  19558. LPDISPATCH IDimVertical::Snap2Perpendicular(LPDISPATCH closeto, LPDISPATCH prevpoint)
  19559. {
  19560.     LPDISPATCH result;
  19561.     static BYTE parms[] =
  19562.         VTS_DISPATCH VTS_DISPATCH;
  19563.     InvokeHelper(0x2000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  19564.         closeto, prevpoint);
  19565.     return result;
  19566. }
  19567.  
  19568. LPDISPATCH IDimVertical::Snap2Tangent(LPDISPATCH closeto, LPDISPATCH prevpoint)
  19569. {
  19570.     LPDISPATCH result;
  19571.     static BYTE parms[] =
  19572.         VTS_DISPATCH VTS_DISPATCH;
  19573.     InvokeHelper(0x2000e, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  19574.         closeto, prevpoint);
  19575.     return result;
  19576. }
  19577.  
  19578. LPDISPATCH IDimVertical::Intersection(LPDISPATCH Entity, const VARIANT& infinite1, const VARIANT& infinite2)
  19579. {
  19580.     LPDISPATCH result;
  19581.     static BYTE parms[] =
  19582.         VTS_DISPATCH VTS_VARIANT VTS_VARIANT;
  19583.     InvokeHelper(0x2000f, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  19584.         Entity, &infinite1, &infinite2);
  19585.     return result;
  19586. }
  19587.  
  19588. BOOL IDimVertical::ExtendToSet(LPDISPATCH point)
  19589. {
  19590.     BOOL result;
  19591.     static BYTE parms[] =
  19592.         VTS_DISPATCH;
  19593.     InvokeHelper(0x20010, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  19594.         point);
  19595.     return result;
  19596. }
  19597.  
  19598. BOOL IDimVertical::TrimToSet(LPDISPATCH point)
  19599. {
  19600.     BOOL result;
  19601.     static BYTE parms[] =
  19602.         VTS_DISPATCH;
  19603.     InvokeHelper(0x20011, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  19604.         point);
  19605.     return result;
  19606. }
  19607.  
  19608. BOOL IDimVertical::Break(LPDISPATCH point1, LPDISPATCH point2)
  19609. {
  19610.     BOOL result;
  19611.     static BYTE parms[] =
  19612.         VTS_DISPATCH VTS_DISPATCH;
  19613.     InvokeHelper(0x20012, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  19614.         point1, point2);
  19615.     return result;
  19616. }
  19617.  
  19618. void IDimVertical::Update()
  19619. {
  19620.     InvokeHelper(0x20013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  19621. }
  19622.  
  19623. void IDimVertical::UpdateNow()
  19624. {
  19625.     InvokeHelper(0x20014, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  19626. }
  19627.  
  19628. BOOL IDimVertical::Explode()
  19629. {
  19630.     BOOL result;
  19631.     InvokeHelper(0x10010, DISPATCH_METHOD, VT_BOOL, (void*)&result, NULL);
  19632.     return result;
  19633. }
  19634.  
  19635.  
  19636. /////////////////////////////////////////////////////////////////////////////
  19637. // IDimAligned properties
  19638.  
  19639. LPDISPATCH IDimAligned::GetApplication()
  19640. {
  19641.     LPDISPATCH result;
  19642.     GetProperty(0x40001, VT_DISPATCH, (void*)&result);
  19643.     return result;
  19644. }
  19645.  
  19646. LPDISPATCH IDimAligned::GetParent()
  19647. {
  19648.     LPDISPATCH result;
  19649.     GetProperty(0x40002, VT_DISPATCH, (void*)&result);
  19650.     return result;
  19651. }
  19652.  
  19653. LPDISPATCH IDimAligned::GetColor()
  19654. {
  19655.     LPDISPATCH result;
  19656.     GetProperty(0x30001, VT_DISPATCH, (void*)&result);
  19657.     return result;
  19658. }
  19659.  
  19660. void IDimAligned::SetColor(LPDISPATCH propVal)
  19661. {
  19662.     SetProperty(0x30001, VT_DISPATCH, propVal);
  19663. }
  19664.  
  19665. short IDimAligned::GetColorNumber()
  19666. {
  19667.     short result;
  19668.     GetProperty(0x30002, VT_I2, (void*)&result);
  19669.     return result;
  19670. }
  19671.  
  19672. void IDimAligned::SetColorNumber(short propVal)
  19673. {
  19674.     SetProperty(0x30002, VT_I2, propVal);
  19675. }
  19676.  
  19677. LPDISPATCH IDimAligned::GetLayer()
  19678. {
  19679.     LPDISPATCH result;
  19680.     GetProperty(0x30003, VT_DISPATCH, (void*)&result);
  19681.     return result;
  19682. }
  19683.  
  19684. void IDimAligned::SetLayer(LPDISPATCH propVal)
  19685. {
  19686.     SetProperty(0x30003, VT_DISPATCH, propVal);
  19687. }
  19688.  
  19689. LPDISPATCH IDimAligned::GetLinetype()
  19690. {
  19691.     LPDISPATCH result;
  19692.     GetProperty(0x30004, VT_DISPATCH, (void*)&result);
  19693.     return result;
  19694. }
  19695.  
  19696. void IDimAligned::SetLinetype(LPDISPATCH propVal)
  19697. {
  19698.     SetProperty(0x30004, VT_DISPATCH, propVal);
  19699. }
  19700.  
  19701. double IDimAligned::GetThickness()
  19702. {
  19703.     double result;
  19704.     GetProperty(0x30005, VT_R8, (void*)&result);
  19705.     return result;
  19706. }
  19707.  
  19708. void IDimAligned::SetThickness(double propVal)
  19709. {
  19710.     SetProperty(0x30005, VT_R8, propVal);
  19711. }
  19712.  
  19713. BOOL IDimAligned::GetPaperSpace()
  19714. {
  19715.     BOOL result;
  19716.     GetProperty(0x30006, VT_BOOL, (void*)&result);
  19717.     return result;
  19718. }
  19719.  
  19720. void IDimAligned::SetPaperSpace(BOOL propVal)
  19721. {
  19722.     SetProperty(0x30006, VT_BOOL, propVal);
  19723. }
  19724.  
  19725. LPDISPATCH IDimAligned::GetNormal()
  19726. {
  19727.     LPDISPATCH result;
  19728.     GetProperty(0x30007, VT_DISPATCH, (void*)&result);
  19729.     return result;
  19730. }
  19731.  
  19732. void IDimAligned::SetNormal(LPDISPATCH propVal)
  19733. {
  19734.     SetProperty(0x30007, VT_DISPATCH, propVal);
  19735. }
  19736.  
  19737. CString IDimAligned::GetName()
  19738. {
  19739.     CString result;
  19740.     GetProperty(0x20001, VT_BSTR, (void*)&result);
  19741.     return result;
  19742. }
  19743.  
  19744. short IDimAligned::GetType()
  19745. {
  19746.     short result;
  19747.     GetProperty(0x20002, VT_I2, (void*)&result);
  19748.     return result;
  19749. }
  19750.  
  19751. CString IDimAligned::GetHandle()
  19752. {
  19753.     CString result;
  19754.     GetProperty(0x20003, VT_BSTR, (void*)&result);
  19755.     return result;
  19756. }
  19757.  
  19758. BOOL IDimAligned::GetHasXData()
  19759. {
  19760.     BOOL result;
  19761.     GetProperty(0x20004, VT_BOOL, (void*)&result);
  19762.     return result;
  19763. }
  19764.  
  19765. LPDISPATCH IDimAligned::GetXData()
  19766. {
  19767.     LPDISPATCH result;
  19768.     GetProperty(0x20005, VT_DISPATCH, (void*)&result);
  19769.     return result;
  19770. }
  19771.  
  19772. BOOL IDimAligned::GetAutoDraw()
  19773. {
  19774.     BOOL result;
  19775.     GetProperty(0x20015, VT_BOOL, (void*)&result);
  19776.     return result;
  19777. }
  19778.  
  19779. void IDimAligned::SetAutoDraw(BOOL propVal)
  19780. {
  19781.     SetProperty(0x20015, VT_BOOL, propVal);
  19782. }
  19783.  
  19784. double IDimAligned::GetAngle()
  19785. {
  19786.     double result;
  19787.     GetProperty(0x10001, VT_R8, (void*)&result);
  19788.     return result;
  19789. }
  19790.  
  19791. void IDimAligned::SetAngle(double propVal)
  19792. {
  19793.     SetProperty(0x10001, VT_R8, propVal);
  19794. }
  19795.  
  19796. LPDISPATCH IDimAligned::GetDxf10()
  19797. {
  19798.     LPDISPATCH result;
  19799.     GetProperty(0x10002, VT_DISPATCH, (void*)&result);
  19800.     return result;
  19801. }
  19802.  
  19803. void IDimAligned::SetDxf10(LPDISPATCH propVal)
  19804. {
  19805.     SetProperty(0x10002, VT_DISPATCH, propVal);
  19806. }
  19807.  
  19808. LPDISPATCH IDimAligned::GetDxf11()
  19809. {
  19810.     LPDISPATCH result;
  19811.     GetProperty(0x10003, VT_DISPATCH, (void*)&result);
  19812.     return result;
  19813. }
  19814.  
  19815. void IDimAligned::SetDxf11(LPDISPATCH propVal)
  19816. {
  19817.     SetProperty(0x10003, VT_DISPATCH, propVal);
  19818. }
  19819.  
  19820. LPDISPATCH IDimAligned::GetDxf12()
  19821. {
  19822.     LPDISPATCH result;
  19823.     GetProperty(0x10004, VT_DISPATCH, (void*)&result);
  19824.     return result;
  19825. }
  19826.  
  19827. void IDimAligned::SetDxf12(LPDISPATCH propVal)
  19828. {
  19829.     SetProperty(0x10004, VT_DISPATCH, propVal);
  19830. }
  19831.  
  19832. LPDISPATCH IDimAligned::GetDxf13()
  19833. {
  19834.     LPDISPATCH result;
  19835.     GetProperty(0x10005, VT_DISPATCH, (void*)&result);
  19836.     return result;
  19837. }
  19838.  
  19839. void IDimAligned::SetDxf13(LPDISPATCH propVal)
  19840. {
  19841.     SetProperty(0x10005, VT_DISPATCH, propVal);
  19842. }
  19843.  
  19844. LPDISPATCH IDimAligned::GetDxf14()
  19845. {
  19846.     LPDISPATCH result;
  19847.     GetProperty(0x10006, VT_DISPATCH, (void*)&result);
  19848.     return result;
  19849. }
  19850.  
  19851. void IDimAligned::SetDxf14(LPDISPATCH propVal)
  19852. {
  19853.     SetProperty(0x10006, VT_DISPATCH, propVal);
  19854. }
  19855.  
  19856. LPDISPATCH IDimAligned::GetDxf15()
  19857. {
  19858.     LPDISPATCH result;
  19859.     GetProperty(0x10007, VT_DISPATCH, (void*)&result);
  19860.     return result;
  19861. }
  19862.  
  19863. void IDimAligned::SetDxf15(LPDISPATCH propVal)
  19864. {
  19865.     SetProperty(0x10007, VT_DISPATCH, propVal);
  19866. }
  19867.  
  19868. LPDISPATCH IDimAligned::GetDxf16()
  19869. {
  19870.     LPDISPATCH result;
  19871.     GetProperty(0x10008, VT_DISPATCH, (void*)&result);
  19872.     return result;
  19873. }
  19874.  
  19875. void IDimAligned::SetDxf16(LPDISPATCH propVal)
  19876. {
  19877.     SetProperty(0x10008, VT_DISPATCH, propVal);
  19878. }
  19879.  
  19880. double IDimAligned::GetHorizontalAngle()
  19881. {
  19882.     double result;
  19883.     GetProperty(0x10009, VT_R8, (void*)&result);
  19884.     return result;
  19885. }
  19886.  
  19887. void IDimAligned::SetHorizontalAngle(double propVal)
  19888. {
  19889.     SetProperty(0x10009, VT_R8, propVal);
  19890. }
  19891.  
  19892. double IDimAligned::GetLeaderLength()
  19893. {
  19894.     double result;
  19895.     GetProperty(0x1000a, VT_R8, (void*)&result);
  19896.     return result;
  19897. }
  19898.  
  19899. void IDimAligned::SetLeaderLength(double propVal)
  19900. {
  19901.     SetProperty(0x1000a, VT_R8, propVal);
  19902. }
  19903.  
  19904. double IDimAligned::GetObliqueAngle()
  19905. {
  19906.     double result;
  19907.     GetProperty(0x1000b, VT_R8, (void*)&result);
  19908.     return result;
  19909. }
  19910.  
  19911. void IDimAligned::SetObliqueAngle(double propVal)
  19912. {
  19913.     SetProperty(0x1000b, VT_R8, propVal);
  19914. }
  19915.  
  19916. LPDISPATCH IDimAligned::GetStyle()
  19917. {
  19918.     LPDISPATCH result;
  19919.     GetProperty(0x1000c, VT_DISPATCH, (void*)&result);
  19920.     return result;
  19921. }
  19922.  
  19923. void IDimAligned::SetStyle(LPDISPATCH propVal)
  19924. {
  19925.     SetProperty(0x1000c, VT_DISPATCH, propVal);
  19926. }
  19927.  
  19928. CString IDimAligned::GetString()
  19929. {
  19930.     CString result;
  19931.     GetProperty(0x1000d, VT_BSTR, (void*)&result);
  19932.     return result;
  19933. }
  19934.  
  19935. void IDimAligned::SetString(LPCTSTR propVal)
  19936. {
  19937.     SetProperty(0x1000d, VT_BSTR, propVal);
  19938. }
  19939.  
  19940. double IDimAligned::GetTextAngle()
  19941. {
  19942.     double result;
  19943.     GetProperty(0x1000e, VT_R8, (void*)&result);
  19944.     return result;
  19945. }
  19946.  
  19947. void IDimAligned::SetTextAngle(double propVal)
  19948. {
  19949.     SetProperty(0x1000e, VT_R8, propVal);
  19950. }
  19951.  
  19952. BOOL IDimAligned::GetTextHomePosition()
  19953. {
  19954.     BOOL result;
  19955.     GetProperty(0x1000f, VT_BOOL, (void*)&result);
  19956.     return result;
  19957. }
  19958.  
  19959. void IDimAligned::SetTextHomePosition(BOOL propVal)
  19960. {
  19961.     SetProperty(0x1000f, VT_BOOL, propVal);
  19962. }
  19963.  
  19964. CString IDimAligned::Get_Name()
  19965. {
  19966.     CString result;
  19967.     GetProperty(0x0, VT_BSTR, (void*)&result);
  19968.     return result;
  19969. }
  19970.  
  19971. LPDISPATCH IDimAligned::GetTextPosition()
  19972. {
  19973.     LPDISPATCH result;
  19974.     GetProperty(0x1, VT_DISPATCH, (void*)&result);
  19975.     return result;
  19976. }
  19977.  
  19978. void IDimAligned::SetTextPosition(LPDISPATCH propVal)
  19979. {
  19980.     SetProperty(0x1, VT_DISPATCH, propVal);
  19981. }
  19982.  
  19983. LPDISPATCH IDimAligned::GetTranslationVector()
  19984. {
  19985.     LPDISPATCH result;
  19986.     GetProperty(0x2, VT_DISPATCH, (void*)&result);
  19987.     return result;
  19988. }
  19989.  
  19990. void IDimAligned::SetTranslationVector(LPDISPATCH propVal)
  19991. {
  19992.     SetProperty(0x2, VT_DISPATCH, propVal);
  19993. }
  19994.  
  19995. LPDISPATCH IDimAligned::GetDimensionLine()
  19996. {
  19997.     LPDISPATCH result;
  19998.     GetProperty(0x3, VT_DISPATCH, (void*)&result);
  19999.     return result;
  20000. }
  20001.  
  20002. void IDimAligned::SetDimensionLine(LPDISPATCH propVal)
  20003. {
  20004.     SetProperty(0x3, VT_DISPATCH, propVal);
  20005. }
  20006.  
  20007. LPDISPATCH IDimAligned::GetFirstExtension()
  20008. {
  20009.     LPDISPATCH result;
  20010.     GetProperty(0x4, VT_DISPATCH, (void*)&result);
  20011.     return result;
  20012. }
  20013.  
  20014. void IDimAligned::SetFirstExtension(LPDISPATCH propVal)
  20015. {
  20016.     SetProperty(0x4, VT_DISPATCH, propVal);
  20017. }
  20018.  
  20019. LPDISPATCH IDimAligned::GetSecondExtension()
  20020. {
  20021.     LPDISPATCH result;
  20022.     GetProperty(0x5, VT_DISPATCH, (void*)&result);
  20023.     return result;
  20024. }
  20025.  
  20026. void IDimAligned::SetSecondExtension(LPDISPATCH propVal)
  20027. {
  20028.     SetProperty(0x5, VT_DISPATCH, propVal);
  20029. }
  20030.  
  20031. /////////////////////////////////////////////////////////////////////////////
  20032. // IDimAligned operations
  20033.  
  20034. void IDimAligned::Redraw()
  20035. {
  20036.     InvokeHelper(0x30008, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  20037. }
  20038.  
  20039. void IDimAligned::Regen()
  20040. {
  20041.     InvokeHelper(0x30009, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  20042. }
  20043.  
  20044. void IDimAligned::Erase()
  20045. {
  20046.     InvokeHelper(0x3000a, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  20047. }
  20048.  
  20049. void IDimAligned::Delete()
  20050. {
  20051.     InvokeHelper(0x3000b, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  20052. }
  20053.  
  20054. void IDimAligned::Move(LPDISPATCH offset)
  20055. {
  20056.     static BYTE parms[] =
  20057.         VTS_DISPATCH;
  20058.     InvokeHelper(0x3000c, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  20059.          offset);
  20060. }
  20061.  
  20062. LPDISPATCH IDimAligned::Copy(LPDISPATCH offset)
  20063. {
  20064.     LPDISPATCH result;
  20065.     static BYTE parms[] =
  20066.         VTS_DISPATCH;
  20067.     InvokeHelper(0x3000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  20068.         offset);
  20069.     return result;
  20070. }
  20071.  
  20072. void IDimAligned::scale(LPDISPATCH basepoint, LPDISPATCH scale)
  20073. {
  20074.     static BYTE parms[] =
  20075.         VTS_DISPATCH VTS_DISPATCH;
  20076.     InvokeHelper(0x3000e, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  20077.          basepoint, scale);
  20078. }
  20079.  
  20080. void IDimAligned::ScaleIt(LPDISPATCH basepoint, LPDISPATCH scale)
  20081. {
  20082.     static BYTE parms[] =
  20083.         VTS_DISPATCH VTS_DISPATCH;
  20084.     InvokeHelper(0x3000f, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  20085.          basepoint, scale);
  20086. }
  20087.  
  20088. void IDimAligned::Rotate(LPDISPATCH basepoint, double Angle)
  20089. {
  20090.     static BYTE parms[] =
  20091.         VTS_DISPATCH VTS_R8;
  20092.     InvokeHelper(0x30010, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  20093.          basepoint, Angle);
  20094. }
  20095.  
  20096. void IDimAligned::Mirror(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  20097. {
  20098.     static BYTE parms[] =
  20099.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  20100.     InvokeHelper(0x30011, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  20101.          point1, point2, &MirrorText);
  20102. }
  20103.  
  20104. LPDISPATCH IDimAligned::MirrorCopy(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  20105. {
  20106.     LPDISPATCH result;
  20107.     static BYTE parms[] =
  20108.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  20109.     InvokeHelper(0x30012, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  20110.         point1, point2, &MirrorText);
  20111.     return result;
  20112. }
  20113.  
  20114. void IDimAligned::Dialog()
  20115. {
  20116.     InvokeHelper(0x30013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  20117. }
  20118.  
  20119. LPDISPATCH IDimAligned::Offset(LPDISPATCH vec, const VARIANT& Distance)
  20120. {
  20121.     LPDISPATCH result;
  20122.     static BYTE parms[] =
  20123.         VTS_DISPATCH VTS_VARIANT;
  20124.     InvokeHelper(0x30014, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  20125.         vec, &Distance);
  20126.     return result;
  20127. }
  20128.  
  20129. LPDISPATCH IDimAligned::Array(short numrows, short numcols, double rowspacing, double colspacing, double Rotation)
  20130. {
  20131.     LPDISPATCH result;
  20132.     static BYTE parms[] =
  20133.         VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8;
  20134.     InvokeHelper(0x30015, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  20135.         numrows, numcols, rowspacing, colspacing, Rotation);
  20136.     return result;
  20137. }
  20138.  
  20139. LPDISPATCH IDimAligned::Array3D(short numrows, short numcols, short numlevels, double rowspacing, double colspacing, double levelspacing, double Rotation)
  20140. {
  20141.     LPDISPATCH result;
  20142.     static BYTE parms[] =
  20143.         VTS_I2 VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8 VTS_R8;
  20144.     InvokeHelper(0x30016, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  20145.         numrows, numcols, numlevels, rowspacing, colspacing, levelspacing, Rotation);
  20146.     return result;
  20147. }
  20148.  
  20149. LPDISPATCH IDimAligned::PolarArray(short numitems, double fillangle, double angletween, LPDISPATCH Center, const VARIANT& refpoint)
  20150. {
  20151.     LPDISPATCH result;
  20152.     static BYTE parms[] =
  20153.         VTS_I2 VTS_R8 VTS_R8 VTS_DISPATCH VTS_VARIANT;
  20154.     InvokeHelper(0x30017, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  20155.         numitems, fillangle, angletween, Center, &refpoint);
  20156.     return result;
  20157. }
  20158.  
  20159. void IDimAligned::DisplayGrips()
  20160. {
  20161.     InvokeHelper(0x30018, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  20162. }
  20163.  
  20164. void IDimAligned::EraseGrips()
  20165. {
  20166.     InvokeHelper(0x30019, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  20167. }
  20168.  
  20169. LPDISPATCH IDimAligned::Snap2Endpoint(LPDISPATCH closeto)
  20170. {
  20171.     LPDISPATCH result;
  20172.     static BYTE parms[] =
  20173.         VTS_DISPATCH;
  20174.     InvokeHelper(0x20006, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  20175.         closeto);
  20176.     return result;
  20177. }
  20178.  
  20179. LPDISPATCH IDimAligned::Snap2Midpoint(LPDISPATCH closeto)
  20180. {
  20181.     LPDISPATCH result;
  20182.     static BYTE parms[] =
  20183.         VTS_DISPATCH;
  20184.     InvokeHelper(0x20007, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  20185.         closeto);
  20186.     return result;
  20187. }
  20188.  
  20189. LPDISPATCH IDimAligned::Snap2Center(LPDISPATCH closeto)
  20190. {
  20191.     LPDISPATCH result;
  20192.     static BYTE parms[] =
  20193.         VTS_DISPATCH;
  20194.     InvokeHelper(0x20008, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  20195.         closeto);
  20196.     return result;
  20197. }
  20198.  
  20199. LPDISPATCH IDimAligned::Snap2Nearest(LPDISPATCH closeto)
  20200. {
  20201.     LPDISPATCH result;
  20202.     static BYTE parms[] =
  20203.         VTS_DISPATCH;
  20204.     InvokeHelper(0x20009, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  20205.         closeto);
  20206.     return result;
  20207. }
  20208.  
  20209. LPDISPATCH IDimAligned::Snap2Point(LPDISPATCH closeto)
  20210. {
  20211.     LPDISPATCH result;
  20212.     static BYTE parms[] =
  20213.         VTS_DISPATCH;
  20214.     InvokeHelper(0x2000a, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  20215.         closeto);
  20216.     return result;
  20217. }
  20218.  
  20219. LPDISPATCH IDimAligned::Snap2Quadrant(LPDISPATCH closeto)
  20220. {
  20221.     LPDISPATCH result;
  20222.     static BYTE parms[] =
  20223.         VTS_DISPATCH;
  20224.     InvokeHelper(0x2000b, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  20225.         closeto);
  20226.     return result;
  20227. }
  20228.  
  20229. LPDISPATCH IDimAligned::Snap2Insertion(LPDISPATCH closeto)
  20230. {
  20231.     LPDISPATCH result;
  20232.     static BYTE parms[] =
  20233.         VTS_DISPATCH;
  20234.     InvokeHelper(0x2000c, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  20235.         closeto);
  20236.     return result;
  20237. }
  20238.  
  20239. LPDISPATCH IDimAligned::Snap2Perpendicular(LPDISPATCH closeto, LPDISPATCH prevpoint)
  20240. {
  20241.     LPDISPATCH result;
  20242.     static BYTE parms[] =
  20243.         VTS_DISPATCH VTS_DISPATCH;
  20244.     InvokeHelper(0x2000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  20245.         closeto, prevpoint);
  20246.     return result;
  20247. }
  20248.  
  20249. LPDISPATCH IDimAligned::Snap2Tangent(LPDISPATCH closeto, LPDISPATCH prevpoint)
  20250. {
  20251.     LPDISPATCH result;
  20252.     static BYTE parms[] =
  20253.         VTS_DISPATCH VTS_DISPATCH;
  20254.     InvokeHelper(0x2000e, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  20255.         closeto, prevpoint);
  20256.     return result;
  20257. }
  20258.  
  20259. LPDISPATCH IDimAligned::Intersection(LPDISPATCH Entity, const VARIANT& infinite1, const VARIANT& infinite2)
  20260. {
  20261.     LPDISPATCH result;
  20262.     static BYTE parms[] =
  20263.         VTS_DISPATCH VTS_VARIANT VTS_VARIANT;
  20264.     InvokeHelper(0x2000f, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  20265.         Entity, &infinite1, &infinite2);
  20266.     return result;
  20267. }
  20268.  
  20269. BOOL IDimAligned::ExtendToSet(LPDISPATCH point)
  20270. {
  20271.     BOOL result;
  20272.     static BYTE parms[] =
  20273.         VTS_DISPATCH;
  20274.     InvokeHelper(0x20010, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  20275.         point);
  20276.     return result;
  20277. }
  20278.  
  20279. BOOL IDimAligned::TrimToSet(LPDISPATCH point)
  20280. {
  20281.     BOOL result;
  20282.     static BYTE parms[] =
  20283.         VTS_DISPATCH;
  20284.     InvokeHelper(0x20011, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  20285.         point);
  20286.     return result;
  20287. }
  20288.  
  20289. BOOL IDimAligned::Break(LPDISPATCH point1, LPDISPATCH point2)
  20290. {
  20291.     BOOL result;
  20292.     static BYTE parms[] =
  20293.         VTS_DISPATCH VTS_DISPATCH;
  20294.     InvokeHelper(0x20012, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  20295.         point1, point2);
  20296.     return result;
  20297. }
  20298.  
  20299. void IDimAligned::Update()
  20300. {
  20301.     InvokeHelper(0x20013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  20302. }
  20303.  
  20304. void IDimAligned::UpdateNow()
  20305. {
  20306.     InvokeHelper(0x20014, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  20307. }
  20308.  
  20309. BOOL IDimAligned::Explode()
  20310. {
  20311.     BOOL result;
  20312.     InvokeHelper(0x10010, DISPATCH_METHOD, VT_BOOL, (void*)&result, NULL);
  20313.     return result;
  20314. }
  20315.  
  20316.  
  20317. /////////////////////////////////////////////////////////////////////////////
  20318. // IDimRotated properties
  20319.  
  20320. LPDISPATCH IDimRotated::GetApplication()
  20321. {
  20322.     LPDISPATCH result;
  20323.     GetProperty(0x40001, VT_DISPATCH, (void*)&result);
  20324.     return result;
  20325. }
  20326.  
  20327. LPDISPATCH IDimRotated::GetParent()
  20328. {
  20329.     LPDISPATCH result;
  20330.     GetProperty(0x40002, VT_DISPATCH, (void*)&result);
  20331.     return result;
  20332. }
  20333.  
  20334. LPDISPATCH IDimRotated::GetColor()
  20335. {
  20336.     LPDISPATCH result;
  20337.     GetProperty(0x30001, VT_DISPATCH, (void*)&result);
  20338.     return result;
  20339. }
  20340.  
  20341. void IDimRotated::SetColor(LPDISPATCH propVal)
  20342. {
  20343.     SetProperty(0x30001, VT_DISPATCH, propVal);
  20344. }
  20345.  
  20346. short IDimRotated::GetColorNumber()
  20347. {
  20348.     short result;
  20349.     GetProperty(0x30002, VT_I2, (void*)&result);
  20350.     return result;
  20351. }
  20352.  
  20353. void IDimRotated::SetColorNumber(short propVal)
  20354. {
  20355.     SetProperty(0x30002, VT_I2, propVal);
  20356. }
  20357.  
  20358. LPDISPATCH IDimRotated::GetLayer()
  20359. {
  20360.     LPDISPATCH result;
  20361.     GetProperty(0x30003, VT_DISPATCH, (void*)&result);
  20362.     return result;
  20363. }
  20364.  
  20365. void IDimRotated::SetLayer(LPDISPATCH propVal)
  20366. {
  20367.     SetProperty(0x30003, VT_DISPATCH, propVal);
  20368. }
  20369.  
  20370. LPDISPATCH IDimRotated::GetLinetype()
  20371. {
  20372.     LPDISPATCH result;
  20373.     GetProperty(0x30004, VT_DISPATCH, (void*)&result);
  20374.     return result;
  20375. }
  20376.  
  20377. void IDimRotated::SetLinetype(LPDISPATCH propVal)
  20378. {
  20379.     SetProperty(0x30004, VT_DISPATCH, propVal);
  20380. }
  20381.  
  20382. double IDimRotated::GetThickness()
  20383. {
  20384.     double result;
  20385.     GetProperty(0x30005, VT_R8, (void*)&result);
  20386.     return result;
  20387. }
  20388.  
  20389. void IDimRotated::SetThickness(double propVal)
  20390. {
  20391.     SetProperty(0x30005, VT_R8, propVal);
  20392. }
  20393.  
  20394. BOOL IDimRotated::GetPaperSpace()
  20395. {
  20396.     BOOL result;
  20397.     GetProperty(0x30006, VT_BOOL, (void*)&result);
  20398.     return result;
  20399. }
  20400.  
  20401. void IDimRotated::SetPaperSpace(BOOL propVal)
  20402. {
  20403.     SetProperty(0x30006, VT_BOOL, propVal);
  20404. }
  20405.  
  20406. LPDISPATCH IDimRotated::GetNormal()
  20407. {
  20408.     LPDISPATCH result;
  20409.     GetProperty(0x30007, VT_DISPATCH, (void*)&result);
  20410.     return result;
  20411. }
  20412.  
  20413. void IDimRotated::SetNormal(LPDISPATCH propVal)
  20414. {
  20415.     SetProperty(0x30007, VT_DISPATCH, propVal);
  20416. }
  20417.  
  20418. CString IDimRotated::GetName()
  20419. {
  20420.     CString result;
  20421.     GetProperty(0x20001, VT_BSTR, (void*)&result);
  20422.     return result;
  20423. }
  20424.  
  20425. short IDimRotated::GetType()
  20426. {
  20427.     short result;
  20428.     GetProperty(0x20002, VT_I2, (void*)&result);
  20429.     return result;
  20430. }
  20431.  
  20432. CString IDimRotated::GetHandle()
  20433. {
  20434.     CString result;
  20435.     GetProperty(0x20003, VT_BSTR, (void*)&result);
  20436.     return result;
  20437. }
  20438.  
  20439. BOOL IDimRotated::GetHasXData()
  20440. {
  20441.     BOOL result;
  20442.     GetProperty(0x20004, VT_BOOL, (void*)&result);
  20443.     return result;
  20444. }
  20445.  
  20446. LPDISPATCH IDimRotated::GetXData()
  20447. {
  20448.     LPDISPATCH result;
  20449.     GetProperty(0x20005, VT_DISPATCH, (void*)&result);
  20450.     return result;
  20451. }
  20452.  
  20453. BOOL IDimRotated::GetAutoDraw()
  20454. {
  20455.     BOOL result;
  20456.     GetProperty(0x20015, VT_BOOL, (void*)&result);
  20457.     return result;
  20458. }
  20459.  
  20460. void IDimRotated::SetAutoDraw(BOOL propVal)
  20461. {
  20462.     SetProperty(0x20015, VT_BOOL, propVal);
  20463. }
  20464.  
  20465. double IDimRotated::GetAngle()
  20466. {
  20467.     double result;
  20468.     GetProperty(0x10001, VT_R8, (void*)&result);
  20469.     return result;
  20470. }
  20471.  
  20472. void IDimRotated::SetAngle(double propVal)
  20473. {
  20474.     SetProperty(0x10001, VT_R8, propVal);
  20475. }
  20476.  
  20477. LPDISPATCH IDimRotated::GetDxf10()
  20478. {
  20479.     LPDISPATCH result;
  20480.     GetProperty(0x10002, VT_DISPATCH, (void*)&result);
  20481.     return result;
  20482. }
  20483.  
  20484. void IDimRotated::SetDxf10(LPDISPATCH propVal)
  20485. {
  20486.     SetProperty(0x10002, VT_DISPATCH, propVal);
  20487. }
  20488.  
  20489. LPDISPATCH IDimRotated::GetDxf11()
  20490. {
  20491.     LPDISPATCH result;
  20492.     GetProperty(0x10003, VT_DISPATCH, (void*)&result);
  20493.     return result;
  20494. }
  20495.  
  20496. void IDimRotated::SetDxf11(LPDISPATCH propVal)
  20497. {
  20498.     SetProperty(0x10003, VT_DISPATCH, propVal);
  20499. }
  20500.  
  20501. LPDISPATCH IDimRotated::GetDxf12()
  20502. {
  20503.     LPDISPATCH result;
  20504.     GetProperty(0x10004, VT_DISPATCH, (void*)&result);
  20505.     return result;
  20506. }
  20507.  
  20508. void IDimRotated::SetDxf12(LPDISPATCH propVal)
  20509. {
  20510.     SetProperty(0x10004, VT_DISPATCH, propVal);
  20511. }
  20512.  
  20513. LPDISPATCH IDimRotated::GetDxf13()
  20514. {
  20515.     LPDISPATCH result;
  20516.     GetProperty(0x10005, VT_DISPATCH, (void*)&result);
  20517.     return result;
  20518. }
  20519.  
  20520. void IDimRotated::SetDxf13(LPDISPATCH propVal)
  20521. {
  20522.     SetProperty(0x10005, VT_DISPATCH, propVal);
  20523. }
  20524.  
  20525. LPDISPATCH IDimRotated::GetDxf14()
  20526. {
  20527.     LPDISPATCH result;
  20528.     GetProperty(0x10006, VT_DISPATCH, (void*)&result);
  20529.     return result;
  20530. }
  20531.  
  20532. void IDimRotated::SetDxf14(LPDISPATCH propVal)
  20533. {
  20534.     SetProperty(0x10006, VT_DISPATCH, propVal);
  20535. }
  20536.  
  20537. LPDISPATCH IDimRotated::GetDxf15()
  20538. {
  20539.     LPDISPATCH result;
  20540.     GetProperty(0x10007, VT_DISPATCH, (void*)&result);
  20541.     return result;
  20542. }
  20543.  
  20544. void IDimRotated::SetDxf15(LPDISPATCH propVal)
  20545. {
  20546.     SetProperty(0x10007, VT_DISPATCH, propVal);
  20547. }
  20548.  
  20549. LPDISPATCH IDimRotated::GetDxf16()
  20550. {
  20551.     LPDISPATCH result;
  20552.     GetProperty(0x10008, VT_DISPATCH, (void*)&result);
  20553.     return result;
  20554. }
  20555.  
  20556. void IDimRotated::SetDxf16(LPDISPATCH propVal)
  20557. {
  20558.     SetProperty(0x10008, VT_DISPATCH, propVal);
  20559. }
  20560.  
  20561. double IDimRotated::GetHorizontalAngle()
  20562. {
  20563.     double result;
  20564.     GetProperty(0x10009, VT_R8, (void*)&result);
  20565.     return result;
  20566. }
  20567.  
  20568. void IDimRotated::SetHorizontalAngle(double propVal)
  20569. {
  20570.     SetProperty(0x10009, VT_R8, propVal);
  20571. }
  20572.  
  20573. double IDimRotated::GetLeaderLength()
  20574. {
  20575.     double result;
  20576.     GetProperty(0x1000a, VT_R8, (void*)&result);
  20577.     return result;
  20578. }
  20579.  
  20580. void IDimRotated::SetLeaderLength(double propVal)
  20581. {
  20582.     SetProperty(0x1000a, VT_R8, propVal);
  20583. }
  20584.  
  20585. double IDimRotated::GetObliqueAngle()
  20586. {
  20587.     double result;
  20588.     GetProperty(0x1000b, VT_R8, (void*)&result);
  20589.     return result;
  20590. }
  20591.  
  20592. void IDimRotated::SetObliqueAngle(double propVal)
  20593. {
  20594.     SetProperty(0x1000b, VT_R8, propVal);
  20595. }
  20596.  
  20597. LPDISPATCH IDimRotated::GetStyle()
  20598. {
  20599.     LPDISPATCH result;
  20600.     GetProperty(0x1000c, VT_DISPATCH, (void*)&result);
  20601.     return result;
  20602. }
  20603.  
  20604. void IDimRotated::SetStyle(LPDISPATCH propVal)
  20605. {
  20606.     SetProperty(0x1000c, VT_DISPATCH, propVal);
  20607. }
  20608.  
  20609. CString IDimRotated::GetString()
  20610. {
  20611.     CString result;
  20612.     GetProperty(0x1000d, VT_BSTR, (void*)&result);
  20613.     return result;
  20614. }
  20615.  
  20616. void IDimRotated::SetString(LPCTSTR propVal)
  20617. {
  20618.     SetProperty(0x1000d, VT_BSTR, propVal);
  20619. }
  20620.  
  20621. double IDimRotated::GetTextAngle()
  20622. {
  20623.     double result;
  20624.     GetProperty(0x1000e, VT_R8, (void*)&result);
  20625.     return result;
  20626. }
  20627.  
  20628. void IDimRotated::SetTextAngle(double propVal)
  20629. {
  20630.     SetProperty(0x1000e, VT_R8, propVal);
  20631. }
  20632.  
  20633. BOOL IDimRotated::GetTextHomePosition()
  20634. {
  20635.     BOOL result;
  20636.     GetProperty(0x1000f, VT_BOOL, (void*)&result);
  20637.     return result;
  20638. }
  20639.  
  20640. void IDimRotated::SetTextHomePosition(BOOL propVal)
  20641. {
  20642.     SetProperty(0x1000f, VT_BOOL, propVal);
  20643. }
  20644.  
  20645. CString IDimRotated::Get_Name()
  20646. {
  20647.     CString result;
  20648.     GetProperty(0x0, VT_BSTR, (void*)&result);
  20649.     return result;
  20650. }
  20651.  
  20652. LPDISPATCH IDimRotated::GetTextPosition()
  20653. {
  20654.     LPDISPATCH result;
  20655.     GetProperty(0x1, VT_DISPATCH, (void*)&result);
  20656.     return result;
  20657. }
  20658.  
  20659. void IDimRotated::SetTextPosition(LPDISPATCH propVal)
  20660. {
  20661.     SetProperty(0x1, VT_DISPATCH, propVal);
  20662. }
  20663.  
  20664. LPDISPATCH IDimRotated::GetTranslationVector()
  20665. {
  20666.     LPDISPATCH result;
  20667.     GetProperty(0x2, VT_DISPATCH, (void*)&result);
  20668.     return result;
  20669. }
  20670.  
  20671. void IDimRotated::SetTranslationVector(LPDISPATCH propVal)
  20672. {
  20673.     SetProperty(0x2, VT_DISPATCH, propVal);
  20674. }
  20675.  
  20676. LPDISPATCH IDimRotated::GetDimensionLine()
  20677. {
  20678.     LPDISPATCH result;
  20679.     GetProperty(0x3, VT_DISPATCH, (void*)&result);
  20680.     return result;
  20681. }
  20682.  
  20683. void IDimRotated::SetDimensionLine(LPDISPATCH propVal)
  20684. {
  20685.     SetProperty(0x3, VT_DISPATCH, propVal);
  20686. }
  20687.  
  20688. LPDISPATCH IDimRotated::GetFirstExtension()
  20689. {
  20690.     LPDISPATCH result;
  20691.     GetProperty(0x4, VT_DISPATCH, (void*)&result);
  20692.     return result;
  20693. }
  20694.  
  20695. void IDimRotated::SetFirstExtension(LPDISPATCH propVal)
  20696. {
  20697.     SetProperty(0x4, VT_DISPATCH, propVal);
  20698. }
  20699.  
  20700. LPDISPATCH IDimRotated::GetSecondExtension()
  20701. {
  20702.     LPDISPATCH result;
  20703.     GetProperty(0x5, VT_DISPATCH, (void*)&result);
  20704.     return result;
  20705. }
  20706.  
  20707. void IDimRotated::SetSecondExtension(LPDISPATCH propVal)
  20708. {
  20709.     SetProperty(0x5, VT_DISPATCH, propVal);
  20710. }
  20711.  
  20712. /////////////////////////////////////////////////////////////////////////////
  20713. // IDimRotated operations
  20714.  
  20715. void IDimRotated::Redraw()
  20716. {
  20717.     InvokeHelper(0x30008, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  20718. }
  20719.  
  20720. void IDimRotated::Regen()
  20721. {
  20722.     InvokeHelper(0x30009, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  20723. }
  20724.  
  20725. void IDimRotated::Erase()
  20726. {
  20727.     InvokeHelper(0x3000a, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  20728. }
  20729.  
  20730. void IDimRotated::Delete()
  20731. {
  20732.     InvokeHelper(0x3000b, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  20733. }
  20734.  
  20735. void IDimRotated::Move(LPDISPATCH offset)
  20736. {
  20737.     static BYTE parms[] =
  20738.         VTS_DISPATCH;
  20739.     InvokeHelper(0x3000c, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  20740.          offset);
  20741. }
  20742.  
  20743. LPDISPATCH IDimRotated::Copy(LPDISPATCH offset)
  20744. {
  20745.     LPDISPATCH result;
  20746.     static BYTE parms[] =
  20747.         VTS_DISPATCH;
  20748.     InvokeHelper(0x3000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  20749.         offset);
  20750.     return result;
  20751. }
  20752.  
  20753. void IDimRotated::scale(LPDISPATCH basepoint, LPDISPATCH scale)
  20754. {
  20755.     static BYTE parms[] =
  20756.         VTS_DISPATCH VTS_DISPATCH;
  20757.     InvokeHelper(0x3000e, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  20758.          basepoint, scale);
  20759. }
  20760.  
  20761. void IDimRotated::ScaleIt(LPDISPATCH basepoint, LPDISPATCH scale)
  20762. {
  20763.     static BYTE parms[] =
  20764.         VTS_DISPATCH VTS_DISPATCH;
  20765.     InvokeHelper(0x3000f, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  20766.          basepoint, scale);
  20767. }
  20768.  
  20769. void IDimRotated::Rotate(LPDISPATCH basepoint, double Angle)
  20770. {
  20771.     static BYTE parms[] =
  20772.         VTS_DISPATCH VTS_R8;
  20773.     InvokeHelper(0x30010, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  20774.          basepoint, Angle);
  20775. }
  20776.  
  20777. void IDimRotated::Mirror(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  20778. {
  20779.     static BYTE parms[] =
  20780.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  20781.     InvokeHelper(0x30011, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  20782.          point1, point2, &MirrorText);
  20783. }
  20784.  
  20785. LPDISPATCH IDimRotated::MirrorCopy(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  20786. {
  20787.     LPDISPATCH result;
  20788.     static BYTE parms[] =
  20789.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  20790.     InvokeHelper(0x30012, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  20791.         point1, point2, &MirrorText);
  20792.     return result;
  20793. }
  20794.  
  20795. void IDimRotated::Dialog()
  20796. {
  20797.     InvokeHelper(0x30013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  20798. }
  20799.  
  20800. LPDISPATCH IDimRotated::Offset(LPDISPATCH vec, const VARIANT& Distance)
  20801. {
  20802.     LPDISPATCH result;
  20803.     static BYTE parms[] =
  20804.         VTS_DISPATCH VTS_VARIANT;
  20805.     InvokeHelper(0x30014, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  20806.         vec, &Distance);
  20807.     return result;
  20808. }
  20809.  
  20810. LPDISPATCH IDimRotated::Array(short numrows, short numcols, double rowspacing, double colspacing, double Rotation)
  20811. {
  20812.     LPDISPATCH result;
  20813.     static BYTE parms[] =
  20814.         VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8;
  20815.     InvokeHelper(0x30015, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  20816.         numrows, numcols, rowspacing, colspacing, Rotation);
  20817.     return result;
  20818. }
  20819.  
  20820. LPDISPATCH IDimRotated::Array3D(short numrows, short numcols, short numlevels, double rowspacing, double colspacing, double levelspacing, double Rotation)
  20821. {
  20822.     LPDISPATCH result;
  20823.     static BYTE parms[] =
  20824.         VTS_I2 VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8 VTS_R8;
  20825.     InvokeHelper(0x30016, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  20826.         numrows, numcols, numlevels, rowspacing, colspacing, levelspacing, Rotation);
  20827.     return result;
  20828. }
  20829.  
  20830. LPDISPATCH IDimRotated::PolarArray(short numitems, double fillangle, double angletween, LPDISPATCH Center, const VARIANT& refpoint)
  20831. {
  20832.     LPDISPATCH result;
  20833.     static BYTE parms[] =
  20834.         VTS_I2 VTS_R8 VTS_R8 VTS_DISPATCH VTS_VARIANT;
  20835.     InvokeHelper(0x30017, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  20836.         numitems, fillangle, angletween, Center, &refpoint);
  20837.     return result;
  20838. }
  20839.  
  20840. void IDimRotated::DisplayGrips()
  20841. {
  20842.     InvokeHelper(0x30018, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  20843. }
  20844.  
  20845. void IDimRotated::EraseGrips()
  20846. {
  20847.     InvokeHelper(0x30019, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  20848. }
  20849.  
  20850. LPDISPATCH IDimRotated::Snap2Endpoint(LPDISPATCH closeto)
  20851. {
  20852.     LPDISPATCH result;
  20853.     static BYTE parms[] =
  20854.         VTS_DISPATCH;
  20855.     InvokeHelper(0x20006, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  20856.         closeto);
  20857.     return result;
  20858. }
  20859.  
  20860. LPDISPATCH IDimRotated::Snap2Midpoint(LPDISPATCH closeto)
  20861. {
  20862.     LPDISPATCH result;
  20863.     static BYTE parms[] =
  20864.         VTS_DISPATCH;
  20865.     InvokeHelper(0x20007, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  20866.         closeto);
  20867.     return result;
  20868. }
  20869.  
  20870. LPDISPATCH IDimRotated::Snap2Center(LPDISPATCH closeto)
  20871. {
  20872.     LPDISPATCH result;
  20873.     static BYTE parms[] =
  20874.         VTS_DISPATCH;
  20875.     InvokeHelper(0x20008, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  20876.         closeto);
  20877.     return result;
  20878. }
  20879.  
  20880. LPDISPATCH IDimRotated::Snap2Nearest(LPDISPATCH closeto)
  20881. {
  20882.     LPDISPATCH result;
  20883.     static BYTE parms[] =
  20884.         VTS_DISPATCH;
  20885.     InvokeHelper(0x20009, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  20886.         closeto);
  20887.     return result;
  20888. }
  20889.  
  20890. LPDISPATCH IDimRotated::Snap2Point(LPDISPATCH closeto)
  20891. {
  20892.     LPDISPATCH result;
  20893.     static BYTE parms[] =
  20894.         VTS_DISPATCH;
  20895.     InvokeHelper(0x2000a, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  20896.         closeto);
  20897.     return result;
  20898. }
  20899.  
  20900. LPDISPATCH IDimRotated::Snap2Quadrant(LPDISPATCH closeto)
  20901. {
  20902.     LPDISPATCH result;
  20903.     static BYTE parms[] =
  20904.         VTS_DISPATCH;
  20905.     InvokeHelper(0x2000b, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  20906.         closeto);
  20907.     return result;
  20908. }
  20909.  
  20910. LPDISPATCH IDimRotated::Snap2Insertion(LPDISPATCH closeto)
  20911. {
  20912.     LPDISPATCH result;
  20913.     static BYTE parms[] =
  20914.         VTS_DISPATCH;
  20915.     InvokeHelper(0x2000c, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  20916.         closeto);
  20917.     return result;
  20918. }
  20919.  
  20920. LPDISPATCH IDimRotated::Snap2Perpendicular(LPDISPATCH closeto, LPDISPATCH prevpoint)
  20921. {
  20922.     LPDISPATCH result;
  20923.     static BYTE parms[] =
  20924.         VTS_DISPATCH VTS_DISPATCH;
  20925.     InvokeHelper(0x2000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  20926.         closeto, prevpoint);
  20927.     return result;
  20928. }
  20929.  
  20930. LPDISPATCH IDimRotated::Snap2Tangent(LPDISPATCH closeto, LPDISPATCH prevpoint)
  20931. {
  20932.     LPDISPATCH result;
  20933.     static BYTE parms[] =
  20934.         VTS_DISPATCH VTS_DISPATCH;
  20935.     InvokeHelper(0x2000e, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  20936.         closeto, prevpoint);
  20937.     return result;
  20938. }
  20939.  
  20940. LPDISPATCH IDimRotated::Intersection(LPDISPATCH Entity, const VARIANT& infinite1, const VARIANT& infinite2)
  20941. {
  20942.     LPDISPATCH result;
  20943.     static BYTE parms[] =
  20944.         VTS_DISPATCH VTS_VARIANT VTS_VARIANT;
  20945.     InvokeHelper(0x2000f, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  20946.         Entity, &infinite1, &infinite2);
  20947.     return result;
  20948. }
  20949.  
  20950. BOOL IDimRotated::ExtendToSet(LPDISPATCH point)
  20951. {
  20952.     BOOL result;
  20953.     static BYTE parms[] =
  20954.         VTS_DISPATCH;
  20955.     InvokeHelper(0x20010, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  20956.         point);
  20957.     return result;
  20958. }
  20959.  
  20960. BOOL IDimRotated::TrimToSet(LPDISPATCH point)
  20961. {
  20962.     BOOL result;
  20963.     static BYTE parms[] =
  20964.         VTS_DISPATCH;
  20965.     InvokeHelper(0x20011, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  20966.         point);
  20967.     return result;
  20968. }
  20969.  
  20970. BOOL IDimRotated::Break(LPDISPATCH point1, LPDISPATCH point2)
  20971. {
  20972.     BOOL result;
  20973.     static BYTE parms[] =
  20974.         VTS_DISPATCH VTS_DISPATCH;
  20975.     InvokeHelper(0x20012, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  20976.         point1, point2);
  20977.     return result;
  20978. }
  20979.  
  20980. void IDimRotated::Update()
  20981. {
  20982.     InvokeHelper(0x20013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  20983. }
  20984.  
  20985. void IDimRotated::UpdateNow()
  20986. {
  20987.     InvokeHelper(0x20014, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  20988. }
  20989.  
  20990. BOOL IDimRotated::Explode()
  20991. {
  20992.     BOOL result;
  20993.     InvokeHelper(0x10010, DISPATCH_METHOD, VT_BOOL, (void*)&result, NULL);
  20994.     return result;
  20995. }
  20996.  
  20997.  
  20998. /////////////////////////////////////////////////////////////////////////////
  20999. // IViewport properties
  21000.  
  21001. LPDISPATCH IViewport::GetApplication()
  21002. {
  21003.     LPDISPATCH result;
  21004.     GetProperty(0x40001, VT_DISPATCH, (void*)&result);
  21005.     return result;
  21006. }
  21007.  
  21008. LPDISPATCH IViewport::GetParent()
  21009. {
  21010.     LPDISPATCH result;
  21011.     GetProperty(0x40002, VT_DISPATCH, (void*)&result);
  21012.     return result;
  21013. }
  21014.  
  21015. LPDISPATCH IViewport::GetColor()
  21016. {
  21017.     LPDISPATCH result;
  21018.     GetProperty(0x30001, VT_DISPATCH, (void*)&result);
  21019.     return result;
  21020. }
  21021.  
  21022. void IViewport::SetColor(LPDISPATCH propVal)
  21023. {
  21024.     SetProperty(0x30001, VT_DISPATCH, propVal);
  21025. }
  21026.  
  21027. short IViewport::GetColorNumber()
  21028. {
  21029.     short result;
  21030.     GetProperty(0x30002, VT_I2, (void*)&result);
  21031.     return result;
  21032. }
  21033.  
  21034. void IViewport::SetColorNumber(short propVal)
  21035. {
  21036.     SetProperty(0x30002, VT_I2, propVal);
  21037. }
  21038.  
  21039. LPDISPATCH IViewport::GetLayer()
  21040. {
  21041.     LPDISPATCH result;
  21042.     GetProperty(0x30003, VT_DISPATCH, (void*)&result);
  21043.     return result;
  21044. }
  21045.  
  21046. void IViewport::SetLayer(LPDISPATCH propVal)
  21047. {
  21048.     SetProperty(0x30003, VT_DISPATCH, propVal);
  21049. }
  21050.  
  21051. LPDISPATCH IViewport::GetLinetype()
  21052. {
  21053.     LPDISPATCH result;
  21054.     GetProperty(0x30004, VT_DISPATCH, (void*)&result);
  21055.     return result;
  21056. }
  21057.  
  21058. void IViewport::SetLinetype(LPDISPATCH propVal)
  21059. {
  21060.     SetProperty(0x30004, VT_DISPATCH, propVal);
  21061. }
  21062.  
  21063. double IViewport::GetThickness()
  21064. {
  21065.     double result;
  21066.     GetProperty(0x30005, VT_R8, (void*)&result);
  21067.     return result;
  21068. }
  21069.  
  21070. void IViewport::SetThickness(double propVal)
  21071. {
  21072.     SetProperty(0x30005, VT_R8, propVal);
  21073. }
  21074.  
  21075. BOOL IViewport::GetPaperSpace()
  21076. {
  21077.     BOOL result;
  21078.     GetProperty(0x30006, VT_BOOL, (void*)&result);
  21079.     return result;
  21080. }
  21081.  
  21082. void IViewport::SetPaperSpace(BOOL propVal)
  21083. {
  21084.     SetProperty(0x30006, VT_BOOL, propVal);
  21085. }
  21086.  
  21087. LPDISPATCH IViewport::GetNormal()
  21088. {
  21089.     LPDISPATCH result;
  21090.     GetProperty(0x30007, VT_DISPATCH, (void*)&result);
  21091.     return result;
  21092. }
  21093.  
  21094. void IViewport::SetNormal(LPDISPATCH propVal)
  21095. {
  21096.     SetProperty(0x30007, VT_DISPATCH, propVal);
  21097. }
  21098.  
  21099. CString IViewport::GetName()
  21100. {
  21101.     CString result;
  21102.     GetProperty(0x20001, VT_BSTR, (void*)&result);
  21103.     return result;
  21104. }
  21105.  
  21106. short IViewport::GetType()
  21107. {
  21108.     short result;
  21109.     GetProperty(0x20002, VT_I2, (void*)&result);
  21110.     return result;
  21111. }
  21112.  
  21113. CString IViewport::GetHandle()
  21114. {
  21115.     CString result;
  21116.     GetProperty(0x20003, VT_BSTR, (void*)&result);
  21117.     return result;
  21118. }
  21119.  
  21120. BOOL IViewport::GetHasXData()
  21121. {
  21122.     BOOL result;
  21123.     GetProperty(0x20004, VT_BOOL, (void*)&result);
  21124.     return result;
  21125. }
  21126.  
  21127. LPDISPATCH IViewport::GetXData()
  21128. {
  21129.     LPDISPATCH result;
  21130.     GetProperty(0x20005, VT_DISPATCH, (void*)&result);
  21131.     return result;
  21132. }
  21133.  
  21134. BOOL IViewport::GetAutoDraw()
  21135. {
  21136.     BOOL result;
  21137.     GetProperty(0x20015, VT_BOOL, (void*)&result);
  21138.     return result;
  21139. }
  21140.  
  21141. void IViewport::SetAutoDraw(BOOL propVal)
  21142. {
  21143.     SetProperty(0x20015, VT_BOOL, propVal);
  21144. }
  21145.  
  21146. CString IViewport::Get_Name()
  21147. {
  21148.     CString result;
  21149.     GetProperty(0x0, VT_BSTR, (void*)&result);
  21150.     return result;
  21151. }
  21152.  
  21153. LPDISPATCH IViewport::GetWhere()
  21154. {
  21155.     LPDISPATCH result;
  21156.     GetProperty(0x1, VT_DISPATCH, (void*)&result);
  21157.     return result;
  21158. }
  21159.  
  21160. void IViewport::SetWhere(LPDISPATCH propVal)
  21161. {
  21162.     SetProperty(0x1, VT_DISPATCH, propVal);
  21163. }
  21164.  
  21165. double IViewport::GetWidth()
  21166. {
  21167.     double result;
  21168.     GetProperty(0x2, VT_R8, (void*)&result);
  21169.     return result;
  21170. }
  21171.  
  21172. void IViewport::SetWidth(double propVal)
  21173. {
  21174.     SetProperty(0x2, VT_R8, propVal);
  21175. }
  21176.  
  21177. double IViewport::GetHeight()
  21178. {
  21179.     double result;
  21180.     GetProperty(0x3, VT_R8, (void*)&result);
  21181.     return result;
  21182. }
  21183.  
  21184. void IViewport::SetHeight(double propVal)
  21185. {
  21186.     SetProperty(0x3, VT_R8, propVal);
  21187. }
  21188.  
  21189. short IViewport::GetStatus()
  21190. {
  21191.     short result;
  21192.     GetProperty(0x4, VT_I2, (void*)&result);
  21193.     return result;
  21194. }
  21195.  
  21196. void IViewport::SetStatus(short propVal)
  21197. {
  21198.     SetProperty(0x4, VT_I2, propVal);
  21199. }
  21200.  
  21201. LPDISPATCH IViewport::GetCenter()
  21202. {
  21203.     LPDISPATCH result;
  21204.     GetProperty(0x5, VT_DISPATCH, (void*)&result);
  21205.     return result;
  21206. }
  21207.  
  21208. void IViewport::SetCenter(LPDISPATCH propVal)
  21209. {
  21210.     SetProperty(0x5, VT_DISPATCH, propVal);
  21211. }
  21212.  
  21213. /////////////////////////////////////////////////////////////////////////////
  21214. // IViewport operations
  21215.  
  21216. void IViewport::Redraw()
  21217. {
  21218.     InvokeHelper(0x30008, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  21219. }
  21220.  
  21221. void IViewport::Regen()
  21222. {
  21223.     InvokeHelper(0x30009, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  21224. }
  21225.  
  21226. void IViewport::Erase()
  21227. {
  21228.     InvokeHelper(0x3000a, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  21229. }
  21230.  
  21231. void IViewport::Delete()
  21232. {
  21233.     InvokeHelper(0x3000b, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  21234. }
  21235.  
  21236. void IViewport::Move(LPDISPATCH offset)
  21237. {
  21238.     static BYTE parms[] =
  21239.         VTS_DISPATCH;
  21240.     InvokeHelper(0x3000c, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  21241.          offset);
  21242. }
  21243.  
  21244. LPDISPATCH IViewport::Copy(LPDISPATCH offset)
  21245. {
  21246.     LPDISPATCH result;
  21247.     static BYTE parms[] =
  21248.         VTS_DISPATCH;
  21249.     InvokeHelper(0x3000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  21250.         offset);
  21251.     return result;
  21252. }
  21253.  
  21254. void IViewport::scale(LPDISPATCH basepoint, LPDISPATCH scale)
  21255. {
  21256.     static BYTE parms[] =
  21257.         VTS_DISPATCH VTS_DISPATCH;
  21258.     InvokeHelper(0x3000e, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  21259.          basepoint, scale);
  21260. }
  21261.  
  21262. void IViewport::ScaleIt(LPDISPATCH basepoint, LPDISPATCH scale)
  21263. {
  21264.     static BYTE parms[] =
  21265.         VTS_DISPATCH VTS_DISPATCH;
  21266.     InvokeHelper(0x3000f, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  21267.          basepoint, scale);
  21268. }
  21269.  
  21270. void IViewport::Rotate(LPDISPATCH basepoint, double Angle)
  21271. {
  21272.     static BYTE parms[] =
  21273.         VTS_DISPATCH VTS_R8;
  21274.     InvokeHelper(0x30010, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  21275.          basepoint, Angle);
  21276. }
  21277.  
  21278. void IViewport::Mirror(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  21279. {
  21280.     static BYTE parms[] =
  21281.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  21282.     InvokeHelper(0x30011, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
  21283.          point1, point2, &MirrorText);
  21284. }
  21285.  
  21286. LPDISPATCH IViewport::MirrorCopy(LPDISPATCH point1, LPDISPATCH point2, const VARIANT& MirrorText)
  21287. {
  21288.     LPDISPATCH result;
  21289.     static BYTE parms[] =
  21290.         VTS_DISPATCH VTS_DISPATCH VTS_VARIANT;
  21291.     InvokeHelper(0x30012, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  21292.         point1, point2, &MirrorText);
  21293.     return result;
  21294. }
  21295.  
  21296. void IViewport::Dialog()
  21297. {
  21298.     InvokeHelper(0x30013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  21299. }
  21300.  
  21301. LPDISPATCH IViewport::Offset(LPDISPATCH vec, const VARIANT& Distance)
  21302. {
  21303.     LPDISPATCH result;
  21304.     static BYTE parms[] =
  21305.         VTS_DISPATCH VTS_VARIANT;
  21306.     InvokeHelper(0x30014, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  21307.         vec, &Distance);
  21308.     return result;
  21309. }
  21310.  
  21311. LPDISPATCH IViewport::Array(short numrows, short numcols, double rowspacing, double colspacing, double Rotation)
  21312. {
  21313.     LPDISPATCH result;
  21314.     static BYTE parms[] =
  21315.         VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8;
  21316.     InvokeHelper(0x30015, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  21317.         numrows, numcols, rowspacing, colspacing, Rotation);
  21318.     return result;
  21319. }
  21320.  
  21321. LPDISPATCH IViewport::Array3D(short numrows, short numcols, short numlevels, double rowspacing, double colspacing, double levelspacing, double Rotation)
  21322. {
  21323.     LPDISPATCH result;
  21324.     static BYTE parms[] =
  21325.         VTS_I2 VTS_I2 VTS_I2 VTS_R8 VTS_R8 VTS_R8 VTS_R8;
  21326.     InvokeHelper(0x30016, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  21327.         numrows, numcols, numlevels, rowspacing, colspacing, levelspacing, Rotation);
  21328.     return result;
  21329. }
  21330.  
  21331. LPDISPATCH IViewport::PolarArray(short numitems, double fillangle, double angletween, LPDISPATCH Center, const VARIANT& refpoint)
  21332. {
  21333.     LPDISPATCH result;
  21334.     static BYTE parms[] =
  21335.         VTS_I2 VTS_R8 VTS_R8 VTS_DISPATCH VTS_VARIANT;
  21336.     InvokeHelper(0x30017, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  21337.         numitems, fillangle, angletween, Center, &refpoint);
  21338.     return result;
  21339. }
  21340.  
  21341. void IViewport::DisplayGrips()
  21342. {
  21343.     InvokeHelper(0x30018, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  21344. }
  21345.  
  21346. void IViewport::EraseGrips()
  21347. {
  21348.     InvokeHelper(0x30019, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  21349. }
  21350.  
  21351. LPDISPATCH IViewport::Snap2Endpoint(LPDISPATCH closeto)
  21352. {
  21353.     LPDISPATCH result;
  21354.     static BYTE parms[] =
  21355.         VTS_DISPATCH;
  21356.     InvokeHelper(0x20006, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  21357.         closeto);
  21358.     return result;
  21359. }
  21360.  
  21361. LPDISPATCH IViewport::Snap2Midpoint(LPDISPATCH closeto)
  21362. {
  21363.     LPDISPATCH result;
  21364.     static BYTE parms[] =
  21365.         VTS_DISPATCH;
  21366.     InvokeHelper(0x20007, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  21367.         closeto);
  21368.     return result;
  21369. }
  21370.  
  21371. LPDISPATCH IViewport::Snap2Center(LPDISPATCH closeto)
  21372. {
  21373.     LPDISPATCH result;
  21374.     static BYTE parms[] =
  21375.         VTS_DISPATCH;
  21376.     InvokeHelper(0x20008, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  21377.         closeto);
  21378.     return result;
  21379. }
  21380.  
  21381. LPDISPATCH IViewport::Snap2Nearest(LPDISPATCH closeto)
  21382. {
  21383.     LPDISPATCH result;
  21384.     static BYTE parms[] =
  21385.         VTS_DISPATCH;
  21386.     InvokeHelper(0x20009, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  21387.         closeto);
  21388.     return result;
  21389. }
  21390.  
  21391. LPDISPATCH IViewport::Snap2Point(LPDISPATCH closeto)
  21392. {
  21393.     LPDISPATCH result;
  21394.     static BYTE parms[] =
  21395.         VTS_DISPATCH;
  21396.     InvokeHelper(0x2000a, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  21397.         closeto);
  21398.     return result;
  21399. }
  21400.  
  21401. LPDISPATCH IViewport::Snap2Quadrant(LPDISPATCH closeto)
  21402. {
  21403.     LPDISPATCH result;
  21404.     static BYTE parms[] =
  21405.         VTS_DISPATCH;
  21406.     InvokeHelper(0x2000b, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  21407.         closeto);
  21408.     return result;
  21409. }
  21410.  
  21411. LPDISPATCH IViewport::Snap2Insertion(LPDISPATCH closeto)
  21412. {
  21413.     LPDISPATCH result;
  21414.     static BYTE parms[] =
  21415.         VTS_DISPATCH;
  21416.     InvokeHelper(0x2000c, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  21417.         closeto);
  21418.     return result;
  21419. }
  21420.  
  21421. LPDISPATCH IViewport::Snap2Perpendicular(LPDISPATCH closeto, LPDISPATCH prevpoint)
  21422. {
  21423.     LPDISPATCH result;
  21424.     static BYTE parms[] =
  21425.         VTS_DISPATCH VTS_DISPATCH;
  21426.     InvokeHelper(0x2000d, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  21427.         closeto, prevpoint);
  21428.     return result;
  21429. }
  21430.  
  21431. LPDISPATCH IViewport::Snap2Tangent(LPDISPATCH closeto, LPDISPATCH prevpoint)
  21432. {
  21433.     LPDISPATCH result;
  21434.     static BYTE parms[] =
  21435.         VTS_DISPATCH VTS_DISPATCH;
  21436.     InvokeHelper(0x2000e, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  21437.         closeto, prevpoint);
  21438.     return result;
  21439. }
  21440.  
  21441. LPDISPATCH IViewport::Intersection(LPDISPATCH Entity, const VARIANT& infinite1, const VARIANT& infinite2)
  21442. {
  21443.     LPDISPATCH result;
  21444.     static BYTE parms[] =
  21445.         VTS_DISPATCH VTS_VARIANT VTS_VARIANT;
  21446.     InvokeHelper(0x2000f, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  21447.         Entity, &infinite1, &infinite2);
  21448.     return result;
  21449. }
  21450.  
  21451. BOOL IViewport::ExtendToSet(LPDISPATCH point)
  21452. {
  21453.     BOOL result;
  21454.     static BYTE parms[] =
  21455.         VTS_DISPATCH;
  21456.     InvokeHelper(0x20010, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  21457.         point);
  21458.     return result;
  21459. }
  21460.  
  21461. BOOL IViewport::TrimToSet(LPDISPATCH point)
  21462. {
  21463.     BOOL result;
  21464.     static BYTE parms[] =
  21465.         VTS_DISPATCH;
  21466.     InvokeHelper(0x20011, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  21467.         point);
  21468.     return result;
  21469. }
  21470.  
  21471. BOOL IViewport::Break(LPDISPATCH point1, LPDISPATCH point2)
  21472. {
  21473.     BOOL result;
  21474.     static BYTE parms[] =
  21475.         VTS_DISPATCH VTS_DISPATCH;
  21476.     InvokeHelper(0x20012, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
  21477.         point1, point2);
  21478.     return result;
  21479. }
  21480.  
  21481. void IViewport::Update()
  21482. {
  21483.     InvokeHelper(0x20013, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  21484. }
  21485.  
  21486. void IViewport::UpdateNow()
  21487. {
  21488.     InvokeHelper(0x20014, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
  21489. }
  21490.