source: Daodan/MSYS2/mingw32/i686-w64-mingw32/include/msinkaut.idl@ 1167

Last change on this file since 1167 was 1166, checked in by rossy, 3 years ago

Daodan: Replace MinGW build env with an up-to-date MSYS2 env

File size: 30.6 KB
Line 
1/**
2 * This file is part of the mingw-w64 runtime package.
3 * No warranty is given; refer to the file DISCLAIMER within this package.
4 */
5
6import "oaidl.idl";
7import "ocidl.idl";
8import "tpcshrd.idl";
9
10// cpp_quote("#import <tpcerror.h>")
11
12typedef enum InkRasterOperation {
13 IRO_Black = 1,
14 IRO_NotMergePen = 2,
15 IRO_MaskNotPen = 3,
16 IRO_NotCopyPen = 4,
17 IRO_MaskPenNot = 5,
18 IRO_Not = 6,
19 IRO_XOrPen = 7,
20 IRO_NotMaskPen = 8,
21 IRO_MaskPen = 9,
22 IRO_NotXOrPen = 10,
23 IRO_NoOperation = 11,
24 IRO_MergeNotPen = 12,
25 IRO_CopyPen = 13,
26 IRO_MergePenNot = 14,
27 IRO_MergePen = 15,
28 IRO_White = 16
29} InkRasterOperation;
30
31typedef enum InkPenTip {
32 IPT_Ball = 0,
33 IPT_Rectangle = 1
34} InkPenTip;
35
36typedef enum TabletHardwareCapabilities {
37 THWC_Integrated = 0x1,
38 THWC_CursorMustTouch = 0x2,
39 THWC_HardProximity = 0x4,
40 THWC_CursorsHavePhysicalIds = 0x8
41} TabletHardwareCapabilities;
42
43typedef enum TabletPropertyMetricUnit {
44 TPMU_Default,
45 TPMU_Inches,
46 TPMU_Centimeters,
47 TPMU_Degrees,
48 TPMU_Radians,
49 TPMU_Seconds,
50 TPMU_Pounds,
51 TPMU_Grams
52} TabletPropertyMetricUnit;
53
54typedef enum InkCursorButtonState {
55 ICBS_Unavailable,
56 ICBS_Up,
57 ICBS_Down
58} InkCursorButtonState;
59
60typedef enum InkRecognitionConfidence {
61 IRC_Strong = 0,
62 IRC_Intermediate = 1,
63 IRC_Poor = 2
64} InkRecognitionConfidence;
65
66typedef enum InkBoundingBoxMode {
67 IBBM_Default = 0,
68 IBBM_NoCurveFit = 1,
69 IBBM_CurveFit = 2,
70 IBBM_PointsOnly = 3,
71 IBBM_Union = 4
72} InkBoundingBoxMode;
73
74typedef enum InkExtractFlags {
75 IEF_CopyFromOriginal = 0,
76 IEF_RemoveFromOriginal = 1,
77 IEF_Default = IEF_RemoveFromOriginal
78} InkExtractFlags;
79
80typedef enum InkPersistenceFormat {
81 IPF_InkSerializedFormat = 0,
82 IPF_Base64InkSerializedFormat = 1,
83 IPF_GIF = 2,
84 IPF_Base64GIF = 3
85} InkPersistenceFormat;
86
87typedef enum InkPersistenceCompressionMode {
88 IPCM_Default = 0,
89 IPCM_MaximumCompression = 1,
90 IPCM_NoCompression = 2
91} InkPersistenceCompressionMode;
92
93typedef enum InkClipboardFormats {
94 ICF_None = 0x0000,
95 ICF_InkSerializedFormat = 0x0001,
96 ICF_SketchInk = 0x0002,
97 ICF_TextInk = 0x0006,
98 ICF_EnhancedMetafile = 0x0008,
99 ICF_Metafile = 0x0020,
100 ICF_Bitmap = 0x0040,
101 ICF_PasteMask = 0x0007,
102 ICF_CopyMask = 0x007f,
103 ICF_Default = ICF_CopyMask
104} InkClipboardFormats;
105
106typedef enum InkClipboardModes {
107 ICB_Copy = 0x00,
108 ICB_Cut = 0x01,
109 ICB_ExtractOnly = 0x30,
110 ICB_DelayedCopy = 0x20,
111 ICB_Default = ICB_Copy
112} InkClipboardModes;
113
114typedef enum InkCollectionMode {
115 ICM_InkOnly,
116 ICM_GestureOnly,
117 ICM_InkAndGesture
118} InkCollectionMode;
119
120typedef enum InkMousePointer {
121 IMP_Default = 0,
122 IMP_Arrow = 1,
123 IMP_Crosshair = 2,
124 IMP_Ibeam = 3,
125 IMP_SizeNESW = 4,
126 IMP_SizeNS = 5,
127 IMP_SizeNWSE = 6,
128 IMP_SizeWE = 7,
129 IMP_UpArrow = 8,
130 IMP_Hourglass = 9,
131 IMP_NoDrop = 10,
132 IMP_ArrowHourglass = 11,
133 IMP_ArrowQuestion = 12,
134 IMP_SizeAll = 13,
135 IMP_Hand = 14,
136 IMP_Custom = 99
137} InkMousePointer;
138
139typedef enum InkApplicationGesture {
140 IAG_AllGestures = 0x0000,
141 IAG_NoGesture = 0xf000,
142 IAG_Scratchout = 0xf001,
143 IAG_Triangle = 0xf002,
144 IAG_Square = 0xf003,
145 IAG_Star = 0xf004,
146 IAG_Check = 0xf005,
147 IAG_Curlicue = 0xf010,
148 IAG_DoubleCurlicue = 0xf011,
149 IAG_Circle = 0xf020,
150 IAG_DoubleCircle = 0xf021,
151 IAG_SemiCircleLeft = 0xf028,
152 IAG_SemiCircleRight = 0xf029,
153 IAG_ChevronUp = 0xf030,
154 IAG_ChevronDown = 0xf031,
155 IAG_ChevronLeft = 0xf032,
156 IAG_ChevronRight = 0xf033,
157 IAG_ArrowUp = 0xf038,
158 IAG_ArrowDown = 0xf039,
159 IAG_ArrowLeft = 0xf03a,
160 IAG_ArrowRight = 0xf03b,
161 IAG_Up = 0xf058,
162 IAG_Down = 0xf059,
163 IAG_Left = 0xf05a,
164 IAG_Right = 0xf05b,
165 IAG_UpDown = 0xf060,
166 IAG_DownUp = 0xf061,
167 IAG_LeftRight = 0xf062,
168 IAG_RightLeft = 0xf063,
169 IAG_UpLeftLong = 0xf064,
170 IAG_UpRightLong = 0xf065,
171 IAG_DownLeftLong = 0xf066,
172 IAG_DownRightLong = 0xf067,
173 IAG_UpLeft = 0xf068,
174 IAG_UpRight = 0xf069,
175 IAG_DownLeft = 0xf06a,
176 IAG_DownRight = 0xf06b,
177 IAG_LeftUp = 0xf06c,
178 IAG_LeftDown = 0xf06d,
179 IAG_RightUp = 0xf06e,
180 IAG_RightDown = 0xf06f,
181 IAG_Exclamation = 0xf0a4,
182 IAG_Tap = 0xf0f0,
183 IAG_DoubleTap = 0xf0f1
184} InkApplicationGesture;
185
186typedef enum InkCollectorEventInterest {
187 ICEI_DefaultEvents = -1,
188 ICEI_CursorDown = (ICEI_DefaultEvents+1),
189 ICEI_Stroke = (ICEI_CursorDown+1),
190 ICEI_NewPackets = (ICEI_Stroke+1),
191 ICEI_NewInAirPackets = (ICEI_NewPackets+1),
192 ICEI_CursorButtonDown = (ICEI_NewInAirPackets+1),
193 ICEI_CursorButtonUp = (ICEI_CursorButtonDown+1),
194 ICEI_CursorInRange = (ICEI_CursorButtonUp+1),
195 ICEI_CursorOutOfRange = (ICEI_CursorInRange+1),
196 ICEI_SystemGesture = (ICEI_CursorOutOfRange+1),
197 ICEI_TabletAdded = (ICEI_SystemGesture+1),
198 ICEI_TabletRemoved = (ICEI_TabletAdded+1),
199 ICEI_MouseDown = (ICEI_TabletRemoved+1),
200 ICEI_MouseMove = (ICEI_MouseDown+1),
201 ICEI_MouseUp = (ICEI_MouseMove+1),
202 ICEI_MouseWheel = (ICEI_MouseUp+1),
203 ICEI_DblClick = (ICEI_MouseWheel+1),
204 ICEI_AllEvents = (ICEI_DblClick+1)
205} InkCollectorEventInterest;
206
207typedef enum DISPID_InkCollectorEvent {
208 DISPID_ICEStroke = 1,
209 DISPID_ICECursorDown = (DISPID_ICEStroke+1),
210 DISPID_ICENewPackets = (DISPID_ICECursorDown+1),
211 DISPID_ICENewInAirPackets = (DISPID_ICENewPackets+1),
212 DISPID_ICECursorButtonDown = (DISPID_ICENewInAirPackets+1),
213 DISPID_ICECursorButtonUp = (DISPID_ICECursorButtonDown+1),
214 DISPID_ICECursorInRange = (DISPID_ICECursorButtonUp+1),
215 DISPID_ICECursorOutOfRange = (DISPID_ICECursorInRange+1),
216 DISPID_ICESystemGesture = (DISPID_ICECursorOutOfRange+1),
217 DISPID_ICEGesture = (DISPID_ICESystemGesture+1),
218 DISPID_ICETabletAdded = (DISPID_ICEGesture+1),
219 DISPID_ICETabletRemoved = (DISPID_ICETabletAdded+1),
220 DISPID_IOEPainting = (DISPID_ICETabletRemoved+1),
221 DISPID_IOEPainted = (DISPID_IOEPainting+1),
222 DISPID_IOESelectionChanging = (DISPID_IOEPainted+1),
223 DISPID_IOESelectionChanged = (DISPID_IOESelectionChanging+1),
224 DISPID_IOESelectionMoving = (DISPID_IOESelectionChanged+1),
225 DISPID_IOESelectionMoved = (DISPID_IOESelectionMoving+1),
226 DISPID_IOESelectionResizing = (DISPID_IOESelectionMoved+1),
227 DISPID_IOESelectionResized = (DISPID_IOESelectionResizing+1),
228 DISPID_IOEStrokesDeleting = (DISPID_IOESelectionResized+1),
229 DISPID_IOEStrokesDeleted = (DISPID_IOEStrokesDeleting+1),
230 DISPID_IPEChangeUICues = (DISPID_IOEStrokesDeleted+1),
231 DISPID_IPEClick = (DISPID_IPEChangeUICues+1),
232 DISPID_IPEDblClick = (DISPID_IPEClick+1),
233 DISPID_IPEInvalidated = (DISPID_IPEDblClick+1),
234 DISPID_IPEMouseDown = (DISPID_IPEInvalidated+1),
235 DISPID_IPEMouseEnter = (DISPID_IPEMouseDown+1),
236 DISPID_IPEMouseHover = (DISPID_IPEMouseEnter+1),
237 DISPID_IPEMouseLeave = (DISPID_IPEMouseHover+1),
238 DISPID_IPEMouseMove = (DISPID_IPEMouseLeave+1),
239 DISPID_IPEMouseUp = (DISPID_IPEMouseMove+1),
240 DISPID_IPEMouseWheel = (DISPID_IPEMouseUp+1),
241 DISPID_IPESizeModeChanged = (DISPID_IPEMouseWheel+1),
242 DISPID_IPEStyleChanged = (DISPID_IPESizeModeChanged+1),
243 DISPID_IPESystemColorsChanged = (DISPID_IPEStyleChanged+1),
244 DISPID_IPEKeyDown = (DISPID_IPESystemColorsChanged+1),
245 DISPID_IPEKeyPress = (DISPID_IPEKeyDown+1),
246 DISPID_IPEKeyUp = (DISPID_IPEKeyPress+1),
247 DISPID_IPEResize = (DISPID_IPEKeyUp+1),
248 DISPID_IPESizeChanged = (DISPID_IPEResize+1)
249} DISPID_InkCollectorEvent;
250
251
252interface IInkDisp;
253interface IInkStrokes;
254interface IInkRecognitionAlternate;
255
256[
257 object,
258 uuid(db489209-b7c3-411d-90f6-1548cfff271e),
259 dual
260]
261interface IInkExtendedProperty : IDispatch
262{
263 [propget] HRESULT Guid([out, retval] BSTR *Guid);
264 [propget] HRESULT Data([out, retval] VARIANT *Data);
265 [propput] HRESULT Data([in] VARIANT Data);
266}
267
268[
269 object,
270 uuid(89f2a8be-95a9-4530-8b8f-88e971e3e25f),
271 dual
272]
273interface IInkExtendedProperties : IDispatch
274{
275 [propget] HRESULT Count([out, retval] long *Count);
276 [propget] HRESULT _NewEnum([out, retval] IUnknown **_NewEnum);
277 HRESULT Item([in] VARIANT Identifier, [out, retval] IInkExtendedProperty **Item);
278 HRESULT Add([in] BSTR Guid, [in] VARIANT Data, [out, retval] IInkExtendedProperty **InkExtendedProperty);
279 HRESULT Remove([in] VARIANT Identifier);
280 HRESULT Clear();
281 HRESULT DoesPropertyExist([in] BSTR Guid, [out, retval] VARIANT_BOOL *DoesPropertyExist);
282}
283
284[
285 object,
286 uuid(bf519b75-0a15-4623-adc9-c00d436a8092),
287 dual
288]
289interface IInkDrawingAttributes : IDispatch
290{
291 [propget] HRESULT Color([out] long *CurrentColor);
292 [propput] HRESULT Color([in] long NewColor);
293 [propget] HRESULT Width([out, retval] float *CurrentWidth);
294 [propput] HRESULT Width([in] float NewWidth);
295 [propget] HRESULT Height([out, retval] float *CurrentHeight);
296 [propput] HRESULT Height([in] float NewHeight);
297 [propget] HRESULT FitToCurve([out, retval] VARIANT_BOOL *Flag);
298 [propput] HRESULT FitToCurve([in] VARIANT_BOOL Flag);
299 [propget] HRESULT IgnorePressure([out, retval] VARIANT_BOOL *Flag);
300 [propput] HRESULT IgnorePressure([in] VARIANT_BOOL Flag);
301 [propget] HRESULT AntiAliased([out, retval] VARIANT_BOOL *Flag);
302 [propput] HRESULT AntiAliased([in] VARIANT_BOOL Flag);
303 [propget] HRESULT Transparency([out, retval] long *CurrentTransparency);
304 [propput] HRESULT Transparency([in] long NewTransparency);
305 [propget] HRESULT RasterOperation([out, retval] InkRasterOperation *CurrentRasterOperation);
306 [propput] HRESULT RasterOperation([in] InkRasterOperation NewRasterOperation);
307 [propget] HRESULT PenTip([out, retval] InkPenTip *CurrentPenTip);
308 [propput] HRESULT PenTip([in] InkPenTip NewPenTip);
309 [propget] HRESULT ExtendedProperties([out, retval] IInkExtendedProperties **Properties);
310 HRESULT Clone([out, retval] IInkDrawingAttributes **DrawingAttributes);
311}
312
313[
314 object,
315 uuid(9794ff82-6071-4717-8a8b-6ac7c64a686e),
316 dual
317]
318interface IInkRectangle : IDispatch
319{
320 [propget] HRESULT Top([out, retval] long *Units);
321 [propput] HRESULT Top([in] long Units);
322 [propget] HRESULT Left([out, retval] long *Units);
323 [propput] HRESULT Left([in] long Units);
324 [propget] HRESULT Bottom([out, retval] long *Units);
325 [propput] HRESULT Bottom([in] long Units);
326 [propget] HRESULT Right([out, retval] long *Units);
327 [propput] HRESULT Right([in] long Units);
328 [propget] HRESULT Data([out, retval] RECT *Rect);
329 [propput] HRESULT Data([in] RECT Rect);
330 HRESULT GetRectangle([out] long *Top, [out] long *Left, [out] long *Bottom, [out] long *Right);
331 HRESULT SetRectangle([in] long Top, [in] long Left, [in] long Bottom, [in] long Right);
332}
333
334[
335 object,
336 uuid(2de25eaa-6ef8-42d5-aee9-185bc81b912d),
337 dual
338]
339interface IInkTablet : IDispatch
340{
341 [propget] HRESULT Name([out, retval] BSTR *Name);
342 [propget] HRESULT PlugAndPlayId([out, retval] BSTR *Id);
343 [propget] HRESULT MaximumInputRectangle([out, retval] IInkRectangle **Rectangle);
344 [propget] HRESULT HardwareCapabilities([out, retval] TabletHardwareCapabilities *Capabilities);
345 HRESULT IsPacketPropertySupported([in] BSTR packetPropertyName, [out, retval] VARIANT_BOOL *Supported);
346 HRESULT GetPropertyMetrics([in] BSTR propertyName, [out] long *Minimum, [out] long *Maximum,
347 [out] TabletPropertyMetricUnit *Units, [out] float *Resolution);
348}
349
350[
351 object,
352 uuid(85ef9417-1d59-49b2-a13c-702c85430894),
353 dual
354]
355interface IInkCursorButton : IDispatch
356{
357 [propget] HRESULT Name([out, retval] BSTR *Name);
358 [propget] HRESULT Id([out, retval] BSTR *Id);
359 [propget] HRESULT State([out, retval] InkCursorButtonState *CurrentState);
360}
361
362[
363 object,
364 uuid(3671cC40-b624-4671-9fa0-db119d952d54),
365 dual
366]
367interface IInkCursorButtons : IDispatch
368{
369 [propget] HRESULT Count([out, retval] long *Count);
370 [propget] HRESULT _NewEnum([out, retval] IUnknown **_NewEnum);
371 HRESULT Item([in] VARIANT Identifier, [out, retval] IInkCursorButton **Button);
372}
373
374[
375 object,
376 uuid(ad30c630-40c5-4350-8405-9c71012fc558),
377 dual
378]
379interface IInkCursor : IDispatch
380{
381 [propget] HRESULT Name([out, retval] BSTR *Name);
382 [propget] HRESULT Id([out, retval] long *Id);
383 [propget] HRESULT Inverted([out, retval] VARIANT_BOOL *Status);
384 [propget] HRESULT DrawingAttributes([out, retval] IInkDrawingAttributes **Attributes);
385 [propputref] HRESULT DrawingAttributes([in] IInkDrawingAttributes *Attributes);
386 [propget] HRESULT Tablet([out, retval] IInkTablet **Tablet);
387 [propget] HRESULT Buttons([out, retval] IInkCursorButtons **Buttons);
388}
389
390[
391 object,
392 uuid(615f1d43-8703-4565-88e2-8201d2ecd7b7),
393 dual
394]
395interface IInkTransform : IDispatch
396{
397 HRESULT Reset();
398 HRESULT Translate([in] float HorizontalComponent, [in] float VerticalComponent);
399 HRESULT Rotate([in] float Degrees, [in, defaultvalue(0)] float x, [in, defaultvalue(0)] float y);
400 HRESULT Reflect([in] VARIANT_BOOL Horizontally, [in] VARIANT_BOOL Vertically);
401 HRESULT Shear([in] float HorizontalComponent, [in] float VerticalComponent);
402 HRESULT ScaleTransform([in] float HorizontalMultiplier, [in] float VerticalMultiplier);
403 HRESULT GetTransform([out] float *eM11, [out] float *eM12, [out] float *eM21, [out] float *eM22,
404 [out] float *eDx, [out] float *eDy);
405 HRESULT SetTransform([in] float eM11, [in] float eM12, [in] float eM21, [in] float eM22, [in] float eDx, [in] float eDy);
406 [propget, hidden] HRESULT eM11([out, retval] float *Value);
407 [propput, hidden] HRESULT eM11([in] float Value);
408 [propget, hidden] HRESULT eM12([out, retval] float *Value);
409 [propput, hidden] HRESULT eM12([in] float Value);
410 [propget, hidden] HRESULT eM21([out, retval] float *Value);
411 [propput, hidden] HRESULT eM21([in] float Value);
412 [propget, hidden] HRESULT eM22([out, retval] float *Value);
413 [propput, hidden] HRESULT eM22([in] float Value);
414 [propget, hidden] HRESULT eDx([out, retval] float *Value);
415 [propput, hidden] HRESULT eDx([in] float Value);
416 [propget, hidden] HRESULT eDy([out, retval] float *Value);
417 [propput, hidden] HRESULT eDy([in] float Value);
418 [propget, hidden] HRESULT Data([out, retval] XFORM *XForm);
419 [propput, hidden] HRESULT Data([in] XFORM XForm);
420}
421
422[
423 object,
424 uuid(286a167f-9f19-4c61-9d53-4f07be622b84),
425 dual
426]
427interface IInkRecognitionAlternates : IDispatch
428{
429 [propget] HRESULT Count([out, retval] long *Count);
430 [propget, restricted] HRESULT _NewEnum([out, retval] IUnknown **_NewEnum);
431 [propget] HRESULT Strokes([out, retval] IInkStrokes **Strokes);
432 HRESULT Item([in] long Index, [out, retval] IInkRecognitionAlternate **InkRecoAlternate);
433}
434
435[
436 object,
437 uuid(b7e660ad-77e4-429b-adda-873780d1fc4a),
438 dual
439]
440interface IInkRecognitionAlternate : IDispatch
441{
442 [propget] HRESULT String([out, retval] BSTR *RecoString);
443 [propget] HRESULT Confidence([out, retval] InkRecognitionConfidence *Confidence) ;
444 [propget] HRESULT Baseline([out, retval] VARIANT *Baseline);
445 [propget] HRESULT Midline([out, retval] VARIANT *Midline);
446 [propget] HRESULT Ascender([out, retval] VARIANT *Ascender);
447 [propget] HRESULT Descender([out, retval] VARIANT *Descender);
448 [propget] HRESULT LineNumber([out, retval] long *LineNumber);
449 [propget] HRESULT Strokes([out, retval] IInkStrokes **Strokes);
450 [propget] HRESULT LineAlternates([out, retval] IInkRecognitionAlternates **LineAlternates);
451 [propget] HRESULT ConfidenceAlternates([out, retval] IInkRecognitionAlternates **ConfidenceAlternates);
452 HRESULT GetStrokesFromStrokeRanges([in] IInkStrokes *Strokes, [out, retval] IInkStrokes **GetStrokesFromStrokeRanges);
453 HRESULT GetStrokesFromTextRange([in, out] long *selectionStart, [in, out] long *selectionLength,
454 [out, retval] IInkStrokes **GetStrokesFromTextRange);
455 HRESULT GetTextRangeFromStrokes([in] IInkStrokes *Strokes, [in, out] long *selectionStart, [in, out] long *selectionLength);
456 HRESULT AlternatesWithConstantPropertyValues([in] BSTR PropertyType,
457 [out, retval] IInkRecognitionAlternates **AlternatesWithConstantPropertyValues);
458 HRESULT GetPropertyValue([in] BSTR PropertyType, [out, retval] VARIANT *PropertyValue);
459}
460
461[
462 object,
463 uuid(3bc129a8-86cd-45ad-bde8-e0d32d61c16d),
464 dual
465]
466interface IInkRecognitionResult : IDispatch
467{
468 [propget] HRESULT TopString([out, retval] BSTR *TopString);
469 [propget] HRESULT TopAlternate([out, retval] IInkRecognitionAlternate **TopAlternate);
470 [propget] HRESULT TopConfidence([out, retval] InkRecognitionConfidence *TopConfidence);
471 [propget] HRESULT Strokes([out, retval] IInkStrokes **Strokes);
472 HRESULT AlternatesFromSelection([in] long selectionStart, [in] long selectionLength, [in] long maximumAlternates,
473 [out, retval] IInkRecognitionAlternates **AlternatesFromSelection);
474 HRESULT ModifyTopAlternate([in] IInkRecognitionAlternate *Alternate);
475 HRESULT SetResultOnStrokes();
476}
477
478[
479 object,
480 uuid(43242fea-91d1-4a72-963e-fbb91829cfa2),
481 dual
482]
483interface IInkStrokeDisp : IDispatch
484{
485 [propget] HRESULT ID([out, retval] long *ID);
486 [propget] HRESULT BezierPoints([out, retval] VARIANT *Points);
487 [propget] HRESULT DrawingAttributes([out, retval] IInkDrawingAttributes **DrawAttrs);
488 [propputref] HRESULT DrawingAttributes([in] IInkDrawingAttributes *DrawAttrs);
489 [propget] HRESULT Ink([out, retval] IInkDisp **Ink);
490 [propget] HRESULT ExtendedProperties([out, retval] IInkExtendedProperties **Properties);
491 [propget] HRESULT PolylineCusps([out, retval] VARIANT *Cusps);
492 [propget] HRESULT BezierCusps([out, retval] VARIANT *Cusps);
493 [propget] HRESULT SelfIntersections([out, retval] VARIANT *Intersections);
494 [propget] HRESULT PacketCount([out, retval] long *plCount);
495 [propget] HRESULT PacketSize([out, retval] long *plSize);
496 [propget] HRESULT PacketDescription([out, retval] VARIANT *PacketDescription);
497 [propget] HRESULT Deleted([out, retval] VARIANT_BOOL *Deleted);
498 HRESULT GetBoundingBox([in] InkBoundingBoxMode BoundingBoxMode, [out, retval] IInkRectangle **Rectangle);
499 HRESULT FindIntersections([in] IInkStrokes *Strokes, [out, retval] VARIANT *Intersections);
500 HRESULT GetRectangleIntersections([in] IInkRectangle *Rectangle, [out, retval] VARIANT *Intersections);
501 HRESULT Clip([in] IInkRectangle *Rectangle);
502 HRESULT HitTestCircle([in] long X, [in] long Y, [in] float Radius, [out, retval] VARIANT_BOOL *Intersects);
503 HRESULT NearestPoint([in] long X, [in] long Y, [in, out] float *Distance, [out, retval] float *Point);
504 HRESULT Split([in] float SplitAt, [out, retval] IInkStrokeDisp **NewStroke);
505 HRESULT GetPacketDescriptionPropertyMetrics([in] BSTR PropertyName, [out] long *Minimum, [out] long *Maximum,
506 [out] TabletPropertyMetricUnit *Units, [out] float *Resolution);
507 HRESULT GetPoints([in] long Index, [in] long Count, [out, retval] VARIANT *Points);
508 HRESULT SetPoints([in] VARIANT Points, [in] long Index, [in] long Count, [out, retval] long *NumberOfPointsSet);
509 HRESULT GetPacketData([in] long Index, [in] long Count, [out, retval] VARIANT *PacketData);
510 HRESULT GetPacketValuesByProperty([in] BSTR PropertyName, [in] long Index, [in] long Count,
511 [out, retval] VARIANT *PacketValues) ;
512 HRESULT SetPacketValuesByProperty([in] BSTR bstrPropertyName, [in] VARIANT PacketValues, [in] long Index,
513 [in] long Count, [out, retval] long *NumberOfPacketsSet);
514 HRESULT GetFlattenedBezierPoints([in] long FittingError, [out, retval] VARIANT *FlattenedBezierPoints);
515 HRESULT Transform([in] IInkTransform *Transform, [in, defaultvalue(0)] VARIANT_BOOL ApplyOnPenWidth);
516 HRESULT ScaleToRectangle([in] IInkRectangle *Rectangle);
517 HRESULT Move([in] float HorizontalComponent, [in] float VerticalComponent);
518 HRESULT Rotate([in] float Degrees, [in, defaultvalue(0)] float x, [in, defaultvalue(0)] float y);
519 HRESULT Shear([in] float HorizontalMultiplier, [in] float VerticalMultiplier);
520 HRESULT ScaleTransform([in] float HorizontalMultiplier, [in] float VerticalMultiplier);
521}
522
523[
524 object,
525 uuid(7e23a88f-c30e-420f-9bdb-28902543f0c1),
526 dual
527]
528interface IInkCustomStrokes : IDispatch
529{
530 [propget] HRESULT Count([out, retval] long *Count);
531 [propget, restricted] HRESULT _NewEnum([out, retval] IUnknown **_NewEnum);
532 HRESULT Item([in] VARIANT Identifier, [out, retval] IInkStrokes **Strokes);
533 HRESULT Add([in] BSTR Name, [in] IInkStrokes *Strokes);
534 HRESULT Remove([in] VARIANT Identifier);
535 HRESULT Clear();
536}
537
538[
539 object,
540 uuid(9d398fa0-c4e2-4fcd-9973-975caaf47ea6),
541 dual
542]
543interface IInkDisp : IDispatch
544{
545 [propget] HRESULT Strokes([out, retval] IInkStrokes **Strokes);
546 [propget] HRESULT ExtendedProperties([out, retval] IInkExtendedProperties **Properties);
547 [propget] HRESULT Dirty([out, retval] VARIANT_BOOL *Dirty);
548 [propput] HRESULT Dirty([in] VARIANT_BOOL Dirty);
549 [propget] HRESULT CustomStrokes([out, retval] IInkCustomStrokes **ppunkInkCustomStrokes);
550 HRESULT GetBoundingBox([in] InkBoundingBoxMode BoundingBoxMode, [out, retval] IInkRectangle **Rectangle);
551 HRESULT DeleteStrokes([in, unique, defaultvalue(0)] IInkStrokes *Strokes);
552 HRESULT DeleteStroke([in] IInkStrokeDisp *Stroke);
553 HRESULT ExtractStrokes([in] IInkStrokes *Strokes, InkExtractFlags ExtractFlags, [out, retval] IInkDisp **ExtractedInk);
554 HRESULT ExtractWithRectangle([in] IInkRectangle *Rectangle, [in] InkExtractFlags extractFlags,
555 [out, retval] IInkDisp **ExtractedInk);
556 HRESULT Clip([in] IInkRectangle *Rectangle);
557 HRESULT Clone([out, retval] IInkDisp **NewInk);
558 HRESULT HitTestCircle([in] long X, [in] long Y, [in] float radius, [out, retval] IInkStrokes **Strokes);
559 HRESULT HitTestWithRectangle([in] IInkRectangle *SelectionRectangle, [in] float IntersectPercent,
560 [out, retval] IInkStrokes **Strokes);
561 HRESULT HitTestWithLasso([in] VARIANT Points, [in] float IntersectPercent, [in, out, unique] VARIANT *LassoPoints,
562 [out, retval] IInkStrokes **Strokes);
563 HRESULT NearestPoint([in] long X, [in] long Y, [in, out] float *PointOnStroke, [in, out] float *DistanceFromPacket,
564 [out, retval] IInkStrokeDisp **Stroke);
565 HRESULT CreateStrokes([in] VARIANT StrokeIds, [out, retval] IInkStrokes **Strokes);
566 HRESULT AddStrokesAtRectangle([in] IInkStrokes *SourceStrokes, [in] IInkRectangle *TargetRectangle);
567 HRESULT Save([in] InkPersistenceFormat PersistenceFormat, [in] InkPersistenceCompressionMode CompressionMode,
568 [out, retval] VARIANT *Data);
569 HRESULT Load([in] VARIANT Data);
570 HRESULT CreateStroke([in] VARIANT PacketData, [in] VARIANT PacketDescription, [out, retval] IInkStrokeDisp **Stroke);
571 HRESULT ClipboardCopyWithRectangle([in] IInkRectangle *Rectangle, [in] InkClipboardFormats ClipboardFormats,
572 [in] InkClipboardModes ClipboardModes, [out, retval] IDataObject **DataObject);
573 HRESULT ClipboardCopy([in] IInkStrokes *strokes, [in] InkClipboardFormats ClipboardFormats,
574 [in] InkClipboardModes ClipboardModes, [out, retval] IDataObject **DataObject);
575 HRESULT CanPaste([in] IDataObject *DataObject, [out, retval] VARIANT_BOOL *CanPaste);
576 HRESULT ClipboardPaste([in] long x, [in] long y, [in, unique] IDataObject *DataObject, [out, retval] IInkStrokes **Strokes);
577}
578
579[
580 object,
581 uuid(f1f4c9d8-590a-4963-b3ae-1935671bb6f3),
582 dual
583]
584interface IInkStrokes : IDispatch
585{
586 [propget] HRESULT Count([out, retval] long *Count);
587 [propget] HRESULT _NewEnum([out, retval] IUnknown **_NewEnum);
588 [propget] HRESULT Ink([out, retval] IInkDisp **Ink);
589 [propget] HRESULT RecognitionResult([out, retval] IInkRecognitionResult **RecognitionResult);
590 HRESULT ToString([out, retval] BSTR *ToString);
591 HRESULT Item([in] long Index, [out, retval] IInkStrokeDisp **Stroke);
592 HRESULT Add([in] IInkStrokeDisp *InkStroke);
593 HRESULT AddStrokes([in] IInkStrokes *InkStrokes);
594 HRESULT Remove([in] IInkStrokeDisp *InkStroke);
595 HRESULT RemoveStrokes([in] IInkStrokes *InkStrokes);
596 HRESULT ModifyDrawingAttributes([in] IInkDrawingAttributes *DrawAttrs);
597 HRESULT GetBoundingBox([in] InkBoundingBoxMode BoundingBoxMode, [out, retval] IInkRectangle **BoundingBox);
598 HRESULT Transform([in] IInkTransform *Transform, [in, defaultvalue(0)] VARIANT_BOOL ApplyOnPenWidth);
599 HRESULT ScaleToRectangle([in] IInkRectangle *Rectangle);
600 HRESULT Move([in] float HorizontalComponent, [in] float VerticalComponent);
601 HRESULT Rotate([in] float Degrees, [in, defaultvalue(0)] float x, [in, defaultvalue(0)] float y);
602 HRESULT Shear([in] float HorizontalMultiplier, [in] float VerticalMultiplier);
603 HRESULT ScaleTransform([in] float HorizontalMultiplier, [in] float VerticalMultiplier);
604 HRESULT Clip([in] IInkRectangle *Rectangle);
605 HRESULT RemoveRecognitionResult();
606}
607
608[
609 object,
610 uuid(e6257a9c-b511-4f4c-a8b0-a7dbc9506b83),
611 dual
612]
613interface IInkRenderer : IDispatch
614{
615 HRESULT GetViewTransform([in] IInkTransform *ViewTransform) ;
616 HRESULT SetViewTransform([in] IInkTransform *ViewTransform);
617 HRESULT GetObjectTransform([in] IInkTransform *ObjectTransform);
618 HRESULT SetObjectTransform([in] IInkTransform *ObjectTransform);
619 HRESULT Draw([in] LONG_PTR hDC, [in] IInkStrokes *Strokes);
620 HRESULT DrawStroke([in] LONG_PTR hDC, [in] IInkStrokeDisp *Stroke,
621 [in, defaultvalue(0)] IInkDrawingAttributes *DrawingAttributes);
622 HRESULT PixelToInkSpace([in] LONG_PTR hDC, [in, out] long *x, [in, out] long *y);
623 HRESULT InkSpaceToPixel([in] LONG_PTR hdcDisplay, [in, out] long *x, [in, out] long *y);
624 HRESULT PixelToInkSpaceFromPoints([in] LONG_PTR hDC, [in, out] VARIANT *Points);
625 HRESULT InkSpaceToPixelFromPoints([in] LONG_PTR hDC, [in, out] VARIANT *Points);
626 HRESULT Measure([in] IInkStrokes *Strokes, [out, retval] IInkRectangle **Rectangle);
627 HRESULT MeasureStroke([in] IInkStrokeDisp *Stroke, [in] IInkDrawingAttributes *DrawingAttributes,
628 [out, retval] IInkRectangle **Rectangle);
629 HRESULT Move([in] float HorizontalComponent, [in] float VerticalComponent);
630 HRESULT Rotate([in] float Degrees, [in, defaultvalue(0)] float x, [in, defaultvalue(0)] float y);
631 HRESULT ScaleTransform([in] float HorizontalMultiplier, [in] float VerticalMultiplier,
632 [in, defaultvalue(-1)] VARIANT_BOOL ApplyOnPenWidth);
633}
634
635[
636 object,
637 uuid(a248c1ac-c698-4e06-9e5c-d57f77c7e647),
638 dual
639]
640interface IInkCursors : IDispatch
641{
642 [propget] HRESULT Count([out, retval] long *Count);
643 [propget, restricted] HRESULT _NewEnum([out, retval] IUnknown **_NewEnum);
644 HRESULT Item([in] long Index, [out, retval] IInkCursor **Cursor);
645}
646
647[
648 object,
649 uuid(f0f060b5-8b1f-4a7c-89ec-880692588a4f),
650 dual
651]
652interface IInkCollector : IDispatch
653{
654 [propget] HRESULT hWnd([out, retval] LONG_PTR *CurrentWindow);
655 [propput] HRESULT hWnd([in] LONG_PTR NewWindow);
656 [propget] HRESULT Enabled([out, retval] VARIANT_BOOL *Collecting);
657 [propput] HRESULT Enabled([in] VARIANT_BOOL Collecting);
658 [propget] HRESULT DefaultDrawingAttributes([out, retval] IInkDrawingAttributes **CurrentAttributes);
659 [propputref] HRESULT DefaultDrawingAttributes([in] IInkDrawingAttributes *NewAttributes);
660 [propget] HRESULT Renderer([out, retval] IInkRenderer **CurrentInkRenderer);
661 [propputref] HRESULT Renderer([in] IInkRenderer *NewInkRenderer);
662 [propget] HRESULT Ink([out, retval] IInkDisp **Ink);
663 [propputref] HRESULT Ink([in] IInkDisp *NewInk);
664 [propget] HRESULT AutoRedraw([out, retval] VARIANT_BOOL *AutoRedraw);
665 [propput] HRESULT AutoRedraw([in] VARIANT_BOOL AutoRedraw);
666 [propget] HRESULT CollectingInk([out, retval] VARIANT_BOOL *Collecting);
667 [propget] HRESULT CollectionMode([out, retval] InkCollectionMode *Mode);
668 [propput] HRESULT CollectionMode([in] InkCollectionMode Mode);
669 [propget] HRESULT DynamicRendering([out, retval] VARIANT_BOOL *Enabled);
670 [propput] HRESULT DynamicRendering([in] VARIANT_BOOL Enabled);
671 [propget] HRESULT DesiredPacketDescription([out, retval] VARIANT *PacketGuids);
672 [propput] HRESULT DesiredPacketDescription([in] VARIANT PacketGuids);
673 [propget] HRESULT MouseIcon([out, retval] IPictureDisp **MouseIcon);
674 [propput] HRESULT MouseIcon([in, unique] IPictureDisp *MouseIcon);
675 [propputref] HRESULT MouseIcon([in, unique] IPictureDisp *MouseIcon);
676 [propget] HRESULT MousePointer([out, retval] InkMousePointer *MousePointer);
677 [propput] HRESULT MousePointer([in] InkMousePointer MousePointer);
678 [propget] HRESULT Cursors([out, retval] IInkCursors **Cursors);
679 [propget] HRESULT MarginX([out, retval] long *MarginX);
680 [propput] HRESULT MarginX([in] long MarginX);
681 [propget] HRESULT MarginY([out, retval] long *MarginY);
682 [propput] HRESULT MarginY([in] long MarginY);
683 [propget] HRESULT Tablet([out, retval] IInkTablet **SingleTablet);
684 [propget] HRESULT SupportHighContrastInk([out, retval] VARIANT_BOOL *Support);
685 [propput] HRESULT SupportHighContrastInk([in] VARIANT_BOOL Support);
686 HRESULT SetGestureStatus([in] InkApplicationGesture Gesture, [in] VARIANT_BOOL Listen);
687 HRESULT GetGestureStatus([in] InkApplicationGesture Gesture, [out, retval] VARIANT_BOOL *Listening);
688 HRESULT GetWindowInputRectangle([in, out] IInkRectangle **WindowInputRectangle);
689 HRESULT SetWindowInputRectangle([in] IInkRectangle *WindowInputRectangle);
690 HRESULT SetAllTabletsMode([in, defaultvalue(-1)] VARIANT_BOOL UseMouseForInput);
691 HRESULT SetSingleTabletIntegratedMode([in] IInkTablet *Tablet);
692 HRESULT GetEventInterest([in] InkCollectorEventInterest EventId, [out, retval] VARIANT_BOOL *Listen);
693 HRESULT SetEventInterest([in] InkCollectorEventInterest EventId, [in] VARIANT_BOOL Listen);
694}
695
696[
697 uuid(11a583f2-712d-4fea-abcf-ab4af38ea06b)
698]
699dispinterface _IInkCollectorEvents
700{
701 properties:
702 methods:
703 /* FIXME */
704}
705
706[
707 uuid(43fb1553-ad74-4ee8-88e4-3e6daac915db)
708]
709coclass InkCollector
710{
711}
Note: See TracBrowser for help on using the repository browser.