@@ -265,44 +265,57 @@ OptionsDlg::OptionsDlg(wxWindow* parent, wxWindowID id, const wxString& title, c
265
265
wxStaticBox* sb_reporterColor = new wxStaticBox (m_displayTab, wxID_ANY, _ (" FreeDV Reporter colors" ));
266
266
wxStaticBoxSizer* sbSizer_reporterColor = new wxStaticBoxSizer (sb_reporterColor, wxVERTICAL);
267
267
268
- wxBoxSizer* reporterTxColorSizer = new wxBoxSizer (wxHORIZONTAL);
269
- wxBoxSizer* reporterRxColorSizer = new wxBoxSizer (wxHORIZONTAL);
268
+ wxFlexGridSizer* reporterColorSizer = new wxFlexGridSizer (5 , wxSize (5 , 5 ));
270
269
271
270
// TX colors
272
271
wxStaticText* labelReporterTxStation = new wxStaticText (m_displayTab, wxID_ANY, wxT (" TX Stations:" ), wxDefaultPosition, wxDefaultSize, 0 );
273
- reporterTxColorSizer ->Add (labelReporterTxStation, 0 , wxALL | wxALIGN_CENTER_VERTICAL, 5 );
272
+ reporterColorSizer ->Add (labelReporterTxStation, 0 , wxALL | wxALIGN_CENTER_VERTICAL, 5 );
274
273
275
274
wxStaticText* labelReporterTxBackgroundColor = new wxStaticText (m_displayTab, wxID_ANY, wxT (" Background" ), wxDefaultPosition, wxDefaultSize, 0 );
276
- reporterTxColorSizer ->Add (labelReporterTxBackgroundColor, 0 , wxALL | wxALIGN_CENTER_VERTICAL, 5 );
275
+ reporterColorSizer ->Add (labelReporterTxBackgroundColor, 0 , wxALL | wxALIGN_CENTER_VERTICAL, 5 );
277
276
278
277
m_freedvReporterTxBackgroundColor = new wxColourPickerCtrl (m_displayTab, wxID_ANY);
279
- reporterTxColorSizer ->Add (m_freedvReporterTxBackgroundColor, 0 , wxALL | wxALIGN_CENTER_VERTICAL, 5 );
278
+ reporterColorSizer ->Add (m_freedvReporterTxBackgroundColor, 0 , wxALL | wxALIGN_CENTER_VERTICAL, 5 );
280
279
281
280
wxStaticText* labelReporterTxForegroundColor = new wxStaticText (m_displayTab, wxID_ANY, wxT (" Foreground" ), wxDefaultPosition, wxDefaultSize, 0 );
282
- reporterTxColorSizer ->Add (labelReporterTxForegroundColor, 0 , wxALL | wxALIGN_CENTER_VERTICAL, 5 );
281
+ reporterColorSizer ->Add (labelReporterTxForegroundColor, 0 , wxALL | wxALIGN_CENTER_VERTICAL, 5 );
283
282
284
283
m_freedvReporterTxForegroundColor = new wxColourPickerCtrl (m_displayTab, wxID_ANY);
285
- reporterTxColorSizer->Add (m_freedvReporterTxForegroundColor, 0 , wxALL | wxALIGN_CENTER_VERTICAL, 5 );
286
-
287
- sbSizer_reporterColor->Add (reporterTxColorSizer, 0 , wxALL, 5 );
284
+ reporterColorSizer->Add (m_freedvReporterTxForegroundColor, 0 , wxALL | wxALIGN_CENTER_VERTICAL, 5 );
288
285
289
286
// RX colors
290
287
wxStaticText* labelReporterRxStation = new wxStaticText (m_displayTab, wxID_ANY, wxT (" RX Stations:" ), wxDefaultPosition, wxDefaultSize, 0 );
291
- reporterRxColorSizer ->Add (labelReporterRxStation, 0 , wxALL | wxALIGN_CENTER_VERTICAL, 5 );
288
+ reporterColorSizer ->Add (labelReporterRxStation, 0 , wxALL | wxALIGN_CENTER_VERTICAL, 5 );
292
289
293
290
wxStaticText* labelReporterRxBackgroundColor = new wxStaticText (m_displayTab, wxID_ANY, wxT (" Background" ), wxDefaultPosition, wxDefaultSize, 0 );
294
- reporterRxColorSizer ->Add (labelReporterRxBackgroundColor, 0 , wxALL | wxALIGN_CENTER_VERTICAL, 5 );
291
+ reporterColorSizer ->Add (labelReporterRxBackgroundColor, 0 , wxALL | wxALIGN_CENTER_VERTICAL, 5 );
295
292
296
293
m_freedvReporterRxBackgroundColor = new wxColourPickerCtrl (m_displayTab, wxID_ANY);
297
- reporterRxColorSizer ->Add (m_freedvReporterRxBackgroundColor, 0 , wxALL | wxALIGN_CENTER_VERTICAL, 5 );
294
+ reporterColorSizer ->Add (m_freedvReporterRxBackgroundColor, 0 , wxALL | wxALIGN_CENTER_VERTICAL, 5 );
298
295
299
296
wxStaticText* labelReporterRxForegroundColor = new wxStaticText (m_displayTab, wxID_ANY, wxT (" Foreground" ), wxDefaultPosition, wxDefaultSize, 0 );
300
- reporterRxColorSizer ->Add (labelReporterRxForegroundColor, 0 , wxALL | wxALIGN_CENTER_VERTICAL, 5 );
297
+ reporterColorSizer ->Add (labelReporterRxForegroundColor, 0 , wxALL | wxALIGN_CENTER_VERTICAL, 5 );
301
298
302
299
m_freedvReporterRxForegroundColor = new wxColourPickerCtrl (m_displayTab, wxID_ANY);
303
- reporterRxColorSizer->Add (m_freedvReporterRxForegroundColor, 0 , wxALL | wxALIGN_CENTER_VERTICAL, 5 );
300
+ reporterColorSizer->Add (m_freedvReporterRxForegroundColor, 0 , wxALL | wxALIGN_CENTER_VERTICAL, 5 );
301
+
302
+ // Message colors
303
+ wxStaticText* labelReporterMsgStation = new wxStaticText (m_displayTab, wxID_ANY, wxT (" Message updates:" ), wxDefaultPosition, wxDefaultSize, 0 );
304
+ reporterColorSizer->Add (labelReporterMsgStation, 0 , wxALL | wxALIGN_CENTER_VERTICAL, 5 );
305
+
306
+ wxStaticText* labelReporterMsgBackgroundColor = new wxStaticText (m_displayTab, wxID_ANY, wxT (" Background" ), wxDefaultPosition, wxDefaultSize, 0 );
307
+ reporterColorSizer->Add (labelReporterMsgBackgroundColor, 0 , wxALL | wxALIGN_CENTER_VERTICAL, 5 );
308
+
309
+ m_freedvReporterMsgBackgroundColor = new wxColourPickerCtrl (m_displayTab, wxID_ANY);
310
+ reporterColorSizer->Add (m_freedvReporterMsgBackgroundColor, 0 , wxALL | wxALIGN_CENTER_VERTICAL, 5 );
311
+
312
+ wxStaticText* labelReporterMsgForegroundColor = new wxStaticText (m_displayTab, wxID_ANY, wxT (" Foreground" ), wxDefaultPosition, wxDefaultSize, 0 );
313
+ reporterColorSizer->Add (labelReporterMsgForegroundColor, 0 , wxALL | wxALIGN_CENTER_VERTICAL, 5 );
314
+
315
+ m_freedvReporterMsgForegroundColor = new wxColourPickerCtrl (m_displayTab, wxID_ANY);
316
+ reporterColorSizer->Add (m_freedvReporterMsgForegroundColor, 0 , wxALL | wxALIGN_CENTER_VERTICAL, 5 );
304
317
305
- sbSizer_reporterColor->Add (reporterRxColorSizer , 0 , wxALL, 5 );
318
+ sbSizer_reporterColor->Add (reporterColorSizer , 0 , wxALL, 5 );
306
319
307
320
sizerDisplay->Add (sbSizer_reporterColor, 0 , wxALL | wxEXPAND, 5 );
308
321
@@ -786,11 +799,15 @@ void OptionsDlg::ExchangeData(int inout, bool storePersistent)
786
799
wxColour rxForegroundColor (wxGetApp ().appConfiguration .reportingConfiguration .freedvReporterRxRowForegroundColor );
787
800
wxColour txBackgroundColor (wxGetApp ().appConfiguration .reportingConfiguration .freedvReporterTxRowBackgroundColor );
788
801
wxColour txForegroundColor (wxGetApp ().appConfiguration .reportingConfiguration .freedvReporterTxRowForegroundColor );
802
+ wxColour msgBackgroundColor (wxGetApp ().appConfiguration .reportingConfiguration .freedvReporterMsgRowBackgroundColor );
803
+ wxColour msgForegroundColor (wxGetApp ().appConfiguration .reportingConfiguration .freedvReporterMsgRowForegroundColor );
789
804
790
805
m_freedvReporterRxBackgroundColor->SetColour (rxBackgroundColor);
791
806
m_freedvReporterRxForegroundColor->SetColour (rxForegroundColor);
792
807
m_freedvReporterTxBackgroundColor->SetColour (txBackgroundColor);
793
808
m_freedvReporterTxForegroundColor->SetColour (txForegroundColor);
809
+ m_freedvReporterMsgBackgroundColor->SetColour (msgBackgroundColor);
810
+ m_freedvReporterMsgForegroundColor->SetColour (msgForegroundColor);
794
811
795
812
// Populate reporting frequency list.
796
813
for (auto & item : wxGetApp ().appConfiguration .reportingConfiguration .reportingFrequencyList .get ())
@@ -937,6 +954,12 @@ void OptionsDlg::ExchangeData(int inout, bool storePersistent)
937
954
wxColour txForegroundColor = m_freedvReporterTxForegroundColor->GetColour ();
938
955
wxGetApp ().appConfiguration .reportingConfiguration .freedvReporterTxRowForegroundColor = txForegroundColor.GetAsString (wxC2S_HTML_SYNTAX);
939
956
957
+ wxColour msgBackgroundColor = m_freedvReporterMsgBackgroundColor->GetColour ();
958
+ wxGetApp ().appConfiguration .reportingConfiguration .freedvReporterMsgRowBackgroundColor = msgBackgroundColor.GetAsString (wxC2S_HTML_SYNTAX);
959
+
960
+ wxColour msgForegroundColor = m_freedvReporterMsgForegroundColor->GetColour ();
961
+ wxGetApp ().appConfiguration .reportingConfiguration .freedvReporterMsgRowForegroundColor = msgForegroundColor.GetAsString (wxC2S_HTML_SYNTAX);
962
+
940
963
// Save new reporting frequency list.
941
964
std::vector<wxString> tmpList;
942
965
for (unsigned int index = 0 ; index < m_freqList->GetCount (); index ++)
0 commit comments