pkgsrc-WIP-changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

prusaslicer: Fix ambiguous overload errors with wxWidgets 3.2.4



Module Name:	pkgsrc-wip
Committed By:	Paul Ripke <stix%stix.id.au@localhost>
Pushed By:	stix
Date:		Sun Jan 7 15:48:45 2024 +1100
Changeset:	9c29e58e1d1f8b0f2b137367635213d01c883b9f

Modified Files:
	prusaslicer/distinfo
	prusaslicer/patches/patch-src_slic3r_GUI_Plater.cpp
Added Files:
	prusaslicer/patches/patch-src_slic3r_GUI_PhysicalPrinterDialog.cpp

Log Message:
prusaslicer: Fix ambiguous overload errors with wxWidgets 3.2.4

To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=9c29e58e1d1f8b0f2b137367635213d01c883b9f

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

diffstat:
 prusaslicer/distinfo                                 |  3 ++-
 .../patch-src_slic3r_GUI_PhysicalPrinterDialog.cpp   | 16 ++++++++++++++++
 prusaslicer/patches/patch-src_slic3r_GUI_Plater.cpp  | 20 ++++++++++++++++----
 3 files changed, 34 insertions(+), 5 deletions(-)

diffs:
diff --git a/prusaslicer/distinfo b/prusaslicer/distinfo
index 82b1994b36..c72ec6e555 100644
--- a/prusaslicer/distinfo
+++ b/prusaslicer/distinfo
@@ -42,7 +42,8 @@ SHA1 (patch-src_slic3r_GUI_Mouse3DController.cpp) = bf8bf60e17e304a2022b9a80852d
 SHA1 (patch-src_slic3r_GUI_Mouse3DController.hpp) = 6a008114e932b08951428b6fa882b41acaa85c0b
 SHA1 (patch-src_slic3r_GUI_OpenGLManager.cpp) = 594d8a99824fead23010cdbf8f97d8ba6727ddbe
 SHA1 (patch-src_slic3r_GUI_OptionsGroup.cpp) = c413f24a9a50069b93bdd611b95fa85ccab45567
-SHA1 (patch-src_slic3r_GUI_Plater.cpp) = a9c45bac6bf524b411882f3eedc859401e8a1a35
+SHA1 (patch-src_slic3r_GUI_PhysicalPrinterDialog.cpp) = 5dbe3c5c19ce5d03b5dd310af484b712b091efda
+SHA1 (patch-src_slic3r_GUI_Plater.cpp) = 840abde0ab6e033787c301f8157a291699f31158
 SHA1 (patch-src_slic3r_GUI_Preferences.cpp) = 3694f45161b03d7072249c815c462aa9e85f95cc
 SHA1 (patch-src_slic3r_GUI_PresetComboBoxes.cpp) = ae083491bb2b1228c0f666fdc36b1b3ca4008c3c
 SHA1 (patch-src_slic3r_GUI_PresetComboBoxes.hpp) = 0c84c1b706a1f4e00f60c1677c7edf53845d4467
