diff --git a/sdrgui/CMakeLists.txt b/sdrgui/CMakeLists.txt index 7bd4b71b4..08c63e855 100644 --- a/sdrgui/CMakeLists.txt +++ b/sdrgui/CMakeLists.txt @@ -45,6 +45,7 @@ set(sdrgui_SOURCES device/devicesourceapi.cpp device/devicesinkapi.cpp + device/deviceuiset.cpp plugin/pluginapi.cpp plugin/pluginmanager.cpp @@ -96,6 +97,7 @@ set(sdrgui_HEADERS device/devicesourceapi.h device/devicesinkapi.h + device/deviceuiset.h plugin/pluginapi.h plugin/pluginmanager.h diff --git a/sdrgui/device/deviceuiset.cpp b/sdrgui/device/deviceuiset.cpp new file mode 100644 index 000000000..4590027b3 --- /dev/null +++ b/sdrgui/device/deviceuiset.cpp @@ -0,0 +1,64 @@ +/////////////////////////////////////////////////////////////////////////////////// +// Copyright (C) 2016 Edouard Griffiths, F4EXB // +// // +// This program is free software; you can redistribute it and/or modify // +// it under the terms of the GNU General Public License as published by // +// the Free Software Foundation as version 3 of the License, or // +// // +// This program is distributed in the hope that it will be useful, // +// but WITHOUT ANY WARRANTY; without even the implied warranty of // +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // +// GNU General Public License V3 for more details. // +// // +// You should have received a copy of the GNU General Public License // +// along with this program. If not, see . // +/////////////////////////////////////////////////////////////////////////////////// + +#include + +#include "gui/glspectrum.h" +#include "dsp/spectrumvis.h" +#include "gui/glspectrumgui.h" +#include "gui/channelwindow.h" +#include "gui/samplingdevicecontrol.h" +#include "dsp/dspdevicesourceengine.h" +#include "dsp/dspdevicesinkengine.h" +#include "device/devicesourceapi.h" +#include "device/devicesinkapi.h" + +#include "deviceuiset.h" + +DeviceUISet::DeviceUISet(QTimer& timer) +{ + m_spectrum = new GLSpectrum; + m_spectrumVis = new SpectrumVis(m_spectrum); + m_spectrum->connectTimer(timer); + m_spectrumGUI = new GLSpectrumGUI; + m_spectrumGUI->setBuddies(m_spectrumVis->getInputMessageQueue(), m_spectrumVis, m_spectrum); + m_channelWindow = new ChannelWindow; + m_samplingDeviceControl = new SamplingDeviceControl; + m_deviceSourceEngine = 0; + m_deviceSourceAPI = 0; + m_deviceSinkEngine = 0; + m_deviceSinkAPI = 0; + + // m_spectrum needs to have its font to be set since it cannot be inherited from the main window + QFont font; + font.setFamily(QStringLiteral("Sans Serif")); + font.setPointSize(9); + m_spectrum->setFont(font); + +} + +DeviceUISet::~DeviceUISet() +{ + delete m_samplingDeviceControl; + delete m_channelWindow; + delete m_spectrumGUI; + delete m_spectrumVis; + delete m_spectrum; +} + + + + diff --git a/sdrgui/device/deviceuiset.h b/sdrgui/device/deviceuiset.h new file mode 100644 index 000000000..60ad89de3 --- /dev/null +++ b/sdrgui/device/deviceuiset.h @@ -0,0 +1,53 @@ +/////////////////////////////////////////////////////////////////////////////////// +// Copyright (C) 2016 Edouard Griffiths, F4EXB // +// // +// This program is free software; you can redistribute it and/or modify // +// it under the terms of the GNU General Public License as published by // +// the Free Software Foundation as version 3 of the License, or // +// // +// This program is distributed in the hope that it will be useful, // +// but WITHOUT ANY WARRANTY; without even the implied warranty of // +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // +// GNU General Public License V3 for more details. // +// // +// You should have received a copy of the GNU General Public License // +// along with this program. If not, see . // +/////////////////////////////////////////////////////////////////////////////////// + +#ifndef SDRGUI_DEVICE_DEVICEUISET_H_ +#define SDRGUI_DEVICE_DEVICEUISET_H_ + +#include +#include + +class SpectrumVis; +class GLSpectrum; +class GLSpectrumGUI; +class ChannelWindow; +class SamplingDeviceControl; +class DSPDeviceSourceEngine; +class DeviceSourceAPI; +class DSPDeviceSinkEngine; +class DeviceSinkAPI; + +class DeviceUISet +{ + SpectrumVis *m_spectrumVis; + GLSpectrum *m_spectrum; + GLSpectrumGUI *m_spectrumGUI; + ChannelWindow *m_channelWindow; + SamplingDeviceControl *m_samplingDeviceControl; + DSPDeviceSourceEngine *m_deviceSourceEngine; + DeviceSourceAPI *m_deviceSourceAPI; + DSPDeviceSinkEngine *m_deviceSinkEngine; + DeviceSinkAPI *m_deviceSinkAPI; + QByteArray m_mainWindowState; + + DeviceUISet(QTimer& timer); + ~DeviceUISet(); +}; + + + + +#endif /* SDRGUI_DEVICE_DEVICEUISET_H_ */ diff --git a/sdrgui/sdrgui.pro b/sdrgui/sdrgui.pro index 21fa3f8f9..481b6f980 100644 --- a/sdrgui/sdrgui.pro +++ b/sdrgui/sdrgui.pro @@ -36,6 +36,7 @@ CONFIG(macx):INCLUDEPATH += "../../../boost_1_64_0" SOURCES += mainwindow.cpp\ device/devicesourceapi.cpp\ device/devicesinkapi.cpp\ + device/deviceuiset.cpp\ dsp/spectrumscopecombovis.cpp\ dsp/spectrumscopengcombovis.cpp\ dsp/scopevis.cpp\ @@ -79,6 +80,7 @@ SOURCES += mainwindow.cpp\ HEADERS += mainwindow.h\ device/devicesourceapi.h\ device/devicesinkapi.h\ + device/deviceuiset.h\ dsp/spectrumscopecombovis.h\ dsp/spectrumscopengcombovis.h\ dsp/scopevis.h\