mirror of
https://git.mirrors.martin98.com/https://github.com/bambulab/BambuStudio.git
synced 2025-09-24 07:33:14 +08:00
ENH: refresh printer file list
Change-Id: Ic86942d2b0b2e8383ef0f06311164aad59e837ad Github: 3383
This commit is contained in:
parent
699466fe2c
commit
6036c0fc0a
@ -105,7 +105,9 @@ MediaFilePanel::MediaFilePanel(wxWindow * parent)
|
|||||||
m_button_download->SetToolTip(_L("Download selected files from printer."));
|
m_button_download->SetToolTip(_L("Download selected files from printer."));
|
||||||
m_button_management = new ::Button(m_manage_panel, _L("Select"));
|
m_button_management = new ::Button(m_manage_panel, _L("Select"));
|
||||||
m_button_management->SetToolTip(_L("Batch manage files."));
|
m_button_management->SetToolTip(_L("Batch manage files."));
|
||||||
for (auto b : {m_button_delete, m_button_download, m_button_management}) {
|
m_button_refresh = new ::Button(m_manage_panel, _L("Refresh"));
|
||||||
|
m_button_refresh->SetToolTip(_L("Reload file list from printer."));
|
||||||
|
for (auto b : {m_button_delete, m_button_download, m_button_refresh, m_button_management}) {
|
||||||
b->SetFont(Label::Body_12);
|
b->SetFont(Label::Body_12);
|
||||||
b->SetCornerRadius(12);
|
b->SetCornerRadius(12);
|
||||||
b->SetPaddingSize({10, 6});
|
b->SetPaddingSize({10, 6});
|
||||||
@ -117,11 +119,16 @@ MediaFilePanel::MediaFilePanel(wxWindow * parent)
|
|||||||
m_button_management->SetBackgroundColorNormal(wxColor("#00AE42"));
|
m_button_management->SetBackgroundColorNormal(wxColor("#00AE42"));
|
||||||
m_button_management->SetTextColorNormal(*wxWHITE);
|
m_button_management->SetTextColorNormal(*wxWHITE);
|
||||||
m_button_management->Enable(false);
|
m_button_management->Enable(false);
|
||||||
|
m_button_refresh->SetBorderWidth(0);
|
||||||
|
m_button_refresh->SetBackgroundColorNormal(wxColor("#00AE42"));
|
||||||
|
m_button_refresh->SetTextColorNormal(*wxWHITE);
|
||||||
|
m_button_refresh->Enable(false);
|
||||||
|
|
||||||
wxBoxSizer *manage_sizer = new wxBoxSizer(wxHORIZONTAL);
|
wxBoxSizer *manage_sizer = new wxBoxSizer(wxHORIZONTAL);
|
||||||
manage_sizer->AddStretchSpacer(1);
|
manage_sizer->AddStretchSpacer(1);
|
||||||
manage_sizer->Add(m_button_download, 0, wxALIGN_CENTER_VERTICAL)->Show(false);
|
manage_sizer->Add(m_button_download, 0, wxALIGN_CENTER_VERTICAL)->Show(false);
|
||||||
manage_sizer->Add(m_button_delete, 0, wxALIGN_CENTER_VERTICAL | wxLEFT | wxRIGHT, 24)->Show(false);
|
manage_sizer->Add(m_button_delete, 0, wxALIGN_CENTER_VERTICAL | wxLEFT | wxRIGHT, 24)->Show(false);
|
||||||
|
manage_sizer->Add(m_button_refresh, 0, wxALIGN_CENTER_VERTICAL);
|
||||||
manage_sizer->Add(m_button_management, 0, wxALIGN_CENTER_VERTICAL | wxLEFT | wxRIGHT, 24);
|
manage_sizer->Add(m_button_management, 0, wxALIGN_CENTER_VERTICAL | wxLEFT | wxRIGHT, 24);
|
||||||
m_manage_panel->SetSizer(manage_sizer);
|
m_manage_panel->SetSizer(manage_sizer);
|
||||||
top_sizer->Add(m_manage_panel, 1, wxEXPAND);
|
top_sizer->Add(m_manage_panel, 1, wxEXPAND);
|
||||||
@ -172,6 +179,11 @@ MediaFilePanel::MediaFilePanel(wxWindow * parent)
|
|||||||
e.Skip();
|
e.Skip();
|
||||||
SetSelecting(!m_image_grid->IsSelecting());
|
SetSelecting(!m_image_grid->IsSelecting());
|
||||||
});
|
});
|
||||||
|
m_button_refresh->Bind(wxEVT_COMMAND_BUTTON_CLICKED, [this](auto &e) {
|
||||||
|
e.Skip();
|
||||||
|
if (auto fs = m_image_grid->GetFileSystem())
|
||||||
|
fs->ListAllFiles();
|
||||||
|
});
|
||||||
m_button_download->Bind(wxEVT_COMMAND_BUTTON_CLICKED, [this](auto &e) {
|
m_button_download->Bind(wxEVT_COMMAND_BUTTON_CLICKED, [this](auto &e) {
|
||||||
m_image_grid->DoActionOnSelection(1);
|
m_image_grid->DoActionOnSelection(1);
|
||||||
SetSelecting(false);
|
SetSelecting(false);
|
||||||
@ -241,6 +253,7 @@ void MediaFilePanel::SetMachineObject(MachineObject* obj)
|
|||||||
fs->Unbind(EVT_MODE_CHANGED, &MediaFilePanel::modeChanged, this);
|
fs->Unbind(EVT_MODE_CHANGED, &MediaFilePanel::modeChanged, this);
|
||||||
fs->Stop(true);
|
fs->Stop(true);
|
||||||
}
|
}
|
||||||
|
m_button_refresh->Enable(false);
|
||||||
m_button_management->Enable(false);
|
m_button_management->Enable(false);
|
||||||
SetSelecting(false);
|
SetSelecting(false);
|
||||||
if (m_machine.empty()) {
|
if (m_machine.empty()) {
|
||||||
@ -257,6 +270,7 @@ void MediaFilePanel::SetMachineObject(MachineObject* obj)
|
|||||||
return;
|
return;
|
||||||
m_time_panel->Show(fs->GetFileType() < PrinterFileSystem::F_MODEL);
|
m_time_panel->Show(fs->GetFileType() < PrinterFileSystem::F_MODEL);
|
||||||
//m_manage_panel->Show(fs->GetFileType() < PrinterFileSystem::F_MODEL);
|
//m_manage_panel->Show(fs->GetFileType() < PrinterFileSystem::F_MODEL);
|
||||||
|
m_button_refresh->Enable(true);
|
||||||
m_button_management->Enable(fs->GetCount() > 0);
|
m_button_management->Enable(fs->GetCount() > 0);
|
||||||
bool download_support = fs->GetFileType() < PrinterFileSystem::F_MODEL || m_model_download_support;
|
bool download_support = fs->GetFileType() < PrinterFileSystem::F_MODEL || m_model_download_support;
|
||||||
m_image_grid->ShowDownload(download_support);
|
m_image_grid->ShowDownload(download_support);
|
||||||
@ -390,6 +404,7 @@ void MediaFilePanel::Rescale()
|
|||||||
|
|
||||||
m_button_download->Rescale();
|
m_button_download->Rescale();
|
||||||
m_button_delete->Rescale();
|
m_button_delete->Rescale();
|
||||||
|
m_button_refresh->Rescale();
|
||||||
m_button_management->Rescale();
|
m_button_management->Rescale();
|
||||||
|
|
||||||
m_image_grid->Rescale();
|
m_image_grid->Rescale();
|
||||||
@ -403,6 +418,7 @@ void MediaFilePanel::SetSelecting(bool selecting)
|
|||||||
bool download_support = fs && fs->GetFileType() < PrinterFileSystem::F_MODEL || m_model_download_support;
|
bool download_support = fs && fs->GetFileType() < PrinterFileSystem::F_MODEL || m_model_download_support;
|
||||||
m_manage_panel->GetSizer()->Show(m_button_download, selecting && download_support);
|
m_manage_panel->GetSizer()->Show(m_button_download, selecting && download_support);
|
||||||
m_manage_panel->GetSizer()->Show(m_button_delete, selecting);
|
m_manage_panel->GetSizer()->Show(m_button_delete, selecting);
|
||||||
|
m_manage_panel->GetSizer()->Show(m_button_refresh, !selecting);
|
||||||
m_manage_panel->Layout();
|
m_manage_panel->Layout();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -71,6 +71,7 @@ private:
|
|||||||
::StaticBox *m_manage_panel = nullptr;
|
::StaticBox *m_manage_panel = nullptr;
|
||||||
::Button * m_button_delete = nullptr;
|
::Button * m_button_delete = nullptr;
|
||||||
::Button *m_button_download = nullptr;
|
::Button *m_button_download = nullptr;
|
||||||
|
::Button *m_button_refresh = nullptr;
|
||||||
::Button *m_button_management = nullptr;
|
::Button *m_button_management = nullptr;
|
||||||
|
|
||||||
ImageGrid * m_image_grid = nullptr;
|
ImageGrid * m_image_grid = nullptr;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user