adding loop to slideobject

This commit is contained in:
Chris Cochrun 2023-02-09 12:44:50 -06:00
parent f1361461e9
commit 837607c892
2 changed files with 16 additions and 0 deletions

View file

@ -55,6 +55,11 @@ int SlideObject::slideSize() const
return m_slideSize;
}
bool SlideObject::loop() const
{
return m_loop;
}
void SlideObject::changeSlide(QVariantMap item, int index)
{
// setServiceItem(item);
@ -281,6 +286,12 @@ void SlideObject::play()
emit isPlayingChanged(m_isPlaying);
}
void SlideObject::setLoop()
{
m_loop = true;
emit loopChanged(m_loop);
}
void SlideObject::pause()
{
m_isPlaying = false;

View file

@ -15,6 +15,7 @@ class SlideObject : public Slide
Q_PROPERTY(bool isPlaying READ isPlaying NOTIFY isPlayingChanged)
Q_PROPERTY(int slideIndex READ slideIndex NOTIFY slideIndexChanged)
Q_PROPERTY(int slideSize READ slideSize NOTIFY slideSizeChanged)
Q_PROPERTY(bool loop READ loop NOTIFY loopChanged)
// QML_ELEMENT
public:
@ -29,6 +30,7 @@ public:
bool isPlaying() const;
int slideIndex() const;
int slideSize() const;
bool loop() const;
Q_INVOKABLE void changeSlide(QVariantMap item, int index);
Q_INVOKABLE void play();
@ -37,17 +39,20 @@ public:
Q_INVOKABLE bool next(QVariantMap nextItem, SlideModel *slideModel);
Q_INVOKABLE bool previous(QVariantMap prevItem, SlideModel *slideModel);
Q_INVOKABLE bool changeSlideIndex(int index);
Q_INVOKABLE void setLoop();
signals:
Q_INVOKABLE void isPlayingChanged(bool isPlaying);
Q_INVOKABLE void slideIndexChanged(int slideIndex);
Q_INVOKABLE void slideSizeChanged(int slideSize);
Q_INVOKABLE void slideChanged(int slide);
Q_INVOKABLE void loopChanged(bool loop);
private:
bool m_isPlaying;
int m_slideIndex;
int m_slideSize;
bool m_loop;
};
#endif //SLIDEOBJECT_H