1. small changes to wxProgressDialog to make it more user-friendly

2. attempt to correct the disappearing focus problem


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@5731 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2000-01-29 02:38:19 +00:00
parent 3fd99dfceb
commit 1b6452dfc4
2 changed files with 36 additions and 26 deletions

View File

@@ -148,21 +148,21 @@ wxProgressDialog::wxProgressDialog(wxString const &title,
{ {
nTimeLabels++; nTimeLabels++;
m_elapsed = CreateLabel(wxT("Elapsed time : "), &lastWindow); m_elapsed = CreateLabel(_("Elapsed time : "), &lastWindow);
} }
if ( style & wxPD_ESTIMATED_TIME ) if ( style & wxPD_ESTIMATED_TIME )
{ {
nTimeLabels++; nTimeLabels++;
m_estimated = CreateLabel(wxT("Estimated time : "), &lastWindow); m_estimated = CreateLabel(_("Estimated time : "), &lastWindow);
} }
if ( style & wxPD_REMAINING_TIME ) if ( style & wxPD_REMAINING_TIME )
{ {
nTimeLabels++; nTimeLabels++;
m_remaining = CreateLabel(wxT("Remaining time : "), &lastWindow); m_remaining = CreateLabel(_("Remaining time : "), &lastWindow);
} }
if ( nTimeLabels > 0 ) if ( nTimeLabels > 0 )
@@ -224,6 +224,7 @@ wxProgressDialog::wxProgressDialog(wxString const &title,
// Update the display (especially on X, GTK) // Update the display (especially on X, GTK)
wxYield(); wxYield();
#ifdef __WXMAC__ #ifdef __WXMAC__
MacUpdateImmediately(); MacUpdateImmediately();
#endif #endif
@@ -234,7 +235,7 @@ wxStaticText *wxProgressDialog::CreateLabel(const wxString& text,
{ {
wxLayoutConstraints *c; wxLayoutConstraints *c;
wxStaticText *label = new wxStaticText(this, -1, wxT("unknown")); wxStaticText *label = new wxStaticText(this, -1, _("unknown"));
c = new wxLayoutConstraints; c = new wxLayoutConstraints;
// VZ: I like the labels be centered - if the others don't mind, you may // VZ: I like the labels be centered - if the others don't mind, you may
@@ -313,6 +314,7 @@ wxProgressDialog::Update(int value, const wxString& newmsg)
// update the display // update the display
wxYield(); wxYield();
} }
#ifdef __WXMAC__ #ifdef __WXMAC__
MacUpdateImmediately(); MacUpdateImmediately();
#endif #endif
@@ -337,6 +339,10 @@ void wxProgressDialog::OnCancel(wxCommandEvent& event)
// request to cancel was received, the next time Update() is called we // request to cancel was received, the next time Update() is called we
// will handle it // will handle it
m_state = Canceled; m_state = Canceled;
// update the button state immediately so that the user knows that the
// request has been noticed
m_btnAbort->Disable();
} }
} }

View File

@@ -171,6 +171,9 @@ wxDialog::~wxDialog()
Show(FALSE); Show(FALSE);
// VZ: this is bogus and breaks focus handling - it won't be returned to the
// window which had it previosuly if we do this
#if 0
if (m_modalShowing) if (m_modalShowing)
{ {
// For some reason, wxWindows can activate another task altogether // For some reason, wxWindows can activate another task altogether
@@ -182,6 +185,7 @@ wxDialog::~wxDialog()
if (GetParent() && GetParent()->GetHWND()) if (GetParent() && GetParent()->GetHWND())
::BringWindowToTop((HWND) GetParent()->GetHWND()); ::BringWindowToTop((HWND) GetParent()->GetHWND());
} }
#endif // 0
m_modalShowing = FALSE; m_modalShowing = FALSE;