ReactOS 0.4.16-dev-306-g647d351
oleidl.idl
Go to the documentation of this file.
1/*
2 * Copyright (C) 1999 Paul Quinn
3 * Copyright (C) 1999 Francis Beaudet
4 * Copyright (C) 2003 Alexandre Julliard
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
10 *
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
15 *
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19 */
20
21#ifndef DO_NO_IMPORTS
22import "objidl.idl";
23#endif
24
26
27cpp_quote("#include <winuser.h>")
28
29/*****************************************************************************
30 * IOleTypes interface
31 */
32[
33 uuid(b0916c84-7416-101a-bcea-08002b2b79ef)
34]
35interface IOLETypes
36{
37 typedef enum tagOLERENDER
38 {
44
45 typedef struct tagOBJECTDESCRIPTOR
46 {
57}
58
59
60/*****************************************************************************
61 * IOleWindow interface
62 */
63[
64 object,
65 uuid(00000114-0000-0000-c000-000000000046),
67]
69{
71
73 [out] HWND *phwnd);
74
76 [in] BOOL fEnterMode);
77}
78
79
80/*****************************************************************************
81 * IOleInPlaceObject interface
82 */
83[
84 object,
85 uuid(00000113-0000-0000-c000-000000000046),
87]
89{
91
93
95
97 [in] LPCRECT lprcPosRect,
98 [in] LPCRECT lprcClipRect);
99
101}
102
103
104/*****************************************************************************
105 * IOleInPlaceUIWindow interface
106 */
107[
108 object,
109 uuid(00000115-0000-0000-c000-000000000046),
111]
112
114{
116
120
122 [out] LPRECT lprectBorder);
123
125 [in, unique] LPCBORDERWIDTHS pborderwidths);
126
128 [in, unique] LPCBORDERWIDTHS pborderwidths);
129
131 [in, unique] IOleInPlaceActiveObject *pActiveObject,
132 [in, string, unique] LPCOLESTR pszObjName);
133}
134
135
136/* avoid conflict with Wine Unicode macros */
137cpp_quote("#ifdef WINE_NO_UNICODE_MACROS")
138cpp_quote("#undef TranslateAccelerator")
139cpp_quote("#endif")
140
141/*****************************************************************************
142 * IOleInPlaceFrame interface
143 */
144[
145 object,
146 uuid(00000116-0000-0000-c000-000000000046),
147 pointer_default(unique)
148]
149interface IOleInPlaceFrame : IOleInPlaceUIWindow
150{
151 typedef [unique] IOleInPlaceFrame *LPOLEINPLACEFRAME;
152
153 typedef struct tagOleInPlaceFrameInfo
154 {
155 UINT cb;
156 BOOL fMDIApp;
157 HWND hwndFrame;
158 HACCEL haccel;
159 UINT cAccelEntries;
160 } OLEINPLACEFRAMEINFO, *LPOLEINPLACEFRAMEINFO;
161
162 typedef struct tagOleMenuGroupWidths
163 {
164 LONG width[ 6 ];
165 } OLEMENUGROUPWIDTHS, *LPOLEMENUGROUPWIDTHS;
166
167 typedef HGLOBAL HOLEMENU;
168
169 HRESULT InsertMenus(
170 [in] HMENU hmenuShared,
171 [in,out] LPOLEMENUGROUPWIDTHS lpMenuWidths);
172
173 HRESULT SetMenu(
174 [in] HMENU hmenuShared,
175 [in] HOLEMENU holemenu,
176 [in] HWND hwndActiveObject);
177
178 HRESULT RemoveMenus(
179 [in] HMENU hmenuShared);
180
181 HRESULT SetStatusText(
182 [in, unique] LPCOLESTR pszStatusText);
183
184 HRESULT EnableModeless(
185 [in] BOOL fEnable);
186
187 HRESULT TranslateAccelerator(
188 [in] LPMSG lpmsg,
189 [in] WORD wID);
190}
191
192
193/*****************************************************************************
194 * IOleInPlaceActiveObject interface
195 */
196[
197 object,
198 uuid(00000117-0000-0000-c000-000000000046)
199]
200interface IOleInPlaceActiveObject : IOleWindow
201{
202 typedef [unique] IOleInPlaceActiveObject *LPOLEINPLACEACTIVEOBJECT;
203
204 [local]
205 HRESULT TranslateAccelerator(
206 [in] LPMSG lpmsg);
207
208 [call_as(TranslateAccelerator)]
209 HRESULT RemoteTranslateAccelerator();
210
211 HRESULT OnFrameWindowActivate(
212 [in] BOOL fActivate);
213
214 HRESULT OnDocWindowActivate(
215 [in] BOOL fActivate);
216
217 [local]
218 HRESULT ResizeBorder(
219 [in] LPCRECT prcBorder,
220 [in, unique] IOleInPlaceUIWindow *pUIWindow,
221 [in] BOOL fFrameWindow);
222
223 [call_as(ResizeBorder)]
224 HRESULT RemoteResizeBorder(
225 [in] LPCRECT prcBorder,
226 [in] REFIID riid,
227 [in, unique, iid_is(riid)] IOleInPlaceUIWindow *pUIWindow,
228 [in] BOOL fFrameWindow);
229
230 HRESULT EnableModeless(
231 [in] BOOL fEnable);
232}
233
234
235/*****************************************************************************
236 * IOleInPlaceSite interface
237 */
238[
239 object,
240 uuid(00000119-0000-0000-c000-000000000046),
241 pointer_default(unique)
242]
243interface IOleInPlaceSite : IOleWindow
244{
245 typedef [unique] IOleInPlaceSite *LPOLEINPLACESITE;
246
247 HRESULT CanInPlaceActivate();
248 HRESULT OnInPlaceActivate();
249 HRESULT OnUIActivate();
250
251 HRESULT GetWindowContext(
252 [out] IOleInPlaceFrame **ppFrame,
253 [out] IOleInPlaceUIWindow **ppDoc,
254 [out] LPRECT lprcPosRect,
255 [out] LPRECT lprcClipRect,
256 [in, out] LPOLEINPLACEFRAMEINFO lpFrameInfo);
257
258 HRESULT Scroll(
259 [in] SIZE scrollExtent);
260
261 HRESULT OnUIDeactivate(
262 [in] BOOL fUndoable);
263
264 HRESULT OnInPlaceDeactivate();
265 HRESULT DiscardUndoState();
266 HRESULT DeactivateAndUndo();
267
268 HRESULT OnPosRectChange(
269 [in] LPCRECT lprcPosRect);
270}
271
272
273/*****************************************************************************
274 * IParseDisplayName interface
275 */
276[
277 object,
278 uuid(0000011a-0000-0000-c000-000000000046),
279 pointer_default(unique)
280]
281interface IParseDisplayName : IUnknown
282{
283 typedef [unique] IParseDisplayName *LPPARSEDISPLAYNAME;
284
285 HRESULT ParseDisplayName(
286 [in, unique] IBindCtx *pbc,
287 [in] LPOLESTR pszDisplayName,
288 [out] ULONG *pchEaten,
289 [out] IMoniker **ppmkOut);
290}
291
292
293/*****************************************************************************
294 * IOleContainer interface
295 */
296[
297 object,
298 uuid(0000011b-0000-0000-c000-000000000046),
299 pointer_default(unique)
300]
301interface IOleContainer : IParseDisplayName
302{
303 typedef [unique] IOleContainer *LPOLECONTAINER;
304
305 HRESULT EnumObjects(
306 [in] DWORD grfFlags,
307 [out] IEnumUnknown **ppenum);
308
309 HRESULT LockContainer(
310 [in] BOOL fLock);
311}
312
313
314/*****************************************************************************
315 * IOleItemContainer interface
316 */
317[
318 object,
319 uuid(0000011c-0000-0000-c000-000000000046),
320 pointer_default(unique)
321]
322interface IOleItemContainer : IOleContainer
323{
324 typedef [unique] IOleItemContainer *LPOLEITEMCONTAINER;
325
326 typedef enum tagBINDSPEED
327 {
328 BINDSPEED_INDEFINITE = 1,
329 BINDSPEED_MODERATE = 2,
330 BINDSPEED_IMMEDIATE = 3
331 } BINDSPEED;
332
333 typedef enum tagOLECONTF
334 {
335 OLECONTF_EMBEDDINGS = 1,
336 OLECONTF_LINKS = 2,
337 OLECONTF_OTHERS = 4,
338 OLECONTF_ONLYUSER = 8,
339 OLECONTF_ONLYIFRUNNING = 16
340 } OLECONTF;
341
342cpp_quote("#ifdef WINE_NO_UNICODE_MACROS")
343cpp_quote("#undef GetObject")
344cpp_quote("#endif")
345 HRESULT GetObject(
346 [in] LPOLESTR pszItem,
347 [in] DWORD dwSpeedNeeded,
348 [in, unique] IBindCtx *pbc,
349 [in] REFIID riid,
350 [out, iid_is(riid)] void **ppvObject);
351
352 HRESULT GetObjectStorage(
353 [in] LPOLESTR pszItem,
354 [in, unique] IBindCtx *pbc,
355 [in] REFIID riid,
356 [out, iid_is(riid)] void **ppvStorage);
357
358 HRESULT IsRunning(
359 [in] LPOLESTR pszItem);
360}
361
362
363/*****************************************************************************
364 * IOleLink interface
365 */
366[
367 object,
368 uuid(0000011d-0000-0000-c000-000000000046)
369]
370interface IOleLink : IUnknown
371{
372 typedef [unique] IOleLink *LPOLELINK;
373
374 typedef enum tagOLEUPDATE
375 {
376 OLEUPDATE_ALWAYS = 1,
377 OLEUPDATE_ONCALL = 3
378 } OLEUPDATE, *POLEUPDATE, *LPOLEUPDATE;
379
380 typedef enum tagOLELINKBIND
381 {
382 OLELINKBIND_EVENIFCLASSDIFF = 1
383 } OLELINKBIND;
384
385 HRESULT SetUpdateOptions(
386 [in] DWORD dwUpdateOpt);
387
388 HRESULT GetUpdateOptions(
389 [out] DWORD *pdwUpdateOpt);
390
391 HRESULT SetSourceMoniker(
392 [in, unique] IMoniker *pmk,
393 [in] REFCLSID rclsid);
394
395 HRESULT GetSourceMoniker(
396 [out] IMoniker **ppmk);
397
398 HRESULT SetSourceDisplayName(
399 [in]LPCOLESTR pszStatusText);
400
401 HRESULT GetSourceDisplayName(
402 [out] LPOLESTR *ppszDisplayName);
403
404 HRESULT BindToSource(
405 [in] DWORD bindflags,
406 [in, unique] IBindCtx *pbc);
407
408 HRESULT BindIfRunning();
409
410 HRESULT GetBoundSource(
411 [out] IUnknown **ppunk);
412
413 HRESULT UnbindSource();
414
415 HRESULT Update(
416 [in, unique] IBindCtx *pbc);
417}
418
419
420/*****************************************************************************
421 * IOleClientSite interface
422 */
423[
424 object,
425 uuid(00000118-0000-0000-c000-000000000046),
426 pointer_default(unique)
427]
428interface IOleClientSite : IUnknown
429{
430 typedef [unique] IOleClientSite * LPOLECLIENTSITE;
431
432 HRESULT SaveObject();
433
434 HRESULT GetMoniker(
435 [in] DWORD dwAssign,
436 [in] DWORD dwWhichMoniker,
437 [out] IMoniker **ppmk);
438
439 HRESULT GetContainer(
440 [out] IOleContainer **ppContainer);
441
442 HRESULT ShowObject();
443
444 HRESULT OnShowWindow(
445 [in] BOOL fShow);
446
447 HRESULT RequestNewObjectLayout();
448}
449
450
451/*****************************************************************************
452 * IOleCache interface
453 */
454[
455 object,
456 uuid(0000011e-0000-0000-c000-000000000046),
457 pointer_default(unique)
458]
459interface IOleCache : IUnknown
460{
461 typedef [unique] IOleCache *LPOLECACHE;
462
463 HRESULT Cache(
464 [in, unique] FORMATETC *pformatetc,
465 [in] DWORD advf,
466 [out] DWORD *pdwConnection);
467
468 HRESULT Uncache(
469 [in] DWORD dwConnection);
470
471 HRESULT EnumCache(
472 [out] IEnumSTATDATA **ppenumSTATDATA);
473
474 HRESULT InitCache(
475 [in, unique] IDataObject *pDataObject);
476
477 HRESULT SetData(
478 [in, unique] FORMATETC *pformatetc,
479 [in, unique] STGMEDIUM *pmedium,
480 [in] BOOL fRelease);
481}
482
483
484/*****************************************************************************
485 * IOleCache2 interface
486 */
487[
488 object,
489 uuid(00000128-0000-0000-c000-000000000046),
490 pointer_default(unique)
491]
492interface IOleCache2 : IOleCache
493{
494 typedef [unique] IOleCache2 *LPOLECACHE2;
495
496 const DWORD UPDFCACHE_NODATACACHE = 0x00000001;
497 const DWORD UPDFCACHE_ONSAVECACHE = 0x00000002;
498 const DWORD UPDFCACHE_ONSTOPCACHE = 0x00000004;
499 const DWORD UPDFCACHE_NORMALCACHE = 0x00000008;
500 const DWORD UPDFCACHE_IFBLANK = 0x00000010;
501 const DWORD UPDFCACHE_ONLYIFBLANK = 0x80000000;
502
503 const DWORD UPDFCACHE_IFBLANKORONSAVECACHE = (UPDFCACHE_IFBLANK | UPDFCACHE_ONSAVECACHE);
504 const DWORD UPDFCACHE_ALL = ((DWORD)(~(UPDFCACHE_ONLYIFBLANK)));
505 const DWORD UPDFCACHE_ALLBUTNODATACACHE = (UPDFCACHE_ALL & ((DWORD)(~UPDFCACHE_NODATACACHE)));
506
507 typedef enum tagDISCARDCACHE
508 {
509 DISCARDCACHE_SAVEIFDIRTY = 0,
510 DISCARDCACHE_NOSAVE = 1
511 } DISCARDCACHE;
512
513 [local]
514 HRESULT UpdateCache(
515 [in] LPDATAOBJECT pDataObject,
516 [in] DWORD grfUpdf,
517 [in] LPVOID pReserved);
518
519 [call_as(UpdateCache)]
520 HRESULT RemoteUpdateCache(
521 [in] LPDATAOBJECT pDataObject,
522 [in] DWORD grfUpdf,
523 [in] LONG_PTR pReserved);
524
525 HRESULT DiscardCache(
526 [in] DWORD dwDiscardOptions);
527}
528
529
530/*****************************************************************************
531 * IOleCacheControl interface
532 */
533[
534 object,
535 uuid(00000129-0000-0000-c000-000000000046)
536]
537interface IOleCacheControl : IUnknown
538{
539 typedef [unique] IOleCacheControl *LPOLECACHECONTROL;
540
541 HRESULT OnRun(
542 LPDATAOBJECT pDataObject);
543
544 HRESULT OnStop();
545}
546
547
548/*****************************************************************************
549 * IEnumOLEVERB interface
550 */
551[
552 object,
553 uuid(00000104-0000-0000-c000-000000000046),
554 pointer_default(unique)
555]
556interface IEnumOLEVERB : IUnknown
557{
558 typedef [unique] IEnumOLEVERB *LPENUMOLEVERB;
559
560 typedef struct tagOLEVERB
561 {
562 LONG lVerb;
563 LPOLESTR lpszVerbName;
564 DWORD fuFlags;
565 DWORD grfAttribs;
566 } OLEVERB, *LPOLEVERB;
567
568 typedef enum tagOLEVERBATTRIB
569 {
570 OLEVERBATTRIB_NEVERDIRTIES = 1,
571 OLEVERBATTRIB_ONCONTAINERMENU = 2
572 } OLEVERBATTRIB;
573
574 [local]
575 HRESULT Next(
576 [in] ULONG celt,
577 [out, size_is(celt), length_is(*pceltFetched)] LPOLEVERB rgelt,
578 [out] ULONG *pceltFetched);
579
580 [call_as(Next)]
581 HRESULT RemoteNext(
582 [in] ULONG celt,
583 [out, size_is(celt), length_is(*pceltFetched)] LPOLEVERB rgelt,
584 [out] ULONG *pceltFetched);
585
586 HRESULT Skip(
587 [in] ULONG celt);
588
589 HRESULT Reset();
590
591 HRESULT Clone(
592 [out] IEnumOLEVERB **ppenum);
593}
594
595
596/*****************************************************************************
597 * IOleObject interface
598 */
599[
600 object,
601 uuid(00000112-0000-0000-c000-000000000046),
602 pointer_default(unique)
603]
604interface IOleObject : IUnknown
605{
606 typedef [unique] IOleObject *LPOLEOBJECT;
607
608 typedef enum tagOLEGETMONIKER
609 {
610 OLEGETMONIKER_ONLYIFTHERE = 1,
611 OLEGETMONIKER_FORCEASSIGN = 2,
612 OLEGETMONIKER_UNASSIGN = 3,
613 OLEGETMONIKER_TEMPFORUSER = 4
614 } OLEGETMONIKER;
615
616 typedef enum tagOLEWHICHMK
617 {
618 OLEWHICHMK_CONTAINER = 1,
619 OLEWHICHMK_OBJREL = 2,
620 OLEWHICHMK_OBJFULL = 3
621 } OLEWHICHMK;
622
623 typedef enum tagUSERCLASSTYPE
624 {
625 USERCLASSTYPE_FULL = 1,
626 USERCLASSTYPE_SHORT = 2,
627 USERCLASSTYPE_APPNAME = 3
628 } USERCLASSTYPE;
629
630 typedef enum tagOLEMISC
631 {
632 OLEMISC_RECOMPOSEONRESIZE = 0x1,
633 OLEMISC_ONLYICONIC = 0x2,
634 OLEMISC_INSERTNOTREPLACE = 0x4,
635 OLEMISC_STATIC = 0x8,
636 OLEMISC_CANTLINKINSIDE = 0x10,
637 OLEMISC_CANLINKBYOLE1 = 0x20,
638 OLEMISC_ISLINKOBJECT = 0x40,
639 OLEMISC_INSIDEOUT = 0x80,
640 OLEMISC_ACTIVATEWHENVISIBLE = 0x100,
641 OLEMISC_RENDERINGISDEVICEINDEPENDENT = 0x200,
642 OLEMISC_INVISIBLEATRUNTIME = 0x400,
643 OLEMISC_ALWAYSRUN = 0x800,
644 OLEMISC_ACTSLIKEBUTTON = 0x1000,
645 OLEMISC_ACTSLIKELABEL = 0x2000,
646 OLEMISC_NOUIACTIVATE = 0x4000,
647 OLEMISC_ALIGNABLE = 0x8000,
648 OLEMISC_SIMPLEFRAME = 0x10000,
649 OLEMISC_SETCLIENTSITEFIRST = 0x20000,
650 OLEMISC_IMEMODE = 0x40000,
651 OLEMISC_IGNOREACTIVATEWHENVISIBLE = 0x80000,
652 OLEMISC_WANTSTOMENUMERGE = 0x100000,
653 OLEMISC_SUPPORTSMULTILEVELUNDO = 0x200000
654 } OLEMISC;
655
656 typedef enum tagOLECLOSE
657 {
658 OLECLOSE_SAVEIFDIRTY = 0,
659 OLECLOSE_NOSAVE = 1,
660 OLECLOSE_PROMPTSAVE = 2
661 } OLECLOSE;
662
663 HRESULT SetClientSite(
664 [in, unique] IOleClientSite *pClientSite);
665
666 HRESULT GetClientSite(
667 [out] IOleClientSite **ppClientSite);
668
669 HRESULT SetHostNames(
670 [in] LPCOLESTR szContainerApp,
671 [in, unique] LPCOLESTR szContainerObj);
672
673 HRESULT Close(
674 [in] DWORD dwSaveOption);
675
676 HRESULT SetMoniker(
677 [in] DWORD dwWhichMoniker,
678 [in, unique] IMoniker *pmk);
679
680 HRESULT GetMoniker(
681 [in] DWORD dwAssign,
682 [in] DWORD dwWhichMoniker,
683 [out] IMoniker **ppmk);
684
685 HRESULT InitFromData(
686 [in, unique] IDataObject *pDataObject,
687 [in] BOOL fCreation,
688 [in] DWORD dwReserved);
689
690 HRESULT GetClipboardData(
691 [in] DWORD dwReserved,
692 [out] IDataObject **ppDataObject);
693
694 HRESULT DoVerb(
695 [in] LONG iVerb,
696 [in, unique] LPMSG lpmsg,
697 [in, unique] IOleClientSite *pActiveSite,
698 [in] LONG lindex,
699 [in] HWND hwndParent,
700 [in, unique] LPCRECT lprcPosRect);
701
702 HRESULT EnumVerbs(
703 [out] IEnumOLEVERB **ppEnumOleVerb);
704
705 HRESULT Update();
706
707 HRESULT IsUpToDate();
708
709 HRESULT GetUserClassID(
710 [out] CLSID *pClsid);
711
712 HRESULT GetUserType(
713 [in] DWORD dwFormOfType,
714 [out] LPOLESTR *pszUserType);
715
716 HRESULT SetExtent(
717 [in] DWORD dwDrawAspect,
718 [in] SIZEL *psizel);
719
720 HRESULT GetExtent(
721 [in] DWORD dwDrawAspect,
722 [out] SIZEL *psizel);
723
724 HRESULT Advise(
725 [in, unique] IAdviseSink *pAdvSink,
726 [out] DWORD *pdwConnection);
727
728 HRESULT Unadvise(
729 [in] DWORD dwConnection);
730
731 HRESULT EnumAdvise(
732 [out] IEnumSTATDATA **ppenumAdvise);
733
734 HRESULT GetMiscStatus(
735 [in] DWORD dwAspect,
736 [out] DWORD *pdwStatus);
737
738 HRESULT SetColorScheme(
739 [in] LOGPALETTE *pLogpal);
740}
741
742
743/*****************************************************************************
744 * IOleAdviseHolder interface
745 */
746[
747 local,
748 object,
749 uuid(00000111-0000-0000-c000-000000000046)
750]
751interface IOleAdviseHolder : IUnknown
752{
753 typedef [unique] IOleAdviseHolder * LPOLEADVISEHOLDER;
754
755 HRESULT Advise(
756 [in, unique] IAdviseSink *pAdvise,
757 [out] DWORD *pdwConnection);
758
759 HRESULT Unadvise(
760 [in] DWORD dwConnection);
761
762 HRESULT EnumAdvise(
763 [out] IEnumSTATDATA **ppenumAdvise);
764
765 HRESULT SendOnRename(
766 [in, unique] IMoniker *pmk);
767
768 HRESULT SendOnSave();
769 HRESULT SendOnClose();
770}
771
772
773/*****************************************************************************
774 * IContinue interface
775 */
776[
777 object,
778 uuid(0000012a-0000-0000-c000-000000000046)
779]
780interface IContinue : IUnknown
781{
782 HRESULT FContinue();
783}
784
785
786/*****************************************************************************
787 * IViewObject interface
788 */
789[
790 object,
791 uuid(0000010d-0000-0000-c000-000000000046)
792]
793interface IViewObject : IUnknown
794{
795 typedef [unique] IViewObject *LPVIEWOBJECT;
796
797 [local]
798 HRESULT Draw(
799 [in] DWORD dwDrawAspect,
800 [in] LONG lindex,
801 [in, unique] void * pvAspect,
802 [in, unique] DVTARGETDEVICE *ptd,
803 [in] HDC hdcTargetDev,
804 [in] HDC hdcDraw,
805 [in] LPCRECTL lprcBounds,
806 [in, unique] LPCRECTL lprcWBounds,
807 [in] BOOL (*pfnContinue)(ULONG_PTR dwContinue),
808 [in] ULONG_PTR dwContinue);
809
810 [call_as(Draw)]
811 HRESULT RemoteDraw(
812 [in] DWORD dwDrawAspect,
813 [in] LONG lindex,
814 [in] ULONG_PTR pvAspect,
815 [in, unique] DVTARGETDEVICE *ptd,
816 [in] ULONG_PTR hdcTargetDev,
817 [in] ULONG_PTR hdcDraw,
818 [in] LPCRECTL lprcBounds,
819 [in, unique] LPCRECTL lprcWBounds,
820 [in] IContinue *pContinue);
821
822 [local]
823 HRESULT GetColorSet(
824 [in] DWORD dwDrawAspect,
825 [in] LONG lindex,
826 [in, unique] void *pvAspect,
827 [in, unique] DVTARGETDEVICE *ptd,
828 [in] HDC hicTargetDev,
829 [out] LOGPALETTE **ppColorSet);
830
831 [call_as(GetColorSet)]
832 HRESULT RemoteGetColorSet(
833 [in] DWORD dwDrawAspect,
834 [in] LONG lindex,
835 [in] ULONG_PTR pvAspect,
836 [in, unique] DVTARGETDEVICE *ptd,
837 [in] ULONG_PTR hicTargetDev,
838 [out] LOGPALETTE **ppColorSet);
839
840 [local]
841 HRESULT Freeze(
842 [in] DWORD dwDrawAspect,
843 [in] LONG lindex,
844 [in, unique] void *pvAspect,
845 [out] DWORD *pdwFreeze);
846
847 [call_as(Freeze)]
848 HRESULT RemoteFreeze(
849 [in] DWORD dwDrawAspect,
850 [in] LONG lindex,
851 [in] ULONG_PTR pvAspect,
852 [out] DWORD *pdwFreeze);
853
854 HRESULT Unfreeze(
855 [in] DWORD dwFreeze);
856
857 HRESULT SetAdvise(
858 [in] DWORD aspects,
859 [in] DWORD advf,
860 [in, unique] IAdviseSink *pAdvSink);
861
862 [local]
863 HRESULT GetAdvise(
864 [out, unique] DWORD *pAspects,
865 [out, unique] DWORD *pAdvf,
866 [out] IAdviseSink **ppAdvSink);
867
868 [call_as(GetAdvise)]
869 HRESULT RemoteGetAdvise(
870 [out] DWORD *pAspects,
871 [out] DWORD *pAdvf,
872 [out] IAdviseSink **ppAdvSink);
873}
874
875
876/*****************************************************************************
877 * IViewObject2 interface
878 */
879[
880 object,
881 uuid(00000127-0000-0000-c000-000000000046)
882]
883interface IViewObject2 : IViewObject
884{
885 typedef [unique] IViewObject2 *LPVIEWOBJECT2;
886
887 HRESULT GetExtent(
888 [in] DWORD dwDrawAspect,
889 [in] LONG lindex,
890 [in, unique] DVTARGETDEVICE* ptd,
891 [out] LPSIZEL lpsizel);
892}
893
894
895/*****************************************************************************
896 * IDropSource interface
897 */
898[
899 local,
900 object,
901 uuid(00000121-0000-0000-c000-000000000046)
902]
903interface IDropSource : IUnknown
904{
905 typedef [unique] IDropSource *LPDROPSOURCE;
906
907 HRESULT QueryContinueDrag(
908 [in] BOOL fEscapePressed,
909 [in] DWORD grfKeyState);
910
911 HRESULT GiveFeedback(
912 [in] DWORD dwEffect);
913}
914
915
916/*****************************************************************************
917 * IDropTarget interface
918 */
919[
920 object,
921 uuid(00000122-0000-0000-c000-000000000046),
922 pointer_default(unique)
923]
924interface IDropTarget : IUnknown
925{
926 typedef [unique] IDropTarget *LPDROPTARGET;
927
928 const DWORD MK_ALT = 0x20;
929 const DWORD DROPEFFECT_NONE = 0;
930 const DWORD DROPEFFECT_COPY = 1;
931 const DWORD DROPEFFECT_MOVE = 2;
932 const DWORD DROPEFFECT_LINK = 4;
933 const DWORD DROPEFFECT_SCROLL = 0x80000000;
934 const DWORD DD_DEFSCROLLINSET = 11;
935 const DWORD DD_DEFSCROLLDELAY = 50;
936 const DWORD DD_DEFSCROLLINTERVAL = 50;
937 const DWORD DD_DEFDRAGDELAY = 200;
938 const DWORD DD_DEFDRAGMINDIST = 2;
939
940 HRESULT DragEnter(
941 [in, unique] IDataObject *pDataObj,
942 [in] DWORD grfKeyState,
943 [in] POINTL pt,
944 [in, out] DWORD *pdwEffect);
945
946 HRESULT DragOver(
947 [in] DWORD grfKeyState,
948 [in] POINTL pt,
949 [in, out] DWORD *pdwEffect);
950
951 HRESULT DragLeave();
952
953 HRESULT Drop(
954 [in, unique] IDataObject *pDataObj,
955 [in] DWORD grfKeyState,
956 [in] POINTL pt,
957 [in, out] DWORD *pdwEffect);
958}
959
960/*****************************************************************************
961 * IDropSourceNotify interface
962 */
963[
964 object,
965 uuid(0000012b-0000-0000-c000-000000000046),
966 pointer_default(unique),
967 local
968]
969interface IDropSourceNotify : IUnknown
970{
971 HRESULT DragTargetEnter( [in] HWND hwnd );
972 HRESULT DragTargetLeave( void );
973}
CD3D10_BUFFER_DESC D3D10_BUFFER_DESC cpp_quote(" ~CD3D10_BUFFER_DESC() {}") operator const D3D10_BUFFER_DESC &() const
Definition: d3d10.idl:491
coclass PSFactoryBuffer pointer_default(unique)] interface ObjectRpcBaseTypes
Definition: dcom.idl:35
unsigned int BOOL
Definition: ntddk_ex.h:94
unsigned long DWORD
Definition: ntddk_ex.h:95
GLuint in
Definition: glext.h:9616
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204
struct IOLETypes::tagOBJECTDESCRIPTOR * PLINKSRCDESCRIPTOR
struct IOLETypes::tagOBJECTDESCRIPTOR OBJECTDESCRIPTOR
struct IOLETypes::tagOBJECTDESCRIPTOR * LPLINKSRCDESCRIPTOR
enum IOLETypes::tagOLERENDER OLERENDER
struct IOLETypes::tagOBJECTDESCRIPTOR * POBJECTDESCRIPTOR
struct IOLETypes::tagOBJECTDESCRIPTOR * LPOBJECTDESCRIPTOR
enum IOLETypes::tagOLERENDER * LPOLERENDER
tagOLERENDER
Definition: oleidl.idl:38
@ OLERENDER_FORMAT
Definition: oleidl.idl:41
@ OLERENDER_ASIS
Definition: oleidl.idl:42
@ OLERENDER_NONE
Definition: oleidl.idl:39
@ OLERENDER_DRAW
Definition: oleidl.idl:40
struct IOLETypes::tagOBJECTDESCRIPTOR LINKSRCDESCRIPTOR
HRESULT InPlaceDeactivate()
HRESULT SetObjectRects([in] LPCRECT lprcPosRect, [in] LPCRECT lprcClipRect)
IOleInPlaceObject * LPOLEINPLACEOBJECT
Definition: oleidl.idl:90
HRESULT UIDeactivate()
HRESULT ReactivateAndUndo()
LPRECT LPBORDERWIDTHS
Definition: oleidl.idl:118
HRESULT SetActiveObject([in, unique] IOleInPlaceActiveObject *pActiveObject, [in, string, unique] LPCOLESTR pszObjName)
IOleInPlaceUIWindow * LPOLEINPLACEUIWINDOW
Definition: oleidl.idl:115
HRESULT SetBorderSpace([in, unique] LPCBORDERWIDTHS pborderwidths)
HRESULT RequestBorderSpace([in, unique] LPCBORDERWIDTHS pborderwidths)
LPCRECT LPCBORDERWIDTHS
Definition: oleidl.idl:119
HRESULT GetBorder([out] LPRECT lprectBorder)
HRESULT GetWindow([out] HWND *phwnd)
IOleWindow * LPOLEWINDOW
Definition: oleidl.idl:70
HRESULT ContextSensitiveHelp([in] BOOL fEnterMode)
Definition: msctf.idl:550
static FILE * out
Definition: regtests2xml.c:44
uint32_t ULONG
Definition: typedefs.h:59