int maximum,
wxWindow *parent,
int style)
- : wxDialog(parent, wxID_ANY, title),
+ : wxDialog(GetParentForModalDialog(parent), wxID_ANY, title),
m_skip(false),
m_delay(3),
m_hasAbortButton(false),
wxClientDC dc(this);
dc.SetFont(wxSystemSettings::GetFont(wxSYS_DEFAULT_GUI_FONT));
- long widthText = 0;
+ wxCoord widthText = 0;
dc.GetTextExtent(message, &widthText, NULL, NULL, NULL, NULL);
wxBoxSizer *sizer = new wxBoxSizer(wxVERTICAL);
sizeDlg.y += 2*LAYOUT_MARGIN;
// try to make the dialog not square but rectangular of reasonable width
- sizeDlg.x = (wxCoord)wxMax(widthText, 4*sizeDlg.y/3);
+ sizeDlg.x = (wxCoord)wxMax(widthText*2, 4*sizeDlg.y/3);
sizeDlg.x *= 3;
sizeDlg.x /= 2;
SetClientSize(sizeDlg);
wxASSERT_MSG( value <= m_maximum, wxT("invalid progress value") );
- // fill up the gauge if value == maximum because this means that the dialog
- // is going to close and the gauge shouldn't be partly empty in this case
- if ( m_gauge && value <= m_maximum )
- {
- m_gauge->SetValue(value == m_maximum ? value : value + 1);
- }
+ if ( m_gauge )
+ m_gauge->SetValue(value);
UpdateMessage(newmsg);