1. more warnings fixed

2. fixed wxProgressDialog to work as wxDialog now does


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@8488 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin 2000-10-07 21:34:35 +00:00
parent b0a6bb75bc
commit ef8698d677
3 changed files with 35 additions and 7 deletions

View File

@ -63,12 +63,20 @@ public:
*/
void Resume() { m_state = Continue; }
// implementation from now on
// callback for optional abort button
protected:
// callback for optional abort button
void OnCancel(wxCommandEvent& event);
// callback to disable "hard" window closing
// callback to disable "hard" window closing
void OnClose(wxCloseEvent& event);
// callback to detect when the dialog is closed
void OnShow(wxShowEvent& event);
// must be called to reenable the other windows temporarily disabled while
// the dialog was shown
void ReenableOtherWindows();
private:
// create the label with given text and another one to show the time nearby
// under the lastWindow and modify it to be the same as the control created

View File

@ -65,8 +65,11 @@ static void SetTimeLabel(unsigned long val, wxStaticText *label);
// ----------------------------------------------------------------------------
BEGIN_EVENT_TABLE(wxProgressDialog, wxDialog)
EVT_BUTTON(wxID_CANCEL, wxProgressDialog::OnCancel)
EVT_CLOSE(wxProgressDialog::OnClose)
EVT_BUTTON(wxID_CANCEL, wxProgressDialog::OnCancel)
EVT_SHOW(wxProgressDialog::OnShow)
EVT_CLOSE(wxProgressDialog::OnClose)
END_EVENT_TABLE()
IMPLEMENT_CLASS(wxProgressDialog, wxDialog)
@ -377,15 +380,32 @@ void wxProgressDialog::OnClose(wxCloseEvent& event)
}
}
void wxProgressDialog::OnShow(wxShowEvent& event)
{
// if the dialog is being hidden, it was closed, so reenable other windows
// now
if ( event.GetShow() )
{
ReenableOtherWindows();
}
}
// ----------------------------------------------------------------------------
// destruction
// ----------------------------------------------------------------------------
wxProgressDialog::~wxProgressDialog()
{
// normally this should have been already done, but just in case
ReenableOtherWindows();
}
void wxProgressDialog::ReenableOtherWindows()
{
if ( GetWindowStyle() & wxPD_APP_MODAL )
{
delete m_winDisabler;
m_winDisabler = (wxWindowDisabler *)NULL;
}
else
{

View File

@ -178,10 +178,10 @@ public:
// status inquiries
bool HasChildren() const { return !m_children.IsEmpty(); }
bool IsSelected() const { return m_hasHilight; }
bool IsSelected() const { return m_hasHilight != 0; }
bool IsExpanded() const { return !m_isCollapsed; }
bool HasPlus() const { return m_hasPlus || HasChildren(); }
bool IsBold() const { return m_isBold; }
bool IsBold() const { return m_isBold != 0; }
// attributes
// get them - may be NULL