File indexing completed on 2024-04-21 04:02:09

0001 /******************************************************************************
0002 *   KBlocks, a falling blocks game by KDE                                     *
0003 *   SPDX-FileCopyrightText: 2010-2021 Julian Helfferich <julian.helfferich@mailbox.org> *
0004 *                                                                             *
0005 *   SPDX-License-Identifier: GPL-2.0-or-later
0006 ******************************************************************************/
0007 #ifndef SVGITEMINTERFACE_H
0008 #define SVGITEMINTERFACE_H
0009 
0010 #include <QGraphicsSvgItem>
0011 #include <QPointF>
0012 
0013 class SvgItemInterface : public QGraphicsSvgItem
0014 {
0015 public:
0016     SvgItemInterface() = default;
0017     ~SvgItemInterface() override = default;
0018 
0019 public:
0020     virtual bool updateSelf() = 0;
0021     virtual void clearCache() = 0;
0022 
0023     virtual void startOpAnim() = 0;
0024     virtual void stopOpAnim() = 0;
0025 
0026     virtual void startPosAnim(QPointF target) = 0;
0027     virtual void execPosAnim(qreal step) = 0;
0028     virtual void stopPosAnim() = 0;
0029 };
0030 
0031 #endif // SVGITEMINTERFACE_H