1 2007-02-09 Sebastien Pouliot <sebastien@ximian.com>
3 * PrintingServicesUnix.cs: Ensure we free the original pointer in
4 GetAlternativeDefaultPrinter (not the one used for iteration).
6 2007-01-19 Andreia Gaita <avidigal@novell.com>
8 * PrintingServicesUnix.cs: Add is_default flag check for
9 detecting default printer when cupsGetDefault doesn't return
10 valid values (mainly ubuntu). Fixes #80198, #80519
12 2007-01-09 Sebastien Pouliot <sebastien@ximian.com>
14 * PrintingServices.cs: Unify platform detection code.
16 2006-12-04 Carlos Alberto Cortez <calberto.cortez@gmail.com>
18 * PrintingServicesUnix.cs: Add "landscape" option
19 when using PaperSettings.Landscape set to true. Also
20 swap the width and height for the postscript file.
22 2006-12-01 Andreia Gaita <avidigal@novell.com>
24 * PrintingServicesUnix: Proper size structure use for 64 bit
27 2006-12-01 Andreia Gaita <avidigal@novell.com>
29 * PrintingServicesUnix: *properly* check return value from
30 cupsGetDefault. If there are no default printers set,
31 check if there are installed printers, and use that.
32 Hopefully fixes #79835
34 2006-12-01 Andreia Gaita <avidigal@novell.com>
36 * PrintingServicesUnix: check return value from cupsGetDefault.
37 Hopefully fixes #79835
39 2006-12-01 Jordi Mas i Hernandez <jordimash@gmail.com>
41 * PrintingServicesWin32.cs: Fixes paper sizes reading. The POINT
42 structure is 8 bytes long not 4. This fixes margins calculations
43 (based on the paper size) that were badly broken.
45 2006-11-28 Andreia Gaita <avidigal@novell.com>
48 - internal member name changes to help
50 - Use internal members directly instead of using
51 corresponding properties so that exceptions are not thrown
52 * PrintingServicesWin32:
53 - Only return DefaultPrinter if it is actually valid. This
54 is because Win32GetDefaultPrinter returns a printer name
55 even if PrintSpooler is stopped (which should behave the
56 same way as if there are no printers installed)
57 - Do not try to allocate if EnumPrinters returns 0
59 2006-11-25 Jordi Mas i Hernandez <jordimash@gmail.com>
61 * PrintingServicesUnix.cs: Implements GetPrintDialogInfo
63 2006-11-24 Carlos Alberto Cortez <calberto.cortez@gmail.com>
65 Initial support for PageSettings (color, copies, collate,
68 * StandardPrintController.cs: Pass PrintDocument.PageSettings to
69 create the Graphics object (althought PageSettings
70 contains a PrinterSettings and vice versa, PrintDocument
71 can contain non-related PrinterSettings and PageSettings objects).
73 * PrintingServices.cs: Likewise.
74 * PrintingServicesWin32.cs: Likewise.
75 * PrintingServicesUnix.cs: Likewise. Also use cupsParseOptions
76 to pass printing options when calling cupsPrintFile. Use "Custom"
77 as name for custom pages without associated name (Laxmark printers
78 have this problem, causing a nullref exc). Add GetPaperKind () method
79 to retrieve and set the right PaperKind value for PaperSize, instead
80 of using PaperKind.Custom for all page sizes. Finally save
81 PageSettings in DOCINFO to use it later.
83 * PrintDocument.cs: Clone PrinterSettings.PageSettings
84 instead of creating a new one (this avoid creating an additional
85 PrinterSettings instance).
87 2006-11-17 Andreia Gaita <avidigal@novell.com>
89 * PrintingServicesWin32.cs: fix another dumb typo -
90 check proper return value from printer validity call
92 2006-11-16 Chris Toshok <toshok@ximian.com>
94 * PreviewPrintController.cs: fix typo - don't throw
95 InvalidPrinterException when it wasn't supposed to be.
97 2006-11-16 Carlos Alberto Cortez <calberto.cortez@gmail.com>
99 * PrintDocument.cs: Use QueryPageSettingsEventArgs.PageSettings
100 in PrintPageEventArgs, instead of using the default one (mimic
103 * PageSettings.cs: Implement Clone the right way (intead of using
104 the default page settings).
106 2006-11-14 Andreia Gaita <avidigal@novell.com>
107 Fixes #79835, implements PrinterSettings.IsValid, throws proper
108 InvalidPrinterException with differentiated messages.
110 * PrintingServices.cs: Declares IsPrinterValid to enable easy checking
111 if printer name is a valid printer
113 * PrintingServicesWin32.cs: Implements IsPrinterValid, caches
114 last assigned printer name and if it is valid to speed up next calls.
116 * PrintingServicesUnix.cs: Implements IsPrinterValid, caches
117 last assigned printer name and if it is valid to speed up next calls.
120 - throw InvalidPrinterException in the properties,
121 according to the docs: Color, Landscape, PaperSize, PaperSource,
123 - change the private fields above to internal, so that in the
124 constructor we can access them without triggering the exceptions
125 if there are no printers installed
127 * PrinterSettings.cs: Implement IsValid to call IsPrinterValid
130 * PreviewPrintController.cs: throw InvalidPrinterException on
131 StartPrint() if there's no valid printer configured
133 * InvalidPrinterException.cs: New private GetMessage() to customize
134 printer error message, used by constructor
136 2006-09-27 Jordi Mas i Hernandez <jordimash@gmail.com>
138 * PrintingServicesUnix.cs: Implements LoadPrinterPaperSources member,
139 simplifies GetPaperSizeName and loads paper source and size defaults
141 2006-09-27 Jordi Mas i Hernandez <jordimash@gmail.com>
143 * PrintingServices.cs: Add LoadPrinterPaperSources member
145 * PrintingServicesWin32.cs: Implements LoadPrinterPaperSources and
146 reads the default paper source and size.
148 * PrintingServicesUnix.cs: Add stub LoadPrinterPaperSources member
150 * PrinterSettings.cs: Implements PaperSourceCollection property and
151 makes default paper source and size from the system.
153 2006-08-02 Chris Toshok <toshok@ximian.com>
155 * PreviewPrintController.cs: scale the Graphics context we pass
156 back from OnStartPage such that the preview looks the way the
159 2006-07-28 Carlos Alberto Cortez <calberto.cortez@gmail.com>
161 * PrintDocument.cs: When null is passed to PrinterSettings,
162 it should be set to a new PrinterSettings instance, and should never
165 * PrinterSettings.cs: Default value for Copies should be 1. Also
166 add a space in the ToString method, to correctly show the printer
169 2006-07-26 Chris Toshok <toshok@ximian.com>
171 * PrinterSettings.cs: expose PrintFileName in the 1.1 case as an
172 internal property, so we can get at it from MWF.
174 * PrintingServicesUnix.cs: handle print to file, and also remove
175 the temp file after sending the data to the printer. fix some
176 dllimports to match the rest of system.drawing.
178 * PreviewPrintController.cs: implement this (warning, it'll eat
179 all your memory until we get a real Metafile implementation, as
180 we're storing bitmaps).
182 * PrintDocument.cs: shift the graphics context stuff around a bit
183 in Print(), so that the events after OnStartPrint are passed the
184 graphics context the controller created there, and we use the
185 return value of OnStartPage to do all drawing.
187 2006-05-20 Jordi Mas i Hernandez <jordimash@gmail.com>
189 * PrintingServices.cs: GetPrintDialogInfo definition
190 * PrintingServicesWin32.cs GetPrintDialogInfo implementation
191 * PrintingServicesUnix.cs: GetPrintDialogInfo stub
193 2006-04-14 Jordi Mas i Hernandez <jordimash@gmail.com>
195 * PrintingServicesUnix.cs: Replace cupsGetPrinters deprecated API call
197 2006-04-13 Jordi Mas i Hernandez <jordimash@gmail.com>
199 * PrintingServicesUnix.cs: Checks if cups is installed
200 * PrinterSettings.cs: PrintToFile property and ToString method
202 2006-04-28 Sebastien Pouliot <sebastien@ximian.com>
204 * PrintController.cs: corcompare fix. No public ctor in 2.0.
205 * PrinterSettings.cs: corcompare fix. Clone method isn't virtual.
207 2006-03-21 Sebastien Pouliot <sebastien@ximian.com>
209 * PrintingServicesUnix.cs: cupsGetPrinters(char***) requires to free
210 each individual string and (finally) the list. Note that this call is
213 2006-03-13 Peter Dennis Bartok <pbartok@novell.com>
215 * PrintingServicesUnix.cs: Handle not having a printer
217 2006-02-09 Peter Dennis Bartok <pbartok@novell.com>
219 * PrintingServicesWin32.cs: Simplyfied the code, removing the need
220 for pointer calculations (part of 64bit cleanup)
222 2006-01-27 Sebastien Pouliot <sebastien@ximian.com>
224 * PrintingServicesWin32.cs: Ensure Marshal.FreeHGlobal is called for
225 all unmanaged memory allocated with AllocHGlobal.
227 2006-01-15 Jordi Mas i Hernandez <jordimash@gmail.com>
229 * PrintingServicesUnix.cs: Allow setting the dpy's for the surface
231 2005-12-22 Jordi Mas i Hernandez <jordimash@gmail.com>
233 * PrintingServices.cs: Printing services abstration class
234 * PrintingServicesWin32.cs: Win32 printer driver
235 * PrintingServicesUnix.cs: Unix printer driver
236 * Margins.cs: Fixes exceptions error messages
237 * PrinterResolution.cs: Fixes
238 * PrintEventArgs.cs: New internal method
239 * PrintPageEventArgs.cs: New internal method
240 * StandardPrintController.cs: Fixes
241 * PrinterUnitConvert.cs: Fixes conversion errors
242 * PrintDocument.cs: Fixes to make it print
243 * PageSettings.cs: Take margains into account
244 * PrintController.cs: Fixes
245 * PaperSize.cs: Method to set paper Kind
246 * PrinterSettings.cs: Implements settings and fixes
249 2005-12-07 Jordi Mas i Hernandez <jordimash@gmail.com>
251 * PrinterResolutionKind.cs: Fixes signature for .Net 2.0
252 * PaperKind.cs: Fixes signature for .Net 2.0
253 * PaperSource.cs: Fixes signature for .Net 2.0
254 * Margins.cs: Fixes signature for .Net 2.0
255 * PrinterResolution.cs: Fixes signature for .Net 2.0
256 * PrintEventArgs.cs: Fixes signature for .Net 2.0
257 * PrintAction.cs: New enum in .Net 2.0
258 * PageSettings.cs: Fixes signature for .Net 2.0
259 * PaperSourceKind.cs: Fixes signature for .Net 2.0
260 * PrintController.cs: Fixes signature for .Net 2.0
261 * Duplex.cs: Fixes signature for .Net 2.0
262 * PaperSize.cs: Fixes signature for .Net 2.0
263 * PreviewPrintController.cs: Fixes signature for .Net 2.0
264 * PrinterSettings.cs: Fixes signature for .Net 2.0
265 * PrintRange.cs: Fixes signature for .Net 2.0
267 2005-09-16 Sebastien Pouliot <sebastien@ximian.com>
269 * InvalidPrinterException.cs: Removed NotImplementedException (not
270 required) and added a demand for SerializationFormatter on the
271 GetObjectData method.
272 * PrintingPermission.cs: Throw ArgumentException if the class or
273 version attributes are missing in the supplied XML (only in 1.x).
275 2005-03-23 Jordi Mas i Hernandez <jordi@ximian.com>
276 * PaperKind.cs: fixes wrong enum values
278 2005-01-27 Lluis Sanchez Gual <lluis@novell.com>
280 * MarginsConverter.cs: Implemented support for InstanceDescriptor.