Commit Graph

54 Commits

Author SHA1 Message Date
Chun-wei Fan
17fe2288e8 gtk/gtkprintoperation-win32.c: Fix for GTK+-4.0 API
We no longer have GtkPlug nor GtkWin32EmbedManifest for GTK+-4.x, and it
is not entirely clear at this point what would be the "best" replacement
for them, but this issue here prevents GTK+-3.89.x building on Windows.

As a result, this is a fast port to avoid using APIs that have been
removed for 4.x, and things seem to work properly (the print.c page
printed).

https://bugzilla.gnome.org/show_bug.cgi?id=773299
2016-11-22 11:40:57 +08:00
Matthias Clasen
bbd94b5a9f gtk: Strip newlines from g_warning and g_error
g_logv adds one for us already.
2016-02-28 12:23:12 -05:00
Benjamin Otte
0ea9131ff7 printoperation-win32: Silence gcc 2016-02-11 03:44:47 +01:00
Руслан Ижбулатов
5ed5d11632 W32: bump _WIN32_WINNT and WINVER to 0x600 (Vista)
Move gdkprivate-win32.h include to ensure that this change affects gdkevents-win32.c
2015-04-29 21:12:14 +00:00
Руслан Ижбулатов
a0faf5a51c Fix various warnings
https://bugzilla.gnome.org/show_bug.cgi?id=734737
2014-08-13 23:41:56 +00:00
Chun-wei Fan
7a3bc9a5ff gtk/gtkprintoperation-win32.c: Fix Missed Include
We need to include gtkprivate.h for _gtk_load_dll_with_libgtk3_manifest().
2014-08-06 12:55:09 +08:00
Руслан Ижбулатов
0d02cc8203 Make sure native W32 print dialog uses visual styles
For that to happen the libgtk3 is embedded with a manifest that requests
common controls library 6.x, and GTK lazily calls InitCommonControlsEx()
to initialize those. Then this manifest is used to temporarily override
the process activation contest when loading comdlg32 (which contains the
code for the print dialog), ensuring that it too depends on common
controls 6.x, even if the application that uses GTK does not.

https://bugzilla.gnome.org/show_bug.cgi?id=733773
2014-08-05 06:41:31 +00:00
Bastien Nocera
438cd857c4 all: Add names to timeouts
Add names to every timeout we setup, so it's easier to track their
usage, and debug possible misbehaviour.

https://bugzilla.gnome.org/show_bug.cgi?id=710651
2013-10-23 13:31:18 +02:00
Chun-wei Fan
9232899c69 gtkprintoperation-win32.c: Drop unneeded include
Don't include gtkstock.h as it's not really needed here, and it has been
recently deprecated.

https://bugzilla.gnome.org/show_bug.cgi?id=705060
2013-07-29 20:10:03 -04:00
Javier Jardón
9d0febc9a6 Change FSF Address 2012-02-27 17:06:11 +00:00
Morten Welinder
fefe8e7c8c win32: Actually check for IPrintDialogCallback in configure 2011-11-10 17:41:08 +01:00
Benjamin Otte
1b18916a74 win32: Make GtkWin32EmbedWidget use HWND instead of GdkNativeWindow 2011-01-28 17:06:07 +01:00
Hans Breuer
a2b1da064a win32: ported backend specific code to now backend specific API 2011-01-02 13:33:08 +01:00
Benjamin Otte
d9c9259861 Move GtkSizeRequest into GtkWidget
It doesn't make sense to keep them separate as GtkSizeRequest requires a
GtkWidget and GtkWidget implements GtkSizeRequest, so you can never have
one without the other.
It also makes the code a lot easier because no casts are required when
calling functions.

Also, the names would translate to gtk_widget_get_width() and people
agreed that this would be a too generic name, so a "preferred" was added
to the names.

So this patch moves the functions:
gtk_size_request_get_request_mode() => gtk_widget_get_request_mode()
gtk_size_request_get_width() => gtk_widget_get_preferred_width()
gtk_size_request_get_height() => gtk_widget_get_preferred_height()
gtk_size_request_get_size() => gtk_widget_get_preferred_size()
gtk_size_request_get_width_for_height() =>
  gtk_widget_get_preferred_width_for_height()
gtk_size_request_get_height_for_width() =>
  gtk_widget_get_preferred_height_for_width()
... and moves the corresponding vfuncs to the GtkWidgetClass.

The patch also renames the implementations of the vfuncs in widgets to
include the word "preferrred".
2010-09-26 15:11:45 +02:00
Javier Jardón
b140884fec Use gtk_size_request_get_size() instead deprecated gtk_widget_size_request()
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=629598

