namespace System.Drawing.Printing
{
-#if NET_2_0
[Serializable]
-#else
- [ComVisible (false)]
-#endif
public class PageSettings : ICloneable
{
internal bool color;
// create a new default Margins object (is 1 inch for all margins)
Margins margins = new Margins();
-\r
- float hardMarginX;\r
+#pragma warning disable 649
+ float hardMarginX;
float hardMarginY;
- RectangleF printableArea;
+ RectangleF printableArea;
PrinterSettings printerSettings;
+#pragma warning restore 649
public PageSettings() : this(new PrinterSettings())
{
internal PageSettings(PrinterSettings printerSettings, bool color, bool landscape, PaperSize paperSize, PaperSource paperSource, PrinterResolution printerResolution)
{
PrinterSettings = printerSettings;
-
this.color = color;
this.landscape = landscape;
this.paperSize = paperSize;
return paperSize;
}
set{
- paperSize = value;
+ if (value != null)
+ paperSize = value;
}
}
return paperSource;
}
set{
- paperSource = value;
+ if (value != null)
+ paperSource = value;
}
}
return printerResolution;
}
set{
- printerResolution = value;
+ if (value != null)
+ printerResolution = value;
}
}
printerSettings = value;
}
}
-#if NET_2_0
public float HardMarginX {
get {
return hardMarginX;
}
}
- \r
+
public float HardMarginY {
get {
return hardMarginY;
return printableArea;
}
}
-#endif\r
public object Clone ()
{
// We do a deep copy
- PrinterResolution pres = new PrinterResolution (this.printerResolution.X, this.printerResolution.Y, this.printerResolution.Kind);
- PaperSource psource = new PaperSource (this.paperSource.SourceName, this.paperSource.Kind);
+ PrinterResolution pres = new PrinterResolution (this.printerResolution.Kind, this.printerResolution.X, this.printerResolution.Y);
+ PaperSource psource = new PaperSource (this.paperSource.Kind, this.paperSource.SourceName);
PaperSize psize = new PaperSize (this.paperSize.PaperName, this.paperSize.Width, this.paperSize.Height);
- psize.SetKind (this.paperSize.Kind);
+ psize.RawKind = (int)this.paperSize.Kind;
PageSettings ps = new PageSettings (this.printerSettings, this.color, this.landscape,
psize, psource, pres);