2018-09-14 07:28:00 +00:00
|
|
|
#ifndef IPROGRESSINDICATOR_HPP
|
|
|
|
#define IPROGRESSINDICATOR_HPP
|
|
|
|
|
|
|
|
#include <string>
|
|
|
|
#include <functional>
|
|
|
|
|
|
|
|
namespace Slic3r {
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @brief Generic progress indication interface.
|
|
|
|
*/
|
|
|
|
class ProgressIndicator {
|
|
|
|
public:
|
2019-12-16 08:47:31 +00:00
|
|
|
|
|
|
|
/// Cancel callback function type
|
|
|
|
using CancelFn = std::function<void()>;
|
|
|
|
|
|
|
|
virtual ~ProgressIndicator() = default;
|
|
|
|
|
|
|
|
virtual void set_range(int range) = 0;
|
|
|
|
virtual void set_cancel_callback(CancelFn = CancelFn()) = 0;
|
|
|
|
virtual void set_progress(int pr) = 0;
|
|
|
|
virtual void set_status_text(const char *) = 0; // utf8 char array
|
|
|
|
virtual int get_range() const = 0;
|
2018-09-14 07:28:00 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
#endif // IPROGRESSINDICATOR_HPP
|