#endif
#include "wx/setup.h"
-#include "wx/frame.h"
+#if wxUSE_PROGRESSDLG
+#include "wx/frame.h"
+#include "wx/time.h"
/** Progress dialog which shows a moving progress bar.
Taken from the Mahogany project.*/
frames or parent frame to avoid recursion problems.
@param title title for window
@param message message to display in window
- @param maximum maximum value for status bar, if <= 0, no bar is shown
+ @param maximum value for status bar, if <= 0, no bar is shown
@param parent window or NULL
- @param disableParentOnly if true, only disable parent window's
- event handling
- @param abortButton if true, dialog will show an abort button
+ @param style is the bit mask of wxPD_XXX constants from wx/defs.h
*/
wxProgressDialog(const wxString &title, wxString const &message,
int maximum = 100,
wxWindow *parent = NULL,
- bool disableParentOnly = FALSE,
- bool abortButton = FALSE);
+ int style = wxPD_APP_MODAL | wxPD_AUTO_HIDE);
/** Destructor.
Re-enables event handling for other windows.
*/
@param newmsg if used, new message to display
@returns true if ABORT button has not been pressed
*/
- bool Update(int value = -1, const char *newmsg = NULL);
+ bool Update(int value = -1, const wxString& newmsg = _T(""));
/** Can be called to continue after the cancel button has been pressed, but
the program decided to continue the operation (e.g., user didn't
- configrm it)
+ confirm it)
*/
void Resume() { m_state = Continue; }
/// Callback for optional abort button
- void OnCancel(wxEvent& WXUNUSED(event)) { m_state = Canceled; }
+ void OnCancel(wxCommandEvent& WXUNUSED(event)) { m_state = Canceled; }
/// callback to disable "hard" window closing
void OnClose(wxCloseEvent& event);
class wxStaticText *m_msg;
/// disable all or parent window only
bool m_disableParentOnly;
+ /// displayed elapsed, estimated, remaining time
+ class wxStaticText *m_elapsed, *m_estimated, *m_remaining;
+ /// time when the dialog was created or NULL
+ class wxTime *m_time;
/// parent window
class wxWindow *m_parent;
/// continue processing or not (return value for Update())
{
Uncancelable = -1, // dialog can't be canceled
Canceled, // can be cancelled and, in fact, was
- Continue // can be cancelled but wasn't
+ Continue, // can be cancelled but wasn't
+ Finished // finished, waiting to be removed from screen
} m_state;
+ /// the abort button (or NULL if none)
+ class wxButton *m_btnAbort;
+ /// the maximum value
+ int m_maximum;
DECLARE_EVENT_TABLE()
};
+#endif
+
#endif
// __PROGDLGH_G__