From: <sm...@us...> - 2008-11-20 14:58:26
|
Revision: 9009 http://plplot.svn.sourceforge.net/plplot/?rev=9009&view=rev Author: smekal Date: 2008-11-20 14:58:16 +0000 (Thu, 20 Nov 2008) Log Message: ----------- Work around a bug/feature of the affine matrix transformation which seems to be not consistent on Mac OS X an other platforms. Modified Paths: -------------- trunk/drivers/wxwidgets_gc.cpp Modified: trunk/drivers/wxwidgets_gc.cpp =================================================================== --- trunk/drivers/wxwidgets_gc.cpp 2008-11-20 14:57:00 UTC (rev 9008) +++ trunk/drivers/wxwidgets_gc.cpp 2008-11-20 14:58:16 UTC (rev 9009) @@ -359,11 +359,12 @@ /* actually draw text */ m_context->PushState(); + m_context->Translate( args->x/scalex, height-args->y/scaley ); wxGraphicsMatrix matrix=m_context->CreateMatrix( cos_rot, -sin_rot, cos_rot * sin_shear + sin_rot * cos_shear, -sin_rot * sin_shear + cos_rot * cos_shear, - args->x/scalex, height-args->y/scaley ); - m_context->SetTransform( matrix ); + 0.0, 0.0 ); + m_context->ConcatTransform( matrix ); m_context->Translate( -args->just*textWidth, -0.5*textHeight ); PSDrawText( args->unicode_array, args->unicode_array_len, true ); m_context->PopState(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <sm...@us...> - 2009-03-11 14:40:01
|
Revision: 9717 http://plplot.svn.sourceforge.net/plplot/?rev=9717&view=rev Author: smekal Date: 2009-03-11 14:39:48 +0000 (Wed, 11 Mar 2009) Log Message: ----------- Applied a patch by Vadim Zeitlin to correctly free a wxGraphicsContext object created in wxPLDevGC::SetExternalBuffer() or wxPLDevGC::CreateCanvas(). Modified Paths: -------------- trunk/drivers/wxwidgets_gc.cpp Modified: trunk/drivers/wxwidgets_gc.cpp =================================================================== --- trunk/drivers/wxwidgets_gc.cpp 2009-03-11 14:35:04 UTC (rev 9716) +++ trunk/drivers/wxwidgets_gc.cpp 2009-03-11 14:39:48 UTC (rev 9717) @@ -64,8 +64,8 @@ delete m_bitmap; } - if( m_font ) - delete m_font; + delete m_font; + delete m_context; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ai...@us...> - 2009-12-07 07:05:29
|
Revision: 10695 http://plplot.svn.sourceforge.net/plplot/?rev=10695&view=rev Author: airwin Date: 2009-12-07 07:05:23 +0000 (Mon, 07 Dec 2009) Log Message: ----------- Stride must be used in the affine transform in order to render 3D text correctly for wxwidgets (wxGC). This fix solves the remaining example 28 issues for this device. I also checked example 28 with wxwidgets (AGG) and wxwidgets (basic). The AGG variant renders all the 3D text in that example correctly, while the basic variant cannot render any 3D text in example 28 correctly (but as I recall, this is a well-known issue for this very basic device, and for this reason most users will use either the AGG or wxGC variants instead). Modified Paths: -------------- trunk/drivers/wxwidgets_gc.cpp Modified: trunk/drivers/wxwidgets_gc.cpp =================================================================== --- trunk/drivers/wxwidgets_gc.cpp 2009-12-07 06:45:38 UTC (rev 10694) +++ trunk/drivers/wxwidgets_gc.cpp 2009-12-07 07:05:23 UTC (rev 10695) @@ -435,7 +435,8 @@ /* actually draw text */ m_context->PushState(); m_context->Translate( args->x / scalex, height - args->y / scaley ); - wxGraphicsMatrix matrix = m_context->CreateMatrix( cos_rot, -sin_rot, + wxGraphicsMatrix matrix = m_context->CreateMatrix( + cos_rot * stride, -sin_rot * stride, cos_rot * sin_shear + sin_rot * cos_shear, -sin_rot * sin_shear + cos_rot * cos_shear, 0.0, 0.0 ); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ai...@us...> - 2011-03-03 21:44:23
|
Revision: 11592 http://plplot.svn.sourceforge.net/plplot/?rev=11592&view=rev Author: airwin Date: 2011-03-03 21:44:17 +0000 (Thu, 03 Mar 2011) Log Message: ----------- Make wxGC mode of wxwidgets device honour the -eofill option. Modified Paths: -------------- trunk/drivers/wxwidgets_gc.cpp Modified: trunk/drivers/wxwidgets_gc.cpp =================================================================== --- trunk/drivers/wxwidgets_gc.cpp 2011-03-03 20:08:42 UTC (rev 11591) +++ trunk/drivers/wxwidgets_gc.cpp 2011-03-03 21:44:17 UTC (rev 11592) @@ -207,7 +207,10 @@ path.AddLineToPoint( x[i] / scalex, height - y[i] / scaley ); path.CloseSubpath(); - m_context->DrawPath( path ); + if ( pls->dev_eofill) + m_context->DrawPath( path, wxODDEVEN_RULE ); + else + m_context->DrawPath( path, wxWINDING_RULE ); wxDouble x, y, w, h; path.GetBox( &x, &y, &w, &h ); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <sm...@us...> - 2011-07-17 19:38:39
|
Revision: 11819 http://plplot.svn.sourceforge.net/plplot/?rev=11819&view=rev Author: smekal Date: 2011-07-17 19:38:33 +0000 (Sun, 17 Jul 2011) Log Message: ----------- Fixed a memory allocation bug, which showed up if one resizes the window. Modified Paths: -------------- trunk/drivers/wxwidgets_gc.cpp Modified: trunk/drivers/wxwidgets_gc.cpp =================================================================== --- trunk/drivers/wxwidgets_gc.cpp 2011-07-17 17:34:03 UTC (rev 11818) +++ trunk/drivers/wxwidgets_gc.cpp 2011-07-17 19:38:33 UTC (rev 11819) @@ -245,8 +245,10 @@ ( (wxMemoryDC *) m_dc )->SelectObject( *m_bitmap ); // select new bitmap } - if ( m_dc ) + if ( m_dc ) { + delete m_context; m_context = wxGraphicsContext::Create( *( (wxMemoryDC *) m_dc ) ); + } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <sm...@us...> - 2011-07-19 15:46:44
|
Revision: 11821 http://plplot.svn.sourceforge.net/plplot/?rev=11821&view=rev Author: smekal Date: 2011-07-19 15:46:38 +0000 (Tue, 19 Jul 2011) Log Message: ----------- The text clipping didn't work for wxWidgets 2.9.2/Cocoa/Mac since the wxRegion constructor used wasn't implemented. Only for this wxWidgets configuration another wxRegion constructor is used. Apart from that there was no problem using the new wxWidgets version (which soon will become 3.0.0) with the PLplot wxWidgets driver. Modified Paths: -------------- trunk/drivers/wxwidgets_gc.cpp Modified: trunk/drivers/wxwidgets_gc.cpp =================================================================== --- trunk/drivers/wxwidgets_gc.cpp 2011-07-18 05:34:57 UTC (rev 11820) +++ trunk/drivers/wxwidgets_gc.cpp 2011-07-19 15:46:38 UTC (rev 11821) @@ -425,6 +425,19 @@ PLINT rcx[4], rcy[4]; difilt_clip( rcx, rcy ); +#ifdef __WXOSX_COCOA__ + wxPoint topLeft(width, height), bottomRight(-1, -1); + for ( int i = 0; i < 4; i++ ) + { + topLeft.x = topLeft.x > (rcx[i] / scalex) ? (rcx[i] / scalex) : topLeft.x; + topLeft.y = topLeft.y > (height - rcy[i] / scaley) ? (height - rcy[i] / scaley) : topLeft.y; + bottomRight.x = bottomRight.x < (rcx[i] / scalex) ? (rcx[i] / scalex) : bottomRight.x; + bottomRight.y = bottomRight.y < (height - rcy[i] / scaley) ? (height - rcy[i] / scaley) : bottomRight.y; + } + + m_context->Clip( wxRegion( topLeft.x, topLeft.y, bottomRight.x-topLeft.x, bottomRight.y-topLeft.y ) ); + // m_context->Clip( wxRegion( topLeft, bottomRight) ); // this wxRegion constructor doesn't work in wxWidgets 2.9.2/Cocoa +#else wxPoint cpoints[4]; for ( int i = 0; i < 4; i++ ) { @@ -432,6 +445,7 @@ cpoints[i].y = height - rcy[i] / scaley; } m_context->Clip( wxRegion( 4, cpoints ) ); +#endif // text color textRed = pls->cmap0[pls->icol0].r; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |