AcTc_i.h 80 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424
  1. //////////////////////////////////////////////////////////////////////////////
  2. //
  3. // Copyright 2015 Autodesk, Inc. All rights reserved.
  4. //
  5. // Use of this software is subject to the terms of the Autodesk license
  6. // agreement provided at the time of installation or download, or which
  7. // otherwise accompanies this software in either electronic or hard copy form.
  8. //
  9. //////////////////////////////////////////////////////////////////////////////
  10. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  11. /* File created by MIDL compiler version 8.00.0595 */
  12. /* at Thu Feb 05 19:35:18 2015
  13. */
  14. /* Compiler settings for ..\..\..\..\inc\arxsdk\AcTc.idl:
  15. Oicf, W1, Zp8, env=Win64 (32b run), target_arch=AMD64 8.00.0595
  16. protocol : dce , ms_ext, c_ext, robust
  17. error checks: allocation ref bounds_check enum stub_data
  18. VC __declspec() decoration level:
  19. __declspec(uuid()), __declspec(selectany), __declspec(novtable)
  20. DECLSPEC_UUID(), MIDL_INTERFACE()
  21. */
  22. /* @@MIDL_FILE_HEADING( ) */
  23. #pragma warning( disable: 4049 ) /* more than 64k source lines */
  24. /* verify that the <rpcndr.h> version is high enough to compile this file*/
  25. #ifndef __REQUIRED_RPCNDR_H_VERSION__
  26. #define __REQUIRED_RPCNDR_H_VERSION__ 475
  27. #endif
  28. #include "rpc.h"
  29. #include "rpcndr.h"
  30. #ifndef __RPCNDR_H_VERSION__
  31. #error this stub requires an updated version of <rpcndr.h>
  32. #endif // __RPCNDR_H_VERSION__
  33. #ifndef COM_NO_WINDOWS_H
  34. #include "windows.h"
  35. #include "ole2.h"
  36. #endif /*COM_NO_WINDOWS_H*/
  37. #ifndef __AcTc_i_h__
  38. #define __AcTc_i_h__
  39. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  40. #pragma once
  41. #endif
  42. /* Forward Declarations */
  43. #ifndef __IAcadToolProperties_FWD_DEFINED__
  44. #define __IAcadToolProperties_FWD_DEFINED__
  45. typedef interface IAcadToolProperties IAcadToolProperties;
  46. #endif /* __IAcadToolProperties_FWD_DEFINED__ */
  47. #ifndef __IAcadToolProperties2_FWD_DEFINED__
  48. #define __IAcadToolProperties2_FWD_DEFINED__
  49. typedef interface IAcadToolProperties2 IAcadToolProperties2;
  50. #endif /* __IAcadToolProperties2_FWD_DEFINED__ */
  51. #ifndef __IAcadToolProperties3_FWD_DEFINED__
  52. #define __IAcadToolProperties3_FWD_DEFINED__
  53. typedef interface IAcadToolProperties3 IAcadToolProperties3;
  54. #endif /* __IAcadToolProperties3_FWD_DEFINED__ */
  55. #ifndef __IAcadStockTool_FWD_DEFINED__
  56. #define __IAcadStockTool_FWD_DEFINED__
  57. typedef interface IAcadStockTool IAcadStockTool;
  58. #endif /* __IAcadStockTool_FWD_DEFINED__ */
  59. #ifndef __IAcadToolContextMenu_FWD_DEFINED__
  60. #define __IAcadToolContextMenu_FWD_DEFINED__
  61. typedef interface IAcadToolContextMenu IAcadToolContextMenu;
  62. #endif /* __IAcadToolContextMenu_FWD_DEFINED__ */
  63. #ifndef __IAcadTool_FWD_DEFINED__
  64. #define __IAcadTool_FWD_DEFINED__
  65. typedef interface IAcadTool IAcadTool;
  66. #endif /* __IAcadTool_FWD_DEFINED__ */
  67. #ifndef __IAcadTool2_FWD_DEFINED__
  68. #define __IAcadTool2_FWD_DEFINED__
  69. typedef interface IAcadTool2 IAcadTool2;
  70. #endif /* __IAcadTool2_FWD_DEFINED__ */
  71. #ifndef __IAcadToolFlyoutShape_FWD_DEFINED__
  72. #define __IAcadToolFlyoutShape_FWD_DEFINED__
  73. typedef interface IAcadToolFlyoutShape IAcadToolFlyoutShape;
  74. #endif /* __IAcadToolFlyoutShape_FWD_DEFINED__ */
  75. #ifndef __IAcadToolSort_FWD_DEFINED__
  76. #define __IAcadToolSort_FWD_DEFINED__
  77. typedef interface IAcadToolSort IAcadToolSort;
  78. #endif /* __IAcadToolSort_FWD_DEFINED__ */
  79. #ifndef __IAcadToolDropTarget_FWD_DEFINED__
  80. #define __IAcadToolDropTarget_FWD_DEFINED__
  81. typedef interface IAcadToolDropTarget IAcadToolDropTarget;
  82. #endif /* __IAcadToolDropTarget_FWD_DEFINED__ */
  83. #ifndef __IAcadToolDragSource_FWD_DEFINED__
  84. #define __IAcadToolDragSource_FWD_DEFINED__
  85. typedef interface IAcadToolDragSource IAcadToolDragSource;
  86. #endif /* __IAcadToolDragSource_FWD_DEFINED__ */
  87. #ifndef __IAcadToolCopyPaste_FWD_DEFINED__
  88. #define __IAcadToolCopyPaste_FWD_DEFINED__
  89. typedef interface IAcadToolCopyPaste IAcadToolCopyPaste;
  90. #endif /* __IAcadToolCopyPaste_FWD_DEFINED__ */
  91. #ifndef __IAcadToolImage_FWD_DEFINED__
  92. #define __IAcadToolImage_FWD_DEFINED__
  93. typedef interface IAcadToolImage IAcadToolImage;
  94. #endif /* __IAcadToolImage_FWD_DEFINED__ */
  95. #ifndef __AcadToolProperties_FWD_DEFINED__
  96. #define __AcadToolProperties_FWD_DEFINED__
  97. #ifdef __cplusplus
  98. typedef class AcadToolProperties AcadToolProperties;
  99. #else
  100. typedef struct AcadToolProperties AcadToolProperties;
  101. #endif /* __cplusplus */
  102. #endif /* __AcadToolProperties_FWD_DEFINED__ */
  103. #ifndef __AcadToolImage_FWD_DEFINED__
  104. #define __AcadToolImage_FWD_DEFINED__
  105. #ifdef __cplusplus
  106. typedef class AcadToolImage AcadToolImage;
  107. #else
  108. typedef struct AcadToolImage AcadToolImage;
  109. #endif /* __cplusplus */
  110. #endif /* __AcadToolImage_FWD_DEFINED__ */
  111. /* header files for imported files */
  112. #include "oaidl.h"
  113. #include "ocidl.h"
  114. #ifdef __cplusplus
  115. extern "C"{
  116. #endif
  117. /* interface __MIDL_itf_AcTc_0000_0000 */
  118. /* [local] */
  119. typedef /* [public] */
  120. enum __MIDL___MIDL_itf_AcTc_0000_0000_0001
  121. {
  122. kEditDefault = 0,
  123. kEditCustom = ( kEditDefault + 1 ) ,
  124. kEditNone = ( kEditCustom + 1 ) ,
  125. kEditMultiple = 0x4
  126. } ToolEditMode;
  127. typedef /* [public] */
  128. enum __MIDL___MIDL_itf_AcTc_0000_0000_0002
  129. {
  130. kContextNone = -1,
  131. kContextMenuPaletteTool = ( kContextNone + 1 ) ,
  132. kContextMenuEditorImage = ( kContextMenuPaletteTool + 1 ) ,
  133. kContextMenuPaletteBackground = ( kContextMenuEditorImage + 1 ) ,
  134. kContextMenuPaletteSetTab = ( kContextMenuPaletteBackground + 1 ) ,
  135. kContextMenuPaletteSetCaption = ( kContextMenuPaletteSetTab + 1 ) ,
  136. kContextMenuPaletteSetOptionButton = ( kContextMenuPaletteSetCaption + 1 )
  137. } ContextMenuFlag;
  138. typedef /* [public] */
  139. enum __MIDL___MIDL_itf_AcTc_0000_0000_0003
  140. {
  141. kContextMenuShow = 0,
  142. kContextMenuHide = ( kContextMenuShow + 1 ) ,
  143. kExecutionCanceled = ( kContextMenuHide + 1 ) ,
  144. kExecutionCancelRejected = ( kExecutionCanceled + 1 ) ,
  145. kContextMenuUpdatePalette = ( kExecutionCancelRejected + 1 )
  146. } ReturnFlag;
  147. typedef /* [public] */
  148. enum __MIDL___MIDL_itf_AcTc_0000_0000_0004
  149. {
  150. kLButtonClicked = 0,
  151. kDroppedInDrawing = ( kLButtonClicked + 1 )
  152. } ExecutionContext;
  153. extern RPC_IF_HANDLE __MIDL_itf_AcTc_0000_0000_v0_0_c_ifspec;
  154. extern RPC_IF_HANDLE __MIDL_itf_AcTc_0000_0000_v0_0_s_ifspec;
  155. #ifndef __IAcadToolProperties_INTERFACE_DEFINED__
  156. #define __IAcadToolProperties_INTERFACE_DEFINED__
  157. /* interface IAcadToolProperties */
  158. /* [unique][custom][helpstring][dual][uuid][object] */
  159. EXTERN_C const IID IID_IAcadToolProperties;
  160. #if defined(__cplusplus) && !defined(CINTERFACE)
  161. MIDL_INTERFACE("C7D10438-330C-461D-9DC0-C2D31F746D37")
  162. IAcadToolProperties : public IDispatch
  163. {
  164. public:
  165. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ID(
  166. /* [retval][out] */ GUID *pId) = 0;
  167. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name(
  168. /* [retval][out] */ BSTR *pVal) = 0;
  169. virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name(
  170. /* [in] */ BSTR newVal) = 0;
  171. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Description(
  172. /* [retval][out] */ BSTR *pVal) = 0;
  173. virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Description(
  174. /* [in] */ BSTR newVal) = 0;
  175. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ToolTipText(
  176. /* [retval][out] */ BSTR *pVal) = 0;
  177. virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ToolTipText(
  178. /* [in] */ BSTR newVal) = 0;
  179. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_HelpFile(
  180. /* [retval][out] */ BSTR *pVal) = 0;
  181. virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_HelpFile(
  182. /* [in] */ BSTR newVal) = 0;
  183. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_HelpCommand(
  184. /* [retval][out] */ BSTR *pVal) = 0;
  185. virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_HelpCommand(
  186. /* [in] */ BSTR newVal) = 0;
  187. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_HelpData(
  188. /* [retval][out] */ BSTR *pVal) = 0;
  189. virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_HelpData(
  190. /* [in] */ BSTR newVal) = 0;
  191. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_IsReadOnly(
  192. /* [retval][out] */ VARIANT_BOOL *pReadOnly) = 0;
  193. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ToolType(
  194. /* [retval][out] */ LONG *pToolType) = 0;
  195. virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ToolType(
  196. /* [in] */ LONG lToolType) = 0;
  197. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_IsFlyoutEnabled(
  198. /* [retval][out] */ VARIANT_BOOL *pEnabled) = 0;
  199. virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_IsFlyoutEnabled(
  200. /* [in] */ VARIANT_BOOL bUseFlyout) = 0;
  201. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ShapePackageId(
  202. /* [retval][out] */ GUID *pId) = 0;
  203. virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ShapePackageId(
  204. /* [in] */ GUID *pId) = 0;
  205. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CurrentShapeId(
  206. /* [retval][out] */ GUID *pId) = 0;
  207. virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_CurrentShapeId(
  208. /* [in] */ GUID *pId) = 0;
  209. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ActiveShapeIds(
  210. /* [retval][out] */ VARIANT *pShapes) = 0;
  211. virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ActiveShapeIds(
  212. /* [in] */ VARIANT *pShapes) = 0;
  213. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetImage(
  214. /* [in] */ long cx,
  215. /* [in] */ long cy,
  216. /* [out] */ IUnknown **pVal,
  217. /* [out] */ BSTR *sResourceName,
  218. /* [out] */ BSTR *sSourceFile) = 0;
  219. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetImage(
  220. /* [in] */ long cx,
  221. /* [in] */ long cy,
  222. /* [in] */ IUnknown *newVal,
  223. /* [in] */ BSTR sResourceName,
  224. /* [in] */ BSTR sSourceFile) = 0;
  225. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetCustomData(
  226. /* [retval][out] */ IUnknown **ppVal) = 0;
  227. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetCurrentShape(
  228. /* [out] */ IUnknown **ppTool) = 0;
  229. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetOverlayImage(
  230. /* [out] */ IUnknown **pVal,
  231. /* [out] */ BSTR *pResourceName,
  232. /* [out] */ BSTR *pSourceFile) = 0;
  233. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetOverlayImage(
  234. /* [in] */ IUnknown *newVal,
  235. /* [in] */ BSTR sResourceName,
  236. /* [in] */ BSTR sSourceFile) = 0;
  237. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetAcTcTool(
  238. /* [retval][out] */ DWORD_PTR *ppAcTcTool) = 0;
  239. };
  240. #else /* C style interface */
  241. typedef struct IAcadToolPropertiesVtbl
  242. {
  243. BEGIN_INTERFACE
  244. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  245. IAcadToolProperties * This,
  246. /* [in] */ REFIID riid,
  247. /* [annotation][iid_is][out] */
  248. _COM_Outptr_ void **ppvObject);
  249. ULONG ( STDMETHODCALLTYPE *AddRef )(
  250. IAcadToolProperties * This);
  251. ULONG ( STDMETHODCALLTYPE *Release )(
  252. IAcadToolProperties * This);
  253. HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
  254. IAcadToolProperties * This,
  255. /* [out] */ UINT *pctinfo);
  256. HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
  257. IAcadToolProperties * This,
  258. /* [in] */ UINT iTInfo,
  259. /* [in] */ LCID lcid,
  260. /* [out] */ ITypeInfo **ppTInfo);
  261. HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
  262. IAcadToolProperties * This,
  263. /* [in] */ REFIID riid,
  264. /* [size_is][in] */ LPOLESTR *rgszNames,
  265. /* [range][in] */ UINT cNames,
  266. /* [in] */ LCID lcid,
  267. /* [size_is][out] */ DISPID *rgDispId);
  268. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
  269. IAcadToolProperties * This,
  270. /* [annotation][in] */
  271. _In_ DISPID dispIdMember,
  272. /* [annotation][in] */
  273. _In_ REFIID riid,
  274. /* [annotation][in] */
  275. _In_ LCID lcid,
  276. /* [annotation][in] */
  277. _In_ WORD wFlags,
  278. /* [annotation][out][in] */
  279. _In_ DISPPARAMS *pDispParams,
  280. /* [annotation][out] */
  281. _Out_opt_ VARIANT *pVarResult,
  282. /* [annotation][out] */
  283. _Out_opt_ EXCEPINFO *pExcepInfo,
  284. /* [annotation][out] */
  285. _Out_opt_ UINT *puArgErr);
  286. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ID )(
  287. IAcadToolProperties * This,
  288. /* [retval][out] */ GUID *pId);
  289. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )(
  290. IAcadToolProperties * This,
  291. /* [retval][out] */ BSTR *pVal);
  292. /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Name )(
  293. IAcadToolProperties * This,
  294. /* [in] */ BSTR newVal);
  295. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Description )(
  296. IAcadToolProperties * This,
  297. /* [retval][out] */ BSTR *pVal);
  298. /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Description )(
  299. IAcadToolProperties * This,
  300. /* [in] */ BSTR newVal);
  301. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToolTipText )(
  302. IAcadToolProperties * This,
  303. /* [retval][out] */ BSTR *pVal);
  304. /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToolTipText )(
  305. IAcadToolProperties * This,
  306. /* [in] */ BSTR newVal);
  307. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HelpFile )(
  308. IAcadToolProperties * This,
  309. /* [retval][out] */ BSTR *pVal);
  310. /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_HelpFile )(
  311. IAcadToolProperties * This,
  312. /* [in] */ BSTR newVal);
  313. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HelpCommand )(
  314. IAcadToolProperties * This,
  315. /* [retval][out] */ BSTR *pVal);
  316. /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_HelpCommand )(
  317. IAcadToolProperties * This,
  318. /* [in] */ BSTR newVal);
  319. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HelpData )(
  320. IAcadToolProperties * This,
  321. /* [retval][out] */ BSTR *pVal);
  322. /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_HelpData )(
  323. IAcadToolProperties * This,
  324. /* [in] */ BSTR newVal);
  325. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IsReadOnly )(
  326. IAcadToolProperties * This,
  327. /* [retval][out] */ VARIANT_BOOL *pReadOnly);
  328. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ToolType )(
  329. IAcadToolProperties * This,
  330. /* [retval][out] */ LONG *pToolType);
  331. /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ToolType )(
  332. IAcadToolProperties * This,
  333. /* [in] */ LONG lToolType);
  334. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_IsFlyoutEnabled )(
  335. IAcadToolProperties * This,
  336. /* [retval][out] */ VARIANT_BOOL *pEnabled);
  337. /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_IsFlyoutEnabled )(
  338. IAcadToolProperties * This,
  339. /* [in] */ VARIANT_BOOL bUseFlyout);
  340. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ShapePackageId )(
  341. IAcadToolProperties * This,
  342. /* [retval][out] */ GUID *pId);
  343. /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ShapePackageId )(
  344. IAcadToolProperties * This,
  345. /* [in] */ GUID *pId);
  346. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_CurrentShapeId )(
  347. IAcadToolProperties * This,
  348. /* [retval][out] */ GUID *pId);
  349. /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_CurrentShapeId )(
  350. IAcadToolProperties * This,
  351. /* [in] */ GUID *pId);
  352. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ActiveShapeIds )(
  353. IAcadToolProperties * This,
  354. /* [retval][out] */ VARIANT *pShapes);
  355. /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ActiveShapeIds )(
  356. IAcadToolProperties * This,
  357. /* [in] */ VARIANT *pShapes);
  358. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetImage )(
  359. IAcadToolProperties * This,
  360. /* [in] */ long cx,
  361. /* [in] */ long cy,
  362. /* [out] */ IUnknown **pVal,
  363. /* [out] */ BSTR *sResourceName,
  364. /* [out] */ BSTR *sSourceFile);
  365. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetImage )(
  366. IAcadToolProperties * This,
  367. /* [in] */ long cx,
  368. /* [in] */ long cy,
  369. /* [in] */ IUnknown *newVal,
  370. /* [in] */ BSTR sResourceName,
  371. /* [in] */ BSTR sSourceFile);
  372. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetCustomData )(
  373. IAcadToolProperties * This,
  374. /* [retval][out] */ IUnknown **ppVal);
  375. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetCurrentShape )(
  376. IAcadToolProperties * This,
  377. /* [out] */ IUnknown **ppTool);
  378. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetOverlayImage )(
  379. IAcadToolProperties * This,
  380. /* [out] */ IUnknown **pVal,
  381. /* [out] */ BSTR *pResourceName,
  382. /* [out] */ BSTR *pSourceFile);
  383. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetOverlayImage )(
  384. IAcadToolProperties * This,
  385. /* [in] */ IUnknown *newVal,
  386. /* [in] */ BSTR sResourceName,
  387. /* [in] */ BSTR sSourceFile);
  388. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetAcTcTool )(
  389. IAcadToolProperties * This,
  390. /* [retval][out] */ DWORD_PTR *ppAcTcTool);
  391. END_INTERFACE
  392. } IAcadToolPropertiesVtbl;
  393. interface IAcadToolProperties
  394. {
  395. CONST_VTBL struct IAcadToolPropertiesVtbl *lpVtbl;
  396. };
  397. #ifdef COBJMACROS
  398. #define IAcadToolProperties_QueryInterface(This,riid,ppvObject) \
  399. ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
  400. #define IAcadToolProperties_AddRef(This) \
  401. ( (This)->lpVtbl -> AddRef(This) )
  402. #define IAcadToolProperties_Release(This) \
  403. ( (This)->lpVtbl -> Release(This) )
  404. #define IAcadToolProperties_GetTypeInfoCount(This,pctinfo) \
  405. ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) )
  406. #define IAcadToolProperties_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
  407. ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) )
  408. #define IAcadToolProperties_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
  409. ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) )
  410. #define IAcadToolProperties_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
  411. ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) )
  412. #define IAcadToolProperties_get_ID(This,pId) \
  413. ( (This)->lpVtbl -> get_ID(This,pId) )
  414. #define IAcadToolProperties_get_Name(This,pVal) \
  415. ( (This)->lpVtbl -> get_Name(This,pVal) )
  416. #define IAcadToolProperties_put_Name(This,newVal) \
  417. ( (This)->lpVtbl -> put_Name(This,newVal) )
  418. #define IAcadToolProperties_get_Description(This,pVal) \
  419. ( (This)->lpVtbl -> get_Description(This,pVal) )
  420. #define IAcadToolProperties_put_Description(This,newVal) \
  421. ( (This)->lpVtbl -> put_Description(This,newVal) )
  422. #define IAcadToolProperties_get_ToolTipText(This,pVal) \
  423. ( (This)->lpVtbl -> get_ToolTipText(This,pVal) )
  424. #define IAcadToolProperties_put_ToolTipText(This,newVal) \
  425. ( (This)->lpVtbl -> put_ToolTipText(This,newVal) )
  426. #define IAcadToolProperties_get_HelpFile(This,pVal) \
  427. ( (This)->lpVtbl -> get_HelpFile(This,pVal) )
  428. #define IAcadToolProperties_put_HelpFile(This,newVal) \
  429. ( (This)->lpVtbl -> put_HelpFile(This,newVal) )
  430. #define IAcadToolProperties_get_HelpCommand(This,pVal) \
  431. ( (This)->lpVtbl -> get_HelpCommand(This,pVal) )
  432. #define IAcadToolProperties_put_HelpCommand(This,newVal) \
  433. ( (This)->lpVtbl -> put_HelpCommand(This,newVal) )
  434. #define IAcadToolProperties_get_HelpData(This,pVal) \
  435. ( (This)->lpVtbl -> get_HelpData(This,pVal) )
  436. #define IAcadToolProperties_put_HelpData(This,newVal) \
  437. ( (This)->lpVtbl -> put_HelpData(This,newVal) )
  438. #define IAcadToolProperties_get_IsReadOnly(This,pReadOnly) \
  439. ( (This)->lpVtbl -> get_IsReadOnly(This,pReadOnly) )
  440. #define IAcadToolProperties_get_ToolType(This,pToolType) \
  441. ( (This)->lpVtbl -> get_ToolType(This,pToolType) )
  442. #define IAcadToolProperties_put_ToolType(This,lToolType) \
  443. ( (This)->lpVtbl -> put_ToolType(This,lToolType) )
  444. #define IAcadToolProperties_get_IsFlyoutEnabled(This,pEnabled) \
  445. ( (This)->lpVtbl -> get_IsFlyoutEnabled(This,pEnabled) )
  446. #define IAcadToolProperties_put_IsFlyoutEnabled(This,bUseFlyout) \
  447. ( (This)->lpVtbl -> put_IsFlyoutEnabled(This,bUseFlyout) )
  448. #define IAcadToolProperties_get_ShapePackageId(This,pId) \
  449. ( (This)->lpVtbl -> get_ShapePackageId(This,pId) )
  450. #define IAcadToolProperties_put_ShapePackageId(This,pId) \
  451. ( (This)->lpVtbl -> put_ShapePackageId(This,pId) )
  452. #define IAcadToolProperties_get_CurrentShapeId(This,pId) \
  453. ( (This)->lpVtbl -> get_CurrentShapeId(This,pId) )
  454. #define IAcadToolProperties_put_CurrentShapeId(This,pId) \
  455. ( (This)->lpVtbl -> put_CurrentShapeId(This,pId) )
  456. #define IAcadToolProperties_get_ActiveShapeIds(This,pShapes) \
  457. ( (This)->lpVtbl -> get_ActiveShapeIds(This,pShapes) )
  458. #define IAcadToolProperties_put_ActiveShapeIds(This,pShapes) \
  459. ( (This)->lpVtbl -> put_ActiveShapeIds(This,pShapes) )
  460. #define IAcadToolProperties_GetImage(This,cx,cy,pVal,sResourceName,sSourceFile) \
  461. ( (This)->lpVtbl -> GetImage(This,cx,cy,pVal,sResourceName,sSourceFile) )
  462. #define IAcadToolProperties_SetImage(This,cx,cy,newVal,sResourceName,sSourceFile) \
  463. ( (This)->lpVtbl -> SetImage(This,cx,cy,newVal,sResourceName,sSourceFile) )
  464. #define IAcadToolProperties_GetCustomData(This,ppVal) \
  465. ( (This)->lpVtbl -> GetCustomData(This,ppVal) )
  466. #define IAcadToolProperties_GetCurrentShape(This,ppTool) \
  467. ( (This)->lpVtbl -> GetCurrentShape(This,ppTool) )
  468. #define IAcadToolProperties_GetOverlayImage(This,pVal,pResourceName,pSourceFile) \
  469. ( (This)->lpVtbl -> GetOverlayImage(This,pVal,pResourceName,pSourceFile) )
  470. #define IAcadToolProperties_SetOverlayImage(This,newVal,sResourceName,sSourceFile) \
  471. ( (This)->lpVtbl -> SetOverlayImage(This,newVal,sResourceName,sSourceFile) )
  472. #define IAcadToolProperties_GetAcTcTool(This,ppAcTcTool) \
  473. ( (This)->lpVtbl -> GetAcTcTool(This,ppAcTcTool) )
  474. #endif /* COBJMACROS */
  475. #endif /* C style interface */
  476. #endif /* __IAcadToolProperties_INTERFACE_DEFINED__ */
  477. #ifndef __IAcadToolProperties2_INTERFACE_DEFINED__
  478. #define __IAcadToolProperties2_INTERFACE_DEFINED__
  479. /* interface IAcadToolProperties2 */
  480. /* [unique][custom][helpstring][dual][uuid][object] */
  481. EXTERN_C const IID IID_IAcadToolProperties2;
  482. #if defined(__cplusplus) && !defined(CINTERFACE)
  483. MIDL_INTERFACE("A0E6B0E3-09FB-4E3C-B134-5EDD05CBAB37")
  484. IAcadToolProperties2 : public IDispatch
  485. {
  486. public:
  487. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ItemOption(
  488. /* [retval][out] */ LONG *pItemOption) = 0;
  489. virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ItemOption(
  490. /* [in] */ LONG lItemOption) = 0;
  491. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ImageOption(
  492. /* [retval][out] */ LONG *pImageOption) = 0;
  493. virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ImageOption(
  494. /* [in] */ LONG lImageOption) = 0;
  495. };
  496. #else /* C style interface */
  497. typedef struct IAcadToolProperties2Vtbl
  498. {
  499. BEGIN_INTERFACE
  500. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  501. IAcadToolProperties2 * This,
  502. /* [in] */ REFIID riid,
  503. /* [annotation][iid_is][out] */
  504. _COM_Outptr_ void **ppvObject);
  505. ULONG ( STDMETHODCALLTYPE *AddRef )(
  506. IAcadToolProperties2 * This);
  507. ULONG ( STDMETHODCALLTYPE *Release )(
  508. IAcadToolProperties2 * This);
  509. HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
  510. IAcadToolProperties2 * This,
  511. /* [out] */ UINT *pctinfo);
  512. HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
  513. IAcadToolProperties2 * This,
  514. /* [in] */ UINT iTInfo,
  515. /* [in] */ LCID lcid,
  516. /* [out] */ ITypeInfo **ppTInfo);
  517. HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
  518. IAcadToolProperties2 * This,
  519. /* [in] */ REFIID riid,
  520. /* [size_is][in] */ LPOLESTR *rgszNames,
  521. /* [range][in] */ UINT cNames,
  522. /* [in] */ LCID lcid,
  523. /* [size_is][out] */ DISPID *rgDispId);
  524. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
  525. IAcadToolProperties2 * This,
  526. /* [annotation][in] */
  527. _In_ DISPID dispIdMember,
  528. /* [annotation][in] */
  529. _In_ REFIID riid,
  530. /* [annotation][in] */
  531. _In_ LCID lcid,
  532. /* [annotation][in] */
  533. _In_ WORD wFlags,
  534. /* [annotation][out][in] */
  535. _In_ DISPPARAMS *pDispParams,
  536. /* [annotation][out] */
  537. _Out_opt_ VARIANT *pVarResult,
  538. /* [annotation][out] */
  539. _Out_opt_ EXCEPINFO *pExcepInfo,
  540. /* [annotation][out] */
  541. _Out_opt_ UINT *puArgErr);
  542. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ItemOption )(
  543. IAcadToolProperties2 * This,
  544. /* [retval][out] */ LONG *pItemOption);
  545. /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ItemOption )(
  546. IAcadToolProperties2 * This,
  547. /* [in] */ LONG lItemOption);
  548. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ImageOption )(
  549. IAcadToolProperties2 * This,
  550. /* [retval][out] */ LONG *pImageOption);
  551. /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ImageOption )(
  552. IAcadToolProperties2 * This,
  553. /* [in] */ LONG lImageOption);
  554. END_INTERFACE
  555. } IAcadToolProperties2Vtbl;
  556. interface IAcadToolProperties2
  557. {
  558. CONST_VTBL struct IAcadToolProperties2Vtbl *lpVtbl;
  559. };
  560. #ifdef COBJMACROS
  561. #define IAcadToolProperties2_QueryInterface(This,riid,ppvObject) \
  562. ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
  563. #define IAcadToolProperties2_AddRef(This) \
  564. ( (This)->lpVtbl -> AddRef(This) )
  565. #define IAcadToolProperties2_Release(This) \
  566. ( (This)->lpVtbl -> Release(This) )
  567. #define IAcadToolProperties2_GetTypeInfoCount(This,pctinfo) \
  568. ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) )
  569. #define IAcadToolProperties2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
  570. ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) )
  571. #define IAcadToolProperties2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
  572. ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) )
  573. #define IAcadToolProperties2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
  574. ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) )
  575. #define IAcadToolProperties2_get_ItemOption(This,pItemOption) \
  576. ( (This)->lpVtbl -> get_ItemOption(This,pItemOption) )
  577. #define IAcadToolProperties2_put_ItemOption(This,lItemOption) \
  578. ( (This)->lpVtbl -> put_ItemOption(This,lItemOption) )
  579. #define IAcadToolProperties2_get_ImageOption(This,pImageOption) \
  580. ( (This)->lpVtbl -> get_ImageOption(This,pImageOption) )
  581. #define IAcadToolProperties2_put_ImageOption(This,lImageOption) \
  582. ( (This)->lpVtbl -> put_ImageOption(This,lImageOption) )
  583. #endif /* COBJMACROS */
  584. #endif /* C style interface */
  585. #endif /* __IAcadToolProperties2_INTERFACE_DEFINED__ */
  586. #ifndef __IAcadToolProperties3_INTERFACE_DEFINED__
  587. #define __IAcadToolProperties3_INTERFACE_DEFINED__
  588. /* interface IAcadToolProperties3 */
  589. /* [unique][custom][helpstring][dual][uuid][object] */
  590. EXTERN_C const IID IID_IAcadToolProperties3;
  591. #if defined(__cplusplus) && !defined(CINTERFACE)
  592. MIDL_INTERFACE("F1800037-CB71-47BB-8C06-C4F3C5336316")
  593. IAcadToolProperties3 : public IDispatch
  594. {
  595. public:
  596. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetDarkImage(
  597. /* [in] */ long cx,
  598. /* [in] */ long cy,
  599. /* [out] */ IUnknown **pVal,
  600. /* [out] */ BSTR *sResourceName,
  601. /* [out] */ BSTR *sSourceFile) = 0;
  602. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetDarkImage(
  603. /* [in] */ long cx,
  604. /* [in] */ long cy,
  605. /* [in] */ IUnknown *newVal,
  606. /* [in] */ BSTR sResourceName,
  607. /* [in] */ BSTR sSourceFile) = 0;
  608. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetDarkOverlayImage(
  609. /* [out] */ IUnknown **pVal,
  610. /* [out] */ BSTR *pResourceName,
  611. /* [out] */ BSTR *pSourceFile) = 0;
  612. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetDarkOverlayImage(
  613. /* [in] */ IUnknown *newVal,
  614. /* [in] */ BSTR sResourceName,
  615. /* [in] */ BSTR sSourceFile) = 0;
  616. };
  617. #else /* C style interface */
  618. typedef struct IAcadToolProperties3Vtbl
  619. {
  620. BEGIN_INTERFACE
  621. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  622. IAcadToolProperties3 * This,
  623. /* [in] */ REFIID riid,
  624. /* [annotation][iid_is][out] */
  625. _COM_Outptr_ void **ppvObject);
  626. ULONG ( STDMETHODCALLTYPE *AddRef )(
  627. IAcadToolProperties3 * This);
  628. ULONG ( STDMETHODCALLTYPE *Release )(
  629. IAcadToolProperties3 * This);
  630. HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
  631. IAcadToolProperties3 * This,
  632. /* [out] */ UINT *pctinfo);
  633. HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
  634. IAcadToolProperties3 * This,
  635. /* [in] */ UINT iTInfo,
  636. /* [in] */ LCID lcid,
  637. /* [out] */ ITypeInfo **ppTInfo);
  638. HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
  639. IAcadToolProperties3 * This,
  640. /* [in] */ REFIID riid,
  641. /* [size_is][in] */ LPOLESTR *rgszNames,
  642. /* [range][in] */ UINT cNames,
  643. /* [in] */ LCID lcid,
  644. /* [size_is][out] */ DISPID *rgDispId);
  645. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
  646. IAcadToolProperties3 * This,
  647. /* [annotation][in] */
  648. _In_ DISPID dispIdMember,
  649. /* [annotation][in] */
  650. _In_ REFIID riid,
  651. /* [annotation][in] */
  652. _In_ LCID lcid,
  653. /* [annotation][in] */
  654. _In_ WORD wFlags,
  655. /* [annotation][out][in] */
  656. _In_ DISPPARAMS *pDispParams,
  657. /* [annotation][out] */
  658. _Out_opt_ VARIANT *pVarResult,
  659. /* [annotation][out] */
  660. _Out_opt_ EXCEPINFO *pExcepInfo,
  661. /* [annotation][out] */
  662. _Out_opt_ UINT *puArgErr);
  663. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetDarkImage )(
  664. IAcadToolProperties3 * This,
  665. /* [in] */ long cx,
  666. /* [in] */ long cy,
  667. /* [out] */ IUnknown **pVal,
  668. /* [out] */ BSTR *sResourceName,
  669. /* [out] */ BSTR *sSourceFile);
  670. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetDarkImage )(
  671. IAcadToolProperties3 * This,
  672. /* [in] */ long cx,
  673. /* [in] */ long cy,
  674. /* [in] */ IUnknown *newVal,
  675. /* [in] */ BSTR sResourceName,
  676. /* [in] */ BSTR sSourceFile);
  677. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetDarkOverlayImage )(
  678. IAcadToolProperties3 * This,
  679. /* [out] */ IUnknown **pVal,
  680. /* [out] */ BSTR *pResourceName,
  681. /* [out] */ BSTR *pSourceFile);
  682. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetDarkOverlayImage )(
  683. IAcadToolProperties3 * This,
  684. /* [in] */ IUnknown *newVal,
  685. /* [in] */ BSTR sResourceName,
  686. /* [in] */ BSTR sSourceFile);
  687. END_INTERFACE
  688. } IAcadToolProperties3Vtbl;
  689. interface IAcadToolProperties3
  690. {
  691. CONST_VTBL struct IAcadToolProperties3Vtbl *lpVtbl;
  692. };
  693. #ifdef COBJMACROS
  694. #define IAcadToolProperties3_QueryInterface(This,riid,ppvObject) \
  695. ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
  696. #define IAcadToolProperties3_AddRef(This) \
  697. ( (This)->lpVtbl -> AddRef(This) )
  698. #define IAcadToolProperties3_Release(This) \
  699. ( (This)->lpVtbl -> Release(This) )
  700. #define IAcadToolProperties3_GetTypeInfoCount(This,pctinfo) \
  701. ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) )
  702. #define IAcadToolProperties3_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
  703. ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) )
  704. #define IAcadToolProperties3_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
  705. ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) )
  706. #define IAcadToolProperties3_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
  707. ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) )
  708. #define IAcadToolProperties3_GetDarkImage(This,cx,cy,pVal,sResourceName,sSourceFile) \
  709. ( (This)->lpVtbl -> GetDarkImage(This,cx,cy,pVal,sResourceName,sSourceFile) )
  710. #define IAcadToolProperties3_SetDarkImage(This,cx,cy,newVal,sResourceName,sSourceFile) \
  711. ( (This)->lpVtbl -> SetDarkImage(This,cx,cy,newVal,sResourceName,sSourceFile) )
  712. #define IAcadToolProperties3_GetDarkOverlayImage(This,pVal,pResourceName,pSourceFile) \
  713. ( (This)->lpVtbl -> GetDarkOverlayImage(This,pVal,pResourceName,pSourceFile) )
  714. #define IAcadToolProperties3_SetDarkOverlayImage(This,newVal,sResourceName,sSourceFile) \
  715. ( (This)->lpVtbl -> SetDarkOverlayImage(This,newVal,sResourceName,sSourceFile) )
  716. #endif /* COBJMACROS */
  717. #endif /* C style interface */
  718. #endif /* __IAcadToolProperties3_INTERFACE_DEFINED__ */
  719. #ifndef __IAcadStockTool_INTERFACE_DEFINED__
  720. #define __IAcadStockTool_INTERFACE_DEFINED__
  721. /* interface IAcadStockTool */
  722. /* [oleautomation][custom][local][unique][helpstring][uuid][object] */
  723. EXTERN_C const IID IID_IAcadStockTool;
  724. #if defined(__cplusplus) && !defined(CINTERFACE)
  725. MIDL_INTERFACE("B9A18560-C006-4F2D-8E22-FF55389DABEB")
  726. IAcadStockTool : public IUnknown
  727. {
  728. public:
  729. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE CreateTool(
  730. /* [retval][out] */ IUnknown **ppTool) = 0;
  731. };
  732. #else /* C style interface */
  733. typedef struct IAcadStockToolVtbl
  734. {
  735. BEGIN_INTERFACE
  736. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  737. IAcadStockTool * This,
  738. /* [in] */ REFIID riid,
  739. /* [annotation][iid_is][out] */
  740. _COM_Outptr_ void **ppvObject);
  741. ULONG ( STDMETHODCALLTYPE *AddRef )(
  742. IAcadStockTool * This);
  743. ULONG ( STDMETHODCALLTYPE *Release )(
  744. IAcadStockTool * This);
  745. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *CreateTool )(
  746. IAcadStockTool * This,
  747. /* [retval][out] */ IUnknown **ppTool);
  748. END_INTERFACE
  749. } IAcadStockToolVtbl;
  750. interface IAcadStockTool
  751. {
  752. CONST_VTBL struct IAcadStockToolVtbl *lpVtbl;
  753. };
  754. #ifdef COBJMACROS
  755. #define IAcadStockTool_QueryInterface(This,riid,ppvObject) \
  756. ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
  757. #define IAcadStockTool_AddRef(This) \
  758. ( (This)->lpVtbl -> AddRef(This) )
  759. #define IAcadStockTool_Release(This) \
  760. ( (This)->lpVtbl -> Release(This) )
  761. #define IAcadStockTool_CreateTool(This,ppTool) \
  762. ( (This)->lpVtbl -> CreateTool(This,ppTool) )
  763. #endif /* COBJMACROS */
  764. #endif /* C style interface */
  765. #endif /* __IAcadStockTool_INTERFACE_DEFINED__ */
  766. #ifndef __IAcadToolContextMenu_INTERFACE_DEFINED__
  767. #define __IAcadToolContextMenu_INTERFACE_DEFINED__
  768. /* interface IAcadToolContextMenu */
  769. /* [oleautomation][custom][local][unique][helpstring][uuid][object] */
  770. EXTERN_C const IID IID_IAcadToolContextMenu;
  771. #if defined(__cplusplus) && !defined(CINTERFACE)
  772. MIDL_INTERFACE("C717E8F3-14C7-4D64-B442-72876DE32510")
  773. IAcadToolContextMenu : public IUnknown
  774. {
  775. public:
  776. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Customize(
  777. /* [in] */ int nContextFlag,
  778. /* [in] */ DWORD_PTR hMenu,
  779. /* [in] */ UINT idCmdFirst,
  780. /* [in] */ UINT idCmdLast,
  781. /* [in] */ GUID *pPaletteId,
  782. /* [retval][out] */ DWORD *pFlag) = 0;
  783. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetMenuHelp(
  784. /* [in] */ UINT idCmd,
  785. /* [retval][out] */ BSTR *pbstrHelpText) = 0;
  786. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE InvokeMenuCommand(
  787. /* [in] */ UINT idCmd,
  788. /* [in] */ GUID *pPaletteId,
  789. /* [in] */ DWORD_PTR hWnd,
  790. /* [retval][out] */ DWORD *pFlag) = 0;
  791. };
  792. #else /* C style interface */
  793. typedef struct IAcadToolContextMenuVtbl
  794. {
  795. BEGIN_INTERFACE
  796. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  797. IAcadToolContextMenu * This,
  798. /* [in] */ REFIID riid,
  799. /* [annotation][iid_is][out] */
  800. _COM_Outptr_ void **ppvObject);
  801. ULONG ( STDMETHODCALLTYPE *AddRef )(
  802. IAcadToolContextMenu * This);
  803. ULONG ( STDMETHODCALLTYPE *Release )(
  804. IAcadToolContextMenu * This);
  805. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Customize )(
  806. IAcadToolContextMenu * This,
  807. /* [in] */ int nContextFlag,
  808. /* [in] */ DWORD_PTR hMenu,
  809. /* [in] */ UINT idCmdFirst,
  810. /* [in] */ UINT idCmdLast,
  811. /* [in] */ GUID *pPaletteId,
  812. /* [retval][out] */ DWORD *pFlag);
  813. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetMenuHelp )(
  814. IAcadToolContextMenu * This,
  815. /* [in] */ UINT idCmd,
  816. /* [retval][out] */ BSTR *pbstrHelpText);
  817. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *InvokeMenuCommand )(
  818. IAcadToolContextMenu * This,
  819. /* [in] */ UINT idCmd,
  820. /* [in] */ GUID *pPaletteId,
  821. /* [in] */ DWORD_PTR hWnd,
  822. /* [retval][out] */ DWORD *pFlag);
  823. END_INTERFACE
  824. } IAcadToolContextMenuVtbl;
  825. interface IAcadToolContextMenu
  826. {
  827. CONST_VTBL struct IAcadToolContextMenuVtbl *lpVtbl;
  828. };
  829. #ifdef COBJMACROS
  830. #define IAcadToolContextMenu_QueryInterface(This,riid,ppvObject) \
  831. ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
  832. #define IAcadToolContextMenu_AddRef(This) \
  833. ( (This)->lpVtbl -> AddRef(This) )
  834. #define IAcadToolContextMenu_Release(This) \
  835. ( (This)->lpVtbl -> Release(This) )
  836. #define IAcadToolContextMenu_Customize(This,nContextFlag,hMenu,idCmdFirst,idCmdLast,pPaletteId,pFlag) \
  837. ( (This)->lpVtbl -> Customize(This,nContextFlag,hMenu,idCmdFirst,idCmdLast,pPaletteId,pFlag) )
  838. #define IAcadToolContextMenu_GetMenuHelp(This,idCmd,pbstrHelpText) \
  839. ( (This)->lpVtbl -> GetMenuHelp(This,idCmd,pbstrHelpText) )
  840. #define IAcadToolContextMenu_InvokeMenuCommand(This,idCmd,pPaletteId,hWnd,pFlag) \
  841. ( (This)->lpVtbl -> InvokeMenuCommand(This,idCmd,pPaletteId,hWnd,pFlag) )
  842. #endif /* COBJMACROS */
  843. #endif /* C style interface */
  844. #endif /* __IAcadToolContextMenu_INTERFACE_DEFINED__ */
  845. #ifndef __IAcadTool_INTERFACE_DEFINED__
  846. #define __IAcadTool_INTERFACE_DEFINED__
  847. /* interface IAcadTool */
  848. /* [oleautomation][custom][local][unique][helpstring][uuid][object] */
  849. EXTERN_C const IID IID_IAcadTool;
  850. #if defined(__cplusplus) && !defined(CINTERFACE)
  851. MIDL_INTERFACE("4909ACC0-3574-4867-A120-543FB288E5F9")
  852. IAcadTool : public IUnknown
  853. {
  854. public:
  855. virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_EditMode(
  856. /* [retval][out] */ long *pVal) = 0;
  857. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetStockTool(
  858. /* [retval][out] */ IUnknown **ppToolClass) = 0;
  859. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetToolProperties(
  860. /* [in] */ IUnknown *pProp) = 0;
  861. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Load(
  862. /* [in] */ IUnknown *pXmlElement) = 0;
  863. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Save(
  864. /* [in] */ IUnknown *pXmlElement) = 0;
  865. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Execute(
  866. /* [in] */ LONG_PTR lFlag,
  867. /* [in] */ DWORD_PTR hWnd,
  868. /* [in] */ DWORD point,
  869. /* [in] */ DWORD dwKeyState) = 0;
  870. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetData(
  871. /* [in] */ VARIANT *pObjUnkArray,
  872. /* [in] */ VARIANT *pDynUnkArray) = 0;
  873. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE BeginEdit( void) = 0;
  874. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Edit(
  875. /* [in] */ IUnknown *pProp,
  876. /* [in] */ LONG_PTR hWndParent,
  877. /* [out] */ VARIANT_BOOL *pRet) = 0;
  878. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE EndEdit(
  879. /* [in] */ VARIANT_BOOL bEditCancelled) = 0;
  880. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE New( void) = 0;
  881. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetDropTarget(
  882. /* [retval][out] */ IUnknown **ppDropTarget) = 0;
  883. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetContextMenu(
  884. /* [in] */ INT_PTR nContextFlag,
  885. /* [in] */ DWORD_PTR hMenu,
  886. /* [in] */ UINT idCmdFirst,
  887. /* [in] */ UINT idCmdLast,
  888. /* [retval][out] */ DWORD_PTR *pFlag) = 0;
  889. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetCommandString(
  890. /* [in] */ UINT idCmd,
  891. /* [retval][out] */ BSTR *pbstrHelpText) = 0;
  892. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE InvokeCommand(
  893. /* [in] */ UINT idCmd,
  894. /* [in] */ DWORD_PTR hWnd) = 0;
  895. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetDragDropContextInfo(
  896. /* [in] */ IUnknown *pIUnknown,
  897. /* [out] */ BSTR *pbstrText,
  898. /* [out] */ DWORD *pFlag) = 0;
  899. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Dropped(
  900. /* [in] */ BSTR bstrUrl) = 0;
  901. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Refreshed(
  902. /* [in] */ BSTR bstrUrl) = 0;
  903. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetEditorWindow(
  904. /* [in] */ LONG_PTR hWndEditor,
  905. /* [in] */ IUnknown *pPropInspector) = 0;
  906. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ValidateEditChanges( void) = 0;
  907. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetToolProperties(
  908. /* [retval][out] */ IUnknown **pToolProp) = 0;
  909. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE BeginMultipleEdit(
  910. /* [in] */ VARIANT tools,
  911. /* [in] */ VARIANT stockToolIds) = 0;
  912. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE EndMultipleEdit(
  913. /* [in] */ VARIANT tools,
  914. /* [in] */ VARIANT stockToolIds,
  915. /* [in] */ VARIANT_BOOL bEditCancelled) = 0;
  916. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE MultipleEdit(
  917. /* [in] */ VARIANT tools,
  918. /* [in] */ VARIANT stockToolIds,
  919. /* [in] */ LONG_PTR hWndParent,
  920. /* [out] */ VARIANT_BOOL *pRet) = 0;
  921. };
  922. #else /* C style interface */
  923. typedef struct IAcadToolVtbl
  924. {
  925. BEGIN_INTERFACE
  926. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  927. IAcadTool * This,
  928. /* [in] */ REFIID riid,
  929. /* [annotation][iid_is][out] */
  930. _COM_Outptr_ void **ppvObject);
  931. ULONG ( STDMETHODCALLTYPE *AddRef )(
  932. IAcadTool * This);
  933. ULONG ( STDMETHODCALLTYPE *Release )(
  934. IAcadTool * This);
  935. /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_EditMode )(
  936. IAcadTool * This,
  937. /* [retval][out] */ long *pVal);
  938. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetStockTool )(
  939. IAcadTool * This,
  940. /* [retval][out] */ IUnknown **ppToolClass);
  941. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetToolProperties )(
  942. IAcadTool * This,
  943. /* [in] */ IUnknown *pProp);
  944. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Load )(
  945. IAcadTool * This,
  946. /* [in] */ IUnknown *pXmlElement);
  947. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Save )(
  948. IAcadTool * This,
  949. /* [in] */ IUnknown *pXmlElement);
  950. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Execute )(
  951. IAcadTool * This,
  952. /* [in] */ LONG_PTR lFlag,
  953. /* [in] */ DWORD_PTR hWnd,
  954. /* [in] */ DWORD point,
  955. /* [in] */ DWORD dwKeyState);
  956. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetData )(
  957. IAcadTool * This,
  958. /* [in] */ VARIANT *pObjUnkArray,
  959. /* [in] */ VARIANT *pDynUnkArray);
  960. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *BeginEdit )(
  961. IAcadTool * This);
  962. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Edit )(
  963. IAcadTool * This,
  964. /* [in] */ IUnknown *pProp,
  965. /* [in] */ LONG_PTR hWndParent,
  966. /* [out] */ VARIANT_BOOL *pRet);
  967. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *EndEdit )(
  968. IAcadTool * This,
  969. /* [in] */ VARIANT_BOOL bEditCancelled);
  970. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *New )(
  971. IAcadTool * This);
  972. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetDropTarget )(
  973. IAcadTool * This,
  974. /* [retval][out] */ IUnknown **ppDropTarget);
  975. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetContextMenu )(
  976. IAcadTool * This,
  977. /* [in] */ INT_PTR nContextFlag,
  978. /* [in] */ DWORD_PTR hMenu,
  979. /* [in] */ UINT idCmdFirst,
  980. /* [in] */ UINT idCmdLast,
  981. /* [retval][out] */ DWORD_PTR *pFlag);
  982. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetCommandString )(
  983. IAcadTool * This,
  984. /* [in] */ UINT idCmd,
  985. /* [retval][out] */ BSTR *pbstrHelpText);
  986. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *InvokeCommand )(
  987. IAcadTool * This,
  988. /* [in] */ UINT idCmd,
  989. /* [in] */ DWORD_PTR hWnd);
  990. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetDragDropContextInfo )(
  991. IAcadTool * This,
  992. /* [in] */ IUnknown *pIUnknown,
  993. /* [out] */ BSTR *pbstrText,
  994. /* [out] */ DWORD *pFlag);
  995. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Dropped )(
  996. IAcadTool * This,
  997. /* [in] */ BSTR bstrUrl);
  998. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Refreshed )(
  999. IAcadTool * This,
  1000. /* [in] */ BSTR bstrUrl);
  1001. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetEditorWindow )(
  1002. IAcadTool * This,
  1003. /* [in] */ LONG_PTR hWndEditor,
  1004. /* [in] */ IUnknown *pPropInspector);
  1005. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ValidateEditChanges )(
  1006. IAcadTool * This);
  1007. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetToolProperties )(
  1008. IAcadTool * This,
  1009. /* [retval][out] */ IUnknown **pToolProp);
  1010. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *BeginMultipleEdit )(
  1011. IAcadTool * This,
  1012. /* [in] */ VARIANT tools,
  1013. /* [in] */ VARIANT stockToolIds);
  1014. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *EndMultipleEdit )(
  1015. IAcadTool * This,
  1016. /* [in] */ VARIANT tools,
  1017. /* [in] */ VARIANT stockToolIds,
  1018. /* [in] */ VARIANT_BOOL bEditCancelled);
  1019. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *MultipleEdit )(
  1020. IAcadTool * This,
  1021. /* [in] */ VARIANT tools,
  1022. /* [in] */ VARIANT stockToolIds,
  1023. /* [in] */ LONG_PTR hWndParent,
  1024. /* [out] */ VARIANT_BOOL *pRet);
  1025. END_INTERFACE
  1026. } IAcadToolVtbl;
  1027. interface IAcadTool
  1028. {
  1029. CONST_VTBL struct IAcadToolVtbl *lpVtbl;
  1030. };
  1031. #ifdef COBJMACROS
  1032. #define IAcadTool_QueryInterface(This,riid,ppvObject) \
  1033. ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
  1034. #define IAcadTool_AddRef(This) \
  1035. ( (This)->lpVtbl -> AddRef(This) )
  1036. #define IAcadTool_Release(This) \
  1037. ( (This)->lpVtbl -> Release(This) )
  1038. #define IAcadTool_get_EditMode(This,pVal) \
  1039. ( (This)->lpVtbl -> get_EditMode(This,pVal) )
  1040. #define IAcadTool_GetStockTool(This,ppToolClass) \
  1041. ( (This)->lpVtbl -> GetStockTool(This,ppToolClass) )
  1042. #define IAcadTool_SetToolProperties(This,pProp) \
  1043. ( (This)->lpVtbl -> SetToolProperties(This,pProp) )
  1044. #define IAcadTool_Load(This,pXmlElement) \
  1045. ( (This)->lpVtbl -> Load(This,pXmlElement) )
  1046. #define IAcadTool_Save(This,pXmlElement) \
  1047. ( (This)->lpVtbl -> Save(This,pXmlElement) )
  1048. #define IAcadTool_Execute(This,lFlag,hWnd,point,dwKeyState) \
  1049. ( (This)->lpVtbl -> Execute(This,lFlag,hWnd,point,dwKeyState) )
  1050. #define IAcadTool_GetData(This,pObjUnkArray,pDynUnkArray) \
  1051. ( (This)->lpVtbl -> GetData(This,pObjUnkArray,pDynUnkArray) )
  1052. #define IAcadTool_BeginEdit(This) \
  1053. ( (This)->lpVtbl -> BeginEdit(This) )
  1054. #define IAcadTool_Edit(This,pProp,hWndParent,pRet) \
  1055. ( (This)->lpVtbl -> Edit(This,pProp,hWndParent,pRet) )
  1056. #define IAcadTool_EndEdit(This,bEditCancelled) \
  1057. ( (This)->lpVtbl -> EndEdit(This,bEditCancelled) )
  1058. #define IAcadTool_New(This) \
  1059. ( (This)->lpVtbl -> New(This) )
  1060. #define IAcadTool_GetDropTarget(This,ppDropTarget) \
  1061. ( (This)->lpVtbl -> GetDropTarget(This,ppDropTarget) )
  1062. #define IAcadTool_GetContextMenu(This,nContextFlag,hMenu,idCmdFirst,idCmdLast,pFlag) \
  1063. ( (This)->lpVtbl -> GetContextMenu(This,nContextFlag,hMenu,idCmdFirst,idCmdLast,pFlag) )
  1064. #define IAcadTool_GetCommandString(This,idCmd,pbstrHelpText) \
  1065. ( (This)->lpVtbl -> GetCommandString(This,idCmd,pbstrHelpText) )
  1066. #define IAcadTool_InvokeCommand(This,idCmd,hWnd) \
  1067. ( (This)->lpVtbl -> InvokeCommand(This,idCmd,hWnd) )
  1068. #define IAcadTool_GetDragDropContextInfo(This,pIUnknown,pbstrText,pFlag) \
  1069. ( (This)->lpVtbl -> GetDragDropContextInfo(This,pIUnknown,pbstrText,pFlag) )
  1070. #define IAcadTool_Dropped(This,bstrUrl) \
  1071. ( (This)->lpVtbl -> Dropped(This,bstrUrl) )
  1072. #define IAcadTool_Refreshed(This,bstrUrl) \
  1073. ( (This)->lpVtbl -> Refreshed(This,bstrUrl) )
  1074. #define IAcadTool_SetEditorWindow(This,hWndEditor,pPropInspector) \
  1075. ( (This)->lpVtbl -> SetEditorWindow(This,hWndEditor,pPropInspector) )
  1076. #define IAcadTool_ValidateEditChanges(This) \
  1077. ( (This)->lpVtbl -> ValidateEditChanges(This) )
  1078. #define IAcadTool_GetToolProperties(This,pToolProp) \
  1079. ( (This)->lpVtbl -> GetToolProperties(This,pToolProp) )
  1080. #define IAcadTool_BeginMultipleEdit(This,tools,stockToolIds) \
  1081. ( (This)->lpVtbl -> BeginMultipleEdit(This,tools,stockToolIds) )
  1082. #define IAcadTool_EndMultipleEdit(This,tools,stockToolIds,bEditCancelled) \
  1083. ( (This)->lpVtbl -> EndMultipleEdit(This,tools,stockToolIds,bEditCancelled) )
  1084. #define IAcadTool_MultipleEdit(This,tools,stockToolIds,hWndParent,pRet) \
  1085. ( (This)->lpVtbl -> MultipleEdit(This,tools,stockToolIds,hWndParent,pRet) )
  1086. #endif /* COBJMACROS */
  1087. #endif /* C style interface */
  1088. #endif /* __IAcadTool_INTERFACE_DEFINED__ */
  1089. #ifndef __IAcadTool2_INTERFACE_DEFINED__
  1090. #define __IAcadTool2_INTERFACE_DEFINED__
  1091. /* interface IAcadTool2 */
  1092. /* [oleautomation][custom][local][unique][helpstring][uuid][object] */
  1093. EXTERN_C const IID IID_IAcadTool2;
  1094. #if defined(__cplusplus) && !defined(CINTERFACE)
  1095. MIDL_INTERFACE("CB0E3669-222E-46AB-9DD0-9876E6D052AD")
  1096. IAcadTool2 : public IUnknown
  1097. {
  1098. public:
  1099. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE UpdateImage( void) = 0;
  1100. };
  1101. #else /* C style interface */
  1102. typedef struct IAcadTool2Vtbl
  1103. {
  1104. BEGIN_INTERFACE
  1105. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1106. IAcadTool2 * This,
  1107. /* [in] */ REFIID riid,
  1108. /* [annotation][iid_is][out] */
  1109. _COM_Outptr_ void **ppvObject);
  1110. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1111. IAcadTool2 * This);
  1112. ULONG ( STDMETHODCALLTYPE *Release )(
  1113. IAcadTool2 * This);
  1114. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *UpdateImage )(
  1115. IAcadTool2 * This);
  1116. END_INTERFACE
  1117. } IAcadTool2Vtbl;
  1118. interface IAcadTool2
  1119. {
  1120. CONST_VTBL struct IAcadTool2Vtbl *lpVtbl;
  1121. };
  1122. #ifdef COBJMACROS
  1123. #define IAcadTool2_QueryInterface(This,riid,ppvObject) \
  1124. ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
  1125. #define IAcadTool2_AddRef(This) \
  1126. ( (This)->lpVtbl -> AddRef(This) )
  1127. #define IAcadTool2_Release(This) \
  1128. ( (This)->lpVtbl -> Release(This) )
  1129. #define IAcadTool2_UpdateImage(This) \
  1130. ( (This)->lpVtbl -> UpdateImage(This) )
  1131. #endif /* COBJMACROS */
  1132. #endif /* C style interface */
  1133. #endif /* __IAcadTool2_INTERFACE_DEFINED__ */
  1134. #ifndef __IAcadToolFlyoutShape_INTERFACE_DEFINED__
  1135. #define __IAcadToolFlyoutShape_INTERFACE_DEFINED__
  1136. /* interface IAcadToolFlyoutShape */
  1137. /* [oleautomation][custom][local][unique][helpstring][uuid][object] */
  1138. EXTERN_C const IID IID_IAcadToolFlyoutShape;
  1139. #if defined(__cplusplus) && !defined(CINTERFACE)
  1140. MIDL_INTERFACE("2F1A2EE9-32C3-489A-A29E-08851FC927DA")
  1141. IAcadToolFlyoutShape : public IUnknown
  1142. {
  1143. public:
  1144. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetFlyoutTools(
  1145. /* [in] */ VARIANT *pFlyoutToolIds) = 0;
  1146. };
  1147. #else /* C style interface */
  1148. typedef struct IAcadToolFlyoutShapeVtbl
  1149. {
  1150. BEGIN_INTERFACE
  1151. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1152. IAcadToolFlyoutShape * This,
  1153. /* [in] */ REFIID riid,
  1154. /* [annotation][iid_is][out] */
  1155. _COM_Outptr_ void **ppvObject);
  1156. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1157. IAcadToolFlyoutShape * This);
  1158. ULONG ( STDMETHODCALLTYPE *Release )(
  1159. IAcadToolFlyoutShape * This);
  1160. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetFlyoutTools )(
  1161. IAcadToolFlyoutShape * This,
  1162. /* [in] */ VARIANT *pFlyoutToolIds);
  1163. END_INTERFACE
  1164. } IAcadToolFlyoutShapeVtbl;
  1165. interface IAcadToolFlyoutShape
  1166. {
  1167. CONST_VTBL struct IAcadToolFlyoutShapeVtbl *lpVtbl;
  1168. };
  1169. #ifdef COBJMACROS
  1170. #define IAcadToolFlyoutShape_QueryInterface(This,riid,ppvObject) \
  1171. ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
  1172. #define IAcadToolFlyoutShape_AddRef(This) \
  1173. ( (This)->lpVtbl -> AddRef(This) )
  1174. #define IAcadToolFlyoutShape_Release(This) \
  1175. ( (This)->lpVtbl -> Release(This) )
  1176. #define IAcadToolFlyoutShape_SetFlyoutTools(This,pFlyoutToolIds) \
  1177. ( (This)->lpVtbl -> SetFlyoutTools(This,pFlyoutToolIds) )
  1178. #endif /* COBJMACROS */
  1179. #endif /* C style interface */
  1180. #endif /* __IAcadToolFlyoutShape_INTERFACE_DEFINED__ */
  1181. #ifndef __IAcadToolSort_INTERFACE_DEFINED__
  1182. #define __IAcadToolSort_INTERFACE_DEFINED__
  1183. /* interface IAcadToolSort */
  1184. /* [oleautomation][custom][local][unique][helpstring][uuid][object] */
  1185. EXTERN_C const IID IID_IAcadToolSort;
  1186. #if defined(__cplusplus) && !defined(CINTERFACE)
  1187. MIDL_INTERFACE("AF6D759E-0EDD-46DF-9E0B-8DC01A206CF7")
  1188. IAcadToolSort : public IUnknown
  1189. {
  1190. public:
  1191. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Compare(
  1192. /* [in] */ IUnknown *pTool,
  1193. /* [in] */ long lSortOption,
  1194. /* [retval][out] */ long *pResult) = 0;
  1195. };
  1196. #else /* C style interface */
  1197. typedef struct IAcadToolSortVtbl
  1198. {
  1199. BEGIN_INTERFACE
  1200. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1201. IAcadToolSort * This,
  1202. /* [in] */ REFIID riid,
  1203. /* [annotation][iid_is][out] */
  1204. _COM_Outptr_ void **ppvObject);
  1205. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1206. IAcadToolSort * This);
  1207. ULONG ( STDMETHODCALLTYPE *Release )(
  1208. IAcadToolSort * This);
  1209. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Compare )(
  1210. IAcadToolSort * This,
  1211. /* [in] */ IUnknown *pTool,
  1212. /* [in] */ long lSortOption,
  1213. /* [retval][out] */ long *pResult);
  1214. END_INTERFACE
  1215. } IAcadToolSortVtbl;
  1216. interface IAcadToolSort
  1217. {
  1218. CONST_VTBL struct IAcadToolSortVtbl *lpVtbl;
  1219. };
  1220. #ifdef COBJMACROS
  1221. #define IAcadToolSort_QueryInterface(This,riid,ppvObject) \
  1222. ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
  1223. #define IAcadToolSort_AddRef(This) \
  1224. ( (This)->lpVtbl -> AddRef(This) )
  1225. #define IAcadToolSort_Release(This) \
  1226. ( (This)->lpVtbl -> Release(This) )
  1227. #define IAcadToolSort_Compare(This,pTool,lSortOption,pResult) \
  1228. ( (This)->lpVtbl -> Compare(This,pTool,lSortOption,pResult) )
  1229. #endif /* COBJMACROS */
  1230. #endif /* C style interface */
  1231. #endif /* __IAcadToolSort_INTERFACE_DEFINED__ */
  1232. #ifndef __IAcadToolDropTarget_INTERFACE_DEFINED__
  1233. #define __IAcadToolDropTarget_INTERFACE_DEFINED__
  1234. /* interface IAcadToolDropTarget */
  1235. /* [oleautomation][custom][local][unique][helpstring][uuid][object] */
  1236. EXTERN_C const IID IID_IAcadToolDropTarget;
  1237. #if defined(__cplusplus) && !defined(CINTERFACE)
  1238. MIDL_INTERFACE("76B9A439-B3BF-4346-8001-74EBFAD3113A")
  1239. IAcadToolDropTarget : public IUnknown
  1240. {
  1241. public:
  1242. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE DragEnter(
  1243. /* [in] */ IDataObject *pDataObj,
  1244. /* [in] */ DWORD grfKeyState,
  1245. /* [in] */ POINTL pt,
  1246. /* [out][in] */ DWORD *pdwEffect) = 0;
  1247. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE DragOver(
  1248. /* [in] */ DWORD grfKeyState,
  1249. /* [in] */ POINTL pt,
  1250. /* [out][in] */ DWORD *pdwEffect) = 0;
  1251. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE DragLeave( void) = 0;
  1252. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Drop(
  1253. /* [in] */ IDataObject *pDataObj,
  1254. /* [in] */ DWORD grfKeyState,
  1255. /* [in] */ POINTL pt,
  1256. /* [out][in] */ DWORD *pdwEffect,
  1257. /* [in] */ GUID *pCurrentStockToolId,
  1258. /* [in] */ GUID *pParentId,
  1259. /* [retval][out] */ VARIANT *pNewToolIds) = 0;
  1260. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetDragDropContextMenuItem(
  1261. /* [in] */ IUnknown *pIUnknown,
  1262. /* [out] */ BSTR *pbstrText,
  1263. /* [out] */ DWORD *pFlag) = 0;
  1264. };
  1265. #else /* C style interface */
  1266. typedef struct IAcadToolDropTargetVtbl
  1267. {
  1268. BEGIN_INTERFACE
  1269. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1270. IAcadToolDropTarget * This,
  1271. /* [in] */ REFIID riid,
  1272. /* [annotation][iid_is][out] */
  1273. _COM_Outptr_ void **ppvObject);
  1274. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1275. IAcadToolDropTarget * This);
  1276. ULONG ( STDMETHODCALLTYPE *Release )(
  1277. IAcadToolDropTarget * This);
  1278. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *DragEnter )(
  1279. IAcadToolDropTarget * This,
  1280. /* [in] */ IDataObject *pDataObj,
  1281. /* [in] */ DWORD grfKeyState,
  1282. /* [in] */ POINTL pt,
  1283. /* [out][in] */ DWORD *pdwEffect);
  1284. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *DragOver )(
  1285. IAcadToolDropTarget * This,
  1286. /* [in] */ DWORD grfKeyState,
  1287. /* [in] */ POINTL pt,
  1288. /* [out][in] */ DWORD *pdwEffect);
  1289. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *DragLeave )(
  1290. IAcadToolDropTarget * This);
  1291. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Drop )(
  1292. IAcadToolDropTarget * This,
  1293. /* [in] */ IDataObject *pDataObj,
  1294. /* [in] */ DWORD grfKeyState,
  1295. /* [in] */ POINTL pt,
  1296. /* [out][in] */ DWORD *pdwEffect,
  1297. /* [in] */ GUID *pCurrentStockToolId,
  1298. /* [in] */ GUID *pParentId,
  1299. /* [retval][out] */ VARIANT *pNewToolIds);
  1300. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetDragDropContextMenuItem )(
  1301. IAcadToolDropTarget * This,
  1302. /* [in] */ IUnknown *pIUnknown,
  1303. /* [out] */ BSTR *pbstrText,
  1304. /* [out] */ DWORD *pFlag);
  1305. END_INTERFACE
  1306. } IAcadToolDropTargetVtbl;
  1307. interface IAcadToolDropTarget
  1308. {
  1309. CONST_VTBL struct IAcadToolDropTargetVtbl *lpVtbl;
  1310. };
  1311. #ifdef COBJMACROS
  1312. #define IAcadToolDropTarget_QueryInterface(This,riid,ppvObject) \
  1313. ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
  1314. #define IAcadToolDropTarget_AddRef(This) \
  1315. ( (This)->lpVtbl -> AddRef(This) )
  1316. #define IAcadToolDropTarget_Release(This) \
  1317. ( (This)->lpVtbl -> Release(This) )
  1318. #define IAcadToolDropTarget_DragEnter(This,pDataObj,grfKeyState,pt,pdwEffect) \
  1319. ( (This)->lpVtbl -> DragEnter(This,pDataObj,grfKeyState,pt,pdwEffect) )
  1320. #define IAcadToolDropTarget_DragOver(This,grfKeyState,pt,pdwEffect) \
  1321. ( (This)->lpVtbl -> DragOver(This,grfKeyState,pt,pdwEffect) )
  1322. #define IAcadToolDropTarget_DragLeave(This) \
  1323. ( (This)->lpVtbl -> DragLeave(This) )
  1324. #define IAcadToolDropTarget_Drop(This,pDataObj,grfKeyState,pt,pdwEffect,pCurrentStockToolId,pParentId,pNewToolIds) \
  1325. ( (This)->lpVtbl -> Drop(This,pDataObj,grfKeyState,pt,pdwEffect,pCurrentStockToolId,pParentId,pNewToolIds) )
  1326. #define IAcadToolDropTarget_GetDragDropContextMenuItem(This,pIUnknown,pbstrText,pFlag) \
  1327. ( (This)->lpVtbl -> GetDragDropContextMenuItem(This,pIUnknown,pbstrText,pFlag) )
  1328. #endif /* COBJMACROS */
  1329. #endif /* C style interface */
  1330. #endif /* __IAcadToolDropTarget_INTERFACE_DEFINED__ */
  1331. #ifndef __IAcadToolDragSource_INTERFACE_DEFINED__
  1332. #define __IAcadToolDragSource_INTERFACE_DEFINED__
  1333. /* interface IAcadToolDragSource */
  1334. /* [oleautomation][custom][local][unique][helpstring][uuid][object] */
  1335. EXTERN_C const IID IID_IAcadToolDragSource;
  1336. #if defined(__cplusplus) && !defined(CINTERFACE)
  1337. MIDL_INTERFACE("C8C6D2B1-A430-4949-8F5A-FF3C3533CF00")
  1338. IAcadToolDragSource : public IUnknown
  1339. {
  1340. public:
  1341. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE BeginDrag(
  1342. /* [in] */ VARIANT *pToolIds,
  1343. /* [in] */ VARIANT *pAllStockToolIds,
  1344. /* [in] */ GUID *pCurrentStockToolId,
  1345. /* [in] */ IDataObject *pDataObject,
  1346. /* [in] */ DWORD dwKeyState) = 0;
  1347. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE DragInProgress(
  1348. /* [in] */ DWORD dwDropEffect) = 0;
  1349. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE EndDrag(
  1350. /* [in] */ DWORD dwDropEffect) = 0;
  1351. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE DragEnterDrawing(
  1352. /* [in] */ IDataObject *pDataObject,
  1353. /* [in] */ DWORD grfKeyState,
  1354. /* [in] */ POINTL pt,
  1355. /* [retval][out] */ DWORD *pDropEffect) = 0;
  1356. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE DragOverDrawing(
  1357. /* [in] */ DWORD grfKeyState,
  1358. /* [in] */ POINTL pt,
  1359. /* [retval][out] */ DWORD *pDropEffect) = 0;
  1360. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE DragLeaveDrawing( void) = 0;
  1361. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE DropInDrawing(
  1362. /* [in] */ IDataObject *pDataObject,
  1363. /* [in] */ DWORD grfKeyState,
  1364. /* [in] */ POINTL pt,
  1365. /* [retval][out] */ DWORD *pDropEffect) = 0;
  1366. };
  1367. #else /* C style interface */
  1368. typedef struct IAcadToolDragSourceVtbl
  1369. {
  1370. BEGIN_INTERFACE
  1371. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1372. IAcadToolDragSource * This,
  1373. /* [in] */ REFIID riid,
  1374. /* [annotation][iid_is][out] */
  1375. _COM_Outptr_ void **ppvObject);
  1376. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1377. IAcadToolDragSource * This);
  1378. ULONG ( STDMETHODCALLTYPE *Release )(
  1379. IAcadToolDragSource * This);
  1380. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *BeginDrag )(
  1381. IAcadToolDragSource * This,
  1382. /* [in] */ VARIANT *pToolIds,
  1383. /* [in] */ VARIANT *pAllStockToolIds,
  1384. /* [in] */ GUID *pCurrentStockToolId,
  1385. /* [in] */ IDataObject *pDataObject,
  1386. /* [in] */ DWORD dwKeyState);
  1387. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *DragInProgress )(
  1388. IAcadToolDragSource * This,
  1389. /* [in] */ DWORD dwDropEffect);
  1390. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *EndDrag )(
  1391. IAcadToolDragSource * This,
  1392. /* [in] */ DWORD dwDropEffect);
  1393. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *DragEnterDrawing )(
  1394. IAcadToolDragSource * This,
  1395. /* [in] */ IDataObject *pDataObject,
  1396. /* [in] */ DWORD grfKeyState,
  1397. /* [in] */ POINTL pt,
  1398. /* [retval][out] */ DWORD *pDropEffect);
  1399. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *DragOverDrawing )(
  1400. IAcadToolDragSource * This,
  1401. /* [in] */ DWORD grfKeyState,
  1402. /* [in] */ POINTL pt,
  1403. /* [retval][out] */ DWORD *pDropEffect);
  1404. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *DragLeaveDrawing )(
  1405. IAcadToolDragSource * This);
  1406. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *DropInDrawing )(
  1407. IAcadToolDragSource * This,
  1408. /* [in] */ IDataObject *pDataObject,
  1409. /* [in] */ DWORD grfKeyState,
  1410. /* [in] */ POINTL pt,
  1411. /* [retval][out] */ DWORD *pDropEffect);
  1412. END_INTERFACE
  1413. } IAcadToolDragSourceVtbl;
  1414. interface IAcadToolDragSource
  1415. {
  1416. CONST_VTBL struct IAcadToolDragSourceVtbl *lpVtbl;
  1417. };
  1418. #ifdef COBJMACROS
  1419. #define IAcadToolDragSource_QueryInterface(This,riid,ppvObject) \
  1420. ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
  1421. #define IAcadToolDragSource_AddRef(This) \
  1422. ( (This)->lpVtbl -> AddRef(This) )
  1423. #define IAcadToolDragSource_Release(This) \
  1424. ( (This)->lpVtbl -> Release(This) )
  1425. #define IAcadToolDragSource_BeginDrag(This,pToolIds,pAllStockToolIds,pCurrentStockToolId,pDataObject,dwKeyState) \
  1426. ( (This)->lpVtbl -> BeginDrag(This,pToolIds,pAllStockToolIds,pCurrentStockToolId,pDataObject,dwKeyState) )
  1427. #define IAcadToolDragSource_DragInProgress(This,dwDropEffect) \
  1428. ( (This)->lpVtbl -> DragInProgress(This,dwDropEffect) )
  1429. #define IAcadToolDragSource_EndDrag(This,dwDropEffect) \
  1430. ( (This)->lpVtbl -> EndDrag(This,dwDropEffect) )
  1431. #define IAcadToolDragSource_DragEnterDrawing(This,pDataObject,grfKeyState,pt,pDropEffect) \
  1432. ( (This)->lpVtbl -> DragEnterDrawing(This,pDataObject,grfKeyState,pt,pDropEffect) )
  1433. #define IAcadToolDragSource_DragOverDrawing(This,grfKeyState,pt,pDropEffect) \
  1434. ( (This)->lpVtbl -> DragOverDrawing(This,grfKeyState,pt,pDropEffect) )
  1435. #define IAcadToolDragSource_DragLeaveDrawing(This) \
  1436. ( (This)->lpVtbl -> DragLeaveDrawing(This) )
  1437. #define IAcadToolDragSource_DropInDrawing(This,pDataObject,grfKeyState,pt,pDropEffect) \
  1438. ( (This)->lpVtbl -> DropInDrawing(This,pDataObject,grfKeyState,pt,pDropEffect) )
  1439. #endif /* COBJMACROS */
  1440. #endif /* C style interface */
  1441. #endif /* __IAcadToolDragSource_INTERFACE_DEFINED__ */
  1442. #ifndef __IAcadToolCopyPaste_INTERFACE_DEFINED__
  1443. #define __IAcadToolCopyPaste_INTERFACE_DEFINED__
  1444. /* interface IAcadToolCopyPaste */
  1445. /* [oleautomation][custom][local][unique][helpstring][uuid][object] */
  1446. EXTERN_C const IID IID_IAcadToolCopyPaste;
  1447. #if defined(__cplusplus) && !defined(CINTERFACE)
  1448. MIDL_INTERFACE("5E32FE25-7769-4C8E-9447-DB921D1D249E")
  1449. IAcadToolCopyPaste : public IUnknown
  1450. {
  1451. public:
  1452. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Copy(
  1453. /* [in] */ VARIANT *pToolIds,
  1454. /* [in] */ VARIANT *pAllStockToolIds,
  1455. /* [in] */ GUID *pCurrentStockToolId,
  1456. /* [in] */ IDataObject *pDataObject) = 0;
  1457. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Paste(
  1458. /* [in] */ GUID *pCurrentStockToolId,
  1459. /* [in] */ GUID *pParentId,
  1460. /* [in] */ IDataObject *pDataObject,
  1461. /* [retval][out] */ VARIANT *pNewToolIds) = 0;
  1462. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE CanPaste(
  1463. /* [in] */ IDataObject *pDataObject,
  1464. /* [retval][out] */ VARIANT_BOOL *pCanPaste) = 0;
  1465. };
  1466. #else /* C style interface */
  1467. typedef struct IAcadToolCopyPasteVtbl
  1468. {
  1469. BEGIN_INTERFACE
  1470. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1471. IAcadToolCopyPaste * This,
  1472. /* [in] */ REFIID riid,
  1473. /* [annotation][iid_is][out] */
  1474. _COM_Outptr_ void **ppvObject);
  1475. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1476. IAcadToolCopyPaste * This);
  1477. ULONG ( STDMETHODCALLTYPE *Release )(
  1478. IAcadToolCopyPaste * This);
  1479. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Copy )(
  1480. IAcadToolCopyPaste * This,
  1481. /* [in] */ VARIANT *pToolIds,
  1482. /* [in] */ VARIANT *pAllStockToolIds,
  1483. /* [in] */ GUID *pCurrentStockToolId,
  1484. /* [in] */ IDataObject *pDataObject);
  1485. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Paste )(
  1486. IAcadToolCopyPaste * This,
  1487. /* [in] */ GUID *pCurrentStockToolId,
  1488. /* [in] */ GUID *pParentId,
  1489. /* [in] */ IDataObject *pDataObject,
  1490. /* [retval][out] */ VARIANT *pNewToolIds);
  1491. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *CanPaste )(
  1492. IAcadToolCopyPaste * This,
  1493. /* [in] */ IDataObject *pDataObject,
  1494. /* [retval][out] */ VARIANT_BOOL *pCanPaste);
  1495. END_INTERFACE
  1496. } IAcadToolCopyPasteVtbl;
  1497. interface IAcadToolCopyPaste
  1498. {
  1499. CONST_VTBL struct IAcadToolCopyPasteVtbl *lpVtbl;
  1500. };
  1501. #ifdef COBJMACROS
  1502. #define IAcadToolCopyPaste_QueryInterface(This,riid,ppvObject) \
  1503. ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
  1504. #define IAcadToolCopyPaste_AddRef(This) \
  1505. ( (This)->lpVtbl -> AddRef(This) )
  1506. #define IAcadToolCopyPaste_Release(This) \
  1507. ( (This)->lpVtbl -> Release(This) )
  1508. #define IAcadToolCopyPaste_Copy(This,pToolIds,pAllStockToolIds,pCurrentStockToolId,pDataObject) \
  1509. ( (This)->lpVtbl -> Copy(This,pToolIds,pAllStockToolIds,pCurrentStockToolId,pDataObject) )
  1510. #define IAcadToolCopyPaste_Paste(This,pCurrentStockToolId,pParentId,pDataObject,pNewToolIds) \
  1511. ( (This)->lpVtbl -> Paste(This,pCurrentStockToolId,pParentId,pDataObject,pNewToolIds) )
  1512. #define IAcadToolCopyPaste_CanPaste(This,pDataObject,pCanPaste) \
  1513. ( (This)->lpVtbl -> CanPaste(This,pDataObject,pCanPaste) )
  1514. #endif /* COBJMACROS */
  1515. #endif /* C style interface */
  1516. #endif /* __IAcadToolCopyPaste_INTERFACE_DEFINED__ */
  1517. #ifndef __IAcadToolImage_INTERFACE_DEFINED__
  1518. #define __IAcadToolImage_INTERFACE_DEFINED__
  1519. /* interface IAcadToolImage */
  1520. /* [local][custom][unique][helpstring][uuid][object] */
  1521. EXTERN_C const IID IID_IAcadToolImage;
  1522. #if defined(__cplusplus) && !defined(CINTERFACE)
  1523. MIDL_INTERFACE("74009B5D-217A-44B6-8271-3A439851EAB5")
  1524. IAcadToolImage : public IUnknown
  1525. {
  1526. public:
  1527. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Load(
  1528. /* [in] */ BSTR bsFileName) = 0;
  1529. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Save(
  1530. /* [in] */ BSTR bsFileName) = 0;
  1531. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Render(
  1532. /* [in] */ HDC hdc,
  1533. /* [in] */ long x,
  1534. /* [in] */ long y,
  1535. /* [in] */ long cx,
  1536. /* [in] */ long cy,
  1537. /* [in] */ long nStyle,
  1538. /* [in] */ VARIANT_BOOL bTransparentBitmap) = 0;
  1539. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetSize(
  1540. /* [out] */ long *pWidth,
  1541. /* [out] */ long *pHeight) = 0;
  1542. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetType(
  1543. /* [out] */ short *pType) = 0;
  1544. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IsImageLoaded(
  1545. /* [out] */ BOOL *pVal) = 0;
  1546. };
  1547. #else /* C style interface */
  1548. typedef struct IAcadToolImageVtbl
  1549. {
  1550. BEGIN_INTERFACE
  1551. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1552. IAcadToolImage * This,
  1553. /* [in] */ REFIID riid,
  1554. /* [annotation][iid_is][out] */
  1555. _COM_Outptr_ void **ppvObject);
  1556. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1557. IAcadToolImage * This);
  1558. ULONG ( STDMETHODCALLTYPE *Release )(
  1559. IAcadToolImage * This);
  1560. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Load )(
  1561. IAcadToolImage * This,
  1562. /* [in] */ BSTR bsFileName);
  1563. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Save )(
  1564. IAcadToolImage * This,
  1565. /* [in] */ BSTR bsFileName);
  1566. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Render )(
  1567. IAcadToolImage * This,
  1568. /* [in] */ HDC hdc,
  1569. /* [in] */ long x,
  1570. /* [in] */ long y,
  1571. /* [in] */ long cx,
  1572. /* [in] */ long cy,
  1573. /* [in] */ long nStyle,
  1574. /* [in] */ VARIANT_BOOL bTransparentBitmap);
  1575. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetSize )(
  1576. IAcadToolImage * This,
  1577. /* [out] */ long *pWidth,
  1578. /* [out] */ long *pHeight);
  1579. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetType )(
  1580. IAcadToolImage * This,
  1581. /* [out] */ short *pType);
  1582. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *IsImageLoaded )(
  1583. IAcadToolImage * This,
  1584. /* [out] */ BOOL *pVal);
  1585. END_INTERFACE
  1586. } IAcadToolImageVtbl;
  1587. interface IAcadToolImage
  1588. {
  1589. CONST_VTBL struct IAcadToolImageVtbl *lpVtbl;
  1590. };
  1591. #ifdef COBJMACROS
  1592. #define IAcadToolImage_QueryInterface(This,riid,ppvObject) \
  1593. ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
  1594. #define IAcadToolImage_AddRef(This) \
  1595. ( (This)->lpVtbl -> AddRef(This) )
  1596. #define IAcadToolImage_Release(This) \
  1597. ( (This)->lpVtbl -> Release(This) )
  1598. #define IAcadToolImage_Load(This,bsFileName) \
  1599. ( (This)->lpVtbl -> Load(This,bsFileName) )
  1600. #define IAcadToolImage_Save(This,bsFileName) \
  1601. ( (This)->lpVtbl -> Save(This,bsFileName) )
  1602. #define IAcadToolImage_Render(This,hdc,x,y,cx,cy,nStyle,bTransparentBitmap) \
  1603. ( (This)->lpVtbl -> Render(This,hdc,x,y,cx,cy,nStyle,bTransparentBitmap) )
  1604. #define IAcadToolImage_GetSize(This,pWidth,pHeight) \
  1605. ( (This)->lpVtbl -> GetSize(This,pWidth,pHeight) )
  1606. #define IAcadToolImage_GetType(This,pType) \
  1607. ( (This)->lpVtbl -> GetType(This,pType) )
  1608. #define IAcadToolImage_IsImageLoaded(This,pVal) \
  1609. ( (This)->lpVtbl -> IsImageLoaded(This,pVal) )
  1610. #endif /* COBJMACROS */
  1611. #endif /* C style interface */
  1612. #endif /* __IAcadToolImage_INTERFACE_DEFINED__ */
  1613. #ifndef __AcTcLib_LIBRARY_DEFINED__
  1614. #define __AcTcLib_LIBRARY_DEFINED__
  1615. /* library AcTcLib */
  1616. /* [helpstring][custom][version][uuid] */
  1617. EXTERN_C const IID LIBID_AcTcLib;
  1618. EXTERN_C const CLSID CLSID_AcadToolProperties;
  1619. #ifdef __cplusplus
  1620. class DECLSPEC_UUID("8C7C7AB1-0466-4FEB-B15A-5DF69318A043")
  1621. AcadToolProperties;
  1622. #endif
  1623. EXTERN_C const CLSID CLSID_AcadToolImage;
  1624. #ifdef __cplusplus
  1625. class DECLSPEC_UUID("79DC18B6-B07B-4559-BFB9-3DD88D9E8A5A")
  1626. AcadToolImage;
  1627. #endif
  1628. #endif /* __AcTcLib_LIBRARY_DEFINED__ */
  1629. /* Additional Prototypes for ALL interfaces */
  1630. unsigned long __RPC_USER BSTR_UserSize( unsigned long *, unsigned long , BSTR * );
  1631. unsigned char * __RPC_USER BSTR_UserMarshal( unsigned long *, unsigned char *, BSTR * );
  1632. unsigned char * __RPC_USER BSTR_UserUnmarshal(unsigned long *, unsigned char *, BSTR * );
  1633. void __RPC_USER BSTR_UserFree( unsigned long *, BSTR * );
  1634. unsigned long __RPC_USER VARIANT_UserSize( unsigned long *, unsigned long , VARIANT * );
  1635. unsigned char * __RPC_USER VARIANT_UserMarshal( unsigned long *, unsigned char *, VARIANT * );
  1636. unsigned char * __RPC_USER VARIANT_UserUnmarshal(unsigned long *, unsigned char *, VARIANT * );
  1637. void __RPC_USER VARIANT_UserFree( unsigned long *, VARIANT * );
  1638. /* end of Additional Prototypes */
  1639. #ifdef __cplusplus
  1640. }
  1641. #endif
  1642. #endif
  1643.