| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229 | 
							- /////////////////////////////////////////////////////////////////////////////
 
- // Name:        progdlg.h
 
- // Purpose:     interface of wxProgressDialog
 
- // Author:      wxWidgets team
 
- // Licence:     wxWindows licence
 
- /////////////////////////////////////////////////////////////////////////////
 
- #define wxPD_CAN_ABORT          0x0001
 
- #define wxPD_APP_MODAL          0x0002
 
- #define wxPD_AUTO_HIDE          0x0004
 
- #define wxPD_ELAPSED_TIME       0x0008
 
- #define wxPD_ESTIMATED_TIME     0x0010
 
- #define wxPD_SMOOTH             0x0020
 
- #define wxPD_REMAINING_TIME     0x0040
 
- #define wxPD_CAN_SKIP           0x0080
 
- /**
 
-     @class wxGenericProgressDialog
 
-     This class represents a dialog that shows a short message and a
 
-     progress bar. Optionally, it can display ABORT and SKIP buttons, and
 
-     the elapsed, remaining and estimated time for the end of the progress.
 
-     This class provides a generic implementation of the progress dialog.  If
 
-     the platform has a native progress dialog available then it will be
 
-     accessible using the @a wxProgressDialog class, otherwise it will
 
-     essentially be the same as this class.
 
-     Note that you must be aware that wxProgressDialog internally calls
 
-     wxEventLoopBase::YieldFor with @c wxEVT_CATEGORY_UI and @c wxEVT_CATEGORY_USER_INPUT
 
-     and this may cause unwanted re-entrancies or the out-of-order processing
 
-     of pending events (to help preventing the last problem if you're using
 
-     wxProgressDialog in a multi-threaded application you should be sure to use
 
-     wxThreadEvent for your inter-threads communications).
 
-     @beginStyleTable
 
-     @style{wxPD_APP_MODAL}
 
-            Make the progress dialog modal. If this flag is not given, it is
 
-            only "locally" modal - that is the input to the parent window is
 
-            disabled, but not to the other ones.
 
-     @style{wxPD_AUTO_HIDE}
 
-            Causes the progress dialog to disappear from screen as soon as the
 
-            maximum value of the progress meter has been reached.
 
-            If this style is not present, the dialog will become a modal dialog
 
-            (see wxDialog::ShowModal) once the maximum value has been reached
 
-            and wait for the user to dismiss it.
 
-     @style{wxPD_SMOOTH}
 
-            Causes smooth progress of the gauge control (uses a wxGauge with the
 
-            @c wxGA_SMOOTH style).
 
-     @style{wxPD_CAN_ABORT}
 
-            This flag tells the dialog that it should have a "Cancel" button
 
-            which the user may press. If this happens, the next call to
 
-            Update() will return @false.
 
-     @style{wxPD_CAN_SKIP}
 
-            This flag tells the dialog that it should have a "Skip" button
 
-            which the user may press. If this happens, the next call to
 
-            Update() will return @true in its skip parameter.
 
-     @style{wxPD_ELAPSED_TIME}
 
-            This flag tells the dialog that it should show elapsed time (since
 
-            creating the dialog).
 
-     @style{wxPD_ESTIMATED_TIME}
 
-            This flag tells the dialog that it should show estimated time.
 
-     @style{wxPD_REMAINING_TIME}
 
-            This flag tells the dialog that it should show remaining time.
 
-     @endStyleTable
 
-     @library{wxcore}
 
-     @category{cmndlg}
 
- */
 
- class wxGenericProgressDialog : public wxDialog
 
