Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / wpf / src / Core / CSharp / MS / Internal / Shaping / Item.cs / 1 / Item.cs
//+------------------------------------------------------------------------ // // Microsoft Windows Client Platform // Copyright (C) Microsoft Corporation, 2001 // // File: Item.cs // // Contents: Avalon item description & script system // // Created: 12-17-2001 Worachai Chaoweeraprasit (wchao) // //----------------------------------------------------------------------- using System; using System.Collections; using System.Globalization; namespace MS.Internal.Shaping { ////// Run sharing the same character properties and glyph variation. /// ////// Generated by itemizer and consumed by shaping engine /// internal struct Item { internal Item( ScriptID script, ItemFlags flags ) { _script = script; _flags = flags; _digitCulture = null; } public static bool operator ==( Item left, Item right ) { return left._script == right._script && left._flags == right._flags; } public static bool operator !=( Item left, Item right ) { return !(left == right); } public override bool Equals(object o) { if (o == null) return false; if (o is Item) return this == (Item)o; return false; } public override int GetHashCode() { return (int)_script ^ (int)Flags; } ////// Shaping engine script identifier /// internal ScriptID Script { get { return _script; } set { _script = value; } } ////// Character-based flags for the item /// internal ItemFlags Flags { get { return _flags; } set { _flags = value; } } ////// Digit culture if it's a ScriptID.Digit item and we're doing number /// substitution. Otherwise, null. /// internal CultureInfo DigitCulture { get { return _digitCulture; } set { _digitCulture = value; } } private ScriptID _script; private ItemFlags _flags; private CultureInfo _digitCulture; } [Flags] internal enum ItemFlags : ushort { Default = 0, ////// Display glyph using vertical glyph form /// VerticalForm = 0x0001, ////// Display glyph using glyph of the mirrored code point form /// PairMirrorForm = 0x0002, ////// Display glyph using mirrored glyph form /// SingleMirrorForm = 0x0004, ////// The OR of both variants /// GlyphVariant = VerticalForm, ////// Item displays sideway to the baseline /// DisplaySideway = 0x0008, ////// Item containing combining marks that need precomposition /// HasCombiningMark = 0x0010, ////// Item containing extended character /// HasExtendedCharacter = 0x0020, ////// Set if the previous item ended with ZWJ /// LeadingJoin = 0x0040, } } // 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, 2001 // // File: Item.cs // // Contents: Avalon item description & script system // // Created: 12-17-2001 Worachai Chaoweeraprasit (wchao) // //----------------------------------------------------------------------- using System; using System.Collections; using System.Globalization; namespace MS.Internal.Shaping { ////// Run sharing the same character properties and glyph variation. /// ////// Generated by itemizer and consumed by shaping engine /// internal struct Item { internal Item( ScriptID script, ItemFlags flags ) { _script = script; _flags = flags; _digitCulture = null; } public static bool operator ==( Item left, Item right ) { return left._script == right._script && left._flags == right._flags; } public static bool operator !=( Item left, Item right ) { return !(left == right); } public override bool Equals(object o) { if (o == null) return false; if (o is Item) return this == (Item)o; return false; } public override int GetHashCode() { return (int)_script ^ (int)Flags; } ////// Shaping engine script identifier /// internal ScriptID Script { get { return _script; } set { _script = value; } } ////// Character-based flags for the item /// internal ItemFlags Flags { get { return _flags; } set { _flags = value; } } ////// Digit culture if it's a ScriptID.Digit item and we're doing number /// substitution. Otherwise, null. /// internal CultureInfo DigitCulture { get { return _digitCulture; } set { _digitCulture = value; } } private ScriptID _script; private ItemFlags _flags; private CultureInfo _digitCulture; } [Flags] internal enum ItemFlags : ushort { Default = 0, ////// Display glyph using vertical glyph form /// VerticalForm = 0x0001, ////// Display glyph using glyph of the mirrored code point form /// PairMirrorForm = 0x0002, ////// Display glyph using mirrored glyph form /// SingleMirrorForm = 0x0004, ////// The OR of both variants /// GlyphVariant = VerticalForm, ////// Item displays sideway to the baseline /// DisplaySideway = 0x0008, ////// Item containing combining marks that need precomposition /// HasCombiningMark = 0x0010, ////// Item containing extended character /// HasExtendedCharacter = 0x0020, ////// Set if the previous item ended with ZWJ /// LeadingJoin = 0x0040, } } // 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
- ByteStream.cs
- FontFamilyConverter.cs
- JournalNavigationScope.cs
- AppModelKnownContentFactory.cs
- RoleGroup.cs
- XmlValidatingReader.cs
- TraceContextRecord.cs
- GlyphsSerializer.cs
- HtmlTernaryTree.cs
- InkCanvasSelectionAdorner.cs
- Propagator.ExtentPlaceholderCreator.cs
- DesignerActionVerbList.cs
- ScaleTransform3D.cs
- AsynchronousChannel.cs
- OleDbDataReader.cs
- MouseGesture.cs
- Identity.cs
- GetIndexBinder.cs
- GridErrorDlg.cs
- EntityClientCacheEntry.cs
- SemanticValue.cs
- MatrixCamera.cs
- Documentation.cs
- WaitForChangedResult.cs
- FormViewInsertedEventArgs.cs
- StringBlob.cs
- ScrollData.cs
- FileFormatException.cs
- FileDialog.cs
- PropertyCondition.cs
- XomlCompilerParameters.cs
- StreamInfo.cs
- UnsafePeerToPeerMethods.cs
- LineServices.cs
- MatrixAnimationUsingKeyFrames.cs
- Crc32.cs
- D3DImage.cs
- DataBindingExpressionBuilder.cs
- FirewallWrapper.cs
- StatusBarPanel.cs
- HttpRuntime.cs
- Freezable.cs
- TypeConverterHelper.cs
- SafeNativeMethodsCLR.cs
- DataGridTextColumn.cs
- UserControlAutomationPeer.cs
- StackBuilderSink.cs
- ComponentDispatcher.cs
- SqlParameterizer.cs
- DebugView.cs
- ConfigurationManager.cs
- AccessDataSourceView.cs
- ComplexLine.cs
- BitSet.cs
- LazyLoadBehavior.cs
- NativeWindow.cs
- TextDpi.cs
- PermissionToken.cs
- ParamArrayAttribute.cs
- ScriptingAuthenticationServiceSection.cs
- ContentTextAutomationPeer.cs
- BatchServiceHost.cs
- HitTestResult.cs
- MemberJoinTreeNode.cs
- ClientSettings.cs
- HelpProvider.cs
- DependencyObject.cs
- StringOutput.cs
- UpDownBaseDesigner.cs
- HyperLink.cs
- CustomPopupPlacement.cs
- ManagedFilter.cs
- ConfigurationLoaderException.cs
- Point3D.cs
- MappingSource.cs
- NeedSkipTokenVisitor.cs
- XmlSerializationGeneratedCode.cs
- DataGridViewImageColumn.cs
- Journal.cs
- SupportsEventValidationAttribute.cs
- XmlArrayItemAttribute.cs
- ServiceCredentialsElement.cs
- ImageSource.cs
- RegularExpressionValidator.cs
- AstTree.cs
- DesignerProperties.cs
- BitmapEffectGroup.cs
- GlobalizationAssembly.cs
- DataGridParentRows.cs
- MatrixConverter.cs
- FunctionDescription.cs
- SqlBooleanMismatchVisitor.cs
- DiscoveryDocumentSerializer.cs
- FolderBrowserDialog.cs
- AddInToken.cs
- StreamUpdate.cs
- CommandManager.cs
- VirtualPath.cs
- UnsafeCollabNativeMethods.cs
- TokenBasedSet.cs