OrcaSlicer latest
OrcaSlicer
Loading...
Searching...
No Matches
Slic3r::GUI::wgtDeviceNozzleRackToolHead Class Reference

#include </home/runner/work/OrcaSlicer/OrcaSlicer/src/slic3r/GUI/DeviceTab/wgtDeviceNozzleRack.h>

Inheritance diagram for Slic3r::GUI::wgtDeviceNozzleRackToolHead:
Collaboration diagram for Slic3r::GUI::wgtDeviceNozzleRackToolHead:

Public Member Functions

 wgtDeviceNozzleRackToolHead (wxWindow *parent)
void UpdateToolHeadInfo (const DevNozzle &extruder_nozzle)
void Rescale ()

Private Member Functions

void CreateGui ()

Private Attributes

bool m_extruder_nozzle_exist = false
std::string m_filament_color
ScalableBitmap * m_extruder_nozzle_normal = nullptr
ScalableBitmap * m_extruder_nozzle_empty = nullptr
wxStaticBitmap * m_toolhead_icon
Label * m_nozzle_diamenter_label
Label * m_nozzle_flowtype_label

Detailed Description

Constructor & Destructor Documentation

◆ wgtDeviceNozzleRackToolHead()

Slic3r::GUI::wgtDeviceNozzleRackToolHead::wgtDeviceNozzleRackToolHead ( wxWindow * parent)
inline
82: wxPanel(parent) { CreateGui();}
void CreateGui()
Definition wgtDeviceNozzleRack.cpp:186

References CreateGui().

Here is the call graph for this function:

Member Function Documentation

◆ CreateGui()

void Slic3r::GUI::wgtDeviceNozzleRackToolHead::CreateGui ( )
private
187{
188 wxBoxSizer* mainSizer = new wxBoxSizer(wxVERTICAL);
189
190 // Create Header
191 wgtDeviceNozzleRackTitle* title_box = new wgtDeviceNozzleRackTitle(this, _L("Toolhead"));
192 mainSizer->Add(title_box, 0, wxEXPAND | wxTOP);
193 mainSizer->AddStretchSpacer();
194
195 // Image
196 m_extruder_nozzle_empty = new ScalableBitmap(this, "dev_rack_toolhead_empty", 98);
197 m_extruder_nozzle_normal = new ScalableBitmap(this, "dev_rack_toolhead_normal", 98);
198 m_toolhead_icon = new wxStaticBitmap(this, wxID_ANY, m_extruder_nozzle_empty->bmp(), wxDefaultPosition, WX_DIP_SIZE(98, 98));
199 mainSizer->Add(m_toolhead_icon, 0, wxALIGN_CENTRE_HORIZONTAL | wxTOP, FromDIP(20));
200
201 // Nozzle info
202 m_nozzle_diamenter_label = new Label(this);
204 m_nozzle_diamenter_label->SetBackgroundColour(*wxWHITE);
205 mainSizer->Add(m_nozzle_diamenter_label, 0, wxALIGN_CENTRE_HORIZONTAL | wxBOTTOM | wxTOP, FromDIP(5));
206
207 m_nozzle_flowtype_label = new Label(this);
209 m_nozzle_flowtype_label->SetBackgroundColour(*wxWHITE);
210 mainSizer->Add(m_nozzle_flowtype_label, 0, wxALIGN_CENTRE_HORIZONTAL);
211 mainSizer->AddStretchSpacer();
212
213 // Set sizer
214 SetSizer(mainSizer);
215 SetMaxSize(WX_DIP_SIZE(132, -1));
216 SetMinSize(WX_DIP_SIZE(132, -1));
217 SetSize(WX_DIP_SIZE(132, -1));
218}
#define _L(s)
Definition OBJ.cpp:34
static wxFont Body_13
Definition Label.hpp:54
ScalableBitmap * m_extruder_nozzle_normal
Definition wgtDeviceNozzleRack.h:96
Label * m_nozzle_flowtype_label
Definition wgtDeviceNozzleRack.h:101
wxStaticBitmap * m_toolhead_icon
Definition wgtDeviceNozzleRack.h:98
Label * m_nozzle_diamenter_label
Definition wgtDeviceNozzleRack.h:100
ScalableBitmap * m_extruder_nozzle_empty
Definition wgtDeviceNozzleRack.h:97
#define WX_DIP_SIZE(x, y)
Definition wgtDeviceNozzleRack.cpp:49

References _L, Label::Body_13, m_extruder_nozzle_empty, m_extruder_nozzle_normal, m_nozzle_diamenter_label, m_nozzle_flowtype_label, m_toolhead_icon, and WX_DIP_SIZE.

