Commit Graph

84 Commits

Author SHA1 Message Date
Marek Kasik
c44b0d2f7a Check for details request before print
Checks for details request before sending a job to a printer.
Shows busy state indication (cursor + status field).
This avoids printing to wrong printer (bug #576601).
2009-08-06 09:11:31 +02:00
Marek Kasik
98cdcce349 Change position of paper's dimensions according to reading direction
Change position of paper's dimensions in GtkPrintUnixDialog according
to reading direction.
2009-07-17 16:33:16 +02:00
Marek Kasik
0ef74c936f Add paper size combo and orientation combo to print dialog
Paper size combo and orientation combo can be added by
gtk_print_operation_set_embed_page_setup_dialog() to GtkPrinUnixDialog
now. This function induce calling of
gtk_print_unix_dailog_set_embed_page_setup_dialog() after creation of
dialog. These two functions control embed-page-setup-dialog properties
in GtkPrintOperation and in GtkPrintUnixDialog.
There is also new function gtk_print_unix_dialog_get_page_setup_set()
which says whether page setup was set by user.
Selected page setup is stored as default page setup in
GtkPrintOperation.
New class is added, its name is GtkCustomPaperUnixDialog. The class
manages custom sizes. It is derived from GtkPageSetupUnixDialog's
CustomPaperDialog structure.
Page layout preview is modified, so, it shows dimensions of current
page setup (mm or inch - depends on locale). It also shows the name of
actual paper if page setup dialog is not embedded (paper size combo is
not visible).
gtk-demo is actualized to include this new feature.
2009-07-10 11:28:31 +02:00
Matthias Clasen
8cca80d6a2 Improve handling of print-to-file uri
Going from print-to-file to a real printer and back used to nuke
an app-provided uri; now we keep the initial settings around to
avoid that.  Fixes bug 587086.
2009-06-28 16:14:21 -04:00
Matthias Clasen
1a42be00b4 Whitespace cleanups 2009-06-28 16:13:33 -04:00
Marek Kasik
a12a583c99 Add ability to print selection
Add a new radio button "Selection" to the print dialog. Its presence
depends on calling of functions gtk_print_operation_set_support_selection()
and gtk_print_dialog_unix_set_support_selection().
Sensitivity of the radio depends on calling of
functions gtk_print_operation_set_has_selection() and
gtk_print_dialog_unix_set_has_selection().
There are new properties GtkPrintUnixDialog::support-selection,
GtkPrintUnixDialog::has-selection, GtkPrintOperation::support-selection
and GtkPrintOperation::has-selection. Corresponding getters are
gtk_print_dialog_unix_get_support_selection(),
gtk_print_dialog_unix_get_has_selection(),
gtk_print_operation_get_support_selection() and
gtk_print_operation_get_has_selection().
Application has to set number of pages to which the selection will be formated
in GtkPrintOperation::begin-print's callback by the
gtk_print_operation_set_n_pages() function (bug #344519).
There is also new property GtkPrintUnixDialog::manual-capabilities controled by
gtk_print_unix_dialog_set_manual_capabilities() and
gtk_print_unix_dialog_get_manual_capabilities().
2009-06-08 15:37:32 +02:00
Marek Kasik
91190ce281 Add ability to print in number-up mode for file backend and lpr backend
GtkPrintOperation is now able to render multiple pages per sheet by its
own. The most important changes are in these functions:
  * increment_page_sequence
  * prepare_data
  * common_render_page
  * print_pages_idle
Patch also changes set of choices for 2 pages per sheet mode when
landscape orientation is used to "Top to bottom" and "Bottom to top".
2009-05-13 18:28:42 +02:00
Marek Kasik
2c5ae21cdc Adds authentication support of CUPS backend
Adds authentication support of CUPS backend against CUPS server.
Print dialog is now capable to ask user for password and pass it
to the CUPS server. It is also possible to authenticate user
through Kerberos (GSS-API) (#384940).
2009-04-21 14:24:32 +02:00
Marek Kasik
6e121ee85e Allow the custom widget to actualize on a printer change
Passes print settings and page setup to the custom widget
through a new "update-custom-widget" signal (#564854).
2009-04-21 13:06:49 +02:00
Matthias Clasen
f0b4779d56 Improve accessible name
Change the accessible name of an entry in the print dialog from "At"
to "Time of print". String addition. (#577964)
2009-04-10 00:09:27 -04:00
Matthias Clasen
b9355968fc Improve accessibility of the print dialog
Add accessible name and description to the "Pages" and "At" entries,
and improve focus handling.  (#577964)
2009-04-08 00:12:54 -04:00
Matthias Clasen
45ac4f2523 Improve focus handling in the print dialog
Move the focus to the range entry when selecting the "Pages".
2009-04-07 23:51:52 -04:00
Marek Kasik
6dbb29a5d4 Bug 561801 - "scheduled printing" doesn't function as expected
2009-01-21  Marek Kasik  <mkasik@redhat.com>
	Bug 561801 - "scheduled printing" doesn't function as expected

	* gtk/gtkprintunixdialog: Add tooltip.
	* modules/printbackends/cups/gtkprintbackendcups.c: Add conversion
	  from local time to utc time for scheduled printing.

svn path=/trunk/; revision=22158
2009-01-21 15:03:14 +00:00
Matthias Clasen
1b62d9ebda Don't export emit_ok_response
2008-12-15  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkprintunixdialog.c: Don't export emit_ok_response


svn path=/trunk/; revision=21909
2008-12-15 19:55:21 +00:00
Marek Kasik
0212f0457c Bug 560135 - Print when the user double clicks a printer
2008-11-10  Marek Kasik  <mkasik@redhat.com>

	Bug 560135 - Print when the user double clicks a printer

	* gtk/gtkprintunixdialog.c: add handling of double click to
	GtkPrintUnixDialog.

svn path=/trunk/; revision=21775
2008-11-10 15:33:44 +00:00
Matthias Clasen
29c097a5f7 Show the tooltip on the range entry itself, too.
2008-10-06  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkprintunixdialog.c (create_main_page): Show the tooltip
        on the range entry itself, too.


svn path=/trunk/; revision=21591
2008-10-06 18:26:27 +00:00
Marek Kasik
1d7c1e13e8 Bug 344522 – support non-local destination files (GtkPrint):
2008-09-30  Marek Kasik  <mkasik@redhat.com>

	Bug 344522 – support non-local destination files (GtkPrint):

	* gtk/gtkprintunixdialog.c
	* gtk/gtkprinteroptionwidget.c: Process URI instead of filename.
	* modules/printbackends/file/gtkprintbackendfile.c: Add ability
	to save files on non-local filesystems.

svn path=/trunk/; revision=21552
2008-09-30 08:45:01 +00:00
Matthias Clasen
8ec27f7760 Bug 346903 – gtk_enumerate_printers needs events to complete
2008-09-17  Matthias Clasen  <mclasen@redhat.com>

        Bug 346903 – gtk_enumerate_printers needs events to complete

        * gtk/gtkprintbackend.h:
        * gtk/gtkprintbackend.c: Add a GtkPrintBackend::status property.

        * modules/printbackends/cups/gtkcupsutils.h:
        * modules/printbackends/cups/gtkcupsutils.c: Turn the connection
        test into a tristate available/unavailable/in progress.

        * modules/printbackends/cups/gtkprintbackendcups.c: Use a single
        connection test instance for getting the default printer and for
        getting the printer list. Set the GtkPrintBackend::status property
        according to the result of the connection test. Use the printer-type
        attribute to find the default printer, if cups supports it.

        * gtk/gtkprinter.c: When enumerating printers, give up when
        the backend status is 'unavailable'.

        * gtk/gtkprintunixdialog.c (printer_status_cb): Select the printer
        when it is the default and nothing else has been selected yet.


svn path=/trunk/; revision=21417
2008-09-17 22:07:10 +00:00
Matthias Clasen
861ac4ad76 Add nicks for the GtkNumberUpLayout values.
2008-09-04  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkenums.h: Add nicks for the GtkNumberUpLayout values.

        * gtk/gtkprintunixdialog.c:
        * gtk/gtkprintsettings.c: Simplify the handling of GtkNumberUpLayout
        values. Followup on #535158, proposed by Christian Persch.

2008-09-04  Matthias Clasen  <mclasen@redhat.com>

        * INSTALL.in: Update required versions


svn path=/trunk/; revision=21289
2008-09-04 14:14:11 +00:00
Matthias Clasen
6e5de0a796 Add translator hints here too
svn path=/trunk/; revision=21201
2008-08-25 22:02:25 +00:00
Marek Kasik
6e7941db6d Bug 535158 – can't rearrange the order of multi pages per side
2008-08-21  Marek Kasik  <mkasik@redhat.com>

	Bug 535158 – can't rearrange the order of multi pages per side

	* gtk/gtkprinter.c
	* gtk/gtkprinter.h
	* gtk/gtkprintunixdialog.c
	* gtk/gtkprintsettings.c
	* gtk/gtkprintsettings.h
	* gtk/gtkenums.h
	* modules/printbackends/cups/gtkprintbackendcups.c: Allow user to
	specify layout of pages per sheet in number-up mode

svn path=/trunk/; revision=21175
2008-08-21 10:25:27 +00:00
Michael Natterer
d9d3379698 gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkentry.c
2008-08-12  Michael Natterer  <mitch@imendio.com>

	* gtk/gtkaccellabel.c
	* gtk/gtkcalendar.c
	* gtk/gtkclist.c
	* gtk/gtkentry.c
	* gtk/gtkeventbox.c
	* gtk/gtkfilechooserbutton.c
	* gtk/gtkfilechooserdefault.c
	* gtk/gtkhandlebox.c
	* gtk/gtkhsv.c
	* gtk/gtkiconview.c
	* gtk/gtkimage.c
	* gtk/gtklayout.c
	* gtk/gtklistitem.c
	* gtk/gtkmenuitem.c
	* gtk/gtkmessagedialog.c
	* gtk/gtknotebook.c
	* gtk/gtkpaned.c
	* gtk/gtkpathbar.c
	* gtk/gtkplug.c
	* gtk/gtkprintunixdialog.c
	* gtk/gtkrange.c
	* gtk/gtkrecentchooserdefault.c
	* gtk/gtkruler.c
	* gtk/gtksocket.c
	* gtk/gtktext.c
	* gtk/gtktextview.c
	* gtk/gtktoolbar.c
	* gtk/gtktreeitem.c
	* gtk/gtktreeview.c
	* gtk/gtkviewport.c
	* gtk/gtkwin32embedwidget.c: chain up unconditionally in
	realize(), unrealize(), map(), unmap(), style_set(),
	key_press_event() and size_request()


svn path=/trunk/; revision=21088
2008-08-12 09:44:32 +00:00
Matthias Clasen
1eb96eadfc Bug 384940 – handle rejecting jobs and authentication meaningfully
Patch by Marek Kasik, icons by Mike Langlie:
        * gtk/gtk.symbols:
        * gtk/gtkprintbackend.h:
        * gtk/gtkprinter.[hc]: Add new paused and accepting-jobs properties
        and getters/setters.

        * gtk/gtkstock.h:
        * gtk/gtkiconfactory.c:
        * gtk/Makefile.am:
        * gtk/stock-icons/{16,24}/gtk-print-paused.{png,svg}: New icon.

        * modules/printbackends/cups/gtkprintbackendcups.c:
        * gtk/gtkprintunixdialog.c: Handle paused and job-rejecting
        printers.


svn path=/trunk/; revision=20838
2008-07-15 17:34:34 +00:00
Matthias Clasen
3f26314d0f Bug 531008 – Crash in gtkprintunixdialog.c
* gtk/gtkprintunixdialog.c: Disconnect signal handlers when
        the dialog closes. Patch by Yevgen Muntyan.


svn path=/trunk/; revision=20186
2008-05-27 04:48:31 +00:00
Sven Neumann
d0ffa630f5 respect the GTK_NO_WINDOW flag and don't create an output window if it is
2008-05-25  Sven Neumann  <sven@gimp.org>

	* gtk/gtkdrawingarea.c (gtk_drawing_area_realize)
	(gtk_drawing_area_size_allocate): respect the GTK_NO_WINDOW flag
	and don't create an output window if it is set.

	* gtk/gtkprintunixdialog.c: set the GTK_NO_WINDOW flag for the
	drawing areas. Fixes bug #519317.


svn path=/trunk/; revision=20148
2008-05-25 12:53:59 +00:00
Matthias Clasen
59ae44d00e RH bug 204621 - "GtkPrint" asks for "Letter" size paper when "A4" size
was chosen

        Patch by Marek Kasik.

        * gtk/gtk.symbols:
        * gtk/gtkprinter.[hc]: Add gtk_printer_get_default_page_size.

        * gtk/gtkprintbackend.[hc]: Add fallback implementation.

        * modules/printbackends/file/gtkprintbackendfile.c:
        * modules/printbackends/cups/gtkprintbackendcups.c: Implement
        get_default_page_size.

        * gtk/gtkpagesetupunixdialog.c: When selecting a different printer,
        select its default paper size.

        * gtk/gtkprintunixdialog.c: If no explicit page setup has been set,
        use the printer default.

        * gtk/gtkprintoperation-unix.c: Don't create an empty page setup
        if we don't have a default page setup.

svn path=/trunk/; revision=20120
2008-05-21 02:17:30 +00:00
Sven Neumann
04466bac87 gtk/gtkfilechooserdefault.c set alternative button order for overwrite
2008-03-13  Sven Neumann  <sven@gimp.org>

	* gtk/gtkfilechooserdefault.c
	* gtk/gtkprintunixdialog.c: set alternative button order for
	overwrite confirmation dialogs (bug #522191).

svn path=/trunk/; revision=19866
2008-03-13 14:09:02 +00:00
Sven Neumann
c59ceab0fc added some line-breaks for readability.
2008-03-13  Sven Neumann  <sven@gimp.org>

	* gtk/gtkprintunixdialog.c (add_custom_button_to_dialog)
	(overwrite_confirmation_dialog): added some line-breaks for
	readability.

svn path=/trunk/; revision=19862
2008-03-13 09:22:48 +00:00
Matthias Clasen
b7aeafa395 Add an overwrite confirmation dialog for print-to-file. (#474302, Marek
2008-03-12  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkprintunixdialog.c: Add an overwrite confirmation
        dialog for print-to-file.  (#474302, Marek Kašík)



svn path=/trunk/; revision=19787
2008-03-12 18:02:29 +00:00
Paolo Borelli
5c1a343c75 do not leak the pango layout, fixes #512375.
2008-01-28  Paolo Borelli  <pborelli@katamail.com>

	* gtk/gtkprintunixdialog.c (draw_page_cb): do not leak the pango
	layout, fixes #512375.


svn path=/trunk/; revision=19419
2008-01-28 16:06:16 +00:00
Christian Persch
88e5b9d26e Plug a mem leak. Bug #506107.
2007-12-31  Christian Persch  <chpe@gnome.org>

	* gtk/gtkprintunixdialog.c: (gtk_print_unix_dialog_get_property):
	Plug a mem leak. Bug #506107.

svn path=/trunk/; revision=19290
2007-12-31 00:04:32 +00:00
Yevgen Muntyan
6003bcbd96 added alternative button order in Print and Page Setup dialogs.
2007-12-07  Yevgen Muntyan  <muntyan@tamu.edu>

	* gtk/gtkprintunixdialog.c:
	* gtk/gtkpagesetupunixdialog.c: added alternative button order in
	Print and Page Setup dialogs.


svn path=/trunk/; revision=19126
2007-12-07 18:05:42 +00:00
Matthias Clasen
fa0328da18 Change some labels to be clearer. String change ! (#376361, Sven Neumann)
2007-11-26  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkprintunixdialog.c: Change some labels to be clearer.
        String change !   (#376361, Sven Neumann)


svn path=/trunk/; revision=19061
2007-11-26 18:27:20 +00:00
Matthias Clasen
1a869c046a Add an internal child name for the notebook, so that GtkBuilder can be
2007-09-07  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkprintunixdialog.c: Add an internal child name for
        the notebook, so that GtkBuilder can be used to add custom tabs.
        (#472951, Christian Persch)


svn path=/trunk/; revision=18757
2007-09-07 20:03:22 +00:00
Matthias Clasen
57c44b18e7 Port to use new tooltips API. (#451397, Jan Arne Petersen)
2007-07-24  Matthias Clasen  <mclasen@redhat.com>

        * gtkcolorsel.c:
        * gtkfilechooserdefault.c:
        * gtkpagesetupunixdialog.c:
        * gtkprintunixdialog.c: Port to use new tooltips API.
        (#451397, Jan Arne Petersen)


svn path=/trunk/; revision=18539
2007-07-24 15:18:42 +00:00
Carlos Garcia Campos
eb7f97bb9b Add new capability GTK_PRINT_CAPABILITY_NUMBER_UP.
2007-05-28  Carlos Garcia Campos  <carlosgc@gnome.org>
	* gtk/gtkprinter.[ch]: Add new capability
	GTK_PRINT_CAPABILITY_NUMBER_UP.
	* docs/reference/gtk/tmpl/gtkprintunixdialog.sgml: 
	* gtk/gtkprintunixdialog.c: (update_dialog_from_capabilities):
	* modules/printbackends/file/gtkprintbackendfile.c:
	(file_printer_get_options), (file_printer_get_settings_from_options):
	* modules/printbackends/cups/gtkprintbackendcups.c:
	(cups_printer_get_capabilities): Add a new print capability to specify
	whether print dialog will offer printing multiple pages per sheet. (#398414)

svn path=/trunk/; revision=17963
2007-05-28 10:41:09 +00:00
Yevgen Muntyan
1a534510aa missing #include <ctype.h>.
2007-05-23  Yevgen Muntyan  <muntyan@tamu.edu>

	* gtk/gtkprintunixdialog.c: missing #include <ctype.h>.

	* gtk/gtkhandlebox.c (gtk_handle_box_paint):
	* gtk/gtkpagesetupunixdialog.c (_gtk_load_custom_papers):
	* gtk/gtkstatusbar.c (gtk_statusbar_get_context_id):
	* gtk/gtkiconcache.c (_gtk_icon_cache_new_for_path):
	* gtk/gtktrayicon-x11.c (gtk_tray_icon_send_dock_request):
	* gtk/gtkpreview.c (gtk_preview_finalize):
	* gtk/gtknotebook.c (gtk_notebook_set_group_id):
	* tests/testnotebookdnd.c (window_creation_function):
	* tests/testiconview.c (do_popup_menu):
	Fixed some compiler warnings (#440689).

svn path=/trunk/; revision=17898
2007-05-23 15:06:03 +00:00
Christian Persch
be87e9a8cd Make gtk_printer_get_capabilities public, and move the
2007-04-30  Christian Persch  <chpe@gnome.org>

	* docs/reference/gtk/gtk-sections.txt:
	* gtk/gtk.symbols:
	* gtk/gtkprinter-private.h:
	* gtk/gtkprinter.c: (gtk_printer_get_capabilities),
	(gtk_print_capabilities_get_type):
	* gtk/gtkprinter.h:
	* gtk/gtkprintunixdialog.c: (selected_printer_changed):
	Make gtk_printer_get_capabilities public, and move the
	GtkPrintCapabilities definition to gtkprinter.h. Bug #390437.

svn path=/trunk/; revision=17746
2007-04-30 19:12:00 +00:00
Matthias Clasen
6573ed5f12 Fix some compiler warnings. (#433642, Kjartan Maraas)
2007-04-30  Matthias Clasen  <mclasen@redhat.com>

        Fix some compiler warnings.  (#433642, Kjartan Maraas)

        * gtk/gtkfilesystemwin32.c (gtk_file_system_win32_get_info):
        (gtk_file_system_win32_create_folder):
        * gtk/gtkaction.c (gtk_action_create_menu): Fix NULL/FALSE confusion.

        * gtk/gtklinkbutton.c (gtk_link_button_clicked): Pass
        the right type to uri_func.

        * gtk/gtktext.c (gtk_text_key_press):
        * gtk/gtkstatusicon.c (gtk_status_icon_get_property):
        * gtk/gtkxembed.c (_gtk_xembed_send_message): Add casts.

        * gtk/gtktrayicon-x11.c (gtk_tray_icon_manager_window_destroyed):
        (gtk_tray_icon_delete):
        * gtk/gtkprintunixdialog.c (create_main_page):
        * gtk/gtkhsv.c (gtk_hsv_motion): Remove unused variables.

        * gtk/gtkliststore.c: Adapt callbacks to GSequence types.


svn path=/trunk/; revision=17739
2007-04-30 16:18:54 +00:00
Matthias Clasen
69b57df8ce Remove leftover debugging spew
svn path=/trunk/; revision=17717
2007-04-29 23:21:32 +00:00
Matthias Clasen
bcbbbe5101 Make gtk_printer_has_details() and gtk_printer_request_details() public.
2007-04-29  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtk.symbols:
        * gtk/gtkprinter-private.h:
        * gtk/gtkprinter.[hc]: Make gtk_printer_has_details() and
        gtk_printer_request_details() public.

        * gtk/gtkpagesetupunixdialog.c:
        * gtk/gtkprintunixdialog.c: Update callers.  (#389203,
        Christian Persch)



svn path=/trunk/; revision=17690
2007-04-29 04:42:13 +00:00
Matthias Clasen
8f409578f2 Parse half-open ranges like -2 or 3-, and be a bit more liberal about
2007-04-24  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkprintunixdialog.c (dialog_get_page_ranges): Parse
        half-open ranges like -2 or 3-, and be a bit more liberal
        about whitespace.
        (dialog_set_page_ranges): Support half-open ranges.

        * gtk/gtkprintoperation.c (print_pages_idle): Substitute the
        number of pages in half-open ranges.
        (preview_iface_is_selected): Support half-open ranges here, too.



svn path=/trunk/; revision=17627
2007-04-24 20:16:35 +00:00
Matthias Clasen
7a66837a80 Scroll to make the selected printer visible. (#418403, Nickolay V.
2007-03-16  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkprintunixdialog.c (printer_added_cb): Scroll to
        make the selected printer visible.  (#418403, Nickolay V. Shmyrev,
        patch by Christian Persch)



svn path=/trunk/; revision=17531
2007-03-16 05:13:10 +00:00
Matthias Clasen
3f9deb4aeb Change a label
svn path=/trunk/; revision=17356
2007-02-26 19:12:22 +00:00
Matthias Clasen
721c3bc101 Replace a lot of idle and timeout calls by the new gdk_threads api.
2006-12-22  Matthias Clasen  <mclasen@redhat.com>

        * *.c: Replace a lot of idle and timeout calls by
        the new gdk_threads api.
2006-12-22 19:10:43 +00:00
Matthias Clasen
ce503485cb Add a tooltip explaining the format of page ranges, and improve the page
2006-12-19  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkprintunixdialog.c: Add a tooltip explaining the
        format of page ranges, and improve the page sequence icon
        for the case of n_copies == 1.
2006-12-20 04:39:52 +00:00
Matthias Clasen
c078d6af69 Improve print dialog 2006-12-06 15:17:40 +00:00
Matthias Clasen
192f2ec215 Fix a typo. (#359542, Ghee Teo)
2006-10-08  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkprintunixdialog.c (update_dialog_from_capabilities): Fix
	a typo.  (#359542, Ghee Teo)
2006-10-08 19:39:15 +00:00
Matthias Clasen
c7ab7fb60b Remove leftover debugging 2006-08-17 04:51:40 +00:00
Matthias Clasen
2b2b742048 Re-select the current printer to update per-printer ui. (#348245, Don
2006-08-17  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkprintunixdialog.c (gtk_print_unix_dialog_set_manual_capabilities):
	Re-select the current printer to update per-printer ui.
	(#348245, Don Scorgie)
2006-08-17 04:48:39 +00:00