BBL > Send print dialog

This commit is contained in:
yw4z
2026-09-12 20:12:36 +03:00
parent e2301e3237
commit 128e145897
9 changed files with 64 additions and 157 deletions
+1 -16
View File
@@ -1,16 +1 @@
<svg width="44" height="22" viewBox="0 0 44 22" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_2172_1443)">
<mask id="mask0_2172_1443" style="mask-type:luminance" maskUnits="userSpaceOnUse" x="0" y="0" width="44" height="22">
<path d="M44 0H0V22H44V0Z" fill="white"/>
</mask>
<g mask="url(#mask0_2172_1443)">
<path d="M40.8572 0.5H3.14286C1.62408 0.5 0.39286 2.067 0.39286 4V18C0.39286 19.933 1.62408 21.5 3.14286 21.5H40.8572C42.376 21.5 43.6072 19.933 43.6072 18V4C43.6072 2.067 42.376 0.5 40.8572 0.5Z" fill="white"/>
<path d="M40.8572 0.5H3.14286C1.62408 0.5 0.39286 2.067 0.39286 4V18C0.39286 19.933 1.62408 21.5 3.14286 21.5H40.8572C42.376 21.5 43.6072 19.933 43.6072 18V4C43.6072 2.067 42.376 0.5 40.8572 0.5Z" stroke="#009688"/>
</g>
</g>
<defs>
<clipPath id="clip0_2172_1443">
<rect width="44" height="22" fill="white"/>
</clipPath>
</defs>
</svg>
<?xml version="1.0" encoding="UTF-8"?><svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 72 22"><rect y="0" width="72" height="22" rx="11" ry="11" style="fill:#009688;"/></svg>

Before

Width:  |  Height:  |  Size: 883 B

After

Width:  |  Height:  |  Size: 191 B

+1 -16
View File
@@ -1,16 +1 @@
<svg width="44" height="22" viewBox="0 0 44 22" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_2172_1443)">
<mask id="mask0_2172_1443" style="mask-type:luminance" maskUnits="userSpaceOnUse" x="0" y="0" width="44" height="22">
<path d="M44 0H0V22H44V0Z" fill="#4c4c55"/>
</mask>
<g mask="url(#mask0_2172_1443)">
<path d="M40.8572 0.5H3.14286C1.62408 0.5 0.39286 2.067 0.39286 4V18C0.39286 19.933 1.62408 21.5 3.14286 21.5H40.8572C42.376 21.5 43.6072 19.933 43.6072 18V4C43.6072 2.067 42.376 0.5 40.8572 0.5Z" fill="#302f34"/>
<path d="M40.8572 0.5H3.14286C1.62408 0.5 0.39286 2.067 0.39286 4V18C0.39286 19.933 1.62408 21.5 3.14286 21.5H40.8572C42.376 21.5 43.6072 19.933 43.6072 18V4C43.6072 2.067 42.376 0.5 40.8572 0.5Z" stroke="#009688"/>
</g>
</g>
<defs>
<clipPath id="clip0_2172_1443">
<rect width="44" height="22" fill="white"/>
</clipPath>
</defs>
</svg>
<?xml version="1.0" encoding="UTF-8"?><svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 72 22"><rect y="0" width="72" height="22" rx="11" ry="11" style="fill:#00675b;"/></svg>

Before

Width:  |  Height:  |  Size: 887 B

After

Width:  |  Height:  |  Size: 191 B

