js8call/widegraph.h

155 lines
3.9 KiB
C
Raw Normal View History

2018-02-08 21:28:33 -05:00
// -*- Mode: C++ -*-
#ifndef WIDEGRAPH_H
#define WIDEGRAPH_H
#include <QDialog>
#include <QScopedPointer>
#include <QDir>
#include <QHash>
#include <QVariant>
#include "WFPalette.hpp"
#define MAX_SCREENSIZE 2048
namespace Ui {
class WideGraph;
}
class QSettings;
class Configuration;
class WideGraph : public QDialog
{
Q_OBJECT
public:
explicit WideGraph(QSettings *, QWidget *parent = 0);
~WideGraph ();
void dataSink2(float s[], float df3, int ihsym, int ndiskdata);
void setRxFreq(int n);
int rxFreq();
int centerFreq();
2018-02-08 21:28:33 -05:00
int nStartFreq();
int Fmin();
int Fmax();
int filterMinimum();
int filterMaximum();
bool filterEnabled();
void setFilterCenter(int n);
void setFilter(int a, int b);
void setFilterMinimumBandwidth(int width);
void setFilterEnabled(bool enabled);
void setFilterOpacityPercent(int n);
2018-02-08 21:28:33 -05:00
int fSpan();
void saveSettings();
void setFsample(int n);
void setPeriod(int ntrperiod, int nsps);
void setTxFreq(int n);
void setMode(QString mode);
void setSubMode(int n);
void setModeTx(QString modeTx);
bool flatten();
bool useRef();
void setTol(int n);
int smoothYellow();
void setRxBand (QString const& band);
void setWSPRtransmitted();
void drawRed(int ia, int ib);
void setVHF(bool bVHF);
void setRedFile(QString fRed);
2018-11-04 22:37:14 -05:00
void setTurbo(bool turbo);
2018-02-08 21:28:33 -05:00
signals:
void freezeDecode2(int n);
void f11f12(int n);
void setXIT2(int n);
void setFreq3(int rxFreq, int txFreq);
void qsy(int hzDelta);
2018-02-08 21:28:33 -05:00
public slots:
void wideFreezeDecode(int n);
void setFreq2(int rxFreq, int txFreq);
void setDialFreq(double d);
2018-09-01 18:26:10 -04:00
void setControlsVisible(bool visible);
bool controlsVisible();
void setDrift(int n);
2019-12-17 12:43:19 -05:00
void setQSYEnabled(bool enabled);
2018-02-08 21:28:33 -05:00
protected:
void keyPressEvent (QKeyEvent *e) override;
void closeEvent (QCloseEvent *) override;
private slots:
void on_qsyPushButton_clicked();
void on_offsetSpinBox_valueChanged(int n);
2018-02-08 21:28:33 -05:00
void on_waterfallAvgSpinBox_valueChanged(int arg1);
void on_bppSpinBox_valueChanged(int arg1);
void on_spec2dComboBox_currentIndexChanged(const QString &arg1);
void on_fStartSpinBox_valueChanged(int n);
void on_paletteComboBox_activated(const QString &palette);
void on_cbFlatten_toggled(bool b);
void on_cbRef_toggled(bool b);
void on_cbControls_toggled(bool b);
void on_adjust_palette_push_button_clicked (bool);
void on_gainSlider_valueChanged(int value);
void on_zeroSlider_valueChanged(int value);
void on_gain2dSlider_valueChanged(int value);
void on_zero2dSlider_valueChanged(int value);
void on_smoSpinBox_valueChanged(int n);
void on_sbPercent2dPlot_valueChanged(int n);
void on_filterMinSpinBox_valueChanged(int n);
void on_filterCenterSpinBox_valueChanged(int n);
void on_filterWidthSpinBox_valueChanged(int n);
2019-12-27 14:22:58 -05:00
void on_filterCenterSyncButton_clicked();
void on_filterCheckBox_toggled(bool b);
void on_filterOpacitySpinBox_valueChanged(int n);
2018-02-08 21:28:33 -05:00
void on_driftSpinBox_valueChanged(int n);
void on_driftSyncButton_clicked();
void on_driftSyncEndButton_clicked();
void on_driftSyncMinuteButton_clicked();
void on_driftSyncResetButton_clicked();
2018-02-08 21:28:33 -05:00
private:
2018-03-05 14:49:51 -05:00
void readPalette ();
void setRxRange ();
void replot();
2018-02-08 21:28:33 -05:00
QScopedPointer<Ui::WideGraph> ui;
QSettings * m_settings;
QDir m_palettes_path;
WFPalette m_userPalette;
2018-03-05 14:49:51 -05:00
QHash<QString, QVariant> m_fMinPerBand;
2018-02-08 21:28:33 -05:00
bool m_filterEnabled;
qint32 m_filterMinWidth;
qint32 m_filterMinimum;
qint32 m_filterMaximum;
qint32 m_filterCenter;
2018-02-08 21:28:33 -05:00
qint32 m_waterfallAvg;
qint32 m_TRperiod;
qint32 m_nsps;
qint32 m_ntr0;
qint32 m_fMax;
qint32 m_nSubMode;
qint32 m_nsmo;
2018-03-05 14:49:51 -05:00
qint32 m_Percent2DScreen;
qint32 m_jz=MAX_SCREENSIZE;
qint32 m_n;
2018-02-08 21:28:33 -05:00
bool m_bFlatten;
bool m_bRef;
bool m_bHaveTransmitted; //Set true at end of a WSPR transmission
2018-03-05 14:49:51 -05:00
QString m_rxBand;
2018-02-08 21:28:33 -05:00
QString m_mode;
QString m_modeTx;
2018-03-05 14:49:51 -05:00
QString m_waterfallPalette;
2018-02-08 21:28:33 -05:00
};
#endif // WIDEGRAPH_H