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
- PanelStyle.cs
- XmlILIndex.cs
- TypedServiceOperationListItem.cs
- ListItemsPage.cs
- Pen.cs
- TreeView.cs
- TranslateTransform.cs
- ObservableCollection.cs
- SHA384.cs
- ScrollEvent.cs
- StylusDownEventArgs.cs
- AttachedAnnotationChangedEventArgs.cs
- TextFormatterContext.cs
- mediaeventargs.cs
- ConsoleKeyInfo.cs
- CapabilitiesSection.cs
- Stack.cs
- OutputCacheSettings.cs
- CodeDirectionExpression.cs
- ClipboardData.cs
- QueryOperator.cs
- TransferRequestHandler.cs
- TextElementCollectionHelper.cs
- UIServiceHelper.cs
- TextureBrush.cs
- XmlSchemaException.cs
- Style.cs
- TraceProvider.cs
- RemoveStoryboard.cs
- SequentialOutput.cs
- XslTransform.cs
- DataDocumentXPathNavigator.cs
- MetabaseServerConfig.cs
- cache.cs
- Rule.cs
- CircleEase.cs
- SqlClientWrapperSmiStreamChars.cs
- PropertyKey.cs
- KeyedHashAlgorithm.cs
- OleDbEnumerator.cs
- PropertyGeneratedEventArgs.cs
- TraceContextEventArgs.cs
- AnnotationService.cs
- ISAPIWorkerRequest.cs
- TriggerCollection.cs
- PathBox.cs
- ParsedRoute.cs
- EnlistmentState.cs
- LassoSelectionBehavior.cs
- EventBuilder.cs
- TransformationRules.cs
- StrongTypingException.cs
- NavigationPropertySingletonExpression.cs
- DispatchWrapper.cs
- AutoGeneratedFieldProperties.cs
- TableLayoutCellPaintEventArgs.cs
- ProcessThreadCollection.cs
- WindowsFormsDesignerOptionService.cs
- _DigestClient.cs
- LineMetrics.cs
- SqlCacheDependencyDatabaseCollection.cs
- HandlerWithFactory.cs
- ParseChildrenAsPropertiesAttribute.cs
- FloatUtil.cs
- ComponentResourceManager.cs
- DecoderReplacementFallback.cs
- SQLSingleStorage.cs
- LockCookie.cs
- RectangleF.cs
- StreamReader.cs
- LocatorPartList.cs
- OutputCacheProfileCollection.cs
- KoreanCalendar.cs
- UserPersonalizationStateInfo.cs
- BitmapEffectDrawing.cs
- AllMembershipCondition.cs
- SkewTransform.cs
- TextTreeObjectNode.cs
- BrowserDefinition.cs
- TreeNodeCollectionEditor.cs
- KeyTimeConverter.cs
- ZipFileInfo.cs
- XmlIncludeAttribute.cs
- Main.cs
- BuildResult.cs
- AccessibleObject.cs
- RoutedEventConverter.cs
- SqlUtils.cs
- UICuesEvent.cs
- Typeface.cs
- DateTimeOffset.cs
- DataControlField.cs
- Encoder.cs
- AliasedSlot.cs
- LocalizedNameDescriptionPair.cs
- FlowThrottle.cs
- CredentialCache.cs
- InternalBufferOverflowException.cs
- AssemblyBuilder.cs
- IResourceProvider.cs