#endif
#include "wx/busyinfo.h"
+#include "wx/generic/stattextg.h"
class WXDLLEXPORT wxInfoFrame : public wxFrame
{
wxInfoFrame(wxWindow *parent, const wxString& message);
private:
- DECLARE_NO_COPY_CLASS(wxInfoFrame)
+ wxDECLARE_NO_COPY_CLASS(wxInfoFrame);
};
#else
wxSIMPLE_BORDER
#endif
- | wxFRAME_TOOL_WINDOW)
+ | wxFRAME_TOOL_WINDOW | wxSTAY_ON_TOP)
{
wxPanel *panel = new wxPanel( this );
+#ifdef __WXGTK__
+ wxGenericStaticText *text = new wxGenericStaticText(panel, wxID_ANY, message);
+#else
wxStaticText *text = new wxStaticText(panel, wxID_ANY, message);
+#endif
panel->SetCursor(*wxHOURGLASS_CURSOR);
text->SetCursor(*wxHOURGLASS_CURSOR);
wxBusyInfo::wxBusyInfo(const wxString& message, wxWindow *parent)
{
- m_InfoFrame = new wxInfoFrame( parent, message);
- if ( parent && parent->HasFlag(wxSTAY_ON_TOP) )
- {
- // we must have this flag to be in front of our parent if it has it
- m_InfoFrame->SetWindowStyleFlag(wxSTAY_ON_TOP);
- }
-
+ m_InfoFrame = new wxInfoFrame(parent, message);
m_InfoFrame->Show(true);
m_InfoFrame->Refresh();
m_InfoFrame->Update();
-
-#ifdef __WXGTK20__
- // FIXME: this is pretty bad, as any call to Yield(), but without it, the
- // static text is never shown and neither gdk_display_flush() nor
- // gdk_display_sync() nor gdk_window_process_updates() helps
- wxMilliSleep(100);
- wxYield();
-#endif
}
wxBusyInfo::~wxBusyInfo()