Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / 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
- SqlNotificationEventArgs.cs
- TranslateTransform.cs
- CodePageUtils.cs
- CodeDomExtensionMethods.cs
- AutoGeneratedFieldProperties.cs
- FileDialog_Vista_Interop.cs
- DrawingState.cs
- ResourceDictionaryCollection.cs
- ObfuscationAttribute.cs
- InvariantComparer.cs
- BitFlagsGenerator.cs
- ClientBuildManager.cs
- AppliedDeviceFiltersEditor.cs
- SmiEventSink.cs
- TraceSource.cs
- unsafenativemethodsother.cs
- SqlXmlStorage.cs
- XPathPatternParser.cs
- ConsoleCancelEventArgs.cs
- ColorMatrix.cs
- ClientScriptItem.cs
- ListItem.cs
- RedirectionProxy.cs
- WorkflowApplicationAbortedException.cs
- OdbcConnectionString.cs
- NetCodeGroup.cs
- Wizard.cs
- EntityConnection.cs
- DesignerOptionService.cs
- InvalidPrinterException.cs
- SmuggledIUnknown.cs
- UIPermission.cs
- InheritanceAttribute.cs
- SocketException.cs
- AdapterUtil.cs
- TimeSpanStorage.cs
- PolyBezierSegment.cs
- HierarchicalDataSourceIDConverter.cs
- BackgroundFormatInfo.cs
- AdornedElementPlaceholder.cs
- cookieexception.cs
- Utils.cs
- IERequestCache.cs
- XPathScanner.cs
- CellPartitioner.cs
- ItemDragEvent.cs
- TableLayoutColumnStyleCollection.cs
- FormCollection.cs
- AvTraceFormat.cs
- AuthorizationRuleCollection.cs
- SharedStream.cs
- Collection.cs
- Error.cs
- GridViewSelectEventArgs.cs
- CollectionViewGroupInternal.cs
- ModelTreeManager.cs
- WebEventTraceProvider.cs
- DisplayNameAttribute.cs
- NullableFloatMinMaxAggregationOperator.cs
- PolicyUnit.cs
- XmlChildEnumerator.cs
- ConfigXmlText.cs
- Mappings.cs
- SystemIPGlobalProperties.cs
- CompilationLock.cs
- FixUp.cs
- CodeTypeReferenceCollection.cs
- WindowHideOrCloseTracker.cs
- ControlParameter.cs
- DataGridCommandEventArgs.cs
- WsdlImporter.cs
- StylusEditingBehavior.cs
- TCPListener.cs
- RSACryptoServiceProvider.cs
- Package.cs
- HttpBindingExtension.cs
- Pen.cs
- QuaternionAnimationBase.cs
- ObsoleteAttribute.cs
- ClientBuildManagerCallback.cs
- CoreSwitches.cs
- ImportContext.cs
- ValuePattern.cs
- RepeaterItemEventArgs.cs
- TokenBasedSet.cs
- PerfService.cs
- Comparer.cs
- DebuggerAttributes.cs
- SerializableAttribute.cs
- TextFindEngine.cs
- RecognizerInfo.cs
- SqlUserDefinedTypeAttribute.cs
- ButtonField.cs
- SecurityUtils.cs
- ObjectView.cs
- Bezier.cs
- ContentControl.cs
- MaskedTextBoxTextEditorDropDown.cs
- BasicViewGenerator.cs
- HtmlInputButton.cs