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
- HostedHttpRequestAsyncResult.cs
- SplitterPanel.cs
- FormViewInsertEventArgs.cs
- XmlILModule.cs
- SelectionGlyph.cs
- GenericEnumerator.cs
- CalendarDesigner.cs
- Variant.cs
- ParameterCollection.cs
- _LazyAsyncResult.cs
- ImageDesigner.cs
- ControlBuilder.cs
- ListViewDataItem.cs
- HitTestDrawingContextWalker.cs
- VirtualPath.cs
- SafeRegistryHandle.cs
- DragDrop.cs
- storepermission.cs
- Typography.cs
- DuplexChannelFactory.cs
- Label.cs
- HttpStreamXmlDictionaryReader.cs
- Visitor.cs
- returneventsaver.cs
- BCLDebug.cs
- LocalizableAttribute.cs
- TextContainerChangeEventArgs.cs
- ControlPaint.cs
- EncryptedKeyIdentifierClause.cs
- QilValidationVisitor.cs
- ToolStripManager.cs
- PerformanceCounterTraceRecord.cs
- NativeMethods.cs
- sqlpipe.cs
- ConfigurationValues.cs
- CompoundFileReference.cs
- ProgressBar.cs
- TypeExtensionSerializer.cs
- SwitchAttribute.cs
- Activator.cs
- DataGridViewCellConverter.cs
- AnimationClockResource.cs
- SQLByteStorage.cs
- XmlQueryTypeFactory.cs
- TypeInfo.cs
- XpsPackagingException.cs
- QilVisitor.cs
- AmbiguousMatchException.cs
- XmlTextEncoder.cs
- WinEventTracker.cs
- MailWebEventProvider.cs
- InlineUIContainer.cs
- EmbeddedMailObjectsCollection.cs
- SequentialOutput.cs
- FormsAuthenticationCredentials.cs
- XmlBufferReader.cs
- KnownAssemblyEntry.cs
- Mouse.cs
- LinqDataSourceUpdateEventArgs.cs
- ApplicationCommands.cs
- BeginSelectCardRequest.cs
- DesignTimeResourceProviderFactoryAttribute.cs
- Int16.cs
- Rect3DConverter.cs
- DeobfuscatingStream.cs
- OdbcEnvironment.cs
- FreezableCollection.cs
- XamlPathDataSerializer.cs
- TextRangeProviderWrapper.cs
- OracleTransaction.cs
- XmlSchemaGroupRef.cs
- BitmapMetadataBlob.cs
- InternalTypeHelper.cs
- RestClientProxyHandler.cs
- InputMethodStateTypeInfo.cs
- XpsS0ValidatingLoader.cs
- Base64WriteStateInfo.cs
- LocatorPartList.cs
- SliderAutomationPeer.cs
- SiteOfOriginPart.cs
- safelinkcollection.cs
- Vector3DValueSerializer.cs
- CompoundFileDeflateTransform.cs
- MobileResource.cs
- ViewStateException.cs
- QueryOptionExpression.cs
- SecurityVerifiedMessage.cs
- EdmFunction.cs
- ComponentManagerBroker.cs
- WindowsPrincipal.cs
- ThreadStateException.cs
- WebException.cs
- DoubleLink.cs
- AttachmentCollection.cs
- ActivityExecutionContextCollection.cs
- ReaderOutput.cs
- AssociationType.cs
- InputGestureCollection.cs
- ObjectTag.cs
- TextEditorThreadLocalStore.cs