From df269e9393cf74e2abc82f9e4f10fc7eb324f755 Mon Sep 17 00:00:00 2001 From: Joshua Goins Date: Sun, 1 Mar 2026 18:10:59 -0500 Subject: [PATCH 1/4] Add missing exports for new edit widgets --- common/include/booledit.h | 2 +- common/include/uintedit.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/common/include/booledit.h b/common/include/booledit.h index 9cee68b..3cf47de 100644 --- a/common/include/booledit.h +++ b/common/include/booledit.h @@ -8,7 +8,7 @@ #include "editwidget.h" -class BoolEdit : public EditWidget +class NOVUSCOMMON_EXPORT BoolEdit : public EditWidget { Q_OBJECT public: diff --git a/common/include/uintedit.h b/common/include/uintedit.h index 00271eb..1627cad 100644 --- a/common/include/uintedit.h +++ b/common/include/uintedit.h @@ -8,7 +8,7 @@ #include "editwidget.h" -class UIntEdit : public EditWidget +class NOVUSCOMMON_EXPORT UIntEdit : public EditWidget { Q_OBJECT public: From c48d6da1d8af126ebba9fecc4deb17d0a97befb7 Mon Sep 17 00:00:00 2001 From: Joshua Goins Date: Sun, 1 Mar 2026 18:33:12 -0500 Subject: [PATCH 2/4] Define overridden destructors for edit widgets --- common/include/booledit.h | 1 + common/include/editwidget.h | 1 + common/include/enumedit.h | 1 + common/include/pathedit.h | 1 + common/include/quaternionedit.h | 1 + common/include/uintedit.h | 1 + common/include/vec3edit.h | 1 + 7 files changed, 7 insertions(+) diff --git a/common/include/booledit.h b/common/include/booledit.h index 3cf47de..44ffe84 100644 --- a/common/include/booledit.h +++ b/common/include/booledit.h @@ -14,6 +14,7 @@ class NOVUSCOMMON_EXPORT BoolEdit : public EditWidget public: explicit BoolEdit(QWidget *parent = nullptr); explicit BoolEdit(bool &value, QWidget *parent = nullptr); + ~BoolEdit() override = default; void setValue(bool &value); void resetValue(); diff --git a/common/include/editwidget.h b/common/include/editwidget.h index 612b7fe..4d5791c 100644 --- a/common/include/editwidget.h +++ b/common/include/editwidget.h @@ -12,6 +12,7 @@ class NOVUSCOMMON_EXPORT EditWidget : public QWidget Q_OBJECT public: explicit EditWidget(QWidget *parent = nullptr); + ~EditWidget() override = default; Q_SIGNALS: void onValueChanged(); diff --git a/common/include/enumedit.h b/common/include/enumedit.h index cf4caf1..67a7969 100644 --- a/common/include/enumedit.h +++ b/common/include/enumedit.h @@ -27,6 +27,7 @@ class NOVUSCOMMON_EXPORT EnumEdit : public EditWidget comboBox->addItem(QString::fromLatin1(name.data())); } } + ~EnumEdit() override = default; void setValue(const E &value) { diff --git a/common/include/pathedit.h b/common/include/pathedit.h index df4b9ab..7982543 100644 --- a/common/include/pathedit.h +++ b/common/include/pathedit.h @@ -33,6 +33,7 @@ class NOVUSCOMMON_EXPORT PathEdit : public EditWidget public: explicit PathEdit(QWidget *parent = nullptr); + ~PathEdit() override = default; void setPath(const QString &path); void setReadOnly(bool readOnly); diff --git a/common/include/quaternionedit.h b/common/include/quaternionedit.h index 2a65ee8..a7f3170 100644 --- a/common/include/quaternionedit.h +++ b/common/include/quaternionedit.h @@ -18,6 +18,7 @@ class NOVUSCOMMON_EXPORT QuaternionEdit : public EditWidget public: explicit QuaternionEdit(glm::quat &quat, QWidget *parent = nullptr); + ~QuaternionEdit() override = default; void setQuat(glm::quat &quat); diff --git a/common/include/uintedit.h b/common/include/uintedit.h index 1627cad..508b982 100644 --- a/common/include/uintedit.h +++ b/common/include/uintedit.h @@ -13,6 +13,7 @@ class NOVUSCOMMON_EXPORT UIntEdit : public EditWidget Q_OBJECT public: explicit UIntEdit(uint32_t &value, QWidget *parent = nullptr); + ~UIntEdit() override = default; private: QSpinBox *spinBox = nullptr; diff --git a/common/include/vec3edit.h b/common/include/vec3edit.h index 726cb3f..c22af09 100644 --- a/common/include/vec3edit.h +++ b/common/include/vec3edit.h @@ -17,6 +17,7 @@ class NOVUSCOMMON_EXPORT Vector3Edit : public EditWidget public: explicit Vector3Edit(glm::vec3 &vec, QWidget *parent = nullptr); + ~Vector3Edit() override = default; void setVector(glm::vec3 &vec); void setReadOnly(bool readOnly); From 5344339f3ec6bfeb12a12a17c154a80b7e397b7c Mon Sep 17 00:00:00 2001 From: Joshua Goins Date: Sun, 1 Mar 2026 18:44:30 -0500 Subject: [PATCH 3/4] Fix some class/struct disassociations --- parts/scene/scenelistmodel.h | 2 +- renderer/include/baserenderer.h | 3 +-- renderer/include/pass.h | 2 +- 3 files changed, 3 insertions(+), 4 deletions(-) diff --git a/parts/scene/scenelistmodel.h b/parts/scene/scenelistmodel.h index e38d344..48b1603 100644 --- a/parts/scene/scenelistmodel.h +++ b/parts/scene/scenelistmodel.h @@ -8,7 +8,7 @@ struct DropInObject; struct ScnSGActionControllerDescriptor; struct physis_ScnTimeline; -struct ObjectScene; +class ObjectScene; struct physis_Sgb; struct physis_Layer; struct physis_InstanceObject; diff --git a/renderer/include/baserenderer.h b/renderer/include/baserenderer.h index b0368b1..462b943 100644 --- a/renderer/include/baserenderer.h +++ b/renderer/include/baserenderer.h @@ -16,9 +16,8 @@ class Renderer; struct DrawObjectInstance; struct Camera; -struct Texture; +class Texture; struct Scene; -class Pass; class Device; /// Base class for all rendering implementations diff --git a/renderer/include/pass.h b/renderer/include/pass.h index 50f6bdf..f79babc 100644 --- a/renderer/include/pass.h +++ b/renderer/include/pass.h @@ -5,7 +5,7 @@ #include -class Camera; +struct Camera; class RendererPass { From 9dc9ccc293db15be6cbec4d7b7b40b53d67ed1d2 Mon Sep 17 00:00:00 2001 From: Joshua Goins Date: Sun, 1 Mar 2026 19:43:29 -0500 Subject: [PATCH 4/4] Try to fix EnumEdit linking on MSCV --- common/include/enumedit.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/common/include/enumedit.h b/common/include/enumedit.h index 67a7969..3f72b85 100644 --- a/common/include/enumedit.h +++ b/common/include/enumedit.h @@ -12,7 +12,7 @@ #include template -class NOVUSCOMMON_EXPORT EnumEdit : public EditWidget +class EnumEdit : public EditWidget { public: explicit EnumEdit()