source: Daodan/MSYS2/mingw32/i686-w64-mingw32/include/uianimation.idl@ 1186

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

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

File size: 33.6 KB
RevLine 
[1166]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 */
5import "unknwn.idl";
6
7/* Interface forward declarations. */
8interface IUIAnimationManager;
9interface IUIAnimationVariable;
10interface IUIAnimationStoryboard;
11interface IUIAnimationTransition;
12interface IUIAnimationStoryboardEventHandler;
13interface IUIAnimationVariableChangeHandler;
14interface IUIAnimationVariableIntegerChangeHandler;
15interface IUIAnimationManagerEventHandler;
16interface IUIAnimationPriorityComparison;
17interface IUIAnimationManager2;
18interface IUIAnimationVariable2;
19interface IDCompositionAnimation;
20interface IUIAnimationStoryboard2;
21interface IUIAnimationTransition2;
22interface IUIAnimationLoopIterationChangeHandler2;
23interface IUIAnimationStoryboardEventHandler2;
24interface IUIAnimationVariableChangeHandler2;
25interface IUIAnimationVariableIntegerChangeHandler2;
26interface IUIAnimationVariableCurveChangeHandler2;
27interface IUIAnimationManagerEventHandler2;
28interface IUIAnimationPriorityComparison2;
29interface IUIAnimationTransitionLibrary;
30interface IUIAnimationTransitionLibrary2;
31interface IUIAnimationTransitionFactory;
32interface IUIAnimationInterpolator;
33interface IUIAnimationTransitionFactory2;
34interface IUIAnimationInterpolator2;
35interface IUIAnimationPrimitiveInterpolation;
36interface IUIAnimationTimer;
37interface IUIAnimationTimerUpdateHandler;
38interface IUIAnimationTimerClientEventHandler;
39interface IUIAnimationTimerEventHandler;
40
41/* Coclass record forward declarations. */
42coclass UIAnimationManager;
43coclass UIAnimationManager2;
44coclass UIAnimationTransitionLibrary;
45coclass UIAnimationTransitionLibrary2;
46coclass UIAnimationTransitionFactory;
47coclass UIAnimationTransitionFactory2;
48coclass UIAnimationTimer;
49
50typedef DOUBLE UI_ANIMATION_SECONDS;
51
52/* Enumeration declarations. */
53typedef [v1_enum] enum
54{
55 UI_ANIMATION_SCHEDULING_UNEXPECTED_FAILURE = 0,
56 UI_ANIMATION_SCHEDULING_INSUFFICIENT_PRIORITY = 1,
57 UI_ANIMATION_SCHEDULING_ALREADY_SCHEDULED = 2,
58 UI_ANIMATION_SCHEDULING_SUCCEEDED = 3,
59 UI_ANIMATION_SCHEDULING_DEFERRED = 4
60} UI_ANIMATION_SCHEDULING_RESULT;
61typedef [v1_enum] enum
62{
63 UI_ANIMATION_STORYBOARD_BUILDING = 0,
64 UI_ANIMATION_STORYBOARD_SCHEDULED = 1,
65 UI_ANIMATION_STORYBOARD_CANCELLED = 2,
66 UI_ANIMATION_STORYBOARD_PLAYING = 3,
67 UI_ANIMATION_STORYBOARD_TRUNCATED = 4,
68 UI_ANIMATION_STORYBOARD_FINISHED = 5,
69 UI_ANIMATION_STORYBOARD_READY = 6,
70 UI_ANIMATION_STORYBOARD_INSUFFICIENT_PRIORITY = 7
71} UI_ANIMATION_STORYBOARD_STATUS;
72typedef [v1_enum] enum
73{
74 UI_ANIMATION_ROUNDING_NEAREST = 0,
75 UI_ANIMATION_ROUNDING_FLOOR = 1,
76 UI_ANIMATION_ROUNDING_CEILING = 2
77} UI_ANIMATION_ROUNDING_MODE;
78typedef [v1_enum] enum
79{
80 UI_ANIMATION_UPDATE_NO_CHANGE = 0,
81 UI_ANIMATION_UPDATE_VARIABLES_CHANGED = 1
82} UI_ANIMATION_UPDATE_RESULT;
83typedef [v1_enum] enum
84{
85 UI_ANIMATION_MANAGER_IDLE = 0,
86 UI_ANIMATION_MANAGER_BUSY = 1
87} UI_ANIMATION_MANAGER_STATUS;
88typedef [v1_enum] enum
89{
90 UI_ANIMATION_MODE_DISABLED = 0,
91 UI_ANIMATION_MODE_SYSTEM_DEFAULT = 1,
92 UI_ANIMATION_MODE_ENABLED = 2
93} UI_ANIMATION_MODE;
94typedef [v1_enum] enum
95{
96 UI_ANIMATION_PRIORITY_EFFECT_FAILURE = 0,
97 UI_ANIMATION_PRIORITY_EFFECT_DELAY = 1
98} UI_ANIMATION_PRIORITY_EFFECT;
99typedef [v1_enum] enum
100{
101 UI_ANIMATION_REPEAT_MODE_NORMAL = 0,
102 UI_ANIMATION_REPEAT_MODE_ALTERNATE = 1
103} UI_ANIMATION_REPEAT_MODE;
104typedef [v1_enum] enum
105{
106 UI_ANIMATION_SLOPE_INCREASING = 0,
107 UI_ANIMATION_SLOPE_DECREASING = 1
108} UI_ANIMATION_SLOPE;
109typedef [v1_enum] enum
110{
111 UI_ANIMATION_DEPENDENCY_NONE = 0,
112 UI_ANIMATION_DEPENDENCY_INTERMEDIATE_VALUES = 0x1,
113 UI_ANIMATION_DEPENDENCY_FINAL_VALUE = 0x2,
114 UI_ANIMATION_DEPENDENCY_FINAL_VELOCITY = 0x4,
115 UI_ANIMATION_DEPENDENCY_DURATION = 0x8
116} UI_ANIMATION_DEPENDENCIES;
117typedef [v1_enum] enum
118{
119 UI_ANIMATION_TIMER_CLIENT_IDLE = 0,
120 UI_ANIMATION_TIMER_CLIENT_BUSY = 1
121} UI_ANIMATION_TIMER_CLIENT_STATUS;
122typedef [v1_enum] enum
123{
124 UI_ANIMATION_IDLE_BEHAVIOR_CONTINUE = 0,
125 UI_ANIMATION_IDLE_BEHAVIOR_DISABLE = 1
126} UI_ANIMATION_IDLE_BEHAVIOR;
127
128/* Structure/union declarations. */
129typedef struct
130{
131 int _;
132} *UI_ANIMATION_KEYFRAME;
133
134const UI_ANIMATION_KEYFRAME UI_ANIMATION_KEYFRAME_STORYBOARD_START = (UI_ANIMATION_KEYFRAME)(-1);
135
136const INT32 UI_ANIMATION_REPEAT_INDEFINITELY = -1;
137const INT32 UI_ANIMATION_REPEAT_INDEFINITELY_CONCLUDE_AT_END = UI_ANIMATION_REPEAT_INDEFINITELY;
138const INT32 UI_ANIMATION_REPEAT_INDEFINITELY_CONCLUDE_AT_START = -2;
139
140[
141 uuid(44CA24DB-1A92-4149-BAB5-FB14D64B401E),
142 version(1.0),
143 helpstring("UIAnimation 1.0 Type Library")
144]
145library uianimation
146{
147 importlib("stdole2.tlb");
148
149 /* CoClass declarations. */
150 [
151 uuid(4C1FC63A-695C-47E8-A339-1A194BE3D0B8),
152 helpstring("UIAnimationManager Class")
153 ]
154 coclass UIAnimationManager
155 {
156 [default] interface IUIAnimationManager;
157 };
158 [
159 uuid(D25D8842-8884-4A4A-B321-091314379BDD),
160 helpstring("UIAnimationManager2 Class")
161 ]
162 coclass UIAnimationManager2
163 {
164 [default] interface IUIAnimationManager2;
165 };
166 [
167 uuid(1D6322AD-AA85-4EF5-A828-86D71067D145),
168 helpstring("UIAnimationTransitionLibrary Class")
169 ]
170 coclass UIAnimationTransitionLibrary
171 {
172 [default] interface IUIAnimationTransitionLibrary;
173 };
174 [
175 uuid(812F944A-C5C8-4CD9-B0A6-B3DA802F228D),
176 helpstring("UIAnimationTransitionLibrary2 Class")
177 ]
178 coclass UIAnimationTransitionLibrary2
179 {
180 [default] interface IUIAnimationTransitionLibrary2;
181 };
182 [
183 uuid(8A9B1CDD-FCD7-419C-8B44-42FD17DB1887),
184 helpstring("UIAnimationTransitionFactory Class")
185 ]
186 coclass UIAnimationTransitionFactory
187 {
188 [default] interface IUIAnimationTransitionFactory;
189 };
190 [
191 uuid(84302F97-7F7B-4040-B190-72AC9D18E420),
192 helpstring("UIAnimationTransitionFactory2 Class")
193 ]
194 coclass UIAnimationTransitionFactory2
195 {
196 [default] interface IUIAnimationTransitionFactory2;
197 };
198 [
199 uuid(BFCD4A0C-06B6-4384-B768-0DAA792C380E),
200 helpstring("UIAnimationTimer Class")
201 ]
202 coclass UIAnimationTimer
203 {
204 [default] interface IUIAnimationTimer;
205 };
206
207};
208
209/* Interface declarations. */
210[
211 uuid(9169896C-AC8D-4E7D-94E5-67FA4DC2F2E8),
212 helpstring("IUIAnimationManager Interface")
213]
214interface IUIAnimationManager : IUnknown
215{
216 HRESULT CreateAnimationVariable(
217 [in] double initialValue,
218 [out, retval] IUIAnimationVariable **variable
219 );
220 HRESULT ScheduleTransition(
221 [in] IUIAnimationVariable *variable,
222 [in] IUIAnimationTransition *transition,
223 [in] double timeNow
224 );
225 HRESULT CreateStoryboard(
226 [out, retval] IUIAnimationStoryboard **storyboard
227 );
228 HRESULT FinishAllStoryboards(
229 [in] double completionDeadline
230 );
231 HRESULT AbandonAllStoryboards(void);
232 HRESULT Update(
233 [in] double timeNow,
234 [out, defaultvalue(0)] UI_ANIMATION_UPDATE_RESULT *updateResult
235 );
236 HRESULT GetVariableFromTag(
237 [in] IUnknown * object,
238 [in] UINT32 id,
239 [out, retval] IUIAnimationVariable **variable
240 );
241 HRESULT GetStoryboardFromTag(
242 [in] IUnknown * object,
243 [in] UINT32 id,
244 [out, retval] IUIAnimationStoryboard **storyboard
245 );
246 HRESULT GetStatus(
247 [out, retval] UI_ANIMATION_MANAGER_STATUS *status
248 );
249 HRESULT SetAnimationMode(
250 [in] UI_ANIMATION_MODE mode
251 );
252 HRESULT Pause(void);
253 HRESULT Resume(void);
254 HRESULT SetManagerEventHandler(
255 [in] IUIAnimationManagerEventHandler *handler
256 );
257 HRESULT SetCancelPriorityComparison(
258 [in] IUIAnimationPriorityComparison *comparison
259 );
260 HRESULT SetTrimPriorityComparison(
261 [in] IUIAnimationPriorityComparison *comparison
262 );
263 HRESULT SetCompressPriorityComparison(
264 [in] IUIAnimationPriorityComparison *comparison
265 );
266 HRESULT SetConcludePriorityComparison(
267 [in] IUIAnimationPriorityComparison *comparison
268 );
269 HRESULT SetDefaultLongestAcceptableDelay(
270 [in] double delay
271 );
272 HRESULT Shutdown(void);
273};
274[
275 uuid(8CEEB155-2849-4CE5-9448-91FF70E1E4D9),
276 helpstring("IUIAnimationVariable Interface")
277]
278interface IUIAnimationVariable : IUnknown
279{
280 HRESULT GetValue(
281 [out, retval] double *value
282 );
283 HRESULT GetFinalValue(
284 [out, retval] double *finalValue
285 );
286 HRESULT GetPreviousValue(
287 [out, retval] double *previousValue
288 );
289 HRESULT GetIntegerValue(
290 [out, retval] int *value
291 );
292 HRESULT GetFinalIntegerValue(
293 [out, retval] int *finalValue
294 );
295 HRESULT GetPreviousIntegerValue(
296 [out, retval] int *previousValue
297 );
298 HRESULT GetCurrentStoryboard(
299 [out, retval] IUIAnimationStoryboard **storyboard
300 );
301 HRESULT SetLowerBound(
302 [in] double bound
303 );
304 HRESULT SetUpperBound(
305 [in] double bound
306 );
307 HRESULT SetRoundingMode(
308 [in] UI_ANIMATION_ROUNDING_MODE mode
309 );
310 HRESULT SetTag(
311 [in] IUnknown * object,
312 [in] unsigned int id
313 );
314 HRESULT GetTag(
315 [out] IUnknown **object,
316 [out] unsigned int *id
317 );
318 HRESULT SetVariableChangeHandler(
319 [in] IUIAnimationVariableChangeHandler *handler
320 );
321 HRESULT SetVariableIntegerChangeHandler(
322 [in] IUIAnimationVariableIntegerChangeHandler *handler
323 );
324};
325[
326 uuid(A8FF128F-9BF9-4AF1-9E67-E5E410DEFB84),
327 helpstring("IUIAnimationStoryboard Interface")
328]
329interface IUIAnimationStoryboard : IUnknown
330{
331 HRESULT AddTransition(
332 [in] IUIAnimationVariable *variable,
333 [in] IUIAnimationTransition *transition
334 );
335 HRESULT AddKeyframeAtOffset(
336 [in] UI_ANIMATION_KEYFRAME existingKeyframe,
337 [in] double offset,
338 [out, retval] UI_ANIMATION_KEYFRAME *keyframe
339 );
340 HRESULT AddKeyframeAfterTransition(
341 [in] IUIAnimationTransition *transition,
342 [out, retval] UI_ANIMATION_KEYFRAME *keyframe
343 );
344 HRESULT AddTransitionAtKeyframe(
345 [in] IUIAnimationVariable *variable,
346 [in] IUIAnimationTransition *transition,
347 [in] UI_ANIMATION_KEYFRAME startKeyframe
348 );
349 HRESULT AddTransitionBetweenKeyframes(
350 [in] IUIAnimationVariable *variable,
351 [in] IUIAnimationTransition *transition,
352 [in] UI_ANIMATION_KEYFRAME startKeyframe,
353 [in] UI_ANIMATION_KEYFRAME endKeyframe
354 );
355 HRESULT RepeatBetweenKeyframes(
356 [in] UI_ANIMATION_KEYFRAME startKeyframe,
357 [in] UI_ANIMATION_KEYFRAME endKeyframe,
358 [in] int repetitionCount
359 );
360 HRESULT HoldVariable(
361 [in] IUIAnimationVariable *variable
362 );
363 HRESULT SetLongestAcceptableDelay(
364 [in] double delay
365 );
366 HRESULT Schedule(
367 [in] double timeNow,
368 [out, defaultvalue(0)] UI_ANIMATION_SCHEDULING_RESULT *schedulingResult
369 );
370 HRESULT Conclude(void);
371 HRESULT Finish(
372 [in] double completionDeadline
373 );
374 HRESULT Abandon(void);
375 HRESULT SetTag(
376 [in] IUnknown * object,
377 [in] unsigned int id
378 );
379 HRESULT GetTag(
380 [out] IUnknown **object,
381 [out] unsigned int *id
382 );
383 HRESULT GetStatus(
384 [out, retval] UI_ANIMATION_STORYBOARD_STATUS *status
385 );
386 HRESULT GetElapsedTime(
387 [out] double *elapsedTime
388 );
389 HRESULT SetStoryboardEventHandler(
390 [in] IUIAnimationStoryboardEventHandler *handler
391 );
392};
393[
394 uuid(DC6CE252-F731-41CF-B610-614B6CA049AD),
395 helpstring("IUIAnimationTransition Interface")
396]
397interface IUIAnimationTransition : IUnknown
398{
399 HRESULT SetInitialValue(
400 [in] double value
401 );
402 HRESULT SetInitialVelocity(
403 [in] double velocity
404 );
405 HRESULT IsDurationKnown(void);
406 HRESULT GetDuration(
407 [out, retval] double *duration
408 );
409};
410[
411 uuid(3D5C9008-EC7C-4364-9F8A-9AF3C58CBAE6),
412 helpstring("IUIAnimationStoryboardEventHandler Interface")
413]
414interface IUIAnimationStoryboardEventHandler : IUnknown
415{
416 HRESULT OnStoryboardStatusChanged(
417 [in] IUIAnimationStoryboard *storyboard,
418 [in] UI_ANIMATION_STORYBOARD_STATUS newStatus,
419 [in] UI_ANIMATION_STORYBOARD_STATUS previousStatus
420 );
421 HRESULT OnStoryboardUpdated(
422 [in] IUIAnimationStoryboard *storyboard
423 );
424};
425[
426 uuid(6358B7BA-87D2-42D5-BF71-82E919DD5862),
427 helpstring("IUIAnimationVariableChangeHandler Interface")
428]
429interface IUIAnimationVariableChangeHandler : IUnknown
430{
431 HRESULT OnValueChanged(
432 [in] IUIAnimationStoryboard *storyboard,
433 [in] IUIAnimationVariable *variable,
434 [in] double newValue,
435 [in] double previousValue
436 );
437};
438[
439 uuid(BB3E1550-356E-44B0-99DA-85AC6017865E),
440 helpstring("IUIAnimationVariableIntegerChangeHandler Interface")
441]
442interface IUIAnimationVariableIntegerChangeHandler : IUnknown
443{
444 HRESULT OnIntegerValueChanged(
445 [in] IUIAnimationStoryboard *storyboard,
446 [in] IUIAnimationVariable *variable,
447 [in] int newValue,
448 [in] int previousValue
449 );
450};
451[
452 uuid(783321ED-78A3-4366-B574-6AF607A64788),
453 helpstring("IUIAnimationManagerEventHandler Interface")
454]
455interface IUIAnimationManagerEventHandler : IUnknown
456{
457 HRESULT OnManagerStatusChanged(
458 [in] UI_ANIMATION_MANAGER_STATUS newStatus,
459 [in] UI_ANIMATION_MANAGER_STATUS previousStatus
460 );
461};
462[
463 uuid(83FA9B74-5F86-4618-BC6A-A2FAC19B3F44),
464 helpstring("IUIAnimationPriorityComparison Interface")
465]
466interface IUIAnimationPriorityComparison : IUnknown
467{
468 HRESULT HasPriority(
469 [in] IUIAnimationStoryboard *scheduledStoryboard,
470 [in] IUIAnimationStoryboard *newStoryboard,
471 [in] UI_ANIMATION_PRIORITY_EFFECT priorityEffect
472 );
473};
474[
475 uuid(D8B6F7D4-4109-4D3F-ACEE-879926968CB1),
476 helpstring("IUIAnimationManager2 Interface")
477]
478interface IUIAnimationManager2 : IUnknown
479{
480 HRESULT CreateAnimationVectorVariable(
481 [in] double *initialValue,
482 [in] unsigned int cDimension,
483 [out, retval] IUIAnimationVariable2 **variable
484 );
485 HRESULT CreateAnimationVariable(
486 [in] double initialValue,
487 [out, retval] IUIAnimationVariable2 **variable
488 );
489 HRESULT ScheduleTransition(
490 [in] IUIAnimationVariable2 *variable,
491 [in] IUIAnimationTransition2 *transition,
492 [in] double timeNow
493 );
494 HRESULT CreateStoryboard(
495 [out, retval] IUIAnimationStoryboard2 **storyboard
496 );
497 HRESULT FinishAllStoryboards(
498 [in] double completionDeadline
499 );
500 HRESULT AbandonAllStoryboards(void);
501 HRESULT Update(
502 [in] double timeNow,
503 [out, defaultvalue(0)] UI_ANIMATION_UPDATE_RESULT *updateResult
504 );
505 HRESULT GetVariableFromTag(
506 [in] IUnknown * object,
507 [in] UINT32 id,
508 [out, retval] IUIAnimationVariable2 **variable
509 );
510 HRESULT GetStoryboardFromTag(
511 [in] IUnknown * object,
512 [in] unsigned int id,
513 [out, retval] IUIAnimationStoryboard2 **storyboard
514 );
515 HRESULT EstimateNextEventTime(
516 [out, retval] double *seconds
517 );
518 HRESULT GetStatus(
519 [out, retval] UI_ANIMATION_MANAGER_STATUS *status
520 );
521 HRESULT SetAnimationMode(
522 [in] UI_ANIMATION_MODE mode
523 );
524 HRESULT Pause(void);
525 HRESULT Resume(void);
526 HRESULT SetManagerEventHandler(
527 [in] IUIAnimationManagerEventHandler2 *handler,
528 [in, defaultvalue(FALSE)] long fRegisterForNextAnimationEvent
529 );
530 HRESULT SetCancelPriorityComparison(
531 [in] IUIAnimationPriorityComparison2 *comparison
532 );
533 HRESULT SetTrimPriorityComparison(
534 [in] IUIAnimationPriorityComparison2 *comparison
535 );
536 HRESULT SetCompressPriorityComparison(
537 [in] IUIAnimationPriorityComparison2 *comparison
538 );
539 HRESULT SetConcludePriorityComparison(
540 [in] IUIAnimationPriorityComparison2 *comparison
541 );
542 HRESULT SetDefaultLongestAcceptableDelay(
543 [in] double delay
544 );
545 HRESULT Shutdown(void);
546};
547[
548 uuid(4914B304-96AB-44D9-9E77-D5109B7E7466),
549 helpstring("IUIAnimationVariable2 Interface")
550]
551interface IUIAnimationVariable2 : IUnknown
552{
553 HRESULT GetDimension(
554 [out, retval] unsigned int *dimension
555 );
556 HRESULT GetValue(
557 [out, retval] double *value
558 );
559 HRESULT GetVectorValue(
560 [out] double *value,
561 [in] unsigned int cDimension
562 );
563 HRESULT GetCurve(
564 [in] IDCompositionAnimation *animation
565 );
566 HRESULT GetVectorCurve(
567 [in] IDCompositionAnimation **animation,
568 [in] unsigned int cDimension
569 );
570 HRESULT GetFinalValue(
571 [out, retval] double *finalValue
572 );
573 HRESULT GetFinalVectorValue(
574 [out] double *finalValue,
575 [in] unsigned int cDimension
576 );
577 HRESULT GetPreviousValue(
578 [out, retval] double *previousValue
579 );
580 HRESULT GetPreviousVectorValue(
581 [out] double *previousValue,
582 [in] unsigned int cDimension
583 );
584 HRESULT GetIntegerValue(
585 [out, retval] int *value
586 );
587 HRESULT GetIntegerVectorValue(
588 [out] int *value,
589 [in] unsigned int cDimension
590 );
591 HRESULT GetFinalIntegerValue(
592 [out, retval] int *finalValue
593 );
594 HRESULT GetFinalIntegerVectorValue(
595 [out] int *finalValue,
596 [in] unsigned int cDimension
597 );
598 HRESULT GetPreviousIntegerValue(
599 [out, retval] int *previousValue
600 );
601 HRESULT GetPreviousIntegerVectorValue(
602 [out] int *previousValue,
603 [in] unsigned int cDimension
604 );
605 HRESULT GetCurrentStoryboard(
606 [out, retval] IUIAnimationStoryboard2 **storyboard
607 );
608 HRESULT SetLowerBound(
609 [in] double bound
610 );
611 HRESULT SetLowerBoundVector(
612 [out] double *bound,
613 [in] unsigned int cDimension
614 );
615 HRESULT SetUpperBound(
616 [in] double bound
617 );
618 HRESULT SetUpperBoundVector(
619 [out] double *bound,
620 [in] unsigned int cDimension
621 );
622 HRESULT SetRoundingMode(
623 [in] UI_ANIMATION_ROUNDING_MODE mode
624 );
625 HRESULT SetTag(
626 [in] IUnknown * object,
627 [in] unsigned int id
628 );
629 HRESULT GetTag(
630 [out] IUnknown **object,
631 [out] unsigned int *id
632 );
633 HRESULT SetVariableChangeHandler(
634 [in] IUIAnimationVariableChangeHandler2 *handler,
635 [in, defaultvalue(FALSE)] long fRegisterForNextAnimationEvent
636 );
637 HRESULT SetVariableIntegerChangeHandler(
638 [in] IUIAnimationVariableIntegerChangeHandler2 *handler,
639 [in, defaultvalue(FALSE)] long fRegisterForNextAnimationEvent
640 );
641 HRESULT SetVariableCurveChangeHandler(
642 [in] IUIAnimationVariableCurveChangeHandler2 *handler
643 );
644};
645[
646 uuid(CBFD91D9-51B2-45E4-B3DE-D19CCFB863C5),
647 helpstring("IDCompositionAnimation Interface")
648]
649interface IDCompositionAnimation : IUnknown
650{
651 HRESULT Reset(void);
652 HRESULT SetAbsoluteBeginTime(
653 LARGE_INTEGER beginTime
654 );
655 HRESULT AddCubic(
656 double beginOffset,
657 float constantCoefficient,
658 float linearCoefficient,
659 float quadraticCoefficient,
660 float cubicCoefficient
661 );
662 HRESULT AddSinusoidal(
663 double beginOffset,
664 float bias,
665 float amplitude,
666 float frequency,
667 float phase
668 );
669 HRESULT AddRepeat(
670 double beginOffset,
671 double durationToRepeat
672 );
673 HRESULT End(
674 double endOffset,
675 float endValue
676 );
677};
678[
679 uuid(AE289CD2-12D4-4945-9419-9E41BE034DF2),
680 helpstring("IUIAnimationStoryboard2 Interface")
681]
682interface IUIAnimationStoryboard2 : IUnknown
683{
684 HRESULT AddTransition(
685 [in] IUIAnimationVariable2 *variable,
686 [in] IUIAnimationTransition2 *transition
687 );
688 HRESULT AddKeyframeAtOffset(
689 [in] UI_ANIMATION_KEYFRAME existingKeyframe,
690 [in] double offset,
691 [out, retval] UI_ANIMATION_KEYFRAME *keyframe
692 );
693 HRESULT AddKeyframeAfterTransition(
694 [in] IUIAnimationTransition2 *transition,
695 [out, retval] UI_ANIMATION_KEYFRAME *keyframe
696 );
697 HRESULT AddTransitionAtKeyframe(
698 [in] IUIAnimationVariable2 *variable,
699 [in] IUIAnimationTransition2 *transition,
700 [in] UI_ANIMATION_KEYFRAME startKeyframe
701 );
702 HRESULT AddTransitionBetweenKeyframes(
703 [in] IUIAnimationVariable2 *variable,
704 [in] IUIAnimationTransition2 *transition,
705 [in] UI_ANIMATION_KEYFRAME startKeyframe,
706 [in] UI_ANIMATION_KEYFRAME endKeyframe
707 );
708 HRESULT RepeatBetweenKeyframes(
709 [in] UI_ANIMATION_KEYFRAME startKeyframe,
710 [in] UI_ANIMATION_KEYFRAME endKeyframe,
711 [in] double cRepetition,
712 [in] UI_ANIMATION_REPEAT_MODE repeatMode,
713 [in, defaultvalue(0)] IUIAnimationLoopIterationChangeHandler2 *pIterationChangeHandler,
714 [in, defaultvalue(0)] UINT_PTR id,
715 [in, defaultvalue(FALSE)] long fRegisterForNextAnimationEvent
716 );
717 HRESULT HoldVariable(
718 [in] IUIAnimationVariable2 *variable
719 );
720 HRESULT SetLongestAcceptableDelay(
721 [in] double delay
722 );
723 HRESULT SetSkipDuration(
724 [in] double secondsDuration
725 );
726 HRESULT Schedule(
727 [in] double timeNow,
728 [out, defaultvalue(0)] UI_ANIMATION_SCHEDULING_RESULT *schedulingResult
729 );
730 HRESULT Conclude(void);
731 HRESULT Finish(
732 [in] double completionDeadline
733 );
734 HRESULT Abandon(void);
735 HRESULT SetTag(
736 [in] IUnknown * object,
737 [in] unsigned int id
738 );
739 HRESULT GetTag(
740 [out] IUnknown **object,
741 [out] unsigned int *id
742 );
743 HRESULT GetStatus(
744 [out, retval] UI_ANIMATION_STORYBOARD_STATUS *status
745 );
746 HRESULT GetElapsedTime(
747 [out] double *elapsedTime
748 );
749 HRESULT SetStoryboardEventHandler(
750 [in] IUIAnimationStoryboardEventHandler2 *handler,
751 [in, defaultvalue(FALSE)] long fRegisterStatusChangeForNextAnimationEvent,
752 [in, defaultvalue(FALSE)] long fRegisterUpdateForNextAnimationEvent
753 );
754};
755[
756 uuid(62FF9123-A85A-4E9B-A218-435A93E268FD),
757 helpstring("IUIAnimationTransition2 Interface")
758]
759interface IUIAnimationTransition2 : IUnknown
760{
761 HRESULT GetDimension(
762 [out, retval] unsigned int *dimension
763 );
764 HRESULT SetInitialValue(
765 [in] double value
766 );
767 HRESULT SetInitialVectorValue(
768 [in] double *value,
769 [in] unsigned int cDimension
770 );
771 HRESULT SetInitialVelocity(
772 [in] double velocity
773 );
774 HRESULT SetInitialVectorVelocity(
775 [in] double *velocity,
776 [in] unsigned int cDimension
777 );
778 HRESULT IsDurationKnown(void);
779 HRESULT GetDuration(
780 [out, retval] double *duration
781 );
782};
783[
784 uuid(2D3B15A4-4762-47AB-A030-B23221DF3AE0),
785 helpstring("IUIAnimationLoopIterationChangeHandler2 Interface")
786]
787interface IUIAnimationLoopIterationChangeHandler2 : IUnknown
788{
789 HRESULT OnLoopIterationChanged(
790 [in] IUIAnimationStoryboard2 *storyboard,
791 [in] UINT_PTR id,
792 [in] unsigned int newIterationCount,
793 [in] unsigned int oldIterationCount
794 );
795};
796[
797 uuid(BAC5F55A-BA7C-414C-B599-FBF850F553C6),
798 helpstring("IUIAnimationStoryboardEventHandler Interface")
799]
800interface IUIAnimationStoryboardEventHandler2 : IUnknown
801{
802 HRESULT OnStoryboardStatusChanged(
803 [in] IUIAnimationStoryboard2 *storyboard,
804 [in] UI_ANIMATION_STORYBOARD_STATUS newStatus,
805 [in] UI_ANIMATION_STORYBOARD_STATUS previousStatus
806 );
807 HRESULT OnStoryboardUpdated(
808 [in] IUIAnimationStoryboard2 *storyboard
809 );
810};
811[
812 uuid(63ACC8D2-6EAE-4BB0-B879-586DD8CFBE42),
813 helpstring("IUIAnimationVariableChangeHandler2 Interface")
814]
815interface IUIAnimationVariableChangeHandler2 : IUnknown
816{
817 HRESULT OnValueChanged(
818 [in] IUIAnimationStoryboard2 *storyboard,
819 [in] IUIAnimationVariable2 *variable,
820 [in] double *newValue,
821 [in] double *previousValue,
822 [in] unsigned int cDimension
823 );
824};
825[
826 uuid(829B6CF1-4F3A-4412-AE09-B243EB4C6B58),
827 helpstring("IUIAnimationVariableIntegerChangeHandler2 Interface")
828]
829interface IUIAnimationVariableIntegerChangeHandler2 : IUnknown
830{
831 HRESULT OnIntegerValueChanged(
832 [in] IUIAnimationStoryboard2 *storyboard,
833 [in] IUIAnimationVariable2 *variable,
834 [in] int *newValue,
835 [in] int *previousValue,
836 [in] unsigned int cDimension
837 );
838};
839[
840 uuid(72895E91-0145-4C21-9192-5AAB40EDDF80),
841 helpstring("IUIAnimationVariableCurveChangeHandler2 Interface")
842]
843interface IUIAnimationVariableCurveChangeHandler2 : IUnknown
844{
845 HRESULT OnCurveChanged(
846 [in] IUIAnimationVariable2 *variable
847 );
848};
849[
850 uuid(F6E022BA-BFF3-42EC-9033-E073F33E83C3),
851 helpstring("IUIAnimationManagerEventHandler2 Interface")
852]
853interface IUIAnimationManagerEventHandler2 : IUnknown
854{
855 HRESULT OnManagerStatusChanged(
856 [in] UI_ANIMATION_MANAGER_STATUS newStatus,
857 [in] UI_ANIMATION_MANAGER_STATUS previousStatus
858 );
859};
860[
861 uuid(5B6D7A37-4621-467C-8B05-70131DE62DDB),
862 helpstring("IUIAnimationPriorityComparison2 Interface")
863]
864interface IUIAnimationPriorityComparison2 : IUnknown
865{
866 HRESULT HasPriority(
867 [in] IUIAnimationStoryboard2 *scheduledStoryboard,
868 [in] IUIAnimationStoryboard2 *newStoryboard,
869 [in] UI_ANIMATION_PRIORITY_EFFECT priorityEffect
870 );
871};
872[
873 uuid(CA5A14B1-D24F-48B8-8FE4-C78169BA954E),
874 helpstring("IUIAnimationTransitionLibrary Interface")
875]
876interface IUIAnimationTransitionLibrary : IUnknown
877{
878 HRESULT CreateInstantaneousTransition(
879 [in] double finalValue,
880 [out, retval] IUIAnimationTransition **transition
881 );
882 HRESULT CreateConstantTransition(
883 [in] double duration,
884 [out, retval] IUIAnimationTransition **transition
885 );
886 HRESULT CreateDiscreteTransition(
887 [in] double delay,
888 [in] double finalValue,
889 [in] double hold,
890 [out, retval] IUIAnimationTransition **transition
891 );
892 HRESULT CreateLinearTransition(
893 [in] double duration,
894 [in] double finalValue,
895 [out, retval] IUIAnimationTransition **transition
896 );
897 HRESULT CreateLinearTransitionFromSpeed(
898 [in] double speed,
899 [in] double finalValue,
900 [out, retval] IUIAnimationTransition **transition
901 );
902 HRESULT CreateSinusoidalTransitionFromVelocity(
903 [in] double duration,
904 [in] double period,
905 [out, retval] IUIAnimationTransition **transition
906 );
907 HRESULT CreateSinusoidalTransitionFromRange(
908 [in] double duration,
909 [in] double minimumValue,
910 [in] double maximumValue,
911 [in] double period,
912 [in] UI_ANIMATION_SLOPE slope,
913 [out, retval] IUIAnimationTransition **transition
914 );
915 HRESULT CreateAccelerateDecelerateTransition(
916 [in] double duration,
917 [in] double finalValue,
918 [in] double accelerationRatio,
919 [in] double decelerationRatio,
920 [out, retval] IUIAnimationTransition **transition
921 );
922 HRESULT CreateReversalTransition(
923 [in] double duration,
924 [out, retval] IUIAnimationTransition **transition
925 );
926 HRESULT CreateCubicTransition(
927 [in] double duration,
928 [in] double finalValue,
929 [in] double finalVelocity,
930 [out, retval] IUIAnimationTransition **transition
931 );
932 HRESULT CreateSmoothStopTransition(
933 [in] double maximumDuration,
934 [in] double finalValue,
935 [out, retval] IUIAnimationTransition **transition
936 );
937 HRESULT CreateParabolicTransitionFromAcceleration(
938 [in] double finalValue,
939 [in] double finalVelocity,
940 [in] double acceleration,
941 [out, retval] IUIAnimationTransition **transition
942 );
943};
944[
945 uuid(03CFAE53-9580-4EE3-B363-2ECE51B4AF6A),
946 helpstring("IUIAnimationTransitionLibrary2 Interface")
947]
948interface IUIAnimationTransitionLibrary2 : IUnknown
949{
950 HRESULT CreateInstantaneousTransition(
951 [in] double finalValue,
952 [out, retval] IUIAnimationTransition2 **transition
953 );
954 HRESULT CreateInstantaneousVectorTransition(
955 [in] double *finalValue,
956 [in] unsigned int cDimension,
957 [out, retval] IUIAnimationTransition2 **transition
958 );
959 HRESULT CreateConstantTransition(
960 [in] double duration,
961 [out, retval] IUIAnimationTransition2 **transition
962 );
963 HRESULT CreateDiscreteTransition(
964 [in] double delay,
965 [in] double finalValue,
966 [in] double hold,
967 [out, retval] IUIAnimationTransition2 **transition
968 );
969 HRESULT CreateDiscreteVectorTransition(
970 [in] double delay,
971 [in] double *finalValue,
972 [in] unsigned int cDimension,
973 [in] double hold,
974 [out, retval] IUIAnimationTransition2 **transition
975 );
976 HRESULT CreateLinearTransition(
977 [in] double duration,
978 [in] double finalValue,
979 [out, retval] IUIAnimationTransition2 **transition
980 );
981 HRESULT CreateLinearVectorTransition(
982 [in] double duration,
983 [in] double *finalValue,
984 [in] unsigned int cDimension,
985 [out, retval] IUIAnimationTransition2 **transition
986 );
987 HRESULT CreateLinearTransitionFromSpeed(
988 [in] double speed,
989 [in] double finalValue,
990 [out, retval] IUIAnimationTransition2 **transition
991 );
992 HRESULT CreateLinearVectorTransitionFromSpeed(
993 [in] double speed,
994 [in] double *finalValue,
995 [in] unsigned int cDimension,
996 [out, retval] IUIAnimationTransition2 **transition
997 );
998 HRESULT CreateSinusoidalTransitionFromVelocity(
999 [in] double duration,
1000 [in] double period,
1001 [out, retval] IUIAnimationTransition2 **transition
1002 );
1003 HRESULT CreateSinusoidalTransitionFromRange(
1004 [in] double duration,
1005 [in] double minimumValue,
1006 [in] double maximumValue,
1007 [in] double period,
1008 [in] UI_ANIMATION_SLOPE slope,
1009 [out, retval] IUIAnimationTransition2 **transition
1010 );
1011 HRESULT CreateAccelerateDecelerateTransition(
1012 [in] double duration,
1013 [in] double finalValue,
1014 [in] double accelerationRatio,
1015 [in] double decelerationRatio,
1016 [out, retval] IUIAnimationTransition2 **transition
1017 );
1018 HRESULT CreateReversalTransition(
1019 [in] double duration,
1020 [out, retval] IUIAnimationTransition2 **transition
1021 );
1022 HRESULT CreateCubicTransition(
1023 [in] double duration,
1024 [in] double finalValue,
1025 [in] double finalVelocity,
1026 [out, retval] IUIAnimationTransition2 **transition
1027 );
1028 HRESULT CreateCubicVectorTransition(
1029 [in] double duration,
1030 [in] double *finalValue,
1031 [in] double *finalVelocity,
1032 [in] unsigned int cDimension,
1033 [out, retval] IUIAnimationTransition2 **transition
1034 );
1035 HRESULT CreateSmoothStopTransition(
1036 [in] double maximumDuration,
1037 [in] double finalValue,
1038 [out, retval] IUIAnimationTransition2 **transition
1039 );
1040 HRESULT CreateParabolicTransitionFromAcceleration(
1041 [in] double finalValue,
1042 [in] double finalVelocity,
1043 [in] double acceleration,
1044 [out, retval] IUIAnimationTransition2 **transition
1045 );
1046 HRESULT CreateCubicBezierLinearTransition(
1047 [in] double duration,
1048 [in] double finalValue,
1049 [in] double x1,
1050 [in] double y1,
1051 [in] double x2,
1052 [in] double y2,
1053 [out] IUIAnimationTransition2 **ppTransition
1054 );
1055 HRESULT CreateCubicBezierLinearVectorTransition(
1056 [in] double duration,
1057 [in] double *finalValue,
1058 [in] unsigned int cDimension,
1059 [in] double x1,
1060 [in] double y1,
1061 [in] double x2,
1062 [in] double y2,
1063 [out] IUIAnimationTransition2 **ppTransition
1064 );
1065};
1066[
1067 uuid(FCD91E03-3E3B-45AD-BBB1-6DFC8153743D),
1068 helpstring("IUIAnimationTransitionFactory Interface")
1069]
1070interface IUIAnimationTransitionFactory : IUnknown
1071{
1072 HRESULT CreateTransition(
1073 [in] IUIAnimationInterpolator *interpolator,
1074 [out, retval] IUIAnimationTransition **transition
1075 );
1076};
1077[
1078 uuid(7815CBBA-DDF7-478C-A46C-7B6C738B7978),
1079 helpstring("IUIAnimationInterpolator Interface")
1080]
1081interface IUIAnimationInterpolator : IUnknown
1082{
1083 HRESULT SetInitialValueAndVelocity(
1084 [in] double initialValue,
1085 [in] double initialVelocity
1086 );
1087 HRESULT SetDuration(
1088 [in] double duration
1089 );
1090 HRESULT GetDuration(
1091 [out, retval] double *duration
1092 );
1093 HRESULT GetFinalValue(
1094 [out, retval] double *value
1095 );
1096 HRESULT InterpolateValue(
1097 [in] double offset,
1098 [out, retval] double *value
1099 );
1100 HRESULT InterpolateVelocity(
1101 [in] double offset,
1102 [out, retval] double *velocity
1103 );
1104 HRESULT GetDependencies(
1105 [out] UI_ANIMATION_DEPENDENCIES *initialValueDependencies,
1106 [out] UI_ANIMATION_DEPENDENCIES *initialVelocityDependencies,
1107 [out] UI_ANIMATION_DEPENDENCIES *durationDependencies
1108 );
1109};
1110[
1111 uuid(937D4916-C1A6-42D5-88D8-30344D6EFE31),
1112 helpstring("IUIAnimationTransitionFactory2 Interface")
1113]
1114interface IUIAnimationTransitionFactory2 : IUnknown
1115{
1116 HRESULT CreateTransition(
1117 [in] IUIAnimationInterpolator2 *interpolator,
1118 [out, retval] IUIAnimationTransition2 **transition
1119 );
1120};
1121[
1122 uuid(EA76AFF8-EA22-4A23-A0EF-A6A966703518),
1123 helpstring("IUIAnimationInterpolator2 Interface")
1124]
1125interface IUIAnimationInterpolator2 : IUnknown
1126{
1127 HRESULT GetDimension(
1128 [out, retval] unsigned int *dimension
1129 );
1130 HRESULT SetInitialValueAndVelocity(
1131 [in] double *initialValue,
1132 [in] double *initialVelocity,
1133 [in] unsigned int cDimension
1134 );
1135 HRESULT SetDuration(
1136 [in] double duration
1137 );
1138 HRESULT GetDuration(
1139 [out, retval] double *duration
1140 );
1141 HRESULT GetFinalValue(
1142 [out] double *value,
1143 [in] unsigned int cDimension
1144 );
1145 HRESULT InterpolateValue(
1146 [in] double offset,
1147 [out] double *value,
1148 [in] unsigned int cDimension
1149 );
1150 HRESULT InterpolateVelocity(
1151 [in] double offset,
1152 [out] double *velocity,
1153 [in] unsigned int cDimension
1154 );
1155 HRESULT GetPrimitiveInterpolation(
1156 [in] IUIAnimationPrimitiveInterpolation *interpolation,
1157 [in] unsigned int cDimension
1158 );
1159 HRESULT GetDependencies(
1160 [out] UI_ANIMATION_DEPENDENCIES *initialValueDependencies,
1161 [out] UI_ANIMATION_DEPENDENCIES *initialVelocityDependencies,
1162 [out] UI_ANIMATION_DEPENDENCIES *durationDependencies
1163 );
1164};
1165[
1166 uuid(BAB20D63-4361-45DA-A24F-AB8508846B5B),
1167 helpstring("IUIAnimationPrimitiveInterpolation Interface")
1168]
1169interface IUIAnimationPrimitiveInterpolation : IUnknown
1170{
1171 HRESULT AddCubic(
1172 [in] unsigned int dimension,
1173 [in] double beginOffset,
1174 [in] float constantCoefficient,
1175 [in] float linearCoefficient,
1176 [in] float quadraticCoefficient,
1177 [in] float cubicCoefficient
1178 );
1179 HRESULT AddSinusoidal(
1180 [in] unsigned int dimension,
1181 [in] double beginOffset,
1182 [in] float bias,
1183 [in] float amplitude,
1184 [in] float frequency,
1185 [in] float phase
1186 );
1187};
1188[
1189 uuid(6B0EFAD1-A053-41D6-9085-33A689144665),
1190 helpstring("IUIAnimationTimer Interface")
1191]
1192interface IUIAnimationTimer : IUnknown
1193{
1194 HRESULT SetTimerUpdateHandler(
1195 [in] IUIAnimationTimerUpdateHandler *updateHandler,
1196 [in] UI_ANIMATION_IDLE_BEHAVIOR idleBehavior
1197 );
1198 HRESULT SetTimerEventHandler(
1199 [in] IUIAnimationTimerEventHandler *handler
1200 );
1201 HRESULT Enable(void);
1202 HRESULT Disable(void);
1203 HRESULT IsEnabled(void);
1204 HRESULT GetTime(
1205 [out] double *seconds
1206 );
1207 HRESULT SetFrameRateThreshold(
1208 [in] unsigned int framesPerSecond
1209 );
1210};
1211[
1212 uuid(195509B7-5D5E-4E3E-B278-EE3759B367AD),
1213 helpstring("IUIAnimationTimerUpdateHandler Interface")
1214]
1215interface IUIAnimationTimerUpdateHandler : IUnknown
1216{
1217 HRESULT OnUpdate(
1218 [in] double timeNow,
1219 [out, retval] UI_ANIMATION_UPDATE_RESULT *result
1220 );
1221 HRESULT SetTimerClientEventHandler(
1222 [in] IUIAnimationTimerClientEventHandler *handler
1223 );
1224 HRESULT ClearTimerClientEventHandler(void);
1225};
1226[
1227 uuid(BEDB4DB6-94FA-4BFB-A47F-EF2D9E408C25),
1228 helpstring("IUIAnimationTimerClientEventHandler Interface")
1229]
1230interface IUIAnimationTimerClientEventHandler : IUnknown
1231{
1232 HRESULT OnTimerClientStatusChanged(
1233 [in] UI_ANIMATION_TIMER_CLIENT_STATUS newStatus,
1234 [in] UI_ANIMATION_TIMER_CLIENT_STATUS previousStatus
1235 );
1236};
1237[
1238 uuid(274A7DEA-D771-4095-ABBD-8DF7ABD23CE3),
1239 helpstring("IUIAnimationTimerEventHandler Interface")
1240]
1241interface IUIAnimationTimerEventHandler : IUnknown
1242{
1243 HRESULT OnPreUpdate(void);
1244 HRESULT OnPostUpdate(void);
1245 HRESULT OnRenderingTooSlow(
1246 [in] UINT32 framesPerSecond
1247 );
1248};
Note: See TracBrowser for help on using the repository browser.