+1 -21
View File
@@ -1,21 +1 @@
<svg width="44" height="22" viewBox="0 0 44 22" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_224_2378)">
<mask id="mask0_224_2378" style="mask-type:luminance" maskUnits="userSpaceOnUse" x="0" y="0" width="44" height="22">
<path d="M44 0H0V22H44V0Z" fill="white"/>
</mask>
<g mask="url(#mask0_224_2378)">
<mask id="mask1_224_2378" style="mask-type:luminance" maskUnits="userSpaceOnUse" x="0" y="0" width="44" height="22">
<path d="M44 0H0V22H44V0Z" fill="white"/>
</mask>
<g mask="url(#mask1_224_2378)">
<path d="M40.8572 0.5H3.14288C1.6241 0.5 0.392883 2.067 0.392883 4V18C0.392883 19.933 1.6241 21.5 3.14288 21.5H40.8572C42.376 21.5 43.6072 19.933 43.6072 18V4C43.6072 2.067 42.376 0.5 40.8572 0.5Z" fill="white"/>
<path d="M40.8572 0.5H3.14288C1.6241 0.5 0.392883 2.067 0.392883 4V18C0.392883 19.933 1.6241 21.5 3.14288 21.5H40.8572C42.376 21.5 43.6072 19.933 43.6072 18V4C43.6072 2.067 42.376 0.5 40.8572 0.5Z" stroke="#CECECE"/>
</g>
</g>
</g>
<defs>
<clipPath id="clip0_224_2378">
<rect width="44" height="22" fill="white"/>
</clipPath>
</defs>
</svg>
<?xml version="1.0" encoding="UTF-8"?><svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 72 22"><rect y="0" width="72" height="22" rx="11" ry="11" style="fill:#dfdfdf;"/></svg>

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 191 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 310 B

@@ -0,0 +1 @@
<?xml version="1.0" encoding="UTF-8"?><svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 72 22"><rect y="0" width="72" height="22" rx="11" ry="11" style="fill:#3e3e45;"/></svg>

After

Width:  |  Height:  |  Size: 191 B

