Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Print / Reach / PrintConfig / JobStaple.cs / 1 / JobStaple.cs
/*++ Copyright (C) 2004 Microsoft Corporation All rights reserved. Module Name: JobStaple.cs Abstract: Definition and implementation of this public feature/parameter related types. Author: [....] ([....]) 8/2/2004 --*/ using System; using System.IO; using System.Xml; using System.Collections; using System.Collections.ObjectModel; using System.Collections.Generic; using System.Diagnostics; using System.Globalization; using System.Printing; using MS.Internal.Printing.Configuration; namespace MS.Internal.Printing.Configuration { ////// Represents an output stapling option. /// internal class StaplingOption: PrintCapabilityOption { #region Constructors internal StaplingOption(PrintCapabilityFeature ownerFeature) : base(ownerFeature) { _value = 0; } #endregion Constructors #region Public Properties ////// Gets the output stapling option's value. /// public Stapling Value { get { return _value; } } #endregion Public Properties #region Public Methods ////// Converts the output stapling option to human-readable string. /// ///A string that represents this output stapling option. public override string ToString() { return Value.ToString(); } #endregion Public Methods #region Internal Fields internal Stapling _value; #endregion Internal Fields } ////// Represents output stapling capability. /// abstract internal class StapleCapability : PrintCapabilityFeature { #region Constructors internal StapleCapability(InternalPrintCapabilities ownerPrintCap) : base(ownerPrintCap) { } #endregion Constructors #region Public Properties ////// Gets the collection object that represents output stapling options supported by the device. /// public CollectionStaplingOptions { get { return _staplingOptions; } } #endregion Public Properties #region Internal Methods internal override sealed bool AddOptionCallback(PrintCapabilityOption baseOption) { bool added = false; StaplingOption option = baseOption as StaplingOption; // Validate the option is complete before adding it to the collection if (option._optionName != null) { int enumValue = PrintSchemaMapper.SchemaNameToEnumValueWithArray( PrintSchemaTags.Keywords.StapleKeys.StaplingNames, PrintSchemaTags.Keywords.StapleKeys.StaplingEnums, option._optionName); if (enumValue > 0) { option._value = (Stapling)enumValue; this.StaplingOptions.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) { StaplingOption option = new StaplingOption(baseFeature); return option; } internal override sealed void OptionAttrCallback(PrintCapabilityOption baseOption, XmlPrintCapReader reader) { // no option attribute to handle return; } /// XML is not well-formed. internal override sealed bool OptionPropCallback(PrintCapabilityOption baseOption, XmlPrintCapReader reader) { // no option property to handle return false; } #endregion Internal Methods #region Internal Properties internal override sealed bool IsValid { get { return (this.StaplingOptions.Count > 0); } } internal abstract override string FeatureName { get; } internal override sealed bool HasSubFeature { get { return false; } } #endregion Internal Properties #region Internal Fields internal Collection_staplingOptions; #endregion Internal Fields } /// /// Represents job output stapling capability. /// internal class JobStapleCapability : StapleCapability { #region Constructors internal JobStapleCapability(InternalPrintCapabilities ownerPrintCap) : base(ownerPrintCap) { } #endregion Constructors #region Internal Methods internal static PrintCapabilityFeature NewFeatureCallback(InternalPrintCapabilities printCap) { JobStapleCapability cap = new JobStapleCapability(printCap); cap._staplingOptions = new Collection(); return cap; } #endregion Internal Methods #region Internal Properties internal override sealed string FeatureName { get { return PrintSchemaTags.Keywords.StapleKeys.JobStaple; } } #endregion Internal Properties } /// /// Represents output stapling setting. /// abstract internal class StapleSetting : PrintTicketFeature { #region Constructors ////// Constructs a new output stapling setting object. /// internal StapleSetting(InternalPrintTicket ownerPrintTicket, string featureName) : base(ownerPrintTicket) { this._featureName = featureName; this._propertyMaps = new PTPropertyMapEntry[] { new PTPropertyMapEntry(this, PrintSchemaTags.Framework.OptionNameProperty, PTPropValueTypes.EnumStringValue, PrintSchemaTags.Keywords.StapleKeys.StaplingNames, PrintSchemaTags.Keywords.StapleKeys.StaplingEnums), }; } #endregion Constructors #region Public Properties ////// Gets or sets the output stapling setting's value. /// ////// If the setting is not specified yet, getter will return 0. /// ////// The value to set is not one of the standard public Stapling Value { get { return (Stapling)this[PrintSchemaTags.Framework.OptionNameProperty]; } set { if (value < PrintSchema.StaplingEnumMin || value > PrintSchema.StaplingEnumMax) { throw new ArgumentOutOfRangeException("value"); } this[PrintSchemaTags.Framework.OptionNameProperty] = (int)value; } } #endregion Public Properties #region Public Methods ///. /// /// Converts the output stapling setting to human-readable string. /// ///A string that represents this output stapling setting. public override string ToString() { return Value.ToString(); } #endregion Public Methods } ////// Represents job output stapling setting. /// internal class JobStapleSetting : StapleSetting { #region Constructors internal JobStapleSetting(InternalPrintTicket ownerPrintTicket) : base(ownerPrintTicket, PrintSchemaTags.Keywords.StapleKeys.JobStaple) { } #endregion Constructors } } // 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
- ApplicationServicesHostFactory.cs
- RenderData.cs
- SettingsAttributes.cs
- XPathAxisIterator.cs
- Int32EqualityComparer.cs
- MenuItemCollection.cs
- InvalidEnumArgumentException.cs
- ProtocolsConfigurationHandler.cs
- TextRangeBase.cs
- LeftCellWrapper.cs
- PropertyDescriptorComparer.cs
- TraceUtility.cs
- AttachedProperty.cs
- FederatedMessageSecurityOverHttp.cs
- DataGridItemCollection.cs
- contentDescriptor.cs
- MenuItemStyleCollection.cs
- ComponentCollection.cs
- TaskHelper.cs
- SortKey.cs
- RemotingServices.cs
- ReceiveSecurityHeaderElementManager.cs
- SingleKeyFrameCollection.cs
- BindingElement.cs
- DrawingBrush.cs
- HttpApplicationFactory.cs
- ListViewTableRow.cs
- Number.cs
- SaveFileDialog.cs
- NonSerializedAttribute.cs
- Imaging.cs
- ProfilePropertyNameValidator.cs
- PreviewPrintController.cs
- SmiEventStream.cs
- ServicePointManager.cs
- WorkflowViewManager.cs
- FileSecurity.cs
- PriorityRange.cs
- MailDefinitionBodyFileNameEditor.cs
- ObjectTokenCategory.cs
- TextCompositionEventArgs.cs
- FormatConvertedBitmap.cs
- CategoryNameCollection.cs
- DrawingContextWalker.cs
- WebPartEditorCancelVerb.cs
- ZipIOFileItemStream.cs
- NonPrimarySelectionGlyph.cs
- MD5Cng.cs
- AutomationTextAttribute.cs
- SingleAnimationBase.cs
- FileVersionInfo.cs
- ObjectSecurity.cs
- ContactManager.cs
- DataGridViewCellStyle.cs
- Drawing.cs
- _NegoStream.cs
- DocumentGridContextMenu.cs
- LoginDesignerUtil.cs
- ClientSettingsProvider.cs
- StringAttributeCollection.cs
- CodeIdentifiers.cs
- BinaryObjectReader.cs
- MsmqBindingMonitor.cs
- Component.cs
- XamlUtilities.cs
- ipaddressinformationcollection.cs
- QuaternionAnimationBase.cs
- TagPrefixCollection.cs
- Point3DCollection.cs
- GridItemProviderWrapper.cs
- ForeignConstraint.cs
- Point3DAnimationBase.cs
- HttpListenerPrefixCollection.cs
- EncoderReplacementFallback.cs
- Hex.cs
- TextBoxAutomationPeer.cs
- QueryTask.cs
- PlainXmlDeserializer.cs
- ClockGroup.cs
- SortQuery.cs
- EDesignUtil.cs
- Axis.cs
- DataSource.cs
- GPPOINT.cs
- MasterPageBuildProvider.cs
- PagerSettings.cs
- BulletChrome.cs
- MailDefinition.cs
- Policy.cs
- TemplateBuilder.cs
- DomNameTable.cs
- XsltQilFactory.cs
- JsonMessageEncoderFactory.cs
- WebEventTraceProvider.cs
- ScriptServiceAttribute.cs
- TextTrailingCharacterEllipsis.cs
- ExpressionConverter.cs
- RemotingException.cs
- PageDeviceFont.cs
- DrawTreeNodeEventArgs.cs