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
- _NetRes.cs
- _UriTypeConverter.cs
- WebCategoryAttribute.cs
- HttpRuntimeSection.cs
- TransactedReceiveScope.cs
- DesignTimeParseData.cs
- PropertyTab.cs
- Graph.cs
- HitTestWithPointDrawingContextWalker.cs
- TextServicesCompartment.cs
- ElementHost.cs
- Rect.cs
- __Error.cs
- CommunicationObjectAbortedException.cs
- IgnoreSection.cs
- CalendarAutoFormat.cs
- TypeBrowserDialog.cs
- MenuStrip.cs
- DataGridViewImageCell.cs
- SecUtil.cs
- DataChangedEventManager.cs
- EntityDataSourceDesigner.cs
- BrowserDefinitionCollection.cs
- HttpStreamFormatter.cs
- FormsIdentity.cs
- MsdtcClusterUtils.cs
- InvalidPropValue.cs
- MissingManifestResourceException.cs
- ButtonFieldBase.cs
- HandleRef.cs
- SimpleApplicationHost.cs
- Rect.cs
- WindowsFormsHostAutomationPeer.cs
- DrawingGroup.cs
- HandlerWithFactory.cs
- TextRangeEdit.cs
- WebPartManagerInternals.cs
- BufferCache.cs
- ObjectHandle.cs
- RowToParametersTransformer.cs
- DataGridViewCellConverter.cs
- WindowsScrollBar.cs
- MenuItem.cs
- NativeMethods.cs
- TdsParserHelperClasses.cs
- RepeaterItemCollection.cs
- DesignerVerbToolStripMenuItem.cs
- EventsTab.cs
- cookiecollection.cs
- AddToCollection.cs
- GifBitmapEncoder.cs
- UIElement3D.cs
- MessagingDescriptionAttribute.cs
- SourceInterpreter.cs
- CaseInsensitiveComparer.cs
- TransformValueSerializer.cs
- HwndHostAutomationPeer.cs
- FixedElement.cs
- PointConverter.cs
- HitTestParameters3D.cs
- SortedDictionary.cs
- WebEventCodes.cs
- typedescriptorpermission.cs
- VersionConverter.cs
- AudioStateChangedEventArgs.cs
- ToolboxCategory.cs
- DES.cs
- ResourceDisplayNameAttribute.cs
- SignatureHelper.cs
- Queue.cs
- CustomError.cs
- ChangesetResponse.cs
- InputReferenceExpression.cs
- EntryPointNotFoundException.cs
- Models.cs
- GeneralTransform3D.cs
- Or.cs
- QilGeneratorEnv.cs
- ExpressionBinding.cs
- RsaEndpointIdentity.cs
- PrincipalPermission.cs
- ConfigurationPropertyAttribute.cs
- CompositeScriptReference.cs
- OwnerDrawPropertyBag.cs
- AttachedPropertyBrowsableForChildrenAttribute.cs
- ConsoleCancelEventArgs.cs
- ImplicitInputBrush.cs
- AsymmetricCryptoHandle.cs
- SelectionBorderGlyph.cs
- XmlValidatingReader.cs
- PrimitiveType.cs
- SolidColorBrush.cs
- DateTimeOffsetConverter.cs
- EdmToObjectNamespaceMap.cs
- DataRecordInternal.cs
- StateDesigner.Layouts.cs
- TimeoutTimer.cs
- MethodCallConverter.cs
- SmiContextFactory.cs
- FlowNode.cs