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