Commit graph

32 commits

Author SHA1 Message Date
Marcian Lytwyn
49f971cb28 Cairo win32 fixes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/branches/gnustep_testplant_branch@35368 72102866-910b-0410-8b05-ffd578937521
2012-08-08 22:22:36 +00:00
Eric Wasylishen
b6588a43bd * Source/cairo/CairoContext.m (-beginPrologueBBox:...):
Add a hack to get landscape printing working. Comment in the source
reproduced here:
FIXME: This is confusing... When an 8.5x11 page is set to
landscape, NSPrintInfo also swaps the paperSize to be 11x8.5,
but gui also adds a 90 degree rotation as if it will
be drawing on a 8.5x11 page. So, swap 11x8.5 back to 8.5x11 here.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@34356 72102866-910b-0410-8b05-ffd578937521
2011-12-24 18:44:53 +00:00
Eric Wasylishen
4f613a2a66 * Source/cairo/CairoContext.m (-beginPrologueBBox:...): Use
paper size from print info to set the cairo page size, instead
of using the bounding box (which is usually smaller than the
paper size, and was causing cairo print output to be wrong
compared to GNUstep's built-in PostScript writer.)


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@34351 72102866-910b-0410-8b05-ffd578937521
2011-12-23 19:01:45 +00:00
Eric Wasylishen
d7b7322723 * Source/cairo/GNUmakefile:
* Source/cairo/CairoContext.m:
* Source/cairo/CairoSurface.m:
* Source/cairo/XGCairoModernSurface.m:
* Headers/cairo/XGCairoModernSurface.h:
* Headers/cairo/CairoSurface.h: New cairo surface which uses
cairo_surface_create_similar to create a back buffer which
has an alpha channel, even if the X server doesn't support
surfaces with alpha. This new surface is also made the default
since this seems to be the recommended way to double buffer
with cairo.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@33978 72102866-910b-0410-8b05-ffd578937521
2011-10-13 21:37:44 +00:00
Eric Wasylishen
9e4b957085 * Source/cairo/CairoContext.m: revert the last change for now
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@33855 72102866-910b-0410-8b05-ffd578937521
2011-09-18 20:37:00 +00:00
Eric Wasylishen
9b930f8ec7 * Source/cairo/CairoContext.m: Switch to XGCairoSurface by default,
because it fixes the corrupted display problem reported by Riccardo
on 16-bit displays.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@33849 72102866-910b-0410-8b05-ffd578937521
2011-09-16 23:56:01 +00:00
Fred Kiefer
084e5ade90 Revert last change as gui is fixed now.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@33305 72102866-910b-0410-8b05-ffd578937521
2011-06-14 22:27:58 +00:00
Fred Kiefer
5a950060d0 * Source/cairo/CairoContext.m (-supportsDrawGState): Delegate to
gstate.
* Headers/cairo/CairoGState.h (-supportsDrawGState): Declare this method.
* Source/cairo/CairoGState.m (-supportsDrawGState): Only allow the
faster drawing operation when the clip can be represented as a
list of rectangles.
* Source/cairo/CairoGState.m (-copyWithZone:): Always free the
clip rectangle list.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@33289 72102866-910b-0410-8b05-ffd578937521
2011-06-13 12:34:52 +00:00
Quentin Mathe
b53fe57e7c Fixed many drawing issues (many ones being related to the flipping).
See bug report #27782

In particular, fixed -[NSImage drawXXX] and -[NSImage composite/dissolveXXX] 
methods to work exactly as Cocoa when the Cairo backend is used.
Added a new draw operator (in addition to composite) to the backend. Cairo is 
the only backend that implements it for now.
Eliminated as many flipping checks as possible.

Warning: Untested with the winlib backend. 
You must update, recompile and install both Back and Gui.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@30523 72102866-910b-0410-8b05-ffd578937521
2010-06-01 11:04:36 +00:00
Fred Kiefer
b644571f1a Correct test for the need of an image conversion.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@27279 72102866-910b-0410-8b05-ffd578937521
2008-12-11 21:03:51 +00:00
Fred Kiefer
01b5c75e8f For cairo convert the bitmap, when the format is unsupported.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@27014 72102866-910b-0410-8b05-ffd578937521
2008-11-06 09:33:13 +00:00
Adam Fedor
250ebdfad0 Revert library license version to 2 until applications can be converted
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@26620 72102866-910b-0410-8b05-ffd578937521
2008-06-10 04:12:46 +00:00
Adam Fedor
f69ec5d76b Fix memory leak.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@26555 72102866-910b-0410-8b05-ffd578937521
2008-05-23 04:12:37 +00:00
Xavier Glattard
201d3bf367 Experimental Cairo and Cairo/Glitz backends on win32
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@26189 72102866-910b-0410-8b05-ffd578937521
2008-03-04 10:14:29 +00:00
Fred Kiefer
0f0191c547 Rework of context window device setting. Requires corresponding change
in gui.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@25981 72102866-910b-0410-8b05-ffd578937521
2008-01-19 13:12:03 +00:00
Fred Kiefer
0f8c5487c7 Change files to use GPL 3 and LGPL 3.
Prepare for next release.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@25538 72102866-910b-0410-8b05-ffd578937521
2007-10-29 23:25:10 +00:00
Fred Kiefer
8d37c37008 Hack to get drawing on non-retained windows working.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@25529 72102866-910b-0410-8b05-ffd578937521
2007-10-18 16:51:56 +00:00
Fred Kiefer
1ce0bd5175 Add PDF output for cairo backend.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@25479 72102866-910b-0410-8b05-ffd578937521
2007-09-12 15:46:55 +00:00
Fred Kiefer
c1d1c74891 Printing improvements and handle rotated text.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@25296 72102866-910b-0410-8b05-ffd578937521
2007-06-29 11:31:53 +00:00
Fred Kiefer
89c1ce993a Use cairo specific code for PS file creation
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@25088 72102866-910b-0410-8b05-ffd578937521
2007-04-27 12:23:28 +00:00
Fred Kiefer
ff21318a0a Backend part of graphic context rewrite.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@24965 72102866-910b-0410-8b05-ffd578937521
2007-04-04 14:33:10 +00:00
Fred Kiefer
6e1af0cfc0 Aloow simple PS context to work.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@24728 72102866-910b-0410-8b05-ffd578937521
2007-02-28 12:27:10 +00:00
Richard Frith-MacDonald
d1fc39bd04 Attempt to get Cairo to build nicely when glitz is not present.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@24267 72102866-910b-0410-8b05-ffd578937521
2006-12-27 11:25:54 +00:00
Fred Kiefer
cf27a422f6 Added cairo transparancy patch by Yen-Ju Chen <yjchenx@gmail.com>.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@24244 72102866-910b-0410-8b05-ffd578937521
2006-12-26 13:26:40 +00:00
Fred Kiefer
7bf3e2dce1 Cleaned up change of super class for CairoGState.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@23746 72102866-910b-0410-8b05-ffd578937521
2006-10-03 23:29:53 +00:00
Fred Kiefer
6d504f2218 General cleanup of cairo backend code.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@22644 72102866-910b-0410-8b05-ffd578937521
2006-03-12 21:50:17 +00:00
Fred Kiefer
7a1693eaf2 Get cairo surfaces working for resized windows.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@21685 72102866-910b-0410-8b05-ffd578937521
2005-08-28 00:48:12 +00:00
Fred Kiefer
b16cb0fe3c Changed to compile with latest cairo interface changes.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@21561 72102866-910b-0410-8b05-ffd578937521
2005-07-27 23:25:32 +00:00
Adam Fedor
7a3f75f9ac Update FSF Address
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@21263 72102866-910b-0410-8b05-ffd578937521
2005-05-26 22:51:53 +00:00
Fred Kiefer
92077fc8bb Made the windows backend compile again and new event polling.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@19917 72102866-910b-0410-8b05-ffd578937521
2004-08-24 18:53:39 +00:00
Fred Kiefer
f4a23121d8 Small cleanup of cairo backend.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@19902 72102866-910b-0410-8b05-ffd578937521
2004-08-23 12:28:16 +00:00
Fred Kiefer
1d40f7d8cc Added cairo backend.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@19820 72102866-910b-0410-8b05-ffd578937521
2004-08-02 21:50:17 +00:00