]>
Commit | Line | Data |
---|---|---|
a660d684 KB |
1 | \section{\class{wxPrintData}}\label{wxprintdata} |
2 | ||
7bcb11d3 JS |
3 | This class holds a variety of information related to printers and |
4 | printer device contexts. This class is used to create a wxPrinterDC | |
5 | and a wxPostScriptDC. It is also used as a data member of wxPrintDialogData | |
6 | and wxPageSetupDialogData, as part of the mechanism for transferring data | |
7 | between the print dialogs and the application. | |
a660d684 KB |
8 | |
9 | \wxheading{Derived from} | |
10 | ||
11 | \helpref{wxObject}{wxobject} | |
12 | ||
954b8ae6 JS |
13 | \wxheading{Include files} |
14 | ||
15 | <wx/cmndata.h> | |
16 | ||
a660d684 KB |
17 | \wxheading{See also} |
18 | ||
fa482912 JS |
19 | \helpref{wxPrintDialog}{wxprintdialog}, |
20 | \helpref{wxPageSetupDialog}{wxpagesetupdialog}, | |
21 | \helpref{wxPrintDialogData}{wxprintdialogdata}, | |
22 | \helpref{wxPageSetupDialogData}{wxpagesetupdialogdata}, | |
23 | \helpref{wxPrintDialog Overview}{wxprintdialogoverview}, | |
24 | \helpref{wxPrinterDC}{wxprinterdc}, | |
7bcb11d3 JS |
25 | \helpref{wxPostScriptDC}{wxpostscriptdc} |
26 | ||
27 | \wxheading{Remarks} | |
28 | ||
29 | The following functions are specific to PostScript printing | |
30 | and have not yet been documented: | |
31 | ||
32 | \begin{verbatim} | |
33 | const wxString& GetPrinterCommand() const ; | |
34 | const wxString& GetPrinterOptions() const ; | |
35 | const wxString& GetPreviewCommand() const ; | |
36 | const wxString& GetFilename() const ; | |
37 | const wxString& GetFontMetricPath() const ; | |
38 | double GetPrinterScaleX() const ; | |
39 | double GetPrinterScaleY() const ; | |
40 | long GetPrinterTranslateX() const ; | |
41 | long GetPrinterTranslateY() const ; | |
42 | // wxPRINT_MODE_PREVIEW, wxPRINT_MODE_FILE, wxPRINT_MODE_PRINTER | |
43 | wxPrintMode GetPrintMode() const ; | |
44 | ||
45 | void SetPrinterCommand(const wxString& command) ; | |
46 | void SetPrinterOptions(const wxString& options) ; | |
47 | void SetPreviewCommand(const wxString& command) ; | |
48 | void SetFilename(const wxString& filename) ; | |
49 | void SetFontMetricPath(const wxString& path) ; | |
50 | void SetPrinterScaleX(double x) ; | |
51 | void SetPrinterScaleY(double y) ; | |
52 | void SetPrinterScaling(double x, double y) ; | |
53 | void SetPrinterTranslateX(long x) ; | |
54 | void SetPrinterTranslateY(long y) ; | |
55 | void SetPrinterTranslation(long x, long y) ; | |
56 | void SetPrintMode(wxPrintMode printMode) ; | |
57 | \end{verbatim} | |
a660d684 KB |
58 | |
59 | \latexignore{\rtfignore{\wxheading{Members}}} | |
60 | ||
60090256 | 61 | |
a660d684 KB |
62 | \membersection{wxPrintData::wxPrintData} |
63 | ||
64 | \func{}{wxPrintData}{\void} | |
65 | ||
7bcb11d3 JS |
66 | Default constructor. |
67 | ||
68 | \func{}{wxPrintData}{\param{const wxPrintData\&}{ data}} | |
69 | ||
70 | Copy constructor. | |
a660d684 | 71 | |
60090256 | 72 | |
a660d684 KB |
73 | \membersection{wxPrintData::\destruct{wxPrintData}} |
74 | ||
75 | \func{}{\destruct{wxPrintData}}{\void} | |
76 | ||
77 | Destructor. | |
78 | ||
60090256 | 79 | |
a660d684 KB |
80 | \membersection{wxPrintData::GetCollate}\label{wxprintdatagetcollate} |
81 | ||
7bcb11d3 | 82 | \constfunc{bool}{GetCollate}{\void} |
a660d684 | 83 | |
cc81d32f | 84 | Returns true if collation is on. |
a660d684 | 85 | |
60090256 VZ |
86 | |
87 | \membersection{wxPrintData::GetBin}\label{wxprintdatagetbin} | |
88 | ||
89 | \constfunc{wxPrintBin}{GetBin}{\void} | |
90 | ||
91 | Returns the current bin (papersource). By default, the system is left to select | |
92 | the bin (\texttt{wxPRINTBIN\_DEFAULT} is returned). | |
93 | ||
94 | See \helpref{SetBin()}{wxprintdatasetbin} for the full list of bin values. | |
95 | ||
96 | ||
7bcb11d3 | 97 | \membersection{wxPrintData::GetColour}\label{wxprintdatagetcolour} |
a660d684 | 98 | |
7bcb11d3 | 99 | \constfunc{bool}{GetColour}{\void} |
a660d684 | 100 | |
cc81d32f | 101 | Returns true if colour printing is on. |
a660d684 | 102 | |
60090256 | 103 | |
7bcb11d3 | 104 | \membersection{wxPrintData::GetDuplex}\label{wxprintdatagetduplex} |
a660d684 | 105 | |
7bcb11d3 | 106 | \constfunc{wxDuplexMode}{GetDuplex}{\void} |
a660d684 | 107 | |
7bcb11d3 | 108 | Returns the duplex mode. One of wxDUPLEX\_SIMPLEX, wxDUPLEX\_HORIZONTAL, wxDUPLEX\_VERTICAL. |
a660d684 | 109 | |
60090256 | 110 | |
a660d684 KB |
111 | \membersection{wxPrintData::GetNoCopies}\label{wxprintdatagetnocopies} |
112 | ||
7bcb11d3 | 113 | \constfunc{int}{GetNoCopies}{\void} |
a660d684 KB |
114 | |
115 | Returns the number of copies requested by the user. | |
116 | ||
60090256 | 117 | |
a660d684 KB |
118 | \membersection{wxPrintData::GetOrientation}\label{wxprintdatagetorientation} |
119 | ||
7bcb11d3 | 120 | \constfunc{int}{GetOrientation}{\void} |
a660d684 KB |
121 | |
122 | Gets the orientation. This can be wxLANDSCAPE or wxPORTRAIT. | |
123 | ||
60090256 | 124 | |
7bcb11d3 | 125 | \membersection{wxPrintData::GetPaperId}\label{wxprintdatagetpaperid} |
a660d684 | 126 | |
7bcb11d3 | 127 | \constfunc{wxPaperSize}{GetPaperId}{\void} |
a660d684 | 128 | |
7bcb11d3 | 129 | Returns the paper size id. For more information, see \helpref{wxPrintData::SetPaperId}{wxprintdatasetpaperid}. |
a660d684 | 130 | |
60090256 | 131 | |
7bcb11d3 | 132 | \membersection{wxPrintData::GetPrinterName}\label{wxprintdatagetprintername} |
a660d684 | 133 | |
7bcb11d3 | 134 | \constfunc{const wxString\&}{GetPrinterName}{\void} |
a660d684 | 135 | |
7bcb11d3 JS |
136 | Returns the printer name. If the printer name is the empty string, it indicates that the default |
137 | printer should be used. | |
a660d684 | 138 | |
60090256 | 139 | |
7bcb11d3 | 140 | \membersection{wxPrintData::GetQuality}\label{wxprintdatagetquality} |
a660d684 | 141 | |
6394c596 | 142 | \constfunc{wxPrintQuality}{GetQuality}{\void} |
a660d684 | 143 | |
7bcb11d3 JS |
144 | Returns the current print quality. This can be a positive integer, denoting the number of dots per inch, or |
145 | one of the following identifiers: | |
a660d684 | 146 | |
7bcb11d3 | 147 | \begin{verbatim} |
a66abda9 GT |
148 | wxPRINT_QUALITY_HIGH |
149 | wxPRINT_QUALITY_MEDIUM | |
150 | wxPRINT_QUALITY_LOW | |
151 | wxPRINT_QUALITY_DRAFT | |
7bcb11d3 | 152 | \end{verbatim} |
a660d684 | 153 | |
7bcb11d3 JS |
154 | On input you should pass one of these identifiers, but on return you may get back a positive integer |
155 | indicating the current resolution setting. | |
a660d684 | 156 | |
60090256 | 157 | |
58cf0491 JS |
158 | \membersection{wxPrintData::Ok}\label{wxprintdataok} |
159 | ||
160 | \constfunc{bool}{Ok}{\void} | |
161 | ||
cc81d32f VS |
162 | Returns true if the print data is valid for using in print dialogs. |
163 | This can return false on Windows if the current printer is not set, for example. | |
164 | On all other platforms, it returns true. | |
58cf0491 | 165 | |
60090256 VZ |
166 | |
167 | \membersection{wxPrintData::SetBin}\label{wxprintdatasetbin} | |
168 | ||
169 | \func{void}{SetBin}{\param{wxPrintBin }{flag}} | |
170 | ||
171 | Sets the current bin. Possible values are: | |
172 | ||
173 | \small{ | |
174 | \begin{verbatim} | |
175 | enum wxPrintBin | |
176 | { | |
177 | wxPRINTBIN_DEFAULT, | |
178 | ||
179 | wxPRINTBIN_ONLYONE, | |
180 | wxPRINTBIN_LOWER, | |
181 | wxPRINTBIN_MIDDLE, | |
182 | wxPRINTBIN_MANUAL, | |
183 | wxPRINTBIN_ENVELOPE, | |
184 | wxPRINTBIN_ENVMANUAL, | |
185 | wxPRINTBIN_AUTO, | |
186 | wxPRINTBIN_TRACTOR, | |
187 | wxPRINTBIN_SMALLFMT, | |
188 | wxPRINTBIN_LARGEFMT, | |
189 | wxPRINTBIN_LARGECAPACITY, | |
190 | wxPRINTBIN_CASSETTE, | |
191 | wxPRINTBIN_FORMSOURCE, | |
192 | ||
193 | wxPRINTBIN_USER, | |
194 | }; | |
195 | \end{verbatim} | |
196 | } | |
197 | ||
198 | ||
7bcb11d3 | 199 | \membersection{wxPrintData::SetCollate}\label{wxprintdatasetcollate} |
a660d684 | 200 | |
7bcb11d3 | 201 | \func{void}{SetCollate}{\param{bool }{flag}} |
a660d684 | 202 | |
7bcb11d3 | 203 | Sets collation to on or off. |
a660d684 | 204 | |
60090256 | 205 | |
7bcb11d3 | 206 | \membersection{wxPrintData::SetColour}\label{wxprintdatasetcolour} |
a660d684 | 207 | |
7bcb11d3 | 208 | \func{void}{SetColour}{\param{bool }{flag}} |
a660d684 | 209 | |
7bcb11d3 | 210 | Sets colour printing on or off. |
a660d684 | 211 | |
60090256 | 212 | |
7bcb11d3 JS |
213 | \membersection{wxPrintData::SetDuplex}\label{wxprintdatasetduplex} |
214 | ||
215 | \func{void}{SetDuplex}{\param{wxDuplexMode}{ mode}} | |
216 | ||
217 | Returns the duplex mode. One of wxDUPLEX\_SIMPLEX, wxDUPLEX\_HORIZONTAL, wxDUPLEX\_VERTICAL. | |
a660d684 | 218 | |
60090256 | 219 | |
a660d684 KB |
220 | \membersection{wxPrintData::SetNoCopies}\label{wxprintdatasetnocopies} |
221 | ||
222 | \func{void}{SetNoCopies}{\param{int }{n}} | |
223 | ||
224 | Sets the default number of copies to be printed out. | |
225 | ||
60090256 | 226 | |
7bcb11d3 | 227 | \membersection{wxPrintData::SetOrientation}\label{wxprintdatasetorientation} |
a660d684 | 228 | |
7bcb11d3 | 229 | \func{void}{SetOrientation}{\param{int }{orientation}} |
a660d684 | 230 | |
7bcb11d3 | 231 | Sets the orientation. This can be wxLANDSCAPE or wxPORTRAIT. |
a660d684 | 232 | |
60090256 | 233 | |
7bcb11d3 JS |
234 | \membersection{wxPrintData::SetPaperId}\label{wxprintdatasetpaperid} |
235 | ||
236 | \func{void}{SetPaperId}{\param{wxPaperSize}{ paperId}} | |
237 | ||
238 | \index{wxPaperSize}Sets the paper id. This indicates the type of paper to be used. For a mapping between | |
239 | paper id, paper size and string name, see wxPrintPaperDatabase in {\tt paper.h} (not yet documented). | |
240 | ||
241 | {\it paperId} can be one of: | |
242 | ||
243 | {\small | |
244 | \begin{verbatim} | |
245 | wxPAPER_NONE, // Use specific dimensions | |
246 | wxPAPER_LETTER, // Letter, 8 1/2 by 11 inches | |
247 | wxPAPER_LEGAL, // Legal, 8 1/2 by 14 inches | |
248 | wxPAPER_A4, // A4 Sheet, 210 by 297 millimeters | |
249 | wxPAPER_CSHEET, // C Sheet, 17 by 22 inches | |
250 | wxPAPER_DSHEET, // D Sheet, 22 by 34 inches | |
251 | wxPAPER_ESHEET, // E Sheet, 34 by 44 inches | |
252 | wxPAPER_LETTERSMALL, // Letter Small, 8 1/2 by 11 inches | |
253 | wxPAPER_TABLOID, // Tabloid, 11 by 17 inches | |
254 | wxPAPER_LEDGER, // Ledger, 17 by 11 inches | |
255 | wxPAPER_STATEMENT, // Statement, 5 1/2 by 8 1/2 inches | |
256 | wxPAPER_EXECUTIVE, // Executive, 7 1/4 by 10 1/2 inches | |
257 | wxPAPER_A3, // A3 sheet, 297 by 420 millimeters | |
258 | wxPAPER_A4SMALL, // A4 small sheet, 210 by 297 millimeters | |
259 | wxPAPER_A5, // A5 sheet, 148 by 210 millimeters | |
260 | wxPAPER_B4, // B4 sheet, 250 by 354 millimeters | |
261 | wxPAPER_B5, // B5 sheet, 182-by-257-millimeter paper | |
262 | wxPAPER_FOLIO, // Folio, 8-1/2-by-13-inch paper | |
263 | wxPAPER_QUARTO, // Quarto, 215-by-275-millimeter paper | |
264 | wxPAPER_10X14, // 10-by-14-inch sheet | |
265 | wxPAPER_11X17, // 11-by-17-inch sheet | |
266 | wxPAPER_NOTE, // Note, 8 1/2 by 11 inches | |
267 | wxPAPER_ENV_9, // #9 Envelope, 3 7/8 by 8 7/8 inches | |
268 | wxPAPER_ENV_10, // #10 Envelope, 4 1/8 by 9 1/2 inches | |
269 | wxPAPER_ENV_11, // #11 Envelope, 4 1/2 by 10 3/8 inches | |
270 | wxPAPER_ENV_12, // #12 Envelope, 4 3/4 by 11 inches | |
271 | wxPAPER_ENV_14, // #14 Envelope, 5 by 11 1/2 inches | |
272 | wxPAPER_ENV_DL, // DL Envelope, 110 by 220 millimeters | |
273 | wxPAPER_ENV_C5, // C5 Envelope, 162 by 229 millimeters | |
274 | wxPAPER_ENV_C3, // C3 Envelope, 324 by 458 millimeters | |
275 | wxPAPER_ENV_C4, // C4 Envelope, 229 by 324 millimeters | |
276 | wxPAPER_ENV_C6, // C6 Envelope, 114 by 162 millimeters | |
277 | wxPAPER_ENV_C65, // C65 Envelope, 114 by 229 millimeters | |
278 | wxPAPER_ENV_B4, // B4 Envelope, 250 by 353 millimeters | |
279 | wxPAPER_ENV_B5, // B5 Envelope, 176 by 250 millimeters | |
280 | wxPAPER_ENV_B6, // B6 Envelope, 176 by 125 millimeters | |
281 | wxPAPER_ENV_ITALY, // Italy Envelope, 110 by 230 millimeters | |
282 | wxPAPER_ENV_MONARCH, // Monarch Envelope, 3 7/8 by 7 1/2 inches | |
283 | wxPAPER_ENV_PERSONAL, // 6 3/4 Envelope, 3 5/8 by 6 1/2 inches | |
284 | wxPAPER_FANFOLD_US, // US Std Fanfold, 14 7/8 by 11 inches | |
285 | wxPAPER_FANFOLD_STD_GERMAN, // German Std Fanfold, 8 1/2 by 12 inches | |
286 | wxPAPER_FANFOLD_LGL_GERMAN, // German Legal Fanfold, 8 1/2 by 13 inches | |
287 | ||
288 | Windows 95 only: | |
289 | wxPAPER_ISO_B4, // B4 (ISO) 250 x 353 mm | |
290 | wxPAPER_JAPANESE_POSTCARD, // Japanese Postcard 100 x 148 mm | |
291 | wxPAPER_9X11, // 9 x 11 in | |
292 | wxPAPER_10X11, // 10 x 11 in | |
293 | wxPAPER_15X11, // 15 x 11 in | |
294 | wxPAPER_ENV_INVITE, // Envelope Invite 220 x 220 mm | |
295 | wxPAPER_LETTER_EXTRA, // Letter Extra 9 \275 x 12 in | |
296 | wxPAPER_LEGAL_EXTRA, // Legal Extra 9 \275 x 15 in | |
297 | wxPAPER_TABLOID_EXTRA, // Tabloid Extra 11.69 x 18 in | |
298 | wxPAPER_A4_EXTRA, // A4 Extra 9.27 x 12.69 in | |
299 | wxPAPER_LETTER_TRANSVERSE, // Letter Transverse 8 \275 x 11 in | |
300 | wxPAPER_A4_TRANSVERSE, // A4 Transverse 210 x 297 mm | |
301 | wxPAPER_LETTER_EXTRA_TRANSVERSE, // Letter Extra Transverse 9\275 x 12 in | |
302 | wxPAPER_A_PLUS, // SuperA/SuperA/A4 227 x 356 mm | |
303 | wxPAPER_B_PLUS, // SuperB/SuperB/A3 305 x 487 mm | |
304 | wxPAPER_LETTER_PLUS, // Letter Plus 8.5 x 12.69 in | |
305 | wxPAPER_A4_PLUS, // A4 Plus 210 x 330 mm | |
306 | wxPAPER_A5_TRANSVERSE, // A5 Transverse 148 x 210 mm | |
307 | wxPAPER_B5_TRANSVERSE, // B5 (JIS) Transverse 182 x 257 mm | |
308 | wxPAPER_A3_EXTRA, // A3 Extra 322 x 445 mm | |
309 | wxPAPER_A5_EXTRA, // A5 Extra 174 x 235 mm | |
310 | wxPAPER_B5_EXTRA, // B5 (ISO) Extra 201 x 276 mm | |
311 | wxPAPER_A2, // A2 420 x 594 mm | |
312 | wxPAPER_A3_TRANSVERSE, // A3 Transverse 297 x 420 mm | |
313 | wxPAPER_A3_EXTRA_TRANSVERSE // A3 Extra Transverse 322 x 445 mm | |
314 | \end{verbatim} | |
315 | } | |
316 | ||
60090256 | 317 | |
7bcb11d3 JS |
318 | \membersection{wxPrintData::SetPrinterName}\label{wxprintdatasetprintername} |
319 | ||
320 | \func{void}{SetPrinterName}{\param{const wxString\& }{printerName}} | |
321 | ||
322 | Sets the printer name. This can be the empty string to indicate that the default | |
323 | printer should be used. | |
324 | ||
60090256 | 325 | |
7bcb11d3 JS |
326 | \membersection{wxPrintData::SetQuality}\label{wxprintdatasetquality} |
327 | ||
6394c596 | 328 | \func{void}{SetQuality}{\param{wxPrintQuality}{ quality}} |
7bcb11d3 JS |
329 | |
330 | Sets the desired print quality. This can be a positive integer, denoting the number of dots per inch, or | |
331 | one of the following identifiers: | |
332 | ||
333 | \begin{verbatim} | |
a66abda9 GT |
334 | wxPRINT_QUALITY_HIGH |
335 | wxPRINT_QUALITY_MEDIUM | |
336 | wxPRINT_QUALITY_LOW | |
337 | wxPRINT_QUALITY_DRAFT | |
7bcb11d3 JS |
338 | \end{verbatim} |
339 | ||
340 | On input you should pass one of these identifiers, but on return you may get back a positive integer | |
341 | indicating the current resolution setting. | |
342 | ||
60090256 | 343 | |
7bcb11d3 JS |
344 | \membersection{wxPrintData::operator $=$}\label{wxprintdataassign} |
345 | ||
346 | \func{void}{operator $=$}{\param{const wxPrintData\&}{ data}} | |
347 | ||
348 | Assigns print data to this object. | |
349 | ||
350 | \func{void}{operator $=$}{\param{const wxPrintSetupData\&}{ data}} | |
351 | ||
352 | Assigns print setup data to this object. wxPrintSetupData is deprecated, | |
353 | but retained for backward compatibility. | |
a660d684 KB |
354 | |
355 | \section{\class{wxPrintDialog}}\label{wxprintdialog} | |
356 | ||
357 | This class represents the print and print setup common dialogs. | |
358 | You may obtain a \helpref{wxPrinterDC}{wxprinterdc} device context from | |
359 | a successfully dismissed print dialog. | |
360 | ||
361 | \wxheading{Derived from} | |
362 | ||
363 | \helpref{wxDialog}{wxdialog}\\ | |
364 | \helpref{wxWindow}{wxwindow}\\ | |
365 | \helpref{wxEvtHandler}{wxevthandler}\\ | |
366 | \helpref{wxObject}{wxobject} | |
367 | ||
954b8ae6 JS |
368 | \wxheading{Include files} |
369 | ||
370 | <wx/printdlg.h> | |
371 | ||
a660d684 KB |
372 | \wxheading{See also} |
373 | ||
374 | \helpref{wxPrintDialog Overview}{wxprintdialogoverview} | |
375 | ||
376 | \latexignore{\rtfignore{\wxheading{Members}}} | |
377 | ||
60090256 | 378 | |
a660d684 KB |
379 | \membersection{wxPrintDialog::wxPrintDialog} |
380 | ||
7bcb11d3 | 381 | \func{}{wxPrintDialog}{\param{wxWindow* }{parent}, \param{wxPrintDialogData* }{data = NULL}} |
a660d684 KB |
382 | |
383 | Constructor. Pass a parent window, and optionally a pointer to a block of print | |
384 | data, which will be copied to the print dialog's print data. | |
385 | ||
386 | \wxheading{See also} | |
387 | ||
7bcb11d3 | 388 | \helpref{wxPrintDialogData}{wxprintdialogdata} |
a660d684 | 389 | |
60090256 | 390 | |
a660d684 KB |
391 | \membersection{wxPrintDialog::\destruct{wxPrintDialog}} |
392 | ||
393 | \func{}{\destruct{wxPrintDialog}}{\void} | |
394 | ||
395 | Destructor. If wxPrintDialog::GetPrintDC has {\it not} been called, | |
396 | the device context obtained by the dialog (if any) will be deleted. | |
397 | ||
60090256 | 398 | |
7bcb11d3 | 399 | \membersection{wxPrintDialog::GetPrintDialogData}\label{wxprintdialoggetprintdialogdata} |
a660d684 | 400 | |
7bcb11d3 | 401 | \func{wxPrintDialogData\&}{GetPrintDialogData}{\void} |
a660d684 | 402 | |
7bcb11d3 | 403 | Returns the \helpref{print dialog data}{wxprintdialogdata} associated with the print dialog. |
a660d684 | 404 | |
60090256 | 405 | |
a660d684 KB |
406 | \membersection{wxPrintDialog::GetPrintDC}\label{wxprintdialoggetprintdc} |
407 | ||
408 | \func{wxDC* }{GetPrintDC}{\void} | |
409 | ||
410 | Returns the device context created by the print dialog, if any. | |
411 | When this function has been called, the ownership of the device context | |
412 | is transferred to the application, so it must then be deleted | |
413 | explicitly. | |
414 | ||
60090256 | 415 | |
58cf0491 JS |
416 | \membersection{wxPrintDialog::Ok}\label{wxprintdialogok} |
417 | ||
418 | \constfunc{bool}{Ok}{\void} | |
419 | ||
cc81d32f VS |
420 | Returns true if the print data associated with the dialog is valid. |
421 | This can return false on Windows if the current printer is not set, for example. | |
422 | On all other platforms, it returns true. | |
58cf0491 | 423 | |
60090256 | 424 | |
a660d684 KB |
425 | \membersection{wxPrintDialog::ShowModal}\label{wxprintdialogshowmodal} |
426 | ||
427 | \func{int}{ShowModal}{\void} | |
428 | ||
429 | Shows the dialog, returning wxID\_OK if the user pressed OK, and wxID\_CANCEL | |
430 | otherwise. After this function is called, a device context may | |
431 | be retrievable using \helpref{wxPrintDialog::GetPrintDC}{wxprintdialoggetprintdc}. | |
432 | ||
7bcb11d3 JS |
433 | \section{\class{wxPrintDialogData}}\label{wxprintdialogdata} |
434 | ||
435 | This class holds information related to the visual characteristics of wxPrintDialog. | |
436 | It contains a wxPrintData object with underlying printing settings. | |
437 | ||
438 | \wxheading{Derived from} | |
439 | ||
440 | \helpref{wxObject}{wxobject} | |
441 | ||
442 | \wxheading{Include files} | |
443 | ||
444 | <wx/cmndata.h> | |
445 | ||
446 | \wxheading{See also} | |
447 | ||
448 | \helpref{wxPrintDialog}{wxprintdialog}, \helpref{wxPrintDialog Overview}{wxprintdialogoverview} | |
449 | ||
450 | \latexignore{\rtfignore{\wxheading{Members}}} | |
451 | ||
60090256 | 452 | |
7bcb11d3 JS |
453 | \membersection{wxPrintDialogData::wxPrintDialogData} |
454 | ||
455 | \func{}{wxPrintDialogData}{\void} | |
456 | ||
457 | Default constructor. | |
458 | ||
459 | \func{}{wxPrintDialogData}{\param{wxPrintDialogData\&}{ dialogData}} | |
460 | ||
461 | Copy constructor. | |
462 | ||
463 | \func{}{wxPrintDialogData}{\param{wxPrintData\&}{ printData}} | |
464 | ||
465 | Construct an object from a print dialog data object. | |
466 | ||
60090256 | 467 | |
03ca23b6 | 468 | \membersection{wxPrintDialogData::\destruct{wxPrintDialogData}} |
7bcb11d3 JS |
469 | |
470 | \func{}{\destruct{wxPrintDialogData}}{\void} | |
471 | ||
472 | Destructor. | |
473 | ||
60090256 | 474 | |
7bcb11d3 JS |
475 | \membersection{wxPrintDialogData::EnableHelp}\label{wxprintdialogdataenablehelp} |
476 | ||
477 | \func{void}{EnableHelp}{\param{bool }{flag}} | |
478 | ||
479 | Enables or disables the `Help' button. | |
480 | ||
60090256 | 481 | |
7bcb11d3 JS |
482 | \membersection{wxPrintDialogData::EnablePageNumbers}\label{wxprintdialogdataenablepagenumbers} |
483 | ||
484 | \func{void}{EnablePageNumbers}{\param{bool }{flag}} | |
485 | ||
486 | Enables or disables the `Page numbers' controls. | |
487 | ||
60090256 | 488 | |
7bcb11d3 JS |
489 | \membersection{wxPrintDialogData::EnablePrintToFile}\label{wxprintdialogdataenableprinttofile} |
490 | ||
491 | \func{void}{EnablePrintToFile}{\param{bool }{flag}} | |
492 | ||
493 | Enables or disables the `Print to file' checkbox. | |
494 | ||
60090256 | 495 | |
7bcb11d3 JS |
496 | \membersection{wxPrintDialogData::EnableSelection}\label{wxprintdialogdataenableselection} |
497 | ||
498 | \func{void}{EnableSelection}{\param{bool }{flag}} | |
499 | ||
500 | Enables or disables the `Selection' radio button. | |
501 | ||
60090256 | 502 | |
7bcb11d3 JS |
503 | \membersection{wxPrintDialogData::GetAllPages}\label{wxprintdialogdatagetallpages} |
504 | ||
505 | \constfunc{bool}{GetAllPages}{\void} | |
506 | ||
cc81d32f | 507 | Returns true if the user requested that all pages be printed. |
7bcb11d3 | 508 | |
60090256 | 509 | |
7bcb11d3 JS |
510 | \membersection{wxPrintDialogData::GetCollate}\label{wxprintdialogdatagetcollate} |
511 | ||
512 | \constfunc{bool}{GetCollate}{\void} | |
513 | ||
cc81d32f | 514 | Returns true if the user requested that the document(s) be collated. |
7bcb11d3 | 515 | |
60090256 | 516 | |
7bcb11d3 JS |
517 | \membersection{wxPrintDialogData::GetFromPage}\label{wxprintdialogdatagetfrompage} |
518 | ||
519 | \constfunc{int}{GetFromPage}{\void} | |
520 | ||
521 | Returns the {\it from} page number, as entered by the user. | |
522 | ||
60090256 | 523 | |
7bcb11d3 JS |
524 | \membersection{wxPrintDialogData::GetMaxPage}\label{wxprintdialogdatagetmaxpage} |
525 | ||
526 | \constfunc{int}{GetMaxPage}{\void} | |
527 | ||
528 | Returns the {\it maximum} page number. | |
529 | ||
60090256 | 530 | |
7bcb11d3 JS |
531 | \membersection{wxPrintDialogData::GetMinPage}\label{wxprintdialogdatagetminpage} |
532 | ||
533 | \constfunc{int}{GetMinPage}{\void} | |
534 | ||
535 | Returns the {\it minimum} page number. | |
536 | ||
60090256 | 537 | |
7bcb11d3 JS |
538 | \membersection{wxPrintDialogData::GetNoCopies}\label{wxprintdialogdatagetnocopies} |
539 | ||
540 | \constfunc{int}{GetNoCopies}{\void} | |
541 | ||
542 | Returns the number of copies requested by the user. | |
543 | ||
60090256 | 544 | |
7bcb11d3 JS |
545 | \membersection{wxPrintDialogData::GetPrintData}\label{wxprintdialogdatagetprintdata} |
546 | ||
547 | \func{wxPrintData\&}{GetPrintData}{\void} | |
548 | ||
549 | Returns a reference to the internal wxPrintData object. | |
550 | ||
60090256 | 551 | |
7bcb11d3 JS |
552 | \membersection{wxPrintDialogData::GetPrintToFile}\label{wxprintdialogdatagetprinttofile} |
553 | ||
554 | \constfunc{bool}{GetPrintToFile}{\void} | |
555 | ||
cc81d32f | 556 | Returns true if the user has selected printing to a file. |
7bcb11d3 | 557 | |
60090256 | 558 | |
5360828d JS |
559 | \membersection{wxPrintDialogData::GetSelection}\label{wxprintdialogdatagetselection} |
560 | ||
561 | \constfunc{bool}{GetSelection}{\void} | |
562 | ||
cc81d32f | 563 | Returns true if the user requested that the selection be printed (where 'selection' is |
5360828d JS |
564 | a concept specific to the application). |
565 | ||
60090256 | 566 | |
7bcb11d3 JS |
567 | \membersection{wxPrintDialogData::GetToPage}\label{wxprintdialogdatagettopage} |
568 | ||
569 | \constfunc{int}{GetToPage}{\void} | |
570 | ||
571 | Returns the {\it to} page number, as entered by the user. | |
572 | ||
60090256 | 573 | |
58cf0491 JS |
574 | \membersection{wxPrintDialogData::Ok}\label{wxprintdialogdataok} |
575 | ||
576 | \constfunc{bool}{Ok}{\void} | |
577 | ||
cc81d32f VS |
578 | Returns true if the print data is valid for using in print dialogs. |
579 | This can return false on Windows if the current printer is not set, for example. | |
580 | On all other platforms, it returns true. | |
58cf0491 | 581 | |
60090256 | 582 | |
7bcb11d3 JS |
583 | \membersection{wxPrintDialogData::SetCollate}\label{wxprintdialogdatasetcollate} |
584 | ||
585 | \func{void}{SetCollate}{\param{bool }{flag}} | |
586 | ||
cc81d32f | 587 | Sets the 'Collate' checkbox to true or false. |
7bcb11d3 | 588 | |
60090256 | 589 | |
7bcb11d3 JS |
590 | \membersection{wxPrintDialogData::SetFromPage}\label{wxprintdialogdatasetfrompage} |
591 | ||
592 | \func{void}{SetFromPage}{\param{int }{page}} | |
593 | ||
594 | Sets the {\it from} page number. | |
595 | ||
60090256 | 596 | |
7bcb11d3 JS |
597 | \membersection{wxPrintDialogData::SetMaxPage}\label{wxprintdialogdatasetmaxpage} |
598 | ||
599 | \func{void}{SetMaxPage}{\param{int }{page}} | |
600 | ||
601 | Sets the {\it maximum} page number. | |
602 | ||
60090256 | 603 | |
7bcb11d3 JS |
604 | \membersection{wxPrintDialogData::SetMinPage}\label{wxprintdialogdatasetminpage} |
605 | ||
606 | \func{void}{SetMinPage}{\param{int }{page}} | |
607 | ||
608 | Sets the {\it minimum} page number. | |
609 | ||
60090256 | 610 | |
7bcb11d3 JS |
611 | \membersection{wxPrintDialogData::SetNoCopies}\label{wxprintdialogdatasetnocopies} |
612 | ||
613 | \func{void}{SetNoCopies}{\param{int }{n}} | |
614 | ||
615 | Sets the default number of copies the user has requested to be printed out. | |
616 | ||
60090256 | 617 | |
7bcb11d3 JS |
618 | \membersection{wxPrintDialogData::SetPrintData}\label{wxprintdialogdatasetprintdata} |
619 | ||
620 | \func{void}{SetPrintData}{\param{const wxPrintData\& }{printData}} | |
621 | ||
622 | Sets the internal wxPrintData. | |
623 | ||
60090256 | 624 | |
7bcb11d3 JS |
625 | \membersection{wxPrintDialogData::SetPrintToFile}\label{wxprintdialogdatasetprinttofile} |
626 | ||
627 | \func{void}{SetPrintToFile}{\param{bool }{flag}} | |
628 | ||
cc81d32f | 629 | Sets the 'Print to file' checkbox to true or false. |
7bcb11d3 | 630 | |
60090256 | 631 | |
5360828d JS |
632 | \membersection{wxPrintDialogData::SetSelection}\label{wxprintdialogdatasetselection} |
633 | ||
634 | \func{void}{SetSelection}{\param{bool}{ flag}} | |
635 | ||
636 | Selects the 'Selection' radio button. The effect of printing the selection depends on how the application | |
637 | implements this command, if at all. | |
638 | ||
60090256 | 639 | |
7bcb11d3 JS |
640 | \membersection{wxPrintDialogData::SetSetupDialog}\label{wxprintdialogdatasetsetupdialog} |
641 | ||
642 | \func{void}{SetSetupDialog}{\param{bool }{flag}} | |
643 | ||
644 | Determines whether the dialog to be shown will be the Print dialog | |
cc81d32f | 645 | (pass false) or Print Setup dialog (pass true). |
7bcb11d3 JS |
646 | |
647 | Note that the setup dialog is (according to Microsoft) obsolete from | |
648 | Windows 95, though retained for backward compatibility. | |
649 | ||
60090256 | 650 | |
7bcb11d3 JS |
651 | \membersection{wxPrintDialogData::SetToPage}\label{wxprintdialogdatasettopage} |
652 | ||
653 | \func{void}{SetToPage}{\param{int }{page}} | |
654 | ||
655 | Sets the {\it to} page number. | |
656 | ||
60090256 | 657 | |
7bcb11d3 JS |
658 | \membersection{wxPrintDialogData::operator $=$}\label{wxprintdialogdataassign} |
659 | ||
660 | \func{void}{operator $=$}{\param{const wxPrintData\&}{ data}} | |
661 | ||
662 | Assigns print data to this object. | |
663 | ||
664 | \func{void}{operator $=$}{\param{const wxPrintDialogData\&}{ data}} | |
665 | ||
666 | Assigns another print dialog data object to this object. | |
667 | ||
a660d684 KB |
668 | \section{\class{wxPrinter}}\label{wxprinter} |
669 | ||
670 | This class represents the Windows or PostScript printer, and is the vehicle through | |
671 | which printing may be launched by an application. Printing can also | |
672 | be achieved through using of lower functions and classes, but | |
673 | this and associated classes provide a more convenient and general | |
674 | method of printing. | |
675 | ||
676 | \wxheading{Derived from} | |
677 | ||
678 | \helpref{wxObject}{wxobject} | |
679 | ||
954b8ae6 JS |
680 | \wxheading{Include files} |
681 | ||
682 | <wx/print.h> | |
683 | ||
a660d684 KB |
684 | \wxheading{See also} |
685 | ||
686 | \helpref{Printing framework overview}{printingoverview}, \helpref{wxPrinterDC}{wxprinterdc}, \helpref{wxPrintDialog}{wxprintdialog},\rtfsp | |
687 | \helpref{wxPrintout}{wxprintout}, \helpref{wxPrintPreview}{wxprintpreview}. | |
688 | ||
689 | \latexignore{\rtfignore{\wxheading{Members}}} | |
690 | ||
60090256 | 691 | |
a660d684 KB |
692 | \membersection{wxPrinter::wxPrinter} |
693 | ||
7bcb11d3 | 694 | \func{}{wxPrinter}{\param{wxPrintDialogData* }{data = NULL}} |
a660d684 KB |
695 | |
696 | Constructor. Pass an optional pointer to a block of print | |
7bcb11d3 | 697 | dialog data, which will be copied to the printer object's local data. |
a660d684 KB |
698 | |
699 | \wxheading{See also} | |
700 | ||
2233e5b8 | 701 | \helpref{wxPrintDialogData}{wxprintdialogdata}, |
a660d684 KB |
702 | \helpref{wxPrintData}{wxprintdata} |
703 | ||
60090256 | 704 | |
a660d684 KB |
705 | \membersection{wxPrinter::\destruct{wxPrinter}} |
706 | ||
707 | \func{}{\destruct{wxPrinter}}{\void} | |
708 | ||
709 | Destructor. | |
710 | ||
60090256 | 711 | |
a660d684 KB |
712 | \membersection{wxPrinter::Abort}\label{wxprinterabort} |
713 | ||
714 | \func{bool}{Abort}{\void} | |
715 | ||
cc81d32f | 716 | Returns true if the user has aborted the print job. |
a660d684 | 717 | |
60090256 | 718 | |
a660d684 KB |
719 | \membersection{wxPrinter::CreateAbortWindow}\label{wxprintercreateabortwindow} |
720 | ||
721 | \func{void}{CreateAbortWindow}{\param{wxWindow* }{parent}, \param{wxPrintout* }{printout}} | |
722 | ||
723 | Creates the default printing abort window, with a cancel button. | |
724 | ||
f6bcfd97 | 725 | |
60090256 | 726 | |
f6bcfd97 BP |
727 | \membersection{wxPrinter::GetLastError}\label{wxprintergetlasterror} |
728 | ||
729 | \func{static wxPrinterError}{GetLastError}{\void} | |
730 | ||
731 | Return last error. Valid after calling \helpref{Print}{wxprinterprint}, | |
732 | \helpref{PrintDialog}{wxprinterprintdialog} or | |
733 | \helpref{wxPrintPreview::Print}{wxprintpreviewprint}. These functions | |
734 | set last error to {\bf wxPRINTER\_NO\_ERROR} if no error happened. | |
735 | ||
736 | Returned value is one of the following: | |
737 | ||
738 | \twocolwidtha{7cm} | |
739 | \begin{twocollist}\itemsep=0pt | |
740 | \twocolitem{{\bf wxPRINTER\_NO\_ERROR}}{No error happened.} | |
741 | \twocolitem{{\bf wxPRINTER\_CANCELLED}}{The user cancelled printing.} | |
742 | \twocolitem{{\bf wxPRINTER\_ERROR}}{There was an error during printing.} | |
743 | \end{twocollist} | |
744 | ||
745 | ||
60090256 | 746 | |
7bcb11d3 | 747 | \membersection{wxPrinter::GetPrintDialogData}\label{wxprintergetprintdialogdata} |
a660d684 | 748 | |
7bcb11d3 | 749 | \func{wxPrintDialogData\&}{GetPrintDialogData}{\void} |
a660d684 KB |
750 | |
751 | Returns the \helpref{print data}{wxprintdata} associated with the printer object. | |
752 | ||
60090256 | 753 | |
a660d684 KB |
754 | \membersection{wxPrinter::Print}\label{wxprinterprint} |
755 | ||
cc81d32f | 756 | \func{bool}{Print}{\param{wxWindow *}{parent}, \param{wxPrintout *}{printout}, \param{bool }{prompt=true}} |
a660d684 KB |
757 | |
758 | Starts the printing process. Provide a parent window, a user-defined wxPrintout object which controls | |
759 | the printing of a document, and whether the print dialog should be invoked first. | |
760 | ||
cc81d32f | 761 | Print could return false if there was a problem initializing the printer device context |
f6bcfd97 BP |
762 | (current printer not set, for example) or the user cancelled printing. Call |
763 | \helpref{wxPrinter::GetLastError}{wxprintergetlasterror} to get detailed | |
764 | information about the kind of the error. | |
a660d684 | 765 | |
60090256 | 766 | |
a660d684 KB |
767 | \membersection{wxPrinter::PrintDialog}\label{wxprinterprintdialog} |
768 | ||
7bcb11d3 JS |
769 | \func{wxDC*}{PrintDialog}{\param{wxWindow *}{parent}} |
770 | ||
771 | Invokes the print dialog. If successful (the user did not press Cancel | |
772 | and no error occurred), a suitable device context will be returned | |
f6bcfd97 BP |
773 | (otherwise NULL is returned -- call |
774 | \helpref{wxPrinter::GetLastError}{wxprintergetlasterror} to get detailed | |
775 | information about the kind of the error). | |
a660d684 | 776 | |
7bcb11d3 | 777 | The application must delete this device context to avoid a memory leak. |
a660d684 | 778 | |
60090256 | 779 | |
a660d684 KB |
780 | \membersection{wxPrinter::ReportError}\label{wxprinterreporterror} |
781 | ||
782 | \func{void}{ReportError}{\param{wxWindow *}{parent}, \param{wxPrintout *}{printout}, \param{const wxString\& }{message}} | |
783 | ||
784 | Default error-reporting function. | |
785 | ||
60090256 | 786 | |
a660d684 KB |
787 | \membersection{wxPrinter::Setup}\label{wxprintersetup} |
788 | ||
7bcb11d3 | 789 | \func{bool}{Setup}{\param{wxWindow *}{parent}} |
a660d684 KB |
790 | |
791 | Invokes the print setup dialog. Note that the setup dialog is obsolete from | |
792 | Windows 95, though retained for backward compatibility. | |
793 | ||
794 | \section{\class{wxPrinterDC}}\label{wxprinterdc} | |
795 | ||
796 | A printer device context is specific to Windows, and allows access to | |
797 | any printer with a Windows driver. See \helpref{wxDC}{wxdc} for further information | |
798 | on device contexts, and \helpref{wxDC::GetSize}{wxdcgetsize} for advice on | |
799 | achieving the correct scaling for the page. | |
800 | ||
801 | \wxheading{Derived from} | |
802 | ||
803 | \helpref{wxDC}{wxdc}\\ | |
804 | \helpref{wxObject}{wxdc} | |
805 | ||
954b8ae6 JS |
806 | \wxheading{Include files} |
807 | ||
808 | <wx/dcprint.h> | |
809 | ||
a660d684 KB |
810 | \wxheading{See also} |
811 | ||
812 | \helpref{wxDC}{wxdc}, \helpref{Printing framework overview}{printingoverview} | |
813 | ||
814 | \latexignore{\rtfignore{\wxheading{Members}}} | |
815 | ||
60090256 | 816 | |
a660d684 KB |
817 | \membersection{wxPrinterDC::wxPrinterDC} |
818 | ||
7bcb11d3 JS |
819 | \func{}{wxPrinterDC}{\param{const wxPrintData\& }{printData}} |
820 | ||
821 | Pass a \helpref{wxPrintData}{wxprintdata} object with information | |
822 | necessary for setting up a suitable printer device context. This | |
823 | is the recommended way to construct a wxPrinterDC. | |
824 | ||
a660d684 | 825 | \func{}{wxPrinterDC}{\param{const wxString\& }{driver}, \param{const wxString\& }{device}, \param{const wxString\& }{output}, |
cc81d32f | 826 | \param{const bool }{interactive = true}, \param{int }{orientation = wxPORTRAIT}} |
a660d684 KB |
827 | |
828 | Constructor. With empty strings for the first three arguments, the default printer dialog is | |
829 | displayed. {\it device} indicates the type of printer and {\it output} | |
830 | is an optional file for printing to. The {\it driver} parameter is | |
831 | currently unused. Use the {\it Ok} member to test whether the | |
2edb0bde | 832 | constructor was successful in creating a usable device context. |
a660d684 | 833 | |
7bcb11d3 JS |
834 | This constructor is deprecated and retained only for backward compatibility. |
835 | ||
a660d684 KB |
836 | \section{\class{wxPrintout}}\label{wxprintout} |
837 | ||
838 | This class encapsulates the functionality of printing out an | |
839 | application document. A new class must be derived and members | |
840 | overridden to respond to calls such as OnPrintPage and HasPage. | |
841 | Instances of this class are passed to wxPrinter::Print or a | |
842 | wxPrintPreview object to initiate printing or previewing. | |
843 | ||
844 | \wxheading{Derived from} | |
845 | ||
846 | \helpref{wxObject}{wxobject} | |
847 | ||
954b8ae6 JS |
848 | \wxheading{Include files} |
849 | ||
850 | <wx/print.h> | |
851 | ||
a660d684 KB |
852 | \wxheading{See also} |
853 | ||
854 | \helpref{Printing framework overview}{printingoverview}, \helpref{wxPrinterDC}{wxprinterdc}, \helpref{wxPrintDialog}{wxprintdialog},\rtfsp | |
855 | \helpref{wxPrinter}{wxprinter}, \helpref{wxPrintPreview}{wxprintpreview} | |
856 | ||
857 | \latexignore{\rtfignore{\wxheading{Members}}} | |
858 | ||
60090256 | 859 | |
a660d684 KB |
860 | \membersection{wxPrintout::wxPrintout} |
861 | ||
862 | \func{}{wxPrintout}{\param{const wxString\& }{title = "Printout"}} | |
863 | ||
2edb0bde | 864 | Constructor. Pass an optional title argument - the current filename would be a good idea. This will appear in the printing list |
fc799548 | 865 | (at least in MSW) |
a660d684 | 866 | |
60090256 | 867 | |
a660d684 KB |
868 | \membersection{wxPrintout::\destruct{wxPrintout}} |
869 | ||
870 | \func{}{\destruct{wxPrintout}}{\void} | |
871 | ||
872 | Destructor. | |
873 | ||
60090256 | 874 | |
a660d684 KB |
875 | \membersection{wxPrintout::GetDC}\label{wxprintoutgetdc} |
876 | ||
877 | \func{wxDC *}{GetDC}{\void} | |
878 | ||
879 | Returns the device context associated with the printout (given to the printout at start of | |
880 | printing or previewing). This will be a wxPrinterDC if printing under Windows, | |
881 | a wxPostScriptDC if printing on other platforms, and a wxMemoryDC if previewing. | |
882 | ||
60090256 | 883 | |
a660d684 KB |
884 | \membersection{wxPrintout::GetPageInfo}\label{wxprintoutgetpageinfo} |
885 | ||
886 | \func{void}{GetPageInfo}{\param{int *}{minPage}, \param{int *}{maxPage}, \param{int *}{pageFrom}, \param{int *}{pageTo}} | |
887 | ||
888 | Called by the framework to obtain information from the application about minimum and maximum page values that | |
889 | the user can select, and the required page range to be printed. By default this | |
890 | returns 1, 32000 for the page minimum and maximum values, and 1, 1 for the required page range. | |
891 | ||
892 | If {\it minPage} is zero, the page number controls in the print dialog will be disabled. | |
893 | ||
2233e5b8 RD |
894 | \pythonnote{When this method is implemented in a derived Python class, |
895 | it should be designed to take no parameters (other than the self | |
896 | reference) and to return a tuple of four integers. | |
897 | } | |
898 | ||
0a67eeac | 899 | \perlnote{When this method is overridden in a derived class, |
d2b354f9 | 900 | it must not take any parameters, and returns a 4-element list. |
0a67eeac MB |
901 | } |
902 | ||
60090256 | 903 | |
a660d684 KB |
904 | \membersection{wxPrintout::GetPageSizeMM}\label{wxprintoutgetpagesizemm} |
905 | ||
906 | \func{void}{GetPageSizeMM}{\param{int *}{w}, \param{int *}{h}} | |
907 | ||
908 | Returns the size of the printer page in millimetres. | |
909 | ||
2233e5b8 RD |
910 | \pythonnote{This method returns the output-only parameters as a tuple.} |
911 | ||
0a67eeac MB |
912 | \perlnote{In wxPerl this method takes no arguments and returns a |
913 | 2-element list {\tt ( w, h )}} | |
914 | ||
60090256 | 915 | |
a660d684 KB |
916 | \membersection{wxPrintout::GetPageSizePixels}\label{wxprintoutgetpagesizepixels} |
917 | ||
918 | \func{void}{GetPageSizePixels}{\param{int *}{w}, \param{int *}{h}} | |
919 | ||
920 | Returns the size of the printer page in pixels. These may not be the | |
921 | same as the values returned from \helpref{wxDC::GetSize}{wxdcgetsize} if | |
922 | the printout is being used for previewing, since in this case, a | |
923 | memory device context is used, using a bitmap size reflecting the current | |
924 | preview zoom. The application must take this discrepancy into account if | |
925 | previewing is to be supported. | |
926 | ||
2233e5b8 RD |
927 | \pythonnote{This method returns the output-only parameters as a tuple.} |
928 | ||
0a67eeac MB |
929 | \perlnote{In wxPerl this method takes no arguments and returns a |
930 | 2-element list {\tt ( w, h )}} | |
931 | ||
60090256 | 932 | |
a660d684 KB |
933 | \membersection{wxPrintout::GetPPIPrinter}\label{wxprintoutgetppiprinter} |
934 | ||
935 | \func{void}{GetPPIPrinter}{\param{int *}{w}, \param{int *}{h}} | |
936 | ||
937 | Returns the number of pixels per logical inch of the printer device context. | |
938 | Dividing the printer PPI by the screen PPI can give a suitable scaling | |
939 | factor for drawing text onto the printer. Remember to multiply | |
940 | this by a scaling factor to take the preview DC size into account. | |
941 | ||
2233e5b8 RD |
942 | \pythonnote{This method returns the output-only parameters as a tuple.} |
943 | ||
0a67eeac MB |
944 | \perlnote{In wxPerl this method takes no arguments and returns a |
945 | 2-element list {\tt ( w, h )}} | |
946 | ||
60090256 | 947 | |
a660d684 KB |
948 | \membersection{wxPrintout::GetPPIScreen}\label{wxprintoutgetppiscreen} |
949 | ||
950 | \func{void}{GetPPIScreen}{\param{int *}{w}, \param{int *}{h}} | |
951 | ||
952 | Returns the number of pixels per logical inch of the screen device context. | |
953 | Dividing the printer PPI by the screen PPI can give a suitable scaling | |
954 | factor for drawing text onto the printer. Remember to multiply | |
955 | this by a scaling factor to take the preview DC size into account. | |
956 | ||
60090256 | 957 | |
fc799548 JS |
958 | \membersection{wxPrintout::GetTitle}\label{wxprintoutgettitle} |
959 | ||
960 | \func{wxString}{GetTitle}{\void} | |
961 | ||
962 | Returns the title of the printout | |
963 | ||
2233e5b8 RD |
964 | \pythonnote{This method returns the output-only parameters as a tuple.} |
965 | ||
0a67eeac MB |
966 | \perlnote{In wxPerl this method takes no arguments and returns a |
967 | 2-element list {\tt ( w, h )}} | |
968 | ||
60090256 | 969 | |
a660d684 KB |
970 | \membersection{wxPrintout::HasPage}\label{wxprintouthaspage} |
971 | ||
972 | \func{bool}{HasPage}{\param{int}{ pageNum}} | |
973 | ||
cc81d32f VS |
974 | Should be overridden to return true if the document has this page, or false |
975 | if not. Returning false signifies the end of the document. By default, | |
a660d684 KB |
976 | HasPage behaves as if the document has only one page. |
977 | ||
60090256 | 978 | |
a660d684 KB |
979 | \membersection{wxPrintout::IsPreview}\label{wxprintoutispreview} |
980 | ||
981 | \func{bool}{IsPreview}{\void} | |
982 | ||
cc81d32f | 983 | Returns true if the printout is currently being used for previewing. |
a660d684 | 984 | |
60090256 | 985 | |
a660d684 KB |
986 | \membersection{wxPrintout::OnBeginDocument}\label{wxprintoutonbegindocument} |
987 | ||
988 | \func{bool}{OnBeginDocument}{\param{int}{ startPage}, \param{int}{ endPage}} | |
989 | ||
cc81d32f | 990 | Called by the framework at the start of document printing. Return false from |
a660d684 KB |
991 | this function cancels the print job. OnBeginDocument is called once for every |
992 | copy printed. | |
993 | ||
994 | The base wxPrintout::OnBeginDocument {\it must} be called (and the return value | |
f6bcfd97 | 995 | checked) from within the overridden function, since it calls wxDC::StartDoc. |
a660d684 | 996 | |
f6bcfd97 | 997 | \pythonnote{If this method is overridden in a Python class then the |
2233e5b8 | 998 | base class version can be called by using the method |
6aa358ae | 999 | {\tt base\_OnBeginDocument(startPage, endPage)}. } |
2233e5b8 | 1000 | |
60090256 | 1001 | |
a660d684 KB |
1002 | \membersection{wxPrintout::OnEndDocument}\label{wxprintoutonenddocument} |
1003 | ||
1004 | \func{void}{OnEndDocument}{\void} | |
1005 | ||
1006 | Called by the framework at the end of document printing. OnEndDocument | |
1007 | is called once for every copy printed. | |
1008 | ||
1009 | The base wxPrintout::OnEndDocument {\it must} be called | |
f6bcfd97 | 1010 | from within the overridden function, since it calls wxDC::EndDoc. |
a660d684 | 1011 | |
60090256 | 1012 | |
a660d684 KB |
1013 | \membersection{wxPrintout::OnBeginPrinting}\label{wxprintoutonbeginprinting} |
1014 | ||
1015 | \func{void}{OnBeginPrinting}{\void} | |
1016 | ||
1017 | Called by the framework at the start of printing. OnBeginPrinting is called once for every | |
1018 | print job (regardless of how many copies are being printed). | |
1019 | ||
60090256 | 1020 | |
a660d684 KB |
1021 | \membersection{wxPrintout::OnEndPrinting}\label{wxprintoutonendprinting} |
1022 | ||
1023 | \func{void}{OnEndPrinting}{\void} | |
1024 | ||
1025 | Called by the framework at the end of printing. OnEndPrinting | |
1026 | is called once for every print job (regardless of how many copies are being printed). | |
1027 | ||
60090256 | 1028 | |
a660d684 KB |
1029 | \membersection{wxPrintout::OnPreparePrinting}\label{wxprintoutonprepareprinting} |
1030 | ||
1031 | \func{void}{OnPreparePrinting}{\void} | |
1032 | ||
1033 | Called once by the framework before any other demands are made of the | |
1034 | wxPrintout object. This gives the object an opportunity to calculate the | |
1035 | number of pages in the document, for example. | |
1036 | ||
60090256 | 1037 | |
a660d684 KB |
1038 | \membersection{wxPrintout::OnPrintPage}\label{wxprintoutonprintpage} |
1039 | ||
1040 | \func{bool}{OnPrintPage}{\param{int}{ pageNum}} | |
1041 | ||
cc81d32f | 1042 | Called by the framework when a page should be printed. Returning false cancels |
a660d684 KB |
1043 | the print job. The application can use wxPrintout::GetDC to obtain a device |
1044 | context to draw on. | |
1045 | ||
1046 | \section{\class{wxPrintPreview}}\label{wxprintpreview} | |
1047 | ||
a660d684 KB |
1048 | Objects of this class manage the print preview process. The object is passed |
1049 | a wxPrintout object, and the wxPrintPreview object itself is passed to | |
1050 | a wxPreviewFrame object. Previewing is started by initializing and showing | |
1051 | the preview frame. Unlike wxPrinter::Print, flow of control returns to the application | |
1052 | immediately after the frame is shown. | |
1053 | ||
1054 | \wxheading{Derived from} | |
1055 | ||
1056 | \helpref{wxObject}{wxobject} | |
1057 | ||
954b8ae6 JS |
1058 | \wxheading{Include files} |
1059 | ||
1060 | <wx/print.h> | |
1061 | ||
a660d684 KB |
1062 | \wxheading{See also} |
1063 | ||
1064 | \overview{Printing framework overview}{printingoverview}, \helpref{wxPrinterDC}{wxprinterdc}, \helpref{wxPrintDialog}{wxprintdialog},\rtfsp | |
1065 | \helpref{wxPrintout}{wxprintout}, \helpref{wxPrinter}{wxprinter},\rtfsp | |
1066 | \helpref{wxPreviewCanvas}{wxpreviewcanvas}, \helpref{wxPreviewControlBar}{wxpreviewcontrolbar},\rtfsp | |
1067 | \helpref{wxPreviewFrame}{wxpreviewframe}. | |
1068 | ||
1069 | \latexignore{\rtfignore{\wxheading{Members}}} | |
1070 | ||
60090256 | 1071 | |
a660d684 KB |
1072 | \membersection{wxPrintPreview::wxPrintPreview} |
1073 | ||
1074 | \func{}{wxPrintPreview}{\param{wxPrintout* }{printout}, \param{wxPrintout* }{printoutForPrinting}, | |
1075 | \param{wxPrintData* }{data=NULL}} | |
1076 | ||
1077 | Constructor. Pass a printout object, an optional printout object to be | |
1078 | used for actual printing, and the address of an optional | |
1079 | block of printer data, which will be copied to the print preview object's | |
1080 | print data. | |
1081 | ||
1082 | If {\it printoutForPrinting} is non-NULL, a {\bf Print...} button will be placed on the | |
1083 | preview frame so that the user can print directly from the preview interface. | |
1084 | ||
1085 | Do not explicitly delete the printout objects once this destructor has been | |
1086 | called, since they will be deleted in the wxPrintPreview constructor. | |
1087 | The same does not apply to the {\it data} argument. | |
1088 | ||
1089 | Test the Ok member to check whether the wxPrintPreview object was created correctly. | |
cc81d32f | 1090 | Ok could return false if there was a problem initializing the printer device context |
a660d684 KB |
1091 | (current printer not set, for example). |
1092 | ||
60090256 | 1093 | |
a660d684 KB |
1094 | \membersection{wxPrintPreview::\destruct{wxPrintPreview}} |
1095 | ||
1096 | \func{}{\destruct{wxPrinter}}{\void} | |
1097 | ||
1098 | Destructor. Deletes both print preview objects, so do not destroy these objects | |
1099 | in your application. | |
1100 | ||
60090256 | 1101 | |
a660d684 KB |
1102 | \membersection{wxPrintPreview::DrawBlankPage}\label{wxprintpreviewdrawblankpage} |
1103 | ||
1104 | \func{bool}{DrawBlankPage}{\param{wxWindow* }{window}} | |
1105 | ||
1106 | Draws a representation of the blank page into the preview window. Used | |
1107 | internally. | |
1108 | ||
60090256 | 1109 | |
a660d684 KB |
1110 | \membersection{wxPrintPreview::GetCanvas}\label{wxprintpreviewgetcanvas} |
1111 | ||
d2b354f9 | 1112 | \func{wxPreviewCanvas* }{GetCanvas}{\void} |
a660d684 KB |
1113 | |
1114 | Gets the preview window used for displaying the print preview image. | |
1115 | ||
60090256 | 1116 | |
a660d684 KB |
1117 | \membersection{wxPrintPreview::GetCurrentPage}\label{wxprintpreviewgetcurrentpage} |
1118 | ||
1119 | \func{int}{GetCurrentPage}{\void} | |
1120 | ||
1121 | Gets the page currently being previewed. | |
1122 | ||
60090256 | 1123 | |
a660d684 KB |
1124 | \membersection{wxPrintPreview::GetFrame}\label{wxprintpreviewgetframe} |
1125 | ||
1126 | \func{wxFrame *}{GetFrame}{\void} | |
1127 | ||
1128 | Gets the frame used for displaying the print preview canvas | |
1129 | and control bar. | |
1130 | ||
60090256 | 1131 | |
a660d684 KB |
1132 | \membersection{wxPrintPreview::GetMaxPage}\label{wxprintpreviewgetmaxpage} |
1133 | ||
1134 | \func{int}{GetMaxPage}{\void} | |
1135 | ||
1136 | Returns the maximum page number. | |
1137 | ||
60090256 | 1138 | |
a660d684 KB |
1139 | \membersection{wxPrintPreview::GetMinPage}\label{wxprintpreviewgetminpage} |
1140 | ||
1141 | \func{int}{GetMinPage}{\void} | |
1142 | ||
1143 | Returns the minimum page number. | |
1144 | ||
60090256 | 1145 | |
a660d684 KB |
1146 | \membersection{wxPrintPreview::GetPrintData}\label{wxprintpreviewgetprintdata} |
1147 | ||
1148 | \func{wxPrintData\&}{GetPrintData}{\void} | |
1149 | ||
1150 | Returns a reference to the internal print data. | |
1151 | ||
60090256 | 1152 | |
a660d684 KB |
1153 | \membersection{wxPrintPreview::GetPrintout}\label{wxprintpreviewgetprintout} |
1154 | ||
1155 | \func{wxPrintout *}{GetPrintout}{\void} | |
1156 | ||
1157 | Gets the preview printout object associated with the wxPrintPreview object. | |
1158 | ||
60090256 | 1159 | |
a660d684 KB |
1160 | \membersection{wxPrintPreview::GetPrintoutForPrinting}\label{wxprintpreviewgetprintoutforprinting} |
1161 | ||
1162 | \func{wxPrintout *}{GetPrintoutForPrinting}{\void} | |
1163 | ||
1164 | Gets the printout object to be used for printing from within the preview interface, | |
1165 | or NULL if none exists. | |
1166 | ||
60090256 | 1167 | |
a660d684 KB |
1168 | \membersection{wxPrintPreview::Ok}\label{wxprintpreviewok} |
1169 | ||
1170 | \func{bool}{Ok}{\void} | |
1171 | ||
cc81d32f | 1172 | Returns true if the wxPrintPreview is valid, false otherwise. It could return false if there was a |
a660d684 KB |
1173 | problem initializing the printer device context (current printer not set, for example). |
1174 | ||
60090256 | 1175 | |
a660d684 KB |
1176 | \membersection{wxPrintPreview::PaintPage}\label{wxprintpreviewpaintpage} |
1177 | ||
1178 | \func{bool}{PaintPage}{\param{wxWindow* }{window}} | |
1179 | ||
1180 | This refreshes the preview window with the preview image. | |
1181 | It must be called from the preview window's OnPaint member. | |
1182 | ||
1183 | The implementation simply blits the preview bitmap onto | |
1184 | the canvas, creating a new preview bitmap if none exists. | |
1185 | ||
60090256 | 1186 | |
a660d684 KB |
1187 | \membersection{wxPrintPreview::Print}\label{wxprintpreviewprint} |
1188 | ||
1189 | \func{bool}{Print}{\param{bool }{prompt}} | |
1190 | ||
1191 | Invokes the print process using the second wxPrintout object | |
1192 | supplied in the wxPrintPreview constructor. | |
1193 | Will normally be called by the {\bf Print...} panel item on the | |
1194 | preview frame's control bar. | |
1195 | ||
cc81d32f | 1196 | Returns false in case of error -- call |
f6bcfd97 BP |
1197 | \helpref{wxPrinter::GetLastError}{wxprintergetlasterror} to get detailed |
1198 | information about the kind of the error. | |
1199 | ||
60090256 | 1200 | |
a660d684 KB |
1201 | \membersection{wxPrintPreview::RenderPage}\label{wxprintpreviewrenderpage} |
1202 | ||
1203 | \func{bool}{RenderPage}{\param{int }{pageNum}} | |
1204 | ||
1205 | Renders a page into a wxMemoryDC. Used internally by wxPrintPreview. | |
1206 | ||
60090256 | 1207 | |
a660d684 KB |
1208 | \membersection{wxPrintPreview::SetCanvas}\label{wxprintpreviewsetcanvas} |
1209 | ||
d2b354f9 | 1210 | \func{void}{SetCanvas}{\param{wxPreviewCanvas** }{window}} |
a660d684 KB |
1211 | |
1212 | Sets the window to be used for displaying the print preview image. | |
1213 | ||
60090256 | 1214 | |
a660d684 KB |
1215 | \membersection{wxPrintPreview::SetCurrentPage}\label{wxprintpreviewsetcurrentpage} |
1216 | ||
1217 | \func{void}{SetCurrentPage}{\param{int}{ pageNum}} | |
1218 | ||
1219 | Sets the current page to be previewed. | |
1220 | ||
60090256 | 1221 | |
a660d684 KB |
1222 | \membersection{wxPrintPreview::SetFrame}\label{wxprintpreviewsetframe} |
1223 | ||
1224 | \func{void}{SetFrame}{\param{wxFrame *}{frame}} | |
1225 | ||
1226 | Sets the frame to be used for displaying the print preview canvas | |
1227 | and control bar. | |
1228 | ||
60090256 | 1229 | |
a660d684 KB |
1230 | \membersection{wxPrintPreview::SetPrintout}\label{wxprintpreviewsetprintout} |
1231 | ||
1232 | \func{void}{SetPrintout}{\param{wxPrintout *}{printout}} | |
1233 | ||
1234 | Associates a printout object with the wxPrintPreview object. | |
1235 | ||
60090256 | 1236 | |
a660d684 KB |
1237 | \membersection{wxPrintPreview::SetZoom}\label{wxprintpreviewsetzoom} |
1238 | ||
1239 | \func{void}{SetZoom}{\param{int}{ percent}} | |
1240 | ||
1241 | Sets the percentage preview zoom, and refreshes the preview canvas | |
1242 | accordingly. | |
1243 |