mirror of
https://github.com/saitohirga/WSJT-X.git
synced 2024-11-13 15:41:50 -05:00
3ec6d211c8
Build now creates and installs a UDP library that contains the server side of the UDP messaging facility. This library is used by the udp_daemon and message_aggregator reference examples. The new library is currently a static archive but can also be built as a shared library. The library allows third party Qt applications to easily access UDP messages from WSJT-X. Refactored the message_aggregator reference example to split out classes into separate translation units. Added new functionality to exercise the new UDP status fields, highlight own call, CQ/QRZ messages and decodes near Rx DF. git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6691 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
52 lines
1.3 KiB
C++
52 lines
1.3 KiB
C++
#ifndef WSJTX_MESSAGE_AGGREGATOR_MAIN_WINDOW_MODEL_HPP__
|
|
#define WSJTX_MESSAGE_AGGREGATOR_MAIN_WINDOW_MODEL_HPP__
|
|
|
|
#include <QMainWindow>
|
|
#include <QHash>
|
|
#include <QString>
|
|
|
|
#include "MessageServer.hpp"
|
|
|
|
class QDateTime;
|
|
class QStandardItemModel;
|
|
class QMenu;
|
|
class DecodesModel;
|
|
class BeaconsModel;
|
|
class QLineEdit;
|
|
class QTableView;
|
|
class ClientWidget;
|
|
|
|
using Frequency = MessageServer::Frequency;
|
|
|
|
class MessageAggregatorMainWindow
|
|
: public QMainWindow
|
|
{
|
|
Q_OBJECT;
|
|
|
|
public:
|
|
MessageAggregatorMainWindow ();
|
|
|
|
Q_SLOT void log_qso (QString const& /*id*/, QDateTime time, QString const& dx_call, QString const& dx_grid
|
|
, Frequency dial_frequency, QString const& mode, QString const& report_sent
|
|
, QString const& report_received, QString const& tx_power, QString const& comments
|
|
, QString const& name);
|
|
|
|
private:
|
|
void add_client (QString const& id);
|
|
void remove_client (QString const& id);
|
|
|
|
QStandardItemModel * log_;
|
|
QMenu * view_menu_;
|
|
DecodesModel * decodes_model_;
|
|
BeaconsModel * beacons_model_;
|
|
MessageServer * server_;
|
|
QLineEdit * multicast_group_line_edit_;
|
|
QTableView * log_table_view_;
|
|
|
|
// maps client id to widgets
|
|
using ClientsDictionary = QHash<QString, ClientWidget *>;
|
|
ClientsDictionary dock_widgets_;
|
|
};
|
|
|
|
#endif
|