Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / 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
- LayoutManager.cs
- EntitySqlQueryBuilder.cs
- ServerIdentity.cs
- Inflater.cs
- DataViewManagerListItemTypeDescriptor.cs
- LinearQuaternionKeyFrame.cs
- GlyphingCache.cs
- SerializerProvider.cs
- MetaModel.cs
- PersonalizationProviderHelper.cs
- SizeConverter.cs
- EdmProperty.cs
- GroupItemAutomationPeer.cs
- ActiveXHost.cs
- PropertyValidationContext.cs
- IdentitySection.cs
- _UncName.cs
- SqlComparer.cs
- PolicyException.cs
- EntityDataSourceWrapperPropertyDescriptor.cs
- AttributeProviderAttribute.cs
- TdsParserSessionPool.cs
- QueryInterceptorAttribute.cs
- CustomAttributeFormatException.cs
- DefaultValueAttribute.cs
- HeaderedContentControl.cs
- EllipticalNodeOperations.cs
- EntityType.cs
- PagedControl.cs
- ToolbarAUtomationPeer.cs
- CompilerGeneratedAttribute.cs
- DrawingServices.cs
- AnnotationDocumentPaginator.cs
- DbConnectionPool.cs
- ConfigurationManager.cs
- ArrayList.cs
- Base64Decoder.cs
- UserPreferenceChangingEventArgs.cs
- DataBindEngine.cs
- DiscoveryDocumentSearchPattern.cs
- PeerServiceMessageContracts.cs
- ExpressionBindingCollection.cs
- ApplicationDirectory.cs
- CommandID.cs
- ArrayElementGridEntry.cs
- StorageEntityTypeMapping.cs
- CellParaClient.cs
- ProcessThreadCollection.cs
- WinHttpWebProxyFinder.cs
- VisualStates.cs
- SecurityDescriptor.cs
- CodeStatementCollection.cs
- xmlglyphRunInfo.cs
- DecimalKeyFrameCollection.cs
- diagnosticsswitches.cs
- ManifestSignedXml.cs
- Marshal.cs
- HtmlProps.cs
- EdmMember.cs
- XmlKeywords.cs
- TablePattern.cs
- BufferedGraphicsContext.cs
- ClientSettings.cs
- ServiceDesigner.xaml.cs
- DataServiceQueryProvider.cs
- TextDecoration.cs
- BypassElement.cs
- DynamicRenderer.cs
- SQLBytesStorage.cs
- ExpressionServices.cs
- ResponseBodyWriter.cs
- SafeArrayRankMismatchException.cs
- TabControlEvent.cs
- NetCodeGroup.cs
- PersonalizationProviderCollection.cs
- OLEDB_Util.cs
- ReadWriteObjectLock.cs
- LassoHelper.cs
- WebBrowserBase.cs
- XamlRtfConverter.cs
- SamlAudienceRestrictionCondition.cs
- TextServicesProperty.cs
- XsltException.cs
- ExpressionPrefixAttribute.cs
- CodeIdentifiers.cs
- RotateTransform3D.cs
- FileAuthorizationModule.cs
- OneWayBindingElementImporter.cs
- QilInvokeLateBound.cs
- ToolboxDataAttribute.cs
- StringPropertyBuilder.cs
- WpfKnownTypeInvoker.cs
- ISCIIEncoding.cs
- SqlConnectionManager.cs
- BufferedWebEventProvider.cs
- IdentityReference.cs
- AvtEvent.cs
- Model3DCollection.cs
- XmlTextReaderImplHelpers.cs
- RedistVersionInfo.cs