diff --git a/prusaslicer/patches/patch-src_slic3r_GUI_PhysicalPrinterDialog.cpp b/prusaslicer/patches/patch-src_slic3r_GUI_PhysicalPrinterDialog.cpp
new file mode 100644
index 0000000000..bd8c3eb3bb
--- /dev/null
+++ b/prusaslicer/patches/patch-src_slic3r_GUI_PhysicalPrinterDialog.cpp
@@ -0,0 +1,16 @@
+$NetBSD$
+
+Fix ambiguous overload errors with wxWidgets 3.2.4
+http://github.com/prusa3d/PrusaSlicer/issues/11768
+
+--- src/slic3r/GUI/PhysicalPrinterDialog.cpp.orig	2024-01-07 03:26:15.232175668 +0000
++++ src/slic3r/GUI/PhysicalPrinterDialog.cpp
+@@ -467,7 +467,7 @@ void PhysicalPrinterDialog::build_printh
+     // Always fill in the "printhost_port" combo box from the config and select it.
+     {
+         Choice* choice = dynamic_cast<Choice*>(m_optgroup->get_field("printhost_port"));
+-        choice->set_values({ m_config->opt_string("printhost_port") });
++        choice->set_values(std::vector<std::string>({ m_config->opt_string("printhost_port") }));
+         choice->set_selection();
+     }
+ 
diff --git a/prusaslicer/patches/patch-src_slic3r_GUI_Plater.cpp b/prusaslicer/patches/patch-src_slic3r_GUI_Plater.cpp
index 9562e5567d..732bf09530 100644
--- a/prusaslicer/patches/patch-src_slic3r_GUI_Plater.cpp
+++ b/prusaslicer/patches/patch-src_slic3r_GUI_Plater.cpp
@@ -2,9 +2,12 @@ $NetBSD$
 
 Treat NetBSD like Linux.
 
---- src/slic3r/GUI/Plater.cpp.orig	2023-06-02 13:41:15.000000000 +0000
+Fix ambiguous overload errors with wxWidgets 3.2.4
+http://github.com/prusa3d/PrusaSlicer/issues/11768
+
+--- src/slic3r/GUI/Plater.cpp.orig	2023-12-12 14:21:21.000000000 +0000
 +++ src/slic3r/GUI/Plater.cpp
-@@ -2452,7 +2452,7 @@ std::vector<size_t> Plater::priv::load_f
+@@ -2527,7 +2527,7 @@ std::vector<size_t> Plater::priv::load_f
      // when loading a project file. However, creating the dialog on heap causes issues on macOS, where it does not
      // appear at all. Therefore, we create the dialog on stack on Win and macOS, and on heap on Linux, which
      // is the only system that needed the workarounds in the first place.
@@ -13,7 +16,7 @@ Treat NetBSD like Linux.
      auto progress_dlg = new wxProgressDialog(loading, "", 100, find_toplevel_parent(q), wxPD_APP_MODAL | wxPD_AUTO_HIDE);
      Slic3r::ScopeGuard([&progress_dlg](){ if (progress_dlg) progress_dlg->Destroy(); progress_dlg = nullptr; });
  #else
-@@ -2498,7 +2498,7 @@ std::vector<size_t> Plater::priv::load_f
+@@ -2574,7 +2574,7 @@ std::vector<size_t> Plater::priv::load_f
          bool is_project_file = type_prusa;
          try {
              if (type_3mf || type_zip_amf) {
@@ -22,7 +25,7 @@ Treat NetBSD like Linux.
                  // On Linux Constructor of the ProgressDialog calls DisableOtherWindows() function which causes a disabling of all children of the find_toplevel_parent(q)
                  // And a destructor of the ProgressDialog calls ReenableOtherWindows() function which revert previously disabled children.
                  // But if printer technology will be changes during project loading, 
-@@ -4397,7 +4397,7 @@ void Plater::priv::on_right_click(RBtnEv
+@@ -4542,7 +4542,7 @@ void Plater::priv::on_right_click(RBtnEv
          Vec2d mouse_position = evt.data.first;
          wxPoint position(static_cast<int>(mouse_position.x()),
                           static_cast<int>(mouse_position.y()));
@@ -31,3 +34,12 @@ Treat NetBSD like Linux.
          // For some reason on Linux the menu isn't displayed if position is
          // specified (even though the position is sane).
          position = wxDefaultPosition;
+@@ -5395,7 +5395,7 @@ void Plater::load_project(const wxString
+ 
+     p->reset();
+ 
+-    if (! load_files({ into_path(filename) }).empty()) {
++    if (! load_files(std::vector<fs::path>({ into_path(filename) })).empty()) {
+         // At least one file was loaded.
+         p->set_project_filename(filename);
+         // Save the names of active presets and project specific config into ProjectDirtyStateManager.


Home | Main Index | Thread Index | Old Index