Commit Graph

393 Commits

Author SHA1 Message Date
Aric Stewart 745e7c93c9 wineps.drv: Allow for vertical text printing.
With extensive review and help from Huw Davies.
2013-08-01 20:43:40 +02:00
Alexandre Julliard d7ddcdfca7 wineps.drv: Don't bother to free memory at process exit. 2013-05-17 12:29:06 +02:00
Huw Davies 8c9ca2f704 wineps: Send grayscale images to monochrome printers. 2013-04-05 20:39:06 +02:00
Huw Davies 30162ab39d wineps: Add a helper to return the rgb to grayscale scaling factors. 2013-04-05 20:39:06 +02:00
Dmitry Timoshkov 1b55e50e20 wineps.drv: Constify a variable. 2013-04-03 11:34:28 +02:00
Dmitry Timoshkov a0b4ce6017 wineps.drv: Add support for TrueType composite glyph transforms. 2013-04-01 18:17:19 +02:00
Andrew Talbot 97295b3a36 wineps.drv: Avoid signed-unsigned integer comparisons. 2013-03-05 09:50:03 +01:00
Dmitry Timoshkov ced916b9e7 wineps.drv: Add DEVMODE dumping to make debugging device state easier. 2013-02-11 12:31:22 +01:00
Dmitry Timoshkov c7d33e1d44 gdi32: Add support for 16-bit QUERYESCSUPPORT queries. 2013-02-05 10:54:23 +01:00
Huw Davies cb3815aead wineps: Cope with '\r'-only end-of-line markers. 2013-01-22 20:01:56 +01:00
Huw Davies c22be15a98 wineps: Use a file mapping to read the ppd file. 2013-01-22 20:01:54 +01:00
Dmitry Timoshkov d7687bed6a wineps.drv: Don't cast away 'const' from DEVMODE provided as input. 2013-01-14 11:02:30 +01:00
Dmitry Timoshkov a3c832593c wineps.drv: Default page dimensions are part of DEVMODE, remove an old hack. 2013-01-14 11:02:23 +01:00
Dmitry Timoshkov 2b455abb93 wineps.drv/generic.ppd: Change default page extents to A4 to match *DefaultPageSize. 2013-01-03 11:58:47 +01:00
Dmitry Timoshkov 95d98d0bfc wineps.drv: Update dmPaperWidth/Height when dmPaperSize is being changed through UI. 2012-12-26 18:23:03 +01:00
Dmitry Timoshkov 0f7ed96fda wineps.drv: Update dmFormName when merging DEVMODE structures. 2012-12-24 14:35:16 +01:00
Dmitry Timoshkov 383318bc02 wineps.drv: Properly handle dmFormName in unicode DEVMODE structure. 2012-12-24 14:35:03 +01:00
Dmitry Timoshkov ef489d647a wineps.drv: Update dmFormName when dmPaperSize is being changed through UI. 2012-12-24 14:34:57 +01:00
Dmitry Timoshkov c374201be1 wineps.drv: Make sure that DEVMODE fields changed through UI are marked as set. 2012-12-24 14:34:36 +01:00
Dmitry Timoshkov 11a69ab5aa wineps.drv: Add an ability to select device resolution from UI. 2012-12-24 14:34:27 +01:00
Dmitry Timoshkov eb272cbd31 wineps.drv: Slightly simplify a PPD parser code snippet. 2012-12-20 18:04:19 +01:00
Dmitry Timoshkov d170f05ece wineps.drv: Ignore requested resolutions not supported by device. 2012-12-20 18:04:02 +01:00
Dmitry Timoshkov d5f27e194a wineps.drv: Keep track of all supported device resolutions. 2012-12-20 18:03:51 +01:00
Alexandre Julliard bbf3e8621a gdi32: Remove from the GetTextExtentExPoint entry points parameters that can't be handled by the driver. 2012-12-18 19:26:25 +01:00
Dmitry Timoshkov 671b977dd5 wineps.drv: Return ASPECTX/Y which represent current device resolution. 2012-12-18 12:36:12 +01:00
Dmitry Timoshkov 0cfc1c848f wineps.drv: Use device resolution specified at DC creation time. 2012-12-18 12:36:07 +01:00
Dmitry Timoshkov 1cd551cd6a wineps.drv: Update default DEVMODE to better indicate initialized fields. 2012-12-17 20:31:23 +01:00
Dmitry Timoshkov fd193bc781 wineps.drv: Add a trace to PSDRV_GetDeviceCaps. 2012-12-17 20:31:20 +01:00
Alexandre Julliard 5535302758 wineps: Support getting character codes instead of glyphs in ExtTextOut. 2012-12-05 20:23:46 +01:00
Putin Evgeny 3303ba7f4c wineps.drv: Add orientation field to postscript header. 2012-11-28 20:14:49 +01:00
Andrew Talbot 393514c119 wineps.drv: Remove unused variable. 2012-11-28 20:14:40 +01:00
Alexandre Julliard 9cdb0e1ca6 gdi32: Disable anti-aliasing when necessary in the various drivers. 2012-11-02 16:41:26 +01:00
Alexandre Julliard 6164d533a9 gdi32: Add a parameter to return anti-aliasing flags in the SelectFont driver entry point. 2012-11-02 16:41:21 +01:00
André Hentschel 42f791ccd5 wineps: Avoid memory leaks (coverity). 2012-10-31 16:12:27 +01:00
Alexandre Julliard 16f900fd5a wineps: Always escape Postscript reserved characters in font names. 2012-09-26 17:03:27 +02:00
Alexandre Julliard 05c32b9b89 gdi32: Move the SwapBuffers entry point to the OpenGL driver. 2012-09-10 11:38:28 +02:00
Qian Hong 733aca30f4 gdi32: Read otmpFullName from TT_NAME_ID_UNIQUE_ID. 2012-09-07 13:32:56 +02:00
Michael Stefaniuc c1223611af wineps.drv: Drop a superfluous TRUE:FALSE conditional expression. 2012-08-15 12:12:36 +02:00
Alexandre Julliard 96e80c2623 gdi32: Move DescribePixelFormat and SetPixelFormat to the WGL driver. 2012-07-30 22:12:13 +02:00
Huw Davies bb1740a42e wineps: Add support for printing fake italic fonts. 2012-07-02 19:17:59 +02:00
Alexandre Julliard 6a9dcd51a2 gdi32: Remove the remaining OpenGL entry points from the DC driver. 2012-06-28 18:52:23 +02:00
Alexandre Julliard 7a031d9b92 opengl32: Add the concept of a WGL driver. 2012-06-28 14:37:31 +02:00
Alexandre Julliard ee21554893 gdi32: Remove OpenGL functions that don't use an HDC from the driver entry points. 2012-06-25 16:25:57 +02:00
Huw Davies 87292bb396 wineps: Always update the default devmode. 2012-06-21 18:56:29 +02:00
Huw Davies 5b71f7bbbc wineps: Add the ability to override the ppd file's default pagesize and duplex settings. 2012-06-21 18:56:23 +02:00
Huw Davies bdaddc4b7c wineps: Retrieve the ppd file from the driver directory. 2012-06-15 18:35:36 +02:00
Alexandre Julliard 93758c43fd gdi32: Remove the CreateBitmap and DeleteBitmap driver entry points. 2012-05-29 21:06:41 +02:00
Alexandre Julliard 1416d0e6f1 gdi32: Remove the bitmap parameter from the Get/PutImage entry points. 2012-05-29 21:05:52 +02:00
Alexandre Julliard fdc4682e31 gdi32: Remove the CopyBitmap driver entry point. 2012-05-24 22:09:19 +02:00
Huw Davies c5697ff4b1 wineps: Fix top-down dib pattern brushes. 2012-05-17 17:44:25 +02:00
Huw Davies e6398a5544 wineps: Add a helper to perform duplex lookup by name. 2012-05-16 18:30:26 +02:00
Huw Davies cd770d907a wineps: Use the get_pagesize helper to look up the default pagesize. 2012-05-16 18:30:25 +02:00
Francois Gouget fac36c55e9 Assorted typo, spelling, wording and case fixes. 2012-05-15 16:26:43 +02:00
Alexandre Julliard 147174ff1c winex11: Implement wglGetPbufferDCARB with a DC escape and remove it from the GDI driver interface. 2012-05-08 14:35:44 +02:00
Alexandre Julliard e94d3b4e08 gdi32: Add a priority mechanism for pushing drivers on the stack in a defined order. 2012-05-08 12:16:50 +02:00
Alexandre Julliard 3009e03df7 gdi32: Add a SetBoundsRect driver entry point. 2012-04-27 12:41:43 +02:00
Huw Davies 7af7c7869e wineps: Add a cups job ticket containing pagesize and duplex information. 2012-04-16 17:49:29 +02:00
Huw Davies 64edac40ef wineps: Add a helper to find a duplex entry. 2012-04-16 17:49:28 +02:00
Huw Davies 44d880b430 wineps: Add a helper to find a page size. 2012-04-16 17:49:28 +02:00
Huw Davies 61efdbfd5f wineps: Add a helper to find an input slot. 2012-04-16 17:49:27 +02:00
Alexandre Julliard 582a2f511f gdi32: Add a GetBoundsRect driver entry point. 2012-04-16 13:53:23 +02:00
Huw Davies 72cfc219f0 wineps: Move ppd filename retrieval to a separate function. 2012-04-13 16:09:44 +02:00
Huw Davies cd83f88576 wineps: Add the duplex entry to the list. 2012-04-13 16:09:43 +02:00
Huw Davies 1d2cd06592 wineps: Move the default resolution fallback to the ppd parser. 2012-04-12 20:38:32 +02:00
Huw Davies 92bce60f37 wineps: Simplify the failure path. 2012-04-12 20:38:27 +02:00
Huw Davies 83ba3189b3 wineps: Pass the devmode to OpenPrinter. 2012-04-12 20:38:21 +02:00
Huw Davies 210f3e3338 wineps: Switch to using a Unicode devmode. 2012-04-12 20:38:16 +02:00
Huw Davies 0c7a6d89a2 wineps: Return from a common point. 2012-04-12 20:38:02 +02:00
Huw Davies 43cffa0888 wineps: Set the printer's devmode using SetPrinter. 2012-04-11 18:19:28 +02:00
Huw Davies a7f42d3281 wineps: Retrieve the printer's devmode using GetPrinter. 2012-04-11 18:19:23 +02:00
Huw Davies 7b3ae93578 wineps: Remove the installed options list as it's never populated. 2012-04-11 18:19:16 +02:00
Huw Davies 5a0129c0d2 wineps: Move the duplex list to a standard list. 2012-04-11 18:19:12 +02:00
Huw Davies e6e42c8610 wineps: Move the input slot list to a standard list. 2012-04-11 18:19:00 +02:00
Huw Davies 4dfef2ef2d wineps: Move the constraints list to a standard list. 2012-04-11 18:18:52 +02:00
Huw Davies 4ff9b7f11a wineps: Move the installed font list to a standard list. 2012-04-11 18:18:45 +02:00
Huw Davies 28bf93561d wineps: Add a helper to retrieve the font substitution table. 2012-04-04 19:02:23 +02:00
Huw Davies a2e6c7340d wineps: Change the printer info list into a standard list. 2012-04-04 19:02:18 +02:00
Huw Davies a37ee1e2e9 wineps: Fix a memory leak. 2012-04-04 19:02:12 +02:00
Huw Davies e31cfb0be1 wineps: Move some allocations to the process heap. 2012-04-04 19:02:08 +02:00
Huw Davies 7c3a522dd3 wineps: Store the unicode version of the printer name and call the unicode version of OpenPrinter. 2012-04-03 17:54:08 +02:00
Huw Davies a152666920 wineps: Store the document title as a unicode string. 2012-04-03 17:54:01 +02:00
Huw Davies c9ddabad22 wineps: Move some structs to the process heap. 2012-04-03 17:53:55 +02:00
Huw Davies 1432b3141a wineps: Free the output string from the correct heap. 2012-04-03 17:53:44 +02:00
Huw Davies d963a8f864 wineps: Use the unicode version of StartDocPrinter. 2012-04-02 18:26:06 +02:00
Alexandre Julliard 061b8c4094 wineps: Convert path points to device coords since GetPath returns logical coords. 2012-02-22 16:04:09 +01:00
Alexandre Julliard fbbf3ba408 gdi32: Get rid of the CreateDIBSection driver entry point. 2012-01-10 16:13:29 +01:00
Alexandre Julliard dc1aeeb2f8 gdi32: Get rid of the SetDIBColorTable driver entry point. 2012-01-07 13:27:08 +01:00
Alexandre Julliard cc9836bda0 gdi32: Pass a brush_pattern structure to the SelectPen entry point for brushed pens. 2011-12-30 11:04:29 +01:00
Alexandre Julliard f85bb35280 gdi32: Pass a brush_pattern structure to the SelectBrush entry point. 2011-12-30 11:04:26 +01:00
Alexandre Julliard d77f0ae743 wineps: Inherit the device mode from the source DC when creating a compatible DC. 2011-12-16 12:08:38 +01:00
Pierre Schweitzer 0652bbc3d5 wineps.drv: Fix memory leak. 2011-12-07 17:49:59 +01:00
Alexandre Julliard d45eb00abc wineps: Fall through to the null driver for Polyline and Polygon. 2011-12-05 22:29:46 +01:00
Alexandre Julliard 62cf70d363 wineps: Don't crash on missing loca OTF table. 2011-11-26 16:29:50 +01:00
Alexandre Julliard 6b5cfe2c47 wineps: Convert dialogs to po files. 2011-11-17 22:47:36 +01:00
Alexandre Julliard 4801b91fd6 wineps: Print a fixme for unhandled composite glyph scaling. 2011-11-15 19:37:32 +01:00
Alexandre Julliard 9391c6a757 gdi32: Add a CopyBitmap driver entry point. 2011-11-08 19:25:05 +01:00
Alexandre Julliard 0a189ffaf0 wineps: Use the brush information passed in SelectBrush for pattern brushes. 2011-11-07 20:31:49 +01:00
Alexandre Julliard 29295e98e6 wineps: Fix the font escapement when coordinates are being mirrored. 2011-11-04 16:08:29 +01:00
Alexandre Julliard 24ac8c66bb gdi32: Pass the full brush contents in the SelectBrush driver entry point. 2011-11-02 21:41:15 +01:00
Alexandre Julliard 6bf6575c5c gdi32: Store a pointer instead of a global handle for DIB pattern brushes. 2011-11-02 12:02:27 +01:00
Alexandre Julliard 2cf3975dfc wineps: Fix a couple of typos in the path painting function.
Thanks to Octavian Voicu.
2011-11-01 21:10:13 +01:00
Alexandre Julliard 95cba0c0f4 gdi32: Add a DC driver entry point for GdiGradientFill. 2011-10-31 23:51:38 +01:00
Alexandre Julliard c9c568dda9 wineps: Stroke and fill GDI paths using Postscript paths. 2011-10-31 19:58:12 +01:00
Alexandre Julliard da3511fd3b wineps: Implement PolyBezier using the Postscript curveto function. 2011-10-31 19:39:02 +01:00
Alexandre Julliard e5f21b952f wineps: PaintRgn should leave the path empty on exit. 2011-10-31 16:46:00 +01:00
Alexandre Julliard 8a808a49f9 wineps: Make color devices report 32 bits per pixel. 2011-10-31 16:45:48 +01:00
Alexandre Julliard dd3721c0f9 wineps: Fix the output of indexed bitmaps in PutImage. 2011-10-28 23:07:45 +02:00
Alexandre Julliard a8444d7fd1 gdi32: Add driver entry points for a number of font functions. 2011-10-24 23:45:37 +02:00
Alexandre Julliard 2b1b11d681 gdi32: Rename the EnumDeviceFonts entry point to EnumFonts since it's not limited to device fonts. 2011-10-24 23:34:33 +02:00
Alexandre Julliard cbd81d391c gdi32: Implement EnumDeviceFonts as a standard driver entry point. 2011-10-24 23:34:28 +02:00
Alexandre Julliard f1faeb0f28 wineps: Add support for PS_USERSTYLE pens. 2011-10-21 16:38:39 +02:00
Alexandre Julliard c66b611205 wineps: Chain to the next driver when not using a device font. 2011-10-20 13:22:11 +02:00
Alexandre Julliard ef0fe44327 gdi32: Implement SelectFont as a standard driver entry point. 2011-10-19 18:22:05 +02:00
Alexandre Julliard 2dfa00230d wineps: Get rid of the StretchDIBits entry point. 2011-10-17 20:12:59 +02:00
André Hentschel ef5f3c1676 wineps.drv: Print the commands in decimal. 2011-10-11 13:37:49 +02:00
Huw Davies f24b0a80f3 wineps: The truetype metrics should now be obtained from gdi32, so remove obsolete code. 2011-10-10 16:46:42 +02:00
Alexandre Julliard c819e4bdea gdi32: Add a null driver fallback for AlphaBlend, using a new BlendImage driver entry point. 2011-09-14 11:57:45 +02:00
Alexandre Julliard a28ddddcbc gdi32: Leave it up to the driver to push the new device on the DC stack in CreateDC. 2011-09-07 18:13:29 +02:00
Alexandre Julliard cef1832bfb gdi32: Add a driver entry point for CreateCompatibleDC. 2011-09-07 18:13:06 +02:00
Alexandre Julliard a0f1b20464 gdi32: Make the BITMAPINFO parameters non-const in driver entry points since we are always passing a copy. 2011-09-02 15:56:01 +02:00
Alexandre Julliard 6fd40e3cae wineps: Simplify the DIB byte width computation. 2011-08-29 12:08:21 +02:00
Francois Gouget 3704821417 wineps.drv: Make PSDRV_WriteRGB() static. 2011-08-23 16:53:56 +02:00
Huw Davies 39f14b68bf wineps: Don't write a PostScript trailer if we haven't written a header. 2011-08-22 16:14:35 +02:00
Alexandre Julliard d0d98046c6 gdi32: Create a sanitized BITMAPINFO in StretchDIBits and pass that to the drivers. 2011-08-04 18:23:00 +02:00
Alexandre Julliard 6d00196aea gdi32: Get rid of the SetBitmapBits driver entry point. 2011-08-03 14:15:47 +02:00
Alexandre Julliard 366174b213 gdi32: Get rid of the GetBitmapBits driver entry point. 2011-07-25 20:32:41 +02:00
Alexandre Julliard 8a906250eb gdi32: Get rid of the SetDIBits driver entry point. 2011-07-25 19:47:03 +02:00
Alexandre Julliard 0f9ee1b68f wineps: Implement the additional clipping in PutImage. 2011-07-22 12:57:18 +02:00
Alexandre Julliard 0d9dde7953 gdi32: Add an optional clip region to the PutImage entry point. 2011-07-21 18:49:47 +02:00
Alexandre Julliard 209578aeab wineps: Implement the PutImage entry point. 2011-07-21 15:43:31 +02:00
Alexandre Julliard 632391dbf4 wineps: Add a couple of helper functions to simplify the StretchDIBits implementation. 2011-07-21 15:36:39 +02:00
Alexandre Julliard 49cb530ee3 wineps: Remove unneeded GetTransform prototype. 2011-07-19 18:26:20 +02:00
Alexandre Julliard b01eb19511 gdi32: Remove the GetDIBits entry point from the graphics driver. 2011-07-18 17:07:51 +02:00
Francois Gouget e33e31a7d6 wineps.drv: Make some DC functions static. 2011-07-14 14:48:13 +02:00
Alexandre Julliard cf05fca878 gdi32: Add driver entry points for GetImage and PutImage. 2011-07-14 11:30:58 +02:00
Alexandre Julliard c7a8ff26d3 gdi32: Graphics driver functions no longer need to be CDECL. 2011-07-13 14:56:12 +02:00
Alexandre Julliard 572d0863b1 wineps: Add a DC function structure and export it. 2011-07-13 14:05:13 +02:00
Alexandre Julliard 1ac1d7c69b gdi32: Pass the dest visible rectangle to the PatBlt driver entry point. 2011-07-11 17:12:49 +02:00
Alexandre Julliard b49aaf1fed wineps.drv: Use the HDC from the gdi_physdev structure. 2011-07-07 14:46:15 +02:00
Alexandre Julliard 10dcba499f wineps.drv: Pass a generic PHYSDEV to all graphics functions. 2011-07-07 14:46:14 +02:00
Alexandre Julliard ba2a6ee983 wineps.drv: Get rid of the empty SetDeviceClipping entry point. 2011-07-07 14:46:14 +02:00
Alexandre Julliard 4e2a28bd03 gdi32: Export the gdi_physdev structure for the external drivers. 2011-07-07 14:46:14 +02:00
Marcus Meissner 451a656f2f wineps.drv: Mark internal symbols with hidden visibility. 2011-05-25 11:50:27 +02:00
Alexandre Julliard ca3b820227 wineps: Add a helper function for paper size conversions. 2011-04-28 20:59:27 +02:00
Francois Gouget 0377d0a2e6 wineps.drv: PSDRV_YWStoDS() is unused so remove it. 2011-03-30 18:23:37 +02:00
Alexandre Julliard 9285915720 wineps: Add support for SetDCBrush/PenColor. 2011-03-10 20:45:12 +01:00
Alexandre Julliard 6419edfb6d gdi32: Add a mechanism for stacking gdi drivers. 2011-03-10 12:38:31 +01:00
Alexandre Julliard 5f5c7020f3 gdi32: Add a common header to the physdev structure. 2011-03-08 22:34:57 +01:00
Alexander Kochetkov ecde55b757 wineps.drv: All map modes should have inverted y-transforms. 2011-02-10 10:28:02 -06:00
Alexander Kochetkov 69f88da187 wineps.drv: Disable world transform for fonts in GM_COMPATIBLE mode. 2011-01-14 18:26:20 +01:00