OrcaSlicer latest
OrcaSlicer
Loading...
Searching...
No Matches
Slic3r::BBLStatusBarBind Class Reference

#include </home/runner/work/OrcaSlicer/OrcaSlicer/src/slic3r/GUI/BBLStatusBarBind.hpp>

Inheritance diagram for Slic3r::BBLStatusBarBind:
Collaboration diagram for Slic3r::BBLStatusBarBind:

Public Types

using CancelFn = std::function<void()>
 Cancel callback function type.

Public Member Functions

 BBLStatusBarBind (wxWindow *parent=nullptr, int id=-1)
 ~BBLStatusBarBind ()=default
int get_progress () const
void set_prog_block ()
void set_progress (int) override
int get_range () const override
void set_range (int=100) override
void clear_percent () override
void show_error_info (wxString msg, int code, wxString description, wxString extra) override
void show_progress (bool)
void start_busy (int=100)
void stop_busy ()
void set_cancel_callback_fina (BBLStatusBarBind::CancelFn ccb)
bool is_busy () const
void set_cancel_callback (CancelFn=CancelFn()) override
void reset_cancel_callback ()
wxPanel * get_panel ()
void set_status_text (const wxString &txt)
void set_percent_text (const wxString &txt)
void msw_rescale ()
void set_status_text (const std::string &txt)
void set_status_text (const char *txt) override
wxString get_status_text () const
void set_font (const wxFont &font)
void set_object_info (const wxString &txt)
void set_slice_info (const wxString &txt)
void show_slice_info (bool show)
bool is_slice_info_shown ()
bool update_status (wxString &msg, bool &was_cancel, int percent=-1, bool yield=true)
void reset ()
void show_cancel_button ()
void hide_cancel_button ()

Private Attributes

wxPanel * m_self
wxGauge * m_prog
Button * m_cancelbutton
wxStaticText * m_status_text
wxStaticText * m_stext_percent
wxBoxSizer * m_sizer
wxBoxSizer * m_sizer_eline
bool m_busy = false
bool m_was_cancelled = false
CancelFn m_cancel_cb
CancelFn m_cancel_cb_fina

Detailed Description

Member Typedef Documentation

◆ CancelFn

using Slic3r::ProgressIndicator::CancelFn = std::function<void()>
inherited

Cancel callback function type.

Constructor & Destructor Documentation

◆ BBLStatusBarBind()

Slic3r::BBLStatusBarBind::BBLStatusBarBind ( wxWindow * parent = nullptr,
int id = -1 )
25 : m_self{new wxPanel(parent, id == -1 ? wxID_ANY : id)}
26 , m_sizer(new wxBoxSizer(wxHORIZONTAL))
27{
28 m_self->SetBackgroundColour(wxColour(255,255,255));
29 m_self->SetMinSize(wxSize(m_self->FromDIP(450), m_self->FromDIP(30)));
30
31 m_prog = new wxGauge(m_self, wxID_ANY, 100, wxDefaultPosition, wxSize(m_self->FromDIP(400), m_self->FromDIP(6)), wxGA_HORIZONTAL);
32 m_prog->SetValue(0);
33
34 m_stext_percent = new wxStaticText(m_self, wxID_ANY, "", wxDefaultPosition, wxDefaultSize, 0);
35 m_stext_percent->SetForegroundColour(wxColour(107, 107, 107));
37 m_stext_percent->Wrap(-1);
38
39 m_sizer->Add(m_prog, 1, wxALIGN_CENTER, 0);
40 m_sizer->Add(0, 0, 1, wxEXPAND, 0);
41 m_sizer->Add(m_stext_percent, 1, wxALIGN_CENTER, 0);
42
43 m_self->SetSizer(m_sizer);
44 m_self->Layout();
45 m_sizer->Fit(m_self);
46}
class WXDLLIMPEXP_FWD_CORE wxStaticText
Definition ProgressDialog.hpp:30
class WXDLLIMPEXP_FWD_CORE wxGauge
Definition ProgressDialog.hpp:29
static wxFont Body_13
Definition Label.hpp:54
wxBoxSizer * m_sizer
Definition BBLStatusBarBind.hpp:33
wxStaticText * m_stext_percent
Definition BBLStatusBarBind.hpp:32
wxGauge * m_prog
Definition BBLStatusBarBind.hpp:29
wxPanel * m_self
Definition BBLStatusBarBind.hpp:28

References Label::Body_13, m_prog, m_self, m_sizer, m_stext_percent, wxGauge, and wxStaticText.

◆ ~BBLStatusBarBind()

Slic3r::BBLStatusBarBind::~BBLStatusBarBind ( )
default

Member Function Documentation

◆ clear_percent()

void Slic3r::BBLStatusBarBind::clear_percent ( )
overridevirtual

Implements Slic3r::ProgressIndicator.

86{
87
88}

◆ get_panel()

wxPanel * Slic3r::BBLStatusBarBind::get_panel ( )
145{
146 return m_self;
147}

References m_self.

◆ get_progress()

int Slic3r::BBLStatusBarBind::get_progress ( ) const
53{
54 return m_prog->GetValue();
55}

References m_prog.

◆ get_range()

int Slic3r::BBLStatusBarBind::get_range ( ) const
overridevirtual

Implements Slic3r::ProgressIndicator.

74{
75 return m_prog->GetRange();
76}

References m_prog.

◆ get_status_text()

wxString Slic3r::BBLStatusBarBind::get_status_text ( ) const
178{
179 return m_status_text->GetLabelText();
180}
wxStaticText * m_status_text
Definition BBLStatusBarBind.hpp:31

References m_status_text.

◆ hide_cancel_button()

void Slic3r::BBLStatusBarBind::hide_cancel_button ( )
215{
216 m_sizer->Hide(m_cancelbutton);
217 m_sizer->Layout();
218}
Button * m_cancelbutton
Definition BBLStatusBarBind.hpp:30

References m_cancelbutton, and m_sizer.

Referenced by stop_busy().

Here is the caller graph for this function:

◆ is_busy()

bool Slic3r::BBLStatusBarBind::is_busy ( ) const
inline
53{ return m_busy; }
bool m_busy
Definition BBLStatusBarBind.hpp:76

References m_busy.

◆ is_slice_info_shown()

bool Slic3r::BBLStatusBarBind::is_slice_info_shown ( )

◆ msw_rescale()

void Slic3r::BBLStatusBarBind::msw_rescale ( )
172 {
174 m_cancelbutton->SetMinSize(wxSize(m_self->FromDIP(56), m_self->FromDIP(24)));
175}
void set_prog_block()
Definition BBLStatusBarBind.cpp:48

References m_cancelbutton, m_self, and set_prog_block().

Here is the call graph for this function:

◆ reset()

void Slic3r::BBLStatusBarBind::reset ( )
196{
197 set_status_text("");
198 m_was_cancelled = false;
199 set_progress(0);
200}
void set_status_text(const wxString &txt)
Definition BBLStatusBarBind.cpp:149
void set_progress(int) override
Definition BBLStatusBarBind.cpp:57
bool m_was_cancelled
Definition BBLStatusBarBind.hpp:77

References m_was_cancelled, set_progress(), and set_status_text().

Here is the call graph for this function:

◆ reset_cancel_callback()

void Slic3r::BBLStatusBarBind::reset_cancel_callback ( )
inline
void set_cancel_callback(CancelFn=CancelFn()) override
Definition BBLStatusBarBind.cpp:133

References set_cancel_callback().

Here is the call graph for this function:

◆ set_cancel_callback()

void Slic3r::BBLStatusBarBind::set_cancel_callback ( BBLStatusBarBind::CancelFn ccb = CancelFn())
overridevirtual