- {
 
- public:
 
-     /**
 
-         Constructor. Creates the dialog, displays it and disables user input
 
-         for other windows, or, if @c wxPD_APP_MODAL flag is not given, for its
 
-         parent window only.
 
-         @param title
 
-             Dialog title to show in titlebar.
 
-         @param message
 
-             Message displayed above the progress bar.
 
-         @param maximum
 
-             Maximum value for the progress bar.
 
-             In the generic implementation the progress bar is constructed
 
-             only if this value is greater than zero.
 
-         @param parent
 
-             Parent window.
 
-         @param style
 
-             The dialog style. See wxProgressDialog.
 
-     */
 
-     wxGenericProgressDialog(const wxString& title, const wxString& message,
 
-                             int maximum = 100,
 
-                             wxWindow* parent = NULL,
 
-                             int style = wxPD_AUTO_HIDE | wxPD_APP_MODAL);
 
-     /**
 
-         Destructor. Deletes the dialog and enables all top level windows.
 
-     */
 
-     virtual ~wxGenericProgressDialog();
 
-     /**
 
-         Returns the last value passed to the Update() function or
 
-         @c wxNOT_FOUND if the dialog has no progress bar.
 
-         @since 2.9.0
 
-     */
 
-     int GetValue() const;
 
-     /**
 
-         Returns the maximum value of the progress meter, as passed to
 
-         the constructor or @c wxNOT_FOUND if the dialog has no progress bar.
 
-         @since 2.9.0
 
-     */
 
-     int GetRange() const;
 
-     /**
 
-         Returns the last message passed to the Update() function;
 
-         if you always passed wxEmptyString to Update() then the message
 
-         set through the constructor is returned.
 
-         @since 2.9.0
 
-     */
 
-     wxString GetMessage() const;
 
-     /**
 
-         Like Update() but makes the gauge control run in indeterminate mode.
 
-         In indeterminate mode the remaining and the estimated time labels (if
 
-         present) are set to "Unknown" or to @a newmsg (if it's non-empty).
 
-         Each call to this function moves the progress bar a bit to indicate
 
-         that some progress was done.
 
-         @see wxGauge::Pulse(), Update()
 
-     */
 
-     virtual bool Pulse(const wxString& newmsg = wxEmptyString, bool* skip = NULL);
 
-     /**
 
-         Can be used to continue with the dialog, after the user had clicked the "Abort" button.
 
-     */
 
-     void Resume();
 
-     /**
 
-         Changes the maximum value of the progress meter given in the constructor.
 
-         This function can only be called (with a positive value) if the value passed 
 
-         in the constructor was positive.
 
-         @since 2.9.1
 
-     */
 
-     void SetRange(int maximum);
 
-       /**
 
-          Returns true if the "Cancel" button was pressed.
 
-          Normally a Cancel button press is indicated by Update() returning
 
-          @false but sometimes it may be more convenient to check if the dialog
 
-          was cancelled from elsewhere in the code and this function allows to
 
-          do it.
 
-          It always returns @false if the Cancel button is not shown at all.
 
-          @since 2.9.1
 
-      */
 
-     bool WasCancelled() const;
 
-      /**
 
-          Returns true if the "Skip" button was pressed.
 
-          This is similar to WasCancelled() but returns @true if the "Skip"
 
-          button was pressed, not the "Cancel" one.
 
-          @since 2.9.1
 
-      */
 
-     bool WasSkipped() const;
 
-     /**
 
-         Updates the dialog, setting the progress bar to the new value and
 
-         updating the message if new one is specified.
 
-         Returns @true unless the "Cancel" button has been pressed.
 
-         If @false is returned, the application can either immediately destroy the
 
-         dialog or ask the user for the confirmation and if the abort is not confirmed
 
-         the dialog may be resumed with Resume() function.
 
-         If @a value is the maximum value for the dialog, the behaviour of the
 
-         function depends on whether @c wxPD_AUTO_HIDE was used when the dialog
 
-         was created. If it was, the dialog is hidden and the function returns
 
-         immediately. If it was not, the dialog becomes a modal dialog and waits
 
-         for the user to dismiss it, meaning that this function does not return
 
-         until this happens.
 
-         Notice that you may want to call Fit() to change the dialog size to
 
-         conform to the length of the new message if desired. The dialog does
 
-         not do this automatically.
 
-         @param value
 
-             The new value of the progress meter. It should be less than or equal to
 
-             the maximum value given to the constructor.
 
-         @param newmsg
 
-             The new messages for the progress dialog text, if it is
 
-             empty (which is the default) the message is not changed.
 
-         @param skip
 
-             If "Skip" button was pressed since last Update() call,
 
-             this is set to @true.
 
-     */
 
-     virtual bool Update(int value, const wxString& newmsg = wxEmptyString,
 
-                         bool* skip = NULL);
 
- };
 
- /**
 
-     @class wxProgressDialog
 
-     If supported by the platform this class will provide the platform's native
 
-     progress dialog, else it will simply be the @a wxGenericProgressDialog.
 
- */
 
- class wxProgressDialog : public wxGenericProgressDialog
 
- {
 
- public:
 
-     wxProgressDialog( const wxString& title, const wxString& message,
 
-                       int maximum = 100,
 
-                       wxWindow *parent = NULL,
 
-                       int style = wxPD_APP_MODAL | wxPD_AUTO_HIDE );
 
- };
 
 
  |