JS8Call-Improved master
Loading...
Searching...
No Matches
LogQSO.h
1// -*- Mode: C++ -*-
2#ifndef LogQSO_H
3#define LogQSO_H
4
5#include "JS8_Main/Radio.h"
6
7#include <QDateTime>
8#include <QDialog>
9#include <QLineEdit>
10#include <QScopedPointer>
11#include <QString>
12#include <QtGui>
13
14namespace Ui {
15class LogQSO;
16}
17
18class QSettings;
19class Configuration;
20class QByteArray;
21
22class LogQSO : public QDialog {
23 Q_OBJECT
24
25 public:
26 explicit LogQSO(QString const &programTitle, QSettings *,
27 Configuration const *, QWidget *parent = 0);
28 ~LogQSO();
29 void initLogQSO(QString const &hisCall, QString const &hisGrid,
30 QString mode, QString const &rptSent,
31 QString const &rptRcvd, QDateTime const &dateTimeOn,
32 QDateTime const &dateTimeOff, Radio::Frequency dialFreq,
33 QString const &myCall, QString const &myGrid,
34 QString const &opCall, const QString &comments);
35
36 public slots:
37 void accept();
38 bool acceptText(QString text);
39 QString currentCall();
40
41 signals:
42 void acceptQSO(QDateTime const &QSO_date_off, QString const &call,
43 QString const &grid, Radio::Frequency dial_freq,
44 QString const &mode, QString const &submode,
45 QString const &rpt_sent, QString const &rpt_received,
46 QString const &comments, QString const &name,
47 QDateTime const &QSO_date_on, QString const &operator_call,
48 QString const &my_call, QString const &my_grid,
49 QByteArray const &ADIF, QVariantMap const &additionalFields);
50
51 protected:
52 void hideEvent(QHideEvent *);
53
54 private slots:
55 void createAdditionalField(QString key = {}, QString value = {});
56 void resetAdditionalFields();
57 QVariantMap collectAdditionalFields();
58 void on_add_new_field_button_pressed();
59 void on_start_now_button_pressed();
60 void on_end_now_button_pressed();
61
62 private:
63 void loadSettings();
64 void storeSettings() const;
65
66 QScopedPointer<Ui::LogQSO> ui;
67 QSettings *m_settings;
68 Configuration const *m_config;
69 QString m_comments;
70 Radio::Frequency m_dialFreq;
71 QString m_myCall;
72 QString m_myGrid;
73 QDateTime m_dateTimeOn;
74 QDateTime m_dateTimeOff;
75 QList<QLineEdit *> m_additionalFieldsControls;
76};
77
78#endif // LogQSO_H
Definition ADIF.h:18
Definition Configuration.h:57
Definition qpriorityqueue.h:39