Make the GUI and Test Headers Compile on Their Own

Each now includes, or forward-declares, what it uses instead of relying on what its includers happened to include first. Headers that only compile on one platform, or that nothing built includes, are left alone.
This commit is contained in:
Hanif Koh
2026-10-02 16:34:35 +08:00
parent 59deff0694
commit 28dc67e382
9 changed files with 17 additions and 0 deletions
+3
View File
@@ -1,4 +1,7 @@
#include <exception>
#include "libslic3r/Exception.hpp"
namespace Slic3r {
class ConfigError : public Slic3r::RuntimeError {
+1
View File
@@ -6,6 +6,7 @@
#include <set>
#include <wx/bitmap.h>
#include <wx/button.h>
#include <wx/dataview.h>
#include <wx/menu.h>
#include <wx/file.h>
@@ -5,11 +5,13 @@
#include <vector>
#include <wx/panel.h>
#include "wxExtensions.hpp"
#include "libslic3r/PrintConfig.hpp"
class wxBoxSizer;
namespace Slic3r {
class DynamicPrintConfig;
class ModelObject;
class ModelConfig;
namespace GUI {
class ConfigOptionsGroup;
@@ -6,6 +6,7 @@
#include "libslic3r/Point.hpp"
#include "libslic3r/Geometry.hpp"
#include <float.h>
#include <wx/string.h>
#include "slic3r/GUI/GUI_Geometry.hpp"
@@ -14,6 +15,7 @@
namespace Slic3r {
namespace GUI {
class ImGuiWrapper;
class Selection;
class GLCanvas3D;
+3
View File
@@ -7,7 +7,10 @@
#include "Worker.hpp"
#include "BusyCursorJob.hpp"
#include <wx/app.h>
#include "slic3r/GUI/GUI.hpp"
#include "slic3r/GUI/GUI_Utils.hpp"
#include "slic3r/GUI/I18N.hpp"
namespace Slic3r { namespace GUI {
+2
View File
@@ -1,6 +1,8 @@
#ifndef PARTSKIPCOMMON_H
#define PARTSKIPCOMMON_H
#include <utility>
#include <vector>
namespace Slic3r { namespace GUI {
+2
View File
@@ -1,3 +1,5 @@
#include <wx/textctrl.h>
#ifdef __WXMSW__
class TextCtrl : public wxTextCtrl
{
+1
View File
@@ -3,6 +3,7 @@
#include <wx/dialog.h>
#include <wx/webview.h>
#include "libslic3r/FlushVolCalc.hpp"
#include "libslic3r/PrintConfig.hpp"
#include "Widgets/SpinInput.hpp"
+1
View File
@@ -8,6 +8,7 @@
// it here and include this header from every libnest2d test file.
#include <cstdint>
#include <iostream>
#include "libnest2d/common.hpp"
#include "libnest2d/geometry_traits_nfp.hpp"