File indexing completed on 2025-05-04 05:18:27

0001 /*
0002     This program is free software; you can redistribute it and/or
0003     modify it under the terms of the GNU General Public License as
0004     published by the Free Software Foundation; either version 2 of
0005     the License or (at your option) version 3 or any later version
0006     accepted by the membership of KDE e.V. (or its successor approved
0007     by the membership of KDE e.V.), which shall act as a proxy 
0008     defined in Section 14 of version 3 of the license.
0009 */
0010 
0011 /*
0012   Copyright (C) 2008 Eli J. MacKenzie <argonel at gmail.com>
0013 */
0014 
0015 
0016 #ifndef QUEUETUNER_H
0017 #define QUEUETUNER_H
0018 
0019 #include "ui_queuetunerbase.h"
0020 
0021 class Server;
0022 class ViewContainer;
0023 class QTimer;
0024 
0025 #include <QTimer>
0026 
0027 class QueueTuner: public QWidget, private Ui::QueueTunerBase
0028 {
0029     Q_OBJECT
0030 
0031     public:
0032         QueueTuner(QWidget* parent, ViewContainer *container);
0033         ~QueueTuner();
0034         void contextMenuEvent (QContextMenuEvent*) override;
0035 
0036     public Q_SLOTS:
0037         void setServer(Server* newServer);
0038         void getRates();
0039         void timerFired();
0040         virtual void hide();
0041         virtual void show();
0042         virtual void open();
0043         virtual void close();
0044         void slowRateChanged(int);
0045         void slowTypeChanged(int);
0046         void slowIntervalChanged(int);
0047         void normalRateChanged(int);
0048         void normalTypeChanged(int);
0049         void normalIntervalChanged(int);
0050         void fastRateChanged(int);
0051         void fastTypeChanged(int);
0052         void fastIntervalChanged(int);
0053         void serverDestroyed(QObject*);
0054 
0055     Q_SIGNALS:
0056         void hidden();
0057 
0058     private:
0059         Server* m_server;
0060         QTimer m_timer;
0061         bool &m_vis;
0062 };
0063 
0064 
0065 #endif