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
- Int32AnimationUsingKeyFrames.cs
- PerformanceCounter.cs
- LineInfo.cs
- XmlName.cs
- designeractionlistschangedeventargs.cs
- PreservationFileWriter.cs
- DomNameTable.cs
- CultureSpecificCharacterBufferRange.cs
- SynchronizedKeyedCollection.cs
- ProtocolsConfiguration.cs
- ResXResourceReader.cs
- Identity.cs
- ThreadInterruptedException.cs
- DefaultTextStoreTextComposition.cs
- safex509handles.cs
- HandleValueEditor.cs
- AddInIpcChannel.cs
- WebDescriptionAttribute.cs
- CodeChecksumPragma.cs
- ClientBuildManager.cs
- MSAAWinEventWrap.cs
- ObjectHandle.cs
- TypeGeneratedEventArgs.cs
- HttpRuntimeSection.cs
- OutOfMemoryException.cs
- WinEventWrap.cs
- IBuiltInEvidence.cs
- ConfigurationStrings.cs
- ProtocolViolationException.cs
- ProtectedConfiguration.cs
- ScrollViewerAutomationPeer.cs
- ValidationErrorEventArgs.cs
- SqlFileStream.cs
- ExpressionWriter.cs
- Parsers.cs
- InputEventArgs.cs
- CodeDirectionExpression.cs
- GenericUriParser.cs
- InkCollectionBehavior.cs
- TransformPattern.cs
- Attributes.cs
- PasswordDeriveBytes.cs
- ThicknessKeyFrameCollection.cs
- VisualStyleInformation.cs
- AnnotationAuthorChangedEventArgs.cs
- Screen.cs
- XamlTreeBuilder.cs
- NavigationFailedEventArgs.cs
- Blend.cs
- TableLayoutStyleCollection.cs
- RelationshipConverter.cs
- UnauthorizedAccessException.cs
- LineInfo.cs
- WebPartConnectionsCloseVerb.cs
- FieldToken.cs
- RegexCompilationInfo.cs
- MTConfigUtil.cs
- DiffuseMaterial.cs
- DocumentApplicationState.cs
- WebBrowserNavigatedEventHandler.cs
- X509SecurityTokenAuthenticator.cs
- DefaultTextStoreTextComposition.cs
- TypeLoadException.cs
- MasterPageParser.cs
- UpDownBase.cs
- Attributes.cs
- XPathNodeList.cs
- ProcessManager.cs
- ChildrenQuery.cs
- TrackingMemoryStreamFactory.cs
- FormatVersion.cs
- AvTraceDetails.cs
- ToolStripItemCollection.cs
- EncodingConverter.cs
- InvokeMethodActivityDesigner.cs
- UnmanagedMemoryAccessor.cs
- CodeThrowExceptionStatement.cs
- SortKey.cs
- Vector3DKeyFrameCollection.cs
- WorkflowApplicationUnloadedException.cs
- CultureInfo.cs
- UpdatePanelTriggerCollection.cs
- WindowsListBox.cs
- XpsS0ValidatingLoader.cs
- GridViewCommandEventArgs.cs
- MimeReturn.cs
- ExcCanonicalXml.cs
- ParallelDesigner.xaml.cs
- AppLevelCompilationSectionCache.cs
- CryptoApi.cs
- ReplacementText.cs
- MappingMetadataHelper.cs
- PopupRoot.cs
- MetadataItemSerializer.cs
- PrivateUnsafeNativeCompoundFileMethods.cs
- PackageDigitalSignatureManager.cs
- SrgsElementList.cs
- HostingMessageProperty.cs
- DataBoundControlAdapter.cs
- UserCancellationException.cs