Signed-off-by: Javier Jardón <jjardon@gnome.org>
Signed-off-by: Tristan Van Berkom <tristanvb@openismus.com>
2010-09-15 03:02:58 +02:00
Tor Lillqvist
f76fddb8a7 Use accessor functions in Win32-only code 2010-09-09 11:09:55 +03:00
Fridrich Štrba
c4b129bac2 Fix 32-bit Windows build using mingw-w64 toolchain 2010-08-03 03:01:49 +02:00
Javier Jardón
0a07e9733b gtk/: fully remove gtkalias hacks
https://bugzilla.gnome.org/show_bug.cgi?id=623845
2010-07-10 02:51:26 +02:00
Tor Lillqvist
a46d2e68c6 Check for __MINGW64__ and not __MINGW64
Should fix bug #612308.
2010-03-12 11:47:15 +02:00
Adrian Johnson
6e351f9214 Set win32 printer hard margins on print context 2009-12-05 13:51:37 +01:00
Christian Persch
723c16d6cd Revert "Set win32 printer hard margins on print context"
This reverts commit a42107389f.
2009-12-01 19:00:58 +01:00
Adrian Johnson
a42107389f Set win32 printer hard margins on print context 2009-12-01 17:40:16 +01:00
Adrian Johnson
9f2c5e3b3a Take printer margins into account on Windows
Fixes bug #381371.
2009-10-27 12:30:50 +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
Tor Lillqvist
f3bcc940a6 Newer mingw-w64 uses an underscore-prefixed identification macro.
2009-03-17  Tor Lillqvist  <tml@novell.com>

	* gtk/gtkprintoperation-win32.c: Newer mingw-w64 uses an
	underscore-prefixed identification macro.


svn path=/trunk/; revision=22561
2009-03-17 12:58:40 +00:00
Tor Lillqvist
9be8382038 Don't need to declare IPrintDialogCallback with mingw64 either. It seems
2008-08-05  Tor Lillqvist  <tml@novell.com>

	* gtk/gtkprintoperation-win32.c: Don't need to declare
	IPrintDialogCallback with mingw64 either. It seems to come with
	newer versions of the headers.


svn path=/trunk/; revision=21001
2008-08-04 23:49:15 +00:00
Tor Lillqvist
4998d8c469 Bug 538686 - gtkprintoperation-win32.c: devmode_from_settings
2008-08-02  Tor Lillqvist  <tml@novell.com>

	Bug 538686 - gtkprintoperation-win32.c: devmode_from_settings

	* gtk/gtkprintoperation-win32.c (devmode_from_settings): Plug
	potential leak. Thanks to Morten Welinder.


svn path=/trunk/; revision=20944
2008-08-02 11:29:31 +00:00
Tor Lillqvist
c364ffa340 gtk/gtkprint-win32.c gtk/gtkprint-win32.h Cosmetic fixups after patch
2008-08-02  Tor Lillqvist  <tml@novell.com>

	* gtk/gtkprint-win32.c
	* gtk/gtkprint-win32.h
	* gtk/gtkprintoperation-win32.c: Cosmetic fixups after patch
	below.


svn path=/trunk/; revision=20943
2008-08-02 09:31:01 +00:00
Tor Lillqvist
8ce17cf990 Bug 339699 - implement gtk_print_operation_set_show_dialog for Windows
2008-08-02  Tor Lillqvist  <tml@novell.com>

	Bug 339699 - implement gtk_print_operation_set_show_dialog for
	Windows
	
	* gtk/gtkprint-win32.c
	* gtk/gtkprint-win32.h
	* gtk/gtkprintoperation-win32.c: Patch by ecyrbe@gmail.com.


svn path=/trunk/; revision=20942
2008-08-02 09:27:47 +00:00
Tor Lillqvist
29b6e6587a Fix problems in handling custom paper sizes. The DEVMODE::dmPaperWidth and
2008-07-30  Tor Lillqvist  <tml@novell.com>

	* gtk/gtkprintoperation-win32.c: Fix problems in handling custom
	paper sizes. The DEVMODE::dmPaperWidth and dmPaperLength are in
	tenths of a millimeter, and the RECT passed to CreateEnhMetaFile()
	is in hundredths of a millimeter. Patch by Sven Neumann.