Implements Slic3r::ProgressIndicator.

133 {
134 /* m_cancel_cb = ccb;
135 if (ccb) {
136 m_sizer->Show(m_cancelbutton);
137 }
138 else {
139 m_sizer->Hide(m_cancelbutton);
140 }
141 m_sizer->Layout();*/
142}

Referenced by reset_cancel_callback().

Here is the caller graph for this function:

◆ set_cancel_callback_fina()

void Slic3r::BBLStatusBarBind::set_cancel_callback_fina ( BBLStatusBarBind::CancelFn ccb)
124{
125 m_cancel_cb_fina = ccb;
126 if (ccb) {
127 m_sizer->Show(m_cancelbutton);
128 } else {
129 m_sizer->Hide(m_cancelbutton);
130 }
131}
CancelFn m_cancel_cb_fina
Definition BBLStatusBarBind.hpp:79

References m_cancel_cb_fina, m_cancelbutton, and m_sizer.

◆ set_font()

void Slic3r::BBLStatusBarBind::set_font ( const wxFont & font)
204{
205 m_self->SetFont(font);
206}

References m_self.

◆ set_object_info()

void Slic3r::BBLStatusBarBind::set_object_info ( const wxString & txt)

◆ set_percent_text()

void Slic3r::BBLStatusBarBind::set_percent_text ( const wxString & txt)
158{
159 m_stext_percent->SetLabelText(txt);
160}

References m_stext_percent.

Referenced by set_progress().

Here is the caller graph for this function:

◆ set_prog_block()

void Slic3r::BBLStatusBarBind::set_prog_block ( )
49{
50}

Referenced by msw_rescale(), and set_progress().

Here is the caller graph for this function:

◆ set_progress()

void Slic3r::BBLStatusBarBind::set_progress ( int val)
overridevirtual

Implements Slic3r::ProgressIndicator.

58{
60
61 if(val < 0)
62 return;
63
64 if (!m_sizer->IsShown(m_prog)) {
65 m_sizer->Show(m_prog);
67 }
68 m_prog->SetValue(val);
69 set_percent_text(wxString::Format("%d%%", val));
70 m_sizer->Layout();
71}
void set_percent_text(const wxString &txt)
Definition BBLStatusBarBind.cpp:157

References m_cancelbutton, m_prog, m_sizer, set_percent_text(), and set_prog_block().

Referenced by reset(), and update_status().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ set_range()

void Slic3r::BBLStatusBarBind::set_range ( int val = 100)
overridevirtual

Implements Slic3r::ProgressIndicator.

79{
80 if(val != m_prog->GetRange()) {
81 m_prog->SetRange(val);
82 }
83}

References m_prog.

◆ set_slice_info()

void Slic3r::BBLStatusBarBind::set_slice_info ( const wxString & txt)

◆ set_status_text() [1/3]

void Slic3r::BBLStatusBarBind::set_status_text ( const char * txt)
overridevirtual

Implements Slic3r::ProgressIndicator.

168{
169 this->set_status_text(wxString::FromUTF8(txt));
170}

References set_status_text().

Here is the call graph for this function:

◆ set_status_text() [2/3]

void Slic3r::BBLStatusBarBind::set_status_text ( const std::string & txt)
163{
164 this->set_status_text(txt.c_str());
165}

References set_status_text().

Here is the call graph for this function:

◆ set_status_text() [3/3]

void Slic3r::BBLStatusBarBind::set_status_text ( const wxString & txt)
150{
151 //auto txtss = "Sending the printing task has timed out.\nPlease try again!";
152 //auto txtss = "The printing project is being uploaded... 25%%";
153 //m_status_text->SetLabelText(txtss);
154 //m_status_text->SetLabelText(txt);
155}

Referenced by reset(), set_status_text(), set_status_text(), and update_status().

Here is the caller graph for this function:

◆ show_cancel_button()