Referenced by wgtDeviceNozzleRackToolHead().

Here is the caller graph for this function:

◆ Rescale()

void Slic3r::GUI::wgtDeviceNozzleRackToolHead::Rescale ( )
257{
258 m_extruder_nozzle_normal->msw_rescale();
259 m_extruder_nozzle_empty->msw_rescale();
261
262 Layout();
263 Refresh();
264}
bool m_extruder_nozzle_exist
Definition wgtDeviceNozzleRack.h:92
std::string m_filament_color
Definition wgtDeviceNozzleRack.h:93
static wxBitmap SetNozzleBmpColor(const wxBitmap &bmp, const std::string &color_str)
Definition wgtDeviceNozzleRack.cpp:72

References m_extruder_nozzle_empty, m_extruder_nozzle_exist, m_extruder_nozzle_normal, m_filament_color, m_toolhead_icon, and Slic3r::GUI::SetNozzleBmpColor().

Here is the call graph for this function:

◆ UpdateToolHeadInfo()

void Slic3r::GUI::wgtDeviceNozzleRackToolHead::UpdateToolHeadInfo ( const DevNozzle & extruder_nozzle)
221{
222 /* Labels */
223 if (extruder_nozzle.IsEmpty())
224 {
225 m_nozzle_diamenter_label->Show(false);
226 m_nozzle_flowtype_label->SetLabel(_L("Empty"));
227 }
228 else if (extruder_nozzle.IsUnknown())
229 {
230 m_nozzle_diamenter_label->Show(false);
231 m_nozzle_flowtype_label->SetLabel(_L("Unknown"));
232 }
233 else if (extruder_nozzle.IsAbnormal())
234 {
235 m_nozzle_diamenter_label->Show(false);
236 m_nozzle_flowtype_label->SetLabel(_L("Error"));
237 }
238 else /*extruder_nozzle.IsNormal()*/
239 {
240 m_nozzle_diamenter_label->Show(true);
241 m_nozzle_diamenter_label->SetLabel(extruder_nozzle.GetNozzleDiameterStr());
242 m_nozzle_flowtype_label->SetLabel(extruder_nozzle.GetNozzleFlowTypeStr());
243 }
244
245 /* Icon*/
246 bool extruder_exist = !extruder_nozzle.IsEmpty();
247 if (m_extruder_nozzle_exist != extruder_exist)
248 {
249 m_extruder_nozzle_exist = extruder_exist;
250 m_filament_color = extruder_nozzle.GetFilamentColor();
252 m_toolhead_icon->Refresh();
253 }
254}

References _L, Slic3r::DevNozzle::GetFilamentColor(), Slic3r::DevNozzle::GetNozzleDiameterStr(), Slic3r::DevNozzle::GetNozzleFlowTypeStr(), Slic3r::DevNozzle::IsAbnormal(), Slic3r::DevNozzle::IsEmpty(), Slic3r::DevNozzle::IsUnknown(), m_extruder_nozzle_empty, m_extruder_nozzle_exist, m_extruder_nozzle_normal, m_filament_color, m_nozzle_diamenter_label, m_nozzle_flowtype_label, m_toolhead_icon, and Slic3r::GUI::SetNozzleBmpColor().

Here is the call graph for this function:

Member Data Documentation

◆ m_extruder_nozzle_empty

ScalableBitmap* Slic3r::GUI::wgtDeviceNozzleRackToolHead::m_extruder_nozzle_empty = nullptr
private

◆ m_extruder_nozzle_exist

bool Slic3r::GUI::wgtDeviceNozzleRackToolHead::m_extruder_nozzle_exist = false
private

Referenced by Rescale(), and UpdateToolHeadInfo().

◆ m_extruder_nozzle_normal

ScalableBitmap* Slic3r::GUI::wgtDeviceNozzleRackToolHead::m_extruder_nozzle_normal = nullptr
private

◆ m_filament_color

std::string Slic3r::GUI::wgtDeviceNozzleRackToolHead::m_filament_color
private

Referenced by Rescale(), and UpdateToolHeadInfo().

◆ m_nozzle_diamenter_label

Label* Slic3r::GUI::wgtDeviceNozzleRackToolHead::m_nozzle_diamenter_label
private

Referenced by CreateGui(), and UpdateToolHeadInfo().

◆ m_nozzle_flowtype_label

Label* Slic3r::GUI::wgtDeviceNozzleRackToolHead::m_nozzle_flowtype_label
private

Referenced by CreateGui(), and UpdateToolHeadInfo().

◆ m_toolhead_icon

wxStaticBitmap* Slic3r::GUI::wgtDeviceNozzleRackToolHead::m_toolhead_icon
private

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