Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Core / CSharp / System / Windows / Media / Animation / AnimationTimeline.cs / 1305600 / AnimationTimeline.cs
// AnimationTimeline.cs
using System;
using System.Diagnostics;
using System.Windows;
using SR=MS.Internal.PresentationCore.SR;
using SRID=MS.Internal.PresentationCore.SRID;
namespace System.Windows.Media.Animation
{
///
///
///
public abstract class AnimationTimeline : Timeline
{
///
///
///
protected AnimationTimeline()
: base()
{
}
#region Dependency Properties
private static void AnimationTimeline_PropertyChangedFunction(DependencyObject d,
DependencyPropertyChangedEventArgs e)
{
((AnimationTimeline)d).PropertyChanged(e.Property);
}
///
///
///
public static readonly DependencyProperty IsAdditiveProperty =
DependencyProperty.Register(
"IsAdditive", // Property Name
typeof(bool), // Property Type
typeof(AnimationTimeline), // Owner Class
new PropertyMetadata(false,
new PropertyChangedCallback(AnimationTimeline_PropertyChangedFunction)));
///
///
///
public static readonly DependencyProperty IsCumulativeProperty =
DependencyProperty.Register(
"IsCumulative", // Property Name
typeof(bool), // Property Type
typeof(AnimationTimeline), // Owner Class
new PropertyMetadata(false,
new PropertyChangedCallback(AnimationTimeline_PropertyChangedFunction)));
#endregion
#region Freezable
///
/// Creates a copy of this AnimationTimeline.
///
/// The copy.
public new AnimationTimeline Clone()
{
return (AnimationTimeline)base.Clone();
}
#endregion
#region Timeline
///
///
///
///
protected internal override Clock AllocateClock()
{
return new AnimationClock(this);
}
///
/// Creates a new AnimationClock using this AnimationTimeline.
///
/// A new AnimationClock.
new public AnimationClock CreateClock()
{
return (AnimationClock)base.CreateClock();
}
#endregion
///
/// Calculates the value this animation believes should be the current value for the property.
///
///
/// This value is the suggested origin value provided to the animation
/// to be used if the animation does not have its own concept of a
/// start value. If this animation is not the first in a composition
/// chain this value will be the value returned by the previous
/// animation in the chain with an animationClock that is not Stopped.
///
///
/// This value is the suggested destination value provided to the animation
/// to be used if the animation does not have its own concept of an
/// end value. If this animation is not the first in a composition
/// chain this value will be the value returned by the previous
/// animation in the chain with an animationClock that is not Stopped.
///
///
/// This is the animationClock which can generate the CurrentTime or
/// CurrentProgress value to be used by the animation to generate its
/// output value.
///
///
/// The value this animation believes should be the current value for the property.
///
public virtual object GetCurrentValue(object defaultOriginValue, object defaultDestinationValue, AnimationClock animationClock)
{
ReadPreamble();
return defaultDestinationValue;
}
///
/// Provide a custom natural Duration when the Duration property is set to Automatic.
///
///
/// The Clock whose natural duration is desired.
///
///
/// A Duration quantity representing the natural duration. Default is 1 second for animations.
///
protected override Duration GetNaturalDurationCore(Clock clock)
{
return new TimeSpan(0, 0, 1);
}
///
/// Returns the type of the animation.
///
///
public abstract Type TargetPropertyType { get; }
///
/// This property is implemented by the animation to return true if the
/// animation uses the defaultDestinationValue parameter to the
/// GetCurrentValue method as its destination value. Specifically, if
/// Progress is equal to 1.0, will this animation return the
/// default destination value as its current value.
///
public virtual bool IsDestinationDefault
{
get
{
ReadPreamble();
return false;
}
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
// AnimationTimeline.cs
using System;
using System.Diagnostics;
using System.Windows;
using SR=MS.Internal.PresentationCore.SR;
using SRID=MS.Internal.PresentationCore.SRID;
namespace System.Windows.Media.Animation
{
///
///
///
public abstract class AnimationTimeline : Timeline
{
///
///
///
protected AnimationTimeline()
: base()
{
}
#region Dependency Properties
private static void AnimationTimeline_PropertyChangedFunction(DependencyObject d,
DependencyPropertyChangedEventArgs e)
{
((AnimationTimeline)d).PropertyChanged(e.Property);
}
///
///
///
public static readonly DependencyProperty IsAdditiveProperty =
DependencyProperty.Register(
"IsAdditive", // Property Name
typeof(bool), // Property Type
typeof(AnimationTimeline), // Owner Class
new PropertyMetadata(false,
new PropertyChangedCallback(AnimationTimeline_PropertyChangedFunction)));
///
///
///
public static readonly DependencyProperty IsCumulativeProperty =
DependencyProperty.Register(
"IsCumulative", // Property Name
typeof(bool), // Property Type
typeof(AnimationTimeline), // Owner Class
new PropertyMetadata(false,
new PropertyChangedCallback(AnimationTimeline_PropertyChangedFunction)));
#endregion
#region Freezable
///
/// Creates a copy of this AnimationTimeline.
///
/// The copy.
public new AnimationTimeline Clone()
{
return (AnimationTimeline)base.Clone();
}
#endregion
#region Timeline
///
///
///
///
protected internal override Clock AllocateClock()
{
return new AnimationClock(this);
}
///
/// Creates a new AnimationClock using this AnimationTimeline.
///
/// A new AnimationClock.
new public AnimationClock CreateClock()
{
return (AnimationClock)base.CreateClock();
}
#endregion
///
/// Calculates the value this animation believes should be the current value for the property.
///
///
/// This value is the suggested origin value provided to the animation
/// to be used if the animation does not have its own concept of a
/// start value. If this animation is not the first in a composition
/// chain this value will be the value returned by the previous
/// animation in the chain with an animationClock that is not Stopped.
///
///
/// This value is the suggested destination value provided to the animation
/// to be used if the animation does not have its own concept of an
/// end value. If this animation is not the first in a composition
/// chain this value will be the value returned by the previous
/// animation in the chain with an animationClock that is not Stopped.
///
///
/// This is the animationClock which can generate the CurrentTime or
/// CurrentProgress value to be used by the animation to generate its
/// output value.
///
///
/// The value this animation believes should be the current value for the property.
///
public virtual object GetCurrentValue(object defaultOriginValue, object defaultDestinationValue, AnimationClock animationClock)
{
ReadPreamble();
return defaultDestinationValue;
}
///
/// Provide a custom natural Duration when the Duration property is set to Automatic.
///
///
/// The Clock whose natural duration is desired.
///
///
/// A Duration quantity representing the natural duration. Default is 1 second for animations.
///
protected override Duration GetNaturalDurationCore(Clock clock)
{
return new TimeSpan(0, 0, 1);
}
///
/// Returns the type of the animation.
///
///
public abstract Type TargetPropertyType { get; }
///
/// This property is implemented by the animation to return true if the
/// animation uses the defaultDestinationValue parameter to the
/// GetCurrentValue method as its destination value. Specifically, if
/// Progress is equal to 1.0, will this animation return the
/// default destination value as its current value.
///
public virtual bool IsDestinationDefault
{
get
{
ReadPreamble();
return false;
}
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- QuerySettings.cs
- ZipIOCentralDirectoryDigitalSignature.cs
- PDBReader.cs
- DirectionalLight.cs
- MSAAEventDispatcher.cs
- XPathNavigatorReader.cs
- StickyNoteHelper.cs
- ParameterCollection.cs
- _LocalDataStore.cs
- LineServices.cs
- TreeIterators.cs
- WindowsListViewSubItem.cs
- ContractSearchPattern.cs
- StylusPointProperty.cs
- ImageMetadata.cs
- UniqueIdentifierService.cs
- SecurityPolicySection.cs
- SafeIUnknown.cs
- CodeValidator.cs
- PerformanceCounterCategory.cs
- UserNameSecurityTokenProvider.cs
- RequiredFieldValidator.cs
- ReadingWritingEntityEventArgs.cs
- DataGridViewRowPostPaintEventArgs.cs
- KeyedCollection.cs
- KeyInterop.cs
- PathFigureCollectionConverter.cs
- MessageQueuePermissionEntryCollection.cs
- ApplicationSecurityInfo.cs
- PersonalizableTypeEntry.cs
- NewArrayExpression.cs
- DeploymentSection.cs
- SqlPersonalizationProvider.cs
- EllipseGeometry.cs
- VirtualPathUtility.cs
- HMAC.cs
- NullEntityWrapper.cs
- IteratorFilter.cs
- TextFormatter.cs
- XmlIncludeAttribute.cs
- Ipv6Element.cs
- SpeechSynthesizer.cs
- ExpressionBuilderCollection.cs
- FacetChecker.cs
- MatrixCamera.cs
- ApplicationFileCodeDomTreeGenerator.cs
- Utils.cs
- IntegrationExceptionEventArgs.cs
- ListItemConverter.cs
- DataObjectSettingDataEventArgs.cs
- CompatibleComparer.cs
- ConfigurationStrings.cs
- PartialList.cs
- parserscommon.cs
- GraphicsPathIterator.cs
- DBConcurrencyException.cs
- HandledEventArgs.cs
- ConstantCheck.cs
- formatter.cs
- StringToken.cs
- CreateUserErrorEventArgs.cs
- PtsCache.cs
- CodePrimitiveExpression.cs
- QuaternionRotation3D.cs
- BookmarkList.cs
- FormViewDeletedEventArgs.cs
- HttpBrowserCapabilitiesWrapper.cs
- UTF8Encoding.cs
- ScriptReferenceBase.cs
- RequestQueryParser.cs
- TextLineResult.cs
- XmlDataLoader.cs
- HttpContextServiceHost.cs
- SchemaType.cs
- ExceptionHelpers.cs
- ConfigXmlSignificantWhitespace.cs
- PermissionListSet.cs
- SoapConverter.cs
- DataGridViewSelectedRowCollection.cs
- ToolboxBitmapAttribute.cs
- VirtualPathExtension.cs
- SchemaObjectWriter.cs
- Thickness.cs
- InfoCardKeyedHashAlgorithm.cs
- Point3DKeyFrameCollection.cs
- SelectorItemAutomationPeer.cs
- TraceLevelStore.cs
- DbSetClause.cs
- DesignerDataSchemaClass.cs
- HttpAsyncResult.cs
- DesignTimeTemplateParser.cs
- IssuedTokenParametersElement.cs
- CounterCreationData.cs
- SpecialFolderEnumConverter.cs
- ScriptReference.cs
- XmlSchemaProviderAttribute.cs
- baseaxisquery.cs
- XsltArgumentList.cs
- ImageListUtils.cs
- StandardCommands.cs