+14 -29
View File
@@ -30,33 +30,17 @@ BBLStatusBarPrint::BBLStatusBarPrint(wxWindow *parent, int id)
top_panel = new wxPanel(m_self, wxID_ANY);
top_panel->SetBackgroundColour(*wxWHITE);
top_panel->SetMinSize(wxSize(m_self->FromDIP(550), m_self->FromDIP(26)));
top_panel->SetMaxSize(wxSize(m_self->FromDIP(550), m_self->FromDIP(26)));
top_panel->SetMinSize(wxSize(m_self->FromDIP(520), m_self->FromDIP(26)));
top_panel->SetMaxSize(wxSize(m_self->FromDIP(520), m_self->FromDIP(26)));
m_status_text = new wxStaticText(top_panel, wxID_ANY, wxEmptyString);
m_status_text->SetForegroundColour(wxColour(107, 107, 107));
m_status_text->SetForegroundColour(wxColour("#363636"));
m_status_text->SetMaxSize(wxSize(m_self->FromDIP(400), m_self->FromDIP(26)));
m_status_text->SetMinSize(wxSize(m_self->FromDIP(400), m_self->FromDIP(26)));
m_status_text->SetFont(::Label::Body_13);
StateColor btn_bt_white(std::pair<wxColour, int>(wxColour(0x90, 0x90, 0x90), StateColor::Disabled),
std::pair<wxColour, int>(wxColour(206, 206, 206), StateColor::Pressed),
std::pair<wxColour, int>(wxColour(238, 238, 238), StateColor::Hovered),
std::pair<wxColour, int>(*wxWHITE, StateColor::Normal));
StateColor btn_bd_white(std::pair<wxColour, int>(wxColour(255, 255, 254), StateColor::Disabled),
std::pair<wxColour, int>(wxColour(38, 46, 48), StateColor::Enabled));
StateColor btn_txt_white(std::pair<wxColour, int>(wxColour("#FFFFFE"), StateColor::Disabled), std::pair<wxColour, int>(wxColour(38, 46, 48), StateColor::Normal));
m_cancelbutton = new Button(m_self, _L("Cancel"));
m_cancelbutton->SetMinSize(wxSize(m_self->FromDIP(80), m_self->FromDIP(32)));
m_cancelbutton->SetMaxSize(wxSize(m_self->FromDIP(80), m_self->FromDIP(32)));
m_cancelbutton->SetBackgroundColor(btn_bt_white);
m_cancelbutton->SetBorderColor(btn_bd_white);
m_cancelbutton->SetTextColor(btn_txt_white);
m_cancelbutton->SetCornerRadius(4);
m_cancelbutton->SetStyle(ButtonStyle::Regular, ButtonType::Choice);
m_cancelbutton->Bind(wxEVT_BUTTON,
[this](wxCommandEvent &evt) {
m_was_cancelled = true;
@@ -65,7 +49,7 @@ BBLStatusBarPrint::BBLStatusBarPrint(wxWindow *parent, int id)
});
m_stext_percent = new wxStaticText(top_panel, wxID_ANY, "", wxDefaultPosition, wxDefaultSize, 0);
m_stext_percent->SetForegroundColour(wxColour(107, 107, 107));
m_stext_percent->SetForegroundColour(wxColour("#363636"));
m_stext_percent->SetFont(::Label::Head_13);
m_stext_percent->Wrap(-1);
@@ -107,8 +91,8 @@ BBLStatusBarPrint::BBLStatusBarPrint(wxWindow *parent, int id)
m_prog = new wxGauge(m_self, wxID_ANY, 100, wxDefaultPosition, wxSize(-1, m_self->FromDIP(6)), wxGA_HORIZONTAL);
m_prog->SetMinSize(wxSize(m_self->FromDIP(550), m_self->FromDIP(6)));
m_prog->SetMaxSize(wxSize(m_self->FromDIP(550), m_self->FromDIP(6)));
m_prog->SetMinSize(wxSize(m_self->FromDIP(520), m_self->FromDIP(6)));
m_prog->SetMaxSize(wxSize(m_self->FromDIP(520), m_self->FromDIP(6)));
m_prog->SetValue(0);
m_sizer_bottom->Add(m_prog, 1, wxALIGN_CENTER, 0);
@@ -128,7 +112,7 @@ BBLStatusBarPrint::BBLStatusBarPrint(wxWindow *parent, int id)
m_sizer_body->Add(0, 0, 1, wxEXPAND, 0);
wxBoxSizer *m_sizer_button = new wxBoxSizer(wxVERTICAL);
m_sizer_button->Add(m_cancelbutton, 0, wxALIGN_CENTER, 0);
m_sizer_button->Add(m_cancelbutton, 0, wxALIGN_CENTER | wxLEFT, m_self->FromDIP(15));
m_sizer->Add(m_sizer_body, 1, wxALIGN_CENTER, 0);
m_sizer->Add(m_sizer_button, 0, wxALIGN_CENTER, 0);
@@ -190,8 +174,8 @@ void BBLStatusBarPrint::show_error_info(wxString msg, int code, wxString descrip
m_link_show_error->Show();
m_static_bitmap_show_error->Show();
top_panel->SetMinSize(wxSize(m_self->FromDIP(550), m_self->FromDIP(32)));
top_panel->SetMaxSize(wxSize(m_self->FromDIP(550), m_self->FromDIP(32)));
top_panel->SetMinSize(wxSize(m_self->FromDIP(520), m_self->FromDIP(32)));
top_panel->SetMaxSize(wxSize(m_self->FromDIP(520), m_self->FromDIP(32)));
m_status_text->SetMaxSize(wxSize(m_self->FromDIP(400), m_self->FromDIP(32)));
m_status_text->SetMinSize(wxSize(m_self->FromDIP(400), m_self->FromDIP(32)));
@@ -355,7 +339,8 @@ void BBLStatusBarPrint::set_status_text(const char *txt)
void BBLStatusBarPrint::msw_rescale() {
//set_prog_block();
m_cancelbutton->SetMinSize(wxSize(m_self->FromDIP(56), m_self->FromDIP(24)));
//m_cancelbutton->SetMinSize(wxSize(m_self->FromDIP(56), m_self->FromDIP(24)));
m_cancelbutton->SetStyle(ButtonStyle::Regular, ButtonType::Choice);
}
wxString BBLStatusBarPrint::get_status_text() const
@@ -385,8 +370,8 @@ void BBLStatusBarPrint::reset()
m_cancelbutton->Show();
m_was_cancelled = false;
top_panel->SetMinSize(wxSize(m_self->FromDIP(550), m_self->FromDIP(26)));
top_panel->SetMaxSize(wxSize(m_self->FromDIP(550), m_self->FromDIP(26)));
top_panel->SetMinSize(wxSize(m_self->FromDIP(520), m_self->FromDIP(26)));
top_panel->SetMaxSize(wxSize(m_self->FromDIP(520), m_self->FromDIP(26)));
m_status_text->SetMaxSize(wxSize(m_self->FromDIP(400), m_self->FromDIP(26)));
m_status_text->SetMinSize(wxSize(m_self->FromDIP(400), m_self->FromDIP(26)));
+1 -1
View File
@@ -29,7 +29,7 @@ BBLStatusBarSend::BBLStatusBarSend(wxWindow *parent, int id)
wxBoxSizer *m_sizer_bottom = new wxBoxSizer(wxHORIZONTAL);
m_status_text = new wxStaticText(m_self, wxID_ANY, wxEmptyString);
m_status_text->SetForegroundColour(wxColour(107, 107, 107));
m_status_text->SetForegroundColour(wxColour("#363636"));
m_status_text->SetFont(::Label::Body_13);
m_status_text->SetMaxSize(wxSize(m_self->FromDIP(360), m_self->FromDIP(40)));
+43 -72
View File
@@ -118,22 +118,13 @@ SelectMachineDialog::SelectMachineDialog(Plater *plater)
SetDoubleBuffered(true);
#endif //__WINDOWS__
// ORCA support translations on all languages
ops_auto.push_back(POItem{"auto", _L("Auto")});
ops_auto.push_back(POItem{"on" , _L("On")});
ops_auto.push_back(POItem{"off" , _L("Off")});
if (wxGetApp().app_config->get("language") == "zh_CN") {
ops_auto.push_back(POItem{"auto", _L("Auto")});
ops_auto.push_back(POItem{"on", _L("On")});
ops_auto.push_back(POItem{"off", _L("Off")});
ops_no_auto.push_back(POItem{"on", _L("On")});
ops_no_auto.push_back(POItem{"off", _L("Off")});
} else {
ops_auto.push_back(POItem{"auto", "Auto"});
ops_auto.push_back(POItem{"on", "On"});
ops_auto.push_back(POItem{"off", "Off"});
ops_no_auto.push_back(POItem{"on", "On"});
ops_no_auto.push_back(POItem{"off", "Off"});
}
ops_no_auto.push_back(POItem{"on" , _L("On")});
ops_no_auto.push_back(POItem{"off", _L("Off")});
// bind
Bind(wxEVT_CLOSE_WINDOW, &SelectMachineDialog::on_cancel, this);
@@ -364,14 +355,9 @@ SelectMachineDialog::SelectMachineDialog(Plater *plater)
/*filaments info*/
wxBoxSizer* sizer_split_filament = new wxBoxSizer(wxHORIZONTAL);
auto m_stext_filament_title = new Label(m_scroll_area, _L("Filament"));
m_stext_filament_title->SetFont(::Label::Head_13);
m_stext_filament_title->SetForegroundColour(0x909090);
auto m_split_line_filament = new wxPanel(m_scroll_area, wxID_ANY, wxDefaultPosition, wxSize(-1, 1), wxTAB_TRAVERSAL);
m_split_line_filament->SetBackgroundColour(0xeeeeee);
m_split_line_filament->SetMinSize(wxSize(-1, 1));
m_split_line_filament->SetMaxSize(wxSize(-1, 1));
auto m_stext_filament_title = new StaticLine(m_scroll_area, false, _L("Filament"));
m_stext_filament_title->SetFont(::Label::Head_14);
m_stext_filament_title->SetForegroundColour(0x363636);
m_sizer_autorefill = new wxBoxSizer(wxHORIZONTAL);
m_ams_backup_tip = new Label(m_scroll_area, _L("Auto Refill"));
@@ -398,16 +384,15 @@ SelectMachineDialog::SelectMachineDialog(Plater *plater)
img_ams_backup->Bind(wxEVT_LEFT_DOWN, [this](auto& e) {if (!m_is_in_sending_mode) popup_filament_backup(); on_rename_enter(); });
sizer_split_filament->Add(0, 0, 0, wxEXPAND, 0);
sizer_split_filament->Add(m_stext_filament_title, 0, wxALIGN_CENTER, 0);
sizer_split_filament->Add(m_split_line_filament, 1, wxALIGN_CENTER_VERTICAL, 0);
sizer_split_filament->Add(m_stext_filament_title, 1, wxALIGN_CENTER, 0);
sizer_split_filament->Add(m_sizer_autorefill, 0, wxALIGN_CENTER, 0);
/*filament area*/
/*1 extruder*/
m_filament_panel = new StaticBox(m_scroll_area);
m_filament_panel->SetBackgroundColour(wxColour("#F8F8F8"));
m_filament_panel->SetBorderWidth(0);
m_filament_panel->SetMinSize(wxSize(FromDIP(637), -1));
m_filament_panel->SetMaxSize(wxSize(FromDIP(637), -1));
m_filament_panel->SetMinSize(wxSize(FromDIP(670), -1)); // dialog size (700) - 15x2 side margin
m_filament_panel->SetMaxSize(wxSize(FromDIP(670), -1));
m_filament_panel_sizer = new wxBoxSizer(wxVERTICAL);
m_sizer_ams_mapping = new wxGridSizer(0, 10, FromDIP(7), FromDIP(7));
@@ -551,13 +536,11 @@ SelectMachineDialog::SelectMachineDialog(Plater *plater)
/*Advanced Options*/
wxBoxSizer* sizer_split_options = new wxBoxSizer(wxHORIZONTAL);
auto m_split_options_line = new wxPanel(m_scroll_area, wxID_ANY);
m_split_options_line->SetBackgroundColour(0xEEEEEE);
m_split_options_line->SetSize(wxSize(-1, FromDIP(1)));
m_split_options_line->SetMinSize(wxSize(-1, FromDIP(1)));
m_split_options_line->SetMaxSize(wxSize(-1, FromDIP(1)));
auto m_settings_title = new StaticLine(m_scroll_area, false, _L("Settings"));
m_settings_title->SetFont(::Label::Head_14);
m_settings_title->SetForegroundColour(0x363636);
sizer_split_options->Add(0, 0, 0, wxEXPAND, 0);
sizer_split_options->Add(m_split_options_line, 1, wxALIGN_CENTER, 0);
sizer_split_options->Add(m_settings_title, 1, wxALIGN_CENTER, 0);
m_options_other = new wxPanel(m_scroll_area);
m_options_other->SetBackgroundColour(*wxWHITE);
@@ -613,7 +596,7 @@ SelectMachineDialog::SelectMachineDialog(Plater *plater)
ops_no_auto, "pa_value"
);
m_sizer_options = new wxGridSizer(0, 2, FromDIP(5), FromDIP(10));
m_sizer_options = new wxGridSizer(0, 1, FromDIP(5), FromDIP(10)); // ORCA use all options on single row to improve readability. prevents overflowing and supports longer translations
m_sizer_options->Add(option_timelapse, 0, wxEXPAND);
m_sizer_options->Add(option_auto_bed_level, 0, wxEXPAND);
m_sizer_options->Add(option_flow_dynamics_cali, 0, wxEXPAND);
@@ -802,7 +785,7 @@ SelectMachineDialog::SelectMachineDialog(Plater *plater)
m_scroll_sizer->Add(0, 0, 0, wxTOP, FromDIP(10));
m_scroll_sizer->Add(m_warn_when_drying_sizer, 0, wxLEFT|wxRIGHT, FromDIP(15));
m_scroll_sizer->Add(sizer_split_options, 1, wxEXPAND|wxLEFT|wxRIGHT, FromDIP(15));
m_scroll_sizer->Add(0, 0, 0, wxTOP, FromDIP(10));
//m_scroll_sizer->Add(0, 0, 0, wxTOP, FromDIP(10));
m_scroll_sizer->Add(m_options_other, 0, wxEXPAND|wxLEFT|wxRIGHT, FromDIP(15));
m_scroll_sizer->Add(0, 0, 0, wxTOP, FromDIP(30));
@@ -3131,7 +3114,7 @@ void SelectMachineDialog::load_option_vals(MachineObject *obj)
wxString error_messgae;
if (obj->canEnableTimelapse(error_messgae) && !has_timelapse_warning(error_messgae)) {
m_checkbox_list["timelapse"]->enable(true);
m_checkbox_list["timelapse"]->update_tooltip(wxEmptyString);
m_checkbox_list["timelapse"]->update_tooltip(_L("If timelapse is enabled, the camera will take a snapshot after each layer is printed, and once the print job is complete, all snapshots will be compiled into a timelapse video."));
} else {
m_checkbox_list["timelapse"]->enable(false);
m_checkbox_list["timelapse"]->setValue("off");
@@ -6424,19 +6407,18 @@ void SelectMachineDialog::UpdateStatusCheckWarning_ExtensionTool(MachineObject*
wxBoxSizer *sizer = new wxBoxSizer(wxHORIZONTAL);
m_printoption_title = new Label(this, title);
m_printoption_title->SetFont(Label::Body_13);
m_printoption_title->SetFont(Label::Body_14);
m_printoption_title->SetForegroundColour(StateColor::darkModeColorFor("#363636"));
update_title_display();
m_printoption_tips = new ScalableButton(this, wxID_ANY, "icon_qusetion", wxEmptyString, wxDefaultSize, wxDefaultPosition, wxBU_EXACTFIT | wxNO_BORDER, true);
m_printoption_tips->SetMinSize(wxSize(FromDIP(18), FromDIP(18)));
m_printoption_tips->SetMaxSize(wxSize(FromDIP(18), FromDIP(18)));
m_printoption_tips = new ScalableButton(this, wxID_ANY, "icon_qusetion", wxEmptyString, wxDefaultSize, wxDefaultPosition, wxBU_EXACTFIT | wxNO_BORDER, true, 18);
m_printoption_item = new PrintOptionItem(this, m_ops, param);
m_printoption_item->SetFont(Label::Body_13);
sizer->Add(m_printoption_tips, 0, wxALIGN_LEFT | wxRIGHT | wxALIGN_CENTER_VERTICAL, FromDIP(10));
sizer->Add(m_printoption_title, 0, wxALIGN_LEFT | wxALIGN_CENTER_VERTICAL, 0);
sizer->Add(m_printoption_tips, 0, wxLEFT | wxALIGN_LEFT | wxALIGN_CENTER_VERTICAL, FromDIP(2));
sizer->AddStretchSpacer();
sizer->Add(m_printoption_item, 0, wxALIGN_RIGHT | wxALIGN_CENTER_VERTICAL, 0);
@@ -6488,11 +6470,7 @@ void PrintOption::enable(bool en)
{
m_printoption_item->enable(en);
if (en) {
m_printoption_title->SetForegroundColour(StateColor::darkModeColorFor("#262E30"));
} else {
m_printoption_title->SetForegroundColour(StateColor::darkModeColorFor(wxColour(144, 144, 144)));
}
m_printoption_title->SetForegroundColour(StateColor::darkModeColorFor(en ? "#363636" : "#6B6B6B"));
}
}
@@ -6558,7 +6536,7 @@ void PrintOption::update_title_display()
wxGCDC dc;
wxSize titleSize = dc.GetTextExtent(m_full_title);
int maxTitleWidth = FromDIP(150);
int maxTitleWidth = FromDIP(250);
wxString displayTitle = m_full_title;
if (titleSize.x > maxTitleWidth) {
@@ -6598,7 +6576,8 @@ PrintOptionItem::PrintOptionItem(wxWindow* parent, std::vector<POItem> ops, std:
#endif //__WINDOWS__
m_param = param;
SetBackgroundColour(PRINT_OPT_ITEM_BG_GRAY);
if(parent)
SetBackgroundColour(parent->GetBackgroundColour());
Bind(wxEVT_PAINT, &PrintOptionItem::OnPaint, this);
Bind(wxEVT_ENTER_WINDOW, [this](auto& e) { SetCursor(wxCURSOR_HAND); });
@@ -6677,8 +6656,8 @@ void PrintOptionItem::doRender(wxDC& dc)
{
auto size = GetSize();
dc.SetPen(wxPen(*wxTRANSPARENT_PEN));
dc.SetBrush(GetBackgroundColour());
dc.DrawRoundedRectangle(0, 0, size.x, size.y, FromDIP(5));
dc.SetBrush(StateColor::darkModeColorFor(PRINT_OPT_ITEM_BG_GRAY));
dc.DrawRoundedRectangle(0, 0, size.x, size.y, size.y / 2);
auto left = FromDIP(4);
@@ -6695,18 +6674,11 @@ void PrintOptionItem::doRender(wxDC& dc)
/*selected*/
auto selected_left = selected * PRINT_OPT_WIDTH + FromDIP(4);
if (m_enable) {
if (!wxGetApp().dark_mode()) {
dc.DrawBitmap(m_selected_bk.bmp(), selected_left, (size.y - m_selected_bk.GetBmpHeight()) / 2);
} else {
dc.DrawBitmap(m_selected_bk_dark.bmp(), selected_left, (size.y - m_selected_bk_dark.GetBmpHeight()) / 2);
}
ScalableBitmap bmp = wxGetApp().dark_mode() ? m_selected_bk_dark : m_selected_bk;
dc.DrawBitmap(bmp.bmp(), selected_left, (size.y - bmp.GetBmpHeight()) / 2);
} else {
if (!wxGetApp().dark_mode()) {
dc.DrawBitmap(m_selected_disabled_bk.bmp(), selected_left, (size.y - m_selected_disabled_bk.GetBmpHeight()) / 2);
} else {
dc.DrawBitmap(m_selected_bk_dark.bmp(), selected_left, (size.y - m_selected_bk_dark.GetBmpHeight()) / 2);
}
ScalableBitmap bmp = wxGetApp().dark_mode() ? m_selected_disabled_bk_dark : m_selected_disabled_bk;
dc.DrawBitmap(bmp.bmp(), selected_left, (size.y - bmp.GetBmpHeight()) / 2);
}
for (auto it = m_ops.begin(); it != m_ops.end(); ++it)
@@ -6716,7 +6688,7 @@ void PrintOptionItem::doRender(wxDC& dc)
if (text_key == selected_key)
{
const wxColour& clr = m_enable ? StateColor::darkModeColorFor("#009688") : StateColor::darkModeColorFor(wxColour(144, 144, 144));
const wxColour& clr = StateColor::darkModeColorFor(m_enable ? "#FEFEFE" : "#6B6A6A");
dc.SetPen(wxPen(clr));
dc.SetTextForeground(clr);
@@ -6728,7 +6700,7 @@ void PrintOptionItem::doRender(wxDC& dc)
}
else
{
const wxColour& clr = m_enable ? StateColor::darkModeColorFor("#262E30") : StateColor::darkModeColorFor(wxColour(144, 144, 144));
const wxColour& clr = StateColor::darkModeColorFor(m_enable ? "#6B6B6B" : "#6B6A6A");
dc.SetPen(wxPen(clr));
dc.SetTextForeground(clr);
@@ -6995,14 +6967,12 @@ void PrinterInfoBox::Create()
/*printer combobox*/
wxBoxSizer* sizer_split_printer = new wxBoxSizer(wxHORIZONTAL);
m_stext_printer_title = new Label(this, _L("Printer"), wxALIGN_TOP);
m_stext_printer_title->SetFont(::Label::Head_13);
m_stext_printer_title->SetForegroundColour(0x909090);
m_stext_printer_title->SetFont(::Label::Head_14);
m_stext_printer_title->SetForegroundColour(0x363636);
m_button_question = new ScalableButton(this, wxID_ANY, "icon_qusetion", wxEmptyString, wxDefaultSize, wxDefaultPosition, wxBU_EXACTFIT | wxNO_BORDER, true);
m_button_question = new ScalableButton(this, wxID_ANY, "icon_qusetion", wxEmptyString, wxDefaultSize, wxDefaultPosition, wxBU_EXACTFIT | wxNO_BORDER, true, 18);
m_button_question->Bind(wxEVT_BUTTON, &PrinterInfoBox::OnBtnQuestionClicked, this);
m_button_question->SetToolTip(_L("Click here if you can't connect to the printer"));
m_button_question->SetMinSize(wxSize(FromDIP(18), FromDIP(18)));
m_button_question->SetMaxSize(wxSize(FromDIP(18), FromDIP(18)));
auto m_split_line = new wxPanel(this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL);
m_split_line->SetBackgroundColour(0xeeeeee);
@@ -7012,6 +6982,7 @@ void PrinterInfoBox::Create()
sizer_split_printer->Add(m_stext_printer_title, 0, wxALIGN_CENTER_VERTICAL, 0);
sizer_split_printer->AddSpacer(FromDIP(5));
sizer_split_printer->Add(m_button_question, 0, wxALIGN_CENTER_VERTICAL, 0);
sizer_split_printer->AddSpacer(FromDIP(5));
sizer_split_printer->Add(m_split_line, 1, wxALIGN_CENTER_VERTICAL, 0);
wxBoxSizer* sizer_printer_area = new wxBoxSizer(wxHORIZONTAL);
@@ -7020,14 +6991,14 @@ void PrinterInfoBox::Create()
/*printer area*/
auto printer_staticbox = new StaticBox(this);
printer_staticbox->SetMinSize(wxSize(FromDIP(338), FromDIP(68)));
printer_staticbox->SetMaxSize(wxSize(FromDIP(338), FromDIP(68)));
printer_staticbox->SetMinSize(wxSize(FromDIP(388), FromDIP(68)));
printer_staticbox->SetMaxSize(wxSize(FromDIP(388), FromDIP(68)));
printer_staticbox->SetBorderColor(wxColour("#CECECE"));
m_comboBox_printer = new ComboBox(printer_staticbox, wxID_ANY, "", wxDefaultPosition, wxDefaultSize, 0, nullptr, wxCB_READONLY);
m_comboBox_printer->SetBorderWidth(0);
m_comboBox_printer->SetMinSize(wxSize(FromDIP(300), FromDIP(60)));
m_comboBox_printer->SetMaxSize(wxSize(FromDIP(300), FromDIP(60)));
m_comboBox_printer->SetMinSize(wxSize(FromDIP(350), FromDIP(60)));
m_comboBox_printer->SetMaxSize(wxSize(FromDIP(350), FromDIP(60)));
m_comboBox_printer->SetBackgroundColor(*wxWHITE);
m_comboBox_printer->Bind(wxEVT_COMBOBOX, &SelectMachineDialog::on_selection_changed, m_select_dialog);
+2 -2
View File
@@ -54,7 +54,7 @@
#include "Jobs/Worker.hpp"
#define PRINT_OPT_BG_GRAY 0xF8F8F8
#define PRINT_OPT_ITEM_BG_GRAY 0xEEEEEE
#define PRINT_OPT_ITEM_BG_GRAY 0xD9D9D9
// Previous definitions
@@ -151,7 +151,7 @@ struct POItem
bool operator==(const POItem &other) const { return key == other.key && value == other.value; }
};
#define PRINT_OPT_WIDTH FromDIP(44)
#define PRINT_OPT_WIDTH FromDIP(72) // ORCA wider buttons for translation support
class PrintOptionItem : public wxPanel
{
public: