Pointer cleanup (#242)

- Made greater use of smart pointers, eliminating many instances of manual memory management
- Do not use pointers at all for many non-polymorphic classes
- Assorted other code cleanup
This commit is contained in:
Jaye Evins
2025-10-31 16:11:28 -04:00
committed by GitHub
parent fd10d88be5
commit 8c8e447336
159 changed files with 3364 additions and 4045 deletions
+11 -13
View File
@@ -35,27 +35,29 @@ namespace glabels
Q_DECLARE_TR_FUNCTIONS(FrameEllipse)
public:
FrameEllipse( const Distance& w,
const Distance& h,
const Distance& waste,
const QString& id = "0" );
FrameEllipse( Distance w,
Distance h,
Distance waste,
const QString& id = "0" );
FrameEllipse( const FrameEllipse& other ) = default;
Frame* dup() const override;
std::unique_ptr<Frame> clone() const override;
Distance waste() const;
Distance w() const override;
Distance h() const override;
QString sizeDescription( const Units& units ) const override;
bool isSimilarTo( Frame* other ) const override;
QString sizeDescription( Units units ) const override;
bool isSimilarTo( const Frame& other ) const override;
const QPainterPath& path() const override;
const QPainterPath& clipPath() const override;
QPainterPath marginPath( const Distance& xSize,
const Distance& ySize ) const override;
QPainterPath marginPath( Distance xSize, Distance ySize ) const override;
// Debugging support
void print( QDebug& dbg ) const override;
private:
@@ -72,8 +74,4 @@ namespace glabels
}
// Debugging support
QDebug operator<<( QDebug dbg, const glabels::model::FrameEllipse& frame );
#endif // model_FrameEllipse_h