From c44f2d6324bec922de9e97346fba0013f9e55443 Mon Sep 17 00:00:00 2001
From: HanifKoh <76276251+HanifKoh@users.noreply.github.com>
Date: Mon, 5 Oct 2026 14:12:00 +0800
Subject: [PATCH] Remove the Unreachable MakerWorld Publish Dialog (#16121)
---
localization/i18n/list.txt | 1 -
resources/images/topbar_publish.svg | 4 -
resources/images/topbar_publish_disable.svg | 10 -
src/slic3r/CMakeLists.txt | 2 -
src/slic3r/GUI/BBLTopbar.cpp | 32 ---
src/slic3r/GUI/BBLTopbar.hpp | 5 -
src/slic3r/GUI/Plater.cpp | 118 +--------
src/slic3r/GUI/Plater.hpp | 8 -
src/slic3r/GUI/PublishDialog.cpp | 270 --------------------
src/slic3r/GUI/PublishDialog.hpp | 75 ------
10 files changed, 1 insertion(+), 524 deletions(-)
delete mode 100644 resources/images/topbar_publish.svg
delete mode 100644 resources/images/topbar_publish_disable.svg
delete mode 100644 src/slic3r/GUI/PublishDialog.cpp
delete mode 100644 src/slic3r/GUI/PublishDialog.hpp
diff --git a/localization/i18n/list.txt b/localization/i18n/list.txt
index d9f2049565..4d5ab72073 100644
--- a/localization/i18n/list.txt
+++ b/localization/i18n/list.txt
@@ -177,7 +177,6 @@ src/slic3r/GUI/PresetHints.cpp
src/slic3r/GUI/ProgressStatusBar.cpp
src/slic3r/GUI/PlateSettingsDialog.cpp
src/slic3r/GUI/PrivacyUpdateDialog.cpp
-src/slic3r/GUI/PublishDialog.cpp
src/slic3r/GUI/PublishSettingsDialog.cpp
src/slic3r/GUI/SavePresetDialog.cpp
src/slic3r/GUI/SceneBenchmark.cpp
diff --git a/resources/images/topbar_publish.svg b/resources/images/topbar_publish.svg
deleted file mode 100644
index 24159a192a..0000000000
--- a/resources/images/topbar_publish.svg
+++ /dev/null
@@ -1,4 +0,0 @@
-
diff --git a/resources/images/topbar_publish_disable.svg b/resources/images/topbar_publish_disable.svg
deleted file mode 100644
index 4e2d6b20ec..0000000000
--- a/resources/images/topbar_publish_disable.svg
+++ /dev/null
@@ -1,10 +0,0 @@
-
diff --git a/src/slic3r/CMakeLists.txt b/src/slic3r/CMakeLists.txt
index b74247e338..23d5ea225b 100644
--- a/src/slic3r/CMakeLists.txt
+++ b/src/slic3r/CMakeLists.txt
@@ -483,8 +483,6 @@ set(SLIC3R_GUI_SOURCES
GUI/ProjectDirtyStateManager.cpp
GUI/ProjectDirtyStateManager.hpp
GUI/Project.hpp
- GUI/PublishDialog.cpp
- GUI/PublishDialog.hpp
GUI/PublishSettingsDialog.cpp
GUI/PublishSettingsDialog.hpp
GUI/PurgeModeDialog.cpp
diff --git a/src/slic3r/GUI/BBLTopbar.cpp b/src/slic3r/GUI/BBLTopbar.cpp
index eeb8df79fa..ba377ca21d 100644
--- a/src/slic3r/GUI/BBLTopbar.cpp
+++ b/src/slic3r/GUI/BBLTopbar.cpp
@@ -46,7 +46,6 @@ enum CUSTOM_ID
ID_TOP_DROPDOWN_MENU,
ID_TITLE,
ID_MODEL_STORE,
- ID_PUBLISH,
ID_CALIB,
ID_TOOL_BAR = 3200,
ID_AMS_NOTEBOOK,
@@ -339,10 +338,6 @@ void BBLTopbar::Init(wxFrame* parent)
this->AddSpacer(FromDIP(25));
//this->AddStretchSpacer(1);
- //m_publish_bitmap = create_scaled_bitmap("topbar_publish", nullptr, TOPBAR_ICON_SIZE);
- //m_publish_item = this->AddTool(ID_PUBLISH, "", m_publish_bitmap);
- //m_publish_disable_bitmap = create_scaled_bitmap("topbar_publish_disable", nullptr, TOPBAR_ICON_SIZE);
- //m_publish_item->SetDisabledBitmap(m_publish_disable_bitmap);
//this->EnableTool(m_publish_item->GetId(), false);
//this->AddSpacer(FromDIP(4));
@@ -403,7 +398,6 @@ void BBLTopbar::Init(wxFrame* parent)
this->Bind(wxEVT_AUITOOLBAR_TOOL_DROPDOWN, &BBLTopbar::OnRedo, this, wxID_REDO);
this->Bind(wxEVT_AUITOOLBAR_TOOL_DROPDOWN, &BBLTopbar::OnUndo, this, wxID_UNDO);
//this->Bind(wxEVT_AUITOOLBAR_TOOL_DROPDOWN, &BBLTopbar::OnModelStoreClicked, this, ID_MODEL_STORE);
- //this->Bind(wxEVT_AUITOOLBAR_TOOL_DROPDOWN, &BBLTopbar::OnPublishClicked, this, ID_PUBLISH);
}
BBLTopbar::~BBLTopbar()
@@ -420,12 +414,6 @@ void BBLTopbar::OnOpenProject(wxAuiToolBarEvent& event)
plater->load_project();
}
-//void BBLTopbar::show_publish_button(bool show)
-//{
-// this->EnableTool(m_publish_item->GetId(), show);
-// Refresh();
-//}
-
void BBLTopbar::OnSaveProject(wxAuiToolBarEvent& event)
{
MainFrame* main_frame = dynamic_cast(m_frame);
@@ -482,22 +470,6 @@ void BBLTopbar::OnModelStoreClicked(wxAuiToolBarEvent& event)
//GUI::wxGetApp().load_url(wxString(wxGetApp().app_config->get_web_host_url() + MODEL_STORE_URL));
}
-void BBLTopbar::OnPublishClicked(wxAuiToolBarEvent& event)
-{
- if (!wxGetApp().getAgent()) {
- BOOST_LOG_TRIVIAL(info) << "publish: no agent";
- return;
- }
-
- //no more check
- //if (GUI::wxGetApp().plater()->model().objects.empty()) return;
-
-#ifdef ENABLE_PUBLISHING
- wxGetApp().plater()->show_publish_dialog();
-#endif
- wxGetApp().open_publish_page_dialog();
-}
-
void BBLTopbar::SetFileMenu(wxMenu* file_menu)
{
m_file_menu = file_menu;
@@ -579,10 +551,6 @@ void BBLTopbar::Rescale() {
if (m_title_ctrl)
m_title_ctrl->SetTitle(m_titleText);
- /*item = this->FindTool(ID_PUBLISH);
- item->SetBitmap(create_scaled_bitmap("topbar_publish", this, TOPBAR_ICON_SIZE));
- item->SetDisabledBitmap(create_scaled_bitmap("topbar_publish_disable", nullptr, TOPBAR_ICON_SIZE));*/
-
/*item = this->FindTool(ID_MODEL_STORE);
item->SetBitmap(create_scaled_bitmap("topbar_store", this, TOPBAR_ICON_SIZE));
*/
diff --git a/src/slic3r/GUI/BBLTopbar.hpp b/src/slic3r/GUI/BBLTopbar.hpp
index db34d8dc80..c2ee17a2b7 100644
--- a/src/slic3r/GUI/BBLTopbar.hpp
+++ b/src/slic3r/GUI/BBLTopbar.hpp
@@ -52,12 +52,10 @@ public:
void OnMouseCaptureLost(wxMouseCaptureLostEvent& event);
void OnMenuClose(wxMenuEvent& event);
void OnOpenProject(wxAuiToolBarEvent& event);
- //void show_publish_button(bool show);
void OnSaveProject(wxAuiToolBarEvent& event);
void OnUndo(wxAuiToolBarEvent& event);
void OnRedo(wxAuiToolBarEvent& event);
void OnModelStoreClicked(wxAuiToolBarEvent& event);
- void OnPublishClicked(wxAuiToolBarEvent &event);
wxAuiToolBarItem* FindToolByCurrentPosition();
@@ -97,14 +95,11 @@ private:
wxString m_titleText;
- //wxAuiToolBarItem *m_publish_item;
wxAuiToolBarItem* m_undo_item;
wxAuiToolBarItem* m_redo_item;
wxAuiToolBarItem* m_calib_item;
wxAuiToolBarItem* maximize_btn;
- wxBitmap m_publish_bitmap;
- wxBitmap m_publish_disable_bitmap;
wxBitmap maximize_bitmap;
wxBitmap window_bitmap;
diff --git a/src/slic3r/GUI/Plater.cpp b/src/slic3r/GUI/Plater.cpp
index 0ce364afe5..0b037a2eff 100644
--- a/src/slic3r/GUI/Plater.cpp
+++ b/src/slic3r/GUI/Plater.cpp
@@ -226,7 +226,6 @@
#include "SelectMachine.hpp"
#include "SendMultiMachinePage.hpp"
#include "SendToPrinter.hpp"
-#include "PublishDialog.hpp"
#include "ConfigWizard.hpp"
#include "SyncAmsInfoDialog.hpp"
#include "../Utils/ASCIIFolding.hpp"
@@ -331,7 +330,6 @@ wxDEFINE_EVENT(EVT_EXPORT_BEGAN, wxCommandEvent);
wxDEFINE_EVENT(EVT_EXPORT_FINISHED, wxCommandEvent);
wxDEFINE_EVENT(EVT_IMPORT_MODEL_ID, wxCommandEvent);
wxDEFINE_EVENT(EVT_DOWNLOAD_PROJECT, wxCommandEvent);
-wxDEFINE_EVENT(EVT_PUBLISH, wxCommandEvent);
wxDEFINE_EVENT(EVT_OPEN_PLATESETTINGSDIALOG, wxCommandEvent);
wxDEFINE_EVENT(EVT_OPEN_FILAMENT_MAP_SETTINGS_DIALOG, wxCommandEvent);
// BBS: backup & restore
@@ -339,7 +337,6 @@ wxDEFINE_EVENT(EVT_RESTORE_PROJECT, wxCommandEvent);
wxDEFINE_EVENT(EVT_PRINT_FINISHED, wxCommandEvent);
wxDEFINE_EVENT(EVT_SEND_CALIBRATION_FINISHED, wxCommandEvent);
wxDEFINE_EVENT(EVT_SEND_FINISHED, wxCommandEvent);
-wxDEFINE_EVENT(EVT_PUBLISH_FINISHED, wxCommandEvent);
//BBS: repair model
wxDEFINE_EVENT(EVT_REPAIR_MODEL, wxCommandEvent);
wxDEFINE_EVENT(EVT_FILAMENT_COLOR_CHANGED, wxCommandEvent);
@@ -7146,7 +7143,6 @@ struct Plater::priv
SelectMachineDialog* m_select_machine_dlg = nullptr;
SendMultiMachinePage* m_send_multi_dlg = nullptr;
SendToPrinterDialog* m_send_to_sdcard_dlg = nullptr;
- PublishDialog *m_publish_dlg = nullptr;
// Session-level stash of the last published selection. Written on publish and on
// loading a published 3MF; read when the Publish dialog is opened.
@@ -7200,7 +7196,6 @@ struct Plater::priv
std::string m_broken_shown_sig;
bool auto_reslice_pending {false};
bool auto_reslice_after_cancel {false};
- bool m_is_publishing {false};
int m_is_RightClickInLeftUI{-1};
int m_cur_slice_plate;
//BBS: m_slice_all in .gcode.3mf file case, set true when slice all
@@ -7604,7 +7599,6 @@ struct Plater::priv
void on_action_open_project(SimpleEvent&);
void on_action_slice_plate(SimpleEvent&);
void on_action_slice_all(SimpleEvent&);
- void on_action_publish(wxCommandEvent &evt);
void on_action_print_plate(SimpleEvent&);
void open_machine_select_dialog(int plate_idx, PrintFromType print_type = PrintFromType::FROM_NORMAL);
void on_action_print_all(SimpleEvent&);
@@ -7622,8 +7616,6 @@ struct Plater::priv
void on_3dcanvas_mouse_dragging_finished(SimpleEvent&);
//void show_action_buttons(const bool is_ready_to_slice) const;
- bool show_publish_dlg(bool show = true);
- void update_publish_dialog_status(wxString &msg, int percent = -1);
void on_action_print_plate_from_sdcard(SimpleEvent&);
void on_tab_selection_changing(wxBookCtrlEvent&);
@@ -7873,7 +7865,6 @@ Plater::priv::priv(Plater *q, MainFrame *main_frame)
background_process.set_export_began_event(EVT_EXPORT_BEGAN);
background_process.set_export_finished_event(EVT_EXPORT_FINISHED);
this->q->Bind(EVT_SLICING_UPDATE, &priv::on_slicing_update, this);
- this->q->Bind(EVT_PUBLISH, &priv::on_action_publish, this);
this->q->Bind(EVT_REPAIR_MODEL, &priv::on_repair_model, this);
this->q->Bind(EVT_FILAMENT_COLOR_CHANGED, &priv::on_filament_color_changed, this);
this->q->Bind(EVT_INSTALL_PLUGIN_NETWORKING, &priv::install_network_plugin, this);
@@ -8226,7 +8217,6 @@ Plater::priv::priv(Plater *q, MainFrame *main_frame)
q->Bind(EVT_PRINT_FINISHED, [q](wxCommandEvent& evt) { q->print_job_finished(evt); });
q->Bind(EVT_SEND_CALIBRATION_FINISHED, [q](wxCommandEvent& evt) { q->send_calibration_job_finished(evt); });
q->Bind(EVT_SEND_FINISHED, [q](wxCommandEvent& evt) { q->send_job_finished(evt); });
- q->Bind(EVT_PUBLISH_FINISHED, [q](wxCommandEvent& evt) { q->publish_job_finished(evt);});
q->Bind(EVT_OPEN_PLATESETTINGSDIALOG, [q](wxCommandEvent& evt) { q->open_platesettings_dialog(evt);});
q->Bind(EVT_OPEN_FILAMENT_MAP_SETTINGS_DIALOG, [q](wxCommandEvent &evt) { q->open_filament_map_setting_dialog(evt); });
//q->Bind(EVT_GLVIEWTOOLBAR_ASSEMBLE, [q](SimpleEvent&) { q->select_view_3D("Assemble"); });
@@ -13361,11 +13351,6 @@ void Plater::priv::on_process_completed(SlicingProcessCompletedEvent &evt)
show_action_buttons(true);*/
ready_to_slice = true;
//this->main_frame->update_slice_print_status(MainFrame::eEventSliceUpdate, true, true);
-
- //BBS
- if (m_is_publishing) {
- m_publish_dlg->cancel();
- }
} else {
if((ready_to_slice) || (wxGetApp().get_mode() == comSimple)) {
//this means the current plate is not the slicing plate
@@ -13407,15 +13392,6 @@ void Plater::priv::on_process_completed(SlicingProcessCompletedEvent &evt)
exporting_status = ExportingStatus::NOT_EXPORTING;
- // BBS stop publishing if error occur
- //if (m_is_publishing) {
- // GCodeProcessorResult *gcode_result = background_process.get_current_gcode_result();
- // m_publish_dlg->UpdateStatus(_L("Error occurred during slicing"), -1, false);
- // // if toolpath is outside
- // if (!gcode_result || gcode_result->toolpath_outside) {
- // m_is_publishing = false;
- // }
- //}
if (is_finished)
@@ -13424,16 +13400,6 @@ void Plater::priv::on_process_completed(SlicingProcessCompletedEvent &evt)
m_is_slicing = false;
this->preview->reload_print(false);
q->mark_plate_toolbar_image_dirty();
- /* BBS if in publishing progress */
- if (m_is_publishing) {
- if (m_publish_dlg && !m_publish_dlg->was_cancelled()) {
- if (m_publish_dlg->IsShown()) {
- q->publish_project();
- } else {
- m_is_publishing = false;
- }
- }
- }
q->SetDropTarget(new PlaterDropTarget(*main_frame, *q));
}
else
@@ -13452,13 +13418,6 @@ void Plater::priv::on_process_completed(SlicingProcessCompletedEvent &evt)
//not the last plate
update_fff_scene_only_shells();
q->Thaw();
- if (m_is_publishing) {
- if (m_publish_dlg && !m_publish_dlg->was_cancelled()) {
- wxString msg = wxString::Format(_L("Slicing Plate %d"), m_cur_slice_plate + 1);
- int percent = 70 * m_cur_slice_plate / partplate_list.get_plate_count();
- m_publish_dlg->UpdateStatus(msg, percent, false);
- }
- }
}
if (auto_reslice_after_cancel) {
auto_reslice_after_cancel = false;
@@ -13540,40 +13499,12 @@ void Plater::priv::on_action_slice_all(SimpleEvent&)
//select plate
q->select_plate(m_cur_slice_plate);
q->reslice();
- if (!m_is_publishing)
- q->select_view_3D("Preview");
+ q->select_view_3D("Preview");
//BBS: wish to select all plates stats item
preview->get_canvas3d()->_update_select_plate_toolbar_stats_item(true);
}
}
-void Plater::priv::on_action_publish(wxCommandEvent &event)
-{
- if (q != nullptr) {
- if (event.GetInt() == EVT_PUBLISHING_START) {
- // update by background slicing process
- if (process_completed_with_error >= 0) {
- wxString msg = _L("Please resolve the slicing errors and publish again.");
- this->m_publish_dlg->UpdateStatus(msg, false);
- return;
- }
-
- m_is_publishing = true;
- // if slicing is ready publish project, else slicing first
- if (partplate_list.is_all_slice_results_valid()) {
- q->publish_project();
- } else {
- BOOST_LOG_TRIVIAL(debug) << __FUNCTION__ << ":received slice project in background event\n";
- SimpleEvent evt = SimpleEvent(EVT_GLTOOLBAR_SLICE_ALL);
- this->on_action_slice_all(evt);
- }
- } else {
- m_is_publishing = false;
- show_publish_dlg(false);
- }
- }
-}
-
void Plater::priv::on_action_print_plate(SimpleEvent&)
{
if (q != nullptr) {
@@ -14349,11 +14280,6 @@ int Plater::get_send_finished_event()
return EVT_SEND_FINISHED;
}
-int Plater::get_publish_finished_event()
-{
- return EVT_PUBLISH_FINISHED;
-}
-
void Plater::priv::set_current_canvas_as_dirty()
{
if (current_panel == view3D)
@@ -14762,31 +14688,6 @@ bool Plater::priv::can_reload_from_disk() const
return !paths.empty();
}
-void Plater::priv::update_publish_dialog_status(wxString &msg, int percent)
-{
- if (m_publish_dlg)
- m_publish_dlg->UpdateStatus(msg, percent);
-}
-
-bool Plater::priv::show_publish_dlg(bool show)
-{
- if (q != nullptr) { BOOST_LOG_TRIVIAL(debug) << __FUNCTION__ << ":recevied publish event\n"; }
-
- if (!m_publish_dlg) m_publish_dlg = new PublishDialog(q);
- if (show) {
- m_publish_dlg->reset();
- m_publish_dlg->start_slicing();
- //m_publish_dlg->Show();
- m_publish_dlg->ShowModal();
- } else {
- m_publish_dlg->EndModal(wxID_OK);
- //cancel the slicing
- if (this->background_process.running())
- this->background_process.stop();
- }
- return true;
-}
-
//BBS: add bed exclude area
void Plater::priv::set_bed_shape(const Pointfs &shape,
const Pointfs &exclude_areas,
@@ -19915,11 +19816,6 @@ int Plater::export_3mf(const boost::filesystem::path& output_path, SaveStrategy
return ret;
}
-void Plater::publish_project()
-{
- return;
-}
-
void Plater::reload_from_disk()
{
@@ -20562,13 +20458,6 @@ void Plater::send_job_finished(wxCommandEvent& evt)
// curr_monitor->get_tabpanel()->ChangeSelection(MonitorPanel::PrinterTab::PT_STATUS);
}
-void Plater::publish_job_finished(wxCommandEvent &evt)
-{
- p->m_publish_dlg->EndModal(wxID_OK);
- // GUI::wxGetApp().load_url(evt.GetString());
- //GUI::wxGetApp().open_publish_page_dialog(evt.GetString());
-}
-
// Called when the Eject button is pressed.
void Plater::eject_drive()
{
@@ -22866,11 +22755,6 @@ void Plater::show_object_info()
notify_manager->bbl_show_objectsinfo_notification(info_text, non_manifold_edges > 0, !(p->current_panel == p->view3D));
}
-bool Plater::show_publish_dialog(bool show)
-{
- return p->show_publish_dlg(show);
-}
-
void Plater::post_process_string_object_exception(StringObjectException &err)
{
PresetBundle* preset_bundle = wxGetApp().preset_bundle;
diff --git a/src/slic3r/GUI/Plater.hpp b/src/slic3r/GUI/Plater.hpp
index 77aff736f0..21fda05246 100644
--- a/src/slic3r/GUI/Plater.hpp
+++ b/src/slic3r/GUI/Plater.hpp
@@ -116,12 +116,8 @@ enum class ActionButtonType : int;
// (Sidebar::priv::m_menu_filament_id) rather than an explicit index.
inline constexpr int kSidebarContextMenuFilamentId = -2;
-#define EVT_PUBLISHING_START 1
-#define EVT_PUBLISHING_STOP 2
-
//BBS: add EVT_SLICING_UPDATE declare here
wxDECLARE_EVENT(EVT_SLICING_UPDATE, Slic3r::SlicingStatusEvent);
-wxDECLARE_EVENT(EVT_PUBLISH, wxCommandEvent);
wxDECLARE_EVENT(EVT_OPEN_PLATESETTINGSDIALOG, wxCommandEvent);
// Explanation of int param
@@ -571,7 +567,6 @@ public:
int export_3mf(const boost::filesystem::path& output_path = boost::filesystem::path(), SaveStrategy strategy = SaveStrategy::Default, int export_plate_idx = -1, Export3mfProgressFn proFn = nullptr);
//BBS
- void publish_project();
void reload_from_disk();
void replace_with_stl();
@@ -606,7 +601,6 @@ public:
void send_calibration_job_finished(wxCommandEvent &evt);
void print_job_finished(wxCommandEvent &evt);
void send_job_finished(wxCommandEvent& evt);
- void publish_job_finished(wxCommandEvent& evt);
void open_platesettings_dialog(wxCommandEvent& evt);
void open_filament_map_setting_dialog(wxCommandEvent &evt);
void on_change_color_mode(SimpleEvent& evt);
@@ -717,7 +711,6 @@ public:
int get_send_calibration_finished_event();
int get_print_finished_event();
int get_send_finished_event();
- int get_publish_finished_event();
void set_current_canvas_as_dirty();
void unbind_canvas_event_handlers();
@@ -842,7 +835,6 @@ public:
//BBS: show object info
void show_object_info();
//BBS
- bool show_publish_dialog(bool show = true);
//BBS: post process string object exception strings by warning types
void post_process_string_object_exception(StringObjectException &err);
void update_objects_position_when_select_preset(const std::function &select_prest);
diff --git a/src/slic3r/GUI/PublishDialog.cpp b/src/slic3r/GUI/PublishDialog.cpp
deleted file mode 100644
index f9c0beadb9..0000000000
--- a/src/slic3r/GUI/PublishDialog.cpp
+++ /dev/null
@@ -1,270 +0,0 @@
-#include "PublishDialog.hpp"
-#include "GUI_App.hpp"
-
-#include
-#include
-#include "slic3r/GUI/Widgets/AMSItem.hpp"
-#include "slic3r/GUI/GUI_Utils.hpp"
-#include
-#include
-#include
-#include
-#include "slic3r/GUI/Widgets/Label.hpp"
-#include "slic3r/GUI/Widgets/ProgressBar.hpp"
-#include "slic3r/GUI/Widgets/Button.hpp"
-#include "slic3r/GUI/Widgets/StateColor.hpp"
-#include
-#include
-#include "slic3r/GUI/Plater.hpp"
-#include
-#include
-#include
-#include "wx/evtloop.h"
-
-#include "libslic3r/Model.hpp"
-#include "libslic3r/Polygon.hpp"
-#include "MainFrame.hpp"
-#include "GUI_App.hpp"
-
-
-static const wxColour TEXT_LIGHT_GRAY = wxColour(107, 107, 107);
-
-namespace Slic3r {
-namespace GUI {
-
-static wxString PUBLISH_STEP_STRING[STEP_COUNT] = {
- _L("Slice all plates to obtain time and filament estimation"),
- _L("Packing project data into 3MF file"),
- _L("Uploading 3MF"),
- _L("Jump to model publish web page")
-};
-
-static wxString NOTE_STRING = _L("Note: The preparation may take several minutes. Please be patient.");
-
-PublishDialog::PublishDialog(Plater *plater)
- : DPIDialog(static_cast(wxGetApp().mainframe), wxID_ANY, _L("Publish"), wxDefaultPosition, wxDefaultSize, wxCAPTION | wxCLOSE_BOX)
- , m_plater(plater)
-{
- this->SetSize(wxSize(FromDIP(540),FromDIP(400)));
-
- this->SetSizeHints(wxDefaultSize, wxDefaultSize);
-
- wxBoxSizer *top_sizer = new wxBoxSizer(wxHORIZONTAL);
-
- wxBoxSizer *m_main_sizer = new wxBoxSizer(wxVERTICAL);
-
- m_main_sizer->Add(0, FromDIP(30), 0, wxEXPAND, 0);
-
- m_step_panel = new wxPanel(this, wxID_ANY);
- wxBoxSizer *step_sizer = create_publish_step_sizer();
- m_step_panel->SetSizer(step_sizer);
- m_step_panel->SetBackgroundColour(wxColour(248, 248, 248));
-
- m_main_sizer->Add(m_step_panel, 1, wxEXPAND, 0);
-
- m_main_sizer->Add(0, FromDIP(20), 0, wxEXPAND, 0);
-
- m_text_note = new wxStaticText(this, wxID_ANY, NOTE_STRING, wxDefaultPosition, wxDefaultSize, 0);
- m_text_note->SetFont(Label::Body_14);
- m_text_note->SetForegroundColour(TEXT_LIGHT_GRAY);
- m_text_note->Wrap(-1);
- m_main_sizer->Add(m_text_note, 0, wxALL | wxEXPAND, 0);
- m_main_sizer->Add(0, FromDIP(10), 0, wxEXPAND, 0);
-
- wxStaticLine *m_staticline = new wxStaticLine(this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL);
- m_main_sizer->Add(m_staticline, 0, wxALL | wxEXPAND, FromDIP(0));
- m_main_sizer->Add(0, FromDIP(10), 0, wxEXPAND, 0);
-
- wxBoxSizer *m_progress_text_sizer = new wxBoxSizer(wxHORIZONTAL);
- m_text_progress = new wxStaticText(this, wxID_ANY, "", wxDefaultPosition, wxDefaultSize, 0);
- m_text_progress->Wrap(-1);
- m_text_progress->SetFont(Label::Body_12);
- m_text_progress->SetForegroundColour(TEXT_LIGHT_GRAY);
-
- m_progress_text_sizer->Add(FromDIP(20), 0, 0, wxEXPAND | wxALL, 0);
- m_progress_text_sizer->Add(m_text_progress, 1, wxALL | wxEXPAND, 0);
- m_main_sizer->Add(m_progress_text_sizer, 0, wxALL | wxEXPAND, 0);
-
- wxBoxSizer *m_progress_sizer = new wxBoxSizer(wxHORIZONTAL);
-
- m_progress_sizer->Add(FromDIP(20), 0, 0, wxEXPAND | wxALL, 0);
-
- m_progress = new ProgressBar(this, wxID_ANY, 100, wxDefaultPosition, wxDefaultSize);
- m_progress->SetHeight(FromDIP(8));
- m_progress->SetFont(Label::Head_10);
- m_progress_sizer->Add(m_progress, 1, wxALIGN_CENTER_VERTICAL | wxALL, 0);
-
- m_progress_sizer->Add(FromDIP(20), 0, 0, wxEXPAND, 0);
-
- m_btn_cancel = new Button(this, _L("Cancel"));
- m_progress_sizer->Add(m_btn_cancel, 0, wxALIGN_CENTER_VERTICAL | wxALL, FromDIP(5));
- StateColor btn_bg_green(std::pair(wxColour(0, 137, 123), StateColor::Pressed),
- std::pair(wxColour(38, 166, 154), StateColor::Hovered),
- std::pair(wxColour(255, 255, 255), StateColor::Normal));
- StateColor text_color(std::pair(wxColour(255, 255, 255), StateColor::Pressed),
- std::pair(wxColour(255, 255, 255), StateColor::Hovered),
- std::pair(TEXT_LIGHT_GRAY, StateColor::Normal));
- m_btn_cancel->SetFont(Label::Body_12);
- m_btn_cancel->SetBackgroundColor(btn_bg_green);
- m_btn_cancel->SetBorderColor(wxColour(0, 150, 136));
- m_btn_cancel->SetTextColor(text_color);
- m_btn_cancel->SetSize(wxSize(FromDIP(60), FromDIP(20)));
- m_btn_cancel->SetMinSize(wxSize(FromDIP(60), FromDIP(20)));
- m_btn_cancel->SetCornerRadius(FromDIP(10));
-
- m_progress_sizer->Add(FromDIP(20), 0, 0, wxEXPAND | wxALL, 0);
-
- m_main_sizer->Add(m_progress_sizer, 0, wxEXPAND, FromDIP(0));
-
- wxBoxSizer *m_bottom_sizer;
- m_bottom_sizer = new wxBoxSizer(wxHORIZONTAL);
-
- m_bottom_sizer->Add(FromDIP(20), 0, 0, wxEXPAND, 0);
-
- m_text_errors = new wxStaticText(this, wxID_ANY, "", wxDefaultPosition, wxDefaultSize, 0);
- m_text_errors->Wrap(-1);
- m_text_errors->SetFont(Label::Body_12);
- m_text_errors->SetForegroundColour(wxColour(255, 111, 0));
- m_bottom_sizer->Add(m_text_errors, 1, wxALL, 0);
-
- m_main_sizer->Add(m_bottom_sizer, 0, wxEXPAND, 0);
- m_main_sizer->Add(0, FromDIP(10), 0, wxEXPAND, 0);
-
- top_sizer->Add(FromDIP(30), 0, 0, wxEXPAND, 0);
- top_sizer->Add(m_main_sizer, 1, wxALL | wxEXPAND, 0);
- top_sizer->Add(FromDIP(30), 0, 0, wxEXPAND, 0);
-
- this->SetSizerAndFit(top_sizer);
- this->Layout();
-
- this->Centre(wxBOTH);
-
- m_btn_cancel->Bind(wxEVT_BUTTON, [this](wxCommandEvent&) {
- this->cancel();
- });
-
- Bind(wxEVT_CLOSE_WINDOW, &PublishDialog::on_close, this);
- wxGetApp().UpdateDlgDarkUI(this);
-}
-
-void PublishDialog::cancel()
-{
- m_was_cancelled = true;
- m_btn_cancel->Enable(false);
- m_text_progress->SetLabelText(_L("Publish was canceled"));
- wxCloseEvent evt;
- this->on_close(evt);
-}
-
-void PublishDialog::start_slicing()
-{
- SetPublishStep(PublishStep::STEP_SLICING);
-
- wxCommandEvent *evt = new wxCommandEvent(EVT_PUBLISH);
- evt->SetInt(EVT_PUBLISHING_START);
- wxQueueEvent(m_plater, evt);
-}
-
-bool PublishDialog::UpdateStatus(wxString &msg, int percent, bool yield)
-{
- if (m_was_cancelled) return false;
-
- if (percent >= 0)
- m_progress->SetValue(percent);
- m_text_progress->SetLabelText(msg);
-
- if (yield)
- wxEventLoopBase::GetActive()->YieldFor(wxEVT_CATEGORY_UI | wxEVT_CATEGORY_USER_INPUT);
- return true;
-}
-
-void PublishDialog::Pulse(wxString &msg, bool &skip)
-{
- if (!msg.IsEmpty())
- m_text_progress->SetLabelText(msg);
- wxEventLoopBase::GetActive()->YieldFor(wxEVT_CATEGORY_UI | wxEVT_CATEGORY_USER_INPUT);
- skip = m_was_cancelled;
-}
-
-void PublishDialog::SetPublishStep(PublishStep step, bool yield, int percent)
-{
- m_publish_steps->SelectItem((int)step);
- if (step == PublishStep::STEP_SLICING) {
- m_text_progress->SetLabelText(_L("Slicing Plate 1"));
- if (percent > 0)
- m_progress->SetValue(percent);
- else
- m_progress->SetValue(0);
- } else if (step == PublishStep::STEP_PACKING) {
- m_text_progress->SetLabelText(_L("Packing data to 3MF"));
- if (percent > 0)
- m_progress->SetValue(percent);
- else
- m_progress->SetValue(70);
- } else if (step == PublishStep::STEP_UPLOADING) {
- m_text_progress->SetLabelText(_L("Uploading data"));
- if (percent > 0)
- m_progress->SetValue(percent);
- else
- m_progress->SetValue(85);
- } else if (step == PublishStep::STEP_FILL_INFO) {
- m_text_progress->SetLabelText(_L("Jump to webpage"));
- m_progress->SetValue(100);
- }
-
- if (yield)
- wxEventLoopBase::GetActive()->YieldFor(wxEVT_CATEGORY_UI | wxEVT_CATEGORY_USER_INPUT);
-}
-
-wxBoxSizer *PublishDialog::create_publish_step_sizer()
-{
- auto sizer = new wxBoxSizer(wxHORIZONTAL);
-
- sizer->Add(FromDIP(30), 0, 0, wxEXPAND, 0);
-
- auto middle_sizer = new wxBoxSizer(wxVERTICAL);
-
- m_publish_steps = new StepIndicator(m_step_panel, wxID_ANY);
- StateColor bg_color(std::pair(wxColour(248, 248, 248), StateColor::Normal));
- m_publish_steps->SetBackgroundColor(bg_color);
- m_publish_steps->SetFont(Label::Body_14);
-
- for (int i = 0; i < (int) PublishStep::STEP_PUBLISH_COUNT; i++) {
- m_publish_steps->AppendItem(PUBLISH_STEP_STRING[i]);
- }
-
- middle_sizer->Add(0, FromDIP(30), 0, wxEXPAND, 0);
- middle_sizer->Add(m_publish_steps, 1, wxALL | wxEXPAND, 0);
- middle_sizer->Add(0, FromDIP(30), 0, wxEXPAND, 0);
-
- sizer->Add(middle_sizer, 1, wxALL | wxEXPAND, 0);
-
- sizer->Add(FromDIP(30), 0, 0, wxEXPAND, 0);
-
- return sizer;
-}
-
-void PublishDialog::on_dpi_changed(const wxRect &suggested_rect)
-{
- Fit();
- Refresh();
-}
-
-void PublishDialog::on_close(wxCloseEvent &event)
-{
- wxCommandEvent *evt = new wxCommandEvent(EVT_PUBLISH);
- evt->SetInt(EVT_PUBLISHING_STOP);
- wxQueueEvent(m_plater, evt);
-}
-
-void PublishDialog::reset()
-{
- m_btn_cancel->Enable();
- m_was_cancelled = false;
- SetPublishStep(PublishStep::STEP_SLICING);
- m_text_errors->Hide();
-}
-
-
-} // GUI
-} // Slic3r
diff --git a/src/slic3r/GUI/PublishDialog.hpp b/src/slic3r/GUI/PublishDialog.hpp
deleted file mode 100644
index 3accc34784..0000000000
--- a/src/slic3r/GUI/PublishDialog.hpp
+++ /dev/null
@@ -1,75 +0,0 @@
-#ifndef slic3r_PublishDialog_hpp_
-#define slic3r_PublishDialog_hpp_
-
-
-#include "I18N.hpp"
-
-#include "slic3r/GUI/GUI_Utils.hpp"
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include "wxExtensions.hpp"
-#include "Plater.hpp"
-#include "Widgets/StepCtrl.hpp"
-#include "Widgets/ProgressDialog.hpp"
-#include "Widgets/Button.hpp"
-#include "Widgets/ProgressBar.hpp"
-
-
-namespace Slic3r {
-namespace GUI {
-
-enum PublishStep {
- STEP_SLICING = 0,
- STEP_PACKING,
- STEP_UPLOADING,
- STEP_FILL_INFO,
- STEP_PUBLISH_COUNT,
-};
-
-class PublishDialog : public DPIDialog
-{
-public:
- PublishDialog(Plater* plater = nullptr);
-
- bool UpdateStatus(wxString &msg, int percent = -1, bool yeild = true);
- void Pulse(wxString &msg, bool &skip);
- void SetPublishStep(PublishStep step, bool yeild = false, int percent = -1);
- void start_slicing();
- void reset();
- bool was_cancelled() { return m_was_cancelled; }
- void cancel();
-
-protected:
- wxPanel* m_step_panel;
- ::StepIndicator *m_publish_steps;
- wxStaticText *m_text_note;
- wxStaticText *m_text_progress;
- ProgressBar *m_progress;
- Button* m_btn_cancel;
- wxStaticText *m_text_errors;
- Plater * m_plater{nullptr};
- bool m_was_cancelled { false };
-
- wxBoxSizer* create_publish_step_sizer();
- void on_close(wxCloseEvent &event);
- void on_dpi_changed(const wxRect &suggested_rect) override;
-};
-
-} // GUI
-} // Slic3r
-
-
-#endif /* slic3r_BedShapeDialog_hpp_ */