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
- CodeRemoveEventStatement.cs
- SymmetricKeyWrap.cs
- OptimisticConcurrencyException.cs
- ToolTip.cs
- XPathException.cs
- DataGridViewTopLeftHeaderCell.cs
- FrugalMap.cs
- ClientCultureInfo.cs
- TraceHelpers.cs
- ColorConvertedBitmap.cs
- RegionData.cs
- StateMachine.cs
- ProfilePropertyNameValidator.cs
- ProviderException.cs
- ProfileModule.cs
- BinaryMethodMessage.cs
- BulletedList.cs
- FormViewPagerRow.cs
- TextTreeObjectNode.cs
- BulletChrome.cs
- Int32Rect.cs
- ServiceNameCollection.cs
- OdbcException.cs
- CodeAssignStatement.cs
- PseudoWebRequest.cs
- RootProfilePropertySettingsCollection.cs
- SymbolMethod.cs
- ProfilePropertyNameValidator.cs
- ZoomComboBox.cs
- EdmRelationshipNavigationPropertyAttribute.cs
- ArgumentOutOfRangeException.cs
- LayoutManager.cs
- SubtreeProcessor.cs
- FontInfo.cs
- VectorCollectionConverter.cs
- ErrorFormatterPage.cs
- TextBoxAutoCompleteSourceConverter.cs
- CodeIterationStatement.cs
- EntityDataSourceEntityTypeFilterItem.cs
- ForEachDesigner.xaml.cs
- DataControlFieldTypeEditor.cs
- ConfigurationStrings.cs
- configsystem.cs
- OperationAbortedException.cs
- StickyNoteContentControl.cs
- XmlProcessingInstruction.cs
- DefaultClaimSet.cs
- BufferedGraphics.cs
- ThreadSafeList.cs
- XappLauncher.cs
- OledbConnectionStringbuilder.cs
- SeverityFilter.cs
- SessionSwitchEventArgs.cs
- XmlDataProvider.cs
- LeaseManager.cs
- CssStyleCollection.cs
- WebPartUserCapability.cs
- ConstructorBuilder.cs
- XmlSerializerFactory.cs
- DataPointer.cs
- WebDisplayNameAttribute.cs
- OrderedEnumerableRowCollection.cs
- CompositeDataBoundControl.cs
- TransformPattern.cs
- ComNativeDescriptor.cs
- SettingsProviderCollection.cs
- XmlUTF8TextReader.cs
- StateBag.cs
- ManipulationDevice.cs
- TypeLoadException.cs
- SqlMetaData.cs
- SiteMapNodeItem.cs
- EventHandlersStore.cs
- DataExpression.cs
- Odbc32.cs
- OptimalBreakSession.cs
- NativeRightsManagementAPIsStructures.cs
- ArglessEventHandlerProxy.cs
- DbDataReader.cs
- WinFormsUtils.cs
- MessageBox.cs
- UnsafeNativeMethods.cs
- HttpListenerContext.cs
- XPathMessageFilterElement.cs
- TextServicesDisplayAttribute.cs
- ItemList.cs
- ColumnMapVisitor.cs
- AnnotationMap.cs
- ColumnReorderedEventArgs.cs
- SourceElementsCollection.cs
- OleDbConnectionInternal.cs
- HasCopySemanticsAttribute.cs
- UnorderedHashRepartitionStream.cs
- ExtensionFile.cs
- CompilerWrapper.cs
- Point3DKeyFrameCollection.cs
- WebPartManagerInternals.cs
- ThreadStaticAttribute.cs
- EventArgs.cs
- HorizontalAlignConverter.cs