VirtualBox

source: vbox/trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/msinkaut.idl@ 19982

Last change on this file since 19982 was 19678, checked in by vboxsync, 16 years ago

opengl: update wine to 1.1.21, add d3d9.dll to build list

  • Property svn:eol-style set to native
File size: 37.7 KB
Line 
1/* Copyright (C) 2007 C John Klehm
2 *
3 * This library is free software; you can redistribute it and/or
4 * modify it under the terms of the GNU Lesser General Public
5 * License as published by the Free Software Foundation; either
6 * version 2.1 of the License, or (at your option) any later version.
7 *
8 * This library is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11 * Lesser General Public License for more details.
12 *
13 * You should have received a copy of the GNU Lesser General Public
14 * License along with this library; if not, write to the Free Software
15 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
16 */
17
18/*
19 * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
20 * other than GPL or LGPL is available it will apply instead, Sun elects to use only
21 * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
22 * a choice of LGPL license versions is made available with the language indicating
23 * that LGPLv2 or any later version may be used, or where a choice of which version
24 * of the LGPL is applied is otherwise unspecified.
25 */
26
27import "oaidl.idl";
28import "ocidl.idl";
29
30[
31 uuid(7D868ACD-1A5D-4A47-A247-F39741353012),
32 version(1.0)
33]
34library MSINKAUTLib
35{
36 importlib("stdole2.tlb");
37
38 typedef float single;
39
40 typedef enum InkBoundingBoxMode {
41 IBBM_Default = 0,
42 IBBM_NoCurveFit = 1,
43 IBBM_CurveFit = 2,
44 IBBM_PointsOnly = 3,
45 IBBM_Union = 4
46 } InkBoundingBoxMode;
47
48 typedef enum InkExtractFlags {
49 IEF_CopyFromOriginal = 0x0,
50 IEF_RemoveFromOriginal = 0x1,
51 IEF_Default = IEF_RemoveFromOriginal
52 } InkExtractFlags;
53
54 typedef enum InkPersistenceFormat {
55 IPF_InkSerializeFormat = 0,
56 IPF_Base64InkSerializedFormat = 1,
57 IPF_GIF = 2,
58 IPF_Base64GIF = 3
59 } InkPersistenceFormat;
60
61 typedef enum InkPersistenceCompressionMode
62 {
63 IPCM_Default = 0,
64 IPCM_MaximumCompression = 1,
65 IPCM_NoCompression = 2
66 } InkPersistenceCompressionMode;
67
68 typedef enum InkPenTip {
69 IPT_Ball = 0,
70 IPT_Rectangle = 1
71 } InkPenTip;
72
73 typedef enum InkRasterOperation {
74 IRO_Black = 1,
75 IRO_NotMergePen,
76 IRO_MaskNotPen,
77 IRO_NotCopyPen,
78 IRO_MaskPenNot,
79 IRO_Not,
80 IRO_XOrPen,
81 IRO_NotMaskPen,
82 IRO_MaskPen,
83 IRO_NotXOrPen,
84 IRO_NoOperation,
85 IRO_MergeNotPen,
86 IRO_CopyPen,
87 IRO_MergePenNot,
88 IRO_MergePen,
89 IRO_White
90 } InkRasterOperation;
91
92 typedef enum InkClipboardModes {
93 ICB_Copy = 0,
94 ICB_Cut = 0x1,
95 ICB_DelayedCopy = 0x20,
96 ICB_ExtractOnly = 0x30,
97 ICB_Default = ICB_Copy
98 } InkClipboardModes;
99
100 typedef enum InkClipboardFormats {
101 ICF_None = 0,
102 ICF_InkSerializedFormat = 0x1,
103 ICF_SketchInk = 0x2,
104 ICF_TextInk = 0x6,
105 ICF_EnhancedMetafile = 0x8,
106 ICF_Metafile = 0x20,
107 ICF_Bitmap = 0x40,
108 ICF_PasteMask = 0x7,
109 ICF_CopyMask = 0x7f,
110 ICF_Default = ICF_CopyMask
111 } InkClipboardFormats;
112
113 typedef enum InkRecognitionConfidence
114 {
115 IRC_Strong = 0,
116 IRC_Intermediate = 1,
117 IRC_Poor = 2
118 } InkRecognitionConfidence;
119
120 [
121 odl,
122 uuid(DB489209-B7C3-411D-90F6-1548CFFF271E),
123 dual,
124 oleautomation
125 ]
126 interface IInkExtendedProperty : IDispatch {
127 [id(0x00000001), propget] HRESULT Guid([out, retval] BSTR* Guid);
128 [id(0x00000002), propget] HRESULT Data([out, retval] VARIANT* Data);
129 [id(0x00000002), propput] HRESULT Data([in] VARIANT Data);
130 };
131
132 [
133 odl,
134 uuid(89F2A8BE-95A9-4530-8B8F-88E971E3E25F),
135 dual,
136 oleautomation
137 ]
138 interface IInkExtendedProperties : IDispatch {
139 HRESULT Count([out, retval] long* Count);
140 HRESULT _NewEnum([out, retval] IUnknown** _NewEnum);
141 HRESULT Item(
142 [in] VARIANT Identifier,
143 [out, retval] IInkExtendedProperty** Item);
144 HRESULT Add(
145 [in] BSTR Guid,
146 [in] VARIANT Data,
147 [out, retval] IInkExtendedProperty** InkExtendedProperty);
148 HRESULT Remove([in] VARIANT Identifier);
149 HRESULT Clear();
150 HRESULT DoesPropertyExist(
151 [in] BSTR Guid,
152 [out, retval] VARIANT_BOOL* DoesPropertyExist);
153 };
154
155 [
156 odl,
157 uuid(BF519B75-0A15-4623-ADC9-C00D436A8092),
158 dual,
159 oleautomation
160 ]
161 interface IInkDrawingAttributes : IDispatch {
162 [id(0x00000002), propget] HRESULT Color(
163 [out, retval] long* CurrentColor);
164 [id(0x00000002), propput] HRESULT Color([in] long CurrentColor);
165 [id(0x00000003), propget] HRESULT Width(
166 [out, retval] single* CurrentWidth);
167 [id(0x00000003), propput] HRESULT Width([in] single CurrentWidth);
168 [id(0x00000001), propget] HRESULT Height(
169 [out, retval] single* CurrentHeight);
170 [id(0x00000001), propput] HRESULT Height([in] single CurrentHeight);
171 [id(0x00000004), propget] HRESULT FitToCurve(
172 [out, retval] VARIANT_BOOL* Flag);
173 [id(0x00000004), propput] HRESULT FitToCurve([in] VARIANT_BOOL Flag);
174 [id(0x00000005), propget] HRESULT IgnorePressure(
175 [out, retval] VARIANT_BOOL* Flag);
176 [id(0x00000005), propput] HRESULT IgnorePressure(
177 [in] VARIANT_BOOL Flag);
178 [id(0x00000006), propget] HRESULT AntiAliased(
179 [out, retval] VARIANT_BOOL* Flag);
180 [id(0x00000006), propput] HRESULT AntiAliased([in] VARIANT_BOOL Flag);
181 [id(0x00000007), propget] HRESULT Transparency(
182 [out, retval] long* CurrentTransparency);
183 [id(0x00000007), propput] HRESULT Transparency(
184 [in] long CurrentTransparency);
185 [id(0x00000008), propget] HRESULT RasterOperation(
186 [out, retval] InkRasterOperation* CurrentRasterOperation);
187 [id(0x00000008), propput] HRESULT RasterOperation(
188 [in] InkRasterOperation CurrentRasterOperation);
189 [id(0x00000009), propget] HRESULT PenTip(
190 [out, retval] InkPenTip* CurrentPenTip);
191 [id(0x00000009), propput] HRESULT PenTip([in] InkPenTip CurrentPenTip);
192 [id(0x0000000b), propget] HRESULT ExtendedProperties(
193 [out, retval] IInkExtendedProperties** Properties);
194 [id(0x0000000a)] HRESULT Clone(
195 [out, retval] IInkDrawingAttributes** DrawingAttributes);
196 };
197
198cpp_quote("#ifndef _WINGDI_")
199/* already defined in wingdi.h but needed for WIDL */
200 typedef struct tagXFORM {
201 single eM11;
202 single eM12;
203 single eM21;
204 single eM22;
205 single eDx;
206 single eDy;
207 } XFORM;
208cpp_quote("#endif /* _WINGDI_ */")
209
210 [
211 odl,
212 uuid(615F1D43-8703-4565-88E2-8201D2ECD7B7),
213 dual,
214 oleautomation
215 ]
216 interface IInkTransform : IDispatch {
217 [id(0x00000001)] HRESULT Reset();
218 [id(0x00000002)] HRESULT Translate(
219 [in] single HorizontalComponent,
220 [in] single VerticalComponent);
221 [id(0x00000003)] HRESULT Rotate(
222 [in] single Degrees,
223 [in, optional, defaultvalue(0)] single x,
224 [in, optional, defaultvalue(0)] single y);
225 [id(0x00000004)] HRESULT Reflect(
226 [in] VARIANT_BOOL Horizontally,
227 [in] VARIANT_BOOL Vertically);
228 [id(0x00000005)] HRESULT Shear(
229 [in] single HorizontalComponent,
230 [in] single VerticalComponent);
231 [id(0x00000006)] HRESULT ScaleTransform(
232 [in] single HorizontalMultiplier,
233 [in] single VerticalMultiplier);
234 [id(0x0000000d)] HRESULT GetTransform(
235 [out] single* eM11,
236 [out] single* eM12,
237 [out] single* eM21,
238 [out] single* eM22,
239 [out] single* eDx,
240 [out] single* eDy);
241 [id(0x0000000e)] HRESULT SetTransform(
242 [in] single eM11,
243 [in] single eM12,
244 [in] single eM21,
245 [in] single eM22,
246 [in] single eDx,
247 [in] single eDy);
248 [id(0x00000007), propget, hidden] HRESULT eM11(
249 [out, retval] single* Value);
250 [id(0x00000007), propput, hidden] HRESULT eM11([in] single Value);
251 [id(0x00000008), propget, hidden] HRESULT eM12(
252 [out, retval] single* Value);
253 [id(0x00000008), propput, hidden] HRESULT eM12([in] single Value);
254 [id(0x00000009), propget, hidden] HRESULT eM21(
255 [out, retval] single* Value);
256 [id(0x00000009), propput, hidden] HRESULT eM21([in] single Value);
257 [id(0x0000000a), propget, hidden] HRESULT eM22(
258 [out, retval] single* Value);
259 [id(0x0000000a), propput, hidden] HRESULT eM22([in] single Value);
260 [id(0x0000000b), propget, hidden] HRESULT eDx(
261 [out, retval] single* Value);
262 [id(0x0000000b), propput, hidden] HRESULT eDx([in] single Value);
263 [id(0x0000000c), propget, hidden] HRESULT eDy(
264 [out, retval] single* Value);
265 [id(0x0000000c), propput, hidden] HRESULT eDy([in] single Value);
266 [id(0x0000000f), propget, hidden] HRESULT Data(
267 [out, retval] XFORM* XFORM);
268 [id(0x0000000f), propput, hidden] HRESULT Data([in] XFORM XFORM);
269 };
270
271 interface IInkDisp;
272
273 [
274 odl,
275 uuid(9794FF82-6071-4717-8A8B-6AC7C64A686E),
276 dual,
277 oleautomation
278 ]
279 interface IInkRectangle
280 {
281 [id(1), propget] HRESULT Top([out, retval] long* Units);
282 [id(1), propput] HRESULT Top([in] long Units);
283 [id(2), propget] HRESULT Left([out, retval] long* Units);
284 [id(2), propput] HRESULT Left([in] long Units);
285 [id(3), propget] HRESULT Bottom([out, retval] long* Units);
286 [id(3), propput] HRESULT Bottom([in] long Units);
287 [id(4), propget] HRESULT Right([out, retval] long* Units);
288 [id(4), propput] HRESULT Right([in] long Units);
289 [id(7), propget] HRESULT Data([out, retval] RECT* Rect);
290 [id(7), propput] HRESULT Data([in] RECT Rect);
291 [id(5)] HRESULT GetRectangle(
292 [out] long* Top,
293 [out] long* Left,
294 [out] long* Bottom,
295 [out] long* Right);
296 [id(6)] HRESULT SetRectangle(
297 [in] long Top,
298 [in] long Left,
299 [in] long Bottom,
300 [in] long Right);
301 };
302
303 interface IInkStrokes;
304
305 typedef enum {
306 TPMU_Default,
307 TPMU_Inches,
308 TPMU_Centimeters,
309 TPMU_Degrees,
310 TPMU_Radians,
311 TPMU_Seconds,
312 TPMU_Pounds,
313 TPMU_Grams
314 } TabletPropertyMetricUnit;
315
316 [
317 odl,
318 uuid(43242FEA-91D1-4A72-963E-FBB91829CFA2),
319 dual,
320 oleautomation
321 ]
322 interface IInkStrokeDisp : IDispatch {
323 [id(0x00000002), propget] HRESULT Id([out, retval] long* Id);
324 [id(0x0000000d), propget] HRESULT BezierPoints(
325 [out, retval] VARIANT* Points);
326 [id(0x00000004), propget] HRESULT DrawingAttributes(
327 [out, retval] IInkDrawingAttributes** DrawAttrs);
328 [id(0x00000004), propputref] HRESULT DrawingAttributes(
329 [in] IInkDrawingAttributes* DrawAttrs);
330 [id(0x0000000c), propget] HRESULT Ink([out, retval] IInkDisp** Ink);
331 [id(0x0000000b), propget] HRESULT ExtendedProperties(
332 [out, retval] IInkExtendedProperties** Properties);
333 [id(0x0000000e), propget] HRESULT PolylineCusps(
334 [out, retval] VARIANT* Cusps);
335 [id(0x0000000f), propget] HRESULT BezierCusps(
336 [out, retval] VARIANT* Cusps);
337 [id(0x00000010), propget] HRESULT SelfIntersections(
338 [out, retval] VARIANT* Intersections);
339 [id(0x00000011), propget] HRESULT PacketCount(
340 [out, retval] long* plCount);
341 [id(0x00000012), propget] HRESULT PacketSize(
342 [out, retval] long* plSize);
343 [id(0x00000013), propget] HRESULT PacketDescription(
344 [out, retval] VARIANT* PacketDescription);
345 [id(0x00000014), propget] HRESULT Deleted(
346 [out, retval] VARIANT_BOOL* Deleted);
347 [id(0x00000003)] HRESULT GetBoundingBox(
348 [in, optional, defaultvalue(0)] InkBoundingBoxMode BoundingBoxMode,
349 [out, retval] IInkRectangle** Rectangle);
350 [id(0x00000005)] HRESULT FindIntersections(
351 [in] IInkStrokes* Strokes,
352 [out, retval] VARIANT* Intersections);
353 [id(0x00000006)] HRESULT GetRectangleIntersections(
354 [in] IInkRectangle* Rectangle,
355 [out, retval] VARIANT* Intersections);
356 [id(0x00000007)] HRESULT Clip(
357 [in] IInkRectangle* Rectangle);
358 [id(0x00000008)] HRESULT HitTestCircle(
359 [in] long x,
360 [in] long y,
361 [in] single radius,
362 [out, retval] VARIANT_BOOL* Intersects);
363 [id(0x00000009)] HRESULT NearestPoint(
364 [in] long x,
365 [in] long y,
366 [in, out, optional, defaultvalue(0)] single* Distance,
367 [out, retval] single* Point);
368 [id(0x0000000a)] HRESULT Split(
369 [in] single SplitAt,
370 [out, retval] IInkStrokeDisp** NewStroke);
371 [id(0x00000015)] HRESULT GetPacketDescriptionPropertyMetrics(
372 [in] BSTR propertyName,
373 [out] long* Minimum,
374 [out] long* Maximum,
375 [out] TabletPropertyMetricUnit* Units,
376 [out] single* Resolution);
377 [id(0x00000016)] HRESULT GetPoints(
378 [in, optional, defaultvalue(0)] long Index,
379 [in, optional, defaultvalue(-1)] long Count,
380 [out, retval] VARIANT* Points);
381 [id(0x00000017)] HRESULT SetPoints(
382 [in] VARIANT Points,
383 [in, optional, defaultvalue(0)] long Index,
384 [in, optional, defaultvalue(-1)] long Count,
385 [out, retval] long* NumberOfPointsSet);
386 [id(0x00000018)] HRESULT GetPacketData(
387 [in, optional, defaultvalue(0)] long Index,
388 [in, optional, defaultvalue(-1)] long Count,
389 [out, retval] VARIANT* PacketData);
390 [id(0x00000019)] HRESULT GetPacketValuesByProperty(
391 [in] BSTR propertyName,
392 [in, optional, defaultvalue(0)] long Index,
393 [in, optional, defaultvalue(-1)] long Count,
394 [out, retval] VARIANT* PacketValues);
395 [id(0x0000001a)] HRESULT SetPacketValuesByProperty(
396 [in] BSTR bstrPropertyName,
397 [in] VARIANT PacketValues,
398 [in, optional, defaultvalue(0)] long Index,
399 [in, optional, defaultvalue(-1)] long Count,
400 [out, retval] long* NumberOfPacketsSet);
401 [id(0x0000001b)] HRESULT GetFlattenedBezierPoints(
402 [in, optional, defaultvalue(0)] long FittingError,
403 [out, retval] VARIANT* FlattenedBezierPoints);
404 [id(0x0000001d)] HRESULT Transform(
405 [in] IInkTransform* Transform,
406 [in, optional, defaultvalue(0)] VARIANT_BOOL ApplyOnPenWidth);
407 [id(0x0000001c)] HRESULT ScaleToRectangle(
408 [in] IInkRectangle* Rectangle);
409 [id(0x0000001e)] HRESULT Move(
410 [in] single HorizontalComponent,
411 [in] single VerticalComponent);
412 [id(0x0000001f)] HRESULT Rotate(
413 [in] single Degrees,
414 [in, optional, defaultvalue(0)] single x,
415 [in, optional, defaultvalue(0)] single y);
416 [id(0x00000020)] HRESULT Shear(
417 [in] single HorizontalMultiplier,
418 [in] single VerticalMultiplier);
419 [id(0x00000021)] HRESULT ScaleTransform(
420 [in] single HorizontalMultiplier,
421 [in] single VerticalMultiplier);
422 };
423
424 interface IInkRecognitionResult;
425
426 [
427 odl,
428 uuid(F1F4C9D8-590A-4963-B3AE-1935671BB6F3),
429 dual,
430 oleautomation
431 ]
432 interface IInkStrokes : IDispatch {
433 [propget] HRESULT Count(
434 [out, retval] long *Count);
435 [propget, restricted] HRESULT _NewEnum(
436 [out, retval] IUnknown **_NewEnum);
437 [propget] HRESULT Ink(
438 [out, retval] IInkDisp **Ink);
439 [propget] HRESULT RecognitionResult(
440 [out, retval] IInkRecognitionResult **RecognitionResult);
441 HRESULT ToString(
442 [out, retval] BSTR *ToString);
443 HRESULT Item(
444 [in] long Index,
445 [out, retval] IInkStrokeDisp **Stroke);
446 HRESULT Add(
447 [in] IInkStrokeDisp *InkStroke);
448 HRESULT AddStrokes(
449 [in] IInkStrokes *InkStrokes);
450 HRESULT Remove(
451 [in] IInkStrokeDisp *InkStroke);
452 HRESULT RemoveStrokes(
453 [in] IInkStrokes *InkStrokes);
454 HRESULT ModifyDrawingAttributes(
455 [in] IInkDrawingAttributes *DrawAttrs);
456 HRESULT GetBoundingBox(
457 [in] InkBoundingBoxMode BoundingBoxMode,
458 [out, retval] IInkRectangle **BoundingBox);
459 HRESULT Transform(
460 [in] IInkTransform *Transform,
461 [in] VARIANT_BOOL ApplyOnPenWidth);
462 HRESULT ScaleToRectangle(
463 [in] IInkRectangle *Rectangle);
464 HRESULT Move(
465 [in] float HorizontalComponent,
466 [in] float VerticalComponent);
467 HRESULT Rotate(
468 [in] float Degrees,
469 [in] float x,
470 [in] float y);
471 HRESULT Shear(
472 [in] float HorizontalMultiplier,
473 [in] float VerticalMultiplier);
474 HRESULT ScaleTransform(
475 [in] float HorizontalMultiplier,
476 [in] float VerticalMultiplier);
477 HRESULT Clip(
478 [in] IInkRectangle *Rectangle);
479 HRESULT RemoveRecognitionResult();
480 };
481
482 [
483 odl,
484 uuid(7E23A88F-C30E-420f-9BDB-28902543F0C1),
485 dual,
486 oleautomation
487 ]
488 interface IInkCustomStrokes : IDispatch {
489 [propget] HRESULT Count(
490 [out, retval] long *Count);
491 [propget] HRESULT _NewEnum(
492 [out, retval] IUnknown **_NewEnum);
493 HRESULT Item(
494 [in] VARIANT Identifier,
495 [out, retval] IInkStrokes **Strokes);
496 HRESULT Add(
497 [in] BSTR Name,
498 [in] IInkStrokes *Strokes);
499 HRESULT Remove(
500 [in] VARIANT Identifier);
501 HRESULT Clear();
502 };
503
504 interface IInkRecognitionAlternate;
505 interface IInkRecognitionAlternates;
506
507 [
508 odl,
509 uuid(3BC129A8-86CD-45ad-BDE8-E0D32D61C16D),
510 dual,
511 oleautomation
512 ]
513 interface IInkRecognitionResult : IDispatch {
514 [propget] HRESULT TopString(
515 [out, retval] BSTR *TopString);
516 [propget] HRESULT TopAlternate(
517 [out, retval] IInkRecognitionAlternate **TopAlternate);
518 [propget] HRESULT TopConfidence(
519 [out, retval] InkRecognitionConfidence *TopConfidence);
520 [propget] HRESULT Strokes(
521 [out, retval] IInkStrokes **Strokes);
522 HRESULT AlternatesFromSelection(
523 [in] long selectionStart,
524 [in] long selectionLength,
525 [in] long maximumAlternates,
526 [out, retval] IInkRecognitionAlternates **AlternatesFromSelection);
527 HRESULT ModifyTopAlternate(
528 [in] IInkRecognitionAlternate *Alternate);
529 HRESULT SetResultOnStrokes();
530 };
531
532 [
533 odl,
534 uuid(B7E660AD-77E4-429b-ADDA-873780D1FC4A),
535 dual,
536 oleautomation
537 ]
538 interface IInkRecognitionAlternate : IDispatch {
539 [propget] HRESULT String(
540 [out, retval] BSTR *RecoString);
541 [propget] HRESULT Confidence(
542 [out, retval] InkRecognitionConfidence *Confidence);
543 [propget] HRESULT Baseline(
544 [out, retval] VARIANT *Baseline);
545 [propget] HRESULT Midline(
546 [out, retval] VARIANT *Midline);
547 [propget] HRESULT Ascender(
548 [out, retval] VARIANT *Ascender);
549 [propget] HRESULT Descender(
550 [out, retval] VARIANT *Descender);
551 [propget] HRESULT LineNumber(
552 [out, retval] long *LineNumber);
553 [propget] HRESULT Strokes(
554 [out, retval] IInkStrokes **Strokes);
555 [propget] HRESULT LineAlternates(
556 [out, retval] IInkRecognitionAlternates **LineAlternates);
557 [propget] HRESULT ConfidenceAlternates(
558 [out, retval] IInkRecognitionAlternates **ConfidenceAlternates);
559 HRESULT GetStrokesFromStrokeRanges(
560 [in] IInkStrokes *Stroke,
561 [out, retval] IInkStrokes **GetStrokesFromTextRange);
562 HRESULT GetStrokesFromTextRange(
563 [in, out] long *selectionStart,
564 [in, out] long *selectionLength,
565 [out, retval] IInkStrokes **GetStrokesFromTextRange);
566 HRESULT GetTextRangeFromStrokes(
567 [in] IInkStrokes *Strokes,
568 [in, out] long *selectionStart,
569 [in, out] long *selectionLength);
570 HRESULT AlternatesWithConstantPropertyValues(
571 [in] BSTR PropertyType,
572 [out, retval] IInkRecognitionAlternates **AlternatesWithConstantPropertyValues);
573 HRESULT GetPropertyValue(
574 [in] BSTR PropertyType,
575 [out, retval] VARIANT *PropertyValue);
576 };
577
578 [
579 odl,
580 uuid(286A167F-9F19-4c61-9D53-4F07BE622B84),
581 dual,
582 oleautomation
583 ]
584 interface IInkRecognitionAlternates : IDispatch {
585 [propget] HRESULT Count(
586 [out, retval] long *Count);
587 [propget, restricted] HRESULT _NewEnum(
588 [out, retval] IUnknown **_NewEnum);
589 [propget] HRESULT Strokes(
590 [out, retval] IInkStrokes **Strokes);
591 HRESULT Item(
592 [in] long Index,
593 [out, retval] IInkRecognitionAlternate **InkRecoAlternate);
594 };
595
596 [
597 odl,
598 uuid(9D398FA0-C4E2-4fcd-9973-975CAAF47EA6),
599 dual,
600 oleautomation
601 ]
602 interface IInkDisp : IDispatch {
603 [propget] HRESULT Strokes(
604 [out, retval] IInkStrokes **Strokes);
605 [propget] HRESULT ExtendedProperties(
606 [out, retval] IInkExtendedProperties **Properties);
607 [propget] HRESULT Dirty(
608 [out, retval] VARIANT_BOOL *Dirty);
609 [propput] HRESULT Dirty(
610 [in] VARIANT_BOOL Dirty);
611 [propget] HRESULT CustomStrokes(
612 [out, retval] IInkCustomStrokes **CustomStrokes);
613 HRESULT GetBoundingBox(
614 [in] InkBoundingBoxMode BoundingBoxMode,
615 [out] IInkRectangle **Rectangle);
616 HRESULT DeleteStrokes(
617 [in, unique] IInkStrokes *Strokes);
618 HRESULT DeleteStroke(
619 [in] IInkStrokeDisp *Stroke);
620 HRESULT ExtractStrokes(
621 [in] IInkStrokes *Strokes,
622 [in] InkExtractFlags ExtractFlags,
623 [out, retval] IInkDisp **ExtractedInk);
624 HRESULT ExtractWithRectangle(
625 [in] IInkRectangle *Rectangle,
626 [in] InkExtractFlags ExtractFlags,
627 [out, retval] IInkDisp **ExtractedInk);
628 HRESULT Clip(
629 [in] IInkRectangle *Rectangle);
630 HRESULT Clone(
631 [out, retval] IInkDisp **NewInk);
632 HRESULT HitTestCircle(
633 [in] long X,
634 [in] long Y,
635 [in] float radius,
636 [out, retval] IInkStrokes **Strokes);
637 HRESULT HitTestWithRectangle(
638 [in] IInkRectangle *SelectionRectangle,
639 [in] float IntersectPercent,
640 [out, retval] IInkStrokes **Strokes);
641 HRESULT HitTestWithLasso(
642 [in] VARIANT Points,
643 [in] float IntersectPercent,
644 [in, out, unique] VARIANT *LassoPoints,
645 [out, retval] IInkStrokes **Strokes);
646 HRESULT NearestPoint(
647 [in] long X,
648 [in] long Y,
649 [in, out] float *PointOnStroke,
650 [in, out] float *DistanceFromPacket,
651 [out, retval] IInkStrokeDisp **Stroke);
652 HRESULT CreateStrokes(
653 [in] VARIANT StrokeIds,
654 [out, retval] IInkStrokes **Strokes);
655 HRESULT AddStrokesAtRectangle(
656 [in] IInkStrokes *SourceStrokes,
657 [in] IInkRectangle *TargetRectangle);
658 HRESULT Save(
659 [in] InkPersistenceFormat PersistenceFormat,
660 [in] InkPersistenceCompressionMode CompressionMode,
661 [out, retval] VARIANT *Data);
662 HRESULT Load(
663 [in] VARIANT Data);
664 HRESULT CreateStroke(
665 [in] VARIANT PacketData,
666 [in] VARIANT PacketDescription,
667 [out, retval] IInkStrokeDisp **Stroke);
668 HRESULT ClipboardCopyWithRectangle(
669 [in] IInkRectangle *Rectangle,
670 [in] InkClipboardFormats ClipboardFormats,
671 [in] InkClipboardModes ClipboardModes,
672 [out, retval] IDataObject **DataObject);
673 HRESULT ClipboardCopy(
674 [in] IInkStrokes *strokes,
675 [in] InkClipboardFormats ClipboardFormats,
676 [in] InkClipboardModes ClipboardModes,
677 [out, retval] IDataObject **DataObject);
678 HRESULT CanPaste(
679 [in] IDataObject *DataObject,
680 [out, retval] VARIANT_BOOL *CanPaste);
681 HRESULT ClipboardPaste(
682 [in] long x,
683 [in] long y,
684 [in, unique] IDataObject *DataObject,
685 [out, retval] IInkStrokes **Strokes);
686 };
687
688 [
689 odl,
690 uuid(E6257A9C-B511-4F4C-A8B0-A7DBC9506B83),
691 dual,
692 oleautomation
693 ]
694 interface IInkRenderer : IDispatch {
695 HRESULT GetViewTransform([in] IInkTransform* ViewTransform);
696 HRESULT SetViewTransform([in] IInkTransform* ViewTransform);
697 HRESULT GetObjectTransform([in] IInkTransform* ObjectTransform);
698 HRESULT SetObjectTransform([in] IInkTransform* ObjectTransform);
699 HRESULT Draw(
700 [in] long hDC,
701 [in] IInkStrokes* Strokes);
702 HRESULT DrawStroke(
703 [in] long hDC,
704 [in] IInkStrokeDisp* Stroke,
705 [in, optional, defaultvalue(0)]
706 IInkDrawingAttributes* DrawingAttributes);
707 HRESULT PixelToInkSpace(
708 [in] long hDC,
709 [in, out] long* x,
710 [in, out] long* y);
711 HRESULT InkSpaceToPixel(
712 [in] long hdcDisplay,
713 [in, out] long* x,
714 [in, out] long* y);
715 HRESULT PixelToInkSpaceFromPoints(
716 [in] long hDC,
717 [in, out] VARIANT* Points);
718 HRESULT InkSpaceToPixelFromPoints(
719 [in] long hDC,
720 [in, out] VARIANT* Points);
721 HRESULT Measure(
722 [in] IInkStrokes* Strokes,
723 [out, retval] IInkRectangle** Rectangle);
724 HRESULT MeasureStroke(
725 [in] IInkStrokeDisp* Stroke,
726 [in, optional, defaultvalue(0)] IInkDrawingAttributes* DrawingAttributes,
727 [out, retval] IInkRectangle** Rectangle);
728 HRESULT Move(
729 [in] single HorizontalComponent,
730 [in] single VerticalComponent);
731 HRESULT Rotate(
732 [in] single Degrees,
733 [in, optional, defaultvalue(0)] single x,
734 [in, optional, defaultvalue(0)] single y);
735 HRESULT ScaleTransform(
736 [in] single HorizontalMultiplier,
737 [in] single VerticalMultiplier,
738 [in, optional, defaultvalue(-1)] VARIANT_BOOL ApplyOnPenWidth);
739 };
740
741 typedef enum {
742 ICM_InkOnly,
743 ICM_GestureOnly,
744 ICM_InkAndGesture
745 } InkCollectionMode;
746
747 typedef enum {
748 IMP_Default,
749 IMP_Arrow,
750 IMP_Crosshair,
751 IMP_Ibeam,
752 IMP_SizeNESW,
753 IMP_SizeNS,
754 IMP_SizeNWSE,
755 IMP_SizeWE,
756 IMP_UpArrow,
757 IMP_Hourglass,
758 IMP_NoDrop,
759 IMP_ArrowHourglass,
760 IMP_ArrowQuestion,
761 IMP_SizeAll,
762 IMP_Hand,
763 IMP_Custom = 99
764 } InkMousePointer;
765
766 typedef enum {
767 THWC_Integrated = 1,
768 THWC_CursorMustTouch = 2,
769 THWC_HardProximity = 4,
770 THWC_CursorsHavePhysicalIds = 8
771 } TabletHardwareCapabilities;
772
773 [
774 odl,
775 uuid(2DE25EAA-6EF8-42D5-AEE9-185BC81B912D),
776 dual,
777 oleautomation
778 ]
779 interface IInkTablet : IDispatch {
780 [propget] HRESULT Name([out, retval] BSTR* Name);
781 [propget] HRESULT PlugAndPlayId([out, retval] BSTR* Id);
782 [propget] HRESULT MaximumInputRectangle([out, retval] IInkRectangle** Rectangle);
783 [propget] HRESULT HardwareCapabilities(
784 [out, retval] TabletHardwareCapabilities* Capabilities);
785 HRESULT IsPacketPropertySupported(
786 [in] BSTR packetPropertyName,
787 [out, retval] VARIANT_BOOL* Supported);
788 HRESULT GetPropertyMetrics(
789 [in] BSTR propertyName,
790 [out] long* Minimum,
791 [out] long* Maximum,
792 [out] TabletPropertyMetricUnit* Units,
793 [out] single* Resolution);
794 };
795
796 typedef enum {
797 ICBS_Unavailable,
798 ICBS_Up,
799 ICBS_Down
800 } InkCursorButtonState;
801
802 [
803 odl,
804 uuid(85EF9417-1D59-49B2-A13C-702C85430894),
805 dual,
806 oleautomation
807 ]
808 interface IInkCursorButton : IDispatch {
809 [propget] HRESULT Name([out, retval] BSTR* Name);
810 [propget] HRESULT Id([out, retval] BSTR* Id);
811 [propget] HRESULT State([out, retval] InkCursorButtonState* CurrentState);
812 };
813
814 [
815 odl,
816 uuid(3671CC40-B624-4671-9FA0-DB119D952D54),
817 dual,
818 oleautomation
819 ]
820 interface IInkCursorButtons : IDispatch {
821 [propget] HRESULT Count([out, retval] long* Count);
822 [propget] HRESULT _NewEnum([out, retval] IUnknown** _NewEnum);
823 HRESULT Item(
824 [in] VARIANT Identifier,
825 [out, retval] IInkCursorButton** Button);
826 };
827
828 [
829 odl,
830 uuid(AD30C630-40C5-4350-8405-9C71012FC558),
831 dual,
832 oleautomation
833 ]
834 interface IInkCursor : IDispatch {
835 [id(0x00000000), propget] HRESULT Name([out, retval] BSTR* Name);
836 [id(0x00000001), propget] HRESULT Id([out, retval] long* Id);
837 [id(0x00000004), propget] HRESULT Inverted(
838 [out, retval] VARIANT_BOOL* Status);
839 [id(0x00000002), propget] HRESULT DrawingAttributes(
840 [out, retval] IInkDrawingAttributes** Attributes);
841 [id(0x00000002), propputref] HRESULT DrawingAttributes(
842 [in] IInkDrawingAttributes* Attributes);
843 [id(0x00000005), propget] HRESULT Tablet(
844 [out, retval] IInkTablet** Tablet);
845 [id(0x00000003), propget] HRESULT Buttons(
846 [out, retval] IInkCursorButtons** Buttons);
847 };
848
849 [
850 odl,
851 uuid(A248C1AC-C698-4E06-9E5C-D57F77C7E647),
852 dual,
853 oleautomation
854 ]
855 interface IInkCursors : IDispatch {
856 [propget] HRESULT Count([out, retval] long* Count);
857 [propget] HRESULT _NewEnum([out, retval] IUnknown** _NewEnum);
858 HRESULT Item(
859 [in] long Index,
860 [out, retval] IInkCursor** Cursor);
861 };
862
863 typedef enum {
864 IAG_AllGestures = 0,
865 IAG_NoGesture = 61440,
866 IAG_Scratchout = 61441,
867 IAG_Triangle = 61442,
868 IAG_Square = 61443,
869 IAG_Star = 61444,
870 IAG_Check = 61445,
871 IAG_Curlicue = 61456,
872 IAG_DoubleCurlicue = 61457,
873 IAG_Circle = 61472,
874 IAG_DoubleCircle = 61473,
875 IAG_SemiCircleLeft = 61480,
876 IAG_SemiCircleRight = 61481,
877 IAG_ChevronUp = 61488,
878 IAG_ChevronDown = 61489,
879 IAG_ChevronLeft = 61490,
880 IAG_ChevronRight = 61491,
881 IAG_ArrowUp = 61496,
882 IAG_ArrowDown = 61497,
883 IAG_ArrowLeft = 61498,
884 IAG_ArrowRight = 61499,
885 IAG_Up = 61528,
886 IAG_Down = 61529,
887 IAG_Left = 61530,
888 IAG_Right = 61531,
889 IAG_UpDown = 61536,
890 IAG_DownUp = 61537,
891 IAG_LeftRight = 61538,
892 IAG_RightLeft = 61539,
893 IAG_UpLeftLong = 61540,
894 IAG_UpRightLong = 61541,
895 IAG_DownLeftLong = 61542,
896 IAG_DownRightLong = 61543,
897 IAG_UpLeft = 61544,
898 IAG_UpRight = 61545,
899 IAG_DownLeft = 61546,
900 IAG_DownRight = 61547,
901 IAG_LeftUp = 61548,
902 IAG_LeftDown = 61549,
903 IAG_RightUp = 61550,
904 IAG_RightDown = 61551,
905 IAG_Exclamation = 61604,
906 IAG_Tap = 61680,
907 IAG_DoubleTap = 61681
908 } InkApplicationGesture;
909
910 typedef enum {
911 ICEI_DefaultEvents = -1,
912 ICEI_CursorDown = 0,
913 ICEI_Stroke,
914 ICEI_NewPackets,
915 ICEI_NewInAirPackets,
916 ICEI_CursorButtonDown,
917 ICEI_CursorButtonUp,
918 ICEI_CursorInRange,
919 ICEI_CursorOutOfRange,
920 ICEI_SystemGesture,
921 ICEI_TabletAdded,
922 ICEI_TabletRemoved,
923 ICEI_MouseDown,
924 ICEI_MouseMove,
925 ICEI_MouseUp,
926 ICEI_MouseWheel,
927 ICEI_DblClick,
928 ICEI_AllEvents
929 } InkCollectorEventInterest;
930
931 [
932 odl,
933 uuid(F0F060B5-8B1F-4A7C-89EC-880692588A4F),
934 dual,
935 oleautomation
936 ]
937 interface IInkCollector : IDispatch {
938 [id(0x00000002), propget] HRESULT hWnd(
939 [out, retval] long* CurrentWindow);
940 [id(0x00000002), propput] HRESULT hWnd([in] long CurrentWindow);
941 [id(0x00000001), propget] HRESULT Enabled(
942 [out, retval] VARIANT_BOOL* Collecting);
943 [id(0x00000001), propput] HRESULT Enabled(
944 [in] VARIANT_BOOL Collecting);
945 [id(0x00000005), propget] HRESULT DefaultDrawingAttributes(
946 [out, retval] IInkDrawingAttributes** CurrentAttributes);
947 [id(0x00000005), propputref] HRESULT DefaultDrawingAttributes(
948 [in] IInkDrawingAttributes* CurrentAttributes);
949 [id(0x00000006), propget] HRESULT Renderer(
950 [out, retval] IInkRenderer** CurrentInkRenderer);
951 [id(0x00000006), propputref] HRESULT Renderer(
952 [in] IInkRenderer* CurrentInkRenderer);
953 [id(0x00000007), propget] HRESULT Ink([out, retval] IInkDisp** Ink);
954 [id(0x00000007), propputref] HRESULT Ink([in] IInkDisp* Ink);
955 [id(0x00000008), propget] HRESULT AutoRedraw(
956 [out, retval] VARIANT_BOOL* AutoRedraw);
957 [id(0x00000008), propput] HRESULT AutoRedraw(
958 [in] VARIANT_BOOL AutoRedraw);
959 [id(0x00000009), propget] HRESULT CollectingInk(
960 [out, retval] VARIANT_BOOL* Collecting);
961 [id(0x0000001c), propget] HRESULT CollectionMode(
962 [out, retval] InkCollectionMode* Mode);
963 [id(0x0000001c), propput] HRESULT CollectionMode(
964 [in] InkCollectionMode Mode);
965 [id(0x0000001f), propget] HRESULT DynamicRendering(
966 [out, retval] VARIANT_BOOL* Enabled);
967 [id(0x0000001f), propput] HRESULT DynamicRendering(
968 [in] VARIANT_BOOL Enabled);
969 [id(0x00000020), propget] HRESULT DesiredPacketDescription(
970 [out, retval] VARIANT* PacketGuids);
971 [id(0x00000020), propput] HRESULT DesiredPacketDescription(
972 [in] VARIANT PacketGuids);
973 [id(0x00000023), propget] HRESULT MouseIcon(
974 [out, retval] IPictureDisp** MouseIcon);
975 [id(0x00000023), propput] HRESULT MouseIcon(
976 [in] IPictureDisp* MouseIcon);
977 [id(0x00000023), propputref] HRESULT MouseIcon(
978 [in] IPictureDisp* MouseIcon);
979 [id(0x00000024), propget] HRESULT MousePointer(
980 [out, retval] InkMousePointer* MousePointer);
981 [id(0x00000024), propput] HRESULT MousePointer(
982 [in] InkMousePointer MousePointer);
983 [id(0x00000014), propget] HRESULT Cursors(
984 [out, retval] IInkCursors** Cursors);
985 [id(0x00000015), propget] HRESULT MarginX(
986 [out, retval] long* MarginX);
987 [id(0x00000015), propput] HRESULT MarginX([in] long MarginX);
988 [id(0x00000016), propget] HRESULT MarginY(
989 [out, retval] long* MarginY);
990 [id(0x00000016), propput] HRESULT MarginY([in] long MarginY);
991 [id(0x00000019), propget] HRESULT Tablet(
992 [out, retval] IInkTablet** SingleTablet);
993 [id(0x00000026), propget] HRESULT SupportHighContrastInk(
994 [out, retval] VARIANT_BOOL* Support);
995 [id(0x00000026), propput] HRESULT SupportHighContrastInk(
996 [in] VARIANT_BOOL Support);
997 [id(0x0000001d)] HRESULT SetGestureStatus(
998 [in] InkApplicationGesture Gesture,
999 [in] VARIANT_BOOL Listen);
1000 [id(0x0000001e)] HRESULT GetGestureStatus(
1001 [in] InkApplicationGesture Gesture,
1002 [out, retval] VARIANT_BOOL* Listening);
1003 [id(0x00000018)] HRESULT GetWindowInputRectangle(
1004 [in, out] IInkRectangle** WindowInputRectangle);
1005 [id(0x00000017)] HRESULT SetWindowInputRectangle(
1006 [in] IInkRectangle* WindowInputRectangle);
1007 [id(0x0000001a)] HRESULT SetAllTabletsMode(
1008 [in, optional, defaultvalue(-1)] VARIANT_BOOL UseMouseForInput);
1009 [id(0x0000001b)] HRESULT SetSingleTabletIntegratedMode(
1010 [in] IInkTablet* Tablet);
1011 [id(0x0000000b)] HRESULT GetEventInterest(
1012 [in] InkCollectorEventInterest EventId,
1013 [out, retval] VARIANT_BOOL* Listen);
1014 [id(0x0000000a)] HRESULT SetEventInterest(
1015 [in] InkCollectorEventInterest EventId,
1016 [in] VARIANT_BOOL Listen);
1017 };
1018};
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette