Github User Fetcher 1.0.0
C Application with Server and GUI
Loading...
Searching...
No Matches
gtkprintsettings.h
Go to the documentation of this file.
1/* GTK - The GIMP Toolkit
2 * gtkprintsettings.h: Print Settings
3 * Copyright (C) 2006, Red Hat, Inc.
4 *
5 * This library is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Lesser General Public
7 * License as published by the Free Software Foundation; either
8 * version 2 of the License, or (at your option) any later version.
9 *
10 * This library is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * Lesser General Public License for more details.
14 *
15 * You should have received a copy of the GNU Lesser General Public
16 * License along with this library. If not, see <http://www.gnu.org/licenses/>.
17 */
18
19#pragma once
20
21#if !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION)
22#error "Only <gtk/gtk.h> can be included directly."
23#endif
24
26
28
29typedef struct _GtkPrintSettings GtkPrintSettings;
30
31#define GTK_TYPE_PRINT_SETTINGS (gtk_print_settings_get_type ())
32#define GTK_PRINT_SETTINGS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_PRINT_SETTINGS, GtkPrintSettings))
33#define GTK_IS_PRINT_SETTINGS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_PRINT_SETTINGS))
34
35/**
36 * GtkPrintSettingsFunc:
37 * @key: the setting key
38 * @value: the setting value
39 * @user_data: (closure): The user data provided with the function
40 *
41 * Function called by [method@Gtk.PrintSettings.foreach] on every key/value pair
42 * inside a [class@Gtk.PrintSettings].
43 */
44typedef void (*GtkPrintSettingsFunc) (const char *key,
45 const char *value,
46 gpointer user_data);
47
49
50/**
51 * GtkPageRange:
52 * @start: start of page range.
53 * @end: end of page range.
54 *
55 * A range of pages to print.
56 *
57 * See also [method@Gtk.PrintSettings.set_page_ranges].
58 */
60{
61 int start;
62 int end;
63};
64
69
72
75 GError **error);
78 const char *file_name,
79 GError **error);
82 const char *file_name,
83 GError **error);
86 const char *group_name,
87 GError **error);
90 GKeyFile *key_file,
91 const char *group_name,
92 GError **error);
95 GKeyFile *key_file,
96 const char *group_name);
99 const char *key);
102 const char *key);
105 const char *key,
106 const char *value);
109 const char *key);
113 gpointer user_data);
116 const char *key);
119 const char *key,
123 const char *key);
126 const char *key,
127 double def);
130 const char *key,
131 double value);
134 const char *key,
135 GtkUnit unit);
138 const char *key,
139 double value,
140 GtkUnit unit);
143 const char *key);
146 const char *key,
147 int def);
150 const char *key,
151 int value);
152
153/**
154 * GTK_PRINT_SETTINGS_PRINTER:
155 *
156 * The key used by the “Print to file” printer to store the printer name.
157 */
158#define GTK_PRINT_SETTINGS_PRINTER "printer"
159
160/**
161 * GTK_PRINT_SETTINGS_ORIENTATION:
162 *
163 * The key used by the “Print to file” printer to store the orientation.
164 */
165#define GTK_PRINT_SETTINGS_ORIENTATION "orientation"
166
167/**
168 * GTK_PRINT_SETTINGS_PAPER_FORMAT:
169 *
170 * The key used by the “Print to file” printer to store the page format.
171 */
172#define GTK_PRINT_SETTINGS_PAPER_FORMAT "paper-format"
173
174/**
175 * GTK_PRINT_SETTINGS_PAPER_WIDTH:
176 *
177 * The key used by the “Print to file” printer to store the paper width.
178 */
179#define GTK_PRINT_SETTINGS_PAPER_WIDTH "paper-width"
180
181/**
182 * GTK_PRINT_SETTINGS_PAPER_HEIGHT:
183 *
184 * The key used by the “Print to file” printer to store the page height.
185 */
186#define GTK_PRINT_SETTINGS_PAPER_HEIGHT "paper-height"
187
188/**
189 * GTK_PRINT_SETTINGS_N_COPIES:
190 *
191 * The key used by the “Print to file” printer to store the number of copies.
192 */
193#define GTK_PRINT_SETTINGS_N_COPIES "n-copies"
194
195/**
196 * GTK_PRINT_SETTINGS_DEFAULT_SOURCE:
197 *
198 * The key used by the “Print to file” printer to store the default source.
199 */
200#define GTK_PRINT_SETTINGS_DEFAULT_SOURCE "default-source"
201
202/**
203 * GTK_PRINT_SETTINGS_QUALITY:
204 *
205 * The key used by the “Print to file” printer to store the printing quality.
206 */
207#define GTK_PRINT_SETTINGS_QUALITY "quality"
208
209/**
210 * GTK_PRINT_SETTINGS_RESOLUTION:
211 *
212 * The key used by the “Print to file” printer to store the resolution in DPI.
213 */
214#define GTK_PRINT_SETTINGS_RESOLUTION "resolution"
215
216/**
217 * GTK_PRINT_SETTINGS_USE_COLOR:
218 *
219 * The key used by the “Print to file” printer to store whether to print with
220 * colors.
221 */
222#define GTK_PRINT_SETTINGS_USE_COLOR "use-color"
223
224/**
225 * GTK_PRINT_SETTINGS_DUPLEX:
226 *
227 * The key used by the “Print to file” printer to store whether to print the
228 * output in duplex.
229 */
230#define GTK_PRINT_SETTINGS_DUPLEX "duplex"
231
232/**
233 * GTK_PRINT_SETTINGS_COLLATE:
234 *
235 * The key used by the “Print to file” printer to store whether to collate the
236 * printed pages.
237 */
238#define GTK_PRINT_SETTINGS_COLLATE "collate"
239
240/**
241 * GTK_PRINT_SETTINGS_REVERSE:
242 *
243 * The key used by the “Print to file” printer to store whether to reverse the
244 * order of the printed pages.
245 */
246#define GTK_PRINT_SETTINGS_REVERSE "reverse"
247
248/**
249 * GTK_PRINT_SETTINGS_MEDIA_TYPE:
250 *
251 * The key used by the “Print to file” printer to store the media type.
252 *
253 * The set of media types is defined in PWG 5101.1-2002 PWG.
254 */
255#define GTK_PRINT_SETTINGS_MEDIA_TYPE "media-type"
256
257/**
258 * GTK_PRINT_SETTINGS_DITHER:
259 *
260 * The key used by the “Print to file” printer to store the dither used.
261 */
262#define GTK_PRINT_SETTINGS_DITHER "dither"
263
264/**
265 * GTK_PRINT_SETTINGS_SCALE:
266 *
267 * The key used by the “Print to file” printer to store the scale.
268 */
269#define GTK_PRINT_SETTINGS_SCALE "scale"
270
271/**
272 * GTK_PRINT_SETTINGS_PRINT_PAGES:
273 *
274 * The key used by the “Print to file” printer to store which pages to print.
275 */
276#define GTK_PRINT_SETTINGS_PRINT_PAGES "print-pages"
277
278/**
279 * GTK_PRINT_SETTINGS_PAGE_RANGES:
280 *
281 * The key used by the “Print to file” printer to store the array of page ranges
282 * to print.
283 */
284#define GTK_PRINT_SETTINGS_PAGE_RANGES "page-ranges"
285
286/**
287 * GTK_PRINT_SETTINGS_PAGE_SET:
288 *
289 * The key used by the “Print to file” printer to store the set of pages to print.
290 */
291#define GTK_PRINT_SETTINGS_PAGE_SET "page-set"
292
293/**
294 * GTK_PRINT_SETTINGS_FINISHINGS:
295 *
296 * The key used by the “Print to file” printer to store the finishings.
297 */
298#define GTK_PRINT_SETTINGS_FINISHINGS "finishings"
299
300/**
301 * GTK_PRINT_SETTINGS_NUMBER_UP:
302 *
303 * The key used by the “Print to file” printer to store the number of pages per
304 * sheet.
305 */
306#define GTK_PRINT_SETTINGS_NUMBER_UP "number-up"
307
308/**
309 * GTK_PRINT_SETTINGS_NUMBER_UP_LAYOUT:
310 *
311 * The key used by the “Print to file” printer to store the number of pages per
312 * sheet in number-up mode.
313 */
314#define GTK_PRINT_SETTINGS_NUMBER_UP_LAYOUT "number-up-layout"
315
316/**
317 * GTK_PRINT_SETTINGS_OUTPUT_BIN:
318 *
319 * The key used by the “Print to file” printer to store the output bin.
320 */
321#define GTK_PRINT_SETTINGS_OUTPUT_BIN "output-bin"
322
323/**
324 * GTK_PRINT_SETTINGS_RESOLUTION_X:
325 *
326 * The key used by the “Print to file” printer to store the horizontal
327 * resolution in DPI.
328 */
329#define GTK_PRINT_SETTINGS_RESOLUTION_X "resolution-x"
330
331/**
332 * GTK_PRINT_SETTINGS_RESOLUTION_Y:
333 *
334 * The key used by the “Print to file” printer to store the vertical resolution
335 * in DPI.
336 */
337#define GTK_PRINT_SETTINGS_RESOLUTION_Y "resolution-y"
338
339/**
340 * GTK_PRINT_SETTINGS_PRINTER_LPI:
341 *
342 * The key used by the “Print to file” printer to store the resolution in lines
343 * per inch.
344 */
345#define GTK_PRINT_SETTINGS_PRINTER_LPI "printer-lpi"
346
347/**
348 * GTK_PRINT_SETTINGS_OUTPUT_DIR:
349 *
350 * The key used by the “Print to file” printer to store the
351 * directory to which the output should be written.
352 */
353#define GTK_PRINT_SETTINGS_OUTPUT_DIR "output-dir"
354
355/**
356 * GTK_PRINT_SETTINGS_OUTPUT_BASENAME:
357 *
358 * The key used by the “Print to file” printer to store the file
359 * name of the output without the path to the directory and the
360 * file extension.
361 */
362#define GTK_PRINT_SETTINGS_OUTPUT_BASENAME "output-basename"
363
364/**
365 * GTK_PRINT_SETTINGS_OUTPUT_FILE_FORMAT:
366 *
367 * The key used by the “Print to file” printer to store the format
368 * of the output. The supported values are “PS” and “PDF”.
369 */
370#define GTK_PRINT_SETTINGS_OUTPUT_FILE_FORMAT "output-file-format"
371
372/**
373 * GTK_PRINT_SETTINGS_OUTPUT_URI:
374 *
375 * The key used by the “Print to file” printer to store the URI
376 * to which the output should be written. GTK itself supports
377 * only “file://” URIs.
378 */
379#define GTK_PRINT_SETTINGS_OUTPUT_URI "output-uri"
380
381/**
382 * GTK_PRINT_SETTINGS_WIN32_DRIVER_VERSION:
383 *
384 * The key used by the “Print to file” printer to store the 32-bit Windows
385 * driver version.
386 */
387#define GTK_PRINT_SETTINGS_WIN32_DRIVER_VERSION "win32-driver-version"
388
389/**
390 * GTK_PRINT_SETTINGS_WIN32_DRIVER_EXTRA:
391 *
392 * The key used by the “Print to file” printer to store 32-bit Windows extra
393 * driver.
394 */
395#define GTK_PRINT_SETTINGS_WIN32_DRIVER_EXTRA "win32-driver-extra"
396
397/* Helpers: */
398
403 const char *printer);
408 GtkPageOrientation orientation);
413 GtkPaperSize *paper_size);
416 GtkUnit unit);
419 double width,
420 GtkUnit unit);
423 GtkUnit unit);
426 double height,
427 GtkUnit unit);
432 gboolean use_color);
437 gboolean collate);
447 GtkPrintDuplex duplex);
452 GtkPrintQuality quality);
457 int num_copies);
462 int number_up);
467 GtkNumberUpLayout number_up_layout);
472 int resolution);
479 int resolution_x,
480 int resolution_y);
485 double lpi);
490 double scale);
495 GtkPrintPages pages);
498 int *num_ranges);
501 GtkPageRange *page_ranges,
502 int num_ranges);
507 GtkPageSet page_set);
512 const char *default_source);
517 const char *media_type);
522 const char *dither);
527 const char *finishings);
532 const char *output_bin);
533
538
540
542
#define GDK_AVAILABLE_IN_ALL
struct _GKeyFile GKeyFile
Definition gkeyfile.h:50
#define G_END_DECLS
Definition gmacros.h:910
#define G_BEGIN_DECLS
Definition gmacros.h:909
#define G_GNUC_CONST
Definition gmacros.h:637
#define G_DEFINE_AUTOPTR_CLEANUP_FUNC(TypeName, func)
Definition gmacros.h:1400
GOBJECT_AVAILABLE_IN_ALL void g_object_unref(gpointer object)
GtkPrintDuplex
Definition gtkenums.h:742
GtkUnit
Definition gtkenums.h:759
GtkPrintPages
Definition gtkenums.h:608
GtkPrintQuality
Definition gtkenums.h:726
GtkNumberUpLayout
Definition gtkenums.h:645
GtkPageOrientation
Definition gtkenums.h:709
GtkPageSet
Definition gtkenums.h:624
typedefG_BEGIN_DECLS struct _GtkPaperSize GtkPaperSize
GDK_AVAILABLE_IN_ALL gboolean gtk_print_settings_load_key_file(GtkPrintSettings *settings, GKeyFile *key_file, const char *group_name, GError **error)
GDK_AVAILABLE_IN_ALL const char * gtk_print_settings_get_dither(GtkPrintSettings *settings)
GDK_AVAILABLE_IN_ALL void gtk_print_settings_set_reverse(GtkPrintSettings *settings, gboolean reverse)
GDK_AVAILABLE_IN_ALL double gtk_print_settings_get_double_with_default(GtkPrintSettings *settings, const char *key, double def)
GDK_AVAILABLE_IN_ALL void gtk_print_settings_set_dither(GtkPrintSettings *settings, const char *dither)
GDK_AVAILABLE_IN_ALL void gtk_print_settings_set_default_source(GtkPrintSettings *settings, const char *default_source)
GDK_AVAILABLE_IN_ALL double gtk_print_settings_get_paper_width(GtkPrintSettings *settings, GtkUnit unit)
GDK_AVAILABLE_IN_ALL int gtk_print_settings_get_number_up(GtkPrintSettings *settings)
GDK_AVAILABLE_IN_ALL void gtk_print_settings_set_printer_lpi(GtkPrintSettings *settings, double lpi)
GDK_AVAILABLE_IN_ALL GtkPageSet gtk_print_settings_get_page_set(GtkPrintSettings *settings)
GDK_AVAILABLE_IN_ALL int gtk_print_settings_get_n_copies(GtkPrintSettings *settings)
GDK_AVAILABLE_IN_ALL void gtk_print_settings_set_page_ranges(GtkPrintSettings *settings, GtkPageRange *page_ranges, int num_ranges)
GDK_AVAILABLE_IN_ALL void gtk_print_settings_set_orientation(GtkPrintSettings *settings, GtkPageOrientation orientation)
GDK_AVAILABLE_IN_ALL GtkPrintQuality gtk_print_settings_get_quality(GtkPrintSettings *settings)
GDK_AVAILABLE_IN_ALL GVariant * gtk_print_settings_to_gvariant(GtkPrintSettings *settings)
GDK_AVAILABLE_IN_ALL const char * gtk_print_settings_get_default_source(GtkPrintSettings *settings)
GDK_AVAILABLE_IN_ALL GType gtk_print_settings_get_type(void) G_GNUC_CONST
GDK_AVAILABLE_IN_ALL void gtk_print_settings_set_page_set(GtkPrintSettings *settings, GtkPageSet page_set)
GDK_AVAILABLE_IN_ALL void gtk_print_settings_set_printer(GtkPrintSettings *settings, const char *printer)
GDK_AVAILABLE_IN_ALL GtkPrintPages gtk_print_settings_get_print_pages(GtkPrintSettings *settings)
GDK_AVAILABLE_IN_ALL gboolean gtk_print_settings_get_collate(GtkPrintSettings *settings)
GDK_AVAILABLE_IN_ALL void gtk_print_settings_set_resolution(GtkPrintSettings *settings, int resolution)
GDK_AVAILABLE_IN_ALL void gtk_print_settings_set_collate(GtkPrintSettings *settings, gboolean collate)
GDK_AVAILABLE_IN_ALL void gtk_print_settings_set_paper_height(GtkPrintSettings *settings, double height, GtkUnit unit)
GDK_AVAILABLE_IN_ALL GtkPrintSettings * gtk_print_settings_new_from_key_file(GKeyFile *key_file, const char *group_name, GError **error)
GDK_AVAILABLE_IN_ALL GtkPrintSettings * gtk_print_settings_new(void)
GDK_AVAILABLE_IN_ALL gboolean gtk_print_settings_to_file(GtkPrintSettings *settings, const char *file_name, GError **error)
GDK_AVAILABLE_IN_ALL const char * gtk_print_settings_get_printer(GtkPrintSettings *settings)
GDK_AVAILABLE_IN_ALL void gtk_print_settings_set_n_copies(GtkPrintSettings *settings, int num_copies)
void(* GtkPrintSettingsFunc)(const char *key, const char *value, gpointer user_data)
GDK_AVAILABLE_IN_ALL double gtk_print_settings_get_scale(GtkPrintSettings *settings)
GDK_AVAILABLE_IN_ALL GtkPrintDuplex gtk_print_settings_get_duplex(GtkPrintSettings *settings)
GDK_AVAILABLE_IN_ALL void gtk_print_settings_set_use_color(GtkPrintSettings *settings, gboolean use_color)
GDK_AVAILABLE_IN_ALL int gtk_print_settings_get_int(GtkPrintSettings *settings, const char *key)
GDK_AVAILABLE_IN_ALL void gtk_print_settings_set_scale(GtkPrintSettings *settings, double scale)
GDK_AVAILABLE_IN_ALL void gtk_print_settings_set_bool(GtkPrintSettings *settings, const char *key, gboolean value)
GDK_AVAILABLE_IN_ALL double gtk_print_settings_get_printer_lpi(GtkPrintSettings *settings)
GDK_AVAILABLE_IN_ALL void gtk_print_settings_set_finishings(GtkPrintSettings *settings, const char *finishings)
GDK_AVAILABLE_IN_ALL gboolean gtk_print_settings_has_key(GtkPrintSettings *settings, const char *key)
GDK_AVAILABLE_IN_ALL void gtk_print_settings_set(GtkPrintSettings *settings, const char *key, const char *value)
GDK_AVAILABLE_IN_ALL GtkPrintSettings * gtk_print_settings_copy(GtkPrintSettings *other)
GDK_AVAILABLE_IN_ALL double gtk_print_settings_get_length(GtkPrintSettings *settings, const char *key, GtkUnit unit)
GDK_AVAILABLE_IN_ALL void gtk_print_settings_to_key_file(GtkPrintSettings *settings, GKeyFile *key_file, const char *group_name)
GDK_AVAILABLE_IN_ALL void gtk_print_settings_set_length(GtkPrintSettings *settings, const char *key, double value, GtkUnit unit)
GDK_AVAILABLE_IN_ALL gboolean gtk_print_settings_load_file(GtkPrintSettings *settings, const char *file_name, GError **error)
GDK_AVAILABLE_IN_ALL void gtk_print_settings_set_paper_size(GtkPrintSettings *settings, GtkPaperSize *paper_size)
GDK_AVAILABLE_IN_ALL GtkNumberUpLayout gtk_print_settings_get_number_up_layout(GtkPrintSettings *settings)
GDK_AVAILABLE_IN_ALL int gtk_print_settings_get_int_with_default(GtkPrintSettings *settings, const char *key, int def)
GDK_AVAILABLE_IN_ALL void gtk_print_settings_set_media_type(GtkPrintSettings *settings, const char *media_type)
GDK_AVAILABLE_IN_ALL void gtk_print_settings_set_number_up_layout(GtkPrintSettings *settings, GtkNumberUpLayout number_up_layout)
GDK_AVAILABLE_IN_ALL GtkPageOrientation gtk_print_settings_get_orientation(GtkPrintSettings *settings)
GDK_AVAILABLE_IN_ALL void gtk_print_settings_set_resolution_xy(GtkPrintSettings *settings, int resolution_x, int resolution_y)
GDK_AVAILABLE_IN_ALL void gtk_print_settings_set_output_bin(GtkPrintSettings *settings, const char *output_bin)
GDK_AVAILABLE_IN_ALL int gtk_print_settings_get_resolution_y(GtkPrintSettings *settings)
GDK_AVAILABLE_IN_ALL const char * gtk_print_settings_get_media_type(GtkPrintSettings *settings)
GDK_AVAILABLE_IN_ALL void gtk_print_settings_unset(GtkPrintSettings *settings, const char *key)
GDK_AVAILABLE_IN_ALL void gtk_print_settings_set_int(GtkPrintSettings *settings, const char *key, int value)
GDK_AVAILABLE_IN_ALL void gtk_print_settings_set_print_pages(GtkPrintSettings *settings, GtkPrintPages pages)
GDK_AVAILABLE_IN_ALL double gtk_print_settings_get_paper_height(GtkPrintSettings *settings, GtkUnit unit)
GDK_AVAILABLE_IN_ALL gboolean gtk_print_settings_get_bool(GtkPrintSettings *settings, const char *key)
GDK_AVAILABLE_IN_ALL void gtk_print_settings_set_quality(GtkPrintSettings *settings, GtkPrintQuality quality)
GDK_AVAILABLE_IN_ALL GtkPrintSettings * gtk_print_settings_new_from_gvariant(GVariant *variant)
GDK_AVAILABLE_IN_ALL void gtk_print_settings_set_paper_width(GtkPrintSettings *settings, double width, GtkUnit unit)
GDK_AVAILABLE_IN_ALL GtkPrintSettings * gtk_print_settings_new_from_file(const char *file_name, GError **error)
GDK_AVAILABLE_IN_ALL int gtk_print_settings_get_resolution_x(GtkPrintSettings *settings)
GDK_AVAILABLE_IN_ALL void gtk_print_settings_set_duplex(GtkPrintSettings *settings, GtkPrintDuplex duplex)
GDK_AVAILABLE_IN_ALL GtkPaperSize * gtk_print_settings_get_paper_size(GtkPrintSettings *settings)
GDK_AVAILABLE_IN_ALL gboolean gtk_print_settings_get_use_color(GtkPrintSettings *settings)
GDK_AVAILABLE_IN_ALL const char * gtk_print_settings_get(GtkPrintSettings *settings, const char *key)
typedefG_BEGIN_DECLS struct _GtkPrintSettings GtkPrintSettings
GDK_AVAILABLE_IN_ALL const char * gtk_print_settings_get_output_bin(GtkPrintSettings *settings)
GDK_AVAILABLE_IN_ALL void gtk_print_settings_set_number_up(GtkPrintSettings *settings, int number_up)
GDK_AVAILABLE_IN_ALL int gtk_print_settings_get_resolution(GtkPrintSettings *settings)
GDK_AVAILABLE_IN_ALL const char * gtk_print_settings_get_finishings(GtkPrintSettings *settings)
GDK_AVAILABLE_IN_ALL void gtk_print_settings_foreach(GtkPrintSettings *settings, GtkPrintSettingsFunc func, gpointer user_data)
GDK_AVAILABLE_IN_ALL double gtk_print_settings_get_double(GtkPrintSettings *settings, const char *key)
GDK_AVAILABLE_IN_ALL GtkPageRange * gtk_print_settings_get_page_ranges(GtkPrintSettings *settings, int *num_ranges)
GDK_AVAILABLE_IN_ALL gboolean gtk_print_settings_get_reverse(GtkPrintSettings *settings)
GDK_AVAILABLE_IN_ALL void gtk_print_settings_set_double(GtkPrintSettings *settings, const char *key, double value)
gsize GType
Definition gtype.h:427
gint gboolean
Definition gtypes.h:56
void * gpointer
Definition gtypes.h:109
typedefG_BEGIN_DECLS struct _GVariant GVariant
Definition gvariant.h:36
int value
Definition lsqlite3.c:2155
static void error(LoadState *S, const char *why)
static void reverse(lua_State *L, StkId from, StkId to)