svn path=/trunk/; revision=20916
2008-07-30 09:52:42 +00:00
Cody Russell
57223c9a05 Revert name change
svn path=/trunk/; revision=20724
2008-07-01 22:57:50 +00:00
Cody Russell
fce9c8b7d4 Practically everything changed.
2008-06-30  Cody Russell  <bratsche@gnome.org>

        * Practically everything changed.

        Change	all references	of GIMP	Toolkit	(and variations	of it)
        to GTK+	Toolkit, showing no mercy at all to our	beloved
	ancestry. (#540529)


svn path=/trunk/; revision=20709
2008-06-30 23:01:56 +00:00
Hans Breuer
d3ce448c20 fix 'function' : incompatible types - from 'struct _cairo *' to 'struct
2008-06-21  Hans Breuer  <hans@breuer.org>

	* gtk/gtkprintoperation-win32.c(1713) : fix 'function' : incompatible 
	types - from 'struct _cairo *' to 'struct _cairo_surface *' by
	passing the surface to cairo_surface_show_page(), not the context
	* gtk/gtkprintoperation-win32.c(866) : get rid of warning C4018: 
	'<' : signed/unsigned mismatch by using guint for the loop

	* gtk/gtkmenu.c(gtk_menu_get_property) : property 'menu::active' is 
	an uint, gtk_menu_get_active() returns the widget pointer. Convert
	the latter to the former by calculating the index in menu::children
	Also fix some occurences of g_return_if_fail() where 
	g_return_val_if_fail() was meant


svn path=/trunk/; revision=20662
2008-06-21 09:49:00 +00:00
Jody Goldberg
87caf0d3ae Fix life cycle to avoid crash. [#536966]
2008-06-20  Jody Goldberg <jody@gnome.org>

	* gtk/gtkprintoperation-win32.c (gtk_print_run_page_setup_dialog) : 
	  Fix life cycle to avoid crash. [#536966]

svn path=/trunk/; revision=20660
2008-06-21 00:53:17 +00:00
Christian Persch
446f41757b Use g_set_error_literal where appropriate. Bug #538640.
svn path=/trunk/; revision=20463
2008-06-19 12:47:48 +00:00
Cody Russell
5109ce1809 Fix variable declared in the middle of the block. (#526021, reported by
2008-04-03  Cody Russell  <bratsche@gnome.org>

        * gtk/gtkprintoperation-win32.c: Fix variable declared in the middle
        of the block. (#526021, reported by Kazuki IWAMOTO)


svn path=/trunk/; revision=19974
2008-04-03 17:58:53 +00:00
Cody Russell
b7e159658d Bump required Cairo to 1.5.2.
2008-04-01  Cody Russell  <bratsche@gnome.org>

        * configure.in: Bump required Cairo to 1.5.2.

        * gtk/gtkprintoperation-win32.c: Add support for using the new
        cairo_win32_printing_surface for printing. (#488833)


svn path=/trunk/; revision=19955
2008-04-01 20:46:18 +00:00
Tor Lillqvist
9e0fabe081 Set the GtkWin32EmbedWidget we create here as modal. Fixes #389358.
2007-09-24  Tor Lillqvist  <tml@novell.com>

	* gtk/gtkprintoperation-win32.c (pageDlgProc): Set the
	GtkWin32EmbedWidget we create here as modal. Fixes #389358.


svn path=/trunk/; revision=18860
2007-09-24 13:45:40 +00:00
Hans Breuer
17c60500bb take the custom tab label from gtk_print_operation_set_custom_tab_label()
2007-01-13  Hans Breuer <hans@breuer.org>

	* gtk/gtkprintoperation-win32.c : take the custom tab label from
	gtk_print_operation_set_custom_tab_label() into account (bug #390746).

svn path=/trunk/; revision=17139
2007-01-13 22:18:06 +00:00
Matthias Clasen
1bb498e3de Include windows.h (#391229, Kazuki Iwamoto)
2006-12-31  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkprintoperation-win32.c: Include windows.h (#391229,
        Kazuki Iwamoto)



svn path=/trunk/; revision=16995
2006-12-31 15:49:44 +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
f45a35921a Commit a patch by Behdad to fix typos, omissions and other errors in the
2006-09-10  Matthias Clasen  <mclasen@redhat.com>

        * Commit a patch by Behdad to fix typos, omissions and other
        errors in the symbol aliasing, and add checks for local PLT
        entries.  (#354687, Behdad Esfahbod)
2006-09-10 06:39:16 +00:00
Matthias Clasen
35756b3864 store scale in percent 2006-06-12 02:32:16 +00:00
Tor Lillqvist
b08305d2d7 Fix MSVC build problem. (#339739, Kazuki Iwamoto)
2006-06-11  Tor Lillqvist  <tml@novell.com>

	* gtk/gtkprintoperation-win32.c: Fix MSVC build problem. (#339739,
	Kazuki Iwamoto)
2006-06-11 19:59:58 +00:00
Alexander Larsson
79041f07cd Update windows to build with new APIs and first cut at preview work.
2006-06-08  Alexander Larsson  <alexl@redhat.com>

	* gtk/gtkprintoperation-win32.c:
	Update windows to build with new APIs and first cut
	at preview work.

	* gtk/gtkprintoperation-private.h:
	* gtk/gtkprintoperation-unix.c:
	* gtk/gtkprintoperation.c
	Various updates needed when making the preview work on win32.

	* tests/print-editor.c:
	Print, don't preview.
2006-06-08 09:09:50 +00:00
Alexander Larsson
fad69ba06c Add gtkprintoperationpreview.[ch] Set default preview command. Hardcoded
2006-06-02  Alexander Larsson  <alexl@redhat.com>

	* gtk/Makefile.am:
	Add gtkprintoperationpreview.[ch]
	Set default preview command. Hardcoded for now.

	* gtk/gtkmarshalers.list:
	Add BOOLEAN:OBJECT,OBJECT,OBJECT

	* gtk/gtkprintbackend.c:
	Add preview command property.

	* gtk/gtkprintcontext.[ch]:
	Make less dependent on PrintOperation for output settings
	Externally set cairo_t and dpi. Resettable.
	Create fontmap without metrics hinting (so that print preview
	text layout doesn't depend on zoom level).

	* gtk/gtkprintoperation-private.h:
	* gtk/gtkprintoperation-unix.c:
	* gtk/gtkprintoperation.[ch]:
	Initial work on print preview API and default implementation
	using an external preview app.

	* gtk/gtkprintoperation-win32.c:
	Some needed updates. Not done, needs more work.

	* gtk/gtkprintoperationpreview.[ch]:
	New interface used in print preview api.

	* gtk/gtkprintunixdialog.c:
	Add print preview dialog.

	* tests/print-editor.c:
	Test using an custom print preview widget.
2006-06-02 15:16:13 +00:00
Matthias Clasen
57a052b0b0 Add a boolean show-progress property, and show a progress dialog if it is
2006-05-23  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtk.symbols:
	* gtk/gtkprintoperation.h:
	* gtk/gtkprintoperation.c: Add a boolean show-progress
	property, and show a progress dialog if it is set to TRUE.

	* gtk/gtkprintoperation.c (pdf_end_run):
	* gtk/gtkprintoperation-win32.c (win32_end_run):
	* gtk/gtkprintoperation-unix.c (unix_end_run):
	* gtk/gtkprintoperation-private.h: Add a cancelled
	parameter to end_run, and call it even if the print
	operation was cancelled.
2006-05-23 16:30:45 +00:00
Alexander Larsson
07d2dd1700 Add gtk_print_unix_dialog_add_custom_tab
2006-05-23  Alexander Larsson  <alexl@redhat.com>

	* gtk/gtk.symbols:
	* gtk/gtkprintunixdialog.[ch]:
	Add gtk_print_unix_dialog_add_custom_tab

	* gtk/gtkprintoperation-unix.c:
	Implement custom widgets for unix.
	Fix some warnings by including cairo-ps/pdf.h

	* gtk/gtkprintoperation-win32.c:
	Mark string for translation.
2006-05-23 08:09:08 +00:00
Alexander Larsson
d2cb6c6eb2 Make sure grab-notify is emitted on toplevels as well as child widgets.
2006-05-22  Alexander Larsson  <alexl@redhat.com>

	* gtk/gtkmain.c:
	Make sure grab-notify is emitted on toplevels as well as
	child widgets.

	* gtk/Makefile.am:
	* gtk/gtkwin32embedwidget.[ch]
	Add new widget used for win32 port to embed gtk+
	widgets in windows dialog.

	* gtk/gtkmarshalers.list:
	Add POINTER:VOID

	* gtk/gtkprintoperation-private.h:
	* gtk/gtkprintoperation.[ch]:
	Generic support for custom widgets in print dialog.

	* gtk/gtkprintoperation-win32.c:
	Implement custom widget support for win32.

	* tests/print-editor.c:
	Allow setting of font using custom widgets in the print dialog.
2006-05-22 17:19:10 +00:00
Alexander Larsson
5d6935719a Fix printing build on win32 2006-05-17 07:36:59 +00:00