diff options
Diffstat (limited to 'src/slic3r/GUI/Jobs/FillBedJob.hpp')
-rw-r--r-- | src/slic3r/GUI/Jobs/FillBedJob.hpp | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/src/slic3r/GUI/Jobs/FillBedJob.hpp b/src/slic3r/GUI/Jobs/FillBedJob.hpp new file mode 100644 index 000000000..448ae53d4 --- /dev/null +++ b/src/slic3r/GUI/Jobs/FillBedJob.hpp @@ -0,0 +1,46 @@ +#ifndef FILLBEDJOB_HPP +#define FILLBEDJOB_HPP + +#include "ArrangeJob.hpp" + +namespace Slic3r { namespace GUI { + +class Plater; + +class FillBedJob : public Job +{ + Plater *m_plater; + int m_object_idx = -1; + + using ArrangePolygon = arrangement::ArrangePolygon; + using ArrangePolygons = arrangement::ArrangePolygons; + + ArrangePolygons m_selected; + ArrangePolygons m_unselected; + + Points m_bedpts; + + int m_status_range = 0; + +protected: + + void prepare() override; + +public: + FillBedJob(std::shared_ptr<ProgressIndicator> pri, Plater *plater) + : Job{std::move(pri)}, m_plater{plater} + {} + + int status_range() const override + { + return m_status_range; + } + + void process() override; + + void finalize() override; +}; + +}} // namespace Slic3r::GUI + +#endif // FILLBEDJOB_HPP |