{
wxDC::DoSetClippingRegion( x, y, width, height );
- wxRegion temp(x, y, width, height);
+ wxRegion temp(XLOG2DEV(x), YLOG2DEV(y),
+ XLOG2DEVREL(width), YLOG2DEVREL(height));
SetDCClipping(temp.GetX11Region());
void wxWindowDC::DoSetClippingRegionAsRegion( const wxRegion& region )
{
- wxRect box = region.GetBox();
-
- wxDC::DoSetClippingRegion( box.x, box.y, box.width, box.height );
-
SetDCClipping(region.GetX11Region());
// Needs to work differently for Pixmap: without this,
// there's a nasty (Display*) m_display bug. 8/12/94
if (m_window && m_window->GetBackingPixmap())
{
+ wxRect box = region.GetBox();
+
XRectangle rects[1];
rects[0].x = (short)XLOG2DEV_2(box.x);
rects[0].y = (short)YLOG2DEV_2(box.y);
if ( !(sizeFlags & wxSIZE_ALLOW_MINUS_ONE) )
{
- if ( x == -1 )
- x = oldX;
- if ( y == -1 )
- y = oldY;
+ if ( width == -1 )
+ width = oldW;
+ if ( height == -1 )
+ height = oldH;
}
wxSize size(wxDefaultSize);
{
int flags = 0;
- if (x > -1 || (sizeFlags & wxSIZE_ALLOW_MINUS_ONE))
+ if (x != oldX)
flags |= wxMOVE_X;
- if (y > -1 || (sizeFlags & wxSIZE_ALLOW_MINUS_ONE))
+ if (y != oldY)
flags |= wxMOVE_Y;
if (width > 0)
}
else
{
- if( xx < 0 ) xx = 0;
- if( yy < 0 ) yy = 0;
if( w < 1 ) w = 1;
if( h < 1 ) h = 1;