Commit Graph

113 Commits

Author SHA1 Message Date
Vadim Zeitlin
4ee4c7b948 Add support for gradient stops to wxGraphicsContext.
Allow specifying a set of gradient stops instead of just the beginning and
ending colours. Add the new wxGraphicsGradientStop(s) classes and new
wxGraphicsContext::Create{Linear,Radial}GradientBrush() overloads. Also change
the same methods of wxGraphicsRenderer to take wxGraphicsGradientStops instead
of a pair of colours.

Implement the new API for MSW and Cairo. OS X still uses just the two colours
for now.

Closes #11897.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63857 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-05 12:15:11 +00:00
Vadim Zeitlin
ef40c54c63 Define wxGraphicsRenderer::GetDefaultRenderer() for all non-{MSW,Mac} ports.
wxGraphicsRenderer::GetDefaultRenderer() was only defined for wxGTK for some
reason but it needs to be defined in terms of GetCairoRenderer() for all ports
without native renderer implementation, i.e. everything but wxMSW and wxMac.

See #11817.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63715 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-03-20 12:45:23 +00:00
Kevin Ollivier
125e7c11c1 Fix another line somehow missing from the wxGraphicsBitmap forward port.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63083 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-01-06 02:22:38 +00:00
Vadim Zeitlin
9a67941f0b Compilation fix for wxUSE_CAIRO==0 after last commit.
Include wx/graphics.h when wxUSE_CAIRO==0 but wxUSE_GRAPHICS_CONTEXT==1 (as in
e.g. MSW builds).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62731 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-27 21:36:03 +00:00
Vadim Zeitlin
6c99dbd55e Define wxUSE_CAIRO in wx/chkconf.h to ensure that it's always defined.
wxUSE_CAIRO used to be defined only in wx/cairo.h but this header wasn't
included by src/common/dcgraph.cpp so the code there was compiled as if we
were not using Cairo even when we were (thanks g++ for the warning).

Define it in wx/chkconf.h (included from wx/defs.h, i.e. always) now to ensure
that not only this bug is fixed but also that it can't happen any more.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62730 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-27 21:06:03 +00:00
Vadim Zeitlin
a8f9fe13aa Use #ifdef to check for __WXMSW__ and __WXGTK__ and not #if.
Using #if doesn't work when symbols are not defined.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62729 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-27 21:05:57 +00:00
Kevin Ollivier
c0e69d720d Forward port of r60190 (wxMSW Cairo support) to trunk.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62681 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-18 19:05:42 +00:00
Stefan Csomor
2986eb869c adding construction from native bitmaps
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62226 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-10-02 19:45:03 +00:00
Kevin Ollivier
66f917a7ea Restore pattern creation, and do sanity checks before destroying the pattern or the surface. Closes #11140.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61760 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-08-24 22:49:27 +00:00
Vadim Zeitlin
84e0e5265d No changes, just fix unused variables and parameters warnings.
Fix warnings in wxGTK wxUSE_GRAPHICS_CONTEXT==1 build.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61758 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-08-24 21:42:21 +00:00
Vadim Zeitlin
03647350fc No changes, just removed hard tabs and trailing white space.
This commit is huge but there are no non-white-space changes in it.

