Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / wpf / src / Core / CSharp / 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 Worachai Chaoweeraprasit (wchao) // // 10-27-2004 garyyang Move to System.Windows.Media.TextFormatting // namespace // // 1-20-2005 garyyang 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. //------------------------------------------------------------------------ // // Microsoft Windows Client Platform // Copyright (C) Microsoft Corporation, 2004 // // File: GlyphShapingProperties.cs // // Contents: Definition of glyph properties // // Created: 1-2-2004 Worachai Chaoweeraprasit (wchao) // // 10-27-2004 garyyang Move to System.Windows.Media.TextFormatting // namespace // // 1-20-2005 garyyang 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
- Encoder.cs
- SystemWebCachingSectionGroup.cs
- HashMembershipCondition.cs
- CoTaskMemHandle.cs
- CacheMode.cs
- Visual3D.cs
- RawContentTypeMapper.cs
- Publisher.cs
- SQLBytesStorage.cs
- DashStyles.cs
- DirectoryObjectSecurity.cs
- TrustManagerMoreInformation.cs
- PlatformNotSupportedException.cs
- XmlTextReader.cs
- Control.cs
- OleServicesContext.cs
- X509CertificateClaimSet.cs
- WindowsButton.cs
- DummyDataSource.cs
- EnumValAlphaComparer.cs
- SyndicationElementExtension.cs
- BaseParagraph.cs
- Hash.cs
- UInt16Converter.cs
- ApplyTemplatesAction.cs
- objectquery_tresulttype.cs
- ProfessionalColorTable.cs
- CustomSignedXml.cs
- ToolStripSplitButton.cs
- HashMembershipCondition.cs
- ArrayList.cs
- DiagnosticsConfigurationHandler.cs
- KeyGesture.cs
- SmiMetaData.cs
- SpellerInterop.cs
- GenericEnumConverter.cs
- Events.cs
- Point3DAnimation.cs
- Int64KeyFrameCollection.cs
- EntityReference.cs
- RelationshipConstraintValidator.cs
- StubHelpers.cs
- XmlWriterSettings.cs
- DynamicRenderer.cs
- NamedObject.cs
- MsmqNonTransactedPoisonHandler.cs
- Transform3DGroup.cs
- DBAsyncResult.cs
- ServiceHostFactory.cs
- Query.cs
- StateItem.cs
- ActivityExecutorDelegateInfo.cs
- HttpServerVarsCollection.cs
- PropertyEntry.cs
- RightsManagementEncryptionTransform.cs
- Privilege.cs
- ConfigurationStrings.cs
- TemplateParser.cs
- Rotation3DAnimation.cs
- SmtpSpecifiedPickupDirectoryElement.cs
- BindingContext.cs
- SafeNativeMethodsCLR.cs
- SetMemberBinder.cs
- EFDataModelProvider.cs
- Cloud.cs
- ListViewItem.cs
- CroppedBitmap.cs
- BinarySerializer.cs
- SuppressMergeCheckAttribute.cs
- VectorConverter.cs
- WhileDesigner.cs
- ProcessHost.cs
- DataSourceXmlSubItemAttribute.cs
- AvTraceFormat.cs
- DoubleStorage.cs
- DelegateSerializationHolder.cs
- RequiredArgumentAttribute.cs
- AuthenticatedStream.cs
- ConfigXmlWhitespace.cs
- DataGridViewRowPrePaintEventArgs.cs
- EqualityArray.cs
- PageEventArgs.cs
- ToolStripScrollButton.cs
- SelectionProcessor.cs
- IntSecurity.cs
- EndCreateSecurityTokenRequest.cs
- XmlDigitalSignatureProcessor.cs
- SimpleWebHandlerParser.cs
- TypeBuilder.cs
- DtdParser.cs
- ImplicitInputBrush.cs
- CmsInterop.cs
- RbTree.cs
- CapabilitiesSection.cs
- SpeechSeg.cs
- WmpBitmapDecoder.cs
- HandlerBase.cs
- Literal.cs
- KeyBinding.cs
- WebServiceResponse.cs