72 lines
1.8 KiB
C++
72 lines
1.8 KiB
C++
/*!
|
|
@file GuiLoopingPopup.cpp
|
|
|
|
@brief xxx.
|
|
|
|
@author L. J. Barman
|
|
|
|
Copyright (c) 2008-2013, L. J. Barman, all rights reserved
|
|
|
|
This file is part of the PianoBooster application
|
|
|
|
PianoBooster is free software: you can redistribute it and/or modify
|
|
it under the terms of the GNU General Public License as published by
|
|
the Free Software Foundation, either version 3 of the License, or
|
|
(at your option) any later version.
|
|
|
|
PianoBooster is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
GNU General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
along with PianoBooster. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
*/
|
|
|
|
#include <QtWidgets>
|
|
|
|
#include "GuiLoopingPopup.h"
|
|
#include "GlView.h"
|
|
|
|
GuiLoopingPopup::GuiLoopingPopup(QWidget *parent)
|
|
: QWidget(parent)
|
|
{
|
|
setupUi(this);
|
|
m_song = nullptr;
|
|
setWindowTitle(tr("Continuous Looping"));
|
|
setWindowFlags(Qt::Popup);
|
|
}
|
|
|
|
void GuiLoopingPopup::init(CSong* song)
|
|
{
|
|
m_song = song;
|
|
loopBarsSpin->setValue(m_song->getLoopingBars());
|
|
updateInfo();
|
|
}
|
|
|
|
void GuiLoopingPopup::updateInfo()
|
|
{
|
|
if (m_song->getLoopingBars() > 0.0)
|
|
loopingText->setText(tr("Repeat End Bar:") + " " + QString().setNum(m_song->getPlayUptoBar()));
|
|
else
|
|
loopingText->setText(tr("Repeat Bar is disabled"));
|
|
}
|
|
|
|
void GuiLoopingPopup::on_loopBarsSpin_valueChanged(double bars)
|
|
{
|
|
if (!m_song) return;
|
|
|
|
m_song->setLoopingBars( bars);
|
|
updateInfo();
|
|
}
|
|
|
|
void GuiLoopingPopup::closeEvent(QCloseEvent *event)
|
|
{
|
|
Q_UNUSED(event)
|
|
QPushButton* parent = static_cast<QPushButton*> (parentWidget());
|
|
if (parent)
|
|
parent->setChecked(false);
|
|
}
|
|
|