Some files containing third-party sources (src/msw/wince/time.cpp,
src/x11/pango*.cpp) were left unchanged.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61724 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-08-21 10:41:26 +00:00
Kevin Ollivier
f5008769d6 Fix typo in class name.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61243 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-06-28 23:16:25 +00:00
Kevin Ollivier
e77cba1a9c Add wxGraphicsBitmap overload for DrawBitmap.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61198 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-06-24 21:28:31 +00:00
Kevin Ollivier
3c10f6db79 Build fixes after the 2.8->trunk forward port.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61177 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-06-23 17:39:14 +00:00
Kevin Ollivier
2fc9c1ea77 Forward port wxGraphicsBitmap cairo implementation, and fix the credit info in measuring.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61152 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-06-20 23:33:55 +00:00
Kevin Ollivier
5e8d27fea5 Implement CreateMeasuringContext for GTK/Cairo.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60185 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-04-15 21:55:47 +00:00
Stefan Csomor
aa6208d975 conforming to new naming convention of starting all port specific methods with the port prefix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59804 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-24 07:56:17 +00:00
Stefan Csomor
f1c40652a0 reworked font handling for osx
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59644 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-20 13:56:57 +00:00
Paul Cornett
50de831a51 non-pch build fixes, some cleanup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59073 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-02-21 18:08:19 +00:00
Stefan Csomor
bf02a7f976 switching to compositing operators (fixes #9881), adding layers
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58917 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-02-15 16:52:05 +00:00
Vadim Zeitlin
c0c133e13b add wx-prefixed and semicolon-requiring versions of DECLARE_NO_{COPY,ASSIGN}_CLASS macros
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58757 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-02-08 11:45:59 +00:00
Francesco Montorsi
0d19936d71 support underlined text in wxCairoContext (Marcin's patch) (closes #9846)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57944 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-09 14:43:41 +00:00
Francesco Montorsi
94a007ece4 a few more int/wxPolygonFillMode substitutions in wxRegion and wxGraphicsContext code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57915 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-08 16:43:56 +00:00
Francesco Montorsi
89efaf2b65 change generic ints to enums in wxDC (closes #9959)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57907 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-08 14:21:53 +00:00
Vadim Zeitlin
0b7dce5480 fix warnings about hiding virtual wxGraphicsContext::DrawText() overloads by using different names for the implementation functions
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56753 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-11-13 12:16:39 +00:00
Vadim Zeitlin
7f0d0111c4 added missing wx/dcclient.h header for PCH-less compilation, removed several other unnecessary ones
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55512 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-09-07 17:01:16 +00:00
Vadim Zeitlin
fb0400941f use wxPEN/BRUSH_XXX instead of wxXXX (#9812)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@54952 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-08-03 11:16:26 +00:00
Stefan Csomor
1011fbebdb guarding all text methods against unset font
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@54919 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-08-02 06:40:21 +00:00
Vadim Zeitlin
49ad157e30 implement support for wxOR and wxCLEAR in wxCairoContext::SetLogicalFunction() (#9808)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@54897 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-08-01 14:03:17 +00:00
Stefan Csomor
33ddeabab9 fixing file paths after renaming
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@54127 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-06-11 19:23:52 +00:00
Robert Roebling
eaeb99858d Use cairo_scale() for scaling to full printing resolution, correct transformation in Cairo graphics context for GTK+ printing
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@53420 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-04-30 09:17:04 +00:00
Robert Roebling
c9008abec2 Tried to transform wxGC like wxDC, failed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@53414 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-04-29 12:13:07 +00:00
Robert Roebling
0b822969a6 Added new wxGraphicsContext:Create( wxPrinterDC ) instead of wxDC:CreateGraphicsContext
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@53406 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-04-28 20:39:57 +00:00
Robert Roebling
d974a4945c Made wxCairo graphics code compile again, wxGraphicsBitmap still missing
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@53347 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-04-25 13:32:23 +00:00
Stefan Csomor
2f94ab4099 moving things to private headers
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@50800 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-12-18 13:24:42 +00:00
Robert Roebling
888dde65f4 DC reorganization
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@50348 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-30 13:48:22 +00:00
Robert Roebling
64a226f7d0 Adapt for new DC code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49864 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-12 19:03:37 +00:00
Robert Roebling
10c508ef3c Compilation for GTK+
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49833 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-11 19:14:09 +00:00
Stefan Csomor
3e70093612 fixing cairo bugs under OS X
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49832 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-11 16:46:47 +00:00
Paul Cornett
82a234fbff wxCairoContext doesn't need to know about wxPizza
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49819 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-10 21:28:48 +00:00
Stefan Csomor
71696da09e enabling clip
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49814 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-10 19:28:13 +00:00
Stefan Csomor
84f67b116a adapting to new pizza, fixing dashes, pango layout
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49813 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-10 17:40:28 +00:00
Stefan Csomor
e7f9f819be forward port from 2.8
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49788 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-09 20:55:50 +00:00
Paul Cornett
08f53168ac New "pizza" widget implementation. Window border widths now match the GtkStyle they are drawn with.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49687 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-06 18:14:15 +00:00
Václav Slavík
d45127a543 removed executable bit on files that aren't executables
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46936 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-06-25 14:04:34 +00:00
Robin Dunn
d9485f89b8 Forward port of my recent changes in the 2.8 branch:
* Force use of floating point math in wxGCDC::DoDrawEllipticArc.

 * Check for 0.5 offset in wxGCDC::DoDrawRoundedRectangle and
   DoDrawEllipse.  Set wxGDIPlusContext to use the offset.

 * Avoid crash in wxStdDialogButtonSizer::Realize if there is no
   negative button.

 * Provide implementations for wxCairoPathData::AddPath,
   wxCairoContext::Clip, wxCairoContext::DrawBitmap,
   wxCairoContext::DrawIcon, and wxCairoContext::GetTextExtent.

 * Fix wxCairoContext::DrawText to draw the text using the upper-left
   corner for the x,y position, not the baseline.

 * Fix wxMacCoreGraphicsRenderer::CreateContext to be able to use a
   wxMemoryDC as the target.

 * Map wxTELETYPE font family on wxMac to a monospace font.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45077 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-26 20:08:41 +00:00
Robin Dunn
248802d010 Add wxGraphicsMatrix::Get
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@43830 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-12-05 23:42:52 +00:00
Stefan Csomor
773ccc318e adapting to new inheritance of wxMemoryDC (under MSW only at the moment)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@43110 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-11-06 09:47:20 +00:00
Stefan Csomor
091ef146b7 stub implementations
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@43013 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-11-04 09:57:35 +00:00
Robin Dunn
0db8a70e0c update the Cairo version to match recent changes in the others
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@42597 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-10-29 02:33:41 +00:00