Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Print / Reach / PrintConfig / PageTrueTypeFont.cs / 1 / PageTrueTypeFont.cs
/*++
Copyright (C) 2003 Microsoft Corporation
All rights reserved.
Module Name:
PageTrueTypeFont.cs
Abstract:
Definition and implementation of this public feature/parameter related types.
Author:
[....] ([....]) 7/24/2003
--*/
using System;
using System.IO;
using System.Collections;
using System.Collections.ObjectModel;
using System.Collections.Generic;
using System.Diagnostics;
using System.Printing;
using MS.Internal.Printing.Configuration;
namespace MS.Internal.Printing.Configuration
{
///
/// Represents a TrueType font handling mode option.
///
internal class TrueTypeFontModeOption: PrintCapabilityOption
{
#region Constructors
internal TrueTypeFontModeOption(PrintCapabilityFeature ownerFeature) : base(ownerFeature)
{
_value = 0;
}
#endregion Constructors
#region Public Properties
///
/// Gets the TrueType font handling mode's value.
///
public TrueTypeFontMode Value
{
get
{
return _value;
}
}
#endregion Public Properties
#region Public Methods
///
/// Converts the TrueType font handling mode to human-readable string.
///
/// A string that represents this TrueType font handling mode.
public override string ToString()
{
return Value.ToString();
}
#endregion Public Methods
#region Internal Fields
internal TrueTypeFontMode _value;
#endregion Internal Fields
}
///
/// Represents page TrueType font handling mode capability.
///
internal class PageTrueTypeFontModeCapability : PrintCapabilityFeature
{
#region Constructors
internal PageTrueTypeFontModeCapability(InternalPrintCapabilities ownerPrintCap)
: base(ownerPrintCap)
{
}
#endregion Constructors
#region Public Properties
///
/// Gets the collection object that represents TrueType font handling modes
/// supported by the device.
///
public Collection TrueTypeFontModes
{
get
{
return _trueTypeFontModes;
}
}
#endregion Public Properties
#region Internal Methods
internal static PrintCapabilityFeature NewFeatureCallback(InternalPrintCapabilities printCap)
{
PageTrueTypeFontModeCapability cap = new PageTrueTypeFontModeCapability(printCap);
cap._trueTypeFontModes = new Collection();
return cap;
}
internal override sealed bool AddOptionCallback(PrintCapabilityOption baseOption)
{
bool added = false;
TrueTypeFontModeOption option = baseOption as TrueTypeFontModeOption;
// validate the option is complete before adding it to the collection
if (option._optionName != null)
{
int enumValue = PrintSchemaMapper.SchemaNameToEnumValueWithArray(
PrintSchemaTags.Keywords.PageTrueTypeFontModeKeys.ModeNames,
PrintSchemaTags.Keywords.PageTrueTypeFontModeKeys.ModeEnums,
option._optionName);
if (enumValue > 0)
{
option._value = (TrueTypeFontMode)enumValue;
this.TrueTypeFontModes.Add(option);
added = true;
}
}
return added;
}
internal override sealed void AddSubFeatureCallback(PrintCapabilityFeature subFeature)
{
// no sub-feature
return;
}
internal override sealed bool FeaturePropCallback(PrintCapabilityFeature feature, XmlPrintCapReader reader)
{
// no feature property to handle
return false;
}
internal override sealed PrintCapabilityOption NewOptionCallback(PrintCapabilityFeature baseFeature)
{
TrueTypeFontModeOption option = new TrueTypeFontModeOption(baseFeature);
return option;
}
internal override sealed void OptionAttrCallback(PrintCapabilityOption baseOption, XmlPrintCapReader reader)
{
// no option attribute to handle
return;
}
internal override sealed bool OptionPropCallback(PrintCapabilityOption option, XmlPrintCapReader reader)
{
// no option property to handle
return false;
}
#endregion Internal Methods
#region Internal Properties
internal override sealed bool IsValid
{
get
{
return (this.TrueTypeFontModes.Count > 0);
}
}
internal override sealed string FeatureName
{
get
{
return PrintSchemaTags.Keywords.PageTrueTypeFontModeKeys.Self;
}
}
internal override sealed bool HasSubFeature
{
get
{
return false;
}
}
#endregion Internal Properties
#region Internal Fields
internal Collection _trueTypeFontModes;
#endregion Internal Fields
}
///
/// Represents page TrueType font handling mode setting.
///
internal class PageTrueTypeFontModeSetting : PrintTicketFeature
{
#region Constructors
///
/// Constructs a new page TrueType font handling mode setting object.
///
internal PageTrueTypeFontModeSetting(InternalPrintTicket ownerPrintTicket)
: base(ownerPrintTicket)
{
this._featureName = PrintSchemaTags.Keywords.PageTrueTypeFontModeKeys.Self;
this._propertyMaps = new PTPropertyMapEntry[] {
new PTPropertyMapEntry(this,
PrintSchemaTags.Framework.OptionNameProperty,
PTPropValueTypes.EnumStringValue,
PrintSchemaTags.Keywords.PageTrueTypeFontModeKeys.ModeNames,
PrintSchemaTags.Keywords.PageTrueTypeFontModeKeys.ModeEnums)
};
}
#endregion Constructors
#region Public Properties
///
/// Gets or sets the value of the page TrueType font handling mode setting.
///
///
/// If the setting is not specified yet, getter will return 0.
///
///
/// The value to set is not one of the standard .
///
public TrueTypeFontMode Value
{
get
{
return (TrueTypeFontMode)this[PrintSchemaTags.Framework.OptionNameProperty];
}
set
{
if (value < PrintSchema.TrueTypeFontModeEnumMin ||
value > PrintSchema.TrueTypeFontModeEnumMax)
{
throw new ArgumentOutOfRangeException("value");
}
this[PrintSchemaTags.Framework.OptionNameProperty] = (int)value;
}
}
#endregion Public Properties
#region Public Methods
///
/// Converts the page TrueType font handling mode setting to human-readable string.
///
/// A string that represents this page TrueType font handling mode setting.
public override string ToString()
{
return Value.ToString();
}
#endregion Public Methods
}
}
// 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
- XmlSchemaAppInfo.cs
- ListBindableAttribute.cs
- DataGridViewIntLinkedList.cs
- EncryptedData.cs
- StrongNameMembershipCondition.cs
- SiteMapNodeItemEventArgs.cs
- Renderer.cs
- SecurityPolicySection.cs
- SqlMethods.cs
- SymDocumentType.cs
- PropertySegmentSerializationProvider.cs
- DeflateStreamAsyncResult.cs
- Converter.cs
- TdsParserStaticMethods.cs
- printdlgexmarshaler.cs
- Speller.cs
- SecurityUtils.cs
- XhtmlTextWriter.cs
- ButtonField.cs
- StateInitializationDesigner.cs
- ValidationPropertyAttribute.cs
- ComAdminInterfaces.cs
- EnumValAlphaComparer.cs
- SafeNativeMethodsOther.cs
- BuildResult.cs
- NameValuePermission.cs
- HttpClientChannel.cs
- ConditionBrowserDialog.cs
- AlignmentXValidation.cs
- InstanceLockedException.cs
- DetailsViewRowCollection.cs
- Part.cs
- WindowsScrollBar.cs
- SkewTransform.cs
- GeneralTransformGroup.cs
- MenuCommand.cs
- TransactionScopeDesigner.cs
- CodeSnippetCompileUnit.cs
- EntityDataSourceWrapperPropertyDescriptor.cs
- CheckBoxRenderer.cs
- PageThemeBuildProvider.cs
- WebPartConnectionCollection.cs
- DbMetaDataFactory.cs
- UnknownBitmapEncoder.cs
- LocationSectionRecord.cs
- Effect.cs
- CodeLinePragma.cs
- WebCategoryAttribute.cs
- WindowsImpersonationContext.cs
- UnsignedPublishLicense.cs
- TextServicesPropertyRanges.cs
- XamlFigureLengthSerializer.cs
- SecurityPolicySection.cs
- DecimalAnimationBase.cs
- TrustManagerPromptUI.cs
- BuiltInExpr.cs
- ResourceCategoryAttribute.cs
- PseudoWebRequest.cs
- PageThemeParser.cs
- ProviderException.cs
- Vertex.cs
- HostProtectionPermission.cs
- InputScopeConverter.cs
- CharacterHit.cs
- DateTimeAutomationPeer.cs
- DbConnectionFactory.cs
- ContentControl.cs
- HandlerBase.cs
- TrackPointCollection.cs
- Constants.cs
- RC2.cs
- Msmq.cs
- SelectedDatesCollection.cs
- HttpProxyCredentialType.cs
- TableCellAutomationPeer.cs
- CreateUserErrorEventArgs.cs
- SqlRetyper.cs
- ToolboxItemAttribute.cs
- SchemaCompiler.cs
- WorkflowOperationBehavior.cs
- TimeSpanConverter.cs
- XmlSchemaComplexContentRestriction.cs
- WindowsGraphics.cs
- InvokeProviderWrapper.cs
- ScaleTransform3D.cs
- Encoding.cs
- AspNetCompatibilityRequirementsMode.cs
- ConfigXmlCDataSection.cs
- XmlConvert.cs
- entityreference_tresulttype.cs
- CompiledAction.cs
- SecurityElement.cs
- MinimizableAttributeTypeConverter.cs
- NumberFunctions.cs
- EntityCommandExecutionException.cs
- DictionaryGlobals.cs
- HtmlToClrEventProxy.cs
- SuspendDesigner.cs
- DataBinder.cs
- FixedPageProcessor.cs