Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Print / Reach / PrintConfig / JobCollate.cs / 1 / JobCollate.cs
/*++ Copyright (C) 2003-2005 Microsoft Corporation All rights reserved. Module Name: JobCollate.cs Abstract: Definition and implementation of this public feature/parameter related types. Author: [....] ([....]) 06/30/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 collating option. /// internal class CollateOption: PrintCapabilityOption { #region Constructors internal CollateOption(PrintCapabilityFeature ownerFeature) : base(ownerFeature) { _value = 0; } #endregion Constructors #region Public Properties ////// Gets the collating option's value. /// public Collation Value { get { return _value; } } #endregion Public Properties #region Public Methods ////// Converts the collating option to human-readable string. /// ///A string that represents this collating option. public override string ToString() { return Value.ToString(); } #endregion Public Methods #region Internal Fields internal Collation _value; #endregion Internal Fields } ////// Represents collate capability. /// abstract internal class CollateCapability : PrintCapabilityFeature { #region Constructors internal CollateCapability(InternalPrintCapabilities ownerPrintCap) : base(ownerPrintCap) { } #endregion Constructors #region Public Properties ////// Gets the collection object that represents collating options supported by the device. /// public CollectionCollateOptions { get { return _collateOptions; } } #endregion Public Properties #region Internal Methods internal override sealed bool AddOptionCallback(PrintCapabilityOption baseOption) { bool added = false; CollateOption option = baseOption as CollateOption; // validate the option is complete before adding it to the collection if (option._optionName != null) { int enumValue = PrintSchemaMapper.SchemaNameToEnumValueWithArray( PrintSchemaTags.Keywords.CollateKeys.CollationNames, PrintSchemaTags.Keywords.CollateKeys.CollationEnums, option._optionName); if (enumValue > 0) { option._value = (Collation)enumValue; this.CollateOptions.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) { CollateOption option = new CollateOption(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.CollateOptions.Count > 0); } } internal abstract override string FeatureName { get; } internal override sealed bool HasSubFeature { get { return false; } } #endregion Internal Properties #region Internal Fields internal Collection _collateOptions; #endregion Internal Fields } /// /// Represents document collate capability. /// internal class DocumentCollateCapability : CollateCapability { #region Constructors internal DocumentCollateCapability(InternalPrintCapabilities ownerPrintCap) : base(ownerPrintCap) { } #endregion Constructors #region Internal Methods internal static PrintCapabilityFeature NewFeatureCallback(InternalPrintCapabilities printCap) { DocumentCollateCapability cap = new DocumentCollateCapability(printCap); cap._collateOptions = new Collection(); return cap; } #endregion Internal Methods #region Internal Properties internal override sealed string FeatureName { get { return PrintSchemaTags.Keywords.CollateKeys.DocumentCollate; } } #endregion Internal Properties } /// /// Represents collate setting. /// abstract internal class CollateSetting : PrintTicketFeature { #region Constructors ////// Constructs a new collate setting object. /// internal CollateSetting(InternalPrintTicket ownerPrintTicket, string featureName) : base(ownerPrintTicket) { this._featureName = featureName; this._propertyMaps = new PTPropertyMapEntry[] { new PTPropertyMapEntry(this, PrintSchemaTags.Framework.OptionNameProperty, PTPropValueTypes.EnumStringValue, PrintSchemaTags.Keywords.CollateKeys.CollationNames, PrintSchemaTags.Keywords.CollateKeys.CollationEnums) }; } #endregion Constructors #region Public Properties ////// Gets or sets the value of this collate setting. /// ////// If the setting is not specified yet, getter will return 0. /// ////// The value to set is not one of the standard public Collation Value { get { return (Collation)this[PrintSchemaTags.Framework.OptionNameProperty]; } set { if (value < PrintSchema.CollationEnumMin || value > PrintSchema.CollationEnumMax) { throw new ArgumentOutOfRangeException("value"); } this[PrintSchemaTags.Framework.OptionNameProperty] = (int)value; } } #endregion Public Properties #region Public Methods ///. /// /// Converts the collate setting to human-readable string. /// ///A string that represents this job collate setting. public override string ToString() { return Value.ToString(); } #endregion Public Methods } ////// Represents document collate setting. /// internal class DocumentCollateSetting : CollateSetting { #region Constructors internal DocumentCollateSetting(InternalPrintTicket ownerPrintTicket) : base(ownerPrintTicket, PrintSchemaTags.Keywords.CollateKeys.DocumentCollate) { } #endregion Constructors } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
![Network programming in C#, Network Programming in VB.NET, Network Programming in .NET](/images/book.jpg)
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- LocalizationParserHooks.cs
- SafeThreadHandle.cs
- SymDocumentType.cs
- ImageSourceConverter.cs
- InvokeHandlers.cs
- MemberMaps.cs
- TextEditor.cs
- RtfFormatStack.cs
- EntityCommandCompilationException.cs
- EventLogEntryCollection.cs
- NativeBuffer.cs
- ColumnHeaderConverter.cs
- GraphicsContext.cs
- Underline.cs
- FtpWebResponse.cs
- processwaithandle.cs
- SiteMapDataSource.cs
- DbMetaDataColumnNames.cs
- BooleanFunctions.cs
- FontUnitConverter.cs
- ScriptReferenceEventArgs.cs
- SoapObjectInfo.cs
- RtfToXamlLexer.cs
- DataGridViewRowsAddedEventArgs.cs
- WebServiceClientProxyGenerator.cs
- CodeCastExpression.cs
- ExpandCollapsePattern.cs
- DataGridDefaultColumnWidthTypeConverter.cs
- FunctionImportMapping.cs
- MessageFilter.cs
- ObjectItemConventionAssemblyLoader.cs
- DesignTimeVisibleAttribute.cs
- SharedDp.cs
- OrderingExpression.cs
- MimeTypePropertyAttribute.cs
- GenericEnumerator.cs
- CreateRefExpr.cs
- ScrollEvent.cs
- SafeNativeMethodsOther.cs
- DragEvent.cs
- QualificationDataAttribute.cs
- TextDpi.cs
- UIElement.cs
- HttpListenerPrefixCollection.cs
- XmlSchemaAnyAttribute.cs
- TreeSet.cs
- RayHitTestParameters.cs
- TransactedReceiveScope.cs
- VectorKeyFrameCollection.cs
- CompositeActivityMarkupSerializer.cs
- HtmlButton.cs
- DataGridViewColumnDividerDoubleClickEventArgs.cs
- ListItemParagraph.cs
- RowToParametersTransformer.cs
- OracleBinary.cs
- ConfigurationLocation.cs
- GridItem.cs
- SiteMapNodeItem.cs
- XmlTextReaderImplHelpers.cs
- XmlSchemas.cs
- ComponentChangingEvent.cs
- URLIdentityPermission.cs
- WebPartEditVerb.cs
- PrivilegedConfigurationManager.cs
- AppearanceEditorPart.cs
- FilterQueryOptionExpression.cs
- DispatcherExceptionEventArgs.cs
- ConditionalAttribute.cs
- GAC.cs
- ProjectionCamera.cs
- GridViewRowPresenter.cs
- Int32Rect.cs
- ProcessProtocolHandler.cs
- WindowsRichEditRange.cs
- SapiInterop.cs
- AttributeSetAction.cs
- SQLDecimalStorage.cs
- ConnectionManagementElementCollection.cs
- _NegoState.cs
- RtfControls.cs
- mansign.cs
- CharKeyFrameCollection.cs
- OleDbReferenceCollection.cs
- ImportOptions.cs
- Int16Storage.cs
- LinkUtilities.cs
- RestHandler.cs
- SafeUserTokenHandle.cs
- PinnedBufferMemoryStream.cs
- HttpInputStream.cs
- DoubleAnimationBase.cs
- SmtpSpecifiedPickupDirectoryElement.cs
- OutputWindow.cs
- Vector.cs
- MatrixTransform.cs
- DataGridViewAutoSizeColumnModeEventArgs.cs
- XmlTextWriter.cs
- EdmEntityTypeAttribute.cs
- XmlHierarchyData.cs
- SignedXml.cs