/////////////////////////////////////////////////////////////////////////////
-// Name: busyinfo.cpp
+// Name: src/generic/busyinfo.cpp
// Purpose: Information window when app is busy
// Author: Vaclav Slavik
// Copyright: (c) 1999 Vaclav Slavik
-// Licence: wxWindows Licence
+// RCS-ID: $Id$
+// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
-#ifdef __GNUG__
-#pragma implementation "busyinfo.h"
-#endif
-
#include "wx/wxprec.h"
#ifdef __BORLANDC__
#if wxUSE_BUSYINFO
-#include "wx/stattext.h"
-#include "wx/panel.h"
-#include "wx/utils.h"
+// for all others, include the necessary headers
+#ifndef WX_PRECOMP
+ #include "wx/frame.h"
+ #include "wx/stattext.h"
+ #include "wx/panel.h"
+ #include "wx/utils.h"
+#endif
+
#include "wx/busyinfo.h"
+#include "wx/generic/stattextg.h"
+
+class WXDLLEXPORT wxInfoFrame : public wxFrame
+{
+public:
+ wxInfoFrame(wxWindow *parent, const wxString& message);
+
+private:
+ wxDECLARE_NO_COPY_CLASS(wxInfoFrame);
+};
wxInfoFrame::wxInfoFrame(wxWindow *parent, const wxString& message)
- : wxFrame(parent, -1, wxT("Busy"),
+ : wxFrame(parent, wxID_ANY, wxT("Busy"),
wxDefaultPosition, wxDefaultSize,
#if defined(__WXX11__)
- wxTHICK_FRAME
+ wxRESIZE_BORDER
#else
wxSIMPLE_BORDER
#endif
- | wxFRAME_TOOL_WINDOW)
+ | wxFRAME_TOOL_WINDOW | wxSTAY_ON_TOP)
{
wxPanel *panel = new wxPanel( this );
- wxStaticText *text = new wxStaticText(panel, -1, message);
+#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);
int nParentWidth = parent->GetClientSize().x;
int nColor;
- SetBackgroundColour("WHITE");
+ SetBackgroundColour(wxT("WHITE"));
nColor = (LONG)GetBackgroundColour().GetPixel();
::WinSetPresParam( GetHwnd()
,sizeof(LONG)
,(PVOID)&nColor
);
- panel->SetBackgroundColour("WHITE");
+ panel->SetBackgroundColour(wxT("WHITE"));
nColor = (LONG)panel->GetBackgroundColour().GetPixel();
::WinSetPresParam( GetHwndOf(panel)
,nHeight
,SWP_SIZE | SWP_MOVE | SWP_ACTIVATE
);
- text->SetBackgroundColour("WHITE");
+ text->SetBackgroundColour(wxT("WHITE"));
nColor = (LONG)text->GetBackgroundColour().GetPixel();
::WinSetPresParam( GetHwndOf(text)
wxBusyInfo::wxBusyInfo(const wxString& message, wxWindow *parent)
{
- m_InfoFrame = new wxInfoFrame( parent, message);
- m_InfoFrame->Show(TRUE);
-#ifdef __WXMAC__
- m_InfoFrame->Update() ;
-#else
- wxYield();
+ m_InfoFrame = new wxInfoFrame(parent, message);
+ m_InfoFrame->Show(true);
m_InfoFrame->Refresh();
- wxYield();
-#endif
+ m_InfoFrame->Update();
}
wxBusyInfo::~wxBusyInfo()
{
- m_InfoFrame->Show(FALSE);
+ m_InfoFrame->Show(false);
m_InfoFrame->Close();
- wxYield();
}
-#endif
- // wxUSE_BUSYINFO
-
+#endif // wxUSE_BUSYINFO