X11 callbacks must be extern C

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38359 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2006-03-25 03:01:55 +00:00
parent 9c6e3c5714
commit aedeab233f

View File

@@ -243,6 +243,7 @@ wxApp::~wxApp()
}
#if !wxUSE_NANOX
//-----------------------------------------------------------------------
// X11 predicate function for exposure compression
//-----------------------------------------------------------------------
@@ -253,7 +254,8 @@ struct wxExposeInfo
Bool found_non_matching;
};
static Bool expose_predicate (Display *display, XEvent *xevent, XPointer arg)
extern "C"
Bool wxX11ExposePredicate (Display *display, XEvent *xevent, XPointer arg)
{
wxExposeInfo *info = (wxExposeInfo*) arg;
@@ -274,8 +276,8 @@ static Bool expose_predicate (Display *display, XEvent *xevent, XPointer arg)
return TRUE;
}
#endif
// wxUSE_NANOX
#endif // wxUSE_NANOX
//-----------------------------------------------------------------------
// Processes an X event, returning true if the event was processed.
@@ -322,7 +324,7 @@ bool wxApp::ProcessXEvent(WXEvent* _event)
wxExposeInfo info;
info.window = event->xexpose.window;
info.found_non_matching = false;
while (XCheckIfEvent( wxGlobalDisplay(), &tmp_event, expose_predicate, (XPointer) &info ))
while (XCheckIfEvent( wxGlobalDisplay(), &tmp_event, wxX11ExposePredicate, (XPointer) &info ))
{
// Don't worry about optimizing redrawing the border etc.
}
@@ -341,7 +343,7 @@ bool wxApp::ProcessXEvent(WXEvent* _event)
wxExposeInfo info;
info.window = event->xexpose.window;
info.found_non_matching = false;
while (XCheckIfEvent( wxGlobalDisplay(), &tmp_event, expose_predicate, (XPointer) &info ))
while (XCheckIfEvent( wxGlobalDisplay(), &tmp_event, wxX11ExposePredicate, (XPointer) &info ))
{
win->GetUpdateRegion().Union( tmp_event.xexpose.x, tmp_event.xexpose.y,
tmp_event.xexpose.width, tmp_event.xexpose.height );