// // System.Drawing.PrinterSettings.cs // // Author: // Dennis Hayes (dennish@Raytek.com) // Herve Poussineau (hpoussineau@fr.st) // // (C) 2002 Ximian, Inc // using System; using System.Collections; using System.Drawing.Printing; namespace System.Drawing.Printing { /// /// Summary description for PrinterSettings. /// /// [Serializable] //[ComVisible(false)] public class PrinterSettings : ICloneable{ public PrinterSettings() { } // SUBCLASS /// /// Summary description for PaperSourceCollection. /// public class PaperSourceCollection : ICollection, IEnumerable { ArrayList _PaperSources = new ArrayList(); public PaperSourceCollection(PaperSource[] array) { foreach (PaperSource ps in array) _PaperSources.Add(ps); } public int Count { get { return _PaperSources.Count; } } bool ICollection.IsSynchronized { get { return false; } } object ICollection.SyncRoot { get { return this; } } public virtual PaperSource this[int index] { get { return _PaperSources[index] as PaperSource; } } IEnumerator IEnumerable.GetEnumerator() { return _PaperSources.GetEnumerator(); } void ICollection.CopyTo(Array array, int index) { _PaperSources.CopyTo(array, index); } } /// /// Summary description for PaperSizeCollection. /// public class PaperSizeCollection : ICollection, IEnumerable { ArrayList _PaperSizes = new ArrayList(); public PaperSizeCollection(PaperSize[] array) { foreach (PaperSize ps in array) _PaperSizes.Add(ps); } public int Count { get { return _PaperSizes.Count; } } bool ICollection.IsSynchronized { get { return false; } } object ICollection.SyncRoot { get { return this; } } public virtual PaperSize this[int index] { get { return _PaperSizes[index] as PaperSize; } } IEnumerator IEnumerable.GetEnumerator() { return _PaperSizes.GetEnumerator(); } void ICollection.CopyTo(Array array, int index) { _PaperSizes.CopyTo(array, index); } } /// /// Summary description for PrinterResolutionCollection. /// public class PrinterResolutionCollection : ICollection, IEnumerable { ArrayList _PrinterResolutions = new ArrayList(); public PrinterResolutionCollection(PrinterResolution[] array) { foreach (PrinterResolution pr in array) _PrinterResolutions.Add(pr); } public int Count { get { return _PrinterResolutions.Count; } } bool ICollection.IsSynchronized { get { return false; } } object ICollection.SyncRoot { get { return this; } } public virtual PrinterResolution this[int index] { get { return _PrinterResolutions[index] as PrinterResolution; } } IEnumerator IEnumerable.GetEnumerator() { return _PrinterResolutions.GetEnumerator(); } void ICollection.CopyTo(Array array, int index) { _PrinterResolutions.CopyTo(array, index); } } /// /// Summary description for PrinterResolutionCollection. /// public class StringCollection : ICollection, IEnumerable { ArrayList _Strings = new ArrayList(); public StringCollection(string[] array) { foreach (string s in array) _Strings.Add(s); } int ICollection.Count { get { return _Strings.Count; } } bool ICollection.IsSynchronized { get { return false; } } object ICollection.SyncRoot { get { return this; } } IEnumerator IEnumerable.GetEnumerator() { return _Strings.GetEnumerator(); } void ICollection.CopyTo(Array array, int index) { _Strings.CopyTo(array, index); } } //props //[MonoTODO("PrinterSettings.CanDuplex")] //public bool CanDuplex //{ // get { throw new NotImplementedException(); } //} //[MonoTODO("PrinterSettings.Collate")] //public bool Collate //{ // get { throw new NotImplementedException(); } // set { throw new NotImplementedException(); } //} //[MonoTODO("PrinterSettings.Copies")] //public short Copies //{ // get { throw new NotImplementedException(); } // set { throw new NotImplementedException(); } //} [MonoTODO("PrinterSettings.DefaultPageSettings")] public PageSettings DefaultPageSettings { get { return new PageSettings( this, // TODO: get default color mode for this printer false, // TODO: get default orientation for this printer false, // TODO: get default paper size for this printer new PaperSize("A4", 827, 1169), // TODO: get default paper source for this printer new PaperSource("default", PaperSourceKind.FormSource), // TODO: get default resolution for this printer new PrinterResolution(300, 300, PrinterResolutionKind.Medium) ); } } //[MonoTODO("PrinterSettings.Duplex")] //public Duplex Duplex //{ // get { throw new NotImplementedException(); } // set { throw new NotImplementedException(); } //} //[MonoTODO("PrinterSettings.FromPage)] //public int FromPage //{ // get { throw new NotImplementedException(); } // set { throw new NotImplementedException(); } //} //[MonoTODO("PrinterSettings.InstalledPrinters")] //public static PrinterSettings.StringCollection InstalledPrinters //{ // get { throw new NotImplementedException(); } //} //[MonoTODO("PrinterSettings.IsDefaultPrinter")] //public bool IsDefaultPrinter //{ // get { throw new NotImplementedException(); } //} //[MonoTODO("PrinterSettings.IsPlotter")] //public bool IsPlotter //{ // get { throw new NotImplementedException(); } //} //[MonoTODO("PrinterSettings.IsValid")] //public bool IsValid //{ // get { throw new NotImplementedException(); } //} //[MonoTODO("PrinterSettings.LandscapeAngle")] //public int LandscapeAngle //{ // get { throw new NotImplementedException(); } //} //[MonoTODO("PrinterSettings.MaximumCopies")] //public int MaximumCopies //{ // get { throw new NotImplementedException(); } //} //[MonoTODO("PrinterSettings.MaximumPage")] //public int MaximumPage //{ // get { throw new NotImplementedException(); } // set { throw new NotImplementedException(); } //} //[MonoTODO("PrinterSettings.MinimumPage")] //public int MinimumPage //{ // get { throw new NotImplementedException(); } // set { throw new NotImplementedException(); } //} //[MonoTODO("PrinterSettings.PaperSizes")] //public PrinterSettings.PaperSizeCollection PaperSizes //{ // get { throw new NotImplementedException(); } //} //[MonoTODO("PrinterSettings.PaperSources")] //public PrinterSettings.PaperSourceCollection PaperSources //{ // get { throw new NotImplementedException(); } //} //[MonoTODO("PrinterSettings.PrinterName")] //public string PrinterName //{ // get { throw new NotImplementedException(); } // set { throw new NotImplementedException(); } //} //[MonoTODO("PrinterSettings.PrinterResolutions")] //public PrinterSettings.PrinterResolutionCollection PrinterResolutions //{ // get { throw new NotImplementedException(); } //} //[MonoTODO("PrinterSettings.PrintRange")] //public PrintRange PrintRange //{ // get { throw new NotImplementedException(); } // set { throw new NotImplementedException(); } //} //[MonoTODO("PrinterSettings.PrintToFile")] //public bool PrintToFile //{ // get { throw new NotImplementedException(); } // set { throw new NotImplementedException(); } //} //[MonoTODO("PrinterSettings.SupportsColor")] //public bool SupportsColor //{ // get { throw new NotImplementedException(); } //} //[MonoTODO("PrinterSettings.ToPage")] //public int ToPage //{ // get { throw new NotImplementedException(); } // set { throw new NotImplementedException(); } //} //methods [MonoTODO("PrinterSettings.Clone")] public virtual object Clone() { throw new NotImplementedException(); } //[MonoTODO("PrinterSettings.CreateMeasurementGraphics")] //public Graphics CreateMeasurementGraphics() //{ // throw new NotImplementedException(); //} //[MonoTODO("PrinterSettings.GetHdevmode")] //public IntPtr GetHdevmode() //{ // throw new NotImplementedException(); //} //[MonoTODO("PrinterSettings.GetHdevmode")] //public IntPtr GetHdevmode(PageSettings pageSettings) //{ // throw new NotImplementedException(); //} //[MonoTODO("PrinterSettings.GetHdevname")] //public IntPtr GetHdevnames() //{ // throw new NotImplementedException(); //} //[MonoTODO("PrinterSettings.SetHdevmode")] //public void SetHdevmode(IntPtr hdevmode) //{ // throw new NotImplementedException(); //} //[MonoTODO("PrinterSettings.SetHdevnames")] //public void SetHdevnames(IntPtr hdevnames) //{ // throw new NotImplementedException(); //} //[MonoTODO("PrinterSettings.ToString"] //public override string ToString() //{ // throw new NotImplementedException(); //} } }