Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Print / Reach / PrintConfig / PageBorderless.cs / 1 / PageBorderless.cs
/*++ Copyright (C) 2003-2005 Microsoft Corporation All rights reserved. Module Name: PageBorderless.cs Abstract: Definition and implementation of this public feature/parameter related types. Author: [....] ([....]) 05/26/2005 --*/ 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 borderless option. /// internal class BorderlessOption: PrintCapabilityOption { #region Constructors internal BorderlessOption(PrintCapabilityFeature ownerFeature) : base(ownerFeature) { _value = 0; } #endregion Constructors #region Public Properties ////// Gets the borderless option's value. /// public PageBorderless Value { get { return _value; } } #endregion Public Properties #region Public Methods ////// Converts the borderless option to human-readable string. /// ///A string that represents this borderless option. public override string ToString() { return Value.ToString(); } #endregion Public Methods #region Internal Fields internal PageBorderless _value; #endregion Internal Fields } ////// Represents page borderless capability. /// internal class PageBorderlessCapability : PrintCapabilityFeature { #region Constructors internal PageBorderlessCapability(InternalPrintCapabilities ownerPrintCap) : base(ownerPrintCap) { } #endregion Constructors #region Public Properties ////// Gets the collection object that represents borderless options supported by the device. /// public CollectionBorderlessOptions { get { return _borderlessOptions; } } #endregion Public Properties #region Internal Methods internal static PrintCapabilityFeature NewFeatureCallback(InternalPrintCapabilities printCap) { PageBorderlessCapability cap = new PageBorderlessCapability(printCap); cap._borderlessOptions = new Collection (); return cap; } internal override sealed bool AddOptionCallback(PrintCapabilityOption baseOption) { bool added = false; BorderlessOption option = baseOption as BorderlessOption; // validate the option is complete before adding it to the collection if (option._optionName != null) { int enumValue = PrintSchemaMapper.SchemaNameToEnumValueWithArray( PrintSchemaTags.Keywords.PageBorderlessKeys.BorderlessNames, PrintSchemaTags.Keywords.PageBorderlessKeys.BorderlessEnums, option._optionName); if (enumValue > 0) { option._value = (PageBorderless)enumValue; this.BorderlessOptions.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) { BorderlessOption option = new BorderlessOption(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.BorderlessOptions.Count > 0); } } internal override sealed string FeatureName { get { return PrintSchemaTags.Keywords.PageBorderlessKeys.Self; } } internal override sealed bool HasSubFeature { get { return false; } } #endregion Internal Properties #region Internal Fields internal Collection _borderlessOptions; #endregion Internal Fields } /// /// Represents page borderless setting. /// internal class PageBorderlessSetting : PrintTicketFeature { #region Constructors ////// Constructs a new page borderless setting object. /// internal PageBorderlessSetting(InternalPrintTicket ownerPrintTicket) : base(ownerPrintTicket) { this._featureName = PrintSchemaTags.Keywords.PageBorderlessKeys.Self; this._propertyMaps = new PTPropertyMapEntry[] { new PTPropertyMapEntry(this, PrintSchemaTags.Framework.OptionNameProperty, PTPropValueTypes.EnumStringValue, PrintSchemaTags.Keywords.PageBorderlessKeys.BorderlessNames, PrintSchemaTags.Keywords.PageBorderlessKeys.BorderlessEnums) }; } #endregion Constructors #region Public Properties ////// Gets or sets the value of this page borderless setting. /// ////// If the setting is not specified yet, getter will return 0. /// ////// The value to set is not one of the standard public PageBorderless Value { get { return (PageBorderless)this[PrintSchemaTags.Framework.OptionNameProperty]; } set { if (value < PrintSchema.PageBorderlessEnumMin || value > PrintSchema.PageBorderlessEnumMax) { throw new ArgumentOutOfRangeException("value"); } this[PrintSchemaTags.Framework.OptionNameProperty] = (int)value; } } #endregion Public Properties #region Public Methods ///. /// /// Converts the page borderless setting to human-readable string. /// ///A string that represents this page borderless 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
- XmlDomTextWriter.cs
- CheckoutException.cs
- ProgressChangedEventArgs.cs
- MenuItemStyleCollection.cs
- HttpProtocolImporter.cs
- Signature.cs
- NGCUIElementCollectionSerializerAsync.cs
- ListViewUpdateEventArgs.cs
- DurableEnlistmentState.cs
- codemethodreferenceexpression.cs
- NamespaceImport.cs
- ParameterElement.cs
- SQLUtility.cs
- SessionStateItemCollection.cs
- AttachedAnnotationChangedEventArgs.cs
- _BasicClient.cs
- CustomCategoryAttribute.cs
- QueryAsyncResult.cs
- CroppedBitmap.cs
- DbConnectionStringBuilder.cs
- EmissiveMaterial.cs
- WebPartRestoreVerb.cs
- PersistChildrenAttribute.cs
- SmtpException.cs
- DefaultAsyncDataDispatcher.cs
- CallbackValidatorAttribute.cs
- EntitySet.cs
- SqlCachedBuffer.cs
- SizeFConverter.cs
- LoginAutoFormat.cs
- XomlDesignerLoader.cs
- ColumnResult.cs
- AppDomainResourcePerfCounters.cs
- AmbientLight.cs
- Italic.cs
- ApplicationSecurityInfo.cs
- ExeConfigurationFileMap.cs
- AuthenticationService.cs
- MsmqAppDomainProtocolHandler.cs
- SiblingIterators.cs
- DateTimePicker.cs
- MimeMultiPart.cs
- TableMethodGenerator.cs
- NumberAction.cs
- CombinedGeometry.cs
- ToolConsole.cs
- TimerElapsedEvenArgs.cs
- UrlAuthFailureHandler.cs
- ReadOnlyObservableCollection.cs
- RuleSet.cs
- MultiByteCodec.cs
- TextElementAutomationPeer.cs
- X509RawDataKeyIdentifierClause.cs
- DataGridViewCellEventArgs.cs
- SchemaObjectWriter.cs
- XmlSchemaComplexContentExtension.cs
- HttpCapabilitiesEvaluator.cs
- MarginCollapsingState.cs
- HttpStreamFormatter.cs
- ReadOnlyNameValueCollection.cs
- _TimerThread.cs
- AutoSizeToolBoxItem.cs
- CompareValidator.cs
- Converter.cs
- InputElement.cs
- GradientBrush.cs
- PriorityQueue.cs
- RowToFieldTransformer.cs
- CompilationUtil.cs
- SHA256Managed.cs
- WorkflowViewElement.cs
- HttpContextServiceHost.cs
- Item.cs
- SspiWrapper.cs
- TdsRecordBufferSetter.cs
- Page.cs
- ModelService.cs
- HtmlToClrEventProxy.cs
- AutomationElementCollection.cs
- XmlSchemaProviderAttribute.cs
- RewritingSimplifier.cs
- FontFamily.cs
- DatePickerTextBox.cs
- EventLogPermissionEntry.cs
- EntityDataSourceDesigner.cs
- EntityProviderServices.cs
- Point4DValueSerializer.cs
- PeerNodeAddress.cs
- WindowsSysHeader.cs
- InplaceBitmapMetadataWriter.cs
- ListViewCancelEventArgs.cs
- UriExt.cs
- Transform3DGroup.cs
- RouteValueExpressionBuilder.cs
- ConcurrencyBehavior.cs
- Style.cs
- PrintDialog.cs
- SmiEventSink.cs
- ListView.cs
- FlowDocumentPage.cs