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
- ObjectMaterializedEventArgs.cs
- XmlSchemaAnyAttribute.cs
- MonitoringDescriptionAttribute.cs
- ImageMapEventArgs.cs
- GrammarBuilderWildcard.cs
- RegexCode.cs
- MailMessageEventArgs.cs
- ScriptIgnoreAttribute.cs
- ContainerFilterService.cs
- ObjectList.cs
- TimeoutHelper.cs
- XmlSchemaObjectCollection.cs
- FrameworkContentElement.cs
- GridViewAutomationPeer.cs
- Point4DValueSerializer.cs
- StsCommunicationException.cs
- SqlRemoveConstantOrderBy.cs
- HttpCachePolicy.cs
- CharacterBufferReference.cs
- ValidationError.cs
- ExtensionDataReader.cs
- TransactedBatchingBehavior.cs
- ByteStreamBufferedMessageData.cs
- WebPartUtil.cs
- OracleInfoMessageEventArgs.cs
- LinqDataSourceInsertEventArgs.cs
- MSG.cs
- WebProxyScriptElement.cs
- SecurityKeyIdentifierClause.cs
- RegexGroupCollection.cs
- RawAppCommandInputReport.cs
- ProviderMetadata.cs
- ContextMenuStrip.cs
- DataReaderContainer.cs
- ExpressionBinding.cs
- JsonWriterDelegator.cs
- QilName.cs
- DataGridViewCellFormattingEventArgs.cs
- SubstitutionList.cs
- ScriptReference.cs
- ProxyDataContractResolver.cs
- UpdatePanel.cs
- Peer.cs
- DataControlFieldCollection.cs
- EntityDataSourceQueryBuilder.cs
- ExpressionEditor.cs
- HtmlElementCollection.cs
- PerformanceCounterLib.cs
- IHttpResponseInternal.cs
- FontStyle.cs
- TouchesOverProperty.cs
- TextEditorThreadLocalStore.cs
- ArrangedElement.cs
- DeviceSpecificDialogCachedState.cs
- CmsInterop.cs
- AspNetHostingPermission.cs
- ProgressBar.cs
- HtmlShim.cs
- CodeGroup.cs
- EarlyBoundInfo.cs
- CacheEntry.cs
- TableAutomationPeer.cs
- Expander.cs
- VectorConverter.cs
- OletxResourceManager.cs
- SqlConnectionString.cs
- ProtocolsSection.cs
- PointAnimation.cs
- XmlRawWriter.cs
- ResumeStoryboard.cs
- OperationAbortedException.cs
- FormCollection.cs
- InvokeMethod.cs
- StatusBarPanelClickEvent.cs
- SQLDouble.cs
- DPAPIProtectedConfigurationProvider.cs
- DynamicRendererThreadManager.cs
- IntegerFacetDescriptionElement.cs
- DataStorage.cs
- Vector3DIndependentAnimationStorage.cs
- CustomLineCap.cs
- Constraint.cs
- ComponentDispatcher.cs
- AudioFormatConverter.cs
- ToolboxItemFilterAttribute.cs
- AutoResetEvent.cs
- SqlCommandSet.cs
- RequestChannel.cs
- SqlBinder.cs
- ConfigurationManagerInternal.cs
- DataGridColumnCollection.cs
- AddressAlreadyInUseException.cs
- NamespaceDecl.cs
- ZoneLinkButton.cs
- Interlocked.cs
- GroupQuery.cs
- ScrollableControl.cs
- HelpEvent.cs
- ProcessMessagesAsyncResult.cs
- WebConfigManager.cs