extern void wxSetKeyboardHook(bool doIt);
#endif
-namespace
-{
-
+// because of mingw32 4.3 bug this struct can't be inside the namespace below:
+// see http://article.gmane.org/gmane.comp.lib.wxwidgets.devel/110282
struct ClassRegInfo
{
// the base name of the class: this is used to construct the unique name in
regnameNR;
};
+namespace
+{
+
wxVector<ClassRegInfo> gs_regClassesInfo;
} // anonymous namespace
for ( size_t n = 0; n < count; n++ )
{
if ( gs_regClassesInfo[n].basename == name )
- return gs_regClassesInfo[n].regname;
+ return gs_regClassesInfo[n].regname.c_str();
}
// we need to register this class
{
wxLogLastError(wxString::Format(wxT("RegisterClass(%s)"),
regClass.regname));
- ::UnregisterClass(regClass.regname, wxhInstance);
+ ::UnregisterClass(regClass.regname.c_str(), wxhInstance);
return NULL;
}
for ( size_t n = 0; n < count; n++ )
{
const ClassRegInfo& regClass = gs_regClassesInfo[n];
- if ( !::UnregisterClass(regClass.regname, wxhInstance) )
+ if ( !::UnregisterClass(regClass.regname.c_str(), wxhInstance) )
{
wxLogLastError(wxString::Format(wxT("UnregisterClass(%s)"),
regClass.regname));
}
- if ( !::UnregisterClass(regClass.regnameNR, wxhInstance) )
+ if ( !::UnregisterClass(regClass.regnameNR.c_str(), wxhInstance) )
{
wxLogLastError(wxString::Format(wxT("UnregisterClass(%s)"),
regClass.regnameNR));
// depending on the OS version and the presence of the manifest, it can
// be either v5 or v6 and instead of trying to guess it just get the
// handle of the already loaded version
- wxDynamicLibrary dllComCtl32(_T("comctl32.dll"),
- wxDL_VERBATIM |
- wxDL_QUIET |
- wxDL_GET_LOADED);
+ wxLoadedDLL dllComCtl32(_T("comctl32.dll"));
if ( !dllComCtl32.IsLoaded() )
{
s_verComCtl32 = 0;
}
}
}
-
- // we shouldn't unload it here as we didn't really load it above
- dllComCtl32.Detach();
}
return s_verComCtl32;
bool wxApp::Yield(bool onlyIfNeeded)
{
- // MT-FIXME
- static bool s_inYield = false;
-
- if ( s_inYield )
+ if ( m_isInsideYield )
{
if ( !onlyIfNeeded )
{
}
// set the flag and don't forget to reset it before returning
- s_inYield = true;
- wxON_BLOCK_EXIT_SET(s_inYield, false);
+ m_isInsideYield = true;
+ wxON_BLOCK_EXIT_SET(m_isInsideYield, false);
#if wxUSE_LOG