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
- HttpCacheParams.cs
- Nodes.cs
- ReturnType.cs
- DoubleAnimationUsingPath.cs
- XmlComment.cs
- AvTrace.cs
- DateTimeSerializationSection.cs
- CompensationDesigner.cs
- AssemblyAttributes.cs
- Int32Animation.cs
- StorageEntitySetMapping.cs
- ServerValidateEventArgs.cs
- PenThread.cs
- ShortcutKeysEditor.cs
- IdnMapping.cs
- BuildProvider.cs
- OleDbParameterCollection.cs
- InkCollectionBehavior.cs
- XmlUtf8RawTextWriter.cs
- StylusPlugInCollection.cs
- PrintControllerWithStatusDialog.cs
- ThumbButtonInfo.cs
- SliderAutomationPeer.cs
- InfoCardBaseException.cs
- BridgeDataRecord.cs
- ToolStripContainer.cs
- RSAPKCS1SignatureDeformatter.cs
- OracleCommandSet.cs
- CqlErrorHelper.cs
- PropertyPathConverter.cs
- DescendentsWalker.cs
- SelectionItemProviderWrapper.cs
- AdRotator.cs
- SizeValueSerializer.cs
- SessionStateContainer.cs
- SQLChars.cs
- Point3DCollectionValueSerializer.cs
- _KerberosClient.cs
- BookmarkUndoUnit.cs
- BooleanSwitch.cs
- WebPartEditVerb.cs
- Delegate.cs
- PersonalizationProviderHelper.cs
- SQLBytesStorage.cs
- DateTime.cs
- LocationInfo.cs
- PropertyMetadata.cs
- FormViewInsertedEventArgs.cs
- TreeView.cs
- PerformanceCounterManager.cs
- DataGridViewRowConverter.cs
- SamlAuthenticationStatement.cs
- WebPartVerbCollection.cs
- BinaryObjectReader.cs
- EntityContainerRelationshipSetEnd.cs
- newinstructionaction.cs
- DataSourceControl.cs
- SqlConnectionPoolProviderInfo.cs
- GridItemPatternIdentifiers.cs
- StyleBamlTreeBuilder.cs
- ModelItemImpl.cs
- BezierSegment.cs
- SqlUserDefinedAggregateAttribute.cs
- EnumDataContract.cs
- BufferedGraphics.cs
- hwndwrapper.cs
- ScrollChrome.cs
- ResolvePPIDRequest.cs
- XmlDataImplementation.cs
- XmlSchemaSimpleContent.cs
- Stroke.cs
- HandleRef.cs
- HttpRawResponse.cs
- BufferedGraphics.cs
- httpapplicationstate.cs
- DataControlImageButton.cs
- HashStream.cs
- DataTemplateKey.cs
- CipherData.cs
- ScriptDescriptor.cs
- PersonalizationAdministration.cs
- UriSection.cs
- MediaPlayerState.cs
- DataGridViewColumnEventArgs.cs
- TableRowGroupCollection.cs
- CodeCompileUnit.cs
- ListViewInsertEventArgs.cs
- LightweightCodeGenerator.cs
- ExtensionElementCollection.cs
- DataGridViewCellConverter.cs
- ConnectionManagementElement.cs
- TreeNodeBindingCollection.cs
- WebPartVerbsEventArgs.cs
- ObjectListCommandCollection.cs
- MeshGeometry3D.cs
- StylusDevice.cs
- RadioButtonList.cs
- BufferedWebEventProvider.cs
- StreamSecurityUpgradeAcceptorBase.cs
- PageThemeCodeDomTreeGenerator.cs