From d55d9c820f5c55bb273c02685b60fcfb12df21a8 Mon Sep 17 00:00:00 2001 From: itsmattkc <34096995+itsmattkc@users.noreply.github.com> Date: Wed, 4 May 2022 11:01:17 -0700 Subject: [PATCH] code: use macros for default node functions Easier to maintain --- app/node/audio/pan/pan.cpp | 5 ----- app/node/audio/pan/pan.h | 4 +--- app/node/audio/volume/volume.cpp | 5 ----- app/node/audio/volume/volume.h | 4 +--- app/node/block/block.h | 2 -- app/node/block/clip/clip.cpp | 5 ----- app/node/block/clip/clip.h | 4 +--- app/node/block/gap/gap.cpp | 5 ----- app/node/block/gap/gap.h | 4 +--- app/node/block/subtitle/subtitle.cpp | 5 ----- app/node/block/subtitle/subtitle.h | 4 +--- .../transition/crossdissolve/crossdissolvetransition.cpp | 6 ------ .../transition/crossdissolve/crossdissolvetransition.h | 4 +--- .../block/transition/diptocolor/diptocolortransition.cpp | 5 ----- .../block/transition/diptocolor/diptocolortransition.h | 4 +--- app/node/block/transition/transition.h | 2 -- app/node/color/colormanager/colormanager.h | 7 ++----- app/node/distort/cornerpin/cornerpindistortnode.h | 7 +------ app/node/distort/crop/cropdistortnode.h | 7 +------ app/node/distort/flip/flipdistortnode.cpp | 5 ----- app/node/distort/flip/flipdistortnode.h | 4 +--- app/node/distort/transform/transformdistortnode.h | 7 +------ app/node/effect/opacity/opacityeffect.h | 4 +--- app/node/filter/blur/blur.cpp | 5 ----- app/node/filter/blur/blur.h | 4 +--- app/node/filter/mosaic/mosaicfilternode.h | 7 +------ app/node/filter/stroke/stroke.cpp | 5 ----- app/node/filter/stroke/stroke.h | 4 +--- app/node/generator/matrix/matrix.cpp | 5 ----- app/node/generator/matrix/matrix.h | 4 +--- app/node/generator/noise/noise.cpp | 5 ----- app/node/generator/noise/noise.h | 4 +--- app/node/generator/polygon/polygon.cpp | 5 ----- app/node/generator/polygon/polygon.h | 4 +--- app/node/generator/shape/generatorwithmerge.h | 2 -- app/node/generator/shape/shapenode.h | 3 +-- app/node/generator/shape/shapenodebase.h | 2 -- app/node/generator/solid/solid.cpp | 5 ----- app/node/generator/solid/solid.h | 4 +--- app/node/generator/text/textv1.h | 3 +-- app/node/generator/text/textv2.h | 3 +-- app/node/generator/text/textv3.h | 3 +-- app/node/group/group.h | 3 +-- app/node/input/time/timeinput.cpp | 5 ----- app/node/input/time/timeinput.h | 6 ++---- app/node/input/value/valuenode.h | 7 +------ app/node/keying/colordifferencekey/colordifferencekey.cpp | 5 ----- app/node/keying/colordifferencekey/colordifferencekey.h | 2 +- app/node/keying/despill/despill.cpp | 5 ----- app/node/keying/despill/despill.h | 8 ++++---- app/node/math/math/math.cpp | 5 ----- app/node/math/math/math.h | 4 +--- app/node/math/math/mathbase.h | 2 -- app/node/math/merge/merge.cpp | 5 ----- app/node/math/merge/merge.h | 4 +--- app/node/math/trigonometry/trigonometry.cpp | 5 ----- app/node/math/trigonometry/trigonometry.h | 4 +--- app/node/node.h | 4 ++++ app/node/output/track/track.cpp | 5 ----- app/node/output/track/track.h | 4 +--- app/node/output/viewer/viewer.cpp | 5 ----- app/node/output/viewer/viewer.h | 4 +--- app/node/project/folder/folder.h | 7 +------ app/node/project/footage/footage.h | 7 +------ app/node/project/projectsettings/projectsettings.h | 7 +------ app/node/project/sequence/sequence.h | 7 +------ app/node/time/timeoffset/timeoffsetnode.h | 3 +-- app/node/time/timeremap/timeremap.cpp | 5 ----- app/node/time/timeremap/timeremap.h | 4 +--- 69 files changed, 49 insertions(+), 269 deletions(-) diff --git a/app/node/audio/pan/pan.cpp b/app/node/audio/pan/pan.cpp index 482bf075f..c6311e67a 100644 --- a/app/node/audio/pan/pan.cpp +++ b/app/node/audio/pan/pan.cpp @@ -42,11 +42,6 @@ PanNode::PanNode() SetEffectInput(kSamplesInput); } -Node *PanNode::copy() const -{ - return new PanNode(); -} - QString PanNode::Name() const { return tr("Pan"); diff --git a/app/node/audio/pan/pan.h b/app/node/audio/pan/pan.h index 6f8fd9a89..075eafb02 100644 --- a/app/node/audio/pan/pan.h +++ b/app/node/audio/pan/pan.h @@ -31,9 +31,7 @@ class PanNode : public Node public: PanNode(); - NODE_DEFAULT_DESTRUCTOR(PanNode) - - virtual Node* copy() const override; + NODE_DEFAULT_FUNCTIONS(PanNode) virtual QString Name() const override; virtual QString id() const override; diff --git a/app/node/audio/volume/volume.cpp b/app/node/audio/volume/volume.cpp index 79feef607..e03d284b2 100644 --- a/app/node/audio/volume/volume.cpp +++ b/app/node/audio/volume/volume.cpp @@ -41,11 +41,6 @@ VolumeNode::VolumeNode() SetEffectInput(kSamplesInput); } -Node *VolumeNode::copy() const -{ - return new VolumeNode(); -} - QString VolumeNode::Name() const { return tr("Volume"); diff --git a/app/node/audio/volume/volume.h b/app/node/audio/volume/volume.h index a9fcc10d9..38ba243d8 100644 --- a/app/node/audio/volume/volume.h +++ b/app/node/audio/volume/volume.h @@ -31,9 +31,7 @@ class VolumeNode : public MathNodeBase public: VolumeNode(); - NODE_DEFAULT_DESTRUCTOR(VolumeNode) - - virtual Node* copy() const override; + NODE_DEFAULT_FUNCTIONS(VolumeNode) virtual QString Name() const override; virtual QString id() const override; diff --git a/app/node/block/block.h b/app/node/block/block.h index a555cb065..33ddc00dd 100644 --- a/app/node/block/block.h +++ b/app/node/block/block.h @@ -37,8 +37,6 @@ class Block : public Node public: Block(); - NODE_DEFAULT_DESTRUCTOR(Block) - virtual QVector Category() const override; const rational& in() const diff --git a/app/node/block/clip/clip.cpp b/app/node/block/clip/clip.cpp index a7ce383b2..16720eafc 100644 --- a/app/node/block/clip/clip.cpp +++ b/app/node/block/clip/clip.cpp @@ -61,11 +61,6 @@ ClipBlock::ClipBlock() : SetEffectInput(kBufferIn); } -Node *ClipBlock::copy() const -{ - return new ClipBlock(); -} - QString ClipBlock::Name() const { if (track()) { diff --git a/app/node/block/clip/clip.h b/app/node/block/clip/clip.h index 300f3408f..943c6ed15 100644 --- a/app/node/block/clip/clip.h +++ b/app/node/block/clip/clip.h @@ -37,9 +37,7 @@ class ClipBlock : public Block public: ClipBlock(); - NODE_DEFAULT_DESTRUCTOR(ClipBlock) - - virtual Node* copy() const override; + NODE_DEFAULT_FUNCTIONS(ClipBlock) virtual QString Name() const override; virtual QString id() const override; diff --git a/app/node/block/gap/gap.cpp b/app/node/block/gap/gap.cpp index d5ea6915c..60a066153 100644 --- a/app/node/block/gap/gap.cpp +++ b/app/node/block/gap/gap.cpp @@ -26,11 +26,6 @@ GapBlock::GapBlock() { } -Node *GapBlock::copy() const -{ - return new GapBlock(); -} - QString GapBlock::Name() const { return tr("Gap"); diff --git a/app/node/block/gap/gap.h b/app/node/block/gap/gap.h index c048e229e..5dfc01eb1 100644 --- a/app/node/block/gap/gap.h +++ b/app/node/block/gap/gap.h @@ -34,9 +34,7 @@ class GapBlock : public Block public: GapBlock(); - NODE_DEFAULT_DESTRUCTOR(GapBlock) - - virtual Node * copy() const override; + NODE_DEFAULT_FUNCTIONS(GapBlock) virtual QString Name() const override; virtual QString id() const override; diff --git a/app/node/block/subtitle/subtitle.cpp b/app/node/block/subtitle/subtitle.cpp index ef42559cd..8c60d8ee4 100644 --- a/app/node/block/subtitle/subtitle.cpp +++ b/app/node/block/subtitle/subtitle.cpp @@ -31,11 +31,6 @@ SubtitleBlock::SubtitleBlock() AddInput(kTextIn, NodeValue::kText, InputFlags(kInputFlagNotConnectable | kInputFlagNotKeyframable)); } -Node *SubtitleBlock::copy() const -{ - return new SubtitleBlock(); -} - QString SubtitleBlock::Name() const { return tr("Subtitle"); diff --git a/app/node/block/subtitle/subtitle.h b/app/node/block/subtitle/subtitle.h index c88a2bfc1..ed51c37d3 100644 --- a/app/node/block/subtitle/subtitle.h +++ b/app/node/block/subtitle/subtitle.h @@ -31,9 +31,7 @@ class SubtitleBlock : public ClipBlock public: SubtitleBlock(); - NODE_DEFAULT_DESTRUCTOR(SubtitleBlock) - - virtual Node* copy() const override; + NODE_DEFAULT_FUNCTIONS(SubtitleBlock) virtual QString Name() const override; virtual QString id() const override; diff --git a/app/node/block/transition/crossdissolve/crossdissolvetransition.cpp b/app/node/block/transition/crossdissolve/crossdissolvetransition.cpp index 8f9d33e62..bf50e7486 100644 --- a/app/node/block/transition/crossdissolve/crossdissolvetransition.cpp +++ b/app/node/block/transition/crossdissolve/crossdissolvetransition.cpp @@ -24,12 +24,6 @@ namespace olive { CrossDissolveTransition::CrossDissolveTransition() { - -} - -Node *CrossDissolveTransition::copy() const -{ - return new CrossDissolveTransition(); } QString CrossDissolveTransition::Name() const diff --git a/app/node/block/transition/crossdissolve/crossdissolvetransition.h b/app/node/block/transition/crossdissolve/crossdissolvetransition.h index aca4fd039..bd6f7ca9e 100644 --- a/app/node/block/transition/crossdissolve/crossdissolvetransition.h +++ b/app/node/block/transition/crossdissolve/crossdissolvetransition.h @@ -31,9 +31,7 @@ class CrossDissolveTransition : public TransitionBlock public: CrossDissolveTransition(); - NODE_DEFAULT_DESTRUCTOR(CrossDissolveTransition) - - virtual Node* copy() const override; + NODE_DEFAULT_FUNCTIONS(CrossDissolveTransition) virtual QString Name() const override; virtual QString id() const override; diff --git a/app/node/block/transition/diptocolor/diptocolortransition.cpp b/app/node/block/transition/diptocolor/diptocolortransition.cpp index 1c9691e13..5a64ed3de 100644 --- a/app/node/block/transition/diptocolor/diptocolortransition.cpp +++ b/app/node/block/transition/diptocolor/diptocolortransition.cpp @@ -29,11 +29,6 @@ DipToColorTransition::DipToColorTransition() AddInput(kColorInput, NodeValue::kColor, QVariant::fromValue(Color(0, 0, 0))); } -Node *DipToColorTransition::copy() const -{ - return new DipToColorTransition(); -} - QString DipToColorTransition::Name() const { return tr("Dip To Color"); diff --git a/app/node/block/transition/diptocolor/diptocolortransition.h b/app/node/block/transition/diptocolor/diptocolortransition.h index 00ff56550..66164d559 100644 --- a/app/node/block/transition/diptocolor/diptocolortransition.h +++ b/app/node/block/transition/diptocolor/diptocolortransition.h @@ -31,9 +31,7 @@ class DipToColorTransition : public TransitionBlock public: DipToColorTransition(); - NODE_DEFAULT_DESTRUCTOR(DipToColorTransition) - - virtual Node* copy() const override; + NODE_DEFAULT_FUNCTIONS(DipToColorTransition) virtual QString Name() const override; virtual QString id() const override; diff --git a/app/node/block/transition/transition.h b/app/node/block/transition/transition.h index 93577fcbc..e76888edd 100644 --- a/app/node/block/transition/transition.h +++ b/app/node/block/transition/transition.h @@ -33,8 +33,6 @@ class TransitionBlock : public Block public: TransitionBlock(); - NODE_DEFAULT_DESTRUCTOR(TransitionBlock) - virtual void Retranslate() override; rational in_offset() const; diff --git a/app/node/color/colormanager/colormanager.h b/app/node/color/colormanager/colormanager.h index 2dccc7270..06e0a8abd 100644 --- a/app/node/color/colormanager/colormanager.h +++ b/app/node/color/colormanager/colormanager.h @@ -38,6 +38,8 @@ class ColorManager : public Node public: ColorManager(); + NODE_DEFAULT_FUNCTIONS(ColorManager) + virtual QString Name() const override { return tr("Color Manager"); @@ -58,11 +60,6 @@ public: return tr("Color management configuration for project."); } - virtual Node* copy() const override - { - return new ColorManager(); - } - OCIO::ConstConfigRcPtr GetConfig() const; static OCIO::ConstConfigRcPtr CreateConfigFromFile(const QString& filename); diff --git a/app/node/distort/cornerpin/cornerpindistortnode.h b/app/node/distort/cornerpin/cornerpindistortnode.h index 86d80952f..8c5cae8cb 100644 --- a/app/node/distort/cornerpin/cornerpindistortnode.h +++ b/app/node/distort/cornerpin/cornerpindistortnode.h @@ -35,12 +35,7 @@ class CornerPinDistortNode : public Node public: CornerPinDistortNode(); - NODE_DEFAULT_DESTRUCTOR(CornerPinDistortNode) - - virtual Node* copy() const override - { - return new CornerPinDistortNode(); - } + NODE_DEFAULT_FUNCTIONS(CornerPinDistortNode) virtual QString Name() const override { diff --git a/app/node/distort/crop/cropdistortnode.h b/app/node/distort/crop/cropdistortnode.h index d2916a24d..402719281 100644 --- a/app/node/distort/crop/cropdistortnode.h +++ b/app/node/distort/crop/cropdistortnode.h @@ -36,12 +36,7 @@ class CropDistortNode : public Node public: CropDistortNode(); - NODE_DEFAULT_DESTRUCTOR(CropDistortNode) - - virtual Node* copy() const override - { - return new CropDistortNode(); - } + NODE_DEFAULT_FUNCTIONS(CropDistortNode) virtual QString Name() const override { diff --git a/app/node/distort/flip/flipdistortnode.cpp b/app/node/distort/flip/flipdistortnode.cpp index 4589b4542..53fbcfb84 100644 --- a/app/node/distort/flip/flipdistortnode.cpp +++ b/app/node/distort/flip/flipdistortnode.cpp @@ -40,11 +40,6 @@ FlipDistortNode::FlipDistortNode() SetEffectInput(kTextureInput); } -Node* FlipDistortNode::copy() const -{ - return new FlipDistortNode(); -} - QString FlipDistortNode::Name() const { return tr("Flip"); diff --git a/app/node/distort/flip/flipdistortnode.h b/app/node/distort/flip/flipdistortnode.h index ba78023f1..3bb53bb0c 100644 --- a/app/node/distort/flip/flipdistortnode.h +++ b/app/node/distort/flip/flipdistortnode.h @@ -31,9 +31,7 @@ class FlipDistortNode : public Node public: FlipDistortNode(); - NODE_DEFAULT_DESTRUCTOR(FlipDistortNode) - - virtual Node* copy() const override; + NODE_DEFAULT_FUNCTIONS(FlipDistortNode) virtual QString Name() const override; virtual QString id() const override; diff --git a/app/node/distort/transform/transformdistortnode.h b/app/node/distort/transform/transformdistortnode.h index f584ff8e6..68e71d8a5 100644 --- a/app/node/distort/transform/transformdistortnode.h +++ b/app/node/distort/transform/transformdistortnode.h @@ -34,12 +34,7 @@ class TransformDistortNode : public MatrixGenerator public: TransformDistortNode(); - NODE_DEFAULT_DESTRUCTOR(TransformDistortNode) - - virtual Node* copy() const override - { - return new TransformDistortNode(); - } + NODE_DEFAULT_FUNCTIONS(TransformDistortNode) virtual QString Name() const override { diff --git a/app/node/effect/opacity/opacityeffect.h b/app/node/effect/opacity/opacityeffect.h index d18af81cc..a7c8f7f0a 100644 --- a/app/node/effect/opacity/opacityeffect.h +++ b/app/node/effect/opacity/opacityeffect.h @@ -10,9 +10,7 @@ class OpacityEffect : public Node public: OpacityEffect(); - NODE_DEFAULT_DESTRUCTOR(OpacityEffect) - - NODE_COPY_FUNCTION(OpacityEffect) + NODE_DEFAULT_FUNCTIONS(OpacityEffect) virtual QString Name() const override { diff --git a/app/node/filter/blur/blur.cpp b/app/node/filter/blur/blur.cpp index 0452c4fba..86d277ce1 100644 --- a/app/node/filter/blur/blur.cpp +++ b/app/node/filter/blur/blur.cpp @@ -50,11 +50,6 @@ BlurFilterNode::BlurFilterNode() SetEffectInput(kTextureInput); } -Node *BlurFilterNode::copy() const -{ - return new BlurFilterNode(); -} - QString BlurFilterNode::Name() const { return tr("Blur"); diff --git a/app/node/filter/blur/blur.h b/app/node/filter/blur/blur.h index 4b061040d..da70956a4 100644 --- a/app/node/filter/blur/blur.h +++ b/app/node/filter/blur/blur.h @@ -31,9 +31,7 @@ class BlurFilterNode : public Node public: BlurFilterNode(); - NODE_DEFAULT_DESTRUCTOR(BlurFilterNode) - - virtual Node* copy() const override; + NODE_DEFAULT_FUNCTIONS(BlurFilterNode) virtual QString Name() const override; virtual QString id() const override; diff --git a/app/node/filter/mosaic/mosaicfilternode.h b/app/node/filter/mosaic/mosaicfilternode.h index 726da5744..f1dea64e4 100644 --- a/app/node/filter/mosaic/mosaicfilternode.h +++ b/app/node/filter/mosaic/mosaicfilternode.h @@ -31,12 +31,7 @@ class MosaicFilterNode : public Node public: MosaicFilterNode(); - NODE_DEFAULT_DESTRUCTOR(MosaicFilterNode) - - virtual Node* copy() const override - { - return new MosaicFilterNode(); - } + NODE_DEFAULT_FUNCTIONS(MosaicFilterNode) virtual QString Name() const override { diff --git a/app/node/filter/stroke/stroke.cpp b/app/node/filter/stroke/stroke.cpp index d0360cc10..6f05f61fa 100644 --- a/app/node/filter/stroke/stroke.cpp +++ b/app/node/filter/stroke/stroke.cpp @@ -53,11 +53,6 @@ StrokeFilterNode::StrokeFilterNode() SetEffectInput(kTextureInput); } -Node *StrokeFilterNode::copy() const -{ - return new StrokeFilterNode(); -} - QString StrokeFilterNode::Name() const { return tr("Stroke"); diff --git a/app/node/filter/stroke/stroke.h b/app/node/filter/stroke/stroke.h index d70e7e7bc..d762b3923 100644 --- a/app/node/filter/stroke/stroke.h +++ b/app/node/filter/stroke/stroke.h @@ -31,9 +31,7 @@ class StrokeFilterNode : public Node public: StrokeFilterNode(); - NODE_DEFAULT_DESTRUCTOR(StrokeFilterNode) - - virtual Node* copy() const override; + NODE_DEFAULT_FUNCTIONS(StrokeFilterNode) virtual QString Name() const override; virtual QString id() const override; diff --git a/app/node/generator/matrix/matrix.cpp b/app/node/generator/matrix/matrix.cpp index bbd5c9ba6..30cbf6065 100644 --- a/app/node/generator/matrix/matrix.cpp +++ b/app/node/generator/matrix/matrix.cpp @@ -51,11 +51,6 @@ MatrixGenerator::MatrixGenerator() AddInput(kAnchorInput, NodeValue::kVec2, QVector2D(0.0, 0.0)); } -Node *MatrixGenerator::copy() const -{ - return new MatrixGenerator(); -} - QString MatrixGenerator::Name() const { return tr("Orthographic Matrix"); diff --git a/app/node/generator/matrix/matrix.h b/app/node/generator/matrix/matrix.h index 6ccb318a0..3466c703d 100644 --- a/app/node/generator/matrix/matrix.h +++ b/app/node/generator/matrix/matrix.h @@ -34,9 +34,7 @@ class MatrixGenerator : public Node public: MatrixGenerator(); - NODE_DEFAULT_DESTRUCTOR(MatrixGenerator) - - virtual Node* copy() const override; + NODE_DEFAULT_FUNCTIONS(MatrixGenerator) virtual QString Name() const override; virtual QString ShortName() const override; diff --git a/app/node/generator/noise/noise.cpp b/app/node/generator/noise/noise.cpp index 213910ad4..0d4e3c832 100644 --- a/app/node/generator/noise/noise.cpp +++ b/app/node/generator/noise/noise.cpp @@ -44,11 +44,6 @@ NoiseGeneratorNode::NoiseGeneratorNode() SetFlags(kVideoEffect); } -Node* NoiseGeneratorNode::copy() const -{ - return new NoiseGeneratorNode(); -} - QString NoiseGeneratorNode::Name() const { return tr("Noise"); diff --git a/app/node/generator/noise/noise.h b/app/node/generator/noise/noise.h index 36cbd7fe8..7b8ea005c 100644 --- a/app/node/generator/noise/noise.h +++ b/app/node/generator/noise/noise.h @@ -30,9 +30,7 @@ class NoiseGeneratorNode : public Node { public: NoiseGeneratorNode(); - NODE_DEFAULT_DESTRUCTOR(NoiseGeneratorNode) - - virtual Node *copy() const override; + NODE_DEFAULT_FUNCTIONS(NoiseGeneratorNode) virtual QString Name() const override; virtual QString id() const override; diff --git a/app/node/generator/polygon/polygon.cpp b/app/node/generator/polygon/polygon.cpp index 40283689b..cb294b9ed 100644 --- a/app/node/generator/polygon/polygon.cpp +++ b/app/node/generator/polygon/polygon.cpp @@ -61,11 +61,6 @@ PolygonGenerator::PolygonGenerator() poly_gizmo_ = new PathGizmo(this); } -Node *PolygonGenerator::copy() const -{ - return new PolygonGenerator(); -} - QString PolygonGenerator::Name() const { return tr("Polygon"); diff --git a/app/node/generator/polygon/polygon.h b/app/node/generator/polygon/polygon.h index 2f2e4e467..0b2d98457 100644 --- a/app/node/generator/polygon/polygon.h +++ b/app/node/generator/polygon/polygon.h @@ -39,9 +39,7 @@ class PolygonGenerator : public GeneratorWithMerge public: PolygonGenerator(); - NODE_DEFAULT_DESTRUCTOR(PolygonGenerator) - - virtual Node* copy() const override; + NODE_DEFAULT_FUNCTIONS(PolygonGenerator) virtual QString Name() const override; virtual QString id() const override; diff --git a/app/node/generator/shape/generatorwithmerge.h b/app/node/generator/shape/generatorwithmerge.h index 9345f2d64..af69e1ed4 100644 --- a/app/node/generator/shape/generatorwithmerge.h +++ b/app/node/generator/shape/generatorwithmerge.h @@ -31,8 +31,6 @@ class GeneratorWithMerge : public Node public: GeneratorWithMerge(); - NODE_DEFAULT_DESTRUCTOR(GeneratorWithMerge) - virtual void Retranslate() override; virtual ShaderCode GetShaderCode(const QString &shader_id) const override; diff --git a/app/node/generator/shape/shapenode.h b/app/node/generator/shape/shapenode.h index 2df95bed4..7ae7d5469 100644 --- a/app/node/generator/shape/shapenode.h +++ b/app/node/generator/shape/shapenode.h @@ -36,8 +36,7 @@ public: kEllipse }; - NODE_DEFAULT_DESTRUCTOR(ShapeNode) - NODE_COPY_FUNCTION(ShapeNode) + NODE_DEFAULT_FUNCTIONS(ShapeNode) virtual QString Name() const override; virtual QString id() const override; diff --git a/app/node/generator/shape/shapenodebase.h b/app/node/generator/shape/shapenodebase.h index 451c32dea..4d9b01006 100644 --- a/app/node/generator/shape/shapenodebase.h +++ b/app/node/generator/shape/shapenodebase.h @@ -35,8 +35,6 @@ class ShapeNodeBase : public GeneratorWithMerge public: ShapeNodeBase(bool create_color_input = true); - NODE_DEFAULT_DESTRUCTOR(ShapeNodeBase) - virtual void Retranslate() override; virtual void UpdateGizmoPositions(const NodeValueRow &row, const NodeGlobals &globals) override; diff --git a/app/node/generator/solid/solid.cpp b/app/node/generator/solid/solid.cpp index 713a096a7..0bfe93f9c 100644 --- a/app/node/generator/solid/solid.cpp +++ b/app/node/generator/solid/solid.cpp @@ -34,11 +34,6 @@ SolidGenerator::SolidGenerator() AddInput(kColorInput, NodeValue::kColor, QVariant::fromValue(Color(1.0f, 0.0f, 0.0f, 1.0f))); } -Node *SolidGenerator::copy() const -{ - return new SolidGenerator(); -} - QString SolidGenerator::Name() const { return tr("Solid"); diff --git a/app/node/generator/solid/solid.h b/app/node/generator/solid/solid.h index 9e60090bc..55f5bdb50 100644 --- a/app/node/generator/solid/solid.h +++ b/app/node/generator/solid/solid.h @@ -31,9 +31,7 @@ class SolidGenerator : public Node public: SolidGenerator(); - NODE_DEFAULT_DESTRUCTOR(SolidGenerator) - - virtual Node* copy() const override; + NODE_DEFAULT_FUNCTIONS(SolidGenerator) virtual QString Name() const override; virtual QString id() const override; diff --git a/app/node/generator/text/textv1.h b/app/node/generator/text/textv1.h index 868e22449..85e4f24cf 100644 --- a/app/node/generator/text/textv1.h +++ b/app/node/generator/text/textv1.h @@ -31,8 +31,7 @@ class TextGeneratorV1 : public Node public: TextGeneratorV1(); - NODE_DEFAULT_DESTRUCTOR(TextGeneratorV1) - NODE_COPY_FUNCTION(TextGeneratorV1) + NODE_DEFAULT_FUNCTIONS(TextGeneratorV1) virtual QString Name() const override; virtual QString id() const override; diff --git a/app/node/generator/text/textv2.h b/app/node/generator/text/textv2.h index d9fb17386..d98443dfc 100644 --- a/app/node/generator/text/textv2.h +++ b/app/node/generator/text/textv2.h @@ -31,8 +31,7 @@ class TextGeneratorV2 : public ShapeNodeBase public: TextGeneratorV2(); - NODE_DEFAULT_DESTRUCTOR(TextGeneratorV2) - NODE_COPY_FUNCTION(TextGeneratorV2) + NODE_DEFAULT_FUNCTIONS(TextGeneratorV2) virtual QString Name() const override; virtual QString id() const override; diff --git a/app/node/generator/text/textv3.h b/app/node/generator/text/textv3.h index 1fd9237c4..f2cd2d47c 100644 --- a/app/node/generator/text/textv3.h +++ b/app/node/generator/text/textv3.h @@ -32,8 +32,7 @@ class TextGeneratorV3 : public ShapeNodeBase public: TextGeneratorV3(); - NODE_DEFAULT_DESTRUCTOR(TextGeneratorV3) - NODE_COPY_FUNCTION(TextGeneratorV3) + NODE_DEFAULT_FUNCTIONS(TextGeneratorV3) virtual QString Name() const override; virtual QString id() const override; diff --git a/app/node/group/group.h b/app/node/group/group.h index fe2151b26..d906c987e 100644 --- a/app/node/group/group.h +++ b/app/node/group/group.h @@ -31,8 +31,7 @@ class NodeGroup : public Node public: NodeGroup(); - NODE_DEFAULT_DESTRUCTOR(NodeGroup) - NODE_COPY_FUNCTION(NodeGroup) + NODE_DEFAULT_FUNCTIONS(NodeGroup) virtual QString Name() const override; virtual QString id() const override; diff --git a/app/node/input/time/timeinput.cpp b/app/node/input/time/timeinput.cpp index 96f80f385..b9e46c27a 100644 --- a/app/node/input/time/timeinput.cpp +++ b/app/node/input/time/timeinput.cpp @@ -28,11 +28,6 @@ TimeInput::TimeInput() { } -Node *TimeInput::copy() const -{ - return new TimeInput(); -} - QString TimeInput::Name() const { return tr("Time"); diff --git a/app/node/input/time/timeinput.h b/app/node/input/time/timeinput.h index c5afc75f4..c892e351c 100644 --- a/app/node/input/time/timeinput.h +++ b/app/node/input/time/timeinput.h @@ -27,13 +27,11 @@ namespace olive { class TimeInput : public Node { - Q_OBJECT + Q_OBJECT public: TimeInput(); - NODE_DEFAULT_DESTRUCTOR(TimeInput) - - virtual Node* copy() const override; + NODE_DEFAULT_FUNCTIONS(TimeInput) virtual QString Name() const override; virtual QString id() const override; diff --git a/app/node/input/value/valuenode.h b/app/node/input/value/valuenode.h index 2d6d2ada8..8d2569786 100644 --- a/app/node/input/value/valuenode.h +++ b/app/node/input/value/valuenode.h @@ -31,12 +31,7 @@ class ValueNode : public Node public: ValueNode(); - NODE_DEFAULT_DESTRUCTOR(ValueNode) - - virtual Node* copy() const override - { - return new ValueNode(); - } + NODE_DEFAULT_FUNCTIONS(ValueNode) virtual QString Name() const override { diff --git a/app/node/keying/colordifferencekey/colordifferencekey.cpp b/app/node/keying/colordifferencekey/colordifferencekey.cpp index 39595e039..534d06a78 100644 --- a/app/node/keying/colordifferencekey/colordifferencekey.cpp +++ b/app/node/keying/colordifferencekey/colordifferencekey.cpp @@ -49,11 +49,6 @@ ColorDifferenceKeyNode::ColorDifferenceKeyNode() SetEffectInput(kTextureInput); } -Node *ColorDifferenceKeyNode::copy() const -{ - return new ColorDifferenceKeyNode(); -} - QString ColorDifferenceKeyNode::Name() const { return tr("Color Difference Key"); diff --git a/app/node/keying/colordifferencekey/colordifferencekey.h b/app/node/keying/colordifferencekey/colordifferencekey.h index 01ddaf718..3b4809256 100644 --- a/app/node/keying/colordifferencekey/colordifferencekey.h +++ b/app/node/keying/colordifferencekey/colordifferencekey.h @@ -24,7 +24,7 @@ class ColorDifferenceKeyNode : public Node { public: ColorDifferenceKeyNode(); - virtual Node* copy() const override; + NODE_DEFAULT_FUNCTIONS(ColorDifferenceKeyNode) virtual QString Name() const override; virtual QString id() const override; diff --git a/app/node/keying/despill/despill.cpp b/app/node/keying/despill/despill.cpp index e72124f31..17ea0a5ca 100644 --- a/app/node/keying/despill/despill.cpp +++ b/app/node/keying/despill/despill.cpp @@ -40,11 +40,6 @@ DespillNode::DespillNode() SetEffectInput(kTextureInput); } -Node* DespillNode::copy() const -{ - return new DespillNode(); -} - QString DespillNode::Name() const { return tr("Despill"); diff --git a/app/node/keying/despill/despill.h b/app/node/keying/despill/despill.h index c5aaed49d..098cb3132 100644 --- a/app/node/keying/despill/despill.h +++ b/app/node/keying/despill/despill.h @@ -25,7 +25,7 @@ class DespillNode : public Node { public: DespillNode(); - virtual Node* copy() const override; + NODE_DEFAULT_FUNCTIONS(DespillNode) virtual QString Name() const override; virtual QString id() const override; @@ -36,13 +36,13 @@ class DespillNode : public Node { virtual ShaderCode GetShaderCode(const QString& shader_id) const override; virtual void Value(const NodeValueRow& value, const NodeGlobals& globals, NodeValueTable* table) const override; - + static const QString kTextureInput; static const QString kColorInput; static const QString kMethodInput; static const QString kPreserveLuminanceInput; - - + + }; } // namespace olive diff --git a/app/node/math/math/math.cpp b/app/node/math/math/math.cpp index 932a963d1..123f768fa 100644 --- a/app/node/math/math/math.cpp +++ b/app/node/math/math/math.cpp @@ -42,11 +42,6 @@ MathNode::MathNode() SetInputProperty(kParamBIn, QStringLiteral("autotrim"), true); } -Node *MathNode::copy() const -{ - return new MathNode(); -} - QString MathNode::Name() const { return tr("Math"); diff --git a/app/node/math/math/math.h b/app/node/math/math/math.h index b87b09a19..6001db776 100644 --- a/app/node/math/math/math.h +++ b/app/node/math/math/math.h @@ -31,9 +31,7 @@ class MathNode : public MathNodeBase public: MathNode(); - NODE_DEFAULT_DESTRUCTOR(MathNode) - - virtual Node* copy() const override; + NODE_DEFAULT_FUNCTIONS(MathNode) virtual QString Name() const override; virtual QString id() const override; diff --git a/app/node/math/math/mathbase.h b/app/node/math/math/mathbase.h index 6391c10d3..77f3fe336 100644 --- a/app/node/math/math/mathbase.h +++ b/app/node/math/math/mathbase.h @@ -30,8 +30,6 @@ class MathNodeBase : public Node public: MathNodeBase() = default; - NODE_DEFAULT_DESTRUCTOR(MathNodeBase) - enum Operation { kOpAdd, kOpSubtract, diff --git a/app/node/math/merge/merge.cpp b/app/node/math/merge/merge.cpp index 1f1c9be42..5a911e8a2 100644 --- a/app/node/math/merge/merge.cpp +++ b/app/node/math/merge/merge.cpp @@ -38,11 +38,6 @@ MergeNode::MergeNode() SetFlags(kDontShowInParamView); } -Node *MergeNode::copy() const -{ - return new MergeNode(); -} - QString MergeNode::Name() const { return tr("Merge"); diff --git a/app/node/math/merge/merge.h b/app/node/math/merge/merge.h index fff8bbd5a..f73994a3f 100644 --- a/app/node/math/merge/merge.h +++ b/app/node/math/merge/merge.h @@ -31,9 +31,7 @@ class MergeNode : public Node public: MergeNode(); - NODE_DEFAULT_DESTRUCTOR(MergeNode) - - virtual Node* copy() const override; + NODE_DEFAULT_FUNCTIONS(MergeNode) virtual QString Name() const override; virtual QString id() const override; diff --git a/app/node/math/trigonometry/trigonometry.cpp b/app/node/math/trigonometry/trigonometry.cpp index 5c6e16663..461ba538a 100644 --- a/app/node/math/trigonometry/trigonometry.cpp +++ b/app/node/math/trigonometry/trigonometry.cpp @@ -34,11 +34,6 @@ TrigonometryNode::TrigonometryNode() AddInput(kXIn, NodeValue::kFloat, 0.0); } -olive::Node *olive::TrigonometryNode::copy() const -{ - return new TrigonometryNode(); -} - QString TrigonometryNode::Name() const { return tr("Trigonometry"); diff --git a/app/node/math/trigonometry/trigonometry.h b/app/node/math/trigonometry/trigonometry.h index 1f1058f6b..a78f9ea59 100644 --- a/app/node/math/trigonometry/trigonometry.h +++ b/app/node/math/trigonometry/trigonometry.h @@ -31,9 +31,7 @@ class TrigonometryNode : public Node public: TrigonometryNode(); - NODE_DEFAULT_DESTRUCTOR(TrigonometryNode) - - virtual Node* copy() const override; + NODE_DEFAULT_FUNCTIONS(TrigonometryNode) virtual QString Name() const override; virtual QString id() const override; diff --git a/app/node/node.h b/app/node/node.h index 98fcd8e27..f8ef73fa7 100644 --- a/app/node/node.h +++ b/app/node/node.h @@ -48,6 +48,10 @@ namespace olive { +#define NODE_DEFAULT_FUNCTIONS(x) \ + NODE_DEFAULT_DESTRUCTOR(x) \ + NODE_COPY_FUNCTION(x) + #define NODE_DEFAULT_DESTRUCTOR(x) \ virtual ~x() override {DisconnectAll();} diff --git a/app/node/output/track/track.cpp b/app/node/output/track/track.cpp index f4244804b..ce34c2240 100644 --- a/app/node/output/track/track.cpp +++ b/app/node/output/track/track.cpp @@ -66,11 +66,6 @@ const Track::Type& Track::type() const return track_type_; } -Node *Track::copy() const -{ - return new Track(); -} - QString Track::Name() const { if (track_type_ == Track::kVideo) { diff --git a/app/node/output/track/track.h b/app/node/output/track/track.h index 72a1b6a78..237a70f15 100644 --- a/app/node/output/track/track.h +++ b/app/node/output/track/track.h @@ -45,13 +45,11 @@ public: Track(); - NODE_DEFAULT_DESTRUCTOR(Track) + NODE_DEFAULT_FUNCTIONS(Track) const Track::Type& type() const; void set_type(const Track::Type& track_type); - virtual Node* copy() const override; - virtual QString Name() const override; virtual QString id() const override; virtual QVector Category() const override; diff --git a/app/node/output/viewer/viewer.cpp b/app/node/output/viewer/viewer.cpp index 0f5a35852..b1d9db487 100644 --- a/app/node/output/viewer/viewer.cpp +++ b/app/node/output/viewer/viewer.cpp @@ -72,11 +72,6 @@ ViewerOutput::ViewerOutput(bool create_buffer_inputs, bool create_default_stream timeline_points_ = new TimelinePoints(this); } -Node *ViewerOutput::copy() const -{ - return new ViewerOutput(); -} - QString ViewerOutput::Name() const { return tr("Viewer"); diff --git a/app/node/output/viewer/viewer.h b/app/node/output/viewer/viewer.h index ee207c6ec..2edf2d344 100644 --- a/app/node/output/viewer/viewer.h +++ b/app/node/output/viewer/viewer.h @@ -46,9 +46,7 @@ class ViewerOutput : public Node public: ViewerOutput(bool create_buffer_inputs = true, bool create_default_streams = true); - NODE_DEFAULT_DESTRUCTOR(ViewerOutput) - - virtual Node* copy() const override; + NODE_DEFAULT_FUNCTIONS(ViewerOutput) virtual QString Name() const override; virtual QString id() const override; diff --git a/app/node/project/folder/folder.h b/app/node/project/folder/folder.h index 12677e57b..7c779719d 100644 --- a/app/node/project/folder/folder.h +++ b/app/node/project/folder/folder.h @@ -37,12 +37,7 @@ class Folder : public Node public: Folder(); - NODE_DEFAULT_DESTRUCTOR(Folder) - - virtual Node* copy() const override - { - return new Folder(); - } + NODE_DEFAULT_FUNCTIONS(Folder) virtual QString Name() const override { diff --git a/app/node/project/footage/footage.h b/app/node/project/footage/footage.h index aed465106..77202dbe8 100644 --- a/app/node/project/footage/footage.h +++ b/app/node/project/footage/footage.h @@ -55,12 +55,7 @@ public: */ Footage(const QString& filename = QString()); - NODE_DEFAULT_DESTRUCTOR(Footage) - - virtual Node* copy() const override - { - return new Footage(); - } + NODE_DEFAULT_FUNCTIONS(Footage) virtual QString Name() const override { diff --git a/app/node/project/projectsettings/projectsettings.h b/app/node/project/projectsettings/projectsettings.h index ce1890847..35b9d578c 100644 --- a/app/node/project/projectsettings/projectsettings.h +++ b/app/node/project/projectsettings/projectsettings.h @@ -31,7 +31,7 @@ class ProjectSettingsNode : public Node public: ProjectSettingsNode(); - NODE_DEFAULT_DESTRUCTOR(ProjectSettingsNode) + NODE_DEFAULT_FUNCTIONS(ProjectSettingsNode) virtual QString Name() const override { @@ -53,11 +53,6 @@ public: return tr("Settings used throughout the project."); } - virtual Node* copy() const override - { - return new ProjectSettingsNode(); - } - enum CacheSetting { kCacheUseDefaultLocation, kCacheStoreAlongsideProject, diff --git a/app/node/project/sequence/sequence.h b/app/node/project/sequence/sequence.h index 62900b031..40cc9f4d6 100644 --- a/app/node/project/sequence/sequence.h +++ b/app/node/project/sequence/sequence.h @@ -36,12 +36,7 @@ class Sequence : public ViewerOutput public: Sequence(); - NODE_DEFAULT_DESTRUCTOR(Sequence) - - virtual Node* copy() const override - { - return new Sequence(); - } + NODE_DEFAULT_FUNCTIONS(Sequence) virtual QString Name() const override { diff --git a/app/node/time/timeoffset/timeoffsetnode.h b/app/node/time/timeoffset/timeoffsetnode.h index b44a1f1e0..961492245 100644 --- a/app/node/time/timeoffset/timeoffsetnode.h +++ b/app/node/time/timeoffset/timeoffsetnode.h @@ -30,8 +30,7 @@ class TimeOffsetNode : public Node public: TimeOffsetNode(); - NODE_DEFAULT_DESTRUCTOR(TimeOffsetNode) - NODE_COPY_FUNCTION(TimeOffsetNode) + NODE_DEFAULT_FUNCTIONS(TimeOffsetNode) virtual QString Name() const override { diff --git a/app/node/time/timeremap/timeremap.cpp b/app/node/time/timeremap/timeremap.cpp index ff2b1ff77..e903ad8eb 100644 --- a/app/node/time/timeremap/timeremap.cpp +++ b/app/node/time/timeremap/timeremap.cpp @@ -39,11 +39,6 @@ TimeRemapNode::TimeRemapNode() AddInput(kInputInput, NodeValue::kNone, InputFlags(kInputFlagNotKeyframable)); } -Node *TimeRemapNode::copy() const -{ - return new TimeRemapNode(); -} - QString TimeRemapNode::Name() const { return tr("Time Remap"); diff --git a/app/node/time/timeremap/timeremap.h b/app/node/time/timeremap/timeremap.h index 6cdaf618a..a9a8cdb53 100644 --- a/app/node/time/timeremap/timeremap.h +++ b/app/node/time/timeremap/timeremap.h @@ -31,9 +31,7 @@ class TimeRemapNode : public Node public: TimeRemapNode(); - NODE_DEFAULT_DESTRUCTOR(TimeRemapNode) - - virtual Node* copy() const override; + NODE_DEFAULT_FUNCTIONS(TimeRemapNode) virtual QString Name() const override; virtual QString id() const override;