Warning, file /frameworks/kwidgetsaddons/tests/kanimatedbuttontest.cpp was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

0001 /*
0002     SPDX-FileCopyrightText: 2008 Pino Toscano <pino@kde.org>
0003 
0004     SPDX-License-Identifier: LGPL-2.0-or-later
0005 */
0006 
0007 #include "kanimatedbuttontest.h"
0008 
0009 #include "kanimatedbutton.h"
0010 
0011 #include <QApplication>
0012 #include <QLineEdit>
0013 #include <QPushButton>
0014 #include <QSpinBox>
0015 #include <qlayout.h>
0016 
0017 AnimationGroup::AnimationGroup(const QString &path, int size, QWidget *parent)
0018     : QGroupBox(parent)
0019 {
0020     QHBoxLayout *lay = new QHBoxLayout(this);
0021     m_animButton = new KAnimatedButton(this);
0022     lay->addWidget(m_animButton);
0023     QPushButton *start = new QPushButton(QStringLiteral("Start"), this);
0024     lay->addWidget(start);
0025     QPushButton *stop = new QPushButton(QStringLiteral("Stop"), this);
0026     lay->addWidget(stop);
0027 
0028     setTitle(QStringLiteral("%1 (%2)").arg(path).arg(size));
0029     m_animButton->setIconSize(QSize(size, size));
0030     m_animButton->setAnimationPath(path);
0031 
0032     connect(start, &QAbstractButton::clicked, m_animButton, &KAnimatedButton::start);
0033     connect(stop, &QAbstractButton::clicked, m_animButton, &KAnimatedButton::stop);
0034 }
0035 
0036 MainWindow::MainWindow(QWidget *parent)
0037     : QWidget(parent)
0038 {
0039     QVBoxLayout *lay = new QVBoxLayout(this);
0040 
0041     QWidget *top = new QWidget(this);
0042     lay->addWidget(top);
0043     QHBoxLayout *lay2 = new QHBoxLayout(top);
0044     m_path = new QLineEdit(top);
0045     lay2->addWidget(m_path);
0046     m_size = new QSpinBox(top);
0047     lay2->addWidget(m_size);
0048 
0049     m_size->setValue(22);
0050 
0051     connect(m_path, &QLineEdit::returnPressed, this, &MainWindow::slotAddNew);
0052 }
0053 
0054 void MainWindow::slotAddNew()
0055 {
0056     AnimationGroup *group = new AnimationGroup(m_path->text(), m_size->value(), this);
0057     layout()->addWidget(group);
0058 }
0059 
0060 int main(int argc, char **argv)
0061 {
0062     QApplication::setApplicationName(QStringLiteral("kanimatedbuttontest"));
0063     QApplication app(argc, argv);
0064     app.setAttribute(Qt::AA_UseHighDpiPixmaps, true);
0065 
0066     MainWindow *window = new MainWindow();
0067     window->show();
0068 
0069     return app.exec();
0070 }
0071 
0072 #include "moc_kanimatedbuttontest.cpp"