Found the X11 error in wxDC.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@14138 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -290,13 +290,16 @@ void wxWindowDC::SetUpDC()
|
|||||||
|
|
||||||
if (!hatch_bitmap)
|
if (!hatch_bitmap)
|
||||||
{
|
{
|
||||||
|
int xscreen = DefaultScreen( (Display*) m_display );
|
||||||
|
Window xroot = RootWindow( (Display*) m_display, xscreen );
|
||||||
|
|
||||||
hatch_bitmap = hatches;
|
hatch_bitmap = hatches;
|
||||||
hatch_bitmap[0] = XCreateBitmapFromData( (Display*) m_display, None, bdiag_bits, bdiag_width, bdiag_height );
|
hatch_bitmap[0] = XCreateBitmapFromData( (Display*) m_display, xroot, bdiag_bits, bdiag_width, bdiag_height );
|
||||||
hatch_bitmap[1] = XCreateBitmapFromData( (Display*) m_display, None, cdiag_bits, cdiag_width, cdiag_height );
|
hatch_bitmap[1] = XCreateBitmapFromData( (Display*) m_display, xroot, cdiag_bits, cdiag_width, cdiag_height );
|
||||||
hatch_bitmap[2] = XCreateBitmapFromData( (Display*) m_display, None, fdiag_bits, fdiag_width, fdiag_height );
|
hatch_bitmap[2] = XCreateBitmapFromData( (Display*) m_display, xroot, fdiag_bits, fdiag_width, fdiag_height );
|
||||||
hatch_bitmap[3] = XCreateBitmapFromData( (Display*) m_display, None, cross_bits, cross_width, cross_height );
|
hatch_bitmap[3] = XCreateBitmapFromData( (Display*) m_display, xroot, cross_bits, cross_width, cross_height );
|
||||||
hatch_bitmap[4] = XCreateBitmapFromData( (Display*) m_display, None, horiz_bits, horiz_width, horiz_height );
|
hatch_bitmap[4] = XCreateBitmapFromData( (Display*) m_display, xroot, horiz_bits, horiz_width, horiz_height );
|
||||||
hatch_bitmap[5] = XCreateBitmapFromData( (Display*) m_display, None, verti_bits, verti_width, verti_height );
|
hatch_bitmap[5] = XCreateBitmapFromData( (Display*) m_display, xroot, verti_bits, verti_width, verti_height );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -966,16 +966,17 @@ void wxWindowX11::X11SendPaintEvents()
|
|||||||
wxRegionIterator upd( m_clearRegion );
|
wxRegionIterator upd( m_clearRegion );
|
||||||
while (upd)
|
while (upd)
|
||||||
{
|
{
|
||||||
// XClearArea( ... , upd.GetX(), upd.GetY(), upd.GetWidth(), upd.GetHeight() );
|
XClearArea( wxGlobalDisplay(), (Window) m_mainWidget,
|
||||||
|
upd.GetX(), upd.GetY(), upd.GetWidth(), upd.GetHeight(), False );
|
||||||
upd ++;
|
upd ++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
m_clearRegion.Clear();
|
m_clearRegion.Clear();
|
||||||
}
|
}
|
||||||
|
|
||||||
// wxNcPaintEvent nc_paint_event( GetId() );
|
wxNcPaintEvent nc_paint_event( GetId() );
|
||||||
// nc_paint_event.SetEventObject( this );
|
nc_paint_event.SetEventObject( this );
|
||||||
// GetEventHandler()->ProcessEvent( nc_paint_event );
|
GetEventHandler()->ProcessEvent( nc_paint_event );
|
||||||
|
|
||||||
wxPaintEvent paint_event( GetId() );
|
wxPaintEvent paint_event( GetId() );
|
||||||
paint_event.SetEventObject( this );
|
paint_event.SetEventObject( this );
|
||||||
|
Reference in New Issue
Block a user