| 
									
										
										
										
											2023-11-19 13:31:45 +01:00
										 |  |  | ///////////////////////////////////////////////////////////////////////////////////////
 | 
					
						
							|  |  |  | // Copyright (C) 2017-2018, 2022 Edouard Griffiths, F4EXB <f4exb06@gmail.com>        //
 | 
					
						
							|  |  |  | // Copyright (C) 2023 Jon Beniston, M7RCE <jon@beniston.com>                         //
 | 
					
						
							|  |  |  | //                                                                                   //
 | 
					
						
							|  |  |  | // 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                      //
 | 
					
						
							|  |  |  | // (at your option) any later version.                                               //
 | 
					
						
							|  |  |  | //                                                                                   //
 | 
					
						
							|  |  |  | // 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 <http://www.gnu.org/licenses/>.              //
 | 
					
						
							|  |  |  | ///////////////////////////////////////////////////////////////////////////////////////
 | 
					
						
							| 
									
										
										
										
											2017-08-24 02:05:48 +02:00
										 |  |  | #ifndef BASICCHANNELSETTINGSDIALOG_H
 | 
					
						
							|  |  |  | #define BASICCHANNELSETTINGSDIALOG_H
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #include <QDialog>
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-04-20 19:18:27 +02:00
										 |  |  | #include "export.h"
 | 
					
						
							| 
									
										
										
										
											2018-03-03 20:23:38 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-08-24 02:05:48 +02:00
										 |  |  | namespace Ui { | 
					
						
							|  |  |  |     class BasicChannelSettingsDialog; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | class ChannelMarker; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-03-03 20:23:38 +01:00
										 |  |  | class SDRGUI_API BasicChannelSettingsDialog : public QDialog | 
					
						
							| 
									
										
										
										
											2017-08-24 02:05:48 +02:00
										 |  |  | { | 
					
						
							|  |  |  |     Q_OBJECT | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | public: | 
					
						
							|  |  |  |     explicit BasicChannelSettingsDialog(ChannelMarker* marker, QWidget *parent = 0); | 
					
						
							|  |  |  |     ~BasicChannelSettingsDialog(); | 
					
						
							| 
									
										
										
										
											2017-10-21 10:34:00 +02:00
										 |  |  |     bool hasChanged() const { return m_hasChanged; } | 
					
						
							| 
									
										
										
										
											2018-12-13 23:52:09 +01:00
										 |  |  |     bool useReverseAPI() const { return m_useReverseAPI; } | 
					
						
							|  |  |  |     const QString& getReverseAPIAddress() const { return m_reverseAPIAddress; } | 
					
						
							|  |  |  |     uint16_t getReverseAPIPort() const { return m_reverseAPIPort; } | 
					
						
							| 
									
										
										
										
											2018-12-14 08:51:01 +01:00
										 |  |  |     uint16_t getReverseAPIDeviceIndex() const { return m_reverseAPIDeviceIndex; } | 
					
						
							|  |  |  |     uint16_t getReverseAPIChannelIndex() const { return m_reverseAPIChannelIndex; } | 
					
						
							| 
									
										
										
										
											2022-04-18 01:42:03 +02:00
										 |  |  |     int getSelectedStreamIndex() const { return m_streamIndex; } | 
					
						
							| 
									
										
										
										
											2018-12-13 23:52:09 +01:00
										 |  |  |     void setUseReverseAPI(bool useReverseAPI); | 
					
						
							|  |  |  |     void setReverseAPIAddress(const QString& address); | 
					
						
							|  |  |  |     void setReverseAPIPort(uint16_t port); | 
					
						
							| 
									
										
										
										
											2018-12-14 08:51:01 +01:00
										 |  |  |     void setReverseAPIDeviceIndex(uint16_t deviceIndex); | 
					
						
							|  |  |  |     void setReverseAPIChannelIndex(uint16_t channelIndex); | 
					
						
							| 
									
										
										
										
											2022-04-18 01:42:03 +02:00
										 |  |  |     void setNumberOfStreams(int numberOfStreams); | 
					
						
							|  |  |  |     void setStreamIndex(int index); | 
					
						
							|  |  |  |     void setDefaultTitle(const QString& title) { m_defaultTitle = title; } | 
					
						
							| 
									
										
										
										
											2017-08-24 02:05:48 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | private slots: | 
					
						
							| 
									
										
										
										
											2022-04-18 01:42:03 +02:00
										 |  |  |     void on_titleReset_clicked(); | 
					
						
							| 
									
										
										
										
											2017-08-24 02:05:48 +02:00
										 |  |  |     void on_colorBtn_clicked(); | 
					
						
							| 
									
										
										
										
											2018-12-13 23:52:09 +01:00
										 |  |  |     void on_reverseAPI_toggled(bool checked); | 
					
						
							| 
									
										
										
										
											2018-12-27 09:31:55 +01:00
										 |  |  |     void on_reverseAPIAddress_editingFinished(); | 
					
						
							|  |  |  |     void on_reverseAPIPort_editingFinished(); | 
					
						
							|  |  |  |     void on_reverseAPIDeviceIndex_editingFinished(); | 
					
						
							|  |  |  |     void on_reverseAPIChannelIndex_editingFinished(); | 
					
						
							| 
									
										
										
										
											2022-04-18 01:42:03 +02:00
										 |  |  |     void on_streamIndex_valueChanged(int value); | 
					
						
							| 
									
										
										
										
											2023-08-24 15:51:50 +01:00
										 |  |  |     void on_presets_clicked(); | 
					
						
							| 
									
										
										
										
											2017-08-24 02:05:48 +02:00
										 |  |  |     void accept(); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | private: | 
					
						
							|  |  |  |     Ui::BasicChannelSettingsDialog *ui; | 
					
						
							|  |  |  |     ChannelMarker* m_channelMarker; | 
					
						
							|  |  |  |     QColor m_color; | 
					
						
							| 
									
										
										
										
											2018-12-13 23:52:09 +01:00
										 |  |  |     bool m_useReverseAPI; | 
					
						
							|  |  |  |     QString m_reverseAPIAddress; | 
					
						
							|  |  |  |     uint16_t m_reverseAPIPort; | 
					
						
							| 
									
										
										
										
											2018-12-14 08:51:01 +01:00
										 |  |  |     uint16_t m_reverseAPIDeviceIndex; | 
					
						
							|  |  |  |     uint16_t m_reverseAPIChannelIndex; | 
					
						
							| 
									
										
										
										
											2022-04-18 01:42:03 +02:00
										 |  |  |     QString m_defaultTitle; | 
					
						
							|  |  |  |     int m_streamIndex; | 
					
						
							| 
									
										
										
										
											2017-10-21 10:34:00 +02:00
										 |  |  |     bool m_hasChanged; | 
					
						
							| 
									
										
										
										
											2017-08-24 02:05:48 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  |     void paintColor(); | 
					
						
							|  |  |  | }; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #endif // BASICCHANNELSETTINGSDIALOG_H
 |