Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Core / MS / Internal / Shaping / GlyphShapingProperties.cs / 1 / GlyphShapingProperties.cs
//------------------------------------------------------------------------ // // Microsoft Windows Client Platform // Copyright (C) Microsoft Corporation, 2004 // // File: GlyphShapingProperties.cs // // Contents: Definition of glyph properties // // Created: 1-2-2004 [....] ([....]) // // 10-27-2004 [....] Move to System.Windows.Media.TextFormatting // namespace // // 1-20-2005 [....] Move to MS.Internal.Shaping //----------------------------------------------------------------------- using System; namespace MS.Internal.Shaping { ////// Properties indicating glyph characteristics /// internal struct GlyphShapingProperties { ////// Construct a glyph properties value from multiple values from shaping /// /// shaping engine glyph flags /// bits reserved for shaping engine use internal GlyphShapingProperties( ushort glyphFlags, ushort engineReserved ) { _value = glyphFlags; _value |= ((uint)engineReserved) << 16; } ////// Get or Set bits reserved for shaping engine use /// internal ushort GlyphFlags { get { return (ushort)(_value & GlyphFlagsMask); } set { _value = (_value & ~EngineReservedValueMask) | (uint)value; } } ////// Get or Set bits reserved for shaping engine use /// internal ushort EngineReserved { get { return (ushort)(_value >> 16); } set { _value = (_value & ~EngineReservedValueMask) | (uint)(value << 16); } } ////// Explicitly convert this value type to integer /// public static explicit operator int(GlyphShapingProperties props) { return (int)props._value; } ////// Compares two GlyphShapingProperties for equality. /// ///Returns true if the arguments have identical properties, false if not. public static bool operator ==( GlyphShapingProperties left, GlyphShapingProperties right) { return left._value == right._value; } ////// Compares two GlyphShapingProperties for inequality. /// ///Returns true if the arguments are not equal, false if they are equal. public static bool operator !=( GlyphShapingProperties left, GlyphShapingProperties right) { return !(left == right); } ////// Compares the specified object with this. /// ///Returns true if the specified object is a GlyphShapingProperties with the same /// value as this object. public override bool Equals( object o) { if (o != null && o is GlyphShapingProperties) { return (GlyphShapingProperties)o == this; } else { return false; } } ////// Returns a hash code based on the property flags. /// public override int GetHashCode() { return (int)_value; } private uint _value; private const uint GlyphFlagsMask = 0x0000FFFF; private const uint EngineReservedValueMask = 0xFFFF0000; } } // 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
- NumericUpDownAccelerationCollection.cs
- Wizard.cs
- VisualBasicImportReference.cs
- QueueProcessor.cs
- MethodCallConverter.cs
- ToolStripItemDataObject.cs
- ByteStreamGeometryContext.cs
- AnchoredBlock.cs
- BaseDataList.cs
- WCFBuildProvider.cs
- StringUtil.cs
- RelatedCurrencyManager.cs
- HtmlMeta.cs
- XamlWriterExtensions.cs
- HttpContextServiceHost.cs
- DataView.cs
- CodeIterationStatement.cs
- _ReceiveMessageOverlappedAsyncResult.cs
- SizeChangedEventArgs.cs
- ZeroOpNode.cs
- ToolStripOverflowButton.cs
- SkewTransform.cs
- MemberInfoSerializationHolder.cs
- IconConverter.cs
- ServiceReference.cs
- MultiSelector.cs
- TraceEventCache.cs
- CodeDelegateInvokeExpression.cs
- Compiler.cs
- GregorianCalendarHelper.cs
- OperationCanceledException.cs
- IgnoreDeviceFilterElementCollection.cs
- GlobalizationSection.cs
- X509AsymmetricSecurityKey.cs
- DataStorage.cs
- ListItemViewControl.cs
- X509PeerCertificateAuthentication.cs
- DocumentsTrace.cs
- AccessDataSource.cs
- SurrogateEncoder.cs
- SecondaryIndexList.cs
- HashHelpers.cs
- Transactions.cs
- DateTimeOffsetStorage.cs
- PolyQuadraticBezierSegmentFigureLogic.cs
- PointAnimationBase.cs
- ImageList.cs
- IUnknownConstantAttribute.cs
- Span.cs
- Number.cs
- PTUtility.cs
- URI.cs
- JulianCalendar.cs
- ProfileProvider.cs
- Cursor.cs
- EnumBuilder.cs
- IndexExpression.cs
- QilInvokeEarlyBound.cs
- ColorConvertedBitmapExtension.cs
- RoutingEndpointTrait.cs
- ScrollItemProviderWrapper.cs
- EntityTypeEmitter.cs
- IsolatedStorageException.cs
- DataError.cs
- NTAccount.cs
- ProfessionalColorTable.cs
- SpellCheck.cs
- CompensatableSequenceActivity.cs
- UITypeEditor.cs
- SplitterEvent.cs
- PauseStoryboard.cs
- ToolboxComponentsCreatedEventArgs.cs
- PlainXmlSerializer.cs
- RelatedCurrencyManager.cs
- DataObjectFieldAttribute.cs
- ActivityDesignerLayoutSerializers.cs
- DbParameterCollection.cs
- XmlArrayItemAttributes.cs
- PlatformCulture.cs
- FindResponse.cs
- DataObjectMethodAttribute.cs
- Types.cs
- RectIndependentAnimationStorage.cs
- ReadOnlyNameValueCollection.cs
- RuntimeConfigLKG.cs
- ImageKeyConverter.cs
- ProfileWorkflowElement.cs
- ParameterCollection.cs
- NonParentingControl.cs
- NameValueCollection.cs
- PathGradientBrush.cs
- ZipIOFileItemStream.cs
- ComplexTypeEmitter.cs
- Identity.cs
- DataFormats.cs
- ToolStripButton.cs
- MemberInfoSerializationHolder.cs
- RSAPKCS1SignatureDeformatter.cs
- DatagramAdapter.cs
- ProcessInfo.cs