Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / 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
- ISO2022Encoding.cs
- BindingContext.cs
- PopupRootAutomationPeer.cs
- NamespaceListProperty.cs
- FormsAuthenticationConfiguration.cs
- DataGridViewColumnConverter.cs
- StoreItemCollection.cs
- DataSourceView.cs
- WeakHashtable.cs
- VarRefManager.cs
- wgx_sdk_version.cs
- DocComment.cs
- DnsCache.cs
- PermissionRequestEvidence.cs
- GraphicsPathIterator.cs
- CacheOutputQuery.cs
- MethodToken.cs
- DeferredReference.cs
- ResourceDescriptionAttribute.cs
- CodeObject.cs
- CodeTypeMember.cs
- DbConnectionFactory.cs
- UmAlQuraCalendar.cs
- ListItemViewControl.cs
- AsymmetricSignatureFormatter.cs
- BrowserDefinitionCollection.cs
- VectorCollection.cs
- SecondaryIndex.cs
- GenericArgumentsUpdater.cs
- __TransparentProxy.cs
- ClosableStream.cs
- SystemException.cs
- OperationPickerDialog.cs
- XmlReflectionMember.cs
- ThemeableAttribute.cs
- ToolStripProgressBar.cs
- AutomationPattern.cs
- IndividualDeviceConfig.cs
- TextViewBase.cs
- GridEntry.cs
- AuthenticationConfig.cs
- AutoResetEvent.cs
- ImageBrush.cs
- WebPartDisplayModeEventArgs.cs
- ConfigurationStrings.cs
- ImageListStreamer.cs
- WebServiceClientProxyGenerator.cs
- SmiEventSink.cs
- NavigationProperty.cs
- CustomError.cs
- SimpleWebHandlerParser.cs
- ReferenceEqualityComparer.cs
- ObjectParameterCollection.cs
- QueryCacheEntry.cs
- Misc.cs
- InternalTransaction.cs
- Point3DCollectionConverter.cs
- EpmSyndicationContentSerializer.cs
- TextProviderWrapper.cs
- TableRowGroupCollection.cs
- EditorAttribute.cs
- EmulateRecognizeCompletedEventArgs.cs
- DbException.cs
- WindowsUserNameCachingSecurityTokenAuthenticator.cs
- TextWriter.cs
- XmlReflectionMember.cs
- SHA384Managed.cs
- HyperLinkStyle.cs
- CodeAccessSecurityEngine.cs
- TrustLevelCollection.cs
- Bitmap.cs
- FunctionMappingTranslator.cs
- DataGridViewBindingCompleteEventArgs.cs
- CardSpaceException.cs
- ConnectionPoolManager.cs
- GridView.cs
- Rect3D.cs
- LockedActivityGlyph.cs
- TextTreeNode.cs
- TypeExtensions.cs
- DeviceFilterEditorDialog.cs
- Int32Converter.cs
- FixedDocument.cs
- SoapCodeExporter.cs
- XmlSortKeyAccumulator.cs
- PreApplicationStartMethodAttribute.cs
- HttpApplication.cs
- CodeVariableDeclarationStatement.cs
- WebServiceHandlerFactory.cs
- PermissionRequestEvidence.cs
- FontFamilyIdentifier.cs
- WmpBitmapDecoder.cs
- ThreadStateException.cs
- PassportAuthenticationModule.cs
- M3DUtil.cs
- SynchronizationHandlesCodeDomSerializer.cs
- Point3DKeyFrameCollection.cs
- IgnoreDeviceFilterElement.cs
- XmlSerializationGeneratedCode.cs
- KeyToListMap.cs