void Slic3r::BBLStatusBarBind::show_cancel_button ( )
209{
210 m_sizer->Show(m_cancelbutton);
211 m_sizer->Layout();
212}

References m_cancelbutton, and m_sizer.

Referenced by start_busy().

Here is the caller graph for this function:

◆ show_error_info()

void Slic3r::BBLStatusBarBind::show_error_info ( wxString msg,
int code,
wxString description,
wxString extra )
overridevirtual

Implements Slic3r::ProgressIndicator.

91{
92
93}

◆ show_progress()

void Slic3r::BBLStatusBarBind::show_progress ( bool show)
96{
97 if (show) {
98 m_sizer->Show(m_prog);
99 m_sizer->Layout();
100 }
101 else {
102 //m_sizer->Hide(m_prog);
103 m_sizer->Layout();
104 }
105}

References m_prog, and m_sizer.

Referenced by start_busy(), and stop_busy().

Here is the caller graph for this function:

◆ show_slice_info()

void Slic3r::BBLStatusBarBind::show_slice_info ( bool show)

◆ start_busy()

void Slic3r::BBLStatusBarBind::start_busy ( int rate = 100)
108{
109 m_busy = true;
110 show_progress(true);
112}
void show_cancel_button()
Definition BBLStatusBarBind.cpp:208
void show_progress(bool)
Definition BBLStatusBarBind.cpp:95

References m_busy, show_cancel_button(), and show_progress().

Here is the call graph for this function:

◆ stop_busy()

void Slic3r::BBLStatusBarBind::stop_busy ( )
115{
116 show_progress(false);
118 m_prog->SetValue(0);
119 m_sizer->Layout();
120 m_busy = false;
121}
void hide_cancel_button()
Definition BBLStatusBarBind.cpp:214

References hide_cancel_button(), m_busy, m_prog, m_sizer, and show_progress().

Here is the call graph for this function:

◆ update_status()

bool Slic3r::BBLStatusBarBind::update_status ( wxString & msg,
bool & was_cancel,
int percent = -1,
bool yield = true )
183{
184 set_status_text(msg);
185
186 if (percent >= 0)
187 this->set_progress(percent);
188
189 if (yield)
190 wxEventLoopBase::GetActive()->YieldFor(wxEVT_CATEGORY_UI | wxEVT_CATEGORY_USER_INPUT);
191 was_cancel = m_was_cancelled;
192 return true;
193}

References m_was_cancelled, set_progress(), and set_status_text().

Here is the call graph for this function:

Member Data Documentation

◆ m_busy

bool Slic3r::BBLStatusBarBind::m_busy = false
private

Referenced by is_busy(), start_busy(), and stop_busy().

◆ m_cancel_cb

CancelFn Slic3r::BBLStatusBarBind::m_cancel_cb
private

◆ m_cancel_cb_fina

CancelFn Slic3r::BBLStatusBarBind::m_cancel_cb_fina
private

◆ m_cancelbutton

Button* Slic3r::BBLStatusBarBind::m_cancelbutton
private

◆ m_prog

wxGauge* Slic3r::BBLStatusBarBind::m_prog
private

◆ m_self

wxPanel* Slic3r::BBLStatusBarBind::m_self
private

◆ m_sizer

wxBoxSizer* Slic3r::BBLStatusBarBind::m_sizer
private

◆ m_sizer_eline

wxBoxSizer* Slic3r::BBLStatusBarBind::m_sizer_eline
private

◆ m_status_text

wxStaticText* Slic3r::BBLStatusBarBind::m_status_text
private

Referenced by get_status_text().

◆ m_stext_percent

wxStaticText* Slic3r::BBLStatusBarBind::m_stext_percent
private

◆ m_was_cancelled

bool Slic3r::BBLStatusBarBind::m_was_cancelled = false
private

Referenced by reset(), and update_status().


The documentation for this class was generated from the following files: