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
- GuidelineSet.cs
- PkcsUtils.cs
- FlagsAttribute.cs
- AutomationPatternInfo.cs
- AssemblySettingAttributes.cs
- CachedPathData.cs
- ToolStripDropDownButton.cs
- CustomValidator.cs
- SqlFlattener.cs
- DefaultShape.cs
- CompilerScopeManager.cs
- PrintPreviewControl.cs
- XPathQueryGenerator.cs
- SqlBooleanizer.cs
- UserControlCodeDomTreeGenerator.cs
- UnsafeMethods.cs
- BindingList.cs
- Stylus.cs
- ConfigXmlComment.cs
- PeerToPeerException.cs
- HttpListener.cs
- XamlWriter.cs
- HttpSessionStateWrapper.cs
- StringAnimationBase.cs
- Setter.cs
- InfoCardBaseException.cs
- ClassicBorderDecorator.cs
- StringResourceManager.cs
- ParseNumbers.cs
- ControlBuilderAttribute.cs
- XPathException.cs
- XmlMapping.cs
- HitTestParameters.cs
- FloaterBaseParaClient.cs
- PropertyToken.cs
- ListViewCancelEventArgs.cs
- BaseProcessor.cs
- InternalsVisibleToAttribute.cs
- SqlReferenceCollection.cs
- BaseDataBoundControl.cs
- ResourceDefaultValueAttribute.cs
- CombinedGeometry.cs
- ResolvedKeyFrameEntry.cs
- SqlTypeSystemProvider.cs
- SingleObjectCollection.cs
- HwndMouseInputProvider.cs
- CommandBindingCollection.cs
- StandardOleMarshalObject.cs
- KoreanCalendar.cs
- ProfileProvider.cs
- CipherData.cs
- ToolStripDesignerAvailabilityAttribute.cs
- GeometryValueSerializer.cs
- ComponentCommands.cs
- HtmlElementEventArgs.cs
- PanelStyle.cs
- QueryConverter.cs
- XmlObjectSerializerReadContext.cs
- UserNamePasswordValidationMode.cs
- ReadOnlyCollectionBase.cs
- xmlsaver.cs
- Help.cs
- BaseContextMenu.cs
- WebPartCatalogCloseVerb.cs
- WebPartDisplayMode.cs
- ConsumerConnectionPoint.cs
- CmsInterop.cs
- securitycriticaldataClass.cs
- UrlPath.cs
- ColumnHeaderConverter.cs
- WriteableBitmap.cs
- ReaderContextStackData.cs
- BinaryConverter.cs
- BaseDataListPage.cs
- TextEditorCharacters.cs
- ComponentTray.cs
- ZipQueryOperator.cs
- NestedContainer.cs
- MissingSatelliteAssemblyException.cs
- QueryContext.cs
- WizardPanel.cs
- CounterSample.cs
- CommaDelimitedStringAttributeCollectionConverter.cs
- WebPartRestoreVerb.cs
- Publisher.cs
- QilFunction.cs
- DomNameTable.cs
- UIEndRequest.cs
- IPHostEntry.cs
- ContractHandle.cs
- InstancePersistenceCommand.cs
- Literal.cs
- XmlSchemaParticle.cs
- HelpInfo.cs
- TextTreeInsertUndoUnit.cs
- TextServicesManager.cs
- DateTimeFormat.cs
- TraversalRequest.cs
- FormClosingEvent.cs
- ElementNotAvailableException.cs